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

发布于 / 教程 / 11 条评论

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语言写的。

转载原创文章请注明,转载自: LYLARES BLOG » 阅后即焚小工具实现sesme.co

  1. 博主现在有考虑开源吗

  2. 谁能替代你给我的怀抱

  3. 发广告

  4. 这个做的真的超级棒!

  5. 做得非常好!

  6. 动画和细节方方面面安排的很好