有意思的加密通信

标签: 互联网 编程技术 网络安全 加密 加密通信 | 发表时间:2014-05-17 17:11 | 作者:尘岳
出处:http://www.geekfan.net

互联网就是个公开演讲的广场。意思是任何人说任何话,其实别人都是能听见的。这个认为是互联网的天性了,那么在这个前提下如果我和我一个朋友说点机密的事情,同时不想让别人偷听到,这个就成了一个有点挑战性的技术问题,也就是今天我们要讨论的加密通信。

mim

对称加密

几千年来,我们人类都在用一种“对称性加密“的形式来进行秘密信息的传递,”对称“指的是加密用一个密码,那解密是用的还是这个密码。但是“对称性加密”为啥不能用在互联网上的加密通信中呢?说说这个过程,我有一个文件,用一定的加密方式来进行加密(比如用一些文件压缩程序),然后可以把加密后的这个包,传递给我的朋友,到目前为止一切都好。但是接下来的问题是,我朋友如何才能解密我给他的文件呢,显然我必须安全的把我加密时输入的密码安全的传递给他,这样才能完成这个加密通信过程。所以这就有了一个鸡和蛋的问题。最终我可能就不得不借助互联网以外的工具,例如打电话,来把密码给我朋友了。所以,对称性加密是不适合用于互联网上的加密通信的。

dui_chen

非对称加密的原理

那我们就可以想一下,是不是有一种“非对称加密”的方法能解决鸡和蛋的问题呢?恭喜你,答对了!非对称加密用一句话来描述就是,加密是用一个密码 key,而解密则会用另外一个密码 key。安装好相应地程序之后,任何人都可以在自己的计算机上来生产这一对密码。其中用于加密的这个叫公钥,是可以公开给别人的,所以叫”密码“这个不严密,还是英文好,就叫 key。另外一个是绝对自己要保密好的,叫”私钥“,这个是用来解密的,真的是”密码“。

这两个 key 是一对,意思是他们在数学角度是有着联系的,但是如果想要从公钥计算出私钥也是不可能的。加密通信的过程是这样的,收信人,比如说我,先生成这一对 key,然后我想跟我的朋友秘密通话,那我就把我的公钥传给他,这个反正有人得到也没关系。我朋友拿到公钥之后,就把他想要跟我说的话进行加密,然后把加密后的信息通过互联网传给我,整个互联网上,即使有其他人得到了这些加密数据也没用,因为只有我拥有跟那个公钥配对的这个私钥,所以也就只有我,才可以解密这个信息。

fei_duicheng

非对称加密的类比和应用

我们再来打个比方。我家门口有个信箱,那么凡是知道我家地址的人就可以给我发信了,所以我家的地址就相当于公钥,但是由于只有我自己有信箱的钥匙,所以也只有我能看到信。那这个信箱的钥匙当然就相当于私钥了。

打另一个比方。我和朋友要秘密的通信。首先朋友寄给我一把她的打开的锁,这样我把信放到一个盒子里,锁上,给她寄过去。拿到盒子之后,朋友拿出自己的钥匙就可以打开箱子了。反过来,如果我想从她那里得到回信,那我就给她寄我的锁就行了。这种通信方式的好处是,任何一把锁的钥匙都没有邮寄过。

letter

最后说实际的一个应用。我在北京,如果我有一台服务器在美国,那么我如何让信息从我的服务器上安全的传递到我这里呢?首先,我先生成一对 key,然后我就把公钥传到我的服务器上。这样,我的服务器就可以把信息加密,然后传递给我了,听起来可能比较麻烦,但是实际中有 ssh 这样的程序帮忙,其实加密和解密过程都是自动完成的。 下面是生产秘钥的具体操作过程:

$> ssh-keygen

Generating public/private rsa key pair.

$> ls .ssh/

id_rsa id_rsa.pub

好,加密通信就说这么多,以后有机会我们会谈一个相关的话题:数字签名。

 

参考资料:

http://en.wikipedia.org/wiki/Public-key_cryptography

http://blog.agupieware.com/2014/05/online-learning-bachelors-level.html

有意思的加密通信,首发于 极客范 - GeekFan.net

相关 [加密 通信] 推荐:

有意思的加密通信

- - 极客范 - GeekFan.net
意思是任何人说任何话,其实别人都是能听见的. 这个认为是互联网的天性了,那么在这个前提下如果我和我一个朋友说点机密的事情,同时不想让别人偷听到,这个就成了一个有点挑战性的技术问题,也就是今天我们要讨论的加密通信. 几千年来,我们人类都在用一种“对称性加密“的形式来进行秘密信息的传递,”对称“指的是加密用一个密码,那解密是用的还是这个密码.

恐怖分子用单字母加密法加密通信

- Mathack - Solidot
英国航空公司IT雇员Rajib Karim因阴谋发动恐怖袭击而被判30年徒刑. 他利用有两千多年历史的加密方法和孟加拉国伊斯兰激进分子进行通信. 法庭被告知,与Karim联络的孟加拉国激进分子拒绝使用更先进的PGP或TrueCrypt加密技术,而宁愿使用自己发明的Excel换位表单字母替换加密法. 这种方法最早是古希腊人发明,曾被尤利乌斯·恺撒在公元前55年使用,又被称为凯撒密码,它是一种十分简单的加密技术,明文中所有字母在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文.

Ricochet:基于Tor的加密即时通信工具

- - Solidot
22岁的John Brooks在13岁时就缀学了,他是一名自学成才的程序员,关心隐私和公民自由. 四年前,他开始开发使用Tor隐藏服务的加密即时通信程序Ricochet. 到完成之日,他有了一个易于使用的完备桌面客户端,提供了匿名性和加密,甚至在公众意识到之前解决了元数据问题. 唯一的问题是程序只有几个人用,也没有几个人知道.

加密锁和云授权

- MArCoRQ - 月光博客
  在中国,加密锁仍然是占主导地位的软件保护方式. 近30年来,计算机硬件不知更新了多少代,软件技术也从上世纪90年代起进入了互联网时代,而加密锁保护方式却一直没有改变,顶多从原先的并口锁进化到USB锁,这是为什么呢.   这是因为,30年来,软件的盗版依然存在,人们却没有找到应对盗版更好的办法. 另外,传统的观念认为,加密锁具有安全强度高、软件授权可随加密锁移动使用优点.

Google升级HTTPS加密

- 请叫我火矞弟 - Solidot
民不拜天又不拜孔子留此膝何为 写道 "Google 修改了启用HTTPS服务的加密方法,以应对未来技术发展后可能造成的解密行为. 这项升级适用于Gmail、Docs和Google+. 现在的HTTPS实现借助于只有域名主人所掌握的私钥生成的session key来加密服务器和客户端之间的流量. 这种方法使得连接可能被所谓“追溯式解密攻击”(retrospective decryption attack)破解.

透明数据加密

- - CSDN博客数据库推荐文章
透明数据加密                                          .                         常见问题解答. 数据在网络上依然是加密状态吗. 任何人只要获得应用程序的授权就能对数据进行解密吗. TDE 与 Oracle 提供的加密方法有何不同. 哪些加密算法可与 TDE 一同使用.

银联加密算法

- - CSDN博客推荐文章
很多人对银联卡的加密算法感兴趣,毕竟分分钟涉及的都是你的钱的安全,但网上很少人却讲银联标准加密算法. 遂写一遍当做是自己的学习笔记,偶尔忘了可以翻翻,同时希望能够帮助到其他人. 首先要认识一下cbc算法和ecb算法. cbc算法是链式的,慢,不可并行处理,但更安全,因为每一次加密都是依赖于上一次的结果,同时这也会导致一次错将导致后面的全部错误.

JavaScript之web通信

- - Web前端 - ITeye博客
浏览器作为 Web 应用的前台,自身的处理功能比较有限. 浏览器的发展需要客户端升级软件,同时由于客户端浏览器软件的多样性,在某种意义上,也影响了浏览器新技术的推广. 在 Web 应用中,浏览器的主要工作是发送请求、解析服务器返回的信息以不同的风格显示. AJAX 是浏览器技术发展的成果,通过在浏览器端发送异步请求,提高了单用户操作的响应性.

HTML5 web通信(跨文档通信/通道通信)简介

- - 张鑫旭-鑫空间-鑫生活
本文地址: http://www.zhangxinxu.com/wordpress/?p=2229. web通信(洋名:web messaging)是一种文档中独立的浏览上下文间的DOM不会被恶意的跨域脚本暴露数据分享方式. 得得得,术语啊什么的,比看到凤姐还头疼. web通信是一种数据分享方式(有屁话之嫌);.

老式通信设施展

- Henry - 译言-每日精品译文推荐
来源Journey Through Time: Exhibition Of Communication Artifacts(老式通信设施展). A.S.Popov中央博物馆展示古老沟通器物所囊括的物理定律和数据传输的类型,在这里仿佛享受了穿越旅行. 那些住在南欧的人们用骆驼运送邮件. 一副巨大的邮票收藏图案很吸引眼球.