{生产管理知识}密码学与公钥体系介绍

上传人:管****问 文档编号:138168525 上传时间:2020-07-14 格式:DOCX 页数:14 大小:72.77KB
返回 下载 相关 举报
{生产管理知识}密码学与公钥体系介绍_第1页
第1页 / 共14页
{生产管理知识}密码学与公钥体系介绍_第2页
第2页 / 共14页
{生产管理知识}密码学与公钥体系介绍_第3页
第3页 / 共14页
{生产管理知识}密码学与公钥体系介绍_第4页
第4页 / 共14页
{生产管理知识}密码学与公钥体系介绍_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《{生产管理知识}密码学与公钥体系介绍》由会员分享,可在线阅读,更多相关《{生产管理知识}密码学与公钥体系介绍(14页珍藏版)》请在金锄头文库上搜索。

1、密码学和PKI公钥体系简介目录一.关键词:2二.密码学32.1什么是密码学32.2密码学的起源32.3 什么是加密算法32.4 对称加密算法与非对称加密算法42.4.1 对称加密算法42.4.2 非对称加密算法52.5 RSA 算法详细介绍62.5.1 RSA公开密钥密码系统的数学原理62.5.2 RSA公钥体系可用于对数据信息进行数字签名62.5.3散列函数7三.公钥基础结构(PKI)8四.证书颁发机构(CA)10四.证书114.1证书信息114.2生成加密密钥和证书申请114.3证书的安全机制11五.智能卡13一.关键词:公钥基础结构 (PKI)通常用于描述规范或管理证书和公,私钥的法律,

2、政策,标准和软件的术语。在实践中,它是检验和验证与电子事务相关的每一方的数字证书,证书认证和其他注册颁发机构的系统。公钥基础结构也被称为PKI.证书颁发机构 (CA)负责建立并保证属于用户(最终实体)或其他证书颁发机构的公钥的真实性的实体。证书办法机构的活动可能包括通过所签署的证书将公钥绑定到特征名称上,以及管理证书序号和证书吊销。证书颁发机构也被称为CA。证书公钥证书,通常简称为证书,是一种数字签名的声明,它将公钥值与拥有对应私钥的个人、设备或服务的身份绑定到一起。用于对在不安全网络(如Internet)上的信息进行身份验证和安全交换的数据集。证书将公钥安全地棒定到持有相应私钥的实体中。证书

3、由颁发证书的机构进行数字签名,并且可被管理以便用于用户,计算机或服务。 被最广泛接受的证书格式由ITU-TX509国际标准定义。智能卡信用卡大小的设备,用于安全地存储公钥和私钥,密码以及其他类型的个人信息。要使用智能卡,需要有连接到计算机的智能卡阅读器和智能卡的个人PIN号码。CrytpAPI作为Microsoft Windows的一部分提供的应用程序编程接口(API)。CrytpAPI提供了一组函数,这些函数允许应用程序在对用户的敏感私钥数据提供保护时以灵活的方式对数据进行加密或数字签名。实际的加密操作由加密服务提供程序(CSP)的独立模块执行。CrytpAPI也被称为CAPI。数字签名数字

4、签名是一种确保数据完整性和原始性的方法。由于数据被签名并确认了对数据签名的人或实体的身份,因此数字签名提供有力的证据。数字签名启用“完整性”和“认可”这两项重要安全功能,这是实施安全电子商务的基本要求。 二.密码学“世界上有两种密码: 一种是防止你的小妹妹偷看你的文件;另一种是防止当局阅读你的文件资料。”摘自Bruce.Schneier应用密码学2.1什么是密码学“如果把一封信所在保险柜中,把保险柜藏在纽约的某个地方,然后告诉你去看这封信,这并不是安全,而是隐藏。相反,如果把一封信锁在保险柜里,然后把保险柜及其设计规范和许多同样的保险柜给你,以便你和世界上最好的开保险柜的专家能够研究锁的装置,

5、而你还是无法打开保险柜去读这封信,这才是安全的概念。”摘自Bruce.Schneier应用密码学2.2密码学的起源最早的密码学应用可追溯到公元前2000 年古埃及人使用的象形文字。这种文字由复杂的图形组成,其含义只被为数不多的人掌握着。而最早将现代密码学概念运用于实际的人是恺撒大帝(尤利西斯.恺撒公元前100年 44 年)。他不太相信负责他和他手下将领通讯的传令官,因此他发明了一种简单的加密算法把他的信件加密。第二次世界大战以后,由于与计算机技术的结合,密码学的理论研究与实际应用得到了飞速的发展,随之产生了很多新的分支理论,如微粒照片,数字图片水印技术和其他很多隐藏被传递和存储的信息的方法。其

6、中,最常见的就是利用计算机将明文和密码变成密文和将密码和密文变成明文。2.3 什么是加密算法所谓加密算法就是指将信息变成密文的计算方法。有的加密算法就是对信息进行简单的替换或乱序,这种加密算法最明显的缺陷就是,算法本身必须保证是保密的。现代加密算法通常都需要密钥来完成对信息的加密运算,算法本身可以公开,理论上,只要保证密钥的安全就能保证信息的安全。最早的恺撒密文就是一种简单的字母替换加密算法。算法本身非常简单,但同时也是最容易破解的算法。其加密方式就是,按照其在英文字母表里的顺序,将字母循环移位。整个算法可归结为下面的公式:F(x) = ( x + s ) mod 26其中x 是原文字母,s

7、是一个常数。例如,如果s 等于3,则字母A就被加密为D,而字母Z 就被加密为C。这种加密方法虽然简单,但是缺点也是显而易见的。比如,明文中字母C 出现的次数是5 次的话,则加密后对应的字母出现的次数也是5 次,也就是说字母出现的频率没有变化。比如E 是英文中最常用的字母,那么给定一个足够大的密文,该文中出现最多的字母很可能就是E,如果不是,那可能是A、I 或Q。密码学专家只用十几个密码字母就能很快的进行这种统计攻击。现代加密算法与这种简单的字母替换算法不同的地方在于,加密算法的安全性基于用于加密的密钥而不是算法本身。对于好的加密算法,即使公开其算法设计原理也不会对其安全性产生丝毫的影响。只要用

8、于加密的密钥是安全的,则被加密的信息也就是安全的。2.4 对称加密算法与非对称加密算法基于密钥的加密算法可以分为两大类:对称加密算法和非对称加密算法(也叫公钥算法)。2.4.1 对称加密算法所谓的对称密钥算法就是用加密数据使用的密钥可以计算出用于解密数据的密钥,反之亦然。绝大多数的对称加密算法加密密钥和解密密钥都是相同的。对称加密算法要求通讯双方在建立安全信道之前,约定好所使用的密钥。对于好的对称加密算法,其安全性完全决定于密钥的安全,算法本身是可以公开的,因此一旦密钥泄漏就等于泄漏了被加密的信息。对称算法是传统常用的算法。它最广泛使用的是DES算法。DES(Data Encryption S

9、tandard) 算法是美国政府机关为了保护信息处理中的计算机数据而使用的一种加密方式,是一种常规密码体制的密码算法,目前已广泛用于电子商务系统中。64位DES的算法详细情况已在美国联邦信息处理标准(FIPS PUB46)上发表。该算法输入的是64比特的明文,在64比特密钥的控制下产生64比特的密文;反之输入64比特的密文,输出64比特的明文。64比特的密钥中含有8个比特的奇偶校验位,所以实际有效密钥长度为56比特。随着研究的发展,DES算法在基本不改变加密强度的条件下,发展了许多变形DES。Triple-DES 是DES算法扩展其密钥长度的一种方法,可使加密密钥长度扩展到128比特(112比

10、特有效)或192比特(168比特有效)。其基本原理是将128比特的密钥分为64比特的两组,对明文多次进行普通的DES加解密操作,从而增强加密强度。具体实现方式不在此详细描述。对称算法最主要的问题是:由于加解密双方都要使用相同的密钥,因此在发送、接收数据之前,必须完成密钥的分发。因而,密钥的分发便成了该加密体系中的最薄弱因而风险最大的环节。各种基本的手段均很难保障安全地完成此项工作。从而,使密钥更新的周期加长,给他人破译密钥提供了机会。实际上这与传统的保密方法差别不大。在历史战争中,破获他国情报的纪录不外是两种方式:一种是在敌方更换“密码本”的过程中截获对方密码本;另一种是敌人密钥变动周期太长,

11、被长期跟踪,找出规律从而被破获。在对称算法中,尽管由于密钥强度增强,跟踪找出规律破获密钥的机会大大减小了,但密钥分发的困难问题几乎无法解决。如,设有n方参与通信,若 n 方都采用同一个对称密钥,一旦密钥被破解,整个体系就会崩溃;若采用不同的对称密钥则需 n(n-1) 个密钥,密钥数与参与通信人数的平方数成正比。这便使大系统密钥的管理几乎成为不可能。 图一. 对称加/解密示意图 图中:SK为秘密密钥,SK密钥的传递通过秘密的物理通道。 2.4.2 非对称加密算法所谓非对称加密算法是指用于加密的密钥与用于解密的密钥是不同的,而且从加密的密钥无法推导出解密的密钥。这类算法之所以被称为公钥算法是因为用

12、于加密的密钥是可以广泛公开的,任何人都可以得到加密密钥并用来加密信息,但是只有拥有对应解密密钥的人才能将信息解密。在公钥体制中,加密密钥不同于解密密钥,将加密密钥公之于众,谁都可以使用;而解密密钥只有解密人自己知道。它们分别称为PK公开密钥 (Public key) 和SK秘密密钥 (Secret key)。迄今为止的所有公钥密码体系中,RSA系统是最著名、使用最广泛的一种。RSA公开密钥密码系统是由R. Rivest、A. Shamir和L. Adleman三位教授于1977年提出的。RSA的取名就是来自于这三位发明者的姓的第一个字母。RSA算法对数据的加/解密的过程如图所示。收方B的秘密密

13、钥(私钥)SKB由B自己保存,其相应的公开密钥(公钥)PKB可经公开信道送给发方A等通信伙伴。RSA算法研制的最初理念与目标是旨在解决利用公开信道传输分发DES算法的秘密密钥的难题。而实际结果不但很好地解决了这个难题,还可利用RSA来完成对电文的数字签名,以防止对电文的否认与抵赖,同时还可以利用数字签名较容易地发现攻击者对电文的非法篡改,以保护数据信息的完整性。 图二. 非对称加/解密示意图图中: PKB 收方的公开密钥 SKB 收方的秘密密钥2.5 RSA 算法详细介绍2.5.1 RSA公开密钥密码系统的数学原理 密钥管理中心产生一对公开密钥和秘密密钥的方法如下:在离线方式下,先产生两个足够

14、大的强质数p、q。可得p与q的乘积为n=pxq。再由p和q算出另一个数z=(p-1)(q-1),然后再选取一个与z互素的奇数e,称e为公开指数;从这个e值可以找出另一个值d,并能满足ed=1 mod (z)条件。由此而得到的两组数(n,e) 和 (n,d)分别被称为公开密钥和秘密密钥,或简称公钥和私钥。对于明文M,用公钥 (n,e) 加密可得到密文C。C = M mod (n) (1)对于密文C,用私钥(n,d)解密可得到明文M。M = C mod (n) (2)(2) 式的数学证明用到了数论中的欧拉定理,具体过程这里不赘述。同法,也可定义用私钥(n,d)先进行解密后,然后用公钥(n,e)进行

15、加密(用于签名)。p、q、z由密钥管理中心负责保密。在密钥对一经产生便自动将其销毁或者为了以后密钥恢复的需要将其存入离线的安全黑库里面;如密钥对是用户自己离线产生的,则p、q、z的保密或及时销毁由用户自己负责。在本系统中,这些工作均由程序自动完成。在密钥对产生好后,公钥则通过签证机关CA以证书的形式向用户分发;经加密后的密态私钥用PIN卡携带分发至用户本人。RSA算法之所以具有安全性,是基于数论中的一个特性事实:即将两个大的质数合成一个大数很容易,而相反的过程则非常困难。在当今技术条件下,当n足够大时,为了找到d,欲从n中通过质因子分解试图找到与d对应的p、q是极其困难甚至是不可能的。由此可见,RSA的安全性是依赖于作为公钥的大数n的位数长度的。为保证足够的安全性,一般认为现在的个人应用需要用384或512比特位的n,公司需要用1024比特位的n,极其重要的场合应该用2048比特位的n。2.5.2 RSA公钥体系可用于对数据信息进行数字签名 RSA公钥体系还可用于对数据信息进行数字签名。所谓数字签名就是信息发送者用其私钥对从所传报文中提取出的特征数据或称数字指纹进行RSA算法解密运算操作,得到发信者对该数字指纹的签名函数H(m)。签名函数H(m)从技术上标识了发信者对该电文的数字指纹的责任。因发信者的私钥只有他本人才有,所以他一旦完成了签名

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号