- 6
- 0
- 约1.29万字
- 约 12页
- 2019-07-11 发布于江西
- 举报
非对称加密算法/数字签名算法——RSA
接下来我们介绍典型的非对称加密算法/数字签名算法——RSA?RSA???? 这种算法1978年就出现了,它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman。???? 这种加密算法的特点主要是密钥的变化,上文我们看到DES只有一个密钥。相当于只有一把钥匙,如果这把钥匙丢了,数据也就不安全了。RSA同时有两把钥匙,公钥与私钥。同时支持数字签名。数字签名的意义在于,对传输过来的数据进行校验。确保数据在传输工程中不被修改。?流程分析:?
甲方构建密钥对儿,将公钥公布给乙方,将私钥保留。
甲方使用私钥加密数据,然后用私钥对加密后的数据签名,发送给乙方签名以及加密后的数据;乙方使用公钥、签名来验证待解密数据是否有效,如果有效使用公钥对数据解密。
乙方使用公钥加密数据,向甲方发送经过加密后的数据;甲方获得加密数据,通过私钥解密。
按如上步骤给出序列图,如下:?
通过java代码实现如下:Coder类见? Java加密技术(一)?
Java代码??
import?java.security.Key;??
import?java.security.KeyFactory;??
import?java.security.KeyPair;??
import?java.security.KeyPairGenerator;??
import?java.security.PrivateKey;??
import?java.security.PublicKey;??
import?java.security.Signature;??
import?java.security.interfaces.RSAPrivateKey;??
import?java.security.interfaces.RSAPublicKey;??
import?java.security.spec.PKCS8EncodedKeySpec;??
import?java.security.spec.X509EncodedKeySpec;??
??
import?java.util.HashMap;??
import?java.util.Map;??
??
import?javax.crypto.Cipher;??
??
/**?
?*?RSA安全编码组件?
?*??
?*?@author?梁栋?
?*?@version?1.0?
?*?@since?1.0?
?*/??
public?abstract?class?RSACoder?extends?Coder?{??
????public?static?final?String?KEY_ALGORITHM?=?RSA;??
????public?static?final?String?SIGNATURE_ALGORITHM?=?MD5withRSA;??
??
????private?static?final?String?PUBLIC_KEY?=?RSAPublicKey;??
????private?static?final?String?PRIVATE_KEY?=?RSAPrivateKey;??
??
????/**?
?????*?用私钥对信息生成数字签名?
?????*??
?????*?@param?data?
?????*????????????加密数据?
?????*?@param?privateKey?
?????*????????????私钥?
?????*??
?????*?@return?
?????*?@throws?Exception?
?????*/??
????public?static?String?sign(byte[]?data,?String?privateKey)?throws?Exception?{??
????????//?解密由base64编码的私钥??
????????byte[]?keyBytes?=?decryptBASE64(privateKey);??
??
????????//?构造PKCS8EncodedKeySpec对象??
????????PKCS8EncodedKeySpec?pkcs8KeySpec?=?new?PKCS8EncodedKeySpec(keyBytes);??
??
????????//?KEY_ALGORITHM?指定的加密算法??
????????KeyFactory?keyFactory?=?KeyFactory.getInstance(KEY_
您可能关注的文档
最近下载
- 2025年组织生活会党支部问题整改清单.docx VIP
- 年产2000吨丙硫菌唑产品技改项目环评报告书.pdf VIP
- 2025年全国设备监理师(设备工程质量管理与检验)新版真题及答案解析.docx VIP
- 全国自考《中国近现代史纲要》单项选择题题库.doc VIP
- D-Z-T 0358.2-2020 海洋地震测量技术规范 第2部分:三维地震测量(正式版).docx VIP
- 《消费者权益保护法》教学大纲(模板).pdf VIP
- 电除尘器设计说明书-毕业论文(设计).docx VIP
- 《GB/T 3075-2021金属材料 疲劳试验 轴向力控制方法》.pdf
- 2025电力数智化大会:电力与算力协同发展蓝皮书.pdf
- 2025年苏州健雄职业技术学院单招(语文)测试题库最新.docx VIP
原创力文档

文档评论(0)