非对称加密-RSA

这篇具有很好参考价值的文章主要介绍了非对称加密-RSA。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、非对称加密

1.对称加密

  • 对称密码的核心是一把密钥,使用相同的密钥进行加密和解密。
  • 如移位密码、S-DES
  • 但密匙本身也是信息,对称密码中它的安全得不到保障。

非对称加密,密码学,安全

2.非对称加密

  • 非对称密码的核心是公钥和私钥。

  • 公钥是用于加密数据的密钥,而私钥则用于解密数据

  • 发送方使用接收方的公钥来加密,接收方使用自己的私钥来解密

  • 公钥公开,只要私钥保密即可

  • RSA,相对来说更安全

    非对称加密,密码学,安全文章来源地址https://www.toymoban.com/news/detail-826941.html

二、RSA

1.算法思想

  • RSA算法是一种非对称加密算法,其核心思想建立在数学上的“大整数分解”的难度性之上。
  • 主要思想是基于两个大质数的乘积很容易计算,但是从乘积中分解出这两个质数却非常困难。

2.公钥私钥的生成

  • 选择两个素数pq,并计算它们的乘积n=p*q
  • 计算n的欧拉函数φ(n)=(p-1)*(q-1)
  • 选择一个小于φ(n)且与φ(n)互质的整数e作为公钥指数
  • 扩展欧几里德计算e的模反元素d,使得(d * e) mod φ(n) = 1
  • 公钥是(n, e),私钥是(n, d)
  • 明文长度小于n
  • P和Q通常是相近长度的大素数
  • p和q的值往往较大,通常超过2048位或更大的数字(否则易破解)
  • 通常,e可以选为固定值65537(随机生成的可能不够随机,可能造成私钥泄漏)
  • 加密时可以对消息进行填充处理,避免一些攻击

3.加密和解密

  • 要加密一个明文m,使用公式c = m^e mod n,其中c是密文
  • 要解密一个密文c,使用公式m = c^d mod n,其中m是明文
  • 加密必须用公钥,解密必须用配套密钥
  • RSA算法中的指数函数(加密)和对数函数(解密)都具有单向性质,也就是难以逆推。
  • 公钥和私钥的功能是由数学特性和限制决定的。

三、python简单实现

import random
from sympy import isprime


def modinv(a, m):
    """计算a关于模数m的模反元素"""

    def egcd(a, b):
        """扩展欧几里得算法,用于计算最大公约数和系数"""
        if a == 0:
           

到了这里,关于非对称加密-RSA的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 密码学系列4-选择密文安全,同态加密安全性

    本章将介绍Cramer-Shoup加密方案,并证明其安全性。最后讨论了同态加密方案的安全性证明 一、Cramer-Shoup加密 密钥生成 1.定义群 G G G ,群的阶为 q q q ,选取群的生成元

    2024年04月26日
    浏览(33)
  • 【北京航空航天大学】【信息网络安全实验】【实验一、密码学:DES+RSA+MD5编程实验】

    1. 通过对DES算法的代码编写,了解分组密码算法的设计思想和分组密码算法工作模式; 2. 掌握RSA算法的基本原理以及素数判定中的Rabin-Miller测试原理、Montgomery快速模乘(模幂)算法,了解公钥加密体制的优缺点及其常见应用方式; 3. 掌握MD5算法的基本原理,了解其主要应用

    2024年02月19日
    浏览(52)
  • 【密码学-1】一文入门非对称密码学

    本文共1932字,完成阅读约需6分钟。 犹记得2021年年初的一波区块链热潮让无数人第一次了解到了“公钥”和“私钥”的概念,那么,究竟什么是公钥私钥呢?和常见的密钥又有什么区别和联系呢?本文目的在用尽可能短的时间和简洁的语言,带你快速了解非对称密码学的基本

    2023年04月08日
    浏览(87)
  • 密码学:公钥密码.(非对称密码)

    公钥密码 (Public Key Cryptography),又称为 非对称密码 ,其最大特征是 加密和解密不再使用相同的密钥 ,而使用不同的密钥。使用者会将一个密钥公开,而将另一个密钥私人持有,这时这两个密钥被称为 公钥和私钥 。一般来说,公钥和私钥是难以互相计算的,但它们可以互相

    2024年02月03日
    浏览(60)
  • 对称密钥【密码学】(四)

    在使用单向散列函数校验数据完整性时,需要保证原始的散列值不能被更改。 因此,在很多场景下,我们并不能仅仅通过单向散列函数来解决完整性问题,还需要其他技术来解决这个问题,如加密技术。 本篇博客就来介绍一下第一类加密技术------对称加密技术 加密数据的安

    2024年02月10日
    浏览(66)
  • 【现代密码学】笔记 补充7-- CCA安全与认证加密《introduction to modern cryphtography》

    主要在 哈工大密码学课程 张宇老师课件 的基础上学习记录笔记。 内容补充:骆婷老师的PPT 《introduction to modern cryphtography》–Jonathan Katz, Yehuda Lindell(现代密码学——原理与协议)中相关章节 密码学复习笔记 这个博主好有意思 初步笔记,如有错误请指正 快速补充一些密码

    2024年01月17日
    浏览(51)
  • 密码学【第三节:对称密码-DES\AES】

    对称加密     对称加密算法中,数据发送方将明文和密钥一起经过特殊加密算法处理成密文后,将它发送出去。接收方收到密文后,若想解读原文,则需要使用加密用到的相同密钥及相同算法的逆算法对密文进行解密,才能使其恢复成原文。     它的最大优势是加

    2024年02月07日
    浏览(65)
  • 【现代密码学】笔记3.4-3.7--构造安全加密方案、CPA安全、CCA安全 《introduction to modern cryphtography》

    主要在 哈工大密码学课程 张宇老师课件 的基础上学习记录笔记。 内容补充:骆婷老师的PPT 《introduction to modern cryphtography》–Jonathan Katz, Yehuda Lindell(现代密码学——原理与协议)中相关章节 密码学复习笔记 这个博主好有意思 初步笔记,如有错误请指正 快速补充一些密码

    2024年01月24日
    浏览(47)
  • 比特币/以太坊/加密货币/网络/区块链/钱包助记词:密码学的角度上,24个单词比12个单词更安全吗

    我们从密码学角度来聊聊助记词。 随着区块链钱包的发展和分层确定性(HD)钱包技术的普及,越来越多的用户开始熟悉了一个叫“助记词”的概念,很多人都已经习惯了从一开始使用一个钱包的时候,就先抄好单词认真保管,并且他们对于助记词的重要性也有了很深刻的理

    2024年02月12日
    浏览(73)
  • 【密码学】块加密(分组加密)的工作模式

    上一篇文章讨论了 DES 算法,现在我们有了“给定 64-bit 的明文、64-bit 的密钥,输出 64-bit 的密文”的加密手段。这离实际应用还有一点点距离,因为要传递的信息当然不止 64 位。 要用 DES 加密一条信息,一般先把信息填充到 64 的倍数,于是就可以分成许多组,每组 8 个字节

    2024年02月16日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包