信息加密技术及其安全性探讨_信息加密技术
1个回答
展开全部
0 前言 目前的互联网系统中,黑客常用的典型攻击方式有扫描、监听、密码分析、软件漏洞、恶意代码、拒绝服务,而常见的安全防御技术有信息加密、CA认证、存取控制、监控、审计和扫描(针对恶意代码)。其中密码分析与信息加密是攻击与防御的核心技术。提及信息安全,我们往往首先联想到密码技术。密码技术的重要性在网络安全领域是不可取代的。
1 密码技术及安全标准
密码技术是对传输或存储中的数据进行重新编码,以防止第三方窃取、篡改数据的一门技术。它结合了数学、通信学、计算机科学等多种学科于一体,通过数据加密、数字签名、身份认证等方式,在纷繁复杂的网络环境下对信息进行保护,保证其机密性、完整性和可用性。
1.1 加密算法的种类
数据加密算法种类繁多,究其发展史,经历了古典算法、对称密钥算法以及公开密钥算法三个阶段。古典算法中有替换加密、代码加密、变位加密等,该类算法简单易行,但已不能满足当下的安全性要求,逐渐淡出应用。
对称密钥加密算法又称为单密钥算法,该算法加密与解密使用同一个密钥,或者从其中一个密钥可以轻易推出另一个。目前著名的对称加密算法有美国数据加密标准DES、高级加密标准AES和欧洲数据加密标准IDEA等。对称密码从加密方式上又可以分为分组密码和序列密码两种。
公开密钥加密算法又可以称作非对称密钥算法。该算法中,加密密钥和解密密钥是不同的,加密密钥公开,解密密钥私下保存。在得到公钥的情况下,想要推导出私钥理论上是不可能的。该类算法的设计往往来自复杂的数学难题。代表性算法有基于大数分解的RSA,基于离散对数的DSA,基于椭圆曲线离散对数的ECC。
1.2 加密算法的安全判定标准
安全性是衡量一个加密算法优劣的首要因素。失去了安全保证,再完善的密码系统也没有意义。要保证安全性,一个加密算法应做到以下三点:在明文和加密密钥已知的前提下,可以轻易算出密文;密文和解密密钥已知的情况下,可轻易算出明文;解密密钥未知时,由密文推导出明文理论上是不可能的。
关于加密信息的安全性定义,Shannon提出了通信中的理论安全与实际安全两个概念。理论安全要求在解密密钥未知的情况下,无论得到多少数量的密文,由此推测出明文的可能性与直接猜测明文是一样的。Shannon证明要实现理论安全,必须让加密密钥的长度不小于明文,这在进行大规模数据加密时是难以实现的。实际安全是指密文已知而解密密钥未知的前提下,对于计算能力与可用资源有限的破解者,即使使用最佳的破译算法,也无法在他所需要的有效时间内破解出明文和密码。我们目前应用的加密标准,都是基于实际安全设计的。
2 几种代表性加密算法
我们在两类加密体系中,试举几种代表性的加密算法,通过对其特点的比较,解析其优点与安全漏洞所在,在此基础上提出一些解决方案与新的加密思路。
2.1 对称密钥加密
对称密钥加密算法中最具代表性的是DES算法,该算法的优势在于机制简单,加密解密迅速,算法公开,可以对大批量传输的数据进行加密操作;缺点是密钥较短(仅有56位),保密系数不高,且因算法公开,其安全保障主要取决于密钥的保密程度,因此必须有可靠的信道来传送密钥,在有大量用户的情况下密钥的分发和管理会变得异常复杂,且不能实现数字签名,因此不适合在开放的网络环境中单独使用。
二十多年来DES算法广泛应用于全球贸易、金融等民用领域,如智能卡(IC卡)与POS机之间的双向认证、信用卡持卡方PIN的加密传输等。如今该算法的许多缺陷慢慢变得不容忽视,针对它的解密方法也日渐有效化。针对该算法密钥短的缺陷,相关组织曾经提出80位密钥、双密钥(究其效果相当于双倍密钥长度)以及三重DES算法。DES在安全性上尽管较为脆弱,但由于芯片的大量生产目前仍在继续使用。长远而言,AES将会取代它,成为新一代的加密标准。
IDEA算法是在1990年公布的一种迭代密码分组算法,类似于三重DES,密钥长度为128位,若干年内在并非高度保密的领域仍可适用。由于它只使用逐位异或和模运算,因此具有使用软件实现和硬件实现一样迅速的优势。
2.2 公开密钥加密
我们知道,公钥加密算法的设计都是基于复杂难解的数学难题,其安全性取决于一种特殊函数:单向陷门函数。这是一种单向函数,在一个方向上容易计算,但逆向求值却异常困难。但如果它的陷门已知,则反向求值也会十分容易。在公钥体系中,这个陷门即是用来解密的私有密钥。符合以上条件且目前被公认为是安全有效的公钥加密算法有RSA、DSA以及ECC。
RSA是公开密钥体系中最具典型意义的算法,它的安全性依赖于大数因子分解的极度困难。RSA加密采用的公钥和私钥都是两个大素数的函数,大素数均要大于100个十进制位,得到密钥后应将两个素数丢弃。RSA也可用于数字签名,其公私钥的使用与加密刚好相反。RSA算法思路简洁,易于使用,安全性好,缺点在于产生密钥较为麻烦,受到大素数选取的限制,很难做到一次一密,且加密速度太慢,较对称密钥算法要慢上几个数量级。选取合适的大数是保障安全性的关键。但是目前还无法从理论上证明破译RSA的难度与大数分解等价,也无法确定大数分解是NPC问题。随着计算机计算能力的扩大以及大数分解方法的进步,对素数位数的要求会越来越高。RSA实验室认为个人应用要768比特位,公司应用要1024比特位以上才有安全保证。
DSA算法基于离散对数的数字签名标准。它仅仅对于数字签名有用,不能对数据进行加密运算。
ECC算法基于椭圆曲线离散对数运算,较之RSA、DSA安全强度更高,在解密和签名上的计算速度要快得多,且对存储空间和带宽的要求都较低,将会在IC卡与无线网络领域获得广泛应用。一般认为,ECC技术一旦被广泛掌握,ECC算法将会代替RSA,成为新一代通用的公钥加密算法。
在以上三种数学方法之外,多种数学理论被引入公钥加密算法的研究。如混沌理论,因其蝴蝶效应(即对初始状态的极端敏感性)、伪随机性、拓朴性,与加密系统有着天然的相似度与联系,非常适合应用于一次一密的公钥体系。然而,目前多数混沌密码算法发布不久就被破解,亟待找到更合适的应用思路和更优良的运算模型。
1 密码技术及安全标准
密码技术是对传输或存储中的数据进行重新编码,以防止第三方窃取、篡改数据的一门技术。它结合了数学、通信学、计算机科学等多种学科于一体,通过数据加密、数字签名、身份认证等方式,在纷繁复杂的网络环境下对信息进行保护,保证其机密性、完整性和可用性。
1.1 加密算法的种类
数据加密算法种类繁多,究其发展史,经历了古典算法、对称密钥算法以及公开密钥算法三个阶段。古典算法中有替换加密、代码加密、变位加密等,该类算法简单易行,但已不能满足当下的安全性要求,逐渐淡出应用。
对称密钥加密算法又称为单密钥算法,该算法加密与解密使用同一个密钥,或者从其中一个密钥可以轻易推出另一个。目前著名的对称加密算法有美国数据加密标准DES、高级加密标准AES和欧洲数据加密标准IDEA等。对称密码从加密方式上又可以分为分组密码和序列密码两种。
公开密钥加密算法又可以称作非对称密钥算法。该算法中,加密密钥和解密密钥是不同的,加密密钥公开,解密密钥私下保存。在得到公钥的情况下,想要推导出私钥理论上是不可能的。该类算法的设计往往来自复杂的数学难题。代表性算法有基于大数分解的RSA,基于离散对数的DSA,基于椭圆曲线离散对数的ECC。
1.2 加密算法的安全判定标准
安全性是衡量一个加密算法优劣的首要因素。失去了安全保证,再完善的密码系统也没有意义。要保证安全性,一个加密算法应做到以下三点:在明文和加密密钥已知的前提下,可以轻易算出密文;密文和解密密钥已知的情况下,可轻易算出明文;解密密钥未知时,由密文推导出明文理论上是不可能的。
关于加密信息的安全性定义,Shannon提出了通信中的理论安全与实际安全两个概念。理论安全要求在解密密钥未知的情况下,无论得到多少数量的密文,由此推测出明文的可能性与直接猜测明文是一样的。Shannon证明要实现理论安全,必须让加密密钥的长度不小于明文,这在进行大规模数据加密时是难以实现的。实际安全是指密文已知而解密密钥未知的前提下,对于计算能力与可用资源有限的破解者,即使使用最佳的破译算法,也无法在他所需要的有效时间内破解出明文和密码。我们目前应用的加密标准,都是基于实际安全设计的。
2 几种代表性加密算法
我们在两类加密体系中,试举几种代表性的加密算法,通过对其特点的比较,解析其优点与安全漏洞所在,在此基础上提出一些解决方案与新的加密思路。
2.1 对称密钥加密
对称密钥加密算法中最具代表性的是DES算法,该算法的优势在于机制简单,加密解密迅速,算法公开,可以对大批量传输的数据进行加密操作;缺点是密钥较短(仅有56位),保密系数不高,且因算法公开,其安全保障主要取决于密钥的保密程度,因此必须有可靠的信道来传送密钥,在有大量用户的情况下密钥的分发和管理会变得异常复杂,且不能实现数字签名,因此不适合在开放的网络环境中单独使用。
二十多年来DES算法广泛应用于全球贸易、金融等民用领域,如智能卡(IC卡)与POS机之间的双向认证、信用卡持卡方PIN的加密传输等。如今该算法的许多缺陷慢慢变得不容忽视,针对它的解密方法也日渐有效化。针对该算法密钥短的缺陷,相关组织曾经提出80位密钥、双密钥(究其效果相当于双倍密钥长度)以及三重DES算法。DES在安全性上尽管较为脆弱,但由于芯片的大量生产目前仍在继续使用。长远而言,AES将会取代它,成为新一代的加密标准。
IDEA算法是在1990年公布的一种迭代密码分组算法,类似于三重DES,密钥长度为128位,若干年内在并非高度保密的领域仍可适用。由于它只使用逐位异或和模运算,因此具有使用软件实现和硬件实现一样迅速的优势。
2.2 公开密钥加密
我们知道,公钥加密算法的设计都是基于复杂难解的数学难题,其安全性取决于一种特殊函数:单向陷门函数。这是一种单向函数,在一个方向上容易计算,但逆向求值却异常困难。但如果它的陷门已知,则反向求值也会十分容易。在公钥体系中,这个陷门即是用来解密的私有密钥。符合以上条件且目前被公认为是安全有效的公钥加密算法有RSA、DSA以及ECC。
RSA是公开密钥体系中最具典型意义的算法,它的安全性依赖于大数因子分解的极度困难。RSA加密采用的公钥和私钥都是两个大素数的函数,大素数均要大于100个十进制位,得到密钥后应将两个素数丢弃。RSA也可用于数字签名,其公私钥的使用与加密刚好相反。RSA算法思路简洁,易于使用,安全性好,缺点在于产生密钥较为麻烦,受到大素数选取的限制,很难做到一次一密,且加密速度太慢,较对称密钥算法要慢上几个数量级。选取合适的大数是保障安全性的关键。但是目前还无法从理论上证明破译RSA的难度与大数分解等价,也无法确定大数分解是NPC问题。随着计算机计算能力的扩大以及大数分解方法的进步,对素数位数的要求会越来越高。RSA实验室认为个人应用要768比特位,公司应用要1024比特位以上才有安全保证。
DSA算法基于离散对数的数字签名标准。它仅仅对于数字签名有用,不能对数据进行加密运算。
ECC算法基于椭圆曲线离散对数运算,较之RSA、DSA安全强度更高,在解密和签名上的计算速度要快得多,且对存储空间和带宽的要求都较低,将会在IC卡与无线网络领域获得广泛应用。一般认为,ECC技术一旦被广泛掌握,ECC算法将会代替RSA,成为新一代通用的公钥加密算法。
在以上三种数学方法之外,多种数学理论被引入公钥加密算法的研究。如混沌理论,因其蝴蝶效应(即对初始状态的极端敏感性)、伪随机性、拓朴性,与加密系统有着天然的相似度与联系,非常适合应用于一次一密的公钥体系。然而,目前多数混沌密码算法发布不久就被破解,亟待找到更合适的应用思路和更优良的运算模型。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询