网络安全-练习RSA算法
发布日期:2021-06-30 17:44:37
浏览次数:2
分类:技术文章
本文共 698 字,大约阅读时间需要 2 分钟。
练习RSA算法
已知RSA算法中,素数p=5,q=7,模数n=35,公钥e=5,明文为bed,对明文进行加解密,使用手工完成RSA公开秘钥密码体制算法加密运算。字母数字映射表如下:
请参考:https://www.cnblogs.com/jiftle/p/7903762.html
(1)设计公私密钥(e,n)和(d,n)
根据题设,p=5,q=7,故 模数n=5×7=35;f(n)=(p-1)(q-1)=4×6=24;取e=7,则e×d≡1 mod f(n),即 7×d≡1 mod 24。 下面通过试算的办法来确定d的取值:见下表 通过试算我们找到,当d=7时,e×d≡1 mod f(n)同余等式成立。所以,令d=7。此时,加密密钥(公钥)为:KU=(e,n)=(5,35),解密密钥(私钥)为KR=(d,n)=(7,35)。 (2)英文数字化 将明文信息数字化,并将每块两个数字分组。假定明文英文字母编码表为按 字母按字母排序排列数值,即: 则得到分组后的key的明文信息为02,05,04。(3)明文加密
用户加密密钥(5,35)将数字化明文分组信息加密成密文。由C≡Me(mod n)得: 相应的密文信息为23,5,4。(4)密文解密
用户B收到密文,通过计算M≡Cd(mod n)得到明文:02,05,04。根据上面的编码表将其转换成英文,得到原文“bed”。RSA加密算法是一种非对称的加密算法,非常的巧妙,需要有比较深的相应的数学知识的学习和理解,才能更好地理解RSA加密算法,这里只是简单的模拟了一下RSA算法的加密和解密过程,从而使我们对RSA算法有一个初步的了解。
转载地址:https://lexiaoyuan.blog.csdn.net/article/details/87874470 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2024年04月15日 03时22分20秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
xss-labs详解(下)11-20
2019-04-30
攻防世界web进阶区ics-05详解
2019-04-30
攻防世界web进阶区FlatScience详解
2019-04-30
攻防世界web进阶区ics-04详解
2019-04-30
攻防世界web进阶区Cat详解
2019-04-30
攻防世界web进阶区bug详解
2019-04-30
攻防世界web进阶区ics-07详解
2019-04-30
攻防世界web进阶区unfinish详解
2019-04-30
攻防世界web进阶区i-got-id-200超详解
2019-04-30
sql注入总结学习
2019-04-30
leetcode46 全排列
2019-04-30
leetcode121 买卖股票的最佳时机
2019-04-30
leetcode 122 买卖股票的最佳时机II
2019-04-30
leetcode 309 最佳买卖股票含冷冻期
2019-04-30
leetcode 714 买卖股票的最佳时机含手续费
2019-04-30
leetcode3 无重复字符的最长子串
2019-04-30
leetcode 76 最小覆盖子串
2019-04-30
leetcode 1143. 最长公共子序列
2019-04-30
leetcode 83. 删除排序链表中的重复元素
2019-04-30
智能体 Intelligent Agent
2019-04-30