开发手册 欢迎您!
软件开发者资料库

了解RSA算法

使用Python进行密码学习RSA算法 - 从简单而简单的步骤学习使用Python进行密码学从基本概念到高级概念,包括概述,双强度加密,Python概述和安装,反向密码,凯撒密码,ROT13算法,转置密码,加密换位密码,换位密码解密,文件加密,文件base64编码和解码,XOR处理,乘法密码,仿射密码,黑客单码加密,简单的替换密码,简单的替换密码的测试,简单的替换加密解密的解密,密码Python模块,了解Vignere密码,实施Vignere密码,一次一密密码,一次一密密码,对称和非对称加密,了解RSA算法的实现,创建RSA密钥,RSA密码加密,RSA加密解密,黑客RSA密码。

RSA算法是一种公钥加密技术,被认为是最安全的加密方式.它是由Rivest,Shamir和Adleman于1978年发明的,因此命名为 RSA 算法.

算法

RSA算法具有以下特征 :

  • RSA算法是包含素数的整数在有限域中的一种流行取幂./p>

  • 此方法使用的整数足够大,难以解决.

  • 此算法中有两组密钥:私钥和公钥.

您必须完成以下步骤才能工作关于RSA算法 :

步骤1:生成RSA模数

初始过程从选择两个素数即p和q开始,然后计算他们的产品N,如图所示去;

  N = p * q

这里,设N为指定的大数.

第2步:派生数(e)

将数字e视为派生数,该数字应大于1且小于(p-1)和(q-1).主要条件是应该没有(p-1)和(q-1)的公因子,除了1

步骤3:公钥

指定的一对数字 n e 形成RSA公钥并将其公开.

步骤4:私钥

私钥 d 是根据数字p,q和e计算的.数字之间的数学关系如下:<

  ed = 1 mod(p-1)(q-1)

上面的公式是扩展欧几里得算法的基本公式,它以p和q作为输入参数.

加密公式

考虑将明文消息发送给公钥为(n,e)的人的发件人.要在给定方案中加密纯文本消息,请使用以下语法 :

  C = Pe mod n

解密公式

解密过程非常简单,包括用于系统方法计算的分析.考虑到接收器 C 具有私钥 d ,结果模数将计算为 :

  Plaintext = Cd mod n