加密解密算法

1加密建立在对信息进行数学编码解码的基础上。加密类型分为两种,对称加密非对称加

2对称加密双方采用共同密钥,(当然这个密钥是需要对外保密的)

3飞对称加密:加密方式存在两个密钥,密钥-- 一种是公共密钥(正如其名,这是一个可以公开的密钥值),一种是私人密钥(对外保密)

您发送信息给我们时,使用公共密钥加密信息。 一旦我们收到您的加密信息,我们则使用私人密钥破译信息密码(被我们的公钥加密的信息,只有我们的唯一的私钥可以解密,这样,就在技术上保证了这封信只有我们才能解读——因为别人没有我们的私钥)。 使用私人密钥加密的信息只能使用公共密钥解密(这一功能应用与数字签名领域,我的私钥加密的数据,只有我的公钥可以解读,具体内容参考数字签名的信息)反之亦然,以确保您的信息安全


3.1最早、最著名的保密密钥或对称密钥加密算法DES(Data Encryption Standard)是由IBM公司在70年代发展起来的,并经政府的加密标准筛选后,于1976年11月被美国政府采用,DES随后被美国国家标准局和美国国家标准协会(American National Standard Institute,ANSI)承认。

3.2另一种非常著名的加密算法就是RSA了,RSA(Rivest-Shamir-Adleman)算法是基于大数不可能被质因数分解假设的公钥体系。简单地说就是找两个很大的质数。一个对外公开的为"公钥"(Public key) ,另一个不告诉任何人,称为"私钥"(Private key)。这两个密钥是互补的,也就是说用公钥加密的密文可以用私钥解密,反过来也一样。

假设用户甲要寄信给用户乙,他们互相知道对方的 公钥。甲就用乙的 公钥加密邮件寄出,乙收到后就可以用自己的 私钥 解密出甲的原文。由于别人不知道乙的 私钥,所以即使是甲本人也无法 解密那封信,这就解决了信件保密的问题。另一方面,由于每个人都知道乙的 公钥,他们都可以给乙发信,那么乙怎么确信是不是甲的来信呢?那就要用到基于加密技术的数字签名了。
甲用自己的 私钥将签名内容加密,附加在邮件后,再用乙的 公钥将整个邮件加密(注意这里的次序,如果先加密再签名的话,别人可以将签名去掉后签上自己的签名,从而篡改了签名)。这样这份密文被乙收到以后,乙用自己的 私钥将邮件 解密,得到甲的原文和 数字签名,然后用甲的 公钥解密签名,这样一来就可以确保两方面的安全了。
4软件加密:

软加密

密码表加密;软件子校验方式;序列号加密;许可证管理方式;钥匙盘方式; 光盘加密
硬加密
加密卡;单片机加密锁; 智能卡加密锁
软件加密和 硬件加密都是实现一样的 加密算法,理论上强度相同,而随着 多核心处理器的发展,软件加密已经能赶上硬件加密的速度。
网络加密
不同于使于本机软件或硬件的加密方法,网络加密由基于网络的其它计算机或设备来完成加解密或验证工作,而 网络设备和客户端之前通过安全通道进行通讯。
5信息加密技术:
信息加密技术是利用数学或物理手段,对电子信息在传输过程中和 存储 体内进行保护,以防止泄漏的技术。
目前世界上最流行的几种加密体制和加密算法有:
RSA算法和CCEP算法等。
为防止破密,加密软件还常采用硬件加密和加密软盘
一些软件商品常带有一种小的硬卡,这就是硬件加密措施。
软盘上用激光穿孔,使软件的存储区有不为人所知的局部存坏,就可以防止非法复制。这样的加密软盘可以为不掌握加密技术的人员使用,以保护软件。

6 加密的定义:加密就是通过密码算术对数据进行转化,使之成为没有正确密钥任何人都无法读懂的报文。而这些以无法读懂的形式出现的数据一般被称为密文。为了读懂报文,密文必须重新转变为它的最初形式--明文。而含有用来以数学方式转换报文的双重密码就是密钥。在这种情况下即使一则信息被截获并阅读,这则信息也是毫无利用价值的。而实现这种转化的算法标准,据不完全统计,到现在为止已经有近200多种。
7 加密的分类一:在这里,主要介绍几种重要的标准。按照国际上通行的惯例,将这近200种方法按照双方收发的密钥是否相同的标准划分为两大类:一种是常规算法(也叫私钥加密算法对称加密算法),其特征是收信方和发信方使用相同的密钥,即加密密钥和解密密钥是相同或等价的。比较著名的常规密码算法有:美国的DES及其各种变形,比如3DES、GDES、New DES和DES的前身Lucifer; 欧洲的IDEA;日本的FEAL N、LOKI?91、Skipjack、RC4、RC5以及以代换密码和转轮密码为代表的古典密码等。在众多的常规密码中影响最大的是DES密码,而最近美国NIST(国家标准与技术研究所)推出的AES将有取代DES的趋势,后文将作出详细的分析。常规密码的优点是有很强的保密强度,且经受住时间的检验和攻击,但其密钥必须通过安全的途径传送。因此,其密钥管理成为系统安全的重要因素。
8机密的分类二:另外一种是公钥加密算法(也叫非对称加密算法)。其特征是收信方和发信方使用的密钥互不相同,而且几乎不可能从加密密钥推导解密密钥。比较著名的公钥密码算法有:RSA、背包密码、McEliece密码、Diffe Hellman、Rabin、Ong Fiat Shamir、零知识证明的算法、椭圆曲线、EIGamal算法等等⑷。最有影响的公钥密码算法是RSA,它能抵抗到目前为止已知的所有密码攻击而最近势头正劲的ECC算法正有取代RSA的趋势公钥密码的优点是可以适应网络的开放性要求,且密钥管理问题也较为简单,尤其可方便的实现数字签名和验证。但其算法复杂,加密数据的速率较低。尽管如此,随着现代电子技术和密码技术的发展,公钥密码算法将是一种很有前途的网络安全加密体制。这两种算法各有其短处和长处,在下面将作出详细的分析。
7.1机密算法一:

私钥加密算法

私钥 加密算法中,信息的接受者和发送者都使用相同的 密钥,所以双方的密钥都处于保密的状态,因为私钥的保密性必须基于密钥的保密性,而非算法上。这在 硬件上增加了 私钥 加密算法安全性。但同时我们也看到这也增加了一个挑战:收发双方都必须为自己的 密钥负责,这种情况在两者在地理上分离显得尤为重要。 私钥 算法还面临这一个更大的困难,那就是对 私钥的管理和分发十分的困难和复杂,而且所需的费用十分的庞大。比如说,一个n个用户的网络就需要派发n(n-1)/2个 私钥,特别是对于一些大型的并且广域的网络来说,其管理是一个十分困难的过程,正因为这些因素从而决定了私钥 算法的使用范围。而且,私钥 加密算法不支持 数字签名,这对远距离的传输来说也是一个障碍。另一个影响 私钥的保密性的因素是 算法的复杂性。现今为止,国际上比较通行的是DES、3DES以及最近推广的AES。
数据加密标准(Data Encryption Standard)是IBM公司1977年为 美国政府研制的一种 算法。DES是以56 位 密钥为基础的密码块加密技术。它的加密过程一般如下:
① 一次性把64位明文块打乱置换。
② 把64位明文块拆成两个32位块;
③ 用机密DES 密钥把每个32位块打乱位置16次;
④ 使用初始置换的逆置换。
但在实际应用中,DES的保密性受到了很大的挑战,1999年1月,EFF和分散网络用不到一天的时间,破译了56位的DES加密信息。DES的统治地位受到了严重的影响,为此, 美国推出DES的改进版本-- 三重加密(triple Data Encryption Standard)即在使用过程中,收发双方都用三把 密钥进行加解密,无疑这种3*56式的加密方法大大提升了密码的 安全性,按现在的计算机的运算速度,这种破解几乎是不可能的。但是我们在为数据提供强有力的安全保护的同时,也要化更多的时间来对信息进行三次加密和对每个密层进行解密。同时在这种前提下,使用这种 密钥的双发都必须拥有3个密钥,如果丢失了其中任何一把,其余两把都成了无用的密钥。这样 私钥的数量一下又提升了3倍,这显然不是我们想看到的。于是 美国国家标准与技术研究所推出了一个新的保密措施来保护金融交易。 高级加密标准(Advanced Encryption Standard) 美国国家技术标准委员会(NIST)在2000年10月选定了 比利时的研究成果"Rijndael"作为AES的基础。"Rijndael"是经过三年漫长的过程,最终从进入候选的五种方案中挑选出来的。
AES内部有更简洁精确的数学 算法,而加密数据只需一次通过。AES被设计成高速,坚固的 安全性能,而且能够支持各种小型设备。AES与3DES相比,不仅是 安全性能有重大差别,使用性能和资源有效利用上也有很大差别。虽然到现在为止,我还不了解AES的具体 算法但是从下表可以看出其与3DES的巨大优越性。
还有一些其他的一些算法,如 美国国家安全局使用的飞鱼(Skipjack)算法,不过它的算法细节始终都是保密的,所以外人都无从得知其细节类容;一些私人组织开发的取代DES的方案:RC2、RC4、RC5等。
8.1加密算法二:

公钥加密算法

面对在执行过程中如何使用和分享 密钥及保持其机密性等问题,1975年Whitefield Diffe和Marti Hellman提出了公开的密钥 密码技术的概念,被称为 Diffie-Hellman技术。从此 公钥加密 算法便产生了。
由于采取了公共密钥密钥的管理和分发就变得简单多了, 对于一个n个用户的网络来说,只需要2n个密钥便可达到密度。 同时使得 公钥加密 法的保密性全部集中在及其复杂的数学问题上,它的 安全性 因而也得到了保证。但是在实际运用中,公共密钥 加密算法 并没有完全的取代 私钥 加密算法。其重要的原因是它的实现速度远远赶不上 私钥 加密算法 。又因为它的 安全性 ,所以常常用来加密一些重要的文件。自 公钥加密 问世以来,学者们提出了许多种公钥加密方法,它们的 安全性 都是基于复杂的数学难题。根据所基于的数学难题来分类,有以下三类系统目前被认为是安全和有效的:大整数因子分解系统(代表性的有RSA)、椭圆曲线离散对数系统(ECC)和离散对数系统 (代表性的有DSA),下面就作出较为详细的叙述。
RSA 算法是由罗纳多·瑞 维斯特(Rivet)、艾迪·夏弥尔(Shamir)和里奥纳多·艾德拉曼(Adelman)联合推出的,RAS算法由此而得名。它的 安全性是基于大整数素因子分解的困难性,而大整数因子分解问题是数学上的著名难题,至今没有有效的方法予以解决,因此可以确保RSA 算法的安全性。RSA系统是 公钥系统的最具有典型意义的方法,大多数使用公钥密码进行加密和 数字签名的产品和标准使用的都是RSA 算法。它得具体 算法如下:
① 找两个非常大的质数,越大越安全。把这两个质数叫做P和Q。
② 找一个能满足下列条件得数字E:
A. 是一个奇数。
B. 小于P×Q。
C. 与(P-1)×(Q-1)互质,只是指E和该方程的计算结果没有相同的质数因子。
③ 计算出数值D,满足下面性质:((D×E)-1)能被(P-1)×(Q-1)整除。
公开密钥对是(P×Q,E)。
私人 密钥是D。
公开密钥是E。
解密函数是:
假设T是明文,C是密文。
加密函数用 公开密钥E和模P×Q;
加密信息=(TE)模P×Q。
解密函数用私人 密钥D和模P×Q;
解密信息=(CD)模P×Q。
椭圆曲线加密技术(ECC)是建立在单向函数(椭圆曲线离散对数)得基础上,由于它比RAS使用得离散对数要复杂得多。而且该单向函数比RSA得要难, 所以与RSA相比,它有如下几个优点:
安全性能更高 加密算法的安全性能一般通过该算法的抗攻击强度来反映。ECC和其他几种 公钥系统相比,其抗攻击性具有绝对的优势。如160位 ECC与1024位 RSA有相同的安全强度。而210位 ECC则与2048bit RSA具有相同的安全强度。
计算量小,处理速度快 虽然在RSA中可以通过选取较小的 公钥(可以小到3)的方法提高公钥处理速度,即提高加密和签名验证的速度,使其在加密和签名验证速度上与ECC有可比性,但在 私钥的处理速度上(解密和签名),ECC远比RSA、DSA快得多。因此ECC总的速度比RSA、DSA要快得多。
存储空间占用小 ECC的密钥尺寸和 系统参数与RSA、DSA相比要小得多,意味着它所占的存贮空间要小得多。这对于 加密算法在IC卡上的应用具有特别重要的意义。
带宽要求低 当对长消息进行加解密时,三类 密码系统有相同的带宽要求,但应用于短消息时ECC带宽要求却低得多。而 公钥加密系统多用于短消息,例如用于 数字签名和用于对对称系统的会话 密钥传递。 带宽要求低使ECC在 无线网络领域具有广泛的应用前景。
ECC的这些特点使它必将取代RSA,成为通用的公钥 加密算法。比如 SET协议的制定者已把它作为下一代SET协议中缺省的 公钥密码算法。
目前世界上最流行的几种加密体制和 加密算法 有: RSA算法 和CCEP算法






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值