rsa公钥加密算法是由罗恩·里维斯特、阿迪·阿迪·萨莫尔和伦纳德·阿德曼于1977年提出的。1987年首次宣布,当时他们三人都在麻省理工学院工作。rsa是他们姓氏首字母的组合。rsa公钥密码系统。所谓公钥密码体制就是使用不同的加密密钥和解密密钥,是一种"从已知的加密密钥导出解密密钥在计算上是不可行的。
在公钥密码系统中,加密密钥pk是息,而解密密钥sk需要保密。还公开了加密算法
rsa加密算法是一种非对称加密算法。rsa广泛应用于公钥加密和电子商务。
公钥和私钥是通过算法获得的密钥对(即公钥和私钥)。公钥是密钥对的公开部分,而私钥是非公开部分。公钥通常用于加密会话密钥、验证数字签名或加密可以用相应的私钥解密的数据。
我不我对此了解不多。一般来说,加密分为两个部分,一个是非对称加密,一个是对称加密。使用对称加密对文本信息进行加密,使用非对称加密对对称加密密钥进行加密,然后发送加密数据(消息摘要和数字签名不讨论)。这是一种正式的数据加密策略。对称加密默认支持大数据的分段加密策略,你只需要从接口完成加密,对称加密比非对称加密更快。
如果你不t想用对称加密,只想用a
rsa算法是一种非对称加密算法。所谓不对称,就是算法需要一对密钥。如果其中一个用于加密,另一个用于解密。rsa的算法涉及三个参数,n、e1和e2。其中n是两个大素数p和q的乘积,n的二进制表示所占的位数就是所谓的密钥长度。度。
e1和e2是一对相关值,e1可以任意选取,前提是e1和(p-1)*(q-1)互质;再次选择e2,求(e2*e1)mod((p-1)*(q-1))1。(n和e1),(n和e2)是密钥对。rsa加密和解密的算法完全一样。如果a是明文,b是密文,那么:ab^e1模n;;ba^e2modn;e1和e2可以互换使用,即:ab^e2modn;;ba^e1modn;补充回答:加密明文有两种情况:
1.你把加密的数据发给你的朋友,你希望只有你的朋友能解密它。在这种情况下,您需要首先获得您朋友的公钥密钥对,e和n.然后用这个密钥加密,这样只有你的朋友才能解密密文,因为对应的私钥只有你的朋友拥有。
2.您向朋友发送一份数据,并附上您的数字签名。您需要对您的数据执行md5等操作,以获取数据的指纹,然后对指纹进行加密。加密将使用您自己的密钥对中的私钥。
你的朋友收到数据后,用同样的操作获取数据指纹,然后用你的公钥对加密指纹进行解密,比较解密结果与自己计算的指纹是否一致,从而确定数据是否确实是你发送的,是否在传输过程中被篡改。密钥的获取通常是由某个组织(如ca中心)发布的,当然你也可以自己创建密钥,但这样做,你的密钥并不具有权威性。计算方面,按照公式计算就好了。如果你的加密强度是1024位,结果会在有效数据前用零填充,以弥补不足的位数。
添加的0不影响解密操作。