主题:【原创】也说一下关于密码的问题 -- yhz
先说明一下,关于通信学原理中的比较高深的部分,很多年前我已经还给我的老师了。但是对于一些基础的理论,应该还是有点把握的。如果那位发现我说得不对,请多多包含,我尽快更正。
“明码”这个术语仅仅用于通信领域,指的是信道传输编码是直接编码或者公开编码的(例如说海明码或者反三码之类的)。和明码通信对应的,是加密通信。
而加密通信的方式有很多种,例如说有信道加密,就是利用特殊的加密编码对信道的所有通信进行加密。这种加密方式,也就是完全抛弃和现有的通信设备的兼容性。这样的话,通信的双方都需要特殊的通信设备,起码是特殊的解码设备。不过在互联网大潮中,除了军方或者少数对安全性要求极高的领域,已经很少有这种做法了。
相对应的,还有内容加密,例如说只把需要加密的关键信息加密,然后把密文通过公开的信道传递出去。
密码学研究的,狭义而言,密码学关心的是如何找到一个单向函数,使得我们可以很方便的从明文构造出密文,但是在不知道密钥的情况下,基本上不可能从密文得到明文。当然,目前而言,无法从理论上证明这个单向函数是存在的。不过这并不妨碍我们找到一些特性很接近单向函数的函数,这些函数就是我们通常所说的密码算法了。
当然,随着密码学和技术的发展,还需要关心如何安全的使用这些密码算法。例如说关于密钥的管理:如何生成?如何传递?如何更新?如何销毁?还有一些例如说在一个公开的信道如何交换密钥?如何识别对方的身份?等等等等。
例如说我们现在网络上所谓加密通信,或者加密信道,其实都属于内容加密。例如说VPN/SSL等等,从数据链路层来说,还是通过现有的公开协议的。因为最起码的,肯定要支持RFC 791协议(当然,其实还有很多更低层的协议),不然,所有的数据根本无法通过路由器,更别说从互联网的一端传输到另一端了。
所以,密码学和通信学,有相互关联的地方,但是并不一致。
至于“口令”,也就是password,其实严格来说也不属于密码学的研究范围。即使是密码学中身份的识别,也不通过口令来完成。
只是因为在现代网络为主要通信环境的前提下,密码算法中的密钥,一般都是一组长度不等0到255的数字集合。而且有些算法的密钥,还不能是随便选的一组,例如说DES算法,某些特殊结构的密钥,会降低安全性,而一般生成DES密钥时,都会加以回避。而让用户了解这些并且记住自己的密钥,显然是不现实的,所以就有了形形色色的password机制。从密码学的角度来说,口令也是明文,而它输出的密文,要么作为身份识别的ID,要么映射到一组密钥通信的密钥中。
所以,其实你说的那几个术语,差别还是很大的,只是他们的严格定义一下子我说不清而已。
希望你能看懂我说的了。
再附带说一下,因为现代互联网通信技术的发展和标准化通用化潮流的影响,单纯的加密信道的使用范围已经很少了。所以,从最基础的物理信道来说,其实大家都是在进行明码通信的。只是通信的内容,在可能进行了加密而已。所以,“明码通信”这个术语,已经越来越少被提及了,仅仅在一些收发电报的场合还可以看到。而所谓的“加密信道”,或者“信道加密技术”,现在也已经很少是从真正的物理层或者数据链路层来加密的。一般的,例如说VPN或者SSL,基本上都是基于网络层(IP层)进行加密的(少数也有通过数据链路层加密的,但是这些一般由特殊的帧中继设备或者ATM设备连接)。
- 相关回复 上下关系8
压缩 6 层
🙂密码和密文是同一回事,口令与明码是同一回事。 瓦斯 字0 2008-11-25 23:54:05
🙂你这玩笑开大了 yhz 字298 2008-11-26 00:02:12
🙂俺不信邪。你不妨把区别说说来看。 瓦斯 字0 2008-11-26 00:03:34
🙂关于密码学和通信学
🙂实在佩服您的耐心! 阿卡细亚 字30 2008-11-26 03:18:03
🙂你说了“口令”,也就是password 瓦斯 字259 2008-11-26 01:10:38
🙂但是属于密码系统实现的范围 1 yhz 字1231 2008-11-26 01:28:13
🙂你既是科班的,就不要随波逐流 瓦斯 字56 2008-11-26 01:36:44