首页 > 编程知识 正文

rsa加密算法过程,rsa加密算法原理

时间:2023-05-05 02:19:58 阅读:149305 作者:921

工作中遇到RSA的加密内容,特意学习一下,作为自己的笔记本吧。 “公钥和私钥不在这篇文章的范围内,这里只有基本原理”便于自己的理解。

笔记来自bilibili的视频。 地址如下。

33559 www.bilibili.com/video/b v1 Rb 411 p7p 1

1、概述RSA于1977年由sdwk(Ronrivest )、jjdhf (ADIS hamir )、xhdjqm (xhdjqm ) LeonardadLeman )提出。 他们三人曾在麻省理工学院工作。 RSA是他们三个姓的首字母组合而成。

RSA加密算法作为一种非对称加密算法,与对称加密相比具有许多优点。 不对称加密和解密都需要传递密钥,容易引起密钥泄露,不对称加密从根本上解决了这一问题。 只要两个规则之间存在某种对应关系,非对称加密的加密和解密就可以使用不同的规则。 这样就不需要直接传递密钥了。 RSA正是在这种思想下的优秀实现。

2、基本原理RSA算法的基础是,如果我想解密已加密的密文,则其不需要用加密密钥(比如对称加密)反向导出来得到原文,而是如果用另一密钥(或公钥)做与加密相同的算法的话,原文为加密和解密都不需要传递私钥。 让我简单介绍一下。

假设要加密的数据是一系列数字m,因为所有数据都可以由计算机转换为二进制串

2.1对称加密简单介绍一下对称加密,如下图所示,如果wxdej想给鲍勃发送消息,她会采用对称加密。 也就是说,加密前的消息是m,其值为8,与鲍勃约定的加密算法根据原始随机数的价值为-3。 也就是说,该加密算法是密文=原文-3。 Bob得到密文后,在解密时,直接反向导出。 即,解密算法成为原文=密文3,下图,5 3=8,解密完成。 Bob能够解密的前提是知道解密算法,解密算法必须在他们之间传递,容易导致密钥泄露。

2.2非对称加密RSA算法的一部分利用了模运算。 如下图所示,3除以2取余数,即可计算余数

核心算法如下。

原文为m,如果m的e次方对n取馀数,则得到密文c,例如7的平方对23取馀数,则得到3。 e和n是加密的公钥或公钥密码。

难以破译rsa的原因是,虽然可以从e和n,即公钥容易地得到密文c,但是从e和n,c,即公钥和密文计算原文m是困难的(因为一个数分解质数的时间比两个素数相乘的时间长得多)。 但是,如果根据另一个秘密密钥d和n、以及密文c,执行与加密时相同的运算,则得到原文m,即公开密钥加密、秘密密钥解密。

e和d之间一定要满足一定的数学关系。 这意味着公钥和私钥不在这次讨论的范围内。

2.3数字签名说到数字签名,其实上述私钥和公钥也没有太大的区别,只是名字。 (当然有区别,具体算法不同。 数字签名其实是基于RSA发展起来的。 由于机密密钥只是被加密,所以使用该机密密钥对原文信息进行加密而得到的数字串(称为签名信息)如果使用对应的公开密钥则能够对原始内容进行解密。 所以,我对外声明这个公钥,对方只要拿到加密的数字串和我对外声明的公钥,就可以解密信息。 也就是说,我可以证明这是我签名的。 大致原理是一样的。 也就是说,加密算法和签名算法对应,加密算法和验证算法对应。

不同之处在于,验证算法比解密算法的文件本身多,而签名算法的签名原文件是文件的散列值

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。