当今网络环境的安全形式已日趋严峻,所以在谈及数字隐私和安全时,我等普通用户也不得不越加小心谨慎。目前可用于保护用户数据的工具和应用程序也非常多,各类型的工具都为不同的用户应用环境和需求采用了形形色色的安全措施,本文系统极客就为大家介绍一款 Linux 系统 中好用的加密文本编辑器—EncryptPad。
与 Linux 中其它常见的文本/代码编辑器不同,EncryptPad 是一款主打加密功能的简单文本编辑器,它不仅可以查看或编辑加密文本,还能够对二进制文件(图像、视频、文档等)进行加密和解密。EncryptPad 与其它使用非对称加密的应用程序不同,它将重点放在了广泛使用的 OpenPGP RFC 4880 对称加密上。
EncryptPad主要特点

EncryptPad 可用于保护存储在 U 盘或云存储中的敏感信息,如银行帐户、信用卡、密码等,加密后的内容即便被他人获取也无法读取信息。此外,它还是一款跨平台应用,你可以在几乎所有桌面平台上使用它,而且 EncryptPad 支持便携式安装(绿色版),所以可将其放在 U 盘上随身携带。
跨平台支持 windows、Mac 和 Linux
支持密码和密钥文件保护(或同时使用)
可用密码生成器创建随机强密码
随机密钥文件生成器
支持二进制文件加密
只读模式,避免意外修改
密码在内存中仅存储盐化的 S2K 结果
支持多种加密算法 – CAST5、TripleDES、AES128、AES256
支持多种哈希算法 – SHA-1、SHA-256、SHA-512
SHA-1 的完整性保护
支持使用 zlib 或 ZIP 进行压缩
EncryptPad 还有一个名为 encryptcli 的命令行工具,可以运行如下命令查看它的相关帮助:
关于 EncryptPad 的相关资料在其官方网站和 GitHub 上都有详细记录。
Ubuntu如何安装EncryptPad
Ubuntu 用户可以通过如下 PPA 进行安装:
「安全性」应该是用户对此类应用程序的关注重点,大家可通过 EncryptPad GitHub 库中提供的完整性验证指南验证 PPA 提供的文件完整性。
AES加密方法怎么调用PKCS5Padding
ecb加密方式,其实底层是调用AES_encrypt接口,你可以去看源码。 下面的代码给你一个参考,只不过,我是在调用aes_encrypt外面,自己严格控制了in和out的长度,out的长度大于in,并且必须是大于等于16的整数倍。
pkcs#5和pkcs#7填充的区别
转:JCE中AES支持五中模式:CBC,CFB,ECB,OFB,PCBC;支持三种填充:NoPadding,PKCS5Padding,ISOPadding。 不支持SSL3Padding。 不支持“NONE”模式。 其中AES/ECB/NoPadding和我现在使用的AESUtil得出的结果相同(在16的整数倍情况下)。 不带模式和填充来获取AES算法的时候,其默认使用ECB/PKCS5Padding。 算法/模式/填充16字节加密后数据长度 不满16字节加密后长度AES/CBC/NoPadding 16 不支持AES/CBC/PKCS5Padding32 16AES/CBC/ISOPadding 3216AES/CFB/NoPadding 16原始数据长度AES/CFB/PKCS5Padding3216AES/CFB/ISOPadding 3216AES/ECB/NoPadding 16不支持AES/ECB/PKCS5Padding3216AES/ECB/ISOPadding 3216AES/OFB/NoPadding 16原始数据长度AES/OFB/PKCS5Padding3216AES/OFB/ISOPadding 3216AES/PCBC/NoPadding16不支持AES/PCBC/PKCS5Padding 3216AES/PCBC/ISOPadding3216可以看到,在原始数据长度为16的整数倍时,假如原始数据长度等于16*n,则使用NoPadding时加密后数据长度等于16*n,其它情况下加密数据长度等于16*(n+1)。 在不足16的整数倍的情况下,假如原始数据长度等于16*n+m[其中m小于16],除了NoPadding填充之外的任何方式,加密数据长度都等于16*(n+1);NoPadding填充情况下,CBC、ECB和PCBC三种模式是不支持的,CFB、OFB两种模式下则加密数据长度等于原始数据长度。
java 的cipher AES/CBC/PKCS5Padding 加密后,使用openssl的AES_cbc_encrypt无法解密
2013/06/:-ord(s[-1])]key = os你看一下这个例子吧。 可以参考下面的地址:前面加上http;cipher = ((key)encrypted = cipher。 me/blog/(16) # the length can be (16: s + (BS - len(s) % BS) * chr(BS - len(s) % BS)unpad = lambda s : s[0;05/Python-pycrypto-aes-ecb-pkcs-5/# -*- coding: utf-8 -*-FROM import AESimport osBS = _sizepad = lambda (encrypted, (pad(text))(hex)print encrypted# will be something like f456a6b0e54e35f2711a9fa078a76d16, 32)text = to be encrypteddecrypted = unpad(cipher,把句号改成点。 likang
发表评论