• Atitit RSA非对称加密原理与解决方案


    Atitit RSA非对称加密原理与解决方案

    1.1. 一、一点历史 1

    1.2. 八、加密和解密 2

    1.3. 二、基于RSA的消息传递机制  3

    1.4. 基于rsa的授权验证机器码 4

    1.5. 为减少计算量,在传送信息时,常采用传统加密方法与公开密钥加密方法相结合的方式, 4

    1.6. RSA算法是第一个能同时用于加密和数字签名的算法 4

    1.1. 一、一点历史

    1976年以前,所有的加密方法都是同一种模式:

      (1)甲方选择某一种加密规则,对信息进行加密;

      (2)乙方使用同一种规则,对信息进行解密。

    由于加密和解密使用同样规则(简称"密钥"),这被称为"对称加密算法"Symmetric-key algorithm)。

    这种加密模式有一个最大弱点:甲方必须把加密规则告诉乙方,否则无法解密。保存和传递密钥,就成了最头疼的问题。

    976年,两位美国计算机学家Whitfield Diffie 和 Martin Hellman,提出了一种崭新构思,可以在不直接传递密钥的情况下,完成解密。这被称为"Diffie-Hellman密钥交换算法"。这个算法启发了其他科学家。人们认识到,加密和解密可以使用不同的规则,只要这两种规则之间存在某种对应关系即可,这样就避免了直接传递密钥。

    这种新的加密模式被称为"非对称加密算法"。

      (1)乙方生成两把密钥(公钥和私钥)。公钥是公开的,任何人都可以获得,私钥则是保密的。

      (2)甲方获取乙方的公钥,然后用它对信息加密。

      (3)乙方得到加密后的信息,用私钥解密。

    1977年,三位数学家Rivest、Shamir 和 Adleman 设计了一种算法,可以实现非对称加密。这种算法用他们三个人的名字命名,叫做RSA算法。从那时直到现在,RSA算法一直是最广为使用的"非对称加密算法"。毫不夸张地说,只要有计算机网络的地方,就有RSA算法。

    1.2. 八、加密和解密

    有了公钥和密钥,就能进行加密和解密了

     私钥和公钥都可以加密和解密消息,且公钥加密的文本只有对应的私钥才能解密,私钥加密的文本也只有对应的公钥才能解密。

    1.3. 二、基于RSA的消息传递机制

    AB发送消息MSG
    发送方 A
    1. MSG使用周知的Hash函数计算出数字签名得到SIG
    2. 使用私钥对SIG进行加密得到CrypSIG
    3. 由于RSA加密算法复杂,因此使用简单的加密算法(密码为PWD)对MSG+CrypSIG进行加密得到CrypMSG
    4. 使用B的公钥对PWD加密得到CrypPWD
    5. CrypPWD, CrypMSG发送给B

    接收方 B
    1. 使用私钥解密CrypPWD,的搭配PWD1
    2. PWD1解密CrypMSG得到MSG1+CrypSIG1
    3. 计算MSG1的数字签名SIG1
    4. 用私钥解密CrypSIG1得到SIG2,若SIG1==SIG2则接受消息,否者丢弃消息

    三、使用方式:

    ①  假设A、B机器进行通信,已A机器为主;

    ②  A首先需要用自己的私钥为发送请求数据签名,并将公钥一同发送给B;

    ③  B收到数据后,需要用A发送的公钥进行验证,已确保收到的数据是未经篡改的;

    ④  B验签通过后,处理逻辑,并把处理结果返回,返回数据需要用A发送的公钥进行加密(公钥加密后,只能用配对的私钥解密);

    ⑤  A收到B返回的数据,使用私钥解密,至此,一次数据交互完成。

    1.4. 基于rsa的授权验证机器码

    服务端 A
    使用私钥对机器码加密。。

    客户端b

    使用a的公钥解密授权证书文件。得到里面的机器码,与本地对照。

    二、模型分析

    RSA算法构建密钥对简单的很,这里我们还是以甲乙双方发送数据为模型

    1、甲方在本地构建密钥对(公钥+私钥),并将公钥公布给乙方

    2、甲方将数据用私钥进行加密,发送给乙方

    3、乙方用甲方提供的公钥对数据进行解密

    1.5. 为减少计算量,在传送信息时,常采用传统加密方法与公开密钥加密方法相结合的方式,

    即信息采用改进的DESIDEA对话密钥加密,然后使用RSA密钥加密对话密钥和信息摘要。对方收到信息后,用不同的密钥解密并可核对信息摘要。

    1.6. RSA算法是第一个能同时用于加密和数字签名的算法

    ,也易于理解和操作。RSA是被研究得最广泛的公钥算法,从提出到现今的三十多年里,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。

    RSA数字签名机制 - bnufq的专栏 - 博客频道 - CSDN.NET.html

    作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 

    汉字名:艾提拉(艾龙)   EMAIL:1466519819@qq.com

    转载请注明来源: http://blog.cnb.net/attilax

    Atiend

  • 相关阅读:
    如何显示Mac中文件的路径(path)
    什么样的音符对听起来悦耳?
    如何用iMovie剪辑视频
    【转】基因的故事
    4阶魔方解决方案
    SQ1魔方解决方案
    如何将Wikipedia链接的Unicode编码转成百分号编码
    我喜欢的LaTex编辑器
    react(redux)
    React (高阶组件)
  • 原文地址:https://www.cnblogs.com/attilax/p/5957445.html
Copyright © 2020-2023  润新知