公钥加密的原理

合集下载

《网络安全》第5-6讲(2.4)

《网络安全》第5-6讲(2.4)

2.4 公钥(非对称)密码体制
2.4.2 公钥密码体制的原理
公钥密码体制的基本数学方法和基本原理如下所述。 2.用于构造公钥密码的常用单向函数 1)多项式求根 有限域GF(p)上的一个多项式
f ( x) ( x anmod p
当给定多项式的系数和x、p以后,利用Honer算法,最多进行 n次乘法,n-1次加法,就可以求得y的值。但已知多项式的系数a 和y、p以后,要求x,就需要对高次方程求根,至少要进行不小 于n2(lbp)2的整数次乘法,当n、p很大时很难求解。
定n以后求p、q的问题称为RSA问题。求n=p×q分解问题有以下几种形式:
(1)分解整数n为p、q; (2)给定整数M、C,求d使得Cd≡M mod n; (3)给定整数k、C,求M使得Mk≡C mod n; (4)给定整数x、C,决定是否存在y使得x≡y2mod n(二次剩余问题)。
遵义师范学院
给定x求y是容易的,但是当p很大时,从x=logby中要计算x是非常困难 的。如b=2,p=2100,给定x求y,只需作100次乘法,利用高速计算机可 在0.1ms内完成。而给定y求x,所需计算量为1600年。可见,有限域 GF(p)中的指数函数f(x)=bx是一个单向函数。
x=logby
遵义师范学院
遵义师范学院
2.4 公钥(非对称)密码体制
2.4.1 公钥密码体制的基本概念 3.电子签证机关
电子签证机关(即CA)是负责颁发数字证书的权威机构。CA自 身拥有密钥对,可以使用私钥完成对其他证书的数字签名,同时也拥 有一个对外开放的证书(内含公钥)。网上的公众用户通过验证CA的 数字签名建立信任,任何人都可以得到CA的证书(含公钥),用以验 证它所签发的其他证书。如果用户想建立自己的证书,首先要向CA提 出申请证书的请求。在CA判明申请者的身份后,便为他分配一个密钥 对,并且CA将申请者的公钥与身份信息绑在一起,在为之完成数字签 名后,便形成证书发给那个用户(申请者)。如果一个用户想鉴别数 字证书是否为假冒的,可以用证书发证机构CA的公钥对该证书上的数 字签名进行验证,数字签名验证的过程是使用CA公钥解密的过程,验 证通过的证书就被认为是有效的。CA在公开密码体系中非常重要,负 责签发证书以及证书和密钥的管理等必要工作。CA相当于网上公安机 构,专门发放、验证电子身份证。

ecc加密算法原理

ecc加密算法原理

ecc加密算法原理
ECC(椭圆曲线加密,Elliptic Curve Cryptography)是一种公钥加密算法。

它利用椭圆曲线上的点进行加密操作,具有高安全性和短密钥长度的特点。

其加密过程主要包括以下步骤:
1.密钥生成:首先,生成一对公钥和私钥。

公钥由一条椭圆曲线上的点和该点的阶(点乘法运算的结果)组成,私钥为一个随机数。

这对密钥是成对出现的,通常私钥只有持有者知道,公钥则像身份证一样公开验证身份。

2.加密:假设发送方想要将消息m发送给接收方,首先需要利用接收方的公钥,选择椭圆曲线上的一个点P,然后将消息m与点P进行点乘运算,将点的坐标作为密文发送给接收方。

3.解密:当接收方收到密文后,利用自己的私钥对密文进行解密。

具体地,接收方首先通过私钥生成一条与椭圆曲线上公钥相对应的直线,然后将密文点与该直线相交,所得的交点即为原始消息m。

ECC加密算法的安全性基于“离散对数”难题,即求解椭圆曲线上的离散对数(对于椭圆曲线上某个点x,求k使得kP=x,其中P为椭圆曲线上的点)。

由于该问题的计算复杂度很高,即使使用目前最快的算法也需要耗费很长时间,因此ECC算法被认为是一种安全性比较高的密码算法。

1/ 1。

公钥密码算法

公钥密码算法

公钥密码算法公钥密码算法是现代密码体系最通用的加密算法,称为非对称加密方式,公钥和私钥总是成对出现的,用公钥加密则私钥可以用来解密,或者反过来。

标准的RSA的加密算法利用的是大数质因数分解困难的特点,其数学原理十分简单。

{(XQ−1)P−1≡1(modP)(XP−1)Q−1≡1(modQ)⇒X(P−1)×(Q −1)≡1(modPQ)⇒XM≡1(modN)⇒XE×D≡X(modN)⇒YD≡X(mod N)其中密文Y、公钥E和大数N都是公开的,但是没有私钥D就无法得到X,破解需要对N进行质因数分解反推出P和Q,因为大数质因数分解需要穷举,因此密码在很长的时限内都是安全的。

从原理可以看出,加密和解密是完全对称的,如果用私钥加密,而用公钥解密的过程称为电子签名,因为别人没有私钥,就无法伪造签名者的消息和身份信息了。

一般网银和网上交易等金融相关的密码体系采用加密和电子签名相结合的方式,对用户密码用银行等服务端的公钥加密后再和用户名等信息一起用用户的私钥进行电子签名,服务端再分别用用户的公钥和银行的私钥解密,用数字证书的方式传递公钥。

而一般的网站登录多采用MD5值来存储和比对密码,虽然理论上从MD5值无法得到密码的明文,但仍然存在撞库的风险,黑客收集普通人常用的一些密码组合转换为MD5值来反推,因此尽量不要使用电话号码、名字缩写、生日组合之类的简单密码,网银密码用单独的密码不要和其他网站的密码一样。

RSA是目前最常用的公钥加密算法,但并没有从理论上证明破译RSA的难度与大数分解难度等价,有数学家认为RSA密码存在漏洞,而且在计算能力越来越强的计算机面前,仍然需要寻找更安全的加密方式。

ECC(Elliptic Curves Cryptography椭圆曲线密码)也是一种公钥密码算法,ECC能用更短的密钥长度来提供同等或更高的安全级别,其数学原理比较复杂,简单的说是利用椭圆曲线上点群的离散对数问题的困难性(并不懂这句话的意思),有机会再慢慢学习吧。

cfca ukey原理

cfca ukey原理

cfca ukey原理
CFCA(中国金融认证中心)Ukey 是一种用于身份验证和数字签名的安全设备,它的原理基于公钥密码学。

公钥密码学是一种非对称加密技术,它使用一对密钥:公钥和私钥。

公钥可以公开给任何人,而私钥则只能由拥有者自己持有。

公钥和私钥之间存在一种数学关系,使得用公钥加密的数据只能用私钥解密,而用私钥加密的数据只能用公钥解密。

CFCA Ukey 中包含了一个私钥和一个公钥,私钥存储在Ukey 内部,公钥则可以公开给其他人。

当用户需要进行身份验证或数字签名时,他需要将Ukey 插入计算机,并输入Ukey 的密码。

Ukey 会验证密码是否正确,如果正确,则会生成一个数字证书,该证书包含了用户的公钥和一些其他信息,如用户的姓名、组织单位等。

在进行身份验证时,用户需要将数字证书发送给验证者,验证者可以使用数字证书中的公钥来验证用户的身份。

在进行数字签名时,用户需要使用Ukey 中的私钥对数据进行签名,然后将签名后的数据和数字证书一起发送给接收者。

接收者可以使用数字证书中的公钥来验证签名的真实性。

总之,CFCA Ukey 的原理是基于公钥密码学,通过使用Ukey 中
的私钥和公钥来进行身份验证和数字签名,从而保证数据的安全性和真实性。

ssl证书的原理

ssl证书的原理

ssl证书的原理SSL证书是一种数字证书,用于保护网络通信的安全。

它通过加密传输信道,使数据无法被攻击者读取或篡改。

在现代互联网蓬勃发展的今天,SSL证书日益成为一个必要而重要的保护机制。

那么,SSL 证书是如何工作的呢?首先,我们需要了解公钥加密技术。

公钥加密是一种使用不同的密钥(一种用于加密,另一种用于解密)的密码算法。

它允许加密数据的发送者从未与接收者共享过密钥,同时保证不会被第三方篡改或窃取。

因此,SSL证书的使用基于公钥加密技术。

现在,我们来看看SSL证书的原理和工作流程:1.申请SSL证书:网络服务器管理员向SSL证书颁发机构申请数字证书。

证书颁发机构会验证申请人身份和机构的合法性,并为其签发一个加密密钥,即SSL证书。

2.证书绑定:证书颁发机构会将SSL证书与特定的域名或IP地址绑定。

这意味着只有对该域名或IP地址发起的加密请求才会收到相应的SSL证书。

3.建立SSL连接:当用户在浏览器中输入要访问的域名时,网络服务器会收到加密请求。

服务器将发送其SSL证书的副本,并要求浏览器验证证书是否合法。

浏览器会检查证书是否过期,是否由受信任的证书颁发机构签发,以及证书颁发机构是否是被认可的机构等。

如果验证通过,浏览器就生成另一个密钥(称为“会话密钥”),并使用服务器的公钥加密该密钥。

只有服务器的私钥才能解密该密钥。

4.加密通信:现在,浏览器和服务器均具有会话密钥,可以使用该密钥进行双向加密通信。

该过程中,所有传输的数据都会被加密并只有在接收方拥有相应的解密密钥时才能被读取。

5.维护SSL连接:一旦SSL连接建立,浏览器和服务器就会继续使用会话密钥进行加密通信,直到连接关闭。

总之,SSL证书的原理是通过使用公钥加密技术,建立安全的通信信道,保护网络通信的安全性和保密性。

这种机制可以使得用户和服务提供商同时享受高效的互联网服务,并且保证了数据不会被窃取或篡改,保障了网络安全。

信息安全概论第四章公钥密码体制

信息安全概论第四章公钥密码体制

14
Diffie-Hellman密钥交换算法 密钥交换算法
Diffie和Hellman在其里程碑意义的文章中, 虽然给出了密码的思想,但是没有给出真正意 义上的公钥密码实例,也既没能找出一个真正 带陷门的单向函数 然而,他们给出单向函数的实例,并且基于此 提出Diffie-Hellman密钥交换算法
13
常用的公开密钥算法
公钥算法的种类很多,具有代表性的三种密码: 公钥算法的种类很多,具有代表性的三种密码: 基于整数分解难题(IFP)的算法体制 基于整数分解难题(IFP)的算法体制(RSA) 基于离散对数难题(DLP)算法体制 基于离散对数难题(DLP)算法体制(ElGamal) 基于椭圆曲线离散对数难题( ECDLP ) 的算法体制 基于椭圆曲线离散对数难题 ( ECDLP) (ECC)
3
4.1 公钥密码体制的基本原理
对称算法的不足
(1)密钥管理量的困难 传统密钥管理:两两分别用一个密钥时, 传统密钥管理:两两分别用一个密钥时,则n个用户需 C(n,2)=n(n-1)/2个密钥 当用户量增大时, 个密钥, 要C(n,2)=n(n-1)/2个密钥,当用户量增大时,密钥空 间急剧增大。 间急剧增大。如: n=100 时, C(100,2)=4,995 n=5000时 n=5000时, C(5000,2)=12,497,500 (2)密钥必须通过某一信道协商,对这个信道的安全 密钥必须通过某一信道协商, 性的要求比正常的传送消息的信道的安全性要高
7
公开密钥密码的重要特性

加密与解密由不同的密钥完成 Y: X: Y = EKU(X) X = DKR(Y) = DKR(EKU(X))
加密: X฀ 解密: Y฀
฀ 知道加密算法,从加密密钥得到解密密钥在计算上 , 是不可行的 ฀ 两个密钥中任何一个都可以用作加密而另一个用 作解密(不是必须的) X = DKR(EKU(X))

数字证书的基本原理

数字证书的基本原理

数字证书的基本原理为:
1.公钥密码学:公钥密码学是一种加密技术,将信息加密后只有
私钥持有者才能解密。

公钥密码学中有两个密钥:公钥和私钥,
公钥用于加密信息,私钥用于解密信息。

公钥是公开的,任何
人都可以获得,而私钥是保密的,只有私钥持有者才能获得。

2.数字签名:数字签名是用于验证数字文档身份的技术,它使用
私钥加密信息,以确保信息的完整性和真实性。

数字签名可以
防止信息的篡改和伪造。

3.数字证书:数字证书是包含公钥和身份信息的电子文档,用于
验证数字身份。

数字证书包括发行者的数字签名,以确保证书
的真实性和完整性。

数字证书可以用于验证电子邮件、网站、
文件等的身份。

数字证书的基本原理是通过使用公钥密码学、数字签名和数字证书来确保数字身份的真实性和完整性。

数字证书可以用于验证数字身份,防止信息的篡改和伪造。

公钥密码体制及典型算法-RSA

公钥密码体制及典型算法-RSA
25
公钥密码算法应满足的要求
④ 敌手由B的公开钥PKB求秘密钥SKB在计算 上是不可行的。 ⑤ 敌手由密文c和B的公开钥PKB恢复明文m 在计算上是不可行的。 ⑥ 加、解密次序可换,即 EPKB[DSKB(m)]=DSKB[EPKB(m)] 其中最后一条虽然非常有用,但不是对 所有的算法都作要求。
发方首先用自己的秘密钥SKA对消息m加 密,用于提供数字签字。再用收方的公开钥 PKB第2次加密,表示为 c=EPKB[ESKA[m]] 解密过程为 m=DPKA[DSKB[c]] 即收方先用自己的秘密钥,再用发方的公 开钥对收到的密文两次解密。
23
公钥保密和认证体制
为了要同时实现保密性和确证性,要采用双重加、 解密
20
公钥密码体制认证的原理
以上认证过程中,由于消息是由用户自 己的秘密钥加密的,所以消息不能被他人篡 改,但却能被他人窃听。这是因为任何人都 能用用户的公开钥对消息解密。为了同时提 供认证功能和保密性,可使用双重加、解密。 如下图所示。
21
公钥密码体制的认证、保密框图
22
公钥密码体制认证的原理
18
公钥密码体制认证的原理
因为从m得到c是经过A的秘密钥SKA加 密,只有A才能做到。因此c可当做A对m的 数字签字。 另一方面,任何人只要得不到A的秘密 钥SKA就不能篡改m,所以以上过程获得了 对消息来源和消息完整性的认证。
19
公钥密码体制认证的原理
在实际应用中,特别是用户数目很多时,以 上认证方法需要很大的存储空间,因为每个文件都 必须以明文形式存储以方便实际使用,同时还必须 存储每个文件被加密后的密文形式即数字签字,以 便在有争议时用来认证文件的来源和内容。改进的 方法是减小文件的数字签字的大小,即先将文件经 过一个函数压缩成长度较小的比特串,得到的比特 串称为认证符。 认证符具有这样一个性质:如果保持认证符的 值不变而修改文件这在计算上是不可行的。用发送 者的秘密钥对认证符加密,加密后的结果为原文件 的数字签字。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档