存档

‘Social Responsibility’ 分类的存档

向费师兄家属捐款事宜

2010年5月18日 Solrex Yang 没有评论

不了解此事件的,参见这个链接

消息来源:南大数学 02 级原年级长博客

关于向费存林同学捐款的办法,国内,请发信至 dean1873@gmail.com 获鼎处了解账号的相关信息,为了安全起见,不公布账号。

北美的同学,请寄支票到我处
139 Running Farm LN
Apt 104
Stanford CA 94305

支票寄出后,请给我电话确认。

捐款会在 6 月底结束。

本来我没想转发这个捐款的消息,但是我今天遇到一个和我联系的陌生朋友居然也认识费师兄。我想也许有一些有心想帮助费师兄家人的同学和朋友不能从 gookbaby 博客上了解这个信息,所以在这里我算尽一份自己的力量吧。

惊闻一师兄轻生

2010年4月21日 Solrex Yang 9 条评论

昨天下午我在忙着提交答辩申请书的时候,忽然听到有人说我们宿舍楼有一个师兄跳楼自杀了。当时惋惜了一会儿,心想恐怕又是哪个心理变态的导师给逼的。

今天去打篮球的路上,忽然接到获鼎师兄的电话,问我知道费存林师兄吗?我当时没反应过来,说见过一面但是对不上号。获鼎问我知道不知道昨天发生的事,我才忽然被震惊了——昨天自杀的师兄姓费!

多方找人询问,了解到真的是在南大数学系时高我一届的师兄。我刚来中科院的时候,这上一届的师兄还一起请过我们吃饭,唉!

其实我很能理解费师兄的压力,中科院这种地方就是惟科研至上的地方,你发不出论文,想不出 idea,在导师眼里你就是一无能的废物,而且不能正常毕业给他丢脸。在我没有论文的时候,天天都似有一块大石压在我的心头。最苦闷的时候我脑中也曾飘过轻生的想法,但幸好还有那么多关心我的人让我觉得这个世界还有很多温情,不像毕业条例那么冷酷。

费师兄才博士二年级,按理说不是最敏感的时候,毕竟还有一年。而且这里四年五年毕业的也不是没有,三年毕业反而显得有点儿反常。但是我想费师兄一定面临着我们想象不到的压力,才会做出这样的举动。

无论如何,我对师兄的离去表示哀悼,并祝福他在天堂安息!

我将看看能否给他的家人提供什么力所能及的帮助。其实受损失最大的是他的亲人们,好好的一个孩子就这么没了,恐怕他们很难接受。

支持多浏览器的网站变灰方法

2010年4月21日 Solrex Yang 2 条评论

这篇文章中给出了针对 IE 浏览器的使网站变灰的方法,具体做法是在 CSS 文件的开头添加这样一行:

html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); }

但是很遗憾这种方法并不能支持 Firefox 和 Chrome。这篇博客介绍一种支持各种浏览器的网站变灰方法,试验其支持 Firefox、Chrome 和 IE,据说可以支持 Opera(未测试),方法比较简单,就直接介绍步骤了。

1. 到这里下载 grayscale.js 文件到你网站的根目录(或者也可以不下载,直接引入该 js,未测试)。

2. 在网站的 footer 或者 header 等全局的文件中插入以下代码(注意,$() 和 .load handler需要 jquery.js 的支持,不使用 jquery 的同学可以自行搜索解决标签查找和 window onload 事件处理问题,例如这里这里):

<script type="text/javascript" src="/grayscale.js"></script>
<script type="text/javascript">
$(window).load(function () {
  grayscale( $('body') );
});
</script>

该方法的缺点是:

1. 页面加载完后才对整个页面进行变灰操作;
2. 在非 IE 浏览器中不支持来自其它域名的网站图片的变灰;
3. 造成非 IE 浏览器在加载完页面后进行大量 js 计算,该计算负担可以通过仅变灰 img, a 等标签而不是 body 来优化。

我的京东换货经历

2010年4月4日 Solrex Yang 3 条评论

京东上也买过不少东西,这两天第一次体验了京东的售后客服,如实记录一下经历:

2010 年 4 月 2 日 22:09,在京东下了买电熨斗的单;

2010 年 4 月 3 日 08:39,收到订单已到达自提点的手机短信通知;

2010 年 4 月 3 日 10:55,在石景山自提点付款提货(必须先付款才能检查物品),拿到货物检查发现有问题,电熨斗有明显使用过的痕迹。当场提出换货,被告知自提点只负责提货,不负责售后,需要自己回去与客服联系;

2010 年 4 月 3 日 11:44,由于网上订单仍然显示未完成,无法提交返修申请,于是拨打京东客服 400 电话询问了一下情况,客服小姐的回答仍是等订单显示完成后在网上提交返修单;

2010 年 4 月 3 日 15:56,网上订单显示已完成;

2010 年 4 月 3 日 16:26,提交返修单,返修类型:换货,问题描述:电熨斗被使用过: 1. 电熨斗水箱内有残留水珠; 2. 电熨斗尾部下方支撑脚有磨损和污迹; 3. 电熨斗中部塑料转盘有破损; 4. 电熨斗插头周围有污迹;

2010 年 4 月 3 日 16:54,收到返修已生成换货新单的手机短信通知;

2010 年 4 月 4 日 09:46,接到快递电话,更换了新品。

说实话,事情顺利地挺出乎我意料的。因为从论坛上还有其它网站看到很多对京东售后的抱怨,本来有做好长期抗战的心理准备,没想到那么容易就把问题解决了,这件事情的处理我还是很满意的。当然,这只是个案,我只如实记录个人遭遇,不参与对京东客服整体质量的讨论。

那些搅屎棍儿们

2009年8月13日 Solrex Yang 3 条评论

最近在社区或者列表里闲逛,总发现有一些有意思的人,他们根本不懂自己在讨论什么东西,却像行家一样置评,还纠缠不休,像搅屎棍似的,搞得让人抓狂。特摘录几个,以飨大家:

1. 我的朋友王聪的博客

... 谁知道这人怎么回复?第一条回复是问我是不是在说判断endian的技巧?扯淡!你自己的留言什么意思你自己不知道?!第二条回复中他似乎意识到自己前一个回复很白痴,于是补了一句Linux内核中没有。放屁!它有才怪呢!它凭什么要有?!貌似他们家的C语言技巧都是出自Linux内核!一个人能傻到这种地步真的挺不容易的!

别慌。他还能继续向我们证明他更傻呢!这个人在链接中给出了这么个地址,稍微有常识的人都看的出来,那是一个patch,那个patch的作者是Changli Gao,我review了这补丁,认为可以接受,然后Linus回复了,回复的意思也很简单,他不喜欢那个patch,他解释说如果用户程序能触发这个问题就说明你那程序是一坨shit。稍微有常识的人都明白这话什么意思:Linus只不过是借虚构的“你那程序”来说明这个问题不应该在内核中修复。而精彩的事情这时发生了!lovecreatesbeauty@gmail.c0m同学成功地把这话联想到了Linus所说的“你那程序”就是我写的程序!太伟大了!真不知道这人上小学时语文怎么学的?!估计他的语文老师看了都会气得跳楼自杀了!唉,语文没学好也就罢了,你找找整个邮件的存档,看看里面到底有没有shit程序啊。问题是他连找到没找就脑残式地下结论了。没找就没找吧,你仔细看看patch不行么?很不幸,他连patch是谁发的到看不出来!所以这个人不光脑残,眼也有问题,那么大大的一行Signed-off-by他看不到!!...more

2. Ubuntu 的 BUG tracker: Kubuntu 9.04 alpha6 panel corruption

#46 dotancohen wrote on 2009-06-14:

Are you trying to piss him off by any way that you can? You are not a developer, and you go around confirming and invalidating components, and playing ping pong confirmed/invalid with a dev. Then you make a remark like that?!? I personally am angry at you right now. I need this bug fixed, and you are going to piss off the developer so that he leaves us _both_ here to rot.

Go away. File a different bug, you have every right to as the dev implies that your issue is not the same as the OP (yes, that's me). Piss the devs off there. But let them do their work here and help those of us who appreciate it. ...more

简单地来说,就是开发者把该 BUG 标记为 Invalid,说该 BUG 应该是属于 Driver 的 BUG,有个用户不满意开发者对 BUG 的处理,就跟开发者对着干,开发者标记为 Invalid,他重新标记成 Confirmed,开发者开启一个新 BUG 报告,他去给人家改成 Invalid。一般来说修改 BUG 的状态应该是开发者来做,用户可以提交 BUG,assign 给某个开发者,但是不应该修改 BUG 状态,这是一种非常不礼貌的行为。一个用户一般情况下不可能比开发者对目标系统了解更多。

3. WordPress 2.8.x(x<4) 的一个密码重设漏洞

From: laurent gaffie < laurent.gaffie_at_gmail.com >
Date: Tue, 11 Aug 2009 01:11:07 -0400

Mr Fabio,

You dont even understand the bug, so please shut the hell up.

2009/8/11 Fabio N Sarmento [ Gmail ] < fabior2_at_gmail.com >

> if this is an bug, please close Twitter.com, MSN.com and other services,
> because they have the same stupid "Reset password" service.
>
> So please make my day, and create a stupid script to flood with mutiple
> request to reset password. ...more

翻译过来就是,某个人发现了一个 WordPress 2.8.x(x<4) 的密码重设漏洞,报告了出来。有个人评论说:“如果密码重设是 BUG 的话,那么所有网站都有 BUG 了,你没事干就写点儿傻逼程序去到处重设别人的密码吧。”然后报告漏洞的人就无奈了:“你根本没有理解这个 BUG,那么就请闭上你的臭嘴吧。”过了两天,Wordpress 就紧急发布了新版本 2.8.4,fix 了这个 BUG。

于是,我现在非常理解为什么 Linus 大神说话经常那么难听了,要是我成天跟这种人打交道,我也会抓狂。

有些人根本不了解和别人交流、在社区中交流应该遵循什么样的礼仪,应该使用什么样的方法。我遇到过的不礼貌行为包括(但不限于):不去搜索 BUG 列表和邮件列表,一遍又一遍地提出重复的问题;有 BUG 列表和邮件列表时,还直接与开发者联系,或者只 reply 开发者,不知道 reply all 到邮件列表;提交 patch 时,不知道如何使用 diff 和 patch 工具,而是直接提交整个文件;描述 BUG 时,不提供 BUG 出现的环境和步骤,就来一句“xx出问题了”。尽管有时候我都懒的搭理这些人,但是我不想被别人认为是一个没礼貌的人,所以我都尽量回复,但的确心中很不爽。

我希望那些想要在社区中和别人讨论、交流并想赢得别人尊重的朋友能够多了解点儿社区交往的礼仪,起码应该去了解点儿入门的知识,免得遭受挫折打击积极性,反倒以为别人非常不友好不礼貌。推荐的基本资料包括:

1. 如果您想在邮件列表或者社区中提问,那么请首先阅读 “How To Ask Questions The Smart Way ”,中文翻译《提问的智慧

2. 如果您想提交软件 bug, patch, feature request 并想得到开发者的尊重和重视,那么请首先阅读“The Art of Unix Programming” 第 19 章的“Best Practices for Working with Open-Source Developers”。

车祸及好心大叔

2009年7月3日 Solrex Yang 7 条评论

今天我在保福寺桥北发生一场小型车祸,一个逆行的中年妇女将我的前轮撞成了弯的,这是我第一次体验轮子被撞弯的感觉。由于着急赶校车,而且想着两人撞车没有倒没有伤已经很幸运了,所以也没有纠缠谁的责任,道歉两句各自走开。

总之有不幸有幸运吧,碰见一个骑车路过的特别好心的大叔,帮我在路边石上把车圈揉了揉,勉强能推走。我是不是该感叹一下北京人民的热心肠呢?当看到一个小伙子对着被撞弯的自行车发愁时,能停下车来帮忙,我认为是件很了不起的事情。

后来过四环路时,在红灯后又碰上这位大叔,他看我着急赶路,还一把抓过我的车把,要边推车边载我走。我费了好大劲向他解释说我就到前面天桥,他才没有再坚持载我。这位大叔是我出门在外遇到的陌生人中最最好心的一个!!!

我当时也带着手机,真后悔没有把这位大叔拍下来,好歹也留个纪念。在这样一个邻居、同事都形同陌路的社会里,碰到这么一个古道热肠的大叔,对我有着莫大的震动。也许我以前把这个社会想得太坏了。

Lies My Teacher Told Me

2009年5月26日 Solrex Yang 11 条评论

最早是从笑来的博客里看到这本书的信息,而目前从搜索结果来看,在中文世界里评论这本书的也只有笑来老师。

Lies My Teacher Told Me -- Everything Your American History Textbook Got Wrong》是一本关于历史的书,讲述的是 James Loewen 教授对美国高中历史教科书中对某些美国历史人物、事件和社会形态的故意遗忘、粉饰和错误解读的批判,以及对高中历史教师未能引导学生正确对待和学习历史的原因和结果的分析。

在这本书里,您可以了解到许多惊讶的事情:

为什么历史书里对海伦·凯勒幼年与疾病抗争的故事褒扬之至,却鲜有提及海伦·凯勒长大以后成为了一个什么样的人?因为海伦·凯勒认为视力和听力丧失的悲剧往往发生在那些因贫困而无法给予孩子及时治疗的家庭,为了消除社会不平等引发的罪恶现象,她长大以后成为了一个激进的社会主义者。

感恩节真的起源于欧洲移民邀请印第安人一同庆祝丰收的活动吗?答案是否定的,印第安人从来没有见过这样的宴会。感恩节只是乔治·华盛顿从东印第安人庆祝丰收的传统节日中借来的,而且直到1863年南北战争时美国才开始现代的庆祝活动。

相信大家都熟悉这句话“all men are created equal and independent”,并且有“life, and liberty and the pursuit of happiness”的权利,它来自一份伟大的政治文件——《独立宣言》,但是签署这个伟大宣言的先驱者们,乔治·华盛顿、托马斯·杰斐逊,他们蓄奴吗?是的,他们都拥有奴隶,在写下上面那句话的时候,杰斐逊拥有 175 个奴隶。

此外还有很多故事,总之,这本书讲述了 something different,一个不一样的历史。不仅对美国的中学生来说是一个不一样的历史,恐怕对那些了解或意图了解一些美国历史的人来说,也是一个不一样的历史。但是,关键不在于这些故事,而是这些故事引发的思考。Loewen 教授辛辣的文字会让您读得酣畅淋漓。

这本书我不是看完的,是在一个多月的时间里挂着耳机听完的,而且还在反复听(Recorded Books 制作的声音书非常非常棒)。在听这本书的时候,我很怀疑一个问题:为什么这本书没有被翻译并引进?从这本书的内容来看,正好让“不明真相的群众”认识到一个经常对其它国家指手划脚的 international good guy 的真面目。但是后来我想了想,中国人非常擅长的功夫中有一条——影射,比如“清风不识字,何故乱翻书”之类,如果读者从这本书中描述的国家联想到其它国家,可能是一件非常不幸的事情。

关于燃油税影响的一些疑问

2008年12月3日 Solrex Yang 5 条评论

以前副修金融学的时候曾经学习过南大商学院编的宏观和微观经济学,萨缪尔森的《经济学》也曾读过一半,最近在选择床头读物的时候又开始翻起曼昆的《经济学原理》。

人对经济学的喜好程度,大概跟他对现实的接受程度有关。那些对现实社会中的规则抱着宽容的理解态度的人,往往更能接受经济学中对“理性”的假定而不至于对一些经济行为和规则产生反感。比如“多收了三五斗”并不能代表农民总收益会增加这一经济事实,叶圣陶可能就未必能理解。

昨天晚上我看到一节内容,有关税收归宿的问题,联想到当前的形势,产生了一些疑问。

曼昆在书中一个小节讨论了税收归宿与弹性的关系。当对某一种物品进行征税时,无论税收的直接对象是谁,该物品的买者和卖者总是会分担税收负担。因为税收总可以通过价格的调整转嫁到另外一方身上,只是税收归宿的比例会有所不同。他指出一个关于税收负担划分的一般结论:税收负担更多地落在缺乏弹性的市场一方身上。当对某商品征税时,弹性小就意味着该方当条件不利时不能轻易而举地离开市场,从而必须承担更多的税收负担。曼昆在书中举了一个例子有关奢侈品税的例子:

在 1990 年美国国会开始针对游艇、私人飞机、皮衣、珠宝和豪华轿车这类物品征收奢侈品税,其目的是增加那些承担税收负担最轻松的人的税收。由于只有富人能买得起这类奢华物品,所以这看似是向富人征税的一种合理方式。

但是考虑到游艇市场,游艇的需求是极其富有弹性的,百万富翁不买游艇是很容易的,他可以选择花钱去买更大的房子,去度假等等。但是对于游艇的供给在短期中却是非常缺乏弹性的,因为游艇工厂不能轻易而举地转为它用,游艇工人也不好去更换其它职业。根据上面的理论,由于富有弹性的需求和缺乏弹性的供给,税收负担必然大部分落在供给者身上,进而大部分落在游艇工厂主和工人身上。因此,奢侈品税的负担落在中产阶级身上的部分比落在富人身上的部分多。最终,美国国会认识到了这一困境,在 1993 年免除了大部分奢侈品税。

我的疑问是,当前政府要考虑开征燃油税,那么税收负担的划分可能会是什么样子?如果是按照弹性决定的话,那么到底是需求的弹性大还是供给的弹性大?经济学中讨论的是自由竞争的市场,那么当市场是一个垄断市场的时候,税收负担的划分又会是什么样子?

我还不明白的是为什么某些无车族仅仅因为对有车富人的不满心理对燃油税的征收叫好。我觉得从需求的弹性来讲,私家车主对燃油的需求弹性明显要高于出租车司机、长途汽车主和公共汽车公司,当燃油税高时私家车主可以很轻松地选择少开车;相反出租车司机、长途汽车主和公共汽车公司对燃油的需求是缺乏弹性的,当燃油税高时他们不能把车闲置到一边不开了。再加上他们有比较大的需求量,那么他们就会承担更多的燃油税。当他们承担更多的燃油税时,势必会将部分税收转嫁到消费者身上,也就是我们这些无车的民众了。公共汽车可能有国家补贴不至于涨价,但长途汽车和出租车票价上涨可能是必然的结果。对于一个小老百姓来讲,需求弹性就更低了,我们总不能因为票价上涨就不出门了吧,很可能是我们比以前要承担更重的税收负担。因此我觉得燃油税不是和我们没关系,而是有很大关系。但是这个问题可能还需与环境等其它社会问题同时考虑。

古人都说“学以致用”,以上是一个经济学的门外汉对当前社会一个经济问题产生的一些疑问和不成熟看法,如果读者中有哪位兄台能够指点迷津,请不吝赐教。

Math in CS: 数论和公钥密码学

2008年6月13日 Solrex Yang 2 条评论

1940年,英国数学家哈代在他的一本小书《一个数学家的辩白》(A Mathematician's Apology)中说:“如果有用的知识是这样的知识(我们暂时同意这样说):它大概会在现在或相对不远的未来,为人类在物质上的享受方面作出贡献,因而,它是否在单纯的智力上满足人们乃是无关紧要的,那么,大量更高级的数学就是无用的。现代几何和代数、数论、集合论和函数论、相对论、量子力学——没有一种比其它的更经得住这种检验,也没有真正的数学家的生涯可以在这个基础上被证明是有价值的。”但是我们会看到,哈代这个断定在当时“不远的未来”几乎被一一证明是错误的,数论就是其中一个。

在 1970 年代以前,人们所知道的密码学都是对称密码学,就是在加密和解密过程中需要使用同一个密钥。在那个时代,一些密码算法已经能保证足够的安全性,比如数据加密标准 DES。但是人类的需求是很难完全得到满足的,他们为每次密钥交换的复杂度而苦恼,比如在战时如果密码本被敌方获得,就必须重新向无线电收发员分发密码本,这个工作量和代价是相当大的;还有一个需求就是数字签名,能不能用加密实现对数字文件的签名,像手写的签名一样,确保该文件出自谁人之手?

上述问题,就是 Whitfield Diffie 和 Martin Hellman 1976 年在他们那篇划时代的论文《密码学的新方向》(New Directions in Cryptography)中提出的,他们也给出了其中一个问题的解决办法,那就是 Deffie-Hellman 密钥交换算法(后来被改为 Deffie-Hellman-Merkle 密钥交换算法,里面还有一段小故事。)。但是 DH 没做完的功课,仅仅在一年后就被 RSA 解决了,那就是 Ron Rivest, Adi Shamir, 和 Leonard Adleman 的 "A Method for Obtaining Digital Signatures and Public-Key Cryptosystems"。RSA 的加密和解密使用的是不同的密钥,即公钥和私钥,你可以将你的公钥扔到世界上任何一个位置,我用你的公钥加密一段信息,除了你用自己的私钥解密,没有别的人能从中得到原始消息。就相当于你把打开了的箱子扔的满世界都是,但箱子一旦锁上,就只有你能再打开。

RSA 算法自其诞生之日起就成为被广泛接受且被实现的通用公钥算法,但是 RSA 算法还带来一个另外的意义,那就是:数论知识从未像现在这样被广泛地使用着。RSA 程序的普及率要远远大于 Windows,因为每台 Windows 上都装配着 RSA 算法程序,但 RSA 并不仅仅装配 Windows。每当你登录邮箱、网上银行、聊天软件、安全终端,你都在使用着数论带来的好处。而且相比之前密码学的字母替换和置换,混淆和扩散,DH 和 RSA 使用的东西更有资格说自己是数学。

大概也是由于其基于数学的简洁性,RSA 和 DH 算法描述要比 DES, AES 简练许多,我在这篇小文中都能写完。

RSA

RSA 用到了数论中的三个基本定理:费马小定理、欧拉定理和中国剩余定理(几乎处处都在),和一个古典难题:大整数分解问题。如果你是数学系的学生,对这些概念一定不会陌生。

费马小定理:若 p 是素数,a 是正整数且不能被 p 整除,则: ap-1 = 1(mod p)。或者另一种形式:ap=a(mod p),这种形式不要求 a 与 p 互素。

欧拉定理:对任意互素的 a 和 n,有 aΦ(n) = 1(mod n)。其中,Φ(n)是欧拉函数,即小于 n 且与 n 互素的正整数的个数。

大整数分解问题:将两个整数乘起来是简单的,但是将一个整数分解为几个整数的乘积是困难的,尤其是当这个数比较大的时候。迄今为止没有有效的算法来解决这个问题,甚至我们连这个问题的计算复杂度量级是多少都不知道。

那么 RSA 算法是什么样的呢?

密钥的产生:
1. 选择两个素数 p 和 q.
2. 计算 n = p*q.
3. 计算 Φ(n) = (p-1)(q-1) (这是欧拉函数的性质)
4. 选择 e<Φ(n) 并使得其与 Φ(n) 互素。
5. 确定 d<Φ(n) 并使得 d*e = 1(mod Φ(n))。
6. 这时候,私钥就是{d, n},公钥就是{e, n}。
加密算法:
假设 M 是明文(M<n),那么密文就是 C = Memod n。(为什么明文是数字?在计算机科学里任何数据最终表示都是数字。)
解密算法:
假设 C 是密文,那么明文就是 M = Cd mod n。

我们来证明一下算法是否正确,由于 Cd = Me*d = Mk*Φ(n)+1 (mod n)。

如果 M 和 n 是互素的,显然直接由欧拉定理我们就能得到:
Cd = Mk*Φ(n)*M1 = M (mod n) = M
说明算法是正确的;
如果 M 和 n 不互素,由于 n 是两个素数 p 和 q 的乘积且 M<n,那么 M 要么是 p 的倍数,要么是 q 的倍数,由 e*d = 1(mod Φ(n)) = 1(mod (p-1)(q-1)) 我们可得:
e*d = 1(mod (p-1)) 且 e*d = 1(mod (q-1))
则 e*d 可以写成: e*d = k*(p-1)+1, e*d = h*(p-1)+1
由费马小定理,我们有:Me*d = Mk*(p-1)+1 = M(mod p) 和 Me*d = Mh*(q-1)+1 = M(mod q)。
由于 p 和 q 均为素数,且 p, q 均整除 Me*d-M,所以我们有:
Cd = Me*d = M (mod p*q) = M (mod n) = M

从上面我们可以看到 RSA 算法实现了加密和解密使用不同密钥,而且证明了这个算法的正确性。但 RSA 算法要想实用,光有正确性还不够,最重要的一点是安全性,即从公钥{e, n}无法推导出私钥{d, n}。在 RSA 算法中我们可以看到,关键要知道 Φ(n),知道了 Φ(n),使用欧几里德算法就能求出 e 的逆元,就得到了用户的私钥{d, n}。要求出 Φ(n),就必须知道 p,q,但 p,q 是不公开的,仅仅知道 p,q 的乘积 n 去求 p,q,根据大整数分解古典难题,当 n 比较大时其分解在计算上是不可行的。这就保证了 RSA 算法的安全性。

而且 RSA 算法是可逆的,所以它就有能力同时实现加密和签名的功能。由于公钥是公开的,每个人都可以用你的公钥加密一段信息发给我,而私钥是保密的,所以只有你能看到别人用你的公钥加密的消息;而也因为可逆性,如果你用私钥解密一段明文(实际是加密),所有人都可以用你的公钥加密它来得到明文(实际是解密),因为私钥只有你一个人知道,这个消息只有可能是你发出的,就相当于你对这段明文做了一个签名。

DH 密钥交换算法

DH 密钥交换算法较 RSA 算法更为简单,它也是基于数论中的一个古典难题:离散对数问题。

离散对数问题:若 p 是素数,p 已知,考虑方程 y = gx mod p,给定 g,x 求 y 是简单的,但给定 y,g 求 x,即求 x = logg,py mod p,在计算上是不可行的。

DH 密钥交换算法的描述如下:
已知公开的素数 p 和 p 的本原根 α
1. 用户 A 选择秘密的 Xa<p,计算 Ya = αXa mod p,将其发送给 B。
2. 用户 B 选择秘密的 Xb<p,计算 Yb = αXb mod p,将其发送给 A。
3. A 和 B 分别计算 Ka = (Yb)Xa mod p 和 Kb = (Ya)Xb mod p,就同时得到了共享的密钥 K=Ka=Kb,然后就可以用 K 进行加密传输了。

DH 密钥交换算法的优点在于:双方在通信前不需要知道任何共享的密钥,而是通过公开的 p 和 α 协商出一个密钥来进行加密通信。

先看一下算法的正确性,Ka = Kb 是否成立:
Ka = (Yb)Xa = (αXb)Xa = αXa*Xb (mod p)
Kb = (Ya)Xb = (αXa)Xb = αXa*Xb (mod p)
Bingo! Ka 和 Kb 是相同的。

再来看一下算法的安全性,就是能否从公开的信息推导出 K 来:
由于密钥是 K = αXa*Xb,那么攻击者必须知道 Xa 和 Xb 才能得到共享的密钥 K,而公开的信息只有 Ya 和 Yb,由离散对数问题,从 Ya,Yb 求出 Xa,Xb 在计算上是不可行的,就保证了算法的安全性。

从上面两个算法我们可以看出,数论在公钥密码学中的重要地位,恐怕哈代当时怎么也想不到三十多年后人人都在使用他所认为在实际生活中毫无用处的数论吧!

北京欢迎你 MV

2008年6月9日 Solrex Yang 1 条评论

不要笑我啊,我真的今天才听到这首歌,起因还是别人说这个歌 MV 里有好多北京的景点。很喜欢!

虽然我一向不提倡强制访问者听歌,这次要破例一下,把它放在博客的侧栏最下方了,还是强制播放。谁要是不爽的话,在 2008 年 8 月 24 日之前访问我的博客首页时请启用禁止 flash 插件(单篇日志页不受影响)。

YouTube:

优酷:

北京欢迎你

词:林夕 曲:小柯 制作:陈少琪 小柯 余秉翰

片头:日出、捏面人、挂风筝、刷年画、太极拳、太庙

迎接另一个晨曦 带来全新空气——陈天佳(正阳门箭楼上,背景为正阳门城楼)

气息改变情味不变 茶香飘满情谊——刘欢(鸟巢)

我家大门常打开 开放怀抱等你——那英(德胜门箭楼,2008年4月13日)

拥抱过就有了默契 你会爱上这里——孙燕姿(北海公园白塔,2008年4月2日)

不管远近都是客人请不用客气——孙悦(普渡寺,2008年4月7日)

相约好了在一起 我们欢迎你——王力宏(中华世纪坛、书法,2008年3月20日)

我家种着万年青 开放每段传奇——韩红(北京大学未名湖畔博雅塔)

为传统的土壤播种 为你留下回忆——周华健(太庙,2008年4月8日)

陌生熟悉都是客人请不用拘礼——梁咏琪(国子监琉璃牌坊)

第几次来没关系 有太多话题——羽泉(皮影戏)

北京欢迎你 为你开天辟地——成龙(八达岭长城,2008年4月3日)

流动中的魅力充满着朝气——任贤齐(琉璃厂北京画店、折扇)

北京欢迎你 在太阳下分享呼吸——蔡依林(奥林匹克水上公园)

在黄土地刷新成绩——孙楠(国家大剧院)

我家大门常打开 开怀容纳天地——周笔畅(水立方)

岁月绽放青春笑容 迎接这个日期——韦唯(糊风筝)

天大地大都是朋友请不用客气——黄晓明(奥林匹克水上公园,2008年4月13日)

画意诗情带笑意 只为等待你——韩庚(画京剧脸谱)

北京欢迎你 像音乐感动你——汪峰(古观象台)

让我们都加油去超越自己——莫文蔚(社稷坛(中山公园)五色土)

北京欢迎你 有梦想谁都了不起——谭晶(四合院模型)

有勇气就会有奇迹——陈奕迅(天坛坛门)

北京欢迎你 为你开天辟地——阎维文(五棵松体育馆)

流动中的魅力充满着朝气——戴玉强(北京孔庙大成门)

北京欢迎你 在太阳下分享呼吸——王霞 李双松(什刹海荷花市场)

在黄土地刷新成绩——廖昌永(首都博物馆)

北京欢迎你 像音乐感动你——林依轮(茶道)

让我们都加油去超越自己——张娜拉(鼓楼上,背景为钟楼)

北京欢迎你 有梦想谁都了不起——林俊杰(湖广会馆大戏楼)

有勇气就会有奇迹——阿杜(湖广会馆大戏楼)

京剧:北京欢迎你,啊啊啊霍霍霍哈哈哈

我家大门常打开 开放怀抱等你——容祖儿(故宫)

拥抱过就有了默契 你会爱上这里——李宇春(火锅)

不管远近都是客人请不用客气——黄大炜(拨浪鼓)

相约好了在一起 我们欢迎你——陈坤(福到)

北京欢迎你 为你开天辟地——谢霆锋(故宫)

流动中的魅力充满着朝气——韩磊

北京欢迎你 在太阳下分享呼吸——徐若瑄(世贸天阶,2008年4月7日)

在黄土地刷新成绩——费翔

片中:长城、天安门、天坛祈年殿、九龙壁、故宫三大殿、抖空竹、长嘴壶茶艺、北京烤鸭、拉面、首都机场、北京城铁、立交桥、体育场馆

我家大门常打开 开怀容纳天地——汤灿(刺绣)

岁月绽放青春笑容 迎接这个日期——林志玲(故宫午门) 张梓琳(包饺子)

天大地大都是朋友请不用客气——张靓颖(剪纸)

画意诗情带笑意 只为等待你——许茹芸(浇花) 伍思凯 (瓷器)

北京欢迎你 像音乐感动你——杨坤(画桌前) 范玮琪(中央电视塔)

让我们都加油去超越自己——游鸿明 腾格尔 黄大炜 满文军 纪敏佳(老北京四合院)周晓欧(书法)

北京欢迎你 有梦想谁都了不起——沙宝亮(瓷器)

有勇气就会有奇迹——金海心 何润东(中央电视塔)

北京欢迎你 为你开天辟地——飞儿(北海公园五龙亭) 庞龙

流动中的魅力充满着朝气——李玉刚(国家体育馆)吴克群(老北京四合院)

北京欢迎你 在太阳下分享呼吸——5566(白塔寺) 胡彦斌 (老北京四合院)

在黄土地刷新成绩——刀郎(老北京四合院)

北京欢迎你 像音乐感动你——纪敏佳 屠洪刚 吴彤(老北京四合院)

让我们都加油去超越自己——郭容 刘耕宏(老北京四合院)

北京欢迎你 有梦想谁都了不起——金莎 苏醒 韦嘉(老北京四合院)

有勇气就会有奇迹——付丽珊 黄征 房祖名(老北京四合院)

北京欢迎你 有梦想谁都了不起——全体群唱

有勇气就会有奇迹——全体群唱

北京欢迎你 有梦想谁都了不起——全体群唱

有勇气就会有奇迹——全体群唱