无聊写的一个消息加密器,支持加密emoji表情(仅移动端支持,PC端不支持)
无需任何权限,不保存不读取任何文件,不发送不接收任何网络请求,只有加密算法没有后门,可放心食用。
各位看官如有相关疑惑,烦请自行逆向或者自行阅读软件源码🙃
对应的桌面版加密器已经开发完成,让PC端和移动端都能够无缝互通,PC端需要Java运行环境,需自行安装😄
加密后的信息只有用正确的密码才能解出正确的明文;只要密码不泄露,加密内容就是安全的;
用技术为通讯自由保驾护航🤣
测试
密码:1234567890123456
密文:PiQeoEPW6w8jfsR+2CKinxfEX8dHP2qjhD/4nyKtWZQNy+KeobmQxhjdDp1woSDw6CdL/WhoZ4fE BfcyGs75j9tj0cHhYbJTY/+Dfsz/35MHbdBqEJACgf1uruqa0FMwjcUEziCZWiY9bWGoecN8p6zh GFWXklTjPZ3dfwma+8DrzwDU8Wi8aCCCONRJmo6RMkAH3t3Ig2Md11u/3V9XHjWrh08szORVsVoC tDa5d58zIDMOOMHaRW7+GKarp5HUfFdrZy4Ta91m+sOtlNT6a6/ElgyAn7PUOWTX5ZSqW1P+C6P0 6Ye/3kQY0R0QPWGOjeQRMpoMKAnZT2sDHhfXOgLYDNu2GeY3+EDjsqC9krQ5h9kMy4c4KqeeX0J+ KQuAvf+8JbRtOkgHyzfIEjlJBoID10WyWmo1miYF9R4DSaoJk7pCCjBGZr849Y/WbGfV3/C4OJwm JYYahYqfxau5KgThnQ/y
V1.0
运行效果
下载
该版本不提供下载
V1.1
运行效果
组件介绍
Plain Text
文本框: 输入/显示明文内容Password
文本框: 用于AES加密的密码,16位密码对应AES-128加密,24位密码对应AES-192加密,32位密码对应AES-256加密Encrypted Text
文本框: 输入/显示密文内容
功能介绍
ENCRYPT->COPY
: 加密明文后在Encrypted Text
文本框中显示密文,和清空Plain Text
文本框的内容,和把密文复制到剪贴板- 蓝色
CLEAR
: 清空Plain Text
文本框的内容 x
: 清空Plain Text
文本框、Password
文本框、Encrypted Text
文本框和剪贴板的内容DECRYPT
: 解密当前Encrypted Text
文本框中的内容并显示在Plain Text
文本框中P->D
: 清空Encrypted Text
文本框当前的内容并从剪贴板复制内容到Encrypted Text
文本框并进行解密并显示明文到Plain Text
文本框- 绿色
CLEAR
: 清空Encrypted Text
文本框中当前的内容
下载
该版本不提供下载
V2.0
2.0版本于2021年4月1日0点53分正式完工,改名为MessageCipher
搭载RSA模块,用于加密和安全地传输AES密钥;RSA和AES模块都可独立运作
对应配套的桌面版本可以实现PC和安卓端的RSA和AES互通,签名部分不行(2个程序都要最新版的才行),PC端需要Java运行环境
Android运行效果
PC运行效果
功能介绍
不多介绍了,百度谷歌必应搜索RSA算法了解不对称加密在安全传输数据中的应用
程序本身的话,结合理论摸索一下就大概能明白怎么用了
下载
该版本不提供下载
V2.01更新版本
2021年10月1日具体更新 v2.01
代码修改部分:在PC和Android端的代码中的随机AES密码生成函数的内部变量中,原本大写字母‘i’的位置不知怎么搞的成了‘T’,还少了反斜杠‘\’,现已修正
编码全部更换为HEX并不再采用Base64,PC和Android端的所有功能已经互通互认
Android版本修改了部分视图效果和弹窗提示
随机AES密码默认32位长度(前版本默认16位)
下一个子版本(V2.2)将会是傻瓜化版本, 采用【纯公钥交换+随机密码】:只需通讯双方交换公钥即可进行加解密(AES随机密码32位并且不会显示密码,也没有密码输入框)
下一个大版本应该会增加语音和文件加密(iOS什么时候能用上取决于什么时候转到Flutter)
下载
请根据源码自行编译
MessageCipher V2.01
V2.1更新版本
2021年10月14日具体更新 v2.1
V2.01的更新版本,增加通讯录功能、双方纯RSA公钥交换通讯密钥功能、使用前身份验证功能、自毁功能 该版本的编码和算法和互通2.01版本,只要通讯密钥相同,2个版本都可以相互加解密通讯密文,但通讯密钥交换部分不相通,因为这个部分的数据结构和算法已经和以前的版本不一样了
运行效果
下载
请根据源码自行编译,这个有release的
源码
V2.2更新版本
已经算是全新版本,毕竟数据结构和算法已经和以前的版本大不相同,此版本不发布(因为加密后的信息实在是太长了)
2021年10月10日具体更新 v2.2
采用交换公钥方式,每条消息都有独立的加密密钥,新增口令验证通讯录和自毁功能
集成旧版V2.01,新旧版本数据和算法不相通
MessageCipher V2.2 Android源码
PC版本的源码就没有了,各位看官可以根据数据结构和2.01版本的PC端源码自行修改
后记:AES加密填充模式
算法/模式/填充 16字节加密后数据长度 不满16字节加密后长度
AES/CBC/NoPadding 16 不支持
AES/CBC/PKCS5Padding 32 16
AES/CBC/ISO10126Padding 32 16
AES/CFB/NoPadding 16 原始数据长度
AES/CFB/PKCS5Padding 32 16
AES/CFB/ISO10126Padding 32 16
AES/ECB/NoPadding 16 不支持
AES/ECB/PKCS5Padding 32 16
AES/ECB/ISO10126Padding 32 16
AES/OFB/NoPadding 16 原始数据长度
AES/OFB/PKCS5Padding 32 16
AES/OFB/ISO10126Padding 32 16
AES/PCBC/NoPadding 16 不支持
AES/PCBC/PKCS5Padding 32 16
AES/PCBC/ISO10126Padding 32 16
当原始数据长度为16的整数倍时,假如原始数据长度等于16n,则使用NoPadding时加密后数据长度等于16n,其它情况下加密数据长度等于16*(n+1)。在不足16的整数倍的情况下,假如原始数据长度等于16n+m[其中m小于16],除了NoPadding填充之外的任何方 式,加密数据长度都等于16(n+1);NoPadding填充情况下,CBC、ECB和PCBC三种模式是不支持的,CFB、OFB两种模式下则加密数据长度等于原始数据长度。