花了不少时间写了一个邮箱项目,实现了我脑子里一直有的一个设想:有没有办法让小鸡交易更加安全且便利!
起源
众所周知,小鸡交易可以通过官方push、网站改邮箱、直接给邮箱等几种方式进行
- 官方push大多要收取服务费用,变相提高了交易成本
- 很多网站不允许改邮箱
- 一机一邮,直接给邮箱,但有时候会遇到骗子
有没有办法既安全又便利呢,让我们分析一下,直接给邮箱交易风险和门槛来自于哪里,有点长懒得看可以跳到我的解决方法
一个交易体系应该包括卖家、邮箱、买家三个元素(暂时不考虑中介参与)
情况1,卖家先货
当卖家给出邮箱的时候,买家可以修改邮箱密码,修改vps账户密码,卖家利益无法保障
情况2,买家先款
当买家给出资金瞬间,卖家可以跑路消失相对于情况1,更加难以保障交易可控
分析这两种情况会发现重点在于无论是先货还是先款,没有一个类似于定金的缓冲机制,导致交易一方可能因遭受诈骗而满盘皆属
我的解决方法
- 一个邮箱有两个密码,密码A和密码B
- 密码A只能通过密码A修改,密码A登录无法查看密码B
- 密码B只能通过密码B修改,密码B登录无法查看密码A
- 对于不能修改邮箱的情况分阶段先后给出密码
- 对于能够修改邮箱的情况,需要一起给出密码(回退到普通一机一邮交易)
下面分析不能修改邮箱的情况,这种情况是大多数
- 交易之前,卖家先给出一个密码A,买家拿到后把密码A刷新,这时候买家和卖家都持有一个读取邮箱内容的密码
- 如果买家想骗机器,卖家也可以修改vps网站密码,所以卖家和买家都不能正常用机器
- 如果卖家想骗钱,买家把钱给出后如果卖家不给另一个密码B,卖家也别想好好用机器
- 所以对于不能修改邮箱的情况提供了很大帮助,尤其是小额不想走中介的时候很有用
对于能够修改邮箱的服务,按照正常流程处理,给出密码时要给出一对,不能留后门
详细使用方法
对于不能修改邮箱的vps流程
- 卖家给出一个密码A
- 买家把密码A刷新
- 买家给钱
- 卖家给出密码B
- 买家把密码B刷新
对于能够修改邮箱的vps流程
和普通的一机一邮流程几乎完全一样,但是要一起给出邮箱的密码A、B,否则会成为后门
根据具体情况决定先机还是先款
邮箱本身的功能
- 快速创建临时邮箱
- 数据库定时备份到云端
- 去除邮件中的跟踪器,保护隐私
- 双密码设计
- 暂时只能收件,未开发发件功能
公测(已完成)
虽然已经对代码进行了多轮测试,但有可能有没有测出来的缺陷或者漏洞
今明天作为产品公测,有问题请多多反馈
感谢
本项目大部分代码来自于github,我做了很多修改:
- 将大部分没有用到的功能去掉,专注邮箱本身的功能
- 把cloudflare worker的代码重写到本地,避免被刷而导致服务暂停
- 融入我的双密码体系设计,修改前后端代码
- 加入更多的校验和安全限制,防止被恶意利用
- 修改一些不安全的设计,防止被xss攻击
- 产品化,修改了特别多不适合作为产品的细节设计
一点小建议,反复推演和编写代码花了我好多时间,希望大家嘴下留情,不要为了显示自己的“聪明智慧”而嘲讽评论
总要有一部分人为大家提供一些微小的帮助,如果有缺陷请客观指正,不要冷嘲热讽带节奏,有点担心这种寒心情况出现所以提前叠个甲
我个人觉得这个设计能够给很多交易打补丁,带来很多帮助,但并不是万能的,做力所能及的事情
后续
评论区很多用户对双密码模式表示了支持,也有部分用户提出了“主体是否足够信任,逻辑是否严密,成本问题”等反馈,感谢各位的讨论,这比我预想的效果好很多。
如果只是对双密码设计有疑虑,可以单纯当作一个临时邮箱使用,我们不追求所有人都接受这种设计,新事物需要时间来验证。这个邮箱在安全和可靠性上做了很多改进,后面会发几个技术帖子来分享给大家。