阅后即焚小工具实现sesme.co

sesme.co是一个极简的阅后即焚WEB版小工具,消息完全由客户端进行加解密,服务端只存储加密的消息。
sesme.co加密消息可以设置消息的显示时间,一条消息对应一个唯一的url,一个url对应一个Token,Token只在用户端生成,后端无法获取,除非破解加密算法否则消息完全安全,只有用户自己知晓,消息一次访问有效,此工具灵感来自: delete.im以及开源的vua.sh 前者的前端样式比较酷,但是消息是以明文方式发送到后端服务器,有被劫持的风险,所以数据库可能是存储的用户原始消息内容。 后者的消息加密流程更加私密和安全,本工具sesme.co也是参考了两者且后实现的。

预览

sesme.co 前往https://sesme.co

原理

参考开源的vua.sh,消息完全在客户端加解密,减少消息被劫持风险,提高消息的私密性。 一条消息对应一个唯的token,token只存在于访问url片段中,不在请求中,用户消息利用开源的AES加密库进行加密后再发送至后端服务器,即使在发送过程中被劫持也是加密消息,没有token也无法解密,其原理大致是这样:

发送方

  1. 浏览器对消息进行加密并生成密钥
  2. 浏览器通过URL片段(未包含在请求中)传递密钥
  3. 服务器将加密消息存储在数据库中
  4. 浏览器通过将加密消息的唯一URL与密钥连接来显示消息唯一链接

接收方

  1. 服务器发送加密消息
  2. 浏览器使用URL片段中的密钥解密消息
  3. 如果密钥有效,则显示消息内容
  4. 如果密钥无效,则显示失效提示
  5. 服务器删除已读取的加密消息
开源的vua似乎用的ruby语言写的。
← 云图图床【YUNTU】-一个Wordpress新浪微博图床插件
一些关于视频解析API接口的更新 →
二维码

微信扫码关注公众号