密钥管理的管理技术
2.公钥管理/数字证书。贸易伙伴可以使用数字证书(公钥证书)来交换公钥。ITU制定的标准X.509定义了数字证书,相当于ISO和IEC联合发布的ISO/IEC 9594-8: 195标准。数字证书通常包含唯一标识证书所有者(即交易方)的名称、唯一标识证书发布者的名称、证书所有者的公钥、证书发布者的数字签名、证书的有效期和证书的序列号等。证书颁发者一般称为认证机构(CA),受到交易各方的信任。数字证书可以起到识别交易者的作用,是目前电子商务中广泛使用的技术之一。
3.与密钥管理相关的标准和规范。目前,相关国际标准化组织已经开始制定关于密钥管理的技术标准和规范。ISO和IEC下的信息技术委员会(JTC1)起草了关于密钥管理的国际标准和规范。该规范主要由三部分组成:一是密钥管理框架;二是利用对称技术的机制;三是技术不对称的机制。该规范现已进入国际标准草案投票阶段,即将成为正式的国际标准。
数字签名
数字签名是公钥加密技术的另一个应用。其主要方式是消息发送方从消息正文中生成一个128位的哈希值(或消息摘要)。发送方用自己的私钥加密这个哈希值,形成发送方的数字签名。然后,该数字签名将作为邮件的附件发送给邮件的接收者。消息的接收方首先从接收到的原始消息中计算出128位的哈希值(或消息摘要),然后用发送方的公钥解密附加在消息上的数字签名。如果两个哈希值相同,接收方可以确认数字签名属于发送方。数字签名可以实现对原始消息的认证和不可否认性。
ISO/IEC JTC1一直在起草相关的国际标准和规范。本标准的初步名称为“用于信息技术安全技术的带附件的数字签名方案”,由概述和基于身份的机制组成。据记载,公元前400年,古希腊人发明了排列密码。1881年,世界上第一个电话保密专利出现。第二次世界大战期间,德国军方启动了英格玛密码机,密码学在战争中发挥了非常重要的作用。
随着信息化和数字化社会的发展,人们对信息安全保密重要性的认识不断提高,于是在1997年,美国国家标准局公布并实施了“美国数据加密标准(DES)”,民间力量开始全面参与密码学的研究和应用,使用DES、RSA、SHA等加密算法。随着对加密强度需求的增加,最近出现了AES和ECC。
使用加密技术可以达到以下目的:
保密性:防止用户的身份或数据被读取。
数据完整性:防止数据被更改。
身份验证:确保数据来自特定的一方。
2.加密算法介绍根据密钥类型的不同,现代加密技术分为对称加密算法(秘钥加密)和非对称加密算法(公钥加密)两大类。
对称密钥加密系统使用同一个密钥进行加密和解密,双方都必须获得这个密钥并保密。
非对称密钥加密系统中使用的加密密钥(公钥)和解密密钥(私钥)是不同的。在对称加密算法中,加密和解密信息只使用一个密钥,即加密和解密使用同一个密钥。常用的算法有:DES(数据加密标准):数据加密标准,速度快,适合加密大量数据。
3DES(Triple DES):基于DES,一段数据用三个不同的密钥加密三次,强度更高。
AES(高级加密标准):高级加密标准,是下一代高速高安全级别的加密算法标准;
2000年6月,NIST(美国国家标准和技术研究所)宣布采用从65,438+05种候选算法中选出的一种新的密钥加密标准。Rijndael被选为未来的AES。Rijndael是由研究人员琼·代蒙和文森特·里门于1999年下半年创建的。AES正日益成为加密各种形式的电子数据的实用标准。
美国标准与技术协会(NIST)于2002年5月26日制定了新的高级加密标准(AES)规范。
算法原理AES算法是基于排列和置换运算。排列是重新排列数据,替换是用一个数据单元替换另一个数据单元。AES使用几种不同的方法来执行置换和置换运算。
AES是一种迭代的对称密钥分组密码。它可以使用128、192和256位密钥,用128位(16字节)加密和解密数据。与使用密钥对的公钥加密不同,对称密钥加密使用相同的密钥来加密和解密数据。分组密码返回的加密数据的位数与输入数据的位数相同。迭代加密使用循环结构,其中输入数据被重复置换和替换。
AES与3DES算法名称算法类型密钥长度速度解密时间(建机每秒尝试255个密钥)资源消耗AES对称分组密码128、192、256位高1490000亿年低3DES对称feistel密码112位或168位低46亿年常见的非对称加密算法如下:
RSA:由RSA公司发明,是一种公钥算法,支持变长密钥,要加密的文件块长度也是可变的;
DSA(数字签名算法):数字签名算法,是标准的DSS(数字签名标准);
ECC(椭圆曲线密码):椭圆曲线密码。
1976年,由于对称加密算法已经不能满足需要,Diffie和Hellman发表了一篇名为《密码学新趋势》的文章,引入了公钥加密的概念,RSA算法由Rivet、Shamir和Adelman提出。
随着大整数分解方法的进步和完善,计算机速度的提高和计算机网络的发展,需要不断增加RSA的密钥来保证数据的安全性。但是密钥长度的增加大大降低了加解密的速度,硬件实现变得越来越难以承受,给使用RSA的应用带来了沉重的负担,因此需要一种新的算法来替代RSA。
在1985中,N.Koblitz和Miller基于有限域上椭圆曲线上的点群中的离散对数问题ECDLP,提出了椭圆曲线应用于密码算法。ECDLP是一个比因式分解更难的问题,而且是指数级的困难。
原理——椭圆曲线上的难题椭圆曲线上的离散对数问题ECDLP的定义如下:给定素数P和椭圆曲线E,对于Q=kP,求已知P和Q时小于P的正整数K。可以证明,由k和p计算q比较容易,但由q和p计算k比较困难。
通过将椭圆曲线上的加法运算与离散对数上的模乘运算相匹配,将椭圆曲线上的乘法运算与离散对数上的模幂运算相匹配,可以建立相应的基于椭圆曲线的密码体制。
比如对应于Diffie-Hellman公钥体制,我们可以通过以下方式在椭圆曲线上实现:在E上选择生成元P,要求P生成的群元素足够多,通信双方A和B分别选择A和B,保密,但aP和bP公开,A和B之间通信使用的密钥是abP,第三方不知道。
相应的ELGamal密码系统可以通过以下方式在椭圆曲线上实现:
将明文M嵌入E上的Pm点,选择一个点B∈E,每个用户选择一个整数A,0
k = kG[其中k和g是Ep(a,b)上的点,k是小于n的整数(n是点g的阶)]
不难发现,给定k和g,根据加法定律很容易计算出k;但给定k和g,求k相对困难。
这就是椭圆曲线加密算法的难题。我们称点G为基点,k (k
与RSA相比,ECC在很多方面具有绝对优势,主要表现在以下几个方面:
抗攻击能力强。同样的密钥长度,它的抗攻击性强很多倍。
计算量小,处理速度快。ECC的整体速度比RSA和DSA快得多。
储物空间小。与RSA和DSA相比,ECC的密钥大小和系统参数要小得多,这意味着它占用的存储空间要小得多。这对加密算法在IC卡中的应用具有重要意义。
低带宽要求。当加密和解密长消息时,三种类型的密码系统具有相同的带宽要求,但是当应用于短消息时,ECC带宽要求低得多。低带宽要求使得ECC在无线网络领域具有广阔的应用前景。
ECC的这些特性必将取代RSA,成为一种通用的公钥加密算法。比如SET协议的制定者已经将其作为下一代SET协议中默认的公钥密码算法。
下面两个是RSA和ECC的安全性和速度比较。突破时间(MIPS年)RSA/DSA(密钥长度)ECC密钥长度RSA/ ECC密钥长度比是10 512 106 5:1 10 768 132 6:1 1024 160 7:65438。10 10:1 10 2100600 35:1 RSA和ECC安全模块长度安全生成器1.2B Safe3.0 163位ECC(ms)的比较函数。1,023位RSA(ms)密钥对生成3.8 4,708.3签名2.1(ECNRA) 228.4 3.0(ECDSA)认证9.9(ECN ra)12.7 10.7(ECD sa)Diffie-Hellman密钥交换7.3 1,654.0 RSA和ECC速度比较哈希算法也称为这种转换是一种压缩映射,即哈希值的空间通常比输入的空间小得多,不同的输入可能被哈希成同一个输出,所以不可能从哈希值唯一确定输入值。简单地说,它是将任意长度的消息压缩成固定长度的消息摘要的功能。
哈希算法主要用于信息安全领域的加密算法。它将一些不同长度的信息转换成128位的乱码,称为哈希值。换句话说,哈希就是要找到数据内容和数据存储地址之间的映射关系。Hash是对信息的细化,长度通常比信息小很多,而且是固定长度。强加密哈希必须是不可逆的,这意味着原始信息的任何部分都无法从哈希结果中推断出来。输入信息的任何变化,哪怕只有一位,都会导致哈希结果的明显变化,这就是所谓的雪崩效应。哈希也要防冲突,就是不能找到两条哈希结果相同的信息。具有这些特征的散列结果可用于验证信息是否已被修改。
单向哈希函数一般用于生成消息摘要、密钥加密等。常见的有:
MD5(消息摘要算法5):是RSA数据安全公司开发的一种单向哈希算法。
SHA(安全哈希算法):任意长度的数据运算可以生成160位的数值;
在1993中,安全散列算法(SHA)由国家标准和技术研究所(NIST)提出,并作为联邦信息处理标准发布(FIPS出版物180)。1995年,发布了一个修订版的FIPS PUB 180-1,通常称为SHA-1。SHA-1基于MD4算法,其设计很大程度上模仿了MD4。现在它已经成为最安全的哈希算法之一,被广泛使用。
原理SHA-1是一种数据加密算法。这种算法的思想是接收一个明文,然后以不可逆的方式将其转换成密文(通常更小)。也可以简单地理解为取一系列输入码(称为预映射或信息)并将其转换成短且固定数量的输出序列,即哈希值(也称为信息摘要或信息认证码)的过程。
单向哈希函数的安全性在于其生成哈希值的强单向运算过程。如果在输入序列中嵌入密码,没有人可以在不知道密码的情况下生成正确的哈希值,从而保证其安全性。SHA按照每块512位(64字节)对输入流进行分块,生成一个20字节的输出,称为信息认证码或信息摘要。
该算法输入消息的最大长度不超过264位,输出为160位的消息摘要。输入以512位为一组进行处理。SHA-1不可逆,防碰撞,雪崩效应好。
数字签名可以通过哈希算法实现。数字签名的原理是将待传输的明文通过一个函数运算转换成消息摘要(不同的明文对应不同的消息摘要),将消息摘要加密后与明文一起传输给接收方。接收方解密并比较由接受的明文生成的新消息摘要和发送方发送的消息摘要。比较结果一致,说明明文没有被改动。如果不一致,说明明文被篡改了。
MAC(信息认证码)是一个哈希结果,其中部分输入信息是一个密码,只有知道这个密码的参与者才能再次计算和验证MAC码的合法性。MAC的生成如下图所示。输入信息密码哈希函数信息认证码SHA-1和MD5的比较因为都是从MD4派生出来的,所以SHA-1和MD5非常相似。相应地,它们的强度和其他特征是相似的,但也有一些差异:
强制供应的安全性:最显著和最重要的区别是SHA-1抽象比MD5抽象长32位。使用强力技术,生成任何消息以使其摘要等于给定消息的摘要的难度对于MD5是2个数量级,对于SHA-1是2个数量级。这样SHA-1对强行攻击的强度更大。
密码分析的安全性:由于MD5的设计,容易受到密码分析攻击,而SHA-1不容易受到这种攻击。
速度:在相同的硬件上,SHA-1运行速度比MD5慢。对称算法和非对称算法的比较
以上总结了两种加密方法的原理。一般来说,有以下几个区别:
第一,在管理上,公钥密码算法可以用更少的资源达到目的,两者在密钥的分配上相差一个指数级(一个是n,一个是n)。所以私钥密码算法不适合广域网使用,更重要的是不支持数字签名。
第二,在安全性方面:由于公钥密码算法是建立在未解决的数学问题上的,所以几乎不可能破解。对于私钥加密算法,理论上在AES中是无法破解的,但是从计算机发展的角度来看。公钥有更多的优点。
第三,在速度上,AES的软件实现速度已经达到了每秒几兆或者几十兆。是公钥的100倍,如果用硬件实现,比例将扩大到1000倍。
加密算法的选择上一章已经介绍了对称解密算法和非对称加密算法,很多人疑惑:实际使用中应该用哪一种?
要根据自己的使用特点来确定。由于非对称加密算法的速度比对称加密算法慢很多,所以当我们需要加密大量数据时,我们建议采用对称加密算法来提高加解密速度。
对称加密算法不能实现签名,所以签名只能是非对称算法。
由于对称加密算法的密钥管理是一个复杂的过程,密钥管理直接决定了其安全性,所以当数据量较小时,可以考虑使用非对称加密算法。
在实际操作过程中,我们通常使用非对称加密算法来管理对称算法的密钥,然后使用对称加密算法来加密数据。这样我们就融合了两类加密算法的优点,既实现了快速加密的优点,又实现了安全方便的密钥管理的优点。
如果选择加密算法,将使用多少位密钥?一般来说,密钥越长,运行速度越慢,要根据我们实际需要的安全级别来选择。一般来说,RSA建议使用1024位,ECC建议使用160位,AES采用128。
密码学的应用在现代,随着密码学商业应用的普及,公钥密码受到了前所未有的重视。除了传统的密码应用系统,PKI系统主要是基于公钥密码学,提供加密、签名、认证、密钥管理、分发等功能。
安全通信:安全通信是密码学的动力。当使用公钥-私钥密码系统进行安全通信时,信息接收者只有知道相应的密钥才能解密信息。
数字签名:数字签名技术可以取代传统的手写签名,并且从安全性的角度来看,数字签名具有很好的防伪功能。在政府机构、军事领域和商业领域有着广泛的应用环境。
秘密* * *共享:秘密* * *共享技术是指通过密码技术将一条秘密消息拆分成n条信息称为* * *共享因子,分发给n个成员。只有k(k≤n)个合法成员的* *个共享因子才能恢复秘密消息,他们或m(m≤k)个成员都不知道秘密消息。秘密共享技术可用于控制任何秘密信息、命令等。需要由多人来控制。
认证功能:在开放信道上传输敏感信息,通过签名技术验证消息的真实性和完整性,通过验证公钥证书验证通信主体的身份。
密钥管理:密钥是安全体系中较为脆弱和重要的一环,公钥密码系统是解决密钥管理的有力工具;公钥密码系统用于密钥协商和生成,安全通信双方不需要事先享有秘密信息;使用公钥密码系统进行密钥分发、保护、密钥保管、密钥恢复等。
除了上述一般功能外,基于公钥密码系统还可以设计和实现以下系统:安全电子商务系统、电子现金系统、电子选举系统、电子投标系统、电子彩票系统等。
公钥密码体制的出现是密码学从传统的政府和军事应用走向商业和民用应用的基础。同时,互联网和电子商务的发展为密码学的发展开辟了更加广阔的前景。
加密算法的未来随着计算方法的改进,计算机运行速度的加快,网络的发展,越来越多的算法被破解。
在2004年国际密码会议(Crypto'2004)上,中国山东大学的王小云教授做了一个关于解码MD5、HAVAL-128、MD4和RIPEMD的报告,震惊了在场的国际顶级密码学家,也意味着这些算法将从应用中被淘汰。随后,SHA-1也被宣布破解。
历史上有三次对DES有影响的攻击实验。1997年,利用当时各国7万台计算机,96天就破解了DES的密钥。1998年,电子前沿基金会(EFF)用25万美元制成的专用计算机,在56小时内破解了DES密钥。1999年,EFF用22小时15分钟完成了破解工作。因此。做出了突出贡献的DES已经不能满足我们日益增长的需求。
最近,一群研究人员成功地把一个512位的整数因式分解因子,宣告了RSA的破解。
我们说数据的安全是相对的,可以说在一定条件下,一定时间内是安全的。随着硬件和网络的发展,或者另一个王小云的出现,目前常用的加密算法可能会在短时间内被破解。那时,我们不得不使用更长的密钥或更先进的算法来保证数据的安全,因此加密算法仍然需要不断发展和改进,以提供更高的加密安全强度和运算速度。
看这两个算法,一个是从DES到3DES再到AES,一个是从RSA到ECC。其发展前景从以下几个方面考虑:密钥的简单性、低成本、管理的简单性、算法的复杂性、保密的安全性和计算的快速性。所以算法未来的发展也必须从这些角度出发,在实际操作中经常会将两种算法结合起来,未来会出现一种结合了两种算法优点的新算法。到时候,电子商务的实现会更快更安全。