资讯专栏INFORMATION COLUMN

密码学---公钥密码---公钥密码体制

kun_jian / 3358人阅读

摘要:公钥密码体制的概念公钥密码体制的概念是在解决数字签名和公钥分配这两个问题时提出的。因此目前公钥密码体制主要用于密钥管理和数字签名根据公钥计算密钥可能字攻击仅适用于对公钥密码算法的攻击。


在公钥密码体制之前,所有的密码算法都是基于代换和置换这两个基本工具。公钥密码体制为密码学的发展提供了新的理论和技术基础:1.公钥密码算法的基本攻击不再是代换和置换,而是数学函数;2.公钥密码以非对称的形式使用两个密钥,两个密钥的使用对保密性、密钥分配、认证等都有着深刻的意义。

公钥密码体制的概念

公钥密码体制的概念是在解决数字签名和公钥分配这两个问题时提出的。
在解决公钥分配时,要求通信双方要么已经有一个共享的密钥,要么有一个可借助的密钥分配中心
在解决数字签名时,考虑的是如何为数字化的消息或文件提供一种类似于为书面文件签字的方法,主要是用来保证传送数据不被修改
公钥密码算法的最大特点是采用两个相关密钥将加密和解密能力分开,其中一个是公开的,称为公钥,用于加密;其中一个是为用户专用的,是保密的,称为私钥,用于解密。因此公钥密码体制也被称双钥密码体制

公钥密码体制的原理

公钥密码体制的加密和解密依赖于:已知密码算法和加密密钥,求解密密钥在计算上是不可行的

使用公钥密码体制加密传送消息的过程

1.消息接受者B需要产生一对用来加密和解密的密钥
2.消息接受者B将加密密钥PKB予以公开,另一解密密钥SKB保密
3.消息发送者A使用PKB对要发送的消息m进行加密,得到密文c,表示如下:

4.B收到密文c后,用私钥SKB进行解密操作,解密过程如下:

由于密钥SKB只有B知道,因此只有B能对密文c解密。
过程如图所示:

使用公钥密码体制进行消息认证的过程

公钥加密算法不仅能用来加密和解密,还能用来对A发送的消息m进行一个认证操作。
过程:
1.用户A用自己的私有密钥SKA对明文m进行加密,加密过程如下:

2.将c传送给B
3.B用A的公开密钥PKA对c解密,解密过程如下:

因为数字签名的加密密钥SKA只有A才有,因此没有人能够对m进行修改,保证了消息完整性和消息来源的认证
流程如图所示:

使用公钥密码体制的加密和认证过程

发送方A先用自己的私钥SKA对消息m加密,用于提供数字签名,然后用接收者B的公钥PKB进行第二次加密,加密过程为:

接受者先用自己的私钥解密,然后再用发送方A的公钥进行解密,解密过程如下:

流程如下:

公钥密码算法要求

公钥密码算法应满足如下条件:

  1. 接收方B产生密钥对是计算上容易的
  2. 发送方用收方的公钥对消息m加密产生密文c在计算上容易的
  3. 接收方B用密钥对密文c进行解密得到明文m在计算上是容易的
  4. 敌手根据公钥求私钥在计算上不可行的
  5. 敌手根据密文c和公钥恢复明文m在计算上是不可行的
  6. 加解密次序可以调换(某些算法满足),即:

    以上要求的本质就是一个陷门单向函数。陷门单向函数是指该函数是易于计算的,除非已知某些信息,否则求它的逆是不可行的,且当给定信息后,求逆可在多项式时间完成。即陷门单向函数需要满足:
    1.已知k和X时,Y=f(X)容易计算
    2.已知k和Y时,X=f-1容易计算
    3.已知Y,但未知k时,X=f-1在计算是不可行的

公钥密码体制的攻击

1.穷搜索攻击

由于密码太短,公钥密码体制很容易受到穷搜索攻击,因此密钥需要满足一定长度,但是密钥太长,解密运算又会太慢导致算法不实用。因此目前公钥密码体制主要用于密钥管理和数字签名

2.根据公钥计算密钥

3.可能字攻击

仅适用于对公钥密码算法的攻击。
该方法的本质还是穷搜索攻击,只是已知了某些信息,如截获某段密文,根据公钥对所有可能的密钥进行穷举,用所以可能的密钥加密后与截获的密文记行比较,若一样,则密钥就被找出
可以通过在要发送的明文消息后面添加一些随机比特

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/121454.html

相关文章

  • 密码的术语、分类和体制(笔记)

    摘要:一密码学的术语分类术语密码体制明文空间密文空间密钥空间加密算法和解密算法五部分构成。柯克霍夫原则是现代密码学设计的基本原则。特性散列函数特性消息的长度不受限制。 一、密码学的术语、分类 1、术语 密码体制:明文空间、密文空间、密钥空间、加密算法和解密算法五部分构成。 密码协议:有时称为安全协议,指以密码学为基础的消息交换的通信协议,目的是在网络环境 中提供各种...

    int64 评论0 收藏0
  • 区块链之非对称加密算法

    摘要:二如何理解公钥和私钥非对称加密算法需要两个密钥公开密钥和私有密钥。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。三非对称加密解密原理非对称加密算法中,常用的就是算法了,以下就以算法为例来讲解非对称加密算法的实现原理。 非对称加密,在现在网络应用中,有这非常广泛的场景,更是加密货币的基础。本文主要介绍非对称加密、解密的原理和过程,以及在区块链中的使用。 一、非对称...

    mcterry 评论0 收藏0
  • Base64 编码的编程使用.md

    摘要:密码学综述密码的基本功能机密性鉴别报文完整性不可否认性基本模型算法分类消息编码消息摘要对称密码非对称密码密钥交换数字签名密码学五元组明文密文加密算法解密算法密钥。 密码学综述 密码的基本功能 机密性 鉴别 报文完整性 不可否认性 基本模型 showImg(https://segmentfault.com/img/bVT5um?w=882&h=307); 算法分类 消息编码:B...

    QLQ 评论0 收藏0
  • 如何在NEO区块链上实现信息加密

    摘要:首先,和拥有一对密钥,接着,和互换公钥,与互换公钥互换公钥后便可使用一种称为椭圆曲线密钥交换体制见维基百科的常见技术创建双方的共享密钥。上文仅是的基本介绍,下文将讲解怎样使用为区块链上的信息加密。 你或许已经知道,区块链上的交易大多都是透明公开的,用户既可以直接通过RPC查询NEO节点,也可以使用NEOTracker或NEOScan等方便好用的区块链浏览器浏览交易记录、余额、智能合约或...

    darcrand 评论0 收藏0
  • 网安精英赛总结

    摘要:数字签名的基本特征不可伪造性不可否认行消息完整性。入侵检测系统主要作用是发现并报告系统中未授权或违反安全策略的行为。在协议中,协议指的是组管理协议,位于协议的网络层。是网络层的协议,地址欺骗攻击属于网络层的安全风险。网安精英赛复赛小结 ...

    bingchen 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<