Signal Messenger恢复发布服务器代码并集成加密货币

开发 Signal 安全通信系统的 Signal Technology Foundation 已恢复发布信使服务器部分的代码。 该项目的代码最初是在 AGPLv3 许可证下开源的,但去年 22 月 XNUMX 日停止发布公共存储库的更改,且没有任何解释。 在宣布打算将支付系统集成到 Signal 后,存储库更新停止了。

最近,我们开始测试 Signal 中内置的支付系统,该系统基于我们自己的 MobileCoin (MOB) 加密货币,由 Signal 协议的作者 Moxie Marlinspike 开发。 大约在同一时间,存储库中发布了一年来累积的服务器组件更改,其中包括支付系统的实施。

Signal Messenger恢复发布服务器代码并集成加密货币

MobileCoin加密货币旨在构建一个确保用户隐私的移动支付网络。 用户数据仅保留在他们手中,信号开发人员或基础设施元素管理员没有机会访问资金、用户余额数据和交易历史记录。 支付网络没有单点控制,基于共享所有权的思想,其本质是所有网络资金都形成为可交换的个人股份的集合。 网络上的资金总量固定为250亿MOB。

MobileCoin 基于存储所有成功支付历史的区块链。 要确认资金所有权,您必须有两把钥匙——一把用于转账的钥匙和一把用于查看状态的钥匙。 对于大多数用户来说,这些密钥可以从公共基本密钥派生出来。 要接收付款,用户必须向发送者提供两个与用于发送和验证资金所有权的现有私钥相对应的公钥。 交易在用户的计算机或智能手机上生成,然后传输到具有验证器状态的节点之一,以便在隔离的飞地中进行处理。 验证器验证交易并通过链(点对点)与 MobileCoin 网络中的其他节点共享有关交易的信息。

数据只能传输到已通过密码验证在 enclave 中使用未修改的 MobileCoin 代码的节点。 每个隔离的 enclave 都会复制一个状态机,该状态机使用 MobileCoin 共识协议将有效交易添加到区块链中以确认付款。 节点还可以扮演完整验证者的角色,它还可以在内容交付网络上形成并托管计算区块链的公共副本。 生成的区块链不包含允许在不知道用户密钥的情况下识别用户的信息。 区块链仅包含根据用户密钥计算的标识符、有关资金的加密数据以及用于完整性控制的元数据。

为了确保完整性并防止事后数据损坏,使用 Merkle Tree 树结构,其中每个分支通过联合(树)哈希验证所有底层分支和节点。 有了最终的哈希值,用户可以验证整个操作历史记录的正确性,以及数据库过去状态的正确性(数据库新状态的根验证哈希值是根据过去的状态计算的) )。

除了验证器之外,网络还具有观察者节点,用于验证验证器附加到区块链中每个块的数字签名。 观察者节点不断监控去中心化网络的完整性,维护自己的区块链本地副本,并为钱包应用程序和交易所客户端提供 API。 任何人都可以运行验证器和观察节点;为此,需要分发相应的服务、Intel SGX 的 enclave 映像和 mobilecoind 守护程序。

Signal 的创建者解释了将加密货币集成到信使中的想法,希望为用户提供一个易于使用的、保护隐私的支付系统,类似于 Signal 信使确保通信安全的方式。 密码学和计算机安全领域的知名专家 Bruce Schneier 批评了 Signal 开发人员的行为。 施奈尔认为,把所有鸡蛋放在一个篮子里并不是最好的解决方案,重点不是它会导致程序的臃肿和复杂,甚至不是区块链的使用是可疑的,更不是它是一种尝试将 Signal 与一种加密货币联系起来。

施奈尔认为,关键问题在于,在端到端加密应用程序中添加支付系统会带来额外的威胁,这些威胁与各情报机构和政府监管机构的兴趣增加相关。 安全通信和安全交易可以轻松地作为单独的应用程序实现。 实现强大的端到端加密的应用程序已经受到攻击,进一步增加反对程度是危险的——当功能结合起来时,对支付系统的影响将必然涉及端到端加密的功能。 如果某一部分死亡,整个系统就会死亡。

来源: opennet.ru

添加评论