《密码系统的两个基本要素是加密算法和密钥管理》由会员分享,可在线阅读,更多相关《密码系统的两个基本要素是加密算法和密钥管理(8页珍藏版)》请在金锄头文库上搜索。
1、密码系统的两个基本要素是加密算法和密钥管理。加密算法是一些公式和法则,它规定了明文和密文之间的变换方法。由于密码系统的反复使用,仅靠加密算法已难以保证信息的安全了。事实上,加密信息的安全可靠依赖于密钥系统,密钥是控制加密算法和解密算法的关键信息,它的产生、传输、存储等工作是十分重要的。随着信息化和数字化社会的发展,人们对信息安全和保密的重要性认识不断提高,而在信息安全中起着举足轻重作用的密码学也就成为信息安全课程中不可或缺的重要部分,密码学早在公元前400 多年就已经产生,正如破译者一书中所说的人类使用密码的历史几乎与使用文字的时间一样长。密码学( Cryptograph)一词来源于古希腊语
2、Kruptos(hidden)+ graphein(to write)准确的现代术语是密码编制学简称 编密学,与之相对的专门研究如何破解密码的学问称之为密码分析学。密码学则包括密码编制学和密码分析学这两个相互独立又相互依存的分支。从其发展来看,可分为古典密码- 以字符为基本加密单元的密码,以及现代密码-以信息块为基本加密单元的密码。第一次世界大战前,重要的密码学进展很少出现在公开文献中,但该领域却和其它专业学科一样向前发展.直到 1918 年,二十世纪最有影响的密码分析文章之 William F. Friedman 的专题论文重合指数及其在密码学中的应用作为私立的河岸(Riverbank)实验
3、室的一份研究报告问世。1949 年到 1967年,密码学文献近乎空白。在 1967 年,一部与众不同的著作-David Kahn 的 破译者出现,它没有任何新的技术思想,但却对以往的密码学历史作了相当完整的记述,包括提及政府仍然认为是秘密的一些事情。 破译者的意义不仅在于它涉及到的相当广泛的领域,而且在于它使成千上万原本不知道密码学的人了解密码学。新的密码学文章慢慢地开始源源不断地被编写出来了。到了第二次世界大战时多表密码编制达到了顶点也达到了终点。英国获知了谜型机的原理,启用了数理逻辑天才、现代计算机设计思想的创始人,年仅 26 岁的 Alan Turing。1939 年 8 月,在 Tur
4、ing 领导下完成了一部针对谜型机的密码破译机,每秒钟可处理 2000 个字符,人们给它起了个绰号叫炸弹(Bomb)。半年后,它几乎可以破译截获德国的所有情报。后来又研制出一种每秒钟可处理 5000 个字符的巨人(Colossus)型密码破译机,1943 年投入使用。至此,同盟国几乎掌握了希特勒德国的绝大多数军事秘密,盟军掌握了德军的许多机密,而德国军方却对此一无所知;太平洋战争中美军破译了日本海军的密码机,读懂了日本舰队司令官山本五十六发给各指挥官的命令,在中途岛彻底击溃了日本海军,导致了太平洋战争的决定性转折,而且不久还击毙了山本五十六。相反轴心国中,只有德国只是在二战的初期在密码破译方面
5、取得过辉煌的战绩,后来就不行了。密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。 密码是通信双方按约定的法则进行信息特殊变换的一种重要保密手段。依照这些法则,变明文为密文,称为加密变换;变密文为明文,称为脱密变换。密码在早期仅对文字或数码进行加、脱密变换,随着通信技术的发展,对语音、图像、数据等都可实施加、脱密变换。 密码学是在编码与破译的斗争实践中逐步发展起来的,并随着先进科学技术的应用,已成为一门综合性的尖端技术科学。它与语言学、数学、电子学、声学、信息论、计算机科学等有着
6、广泛而密切的联系。它的现实研究成果,特别是各国政府现用的密码编制及破译手段都具有高度的机密性。 密码学包括密码编码学和密码分析学。密码体制设计是密码编码学的主要内容,密码体制的破译是密码分析学的主要内容,密码编码技术和密码分析技术是相互依相互支持、密不可分的两个方面。密码体制有对称密钥密码体制和非对称密钥密码体制。对称密钥密码体制要求加密解密双方拥有相同的密钥。而非对称密钥密码体制是加密解密双方拥有不相同的密钥,在不知道陷门信息的情况下,加密密钥和解密密钥是不能相互算出的。 对称密钥密码体制中,加密运算与解密运算使用同样的密钥。这种体制所使用的加密算法比较简单,而且高效快速、密钥简短、破译困难
7、,但是存在着密钥传送和保管的问题。例如:甲方与乙方通讯,用同一个密钥加密与解密。首先,将密钥分发出去是一个难题,在不安全的网络上分发密钥显然是不合适的;另外,如果甲方和乙方之间任何一人将密钥泄露,那么大家都要重新启用新的密钥。通常,使用的加密算法 比较简便高效,密钥简短,破译极其困难。但是,在公开的计算机网络上安全地传送和保管密钥是一个严峻的问题。1976年,Diffie 和 Hellman 为解决密钥管理问题 ,在他们的奠基性的工作密码学的新方向一文中 ,提出一种密钥交换协议 ,允许在不安全的媒体上通讯双方 交换信息,安全地达成一致的密钥,它是基于离散指数加密算法的新方案:交易双方仍然需要协
8、商密钥,但离散指数算法的妙处在于:双方可以公开提交某些用于运算的数据,而密钥却在各自计算机上产生,并不在网上传递。在此新思想的基础上,很快出现了不对称密钥密码体 制, 即公开密钥密码体制,其中加密密钥不同于解密密钥,加密密钥公之于众, 谁都可以用,解密密钥只有解密人自己知道,分别称为 公开密钥 和秘密密钥, 由于公开密钥算法不需要联机密钥服务器,密钥分配协议简单,所以极大地简化了密钥管理。除加密功能外,公钥系统还可以提供数字签名。目前,公开密钥加密算法主要有 RSA、Fertezza、EIGama 等。我们说区分古典密码和现代密码的标志,也就是从 76 年开始,迪非,赫尔曼发表了一篇叫做密码学
9、的新方向的文章,这篇文章是划时代的;同时 1977 年美国的数据加密标准(DES )公布,这两件事情导致密码学空前研究。以前都认为密码是政府、军事、外交、安全等部门专用,从这时候起,人们看到密码已由公用到民用研究,这种转变也导致了密码学的空前发展。迄今为止的所有公钥密码体系中,RSA 系统是最著名、使用最广泛的一种。RSA 公开密钥密码系统是由 R.Rivest、A.Shamir 和 L.Adleman 三位教授于 1977 年提出的,RSA 的取名就是来自于这三位发明者姓氏的第一个字母。RSA 算法研制的最初目标是解决利用公开信道传输分发 DES 算法的秘密密钥的难题。而实际结果不但很好地解
10、决了这个难题,还可利用 RSA 来完成对电文的数字签名,以防止对电文的否认与抵赖,同时还可以利用数字签名较容易地发现攻击者对电文的非法篡改,从而保护数据信息的完整性。 在网上看到这样一个例子,有一个人从E-mail 信箱到用户 Administrator,统一都使用了一个 8 位密码。他想:8 位密码,怎么可能说破就破,固若金汤。所以从来不改。用了几年,没有任何问题,洋洋自得,自以为安全性一流。恰恰在他最得意的时候,该抽他嘴巴的人就出现了。他的一个同事竟然用最低级也是最有效的穷举法吧他的 8 位密码给破了。还好都比较熟,否则公司数据丢失,他就要卷着被子回家了。事后他问同事,怎么破解的他的密码,
11、答曰:只因为每次看他敲密码时手的动作完全相同,于是便知道他的密码都是一样的,而且从不改变。这件事情被他引以为戒,以后密码分开设置,采用 10 位密码,并且半年一更换。我从中得出的教训是,密码安全要放在网络安全的第一位。因为密码就是钥匙,如果别人有了你家的钥匙,就可以堂而皇之的进你家偷东西,并且左邻右舍不会怀疑什么。我的建议,对于重要用户,密码要求最少要 8 位,并且应该有英文字母大小写以及数字和其他符号。千万不要嫌麻烦,密码被破后更麻烦。 密码设的越难以穷举,并不是带来更加良好的安全性。相反带来的是更加难以记忆,甚至在最初更改的几天因为输人缓慢而被别人记住,或者自己忘记。这都是非常糟糕的,但是
12、密码难于穷举是保证安全性的前提。矛盾着的双方时可以互相转化的,所以如何使系统密码既难以穷举又容易记忆呢,这就是门科学了。当然,如果能做到以下几点,密码的安全还是有保障的。对于一般情况下,8 位密码是足够了,如一般的网络社区的密码、E-mail 的密码。但是对于系统管理的密码,尤其是超级用户的密码最好要在 10 位以上,12 位最佳。首先,8 位密码居多,一般穷举工作的起始字典都使用 6 位字典或 8 位字典, 10 位或 12 位的字典不予考虑。其次,一个全码 8 位字典需要占去 4G 左右空间,10 位或 12 位的全码字典更是天文数字,要是用一般台式机破解可能要到下个千年了,运用中型机破解
13、还有有点希望的。再次,哪怕是一个 12 个字母的英文单词,也足以让黑客望而却步。 2、使用不规则密码。 对于有规律的密码,如:alb2c3d4e5f6,尽管是12 位的,但是也是非常好破解的。因为现在这种密码很流行,字典更是多的满天飞,使用这种密码等于自杀。 3、不要选取显而易见的信息作为口令。 单词、生日、纪念日、名字都不要作为密码的内容。以上就是密码设置的基本注意事项。密码设置好了,并不代表万事大吉,密码的正确使用和保存才是关键。要熟练输入密码,保证密码输人的速度要快。输人的很慢等于给别人看,还是熟练点好。不要将密码写下来。密码应当记在脑子里,千万别写出来。不要将密码存人计算机的文件中。不
14、要让别人知道。不要在不同系统上使用同一密码。在输人密码时最好保证没有任何人和监视系统的窥视。定期改变密码,最少半年一次。这点尤为重要,是密码安全问题的关键。永远不要对自己的密码过于自信,也许无意中就泄漏了密码。定期改变密码,会使密码被破解的可能性降到很低的程度。4、多方密钥协商问题 当前已有的密钥协商协议包括双方密钥协商协议、双方非交互式的静态密钥协商协议、双方一轮密钥协商协议、双方可验证身份的密钥协商协议以及三方相对应类型的协议。如何设计多方密钥协商协议?存在多元线性函数(双线性对的推广)吗?如果存在,我们能够构造基于多元线性函数的一轮多方密钥协商协议。而且,这种函数如果存在的话,一定会有更
15、多的密码学应用。然而,直到现在,在密码学中,这个问题还远远没有得到解决。从密码学发展历程来看,可分为古典密码(以字符为基本加密单元的密码)以及现代密码( 以信息块为基本加密单元的密码) 两类。而古典密码有着悠久的历史,从古代一直到计算机出现以前,古典密码学主要有两大基本方法: 代替密码: 就是将明文的字符替换为密文中的另一种的字符,接收者只要对密文做反向替换就可以恢复出明文。 置换密码( 又称易位密码):明文的字母保持相同,但顺序被打乱了。 现在我们汇报我们研究的几种简单的古典密码学 1.滚桶密码 在古代为了确保他们的通信的机密,先是有意识的使用一些简单的方法对信息来加密。如公元六年前的古希腊
16、人通过使用一根叫scytale 的棍子,将信息进行加密。送信人先将一张羊皮条绕棍子螺旋形卷起来( 如图) ,然后把要写的信息按某种顺序写在上面,接着打开羊皮条卷,通过其他渠道将信送给收信人。如果不知道棍子的宽度( 这里作为密匙 )就是不容易解密里面的内容的,但是收信人可以根据事先和写信人的约定,用同样的 scytale 的棍子将书信解密。 2. 掩格密码 16 世纪米兰的物理学和数学家 Cardano 发明的掩格密码,可以事先设计好方格的开孔,将所要传递的信息和一些其他无关的符号组合成无效的信息,使截获者难以分析出有效信息。 3. 棋盘密码 我们可以建立一张表,使每一个字符对应一数 , 是该字符所在行标号, 是列标号。这样将明文变成形式为一串数字密文。 例如: 明文 battle on Sunday 密文 121144443115034330