Cover photo

Nulink Privacy-preserving technology for decentralized applications

NuLink 通过 API 为去中心化应用程序提供隐私保护技术。我们使开发人员、初创公司、小型企业和企业能够轻松地构建自己的应用程序,并采用所有最佳安全和隐私实践。

  1. 简介 NuLink 网络是隐私保护应用程序开发人员实施最佳实践和同类最佳安全和隐私的分散式解决方案。NuLink 平台提供端点加密和密码访问控制。敏感的用户数据可以从任何用户平台安全地共享到云或分散存储,并且通过代理重新加密或基于属性的加密中的策略自动授予对该数据的访问权限。对于另一方的数据用户,零知识证明可以帮助他们验证数据源。在更高级的隐私保护用例中,NuLink 使用全同态加密来定制企业级数据计算服务。

1.1 背景 2006 年,英国数学家、企业家 Clive Humby 有句名言:“数据是新的石油”。当然,他指的是任何能够挖掘数据基本价值的人的巨大机会。如今,各行各业的企业都明白,数据是实现业务价值最大化的关键。从自动驾驶(特斯拉、Waymo)到内容制造商(Netflix、HBO),从电子商务(阿里巴巴、亚马逊)到金融市场(Robinhood、Coinbase)——几乎所有企业都在挖掘数据以推动创新和增长。

同时,如果敏感信息在数据泄露中泄露,数据可能会对企业、声誉和人们的生活造成无法弥补的损害。例如,医疗保健领域的数据泄露数量逐年增加,影响了包括儿童在内的数百万人。从 2020 年芬兰一家心理健康初创公司发生的数据泄露事件中可以看出,这些数据泄露可能会造成毁灭性后果。

在许多情况下,即使法律要求公司实施数据保护(例如,欧洲的 GDPR 或被称为世界上最严格的隐私和安全法的通用数据保护条例),无论规模大小的企业——企业、中小型企业企业或初创公司——经常发现很难保护其用户的数据。造成这种情况的原因很多,包括以下几点:

隐私保护手段多样,技术复杂。根据特定场景,通常需要使用一种或多种加密技术的组合。技术门槛很高,并非所有企业都有资源或能力提供这一点。很难保证数据的安全存储。纯文本存储、对集中式服务器的攻击等问题都可能导致数据泄露。由于缺乏通用的解决方案,隐私保护方案的实施需要高昂的时间、金钱和技术成本。为这些数据隐私问题寻找解决方案是 NuLink 背后的动机。

NuLink 具有以下核心特点:它集成了多种加密技术、去中心化、易于实现和开源。我们的目标是提供一个开箱即用的解决方案,降低在各种业务中应用隐私保护方案的门槛。NuLink 将提供所需的一切,包括数据加密、密钥和存储管理、跨链部署和隐私计算。

1.2 我们的技术 通过整合一流的技术,我们正在建立强大的技术基础。NuLink 提供的技术解决方案涵盖三大类。

确保密文形式的数据的可用性。这里使用的加密技术主要包括零知识证明。保护隐私的数据共享。一般的方法是对数据进行加密,让数据所有者控制对它的访问。技术包括去中心化加密存储、代理重加密、基于身份的加密和基于属性的加密等。 隐私保护数据计算,涉及将一定的隐私计算能力集成到智能合约中。使用的技术包括多方安全计算、同态加密等。这三种技术解决方案可以在许多领域提供隐私保护应用,例如去中心化金融(DeFi)、医疗保健、社交网络、数字版权管理等

  1. 设计理念 2.1 架构 NuLink 网络集成了应用层、密码层、存储层、区块链层和观察者网络。

post image

图 1:NuLink 网络 应用层:应用层是一个抽象接口层,直接与应用交互。应用层还需要与密码层交互以授予应用程序隐私数据的授权。密码层:密码层是代表应用层处理密码操作的实体。密码操作包括密钥生成、加密、解密等。密码层还需要连接存储层,负责上传和下载加密的隐私数据。存储层:存储层是一个存储网络,可用于存储加密的隐私数据。目前,我们支持 IPFS(星际文件系统)作为我们的去中心化存储网络。Swarm 和 S3 等其他存储网络即将推出。区块链层:区块链层是可以处理代理注册和重加密请求管理的区块链系统。目前,代理只能在以太坊中注册。但是,用户可以将他们的请求发送到其他区块链系统,例如 Polkadot 和 Solana。观察者网络:观察者网络是一个中继者网络,将代理节点的信息从以太坊中继到其他区块链系统。观察者网络将在链上治理机制(DAO)下维护,以保证其去中心化和安全性。NuLink 用户可以简单地集成到一个 API 中,并访问多个存储和区块链解决方案。

2.2 Crypto Primitives NuLink 提供的核心产品是去中心化隐私保护技术,它是区块链和密码学技术的有机结合。涉及的加密原语包括代理重加密、全同态加密、零知识证明等。本节将介绍这些加密原语和 NuLink 使用的方案,并解释它们如何在 NuLink 系统中工作。

2.2.1 零知识证明零知识证明或ZKP是指证明者在不向验证者提供任何有用信息的情况下,使验证者相信某个结论是正确的。零知识证明由 S Goldwasser 等人于 1989 年首次提出,具有以下三个性质:

完整性:如果证明者和验证者双方都是诚实的,并且遵循了证明过程的每一步,那么证明一定是成功的,验证者必须接受证明者。健全性 没有人可以伪造一个新的证明并成功地使其通过验证。零知识:在验证过程之后,验证者验证证明者拥有知识,但没有得到任何关于该知识的信息。从证明者的角度来看,他们没有侵犯隐私。根据参与者是否需要交互,零知识证明可以分为交互式零知识证明和非交互式零知识证明或NIZK。NIZK 适用于去中心化场景。常用的NIZK方案有zk-SNARK、zk-STARK、Bulletproofs、PLONK、Supersonic、Malin等。

2操作2操作。PRE是一种加密(PKE),它会启动一个加密或加密的加密方式2。

post image

图2:代理重加密发布 Alice 用自己的将密文发送者将数据加密到CA 中,Alice 将密文cA 发送给代理,并为她生成一个重加密密钥,由Alice 自己计算。想要使用重加密密钥加密密钥将密文 cA 用于解密 cB 的密文 cA,Bob 的密钥加密,然后将其发送给 Bob。 获取相反,NuLink 使用 NuCypher 加密机制的灵感来自 KEM 和通过 BSIES98。使用 UmbAlice 加密加密方案(NuCpher KMS(密钥管理系统))设置 N 个半重加密代理的通用名称。中的这些(N)至少可以通过重新执行参与其中,鲍勃独立的加密加密消息并与他的密码解密原始。

使用 Umbral,NuLink 不仅可以轻松实现单用户对单用户的私有数据共享——我们再次强调,Umbral 是一个阈值方案——NuLink 还可以实现单用户对多用户的私有数据共享。

2.2.3 基于身份的加密和基于属性的加密 基于身份的加密(IBE)和基于属性的加密(ABE)都是控制访问权限的公钥加密方案。前者可以指定接收者的身份信息,后者可以指定接收者的属性。NuLink 利用这两种技术来实现更多功能的数据共享。

使用公钥加密传输数据存在一定的缺点和风险。例如,公钥一般是一系列无意义的随机数。如果在加密过程中使用错误的公钥,密文将无法被正确的接收者解密。同时,很可能将信息泄露给错误的用户,甚至泄露给恶意用户。其实在现实生活中,有这样一种攻击方式:恶意用户欺骗发送者,替换接收者的公钥。

基于身份的加密通过将用户的身份信息直接绑定到公钥来解决这个问题。它类似于一个理想的电子邮件系统:如果您知道某人的身份,您可以给他们发送一封只有他们才能阅读的信件。您可以验证他们的签名。

在此基础上,基于属性的加密做了进一步的功能扩展。如果我们将属性定义为事物或信息的特征,那么策略就是这些特征之间的关系。然后 IBE 使用最简单的策略和属性匹配,即认证身份属性。在 ABE 中,属性和策略的选择更加多样化。ABE一般分为两类。KP-ABE(密钥策略)将策略嵌入密钥,将属性嵌入密文。CP-ABE(密文策略)将策略嵌入密文,将属性嵌入密钥。这两种方案在结构上具有双重关系,因此在方案设计中经常会进行类比迁移,但在具体应用场景中却有很大的不同。

NuLink 选择 CP-ABE,因为策略嵌入在密文中。这意味着数据所有者可以通过设置策略来决定哪些属性可以访问密文,相当于对这些数据进行加密访问控制,其粒度可以细化到属性级别。

2.2.4 全同态加密 全同态加密(FHE)是指无需私钥即可计算密文的能力。也就是说,对于任何有效的 f 和明文 m,都有一个特殊的性质 f(Enc(m)) = Enc(f(m))。

post image

图 3:全同态加密全同态加密第一个被称为学的圣。是 Rivest 1978 年提出的。三十多年后的 2009 年,Craig Gentry 正在实施一个全同态加密方案。

目前,安全高效的全同态加密方案是基于格上的LWE问题和Ring-LWE问题。它们是反量子的,即使在后量子时代也能提供足够的安全性。

目前,全同态加密受到效率的限制,这主要取决于密文的操作方式。虽然 FHEW 和 TFHE 密码系统更适合处理布尔逻辑运算,但 BGV、BFV 和 CKKS 更适合批处理和计算仿射变换。对于非线性任意函数,最新的 PBS 技术具有良好的效率性能。因此,NuLink 会构建不同的全同态加密算法来提高效率。

全同态加密具有广泛的理论和实际应用,尤其是在去中心化隐私保护产品中。

系统中计算能力不够强的节点可以将自己的数据以密文的形式存储在存储层中。当需要进行数据计算时,用户向计算节点发起计算授权。计算节点进行相应的密文运算得到加密结果,用户下载结果并解密,即可得到最终的明文结果。在整个计算过程中,只有数据的拥有者才有解密的能力,因此可以保证用户的数据隐私。

我们需要强调的是,这可以作为多方安全计算的一个组成部分,而不是仅仅完成两方的代理计算。

2.3 解决方案 2.3.1 数据可用性 作为一个专注于数据隐私的平台,我们首先需要解决的就是数据的可用性问题。这个问题往往分为两部分:一是消费者在购买前如何确定卖家有自己需要的数据,二是如何验证密文状态下的数据是否真实。

在 NuLink 网络中,这两个问题都可以通过零知识证明技术来解决:数据所有者需要在数据授权之前提供零知识证明。事实上,密文数据状态下的证明方法与明文状态下的证明方法是一致的,与所使用的加密方案无关。这为 NuLink 网络提供了更高的灵活性。

2.3.2 数据共享 NuLink 的数据共享功能是通过将代理重加密技术桥接到区块链系统来实现的。这是 NuLink 将首先部署的功能,稍后将在此解决方案中添加 IBE 和 ABE。该方案可以应用于很多场景。

首先 Alice 通过 IOT 设备上的 APP 调用应用层,选择代理重加密服务并进行授权。在 Alice 的 NuLink 端,应用层收到授权后,调用区块链层发起和验证交易,并将数据传输到密码层。密码层与存储层交互以执行加密操作并上传加密数据。这一步得到的加密数据只能由 Alice 解密。为了将其转换为 Bob 可以解密的密文,我们通过 NuCypher 部署的 Ursula 节点实现代理重加密。重新加密后,加密后的数据将被发送到 Bob 的 NuLink 端的 Cryptograph Layer,可以直接解密。

2.3.3 数据计算 NuLink 的数据计算功能未来将通过全同态加密技术与区块链系统的桥接来实现。

它利用了可以使用全同态加密计算密文的特性,即用户在应用层选择数据计算服务。Cryptography Layer 收到授权后,将用户的数据同态加密并上传到 Storage Layer。区块链层的计算节点将访问数据并执行指定的计算(如机器学习模型预测等)。最后将密文结果返回给存储层,密码层访问密文结果,解密后返回给用户。稍后我们将在此解决方案中添加 MPC(多方计算)。