关于密码学:密码学-12-AES和RSA-的结合

多种加密算法的常见联合套路
随机生成AES密钥AESKey
AESKey密钥用于AES加密数据,失去数据密文cipherText
应用RSA对AESKey加密,失去密钥密文cipherKey
提交密钥密文cipherKey和数据密文cipherText给服务器

JAVA实现

// 客户端实现
String AESkey = genAESkey();
String plain_Text = "qianniuwei";
String AES_Ciper_Text = AES_T.encryptAES(AESkey,plain_Text);

String AESkey_en_by_RSA = RSABase64_T.encryptBase64(AESkey);
Log.d("hengdi","AESkey_en_by_RSA:"+AESkey_en_by_RSA);

// 服务端解密过程 -------------
String AESkey_ = decryptBase64(AESkey_en_by_RSA);
Log.d("hendi","AES_T key:" + AESkey_);
String origin_plain_Text  = AES_T.decryptAES(AESkey_,AES_Ciper_Text);
Log.d("hengdi","origin_plain_Text:"+origin_plain_Text);

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理