Shell's Home

关于香港艺人裸照事件

Feb 28, 2008 - 1 minute read - Comments

香港的艺人裸照事件现在已经是沸沸扬扬,具体情况相信也不用我说了,去网络上找一下,遍地都是。既然大家都已经发表意见,当事人也不愿意多说,我也不想揭人伤疤。不过我倒是对裸照事件中网络的特性很感兴趣,并且想说说未来网络的各各方面的问题。 在这次裸照事件中,真正的幕后发布者”奇拿”从头到尾没有露面,也没有任何消息确认谁就是”奇拿”。他发布照片也不是满世界张贴,而是通过各处的网民转贴。如果不是网络,这一切都是不可想像的。你无法想像自己的裸照会意外的流出,被人倒处张贴,而这个人你还绝对找不到。为什么网络如此特殊呢?因为网络从设计的开始就注定和通常的通讯系统不同。网络具备很高的匿名性,具有一定技术的人员(这种技术要求大致就相当于一个高中水平的人经过一年训练的水准)可以任意的发送消息而不会被追踪。电影上那种特工通过什么东西而追踪用户的事情,在经过一定训练的人手里完全不可能发生。国和国之间的矛盾,法律真空地区,他们永远有办法躲避追踪。换句话说,只要你希望,任何人都可以随意在网络上发消息而且保持匿名。并且广大的网友会自动的将消息传递到各个角落。而且这种发布是极为迅速的,往往是发布会还在开,讲稿已经到了各大论坛。 这个特性是对各国政府,各大公司,大型组织的一个极大挑战! 为什么呢? 自从传播学被从其他学科中分离并且发展起来后,任何大型组织都不会忽视传播的力量。很多巨大的事情往往会因为一点信息而被改变,因此控制信息的人具有相当的力量。也许有人会说我影射中国政府,我不驳斥我说的大型组织中包括中国共产党。然而谁可以找到一个大型组织,对自己的信息完全忽视,还可以蓬勃发展呢?美国也有水门事件,也有新闻控制。从这个意义上说,”控制信息”可以被视为大型组织维持自身形象的一个必然手段。 然而网络打破了这个手段。 大家应该都知道中国的GFW,当然,其宣称的目的是”屏蔽境外有悖于中共当前政策的内容,例如黄色,反动等”。这个可以看做是中共对于网络的必然反应--既希望可以借助网络的力量来发展国家,又担心网络的发展使得国家失去对信息的掌控力。然而通过技术屏蔽的手段是无效的,绕过和伪装远远比发现简单。自从二战以来,数学密码,换位密码,对称密钥的发展,使得加密比破解容易上无数倍。即使是个人,也完全有能力传递国家无法破解的信息,或者将其伪装到根本不会被注意的庞大信息海洋中。可以说,现在如果有战争,那么敌对国家间首要做的事情就是断网,彻底从Internate上断开,包括无线信号。否则只要有邮件收发,就根本查不出其中是否被混入了无法侦测的内容。而返回我们这个论题本身,大型组织对于信息的掌控力,则彻底的被网络剥夺了。 然后,我们完全可能设计出一套系统,使得信息从一个人到另外一个人的传递是无法被窥视和修改的,也是无需通过中心节点的。(笔者当年就曾经设计过这种东西,当然因为众所周知的原因,放弃了)当然,大众是否会使用是一回事情。通过这种东西,我们将来的信息必然是分布的,从个人到个人的,无干预的。这种情况下,我们需要考虑两个问题。这种可能性对社会的影响,这种可能性下的规范。 如果考虑这种可能性对社会的影响,我觉得是相当难说的。一方面,开放的信息传播使得信息透明化和公开化。如果掌控的好,会成为大众监督政府的利器。政府的问题会被迅速瀑光,并且得到解决。从这个角度讲,我们会得到一个更加公正的社会。然而从另外一方面讲,信息的匿名化会使得信息质量劣化。成为虚假消息的温床和散播垃圾的根据地,不负责的言论和奇谈怪论试图吸引人民的眼球。并且,更严重的,会产生很多违背本意的现象。例如网络暴力。 因此我们必须对这种可能性有所规范,从道德层面到法律层面。从道德层面(或许没有这么严重)来说,我们尽力不传播对于我们没有意义的信息,减少传播未经核实的信息。以此减少信息垃圾的产生。然而,我们是否应当去从法律层面阻断垃圾信息的传递呢?恐怕不行。从趋势上说,信息的公开是趋势。反对公开信息,将信息传播控制的权力掌握在少数人手里是逆潮流的。从这个意义上讲,中国公安部禁止个人间传递照片的行为也有简单粗暴的嫌疑。正确的应当是个人间的传递国家不干涉,然而可以由受害者提起民事附带刑事诉讼。

通知时代

Feb 21, 2008 - 1 minute read - Comments

以下内容可以说是作为一个时代的预告,请大家见证将来是否按照我的预想进行。 首先请大家想想,当大家上网的时候,都做什么?也许是打游戏,也许是看电影,也许是泡论坛,也许是看好友的blog。随着web2.0时代的到来,我们每个人都有发布自己话语的能力。看上去和上世纪末的主页时代类似,然而不同的是,发布的频率增高了。假定你和我一样,有大约20-50个好友在网络上进场写blog。每个人每月写一篇,那么你每天就有1-2篇blog要看。你喜欢的电视剧有10个,它们每周更新一次,那么你每天就有1-2集电视剧要看。依此类推,你所关心的东西在网络上绝对不缺。每天平均下来都要看3-5篇东西,和几个朋友聊聊最新的生活,看几集电视剧,多好的生活。然而,当前却有个不和谐的问题,你需要持续的检查更新! 按照我们上文举出的数据来推算,如果这个人每天需要看这些东西作为日常的网络活动。那么他就需要检查30-100个页面来确定哪些内容更新了,需要跟踪10-20个页面来确定需要下载的东西。在网络小众的时代,也许这不是个问题。我们的习惯是每天上网,然后收一次邮件,检查书签里面所有的页面,看看是否有更新了。下载最新的东西,把写好的信件发出去。以天为单位来说,这不是一个问题。然而正如在线时间的增长催生了IM来替代Mail一样,长时间的在线使得我们希望简单的获得”第一时间”的东西。邮件到达的时候,我希望”第一时间”的获得。有新闻的时候,我希望”第一时间”的关注。朋友写了blog的时候,我希望”第一时间”的回复。OK,假定5分钟是你可以认可的”第一时间”。那么你需要每5分钟”检查30-100个页面来确定哪些内容更新了,需要跟踪10-20个页面来确定需要下载的东西”。 幸运的是,我们可以使用程序来自动做这些事情,并且现在已经有了部分解决方案。有一种邮件跟踪程序,可以跟踪pop3,hotmail,yahoo等常见的邮箱,检查是否有新的邮件。好友的blog和新闻都可以用rss软件来跟踪是否有新的内容。然而不幸的是,每种解决方案都是单独的。如果你需要持续的跟踪,就必须挂上邮箱的检查程序,rss的检查程序,网页的检查程序(用于部分不支持rss的网页)。不但复杂难以管理而且资源消耗也相当惊人。 我预期将来大家都会持续的挂线,因此预计将来的模型是”通知”而非”检查”。当你有邮件时,会收到邮件到达通知,当你关注的新闻更新时,会收到新闻更新通知。而具体怎么实现呢?我估计是IM系统整合。当今IM界发展的趋势是互通,IM的特点又是即时,因此有很大可能性会是使用IM来通告新的内容到达。你可以向一些支持的网站注册你的IM,而后他们会视图加你为好友,并且向你提供验证号。当你将验证号回复给网站后,你的网站账户(如果需要的话)就和IM绑定在一起。而后你可以主动订阅一些内容主体的更新通知,当网站程序更新这些内容的时候,会读取到你的订阅。而后将内容更新和你的IM发送到一个队列中,这个队列再将这些消息发送到你的IM中。 当然,IM接受这些消息的显示方式很可能不会用通常的消息界面,更可行的界面是类似google reader的聚合通告界面。当你完成订阅后,你的IM就会将源放到一个通知树中。每个源是一个列表,代表了这个源的内容。例如邮箱源的列表就是邮箱内的邮件,rss源的列表就是rss的新闻,”越狱”这种源的列表就是一堆的”越狱”影片下载地址(当然,如果合法的话)。甚至论坛的某个帖子都可以做源。源代表了内容,并且通告变化,而IM则记录了客户是否看过每个源的具体内容。有可能还会出现一些服务网站,负责每一定时间去检测不支持源的页面,如果满足一定的更新条件,那么就通知页面更新了。 通过这种模式,你每天上线后就可以看到没上线时更新的内容,直接点击过去看。并且在线的时候各种需要的消息还会持续的通告过来。当然,你也应该可以(只要客户端支持)设定某种消息会强制的弹出(例如公司的邮箱里面有新邮件),而某些只是更改托盘区的图标(例如某些有点关心的新闻更新了,你不会希望这个原因把你从游戏里面拉出来吧)。理论上说,当IM的客户端范畴拓展到手机后,我们甚至可以如同宣传中说的一样”随时随地,掌握信息”了。

找女朋友就像招聘

Feb 16, 2008 - 1 minute read - Comments

最近公司管理做多了,发现人真的变态了。新年新气象,要有新目标。写个2007年总结报告和2008年工作计划,然后再画个甘特图。那找女朋友这个怎么操作?就当招聘好了。 兹需高级特种工作人员一名,年限20-26,女性未婚。从事家政服务和精神安慰工作,地点目前在上海,可能视工作需要调动到北京和烟台。要求熟练掌握装笑,装文雅,装高贵和装大尾巴狼的技巧,具备编故事和忽悠人的能力。工作经历要求,不限,最好没有。工资,面议。福利,每月休息一周。 注:面试通过后请带体检表复试…… ……谁在北桥认识人?

Process Explorer的潜在内存泄漏

Jan 31, 2008 - 2 minute read - Comments

贝壳最近碰到一个郁闷到死的问题。机器经常出现硬盘狂转,系统响应延迟。系统弹出一个错误,然后死机。贝壳开始猜测是硬盘驱动问题,升级驱动N次,无效。然后再猜测是ext2fs的问题(贝壳用这个驱动挂载linux下面的盘的),看来看去,不是。最后,贝壳确定了,这是内存泄漏了~~~ 问题是,这时候可没人跳出来推荐喝什么口服液的。贝壳系统中永远挂着一个procexp,看内存状态的。这东西是sysinternals的产品,后来被微软收购了。功能强大,很多系统调试,杀马都需要用到。于是贝壳就用这个工具看哪个程序的内存泄漏,可是看来看去看不到。准确说,是没等贝壳看到,系统就先死透了。最后贝壳多次尝试,发现了一个死机的规律。当mysql开启的时候,procexp就会随时发生异常死机。这是一个重要的提示,要么mysql内存泄漏了,要么procexp内存泄漏了。究竟是哪个呢?贝壳用了同属于sysinternals开发的pstools系列工具,仔细检查了异常发生时候的内存状态,确定,Process Explorer存在内存泄漏的风险! 看来sysinternals被微软收购后,旗下的工具也出现了微软的一贯特色。以下是一次内存泄漏后,终止mysql服务后抓下来的内存状态输出。如果不终止mysql,不等我抓系统就挂了。 Process memory detail for HOME-B2326348D0: Name Pid VM WS Priv Priv Pk Faults NonP Page Idle 0 0 28 0 0 0 0 0 System 4 800 52 0 0 10120 0 0 smss 772 3748 48 172 1648 223 0 5 csrss 828 68132 1464 2304 3768 13748 6 144 winlogon 856 61528 580 8536 8684 5143 39 96 services 900 37724 804 2256 2404

弄死MSN的共享文件夹

Jan 26, 2008 - 1 minute read - Comments

MSN8的共享文件夹功能根本就是一个废物功能,速度慢,不习惯,而且用处不大。最恶心的是,没有卸载选项不说,手工卸载后一开MSN一重起还会回来。NND,看我怎么弄死他。MSN虽然是微软自己的产品,但是也需要遵守微软的API行为。改变资源管理器的行为是用COM组件注入到exlporer中实现的,没有使用驱动层的东西。那么我们就设法阻断DLL文件的注入加载。 首先,regsvr32 /u是不行的。因为MSN一启动又会注册上,除非你不用MSN。删除文件也不行,因为会再生成一个。那么,我放着文件不动,把内容清空,然后再删除NTFS权限怎么样呢?即使是微软的产品,也不会强制说我的更改无效,然后自己胡来一套吧。 首先,关闭所有MSN有关软件,在运行中输入cmd开一个命令行窗口。然后,用process explorer(现在这东西也是微软的产品)终止explorer进程(系统自带那个应该也行,不过我没有测试过)。这步顺序非常重要,因为我们要先阻断COM组件的加载,否则无法对文件实行更改。所以我们要先打开一个CMD,然后再关闭explorer。否则一旦关闭explorer,开CMD就难了。而没有CMD,要去删除文件就要多费一些手续了。 我们现在在CMD中切换到MSN所在目录,删除fsshext.8.1.0178.00.dll啥的文件。这个文件名会根据你安装的版本而变化。而后启动explorer(在CMD里面敲explorer就好),这个时候COM组件已经没有加载了。于是我们建立一个文本文件,改名叫fsshext.8.1.0178.00.dll,放到MSN的目录里面,再删除所有人的访问权限。删除的方法是文件上右击,点属性,安全,高级,取消”从父目录继承权限”的勾选,然后点删除。如果看不到安全选项卡,检查以下项目。工具,文件夹选项,察看,使用简单文件共享(推荐),取消他的勾选。微软的东西,最好表随便勾。 根据我的测试,这时候你随便重起电脑,MSN的组件说加载不上就加载不上。同理也可以应用到3721之类的流氓组件上,只要抢先建立了同名的文件,并且阻断了权限,这些组件就会无法使用。如果你进一步做了分离权限(日常不使用管理员账户),即使安装程序作者知道这种方法都无法应对。如果可以的话,就说明微软存在漏洞了。

财务数据库

Jan 25, 2008 - 4 minute read - Comments

贝壳最近工作繁忙,一般都是晚上十一点到家睡觉,第二天早上继续上班的那种,所以blog基本没怎么动。现在放篇财务数据库的原型,大家参考一下吧。当然,是对程序员而言。像六牙四皂小姐这种下面估计是压根看不懂的,而且也不会有那种变态的资金准度要求。 首先建立一个账户表。 DROP TABLE IF EXISTS `accont_info`; CREATE TABLE `accont_info` ( `id` int(11) NOT NULL auto_increment, `username` varchar(40) NOT NULL, `accont` varchar(40) NOT NULL, `accont_type` int(11) NOT NULL default '0', PRIMARY KEY (`id`), UNIQUE KEY `username` (`username`,`accont`) ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=gbk; 输入用户名,账户名和账户类型,例如”许智翔”,“招行账户”,2。账户类型中规定1是现金,2是存款,3是信用卡,4以上不计算。这样可以使用多个现金账户,存款账户和信用卡账户。然后利用子查询把所有类型间的相互行为统计出来。 然后是类型表。 DROP TABLE IF EXISTS `type_info`; CREATE TABLE `type_info` ( `id` int(11) NOT NULL auto_increment, `type` varchar(40) NOT NULL, `subtype` varchar(40) default NULL, PRIMARY KEY (`id`), UNIQUE

libxml使用中的编码问题

Dec 27, 2007 - 1 minute read - Comments

libxml是gnome的XML解析库,具有强大的解析能力,支持DOM和SAX解析模型,属于验证型解析器。其内部是使用utf-8编码工作的,因此gbk之类编码的XML无法解析。为了解决这个问题,我们可以使用一个很简单的小窍门。 libxml是要和iconv一并使用的,头文件引用一般类似以下形式。 #include <iconv.h> #pragma comment(lib, "iconv") #include <libxml/tree.h> #include <libxml/parser.h> #pragma comment(lib, "libxml2") 这样的话,我们向libxml注册一个处理句柄,对其他编码的xml先执行一次转换,再进行解析。 iconv_t iconv_utf8_gbk = NULL; iconv_t iconv_gbk_utf8 = NULL; int gbk_input (unsigned char *out, int *outlen, const unsigned char *in, int *inlen) { char *outbuf = (char *) out; char *inbuf = (char *) in; size_t rslt; rslt = iconv (iconv_utf8_gbk, (const char **) &inbuf, (size_t *) inlen, &outbuf, (size_t *) outlen); if (rslt < 0)

继承函数的拷贝构造

Dec 25, 2007 - 1 minute read - Comments

从基类继承一个子类,基类有一个拷贝构造函数,子类重载了一个。那么在子类拷贝构造的时候会自动调用基类的拷贝构造函数吗? 答案是不会,自动调用的是基类的构造函数。 子类中如果需要调用基类的拷贝构造函数,需要这样用。 D (const D & o): B (o){...}

wc、sort介绍

Dec 4, 2007 - 1 minute read - Comments

首先声明一点,我介绍的小软件系列都是Linux下的,在Windows下可以找Gnuwin32里面提供的移植包。因此多数人都是可以使用的,只是高兴不高兴用的问题而已。 其次我得道歉。本来说好了每周介绍一些小软件的,结果MSN空间不稳定,加上贝壳又忙。所以现在才介绍第二个,大家理解理解吧。 这次介绍的对象是wc,不是厕所,也不是世界杯,而是一个字符统计软件。这个软件的目的是统计出一个文件内的行数,单词数,字符数。行数是按照硬回车来统计的,单词是按照分割符号来统计的,字符么就不说了。这个和Word的字符统计很像,不过用起来并不那么方便。也许有人奇怪,这种软件有什么用呢?主要是在脚本程序内使用来统计一些数据,也有用来统计程序的代码行数的。平时大家一般都是分开统计行数,这次可以wc -l *.cpp *.h。就可以得到所有文件的行数和总行数。 而后我补充介绍一个东西,sort。这东西也很简单,就是把输入的内容按照一定的法则排序输出。一般来说,排序法则是alpha法则,当然也有数字法则等等。这个软件主要是从输出中排除一些重复数据,或者把输出过滤。例如我们可以和上面的联合使用,wc -l *.c *.h | sort。就可以得到当前所有的文件的行数,并且排序。

IM之争

Dec 2, 2007 - 1 minute read - Comments

我不记得这个Title是否已经写过了,不过无所谓,因为国际形势发生了变化。 以前是ICQ和QQ争霸中国市场。后来MSN加进来一脚,ICQ淡出了。现在Fetion跑进来了。那么未来呢? 我们先看看IM软件的发展方向吧。IM最早的远亲应当是IRC和电子邮件。不过电子邮件对于服务器需求太强大,用于实时对聊做不到。IRC虽然需求小了点,但也在不可承受的范围内。随着网络的发展,大家挂网时间越来越多。所以大家要求一种廉价有效的即时通讯手段。可以和某个人对话,而不用耗费太多的服务器成本。于是,ICQ应运而生了。ICQ可以说是最初的P2P体系者,两个人聊天的时候数据都是互相发送的,只有登录的时候才和服务器通讯。这样的好处是避免了大量的服务器开销,坏处是无法穿透防火墙。 从协议上说,IM的协议互动机制和电子邮件基本是一致的。如果不介意服务器开销的话,我们可以把IM协议构架在POP3和SMTP上。对于这种倾向,有人应该感觉熟悉。那不是MSN的离线消息么?差不多。我们定义发送逻辑为,如果可以找到对方IP就找对方IP,不可以找到对方IP就给对方发送邮件。接受的时候我们就接受邮件,如果碰到特殊格式的就解析掉当做消息处理。同时如果在线则服务器会主动推送邮件消息过来(如果不这样就要非常快的定时查询新消息,非常耗费资源)。那么我们就构成了一个跨越服务商的IM方案了,并且还支持多种客户端和离线消息。例如我们通过智能手机的终端接入进来(记得么?我们的客户端其实只是个特殊点的邮件程序),那就成了无线IM。 问题是,我们动了谁的奶酪? 服务商恐怕对此会非常不高兴。大家知道,电子邮件服务商的竞争比IM残酷多了。那么多IT公司,有多少是纯粹做电子邮件做发起来的?几乎没有。为什么呢?因为电子邮件的开放性强。开放性强是历史的产物,早在主机时代邮件协议就已经固定了,而且有了大量的实现。如果哪个ISP不遵循,那么就没有用户。但是遵循标准的结果就是谁都可以被谁替代。也许某某邮箱系统的界面好看点,某某邮箱系统的容量大点,某某邮箱的速度快点,某某邮箱的垃圾少点。但是都不是不可以替代的,属于非强用户粘着性的产品。(注意我没有使用弱这个词,因为一般人习惯用一个邮箱后也就不怎么更改了)如果邮箱服务收费,ISP会发现,几乎是立刻就没有用户了—— 然而IM则是在端点时代才发展出来的,而且始作俑者不是IETF成员,IETF也没有太关注。——这捅了大篓子。现在的IM产品,几乎一个产品和另外一个无法连接。一旦你大部分的朋友使用了某种IM,你也必须被迫使用某种IM。好比贝壳虽然不喜欢QQ(这厮没Linux版本还老封锁协议),但一帮朋友都是QQ的,难道不用?这是意味着IM是扩散用户粘着的产品! 这意味着什么呢?ISP们不用推销,只要他们拥有一定的用户了,用户就会自动扩展用户群。而且你的用户不会轻易离开你,即使你收费,也有相当的用户。如果改成开放的形式,很多大型的IM商就等着客户流失吧。因为他们有相当的客户群,因此往往会收取一定的费用或者产生较多的广告。而IETF已经开始制订IM的交互协议了,即SIMPLE协议。先不说这个协议是否先进是否安全,至少这个协议是开放的。开放的协议意味低附加值的服务,因此IM商肯定会抵制协议的推行。一般的逻辑是。如果SIMPLE协议的总客户集群无法和自己的客户群比较,则不和SIMPLE互通。这样有利于维持自己的IM群,进而取得收益。如果SIMPLE协议的总客户集群已经大大超过了自身的客户群,则和SIMPLE互通。因为可以扩大自己的群,进而扩大用户。所以SIMPLE协议应该是从新兴公司开始推广的。 因此,作为一个用户来说,我更希望大家现在开始使用带有SIMPLE特征的服务。这样更有利于促使更多IM商互通服务,而且还会减少服务的费用。 从历史上说,当今的各大IM厂商自有其来。QQ是特殊历史时期的特殊软件。开始的时候其实就是简化的ICQ中文版,除了中国制造外没有什么特长。后来中国的互联网娱乐潮起,QQ向娱乐转型,主攻大众市场,结果红的发紫。MSN则是更晚时期的产物,是MS攻占全球IM市场的拳头产品,主攻的是商务市场。Fetion是中移动今年新推出的IM产品,特点是和手机互通。 就发展趋势来预期,IM主要呈现两个特点,一个是全分布化,一个是嵌入化。 虽然IM软件的工作原理对于服务器要求不高,然而很多后续服务对于服务器却有强烈需求。我们先仅仅计算基础通讯消费吧。一个人登录的时候先认证,后回传所有好友的名单,套接字。一般登录一次开销最小也要在3K上下。一般成熟的IM软件总用户量至少是1000W以上(国内市场),峰值冗余计算为五倍。计算结果就是一天的通信最少300G,最低带宽需求是20M。这还仅仅是登录造成的通讯成本。我们再考虑持续心跳激活某个特定客户端的重复时间——那这个开销就不是某个服务器所能支持的了。现在的IM服务器端,一般都是服务器组来完成这系列的需求。当然——未来的IM软件,我们的期许绝对不是仅仅1000W用户这个级别了,至少要包含国内的上亿人,加上国际的上亿人。每个IM的有效注册用户规模可能达到数亿这种恐怖规模。加上嵌入化的发展,在线时间也会越来越长。因此服务器的规模也会随之上升,进而造成IM收费时代的到来。 如果要IM持续免费,则我们就必定要发展分布式IM。简单来说,用户登录,持续心跳等等都不以服务器为中心,而以分布网络为中心。服务器只辅之以用户入口和统一的模糊查询的功能。这样会大大减轻服务器的负担,但是也会带来几个问题。 首先是用户的注册,没有用户数据库了。不过不难解决,可以让用户不需要注册。因为没有一个统一的服务器,因此用户注册只需要生成一个UUID,生成一对公私密钥,就算完成了。登录的时候即是告知别人自己的UUID,公钥和套接字即可。需要寻找一个好友的时候,可以使用UUID查询此人的套接字,具体方法请看DHT,Kademila,我上面有写的。 其次是大规模块内容的传输,简单来说其实就是传文件。这些数据如果可以直接传输则没有问题,但是在无根分布系统中,间接数据传输是要过中间机的。这样会造成中间机的网络开销。这个还要看人家乐意不乐意呢。这个没有什么好的解决方法。 最后则是安全问题。这倒不难解决,发送内容用私钥和对方公钥各加密一遍,接受用对方公钥和私钥解密就好了。第一次发送一个统一加密块,后面就用这个块加密,定时更换。兼顾了安全和效率。 IM的另外一个特点就是嵌入化,简单来说就是移植向手机上。中国的移动运营是特殊状态,不过世界的发展大致都是一样的。就是将手机发展为网络终端,然后尽量用软件解决问题。那么中国移动现在的短信优势还能持续多久就是一个非常大的问题了。当然不排除短信优势消灭前飞信拥有了新的特性的可能。