哈Ha!
今天,我将讨论我们如何为Messenger开发交易混合器。 到目前为止,我将讨论整个概念。 我希望这对开发人员和那些对匿名性,数据保护以及密码库其余部分充满热情的开发人员都将很有趣。
简短的背景。 如您所知,我们的Messenger在其自己的区块链上运行,并在聊天室中实现几种加密货币的传输。 添加:钱包之间的连接是公共的。 因此,代币的对应和转移的事实在区块链上可用并得到确认。 但是有时候,可能会损害沟通(或资金转移)的事实! 每个人都记得三剑客和女王的吊坠,对吗?

我们的用户向我们指出,是时候消除这个“隐私漏洞”了。 因此,首先,我们从块浏览器中删除了消息事务和服务事务。 因此,普通用户现在不能确定两个数字之间的对应关系。
但是交易仍存储在区块链上,并且可以使用API检索其元数据。 因此,我们决定创建一个事务混合器,如果隐藏转移或通信的事实很重要,则可以将其连接。
工作原理:集合和共享
我们决定使用类似于流行的匿名加密货币的技术:Z-Cash,Monero等。
混合器在这里充当中介。 像我们的Messenger的任何用户一样,他将拥有自己的唯一地址。 当通过混合器发送消息或翻译时,一条记录将出现在区块链上,用户A向混合器地址进行了交易。
混合器累积消息和翻译,然后将其从其地址发送给收件人。 用户B不会从用户A而是从混合器接收消息。
使用该服务的人越多,其匿名性就越高。 当混合器有很多传入和传出事务时,很难跟踪用户A向其发送消息的地址。 另外,混合器将在内部钱包之间进行中间交易。
没有人可以信任
互联网上没有人可以信任,包括混音器。 因此,我们这样做是为了使中间人无法解密消息文本-仅解密收件人的地址。 这是通过对消息进行两次加密的事实来实现的。
经典发送机制
搅拌机发送机构让我用语言解释一下这个过程是如何发生的。
- 爱丽丝首先使用鲍勃的密钥对消息文本进行加密。
- 然后,他添加Bob的地址,并使用Mixer密钥再次对其进行加密。
- 混合器只能解密其一部分并获得鲍勃的地址。
- 之后,混音器将其地址添加到Alice的加密消息中,并使用Bob的密钥进行加密。
- 鲍勃在第一次解密时从区块链中提取消息,在第二次解密时他识别了发件人-消息文本。
但是,混合器知道发件人和收件人的地址,并且存在泄露此信息的潜在风险。 借助更高级别的网络妄想症,您可以使用包含多个混音器的系统来防御146%的攻击。
一些高级美食
我们的Messenger中的加密货币支付也可以通过混合器完成。 这将隐藏钱包之间的连接。 发送方指示传输量,地址和最大时间延迟,并且混合器分部分地和在不同的时间发送令牌。 它会收集多个用户的交易并在内部钱包之间进行交易,从而隐藏收件人和发送者之间的连接。

同时,加密货币将在他的钱包中存储一段时间。 因此,混频器将必须被信任。 为了使欺诈行为无利可图,我们将收取注册公共混音台的费用并进行评级。
混合器的创建者可以选择是否将其公开(所有人都可以使用),同时收取交易费用并获利。 或不将其注册到通用注册表中,那么混合器将变为匿名,但也不会从交易中获利。 对于那些想要自己配置服务的人(例如,公司员工的来信),这是一个选项。
如果我们成功实现了这个概念,稍后我将在同一主题上发表“技术性”文章。