讨论:密码学
密码学属于维基百科技术主题的基础条目扩展。请勇于更新页面以及改进条目。 本条目页依照页面评级标准评为初级。 本条目页属于下列维基专题范畴: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Untitled
编辑这条条目的内容出自瑞星软件的网站,因此版权应该属于瑞星,似乎有违反GNU自由文档协议之嫌.所以先放到这里做参考.而且本文也不适合做百科全书的条目.希望大家能参考以下内容,但尽量使用原创的文章.详悉关于版权的问题还是参考Wikipedia:版权信息--Formulax 2003年1月17日 07:49 (UTC)
本文出自: http://211.101.232.5/safety/safetyschool/safetylesson/1219mmx.htm
到目前为止,我们已经对网络的基础知识有了相当的了解,并且连TCP/IP协议都知道了不少,好现在我要问你一个非常简单的问题——放心,不是测验,这个问题就是:你有免费电子邮件吗?——99.99%的可能性是有,是吧?(什么?你还没有?搞不懂你,快去申请一个!!!)接下来告诉你一个比较那个的事实,嘿嘿,你知不知道,你的邮件在网上是以明文的形式传输的?呵呵,不知道了吧——OK,恩哼,大家做好了,现在开始讲课!!
上面我们已经知道了加密的必要性,现在我们以一个实例来看看加密的过程。假设你想通过Internet给你表妹送条秘密消息,于是你打算对其进行加密。你通过一种复杂的方式将其变为不规则码的加密信息,除了你的表妹没有人能把它解释成可以读懂的文件,而她之所以能把它读懂,也只是因为你给了她一个解密方法,她将用它把加密的消息变得规则,恢复它的真实面貌。常规的单密钥加密方法是:在你使用它加密之前,把加密密码告诉她。例如,一个简单的单密钥加密方法是把原信息中的字母按字母表的顺序依次移动3位。这样,单同DOG变为GRJ,下面的表显示了一行被用单密钥加密方案加密的文档。
H a p p y n e w y e a r K D S S A C Q H Z C A H D U
你表妹收到你的消息后,将字母按字母表的顺序向后移动3位即可解密——解出来原来是这么一句话,立即活活气死。默哀三分钟。从中我们提炼出加密解密的过程如下图:
好了,这基本上就是加密解密的过程,当然后面我们还会讲到对不同的密钥体系它的过程又有所复杂,所以我们现在就讲密钥体系。
密钥体系 如果以密钥为标准,可将密码系统分为单钥密码(又称为对称密码或私钥密码)体系和双钥密码(又称为非对称密码或公钥密码)体系。哦,对了,所谓密钥差不多可以理解成密码。
在单钥体制下,加密密钥和解密密钥是一样的,或实质上是等同的,这种情况下,密钥就经过安全的密钥信道由发方传给收方。单钥密码的特点是无论加密还是解密都使用同一个密钥,因此,此密码体制的安全性就是密钥的安全。如果密钥泄露,则此密码系统便被攻破。最有影响的单钥密码是1977年美国国家标准局颁布的DES算法。单钥密码的优点是:安全性高。加解密速度快。缺点是:1)随着网络规模的扩大,密钥的管理成为一个难点;2)无法解决消息确认问题;3)缺乏自动检测密钥泄露的能力。
而在双钥体制下,加密密钥与解密密钥是不同的,此时根本就不需要安全信道来传送密钥,而只需利用本地密钥发生器产生解密密钥即可。双钥密码是:1976年W.Diffie和M.E.Heilinan提出的一种新型密码体制。由于双钥密码体制的加密和解密不同,且能公开加密密钥,而仅需保密解密密钥,所以双钥密码不存在密钥管理问题。双钥密码还有一个优点是可以拥有数字签名等新功能。最有名的双钥密码体系是:1977年由Rivest,Shamir和Ad1eman人提出的RSA密码体制。双钥密码的缺点是:双钥密码算法一般比较复杂,加解密速度慢。
因此,网络中的加密普遍采用双钥和单钥密码相结合的混合加密体制,即加解密时采用单钥密码,密钥传送则采用双钥密码。这样既解决了密钥管理的困难,又解决了加解密速度的问题。目前看来,这种方法好象也只能这样了。
密码算法 我们前面已经提到了关于密码算法的问题,现在我们就简单的来看一看常用的几种密码算法。其中最著名的(好象也是最悠久的?)就是DES算法了。DES是一种单钥密码算法,它工作起来简直就是典型的分组方式,它的基本思想是将二进制序列的明文分成每64位一组,用长为64位的密钥对这些明文进行16轮代换和置换加密。最后形成密文。它的巧妙之处就在于,除了密钥输入顺序之外,其加密和机密的步骤完全相同,从而在制作DES芯片时很容易达到标准化和通用化,非常适合现代通信的需要。但不幸的是,由于它时间久远,从而成为古往今来的黑客们乐此不疲的攻击对象,目前黑客已经可以在20小时内成功的破掉它(只要有一个好的工具)。所以咱就不好意思再说它了。而在公钥密码系统中,最常用的就是RSA算法了,RSA算法简单的说来是这样的:先找出两个非常大的质数P和Q,算出N=(P*Q),找到一个小于N的E,使E和(P-1)*(Q-1)互质。算出数D,使D*E=1 MOD (P-1)*(Q-1)。公用密钥为(E,N),私钥为(D,N),用户可以销毁P和Q。这种算法的保密性非常好。但是由于RSA涉及到高次幂运算,所以用它实现速度比较慢。 OK,好象讲的太深了?好把,那今天我们就讲到这里拉,明天还有更深的在后面,好好消化消化哦!
外部链接已修改
编辑各位维基人:
我刚刚修改了密码学中的1个外部链接,请大家仔细检查我的编辑。如果您有疑问,或者需要让机器人忽略某个链接甚至整个页面,请访问这个简单的FAQ获取更多信息。我进行了以下修改:
- 向 http://www.murky.org/cryptography/index.shtml 中加入存档链接 https://web.archive.org/web/20040609180803/http://www.murky.org/cryptography/index.shtml
有关机器人修正错误的详情请参阅FAQ。
外部链接已修改
编辑各位维基人:
我刚刚修改了密码学中的4个外部链接,请大家仔细检查我的编辑。如果您有疑问,或者需要让机器人忽略某个链接甚至整个页面,请访问这个简单的FAQ获取更多信息。我进行了以下修改:
- 向 http://www.tcs.hut.fi/~helger/crypto/ 中加入存档链接 https://web.archive.org/web/20040210212414/http://www.tcs.hut.fi/~helger/crypto/
- 向 http://www.rsasecurity.com/rsalabs/faq/index.html 中加入存档链接 https://web.archive.org/web/20040401123210/http://www.rsasecurity.com/rsalabs/faq/index.html
- 向 http://www.mindspring.com/~schlafly/crypto/faq.htm 中加入存档链接 https://web.archive.org/web/20040423165953/http://www.mindspring.com/~schlafly/crypto/faq.htm
- 向 http://home.ecn.ab.ca/~jsavard/crypto/jscrypt.htm 中加入存档链接 https://web.archive.org/web/20040402055610/http://home.ecn.ab.ca/~jsavard/crypto/jscrypt.htm
有关机器人修正错误的详情请参阅FAQ。