В моем веб-приложении Python мне нужно было бы расшифровать файл, который был зашифрован с использованием VIM. Предполагая, что веб-приложение знает пароль, используемый для шифрования файла в VIM, как мне написать код для расшифровки?
Оказывается, что vim использует то же шифрование, что и PKZIP:
from zipfile import _ZipDecrypter fp = open(somefile, 'rb') zd = _ZipDecrypter(somekey) fp.read(12) print ''.join(zd(c) for c in fp.read()) fp.close()
Я написал инструмент для этого, также поддерживая более современные методы шифрования:
https://github.com/nlitsme/vimdecrypt