(其实就是一个如何安全地留遗嘱之类的程序。
通过互联网的使用行为来在发生不测之后发出通知的服务已经有很多了,比如早年的 deathswitch ,现在还有 Google 的闲置账户管理。但是,( 1 )平时将敏感信息寄放在这些服务上,让任何可能看到的人一眼就能看到,我并不放心;( 2 )登录上去,挨个更新给多个人的留言也不方便,( 3 )有些服务也限制了能发送的邮件的最大数量……于是见到各种缺点之后,我想到了这个用密码来加密存放信息的程序。
先说用法:
演示: http://area51.neoatlantis.info/demo.manjusaka.html
进入之后输入解密密码,有 3 个分类可选,密码如下:
test -> test
parent -> a3ejtdxnl3tula2gcfqvfz45o4b2mt55
friend -> 55kzqzupo4fzdbtexmr32rms5fhns45k
问题的答案,生日是1970-01-01
, ID 是0123456789ABCDEFG
.
这个程序最后会输出一个单一的网页,自带用来解密和显示内容的 js ,所以十分适合将网页拷贝给别人,或者——最好是——放到个人网站>个人简介之类的地方预先公开(避免出事情之后找不到)。
程序的主页在 https://github.com/neoatlantis/manjusaka
用git clone
之后,仿照sample-messages/
下的格式建立自己的messages/
目录,用 YAML 格式书写内容,之后用make
即可。需要browserify
和uglify
。范例目录中的_acl.yaml
有对参数的注释。
技术细节
访客来解密信息需要经过 3 个步骤:
为了保证兼容性,这个程序虽然只使用了对称加密,也用了openpgp.js这个库。程序生成页面时在本地用 gpg+对称口令加密各种数据,然后在网页里用 js 解密。
留言信息的解密密钥由 消息分类的密码 和 问答题的答案 组成:
#
的形式放置在通知邮件中。所以说到底,本程序也不仅仅可以用来留这么悲伤的消息了。也可以把其他的需要读者证明自己身份的信息放进来。
要例行声明的是:
因所述的密码方案未必成熟,不要马上把这个程序拿来加密自己的留言!
(然而我会在感觉合适了之后自己就这么做的,嗯。)
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.