【IPFS相关】KeySpace:使用以太坊和IPFS进行端到端加密
本文由IPFS原力区收集译制
KeySpace是一种无信任的端到端加密协议,作为AirSwap 空间的一部分启动。


我们需要什么

AirSwap是一种混合的链上/链外协议,需要协调离线对等消息和链上身份(以太网地址和私钥)。如果我在网上与一个声称拥有以太坊地址控制权的人聊天,我需要能够以加密方式验证他们是否说实话。
我们将这称为第一个需要链外/链上身份绑定
其次,由于默认情况下在线通信是公共的,因此在对等网络中彼此通信的参与者需要能够对其他人隐藏他们的消息,而不需要信任协调加密的中央权限(公钥注册)。
我们称这需要无信任的端到端加密
无信任的端到端加密可实现另一项所需功能。例如如果Alice正在向Bob发送消息,而Bob处于离线状态,则Bob应该能够在他重新上线时接收消息,即使Alice不在线上。这意味着第三方需要能够在此期间保留等待交付的消息。如果消息是加密的,除了Bob和Alice之外,没有人能够读取它们,即使它们是由第三方存储的。
我们称之为需要加密离线传送
要证明您控制了以太坊地址,行业标准是签署某人发送给您的挑战。您的签名可用于证明所有权。但是,如果您同时与许多对等方通信(就像AirSwap协议的设计一样),这需要持续的签名,这在使用MetaMask,Ledger或Trust Wallet等钱包时是一种单调乏味的用户体验。当使用纯文本私钥时,可以通过编程方式对文件进行签名,但这会使您面临被黑客攻击的风险。如果我们可以将我们的以太坊私钥保密到我们的钱包里,并且只将其验证身份的能力委托给另一个可以存储在内存中的私钥,我们可以在没有用户交互的情况下自动签名和解密消息,并且不会将资金暴露于更大的风险之下。
我们将这种所需的功能称为委托编程权限
随着最近AirSwap space的发布,我们已经将一个系统投入生产,该系统不仅满足了所有的这些需求,而且在安全性和方便性方面为任何消息传递服务的端到端加密设定了一个新的行业标准。

我们建造了什么

交换密钥空间:无信任的端到端加密服务
为了说明该系统中涉及的组件,我将展示它们如何一起工作; 密钥创建/恢复期间和加密通信期间。

密钥创建的工作原理如下:
1.用户签署其地址唯一的字符串以生成164个字符十六进制字符串。这称为标记种子。signed-seed用作加密PGP密钥对中的PGP私钥的私钥。
2.该应用程序使用openpgp.js库生成一个新的PGP密钥对,使用signed-seed加密。
3.用户使用加密的PGP私钥和PGP公钥存储JSON blob,作为IPFS上的固定文件。
4.然后,用户将IPFS散列存储在AirSwap PGP契约中,该契约将用户地址映射到可以访问其公钥的IPFS散列(并且可以恢复加密的私钥)。
5.一旦IPFS散列注册事务成功,用户就可以发送和接收加密消息了。
6.如果用户想要在新的上下文中访问他们的加密消息(即在另一台计算机上使用他们的Ledger钱包),他们可以使用他们的钱包签名重新生成他们的签名种子,并使用其签名种子解密存储在IPFS上的PGP私钥。
这是Alice和Bob在主动使用期间系统的运行方式:
1.在airswap.io上,所有直接的消息都需要加密,因此当Alice与Bob开始新的聊天时,应用程序会在合同上查找Bob的PGP公钥的IPFS散列。
2.在向Bob的以太坊地址发送消息之前,应用程序使用Bob的公钥加密消息。它还附加了用Alice的公钥加密的消息的副本,以便Alice可以在稍后解密发送的消息。
3.当Bob收到加密消息时,应用程序用他的PGP私钥解密它(在用他的签名种子解密之后)。
这样即使在分散的公共环境中也可以实现安全的消息传递,因为消息仍然是加密的。
使用此方法获得的主要用户体验之一是,为了访问其加密消息,所有用户只要控制以太坊的私钥。用户可以拥有分类帐硬件钱包,并将其与多台计算机一起使用,并且仍然可以在其新设备上访问其加密消息。在功能上,我们使用您的以太坊私钥签名的熵为PGP“大脑钱包”生成一个足够随机的秘密。
对于更具技术性,可以在我们的开发人员仓库中查看 KeySpace系统的工作实现。
我们认为这对生态系统有重大影响,并且很高兴看到它在我们想象之外的用途。
【IPFS相关】由IPFS原力区译制整理,收集外网中各领域人士在使用或开发IPFS及其相关应用时所分享的文章内容。
IPFS原力区官网:http://ipfsforce.com
IPFSER社区: http://ipfser.org
微博:http://weibo.com/ipfsforce

原文始发于微信公众号(IPFS原力区):【IPFS相关】KeySpace:使用以太坊和IPFS进行端到端加密
原创文章,作者:admin,如若转载,请注明出处:https://blog.ipfsforce.com/eb00385191/