使用pycrypto的简单文件加密

beefish的Python项目详细描述


使用pycrypto进行简单的文件加密

http://media.charlesleifer.com/blog/photos/beefish.jpg

安装

pip install beefish pycrypto

或者:

pip install -e git+git://github.com/coleifer/beefish.git#egg=beefish

依赖关系:

命令行选项

用法:

beefish.py [-tkedaq] in_file [out_file]
  • -e-加密提供的in_file,并写入out_file
  • -d-解密提供的in_file,并写入out_file
  • -k-将password指定为命令行参数(如果未指定,则将 安全提示)。
  • -a-使用aes-256而不是默认的“blowfish”密码。
  • -t-运行测试套件
  • -q-安静模式(控制测试输出的详细程度)。

示例

beefish可用于加密和解密类似于对象的文件:

from beefish import encrypt, decrypt

# encrypting
with open('secrets.txt') as fh:
    with open('secrets.enc', 'wb') as out_fh:
        encrypt(fh, out_fh, 'secret p@ssword')

# decrypting
with open('secrets.enc') as fh:
    with open('secrets.dec', 'wb') as out_fh:
        decrypt(fh, out_fh, 'secret p@ssword')

如果您愿意,可以使用快捷方式:

# encrypting
encrypt_file('secrets.txt', 'secrets.enc', 'p@ssword')

# decrypting
decrypt_file('secrets.enc', 'secrets.dec', 'p@ssword')

您可以从命令行使用它:

beefish.py -e secrets.txt secrets.enc
beefish.py -d secrets.enc secrets.dec

要使用AES-256密码而不是默认密码(即blowfish):

beefish.py -a -e secrets.txt beefish.py -a -d secrets.encrypted

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用JNA创建同一库的多个实例?   java在将Graphql查询作为JSON字符串传递时收到意外的令牌错误   OAuth2 oltu的java问题   java桌面应用程序使用的好的嵌入式数据库是什么?   java Firebase数据库高级查询选项   java正在使磁盘上的EhCache元素过期   java 安卓还原处于backstack中的片段的实例状态   XMemcached中的java异步集   java TimescaleDB是否使用与Postgresql完全相同的JDBC驱动程序?   java从网站c读取信息#   检查java Android中的字符串是否只包含数字和空格   c#如何向web服务发送特殊字符?   grails无法调用需要java的方法。lang.类参数?   java我在组合框中调用的方法不会运行所有代码,它只运行部分代码   java发送带有标头的HTTP GET请求