在Python中解密VIM加密文件
在我的Python网页应用中,我需要解密一个用VIM加密的文件。假设这个网页应用知道用来加密文件的密码,我该怎么写代码来解密呢?
3 个回答
0
这是Python3版本的代码:
from pathlib import Path
from zipfile import _ZipDecrypter
print(_ZipDecrypter(b"<password>")(Path(r"<path>").read_bytes()[12:]).decode("utf8"))
1
我写了一个工具,正好可以做到这一点,并且还支持一些更新的加密方法:
7
原来,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()