通用密码字典(第三版)

一个更高级的密码字典。这个密码字典的不同之处在于通过收集实际使用的密码、过滤并使用密码强度评分排序,提高使用字典的效率。(前两版就内部消化掉了)

zxcvbn 库通过识别常见密码、代换、序列等组合,计算出密码强度,具有相当大的量化参考价值。使用 zxcvbn 密码强度来排序密码字典可以使实际应用更高效,由易到难,节约大量时间。

特点

  • 大部分来源于实际使用的密码
    • 常用高质量密码字典
    • 密码泄漏及社工库等
    • 没有包括用户名、邮箱等信息
    • 没有进行任何变换
  • 过滤无意义密码
    • 密码仅包含 ASCII 可打印字符及空格
    • 密码长度不超过 64 个字符
    • 密码强度 (zxcvbn(pwd).guesses_log10) 不超过 50(不同版本 zxcvbn 得出的强度可能不同)
    • 除去常见 hash、过长的网址等
  • 使用 zxcvbn 评分排序
    • 通过简单截断就可以得到更小的字典
  • 3.6G,348277374 行 …

独立使用 Tor 的流量混淆插件

Tor 项目中的传输插件 (Pluggable Transports) 一直以来都只用于网桥的防探测,避开网络设备的深度包检测。这些协议中不乏优秀的混淆或伪装算法,例如 obfs 系列以及 meek 等。而很多插件并不提供独立使用的接口,限制了它们的应用场景。

经过研究 Tor 的 Pluggable Transport 协议,我写了一个简单的包装脚本来将其实用化:https://github.com/gumblex/ptproxy

这些传输插件只负责传输 TCP 流量,必须要有实际应用服务器部署,例如转发 SSH、HTTP 代理流量。推荐使用 obfs4,并将 iat-mode 设为 1 或 2(隐藏发包的时间特征,服务端在第一次运行后修改 obfs4_state.json)。注意:有些传输插件并不带有加密,请仔细阅读这些插件的文档 …

Python 中文数字转换

都什么年代了连个好的 Python 数字转中文的程序都找不到。所以只能重新发明轮子了。

这个程序按照四位一组的划分,倒序拼写数字,准确处理补零、十几、小数的问题,支持大写、繁体、〇、两的写法,最多整数部分可达 48 位。由于浮点数型限制,长整数和小数应传入 int, Decimal 或字符串型。缺点只有不支持浮点数中的科学记数法(可以自己分段传入)。Python 2 只需将所有字符串改成 unicode 即可使用。

授权:WTFPL 或 Unlicense 或 CC0,即公有领域授权,想干嘛干嘛。Gist 链接

import itertools

def num2chinese(num, big=False, simp=True, o=False, twoalt …

文言文机器翻译

在线文言文机器翻译即日起开始试运行。这个本来去年年末就可以上线,但由于各种各样问题,只好在2015年第一天上线。现在系统还在各种微调、提高性能,会经常更新,统计模型也会不时更新。由于资源限制,翻译速度可能略,也可能出现各种错误。

这个项目从2014年5月起开始试验,使用了Moses统计机器翻译系统,逐渐完善了各种配套工具,例如文言文分词(基于结巴分词)、简繁转换、分句等。主要使用维基文库、维基百科数据建立了三元文言文、现代文语言模型。平行语料采集于几个文言文翻译网站,使用机器翻译辅助句对齐,目前共有约五十万句。

经测试, 这个翻译系统总体优于百度,特别是现代文翻译文言文;更优于简单查找替换翻译系统。但由于词库等原因,人名地名可能处理不好。总之,能用。

一点想法

墙外风起云涌,墙内风平浪静。想起刚订阅CDT的时候,每天都被这些存在但被掩盖的真相轰炸的心力交瘁,深深的失望,还有面对这些信息的无能为力。

自己不过是读者,那么那些真实经历过这一些的人呢?他们的失望,恐怕更甚。我一直支持明哲保身的观点,觉得有着优渥的工作和生活,还有一定社会地位的他们,为了民主和公平挺身算不上明智,但是,如果没有他们,如果没有人在与之抗争。也许这一切都会回到从前,带着未开化的麻木。

这些天,H*K的动荡变得难以掩盖,原来,人民军队的枪口,最终还是对向人民的。根据以往的经验,例如六*四,当民主的呼声被枪炮打断,中国就会陷入一个更加不公平,不民主的境地,可以想象的是,如果这一次,H*K的呼声被浓浓白烟镇压,中国最终只能回到那个未开化的年代,从此以后,民主的呼声越来越少,而我们敬仰的它,会用更暴力粗糙的方法掩盖真相,我们最终会活在一个“造”出来的世界中。

即使痛苦,拒绝对着真相视而不见,拒绝盲目,这是我的选择。

10月1日,祝祖国生日快乐。