2010-02-26 123 views
3

在我的Python网络应用程序中,我需要解密使用VIM加密的文件。假设Web应用程序知道用于在VIM中加密文件的密码,我该如何编写解密代码?在Python中解密VIM加密文件

+0

因此,如何进行它在VIM或Python中加密?使用了什么方法? – stefanB 2010-02-26 07:37:01

+0

它在VIM中使用“vim -x”加密。但我想用Python解密它(因为Python程序将在Google App Engine上运行)。 (编辑该问题) – 2010-02-26 07:39:51

回答

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() 
+0

不幸的是'_ZipDecrypter'在App Engine(或Python 2.5)中不可用 – 2010-02-27 21:17:12

+0

但是将该类复制到本地文件中。 – 2010-02-27 21:26:58