主题:【讨论】推荐一款即时沟通软件 -- 格格巫
只是有些具体环节还体会不深。
举个例子,我用sha1加密算法得到下面一个密码串:
In [11]: hashlib.sha1(s).hexdigest()
Out[11]: '5ec3d4b1b0c96f4dab3e79dab25eb2e37b8a3117'
In[11]里面的s是明文,是我随便copy了一句话,In[11]是加密过程,Out[11]是加密结果。
整个加密成本应在0到1分钱之间了。解密这个串需要多少成本呢?
我个人没有多少“有价值信息”,这样加密一下,也就让解密者认为得不偿失就放过了。有“巨大价值信息”的人自然有更强壮的加密手段,使得他们的对手也难以解密了。
那个使用次数多了,是原来越容易解密。
但是只要是有价值的通讯,可以经常更换密码本啊,相对而言,解密的人还是要被动一些,解密一方连加密一方是否换过密码本都难知道吧。
加密的成本要远远比破译的成本高,这是显然的,要不然这个算法就没有使用价值了。
但是,一个完整的安全通信体系,远远不是加密算法这么简单。
例如说,加密的关键是密匙。那么:谁拥有密匙?谁保管密匙?怎么保管?如果你需要更换密匙,你用什么途径把这个新的密匙告诉你的朋友?如果有一天你接收到一个新的密匙,你怎么确认这个是你的朋友发过来,而且没有被泄露或者篡改的?
所以,反过来,要破解一个加密通信体系,也不仅仅是只有破译加密算法这个方法。
例如说,分析你们的流程体系,找出弱点;或者监控你们的密匙交换过程;或者分析或者监控某些关键特征码等等。
当然,对于一些高级的加密系统,最最简单,也是最最便宜的方法莫过于收买一个拥有或者掌握密匙的人。
回到你举的例子:
Out[11]: '5ec3d4b1b0c96f4dab3e79dab25eb2e37b8a3117'
你的代码确实很简单,用起来很方便。但是你知道这个过程中你的sha1算法到底用了哪个密匙对吗?如果你不知道,你怎么让你的朋友去解密这个信息?如果说加密解密的密匙对被封装在这个加密库的内部,那要破译就实在是太简单了,只要找到你用的是哪个加密库,用对应的解密过程就可以了。
呵呵。
MSN用的人多。SKYPE我平时都用来和国内打电话。
用QQ的人太多太乱,不喜欢。
很久很久以前用的是ICQ,还记得那个7位数字的号码。
花谢
对一个人来说,若想传递信息,非要用某些字眼吗?
全无事实的依据,我的本意只是要说常规的电话也要被监听,skype被监听也不意外。
既然大家也都没有事实的证据,我看揣测就到此为止吧。
支持多个协议,比较方便而且比msn的client安全。界面很朴素,但是很实用。协议方面可能还是msn是老大。