Shell's Home

大家帮我验证一下证书

Dec 28, 2011 - 1 minute read - Comments

今天一个朋友和我聊天的时候,问我,是不是hosts不安全。我说,都不安全。翻墙的话,必须对翻墙服务器的拥有者相当信任才可以。不但要相信人品,而且要相信技术,相信服务器不会被入侵。使用gae的话,服务器要自己组建,否则你无法确定组建者是否会修改代码,加入监控代码再上传。hosts引入的问题是,你自己对自己进行了一遍dns毒化,如果目标本身是错的,你就傻乎乎的跳到了一个攻击者的机器上,而且你的行为使得域名核查不能阻止你犯错——他们也认为这个机器拥有你要去的domain。 不过有意思的是他给出的一个例子: https://199.59.149.208/ 这是用于访问twitter的一个hosts。 https://twitter.com/ 问题是,两者的授权是不一样的。我在《论不同系统和客户端的证书管理》里面说过,如果你访问google的时候发现证书是cnnic签署的,你是否觉得可怕。而这次,我发现hosts的证书是GeoTrust签署的,但是我访问twitter的证书是VeriSign签署的。 一家网络公司会找两个不同的供应商签名么?我不清楚。chrome的自动验证对这个无效(所以很危险),因为域名和ip对不上。我试过用openssl验证,但是debian的openssl有个bug,我用CApath无法验证任何证书,包括真实的twitter证书。所以我也无法解答这个问题。从IP上看,这个IP到确实是Twitter的。 NetRange: 199.59.148.0 - 199.59.151.255 CIDR: 199.59.148.0/22 OriginAS: AS13414 NetName: TWITTER-NETWORK 不过这不说明任何问题,完全有可能在路由器上把这一地址段定义到了其他设备上,从而实现man in middle。关键是证书——谁可以帮我验证一下这本证书是否有效?

密码三文的补充

Dec 27, 2011 - 1 minute read - Comments

前两天写了两篇关于密码的文章,其实没说什么,都是程序员的常识和经历。实话说比较有意思的是大家的反应。 一个是,大家为什么纷纷盯上了第一条?我在写的时候,主要考虑的最多的是第五条,就是网站本身方便盗窃其他网站资料,或者为网站本身提供便利。具体可以看某个投诉知乎的帖子。但是来的人几乎无一例外,都在和我讨论第一条。我不知道理由是什么,大家都觉得政府这么值得怀疑么?实际上,除非政府觉得你有资格收集密码,否则基本没有听说密码必须明文存放的潜规则。你想想,你在国内搭建一个小论坛,需要备份明文密码么? 上级要求明文密码的过程大概是怎么发生的?我听一个朋友聊天的时候说到,网管部门要他们系统上某个用户的密码原文,还必须是原文。当然,作为管理部门,是不需要解释原因的。他们表示,密码都是md5之后的。做不成,对方也没有什么表示。后来老板说,设计系统的时候,密码就用明文吧。从这个闲扯中反推,我大概能窥见事情是怎么发生的。不过神奇的是,这个简单的事情,怎么会发展成“网管部门有保存明文密码的要求”的,我描述的太模糊了? 另一个是无所谓的忧虑。我发现很多过来的搜索都是“哪家银行明文保存密码”,还有朋友加我gtalk问我google是否安全。实话说我觉得大家太多虑了,而且考虑方向还错了。与其考虑谁明文保存密码,不如先无良的假定“你们都是坏人,密码都是明文”。然后再想,我的钱是不是还安全?我的系统是不是还安全?我要不要关注这个安全?你指望对方设计的时候使用了hash,多重hash,salt,还不如指望自己的密码强度足够,而且符合使用规范。 密码是什么?从信息学角度说,密码是某个密码空间中的一个随机值。你和服务器约定,提供这个随机值,服务器就验证你的身份。从这个角度说,每两个实体间验证身份都需要一个独立的随机数,而且这个随机数空间还必须够大。现在的主要问题,是大部分人对这个值的选择太过有规律,太过简单,而且更危险的,对所有场合使用同一个值。如果真的需要使用同一个密钥,除非你的密码体系是公钥体系。否则即使是challenge-response模式,也有差分攻击这个问题。 另外顾虑google的那位朋友就有点神经过敏了。当年google退出中国的理由是什么?被攻击。作为一个被攻击后,事情没人知道的情况下,反应这么大的公司,无论如何比其他闷声不响的公司更加重视安全,也应当更加安全吧?你们知道索尼的网站也有密码泄露么?你们知道国内网站在这次之前有多少入侵事件么?在事情没有曝光前主动反应的,google是最大,最严重的一家。如果他不可信,我觉得要找另一家可信的公司就更困难了。

geek们在圣诞夜玩什么

Dec 26, 2011 - 1 minute read - Comments

24号,几个geek跑到我新家里面来玩,frank,ltn,thomas迟了一点,不过还是来了。gary跑来坐了五分钟。实话说,家里没这么热闹过,谢谢你们。 一帮geek在圣诞夜玩什么呢?首先是诈金花,我好像赢了一点——不过记得不是很清楚。我和猫咪不会打,ltn和frank会,老妈打了一阵就去烧饭了。然后是一顿很不错的晚餐——谢谢老妈。晚餐过后,我们开始摆弄数码相机,拍各种照片。我弹了一把吉他,好久不弹,都不会了。然后继续诈金花,同时电视里面在放哆啦A梦——用一台主机上的虚拟机里面的chrome放,这大概是整个客厅里面唯一符合geek聚会的东西。过了一会我累了,猫咪也困了,就中场休息,猫咪洗澡睡觉。 真正的geek聚会是在十点左右,猫咪睡觉/thomas到场后开始的。我们开始玩——愤怒的小鸟。不过我们不是打电脑游戏,而是用椅子摆了一个真实的物理模型,然后摆上我送给喵喵的猪头,和frank送我们的小鸟。每人五次,用小鸟打猪头。当然,猪头前面一般都是有一把椅子阻挡的。OK,这个——算不算Geek聚会的正常内容? 感觉geek就是一帮长不大的小孩,有点意思但是父母说不能玩的东西都要凑在一起玩一玩。不过以前多数是写程序,或者组装个硬件进行编程之类的事情。现在只是改成了组装愤怒的小鸟现场版而已。现场我们也没人在意战绩了,反正就是玩呗。 然后是例行的德州扑克大战——在weibo平台上面。我们原来在thoma家就是一帮人一起玩德州扑克的,不过现在地方没那时候大,来的人也不够多,所以不够热闹。我用电脑接到电视上玩,而其他人就各自用自己带来的电脑。四个人聚在一起互相打牌——这个有必要见面再打么? 然后?我困了,所以就收拾东西睡觉了。 第二天早上起来,我和喵喵就开始烧早餐——小馄饨。实话说这个简直外挂,不是我们自己包的,不用我们收拾。只是简单的找个锅子,烧热水,放下去,然后加冷水。不过有纪念意义的是,这勉强算是我和喵喵第一次一起做饭,也是第一次在新家烧饭。吃过早饭,大家继续德州扑克。猫咪用我的帐号输了好多,用会自己帐号就开始赢钱。可见根本没用心给我打——可恶。中午吃过点东西下午就去shlug活动了。 这次活动非常的吊诡,大家知道shlug的主题分享历来是比较正统,但是后面聊天就离题万里,OT到不知道哪里去了。今天我们分享的是bigdata,结果——我们会后讨论,OT了五六次,内容倒是很有趣,涉及了普朗克时间,玻尔兹曼常数,人类进化历史,中国和世界古文明史,世界宗教和基督教史,特种半导体技术,基因表达过程,蛋白质折叠计算。最牛的不是我们讨论了什么,而是每次都绕回到bigdata上面。只能说,今天的选题实在是太广了点。 好吧,一篇流水帐,没什么好多说的。geek每天的生活大概就和普通人一样。gary的车要去修,chaos要担心自家宝宝,ltn闹了肚子(不知道是不是和晚饭有关)第二天还要考试,thoma的老婆怀孕,圣诞夜还得陪着不能玩——哦,对了,她的预产期是明年,希望能生一个漂亮的小宝宝。 Merry Christmas,大家圣诞快乐。顺便——Happy new year。 PS: 照片我就不发了,大家看看这个得了。 http://shell909090.3322.org/shell/IMG_20111225_004833.jpg

关于今天六点到十点间无法访问的事情

Dec 23, 2011 - 1 minute read - Comments

别瞎猜了,我下班前写密码的文章时,想起自己的keepass里面有不少密码过期了,然后就更新了这些密码。结果把我的虚拟主机密码更新后,忘记在config.php里面跟着更新密码,然后网站就挂了。 非常抱歉。

网络安全——你需要知道的东西

Dec 23, 2011 - 1 minute read - Comments

首先,我也不是专家,如果里面有什么错漏,欢迎补充。补充和转载请注明我的blog: http://shell909090.org/blog/,我会根据你的发言在上面直接修改,没同步过去可不赖我。 要安全的使用网络/服务,你所需要注意的头两个问题就是你的安全级别和客户端的安全级别。对于零级密码,你随便在什么客户端上输入,都没有关系的。但是网银之类的最高级别密码,你不能在不可信机器上输入。什么叫不可信?别人的机器,你要相信这个人的技术和人品。自己的机器,你要在上面装了杀毒软件,没有执行过各种奇怪的程序/小游戏。这才叫可信的终端。如果你的密码在别人机器上用了,回来马上修改密码(不要在对方那里修改,没意义)。最好的方法,就是找一台旧电脑,专门装一个系统,装杀毒,用来使用网银和各种安全应用。别用深度定制版的操作系统,别人用过就重装。 当然,大多数的人都觉得,这样好麻烦啊。好吧,你可以无视这条规则——只要你对下面的各种病毒隔离和恢复措施做的够到位,对自己的技术够自信——至少我还没有这个自信。或者你可以认为我在危言耸听,彻底无视我的建议。大部分的情况下,你都是对的。这些事情都是徒劳的白做工。不过很低的概率下,你会中招——自己考虑。 其次,不要使用不可信的服务/产品。这条的执行力度自己考虑。一家公司,曾经做过流氓插件,你用不用他的产品?一家公司,曾经被央视曝光,你用不用他的产品?一家企业,敢于劫持客户的数据,将内容替换成自己的广告,你用不用他的服务?很多时候,我们都是别无选择,只能听天由命。不过当你有的选择的时候,尽量使用名声比较好的公司的产品。也许你觉得——这个不重要。好吧,Who care是最大的无力。 接下来,你要注意你的个人信息。被各个地方窃取使用个人信息已经很无奈了,你自己再爆出去就是无语了。你有没有在开心上公布手机号?有没有公布自己生日?有没有写自己的邮箱地址?有没有说过自己的家庭地址?这些信息都会被用于社会工程攻击,例如伪装你朋友的邮箱给你的邮箱写信,说借我二百。。。别笑,从开心上很容易收集这样的数据,伪装和发送也很自动。 后面一点对一些普通人可能比较困难——你要区分什么是可以信任的,什么是不可信的。下面的事情你权当笑话去听,是否照做自己判断。 1.来电号码是不可信的,来电无法验证身份,短信和电子邮件也不行。如果你的一个朋友来电或者发消息说让你干什么事情,认证身份的最低办法是打回去。更加通用和安全的方法是共同知识验证——哎,大学的时候,我们隔壁宿舍摔断胳膊那哥们当时干啥摔断胳膊来着?伪装者怎么知道TM那倒霉孙子胳膊是怎么断的?通常人人上也不会说这个吧——除非丢的正好是人人帐号。 2.传票是邮寄到家的,公安局找你都是上门或者通过街道。如果有人电话给你说是某法院/公安局,你不妨要他的电话和部门名称,然后打114查号,再打过去。通常情况下,不管也行——真有问题他们会上门找你的。 3.网站什么都不能说明,即使那个网站里面有所谓的标识。例如qq.c0m(假如这个注册的出来的话)不代表腾讯,这个上面有人说你中奖一点意义都没有。即使来源真的是qq.com,那也不代表事情是真的。同样,靠谱的方法是要他的号码和部门,114查证后打过去。 4.400电话打过去都不可信,你要是打一个400电话,和打一个民居没什么区别。对方有个声音很好听的小姐接听,还有——请稍等,我为您转接一位同事——也一点意义都没有。号码来自百度也没意义。 5.用114电话比用百度的好处是,百度给钱就可以瞎排,这个都上央视了。114目前我还不知道有什么竞价排名的东西,所以你找一个电话多数都是靠谱的。注意,这个不绝对。 6.手机这东西少借给别人,尤其是不熟悉的人。里面多个窃听器发信器你都不知道是谁干的。现实中没那么玄乎,也就是拿你的卡号申请动态令牌,申请前找你借五分钟手机而已。 7.软件怎么判别是否可信?通常来说,敢开源的都是比较可信的,毕竟里面干了些什么大家都看的到。闭源的软件和服务就看你是否信的过这家公司了。 8.对于别人推荐的玩意,尤其是朋友推荐的玩意,你最好确定一下确实是本人推荐的。即使是,我也保留的打开——技术上说,就是专门找台机器来运行。 9.有的时候,要敏感。你打给一家订票网站,他们需要你的身份证和信用卡号,给不给?实话说,这是个风险,而且不小。很多人的问题不是评判失误,而是根本没意识到这样做的风险。要知道,目前一代身份证还没有完全废弃,万一对方拿你的身份证号伪造了一张身份证,然后申请重置密码之类的事情。虽然能不能成两说,但是这两个号码同时泄露给一家网站总归是个风险。同样的还有携程——去年我曾经向他们的客户经理投诉,他们的电话语音系统居然要我人工报卡号,身份证之类的。我说如果是电话输入系统还好说,人工操作万一你的接线员记下来怎么办?这个你能保证么?今年大家打携程电话去看看?虽然我没有完全信任携程,但是电话系统比人工系统的安全性总是高那么一点点——除非他们故意在设计时捣糨糊,明明是电话录入系统,还是能让操作员看到全部卡号。 其实万千方案归结到后来都是八个字,多听多看,谨小慎微。会来看这篇blog的都是多听多看的,那么只要谨小慎微就好了。哪怕这谨小慎微有的时候显得有点小人和扭曲——不敢用别人的电脑上自己的帐号,不敢打开别人给的软件,不给别人玩自己的手机。到底多谨慎,看你自己觉得自己多重要。要是觉得一人吃饱全家不饿,就算全国密码泄露也与你无关。如果你觉得自己还是有点身家,有些该坚持的问题上还是要坚持一下。 最后说一点无奈的事情。即使你上面的事情全部做到,有很多事情还是无可奈何。例如携程的问题,他们有一个业务是只需要输入卡号后四位就可以订票,很明显,这是记录过全部的卡号才可以做到的事情。如果他们的数据库泄漏,攻击者是否就可以直接从中划帐呢?外推考虑这个问题,你会发现所有输入过信用卡号的公司,无论他们是否可信,你都要假定他们保存了你的卡号信息。所以事情就只能信赖银行的信用卡系统,包括大笔消费警告,未经手消费复核,先行赔付等等。只有消费后能够复核的信用卡公司,才是可以信赖的公司。 PS: 另外做一点广告。全国各家涉密公司,如果你们不希望你们的管理员/操作员随意接触高级管理帐号,希望能够审查谁接触过用户账户信息,你可以用我们的系统。http://www.shterm.com/。我们目前做的是堡垒机密码托管,除了一个最高管理者外,管理员都不知道自己使用账户的密码是多少。同时,访问过用户账户信息会留下无法清除的记录,事后可以审查。 注意:普通用户上这套系统没用!

关于密码——你们不知道的很多事情

Dec 22, 2011 - 1 minute read - Comments

1.hash密码安全么? 只要你的原始密码不大复杂,hash密码也完全没有安全性可言。不信?echo ‘abc’ | md5sum,去www.cmd5.com,看看有没有。同样,拿你自己的密码试试看? 注:null同学对此提出了异议,表示这个网站的可信性也值得怀疑,不要输入你自己的密码。我考虑过后觉得有道理。从基本安全性上说,网站只能收集密钥,无法收集用户,所以密码泄漏的风险不大。从我个人来说,一个网站如果爆出hash泄露,基本等同于密码泄漏。所以本质上避免问题的方法是一次一密。但是鉴于国内很多网站还是直接使用了hash(尤其是md5)保存了密码,在这个网站上输入了密码等于将自己的密码加入了字典,从而减低了安全性。 在此,向所有被我忽悠的同学诚挚致歉。如果你在里面输入过密码,建议你将密码改为一次一密。即每个网站使用不同的密码。通常一次一密的同学不会再把自己的密码到这个网站上进行搜索了吧? 2.国内哪些网站不是明文密码。 我说出来你信么?再说,配合1,这个问题重要么?一次一密,经常修改才是王道,长度和频率看这篇文章《密码管理规范》。另外,现在记得去公布出来的密码表里面搜一下自己的密码。 3.一次一密就安全了么? 差了远了去了。你有没有在别人机器上登录的经历?你可以信任他么?你自己家里装的一堆插件你都相信么?你确定他们对你的银行密码没有兴趣?你要知道,银行开发安全插件的人和做恶意插件的人是同一个圈子的人——不会攻击就不能防范么。而且我们阴谋论一点说,你就确定这些软件商没有接到上级指令要求加入后门?现在你还敢在自己家里的机器上装中国软件么?QQ,迅雷,这些都算大软件,看着的人比较多。你自己可以搜他们抓你行为上传的文章——用谷歌搜。其他小站点的各种软件呢?你装了多少? 4.还有哪些比较低级的情况? 当年,有一个网站,提供一个功能。你可以在他的网站上直接登录其他邮箱。相信我,这可比这次的问题严重多了,那可是一收集一批阿。 5.为什么我以前都不知道? 要和你说我们有安全问题,你还用不用了? 再说我和很多人说起过这些问题,他们当年的态度都是——没关系,反正没人会对我的信息感兴趣的。我估计这次,还有不少人会说——没关系,反正我没有CSDN帐号/人人网上面的数据看到就看到咯。 很多人第一次知道安全问题的严重性,都是在他们丢了钱之后。往往都是莫名其妙,钱怎么丢的? 6.那银行呢? 银行还是相对安全的,不过你要确认银行有以下几个功能。登录失败警告功能。五次登录失败自动锁定账户,要隔天由本人解锁,解锁后最好强制更换密码。关闭网银和电话银行功能,不拿着本人身份证经过24小时以上申请不能打开。密码丢失需要一周以上的时间才允许重设。大额取款通知用户功能。 听上去很麻烦?通常来说,越麻烦的银行越安全。以上功能都有了,并且使用了,那么银行本身而言,还是比较安全的。 7.可是我要用网银。 那你用U盾,而且不要用水货版的。我07年选择招行的理由是,招行是唯一当时我觉得没有安全问题的银行。现在这个列表应该加入浦发,并成为首选——对linux友好而且不容易破解。但是不要用只有手机动态密码的模式。 有些U盾就是密码文件隐秘的放入的一个U盘,这种U盾我都可以复制出一堆来。用上这种U盾,最多满足你自己的心理因素。 而且,更好的方法是对信用卡申请网银,而银行卡关闭(如果银行支持的话)。这样的话损失最大不超过一张信用卡可用额度,我目前的信用卡而言,最多一次损失几千——总好过几万的学费吧。同类的思路可以选择支付宝,你一次打个1000进去可以用一阵,丢了只有这1000。 8.你知道U盾的正确用法么? U盾应该在需要的时候才插上去,用完立刻拔出。虽然说不像拆炸弹,不过还是插入时间越短越好。 因为很偶尔的情况下,入侵者刚好在看你的电脑。发现U盾后,可以指挥你完成登录的网银系统进行交易。但是网银交易必须以U盾为基础,拔掉他们就干不了坏事了。 9.为什么手机不是安全设备。 手机安全是相对的,只能说比电脑安全。你以为手机就安全?首先,智能机上面已经满足了恶意软件存在的基础。例如小米——虽然我很喜欢他——你确定雷布斯没有在小米里面加入后门,截取你的密码再偷偷转发?现在没有——以后呢?同样,你确定你信得过苹果?将来苹果也不会出现安全漏洞? 即使退一步说,你的手机很安全。来,把手机给我,不要看它,然后告诉我,手机里有多少软件可以读取你的本机信息,有多少可以读取短信?即使是完全安全的系统,我只要写个小游戏,号称因为需要短信分享,需要操作你的短信。你会怀疑么?我趁着你不注意,读取你的手机,和泄露出来的卡号-手机信息交叉比对。对你的卡号申请动态密码,然后让我的程序偷偷的拦下来短信,不让你知道,发送到服务器端。你是不是丢钱丢的莫名其妙? 相信这条写到这里,九成九的用智能机的朋友已经满脸汗了——妈的这些程序能读取我的银行卡动态密码?技术上说,真可以。 普通手机用户也别高兴,我没记错的话,GSM协议已经被破解了。就是说,我可以在你旁边拿个设备直接接受你能收到的短信。这TMD叫安全设备? 10.那你说的keepass? 这东西能在手机和电脑上运行,就肯定不安全。数据文件放在硬盘上的时候没问题,即使入侵者拿到也没办法。但是你输入密钥的时候有keylogger就完蛋了。 所以我只在linux和android上用,虽然android不安全,但是目前我还不知道有keylogger。 11.妈的,我还有什么安全的。 这个真没有,RMS说过,安全是个笑话。让用户来完成安全更是笑话中的笑话。当然,没有用户的安全意识,银行/网站再努力也没用。但是本质上说,应当以侵犯隐私去起诉泄密单位,而且应该打下来是巨额赔偿。 然后这个事情就会变成,各家单位纷纷表示,我们不对免费用户的信息安全负责,并且推出免责条款。然后又是扯不清的糊涂帐——如同我们今天的EULA一样。 只是在景德镇,你连操作第一步的机会都没有。还是用脚投票,放弃一些实在不安全的公司吧。例如业界很知名的某个做恶意软件出身的公司,还有某个买了这个公司的前身的大搜索软件商。某个以动物作为Logo的公司,还有被国家大哥曝光多次的某家公司。凡是业界已经臭了名声的,最好都别用。 12.日子还过不过了? 淡定,我明天还会写一篇,你要注意的东西。虽然不说一定安全,不过普通用用问题不大的。

密码为什么明文存放

Dec 22, 2011 - 1 minute read - Comments

很早就写过一篇blog,说到过,你的密码应当一次一密,至少某些密码泄露时不至于波及太广。结果这次CSDN不幸中枪。我不去讨论多少人急急忙忙修改密码,多少人数据泄露,单说说为什么很多时候密码是明文存放的。 就我有记忆以来,我写应用就从来没有明文存放过密码。最起先是md5方式存放。md5可以让你找到hash值,有的时候也会被用于穷举。但是无论如何,md5密码本身比明文安全很多。后来改成了challenge-response验证模式,也是用md5做的hash后进行c-r的。再后来,md5的碰撞冲突的论文出来,后面用的多数都是sha256了。从头到脚,我就没做过密码明文存放,并且,我认为这是正常程序员最起码的修养。(当然,明文存放的代码不是没有,不过那是调试模式) 但是现在我所知,很多系统的身份验证都是密码明文存放的,为什么?其实我不大理解。不过有时候问起,有些人和我说了几个我觉得不是搪塞的理由,现在抄录如下,告大家知。 1.不用明文密码没法应付检查。大家知道互联网审查,有时往往会一个电话过来,要XX用户的密码。如果你没法给出,上头就认为你不配合,事情各种难搞。作为审查机构的老板,当然没必要知道明文密码的危害。他们只知道,我要密码,为什么不行。所以,悲崔的程序员们就往往会得到一条死命令,保存明文密码。 2.压根不知道明文密码有什么问题。中国的互联网有太多的没基础的新人,从石头的缝隙中顽强的生长出来。这不是坏事,坏事的是这些人往往会在一些基础问题上出现奇怪的毛病。例如有些程序员,写程序很快,但是居然从来不知道密码明文存放会导致什么问题。更神奇的是,这些人中,有一家银行… 3.自信暴棚的混帐。有些人的自信总比别人强,而且强在莫名其妙的地方。例如:我的服务器肯定是没问题的,所以我的密码一定要明文存放。如果不,就是质疑我的技术。 实话说,这种人真是少数中的少数。 4.遗留系统。很多系统设计的时候因为某个其他理由,使用了明文密码。等后来这个理由不存在了,密码系统升级成了一个困难。因为密码系统太重要了,所以在没有太大利益的情况下,总是倾向于不修改系统。但是有什么足够利益来推动系统修改呢?用户安全问题在发现前不是一个问题——好比这次的CSDN,不是被暴出来的话就根本不会被当作一个问题。系统的管理者,每个人都没有足够的动力去修改系统。 5.世界的阴暗角落。有的时候,程序员/老板明文存放的理由,是为了方便盗窃用户其他网站资料。例如我所知的某钓鱼案例,你注册网站,就提供很多免费服务,网站看起来也很靠谱——除了后来突然爆出这家网站其实暗地中用你的生日/密码猜解信用卡/银行卡密码,大家才突然发现,这家网站其实根本没有在美国注册,而是一个听都没听说过的国家。 而且很多网站提供从其他网站导入之类的功能,更加的危险。以前经常爆出twitter密码被窃取,主要就是因为OAuth开放以前,twitter上的第三方应用需要提供原生密码,导致很多小应用的目的其实就是收集密码… 6.为了给用户提供方便。这个理由和上一个很类似,不过不是为了某些险恶的目的。而是客户经常要求——为什么我不能做XX事,为什么我不能blahblah。好吧,为了让你能,我们就必须保存明文密码。 明文密码的保存原因很多,不过结论都是一样的。在任何网站/服务上,你绝对不能使用同一个密码,零级密码除外。尤其请注意,不要在两家银行使用同样的银行卡密码/网银密码,原因不说。 从未来进化的角度说,密码的未来进化趋势是核心授权体系。就是你要向某个网站验证身份,只需要向身份验证商验证,剩下自动完成。现在的openid就是一种解决方案。密码都没了,还谈什么泄露呢?同时,实体交互和授权的精细划分也是一个趋势。某个网站访问别的网站的数据的时候,会形成一个访问令牌。这个令牌对需要访问的内容详细写明,并且需要用户授权。OAuth就是这个趋势的代表。另外一个趋势是利用某个足够安全的设备作为以上两者的终端载体。目前这个设备用的是手机,可是——手机不是一个足够安全的设备。也许这会是下一个XX门的隐患吧。 参考:《密码管理规范》

Py 有什么缺点?!

Dec 21, 2011 - 1 minute read - Comments

在 2011年12月21日 下午2:24,Zoom.Quiet 写道: > 在昨天内部分享交流中,俺回顾了 PyCon2011China 中透露出的 Py 最新使用/发展和体验; > 最后有同学问: > Python 有什么缺点!? > 直接HOLD 住了俺的思路… > - 是也乎!? > - 世界上没有完美的语言 > - Python 相比各种开发语言也有缺点,当然的! 可是,是什么呢?! > > - 没有 {} ? > - 不支持多CPU ? > 大家在学习使用过程中,对 Python 有什么失望的地方?! > - 兼听则明 现在不满意的,就是我们努力的方向.. > > PS: > - 俺现场憋出的回答是: > - 由于 Py 历史上积累的好用模块太多,会导致开发人员更加懒惰,不思进取,不论什么都可以直接搜出可用的现成模块来! – > 人生苦短, Pythonic! 冗余不做,日子甭过!备份不做,十恶不赦! > 俺: http://about.me/zoom.quiet > 文字协议: http://creativecommons.org/licenses/by-sa/2.5/cn/ > > – > 来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表) > 规则: http://code.google.com/p/cpyug/wiki/PythonCn > 发言: python-cn@googlegroups.com > 退订: python-cn+unsubscribe@googlegroups.com (向此发空信即退!) > 详情: http://code.google.com/p/cpyug/wiki/PythonCn > 严正: 理解列表!

小米手机入手体验

Dec 21, 2011 - 1 minute read - Comments

很好很强大 LTN和我说的时候,开头用的词就是,我的小米不打算卖你了。既然前面有“我的”两字,可见东西差不到哪里去的。入手之后感觉很好,起码比g2强多了(233)。我把一些直观体验说一下吧。 手感不错,性能优异 机器的手感沉实,屏幕贴上膜后手感流畅,g2上的光膜也很滑,但是偶尔沾水就阻力大了。小米的膜很少出现这种现象,而且触感很灵敏——当然,太灵敏了也是个问题,经常手不小心碰到返回键,然后程序就没了。 程序滑动很流畅,不愧是双核的。内存足够大,ROM也够了。我完全不折腾app2sd之类的问题,也不管内存回收,每个程序都跑的很流畅。这种表现让人用着很省心。 周边齐全 我到小米的官网上,看到了后盖,保护壳,贴膜,背贴,耳机,数据卡的官方销售。虽然和小米2000元的价位比,这些周边并不便宜,但是他们很方便。作为智能机爱好者,往往会买一些国外的水货机,这时你就知道我在说什么了。往往表面膜坏了,只能买第三方的膜,偶尔尺寸还不匹配。还有的时候线控坏了,买一个很贵,还不知道好不好用,有时候还没地方买。后盖摔坏了,也没地方配,只能去店里花大价钱修。这些问题,每个都不大,但是解决起来很麻烦,不解决很恶心。 一些问题 屏幕偶尔会卡死,大约三秒后恢复。猜测是双核cpu全部耗尽,导致失去响应。更进一步猜测,还可能内存耗尽——虽然看起来不大可能。 原配膜为了保证使用,尺寸精度相当精确,只要错一点,就没法贴上去。我自己贴了半个小时,结果满脸青春痘。没办法,只能出钱找了个专业人士。其实卖的时候,完全可以让客户选择贴好了发出来。 ROM版本控制的隐患 在一周的周期上,说这个并不合适。不过我入手后,ROM自动升级。然后就出现了有时突然没有信号的问题,只能重启。 我肯定这个问题不是真的没信号了。将手机切入飞行模式,返回后有一瞬间信号是恢复的,过三秒左右信号就没了。而且手机状态中有信号数据,但是手机打不通。这个问题反复出现,经常是在某处没有信号,重新恢复信号后就出bug,死活保持无信号状态。 按照我前一个手机的经验(G2),这个往往和手机的ROM或者基带有关。我前一个手机的所有ROM中,有两个有这个问题的,有两个没有。而按照网络上一个帖子的说法,楼主在降级后问题也消失。反复印证下来,推测很可能是因为最新升级的ROM有这个问题,而我升级后就出现了问题。 这个属于ROM版本控制和测试的不严密,在一周不到的时间内我无法确认这点。但是我希望不是,因为一旦是ROM版本控制问题,将来后续问题还会层出不穷。个个都是莫名其妙的出现,没有精力一个个的跟。

某日的一点小事

Dec 20, 2011 - 1 minute read - Comments

三四年前,尚在前一家公司上班。晚上加班到9点,坐9点半的末班车回家。从漕杨路开出没一站,还没到中潭路,我看到旁边有个MM,打扮入时脸庞明丽。奇怪的是,晚班车上人不多,座位都有空,她却不坐,只是在门口站着。晚上灯不好,看不出什么表情。再过一站,到了镇平路,这MM要下车了。迈开两步,不知道怎么回事,身子一软直接摔了下去。我当时就蒙了,什么情况? 开始我也没有反应过来,只当是MM一个步子不稳摔在地上,等到MM摔到了地上,一动不动,才发现情况好像不对。晚上加班,身无长物,对着一个MM也不怕抢劫。何况车上人也不少,又是封闭站台内。我当时一没结婚二没女友,多少还有点英雄救美的情节。刚刚打算去扶,MM却在地上抽了起来。这一下又把我吓了一跳,迈出去的步子也缩了回来。一个MM倒在地上抽搐,这——是什么情况? 那时已经知道了彭宇案件,车撞上老人是不敢扶的。可是事发突然,脑子到也没转到这方面去。反倒是在为什么抽搐上,我心存疑惑。是癫痫发作?有些外伤性癫痫会在年轻人身上发作,症状的却包括抽搐。还是毒品反应?毒品反正中好像没包括急性抽搐的。药物中毒?记得一氧化碳中毒或者氰酸化合物中毒都有抽搐反应。还是疾病?狂犬病和病毒性脑炎也有急性抽搐反应。大家别笑,在步子迈出去再收回来的一瞬,我真的想了数种急性抽搐的可能。想到癫痫,氰酸化合物,狂犬病,病毒性脑炎,这些词在脑海里盘旋。别的感觉没有,净感到害怕了,背上凉嗖嗖的。 然后,下面一个小女孩,抱住了倒下去的MM往外拖。我也不知道这个小女孩多大,我在看女性年龄上向来没有什么眼光,一倍左右的差距是很正常的。大概猜猜,最小不小于10岁,大的话,我知道某些30多岁的MM还是能冒充10岁小女孩的。不过身材较小毋庸置疑,刚刚倒下的MM个头不算大,小女孩却拖不动。我想想,是福不是祸,是祸躲不过。走上去,和小女孩换了个位置。因为还是害怕,也为了避嫌,没敢抱MM,直接从背后穿过腋下,抓起MM的两只上臂往外拖了一把,小女孩抬了一把脚,旁边也有个阿姨来托了一把。最后我们把这个MM抬出了车厢。 然后,就是比较让我放松的事情了。在站台上把MM放下,站台工作人员就走了过来。估计是刚刚看到了情况,和列车司机打了个招呼。MM倒下的位置正好在门上,要是关门,虽然不至于伤人,但也不是很恰当。工作人员看了看情况,一个小女孩,一个胖子(那时候还没减肥),一个50多岁的阿姨,把一个MM拖出来,看上去也不像是偷东西的样子(主要是小女孩衣着干净整齐,像是邻家小妹去补习班的样子,我也是一副死程序员的样子,还带着上班用的电脑包——他当然不知道包里面是空的,上海阿姨就更不说了,地球人已经不能阻止他们了),就没多留心我们,去查看这个MM的情况。小女孩和阿姨还是不放心的样子,继续陪着。我上班上累了,加上也怕麻烦,就回到了车上。不过一分钟,车就关门继续行驶了。 车门一关,事情抵定,中国人天生的好奇心和凑热闹情节就冒出来了。我想,顶好刚刚顺手去看看热闹,那个MM到底为什么倒下呢?但是转念细想,要是撞上麻烦,无论是惹上官司还是染上疾病,都很麻烦的样子。加上今天加班也累了,明天过来还要继续。也就随他去了。 这事情我一直没想起来,直到小悦悦的事情发生后,我才想起。在我过去的日子里,还有这么桩事情。也不知道那个MM是什么情况,怎么样了。小女孩为什么敢去帮忙,现在好不好。不过,这至少不是一个悲剧,无论从哪个角度来说。