LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 币圈百科 > SERO的技术革新和应用——区块链隐私保护的重要性

SERO的技术革新和应用——区块链隐私保护的重要性

2020-08-06 SERO幻影社区 来源:火星财经
SEOR幻影社区——打造最专业的SERO社区 社区网站:https://appdrfsg2wi8927.pc.xiaoe-tech.com

(一)区块链隐私保护的必要性

区块链作为一种新兴技术,和中心化系统相比,其核心价值在于去中心化。拥有独立数据库的传统公司都会聚合数据并建立数据中心,这些数据中心的管理权限由少数人控制,在安全方面存在不可避免的问题。

而区块链是一种链式数据结构,数据块按时间顺序连接,以加密方式保证分布式账本的不可篡改和不可伪造。另一方面,在区块链系统中,任何有能力建立节点的人都可以参与其中,成为分布式账本中的一个节点。

这些节点是平等和自主的,参与验证每笔交易,并通过某种共识模式来确定数据一致性。通过区块链系统,用户可以安全地与各类数据进行交易和交互,无需借助中间节点。

例如,以太网络在世界范围内有数以万计的节点,包括用户运行的用来促进网络连接的节点、由交易所管理的节点以及矿工运行的节点。

大量的节点一方面保证了每笔交易的安全性,另一方面也给用户带来了很多隐私问题。目前,任何人都可以从数万个节点中查询任意交易,包括交易者的地址和数量。在这种情况下,到底该如何保护用户的隐私呢?

区块链产业发展以来,在技术领域探索了多种隐私保护解决方案,有混币器、环签名、零知识证明等。

混币器是一种中心化解决方案,需要中心化混合平台作支撑。交易参与者首先将代币发送到混合平台进行混合,以中断参与者之间的连接。用户需要完全信任中心化处理系统。

而环签名是一种特殊的群签名。每笔交易的签名由一个私钥和多个公钥生成。当其他节点验证签名时,他们只能确定哪个公钥是众多公钥中的一个,而不能确定哪个公钥是特定的发送方,也就是说,无法确定由一组环签名所代表的资产特定持有者是谁。

环签名的问题是,用于匿名的签名集是固定的,并且用户需要在交易中与其他用户进行公钥混合,因此仍然有可能遭遇恶意用户并暴露隐私。

区块链行业中最有前途的一种解决方案是零知识证明,它是由 S.Goldwasser、S.Micali 和 C.Rackoff 在 20 世纪 80 年代初提出的。

它指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。

零知识证明实质上是一种涉及两方或多方的协议,即两方或多方完成一项任务所需采取的一系列步骤。

证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。大量事实证明,零知识证明在密码学中非常有用。如果能够将零知识证明用于验证,将可以有效解决许多问题。

在区块链隐私保护领域,零知识证明被认为是最前沿、最强大的解决方案。连以太坊创始人 V 神也曾多次公开表达了他对零知识证明的感激之情。

在过去,如果你想证明什么,你需要引入或使用另一种知识来实现目标,但在零知识证明中,用户不需要其他源数据来完成证明过程。

零知识证明技术应用于区块链系统后,每个块中只存在加密的散列数据,足以支持区块链系统上的交易操作。

然而,我们现在面临的问题是如何将零知识证明作为一种通用方案广泛应用于区块链系统中。

证明生成效率相对较低是其中一个比较突出的问题。例如,在 Zcash 中,使用普通笔记本电脑进行一笔匿名货币交易通常需要数百秒的时间。

如若已发送交易中的 UTXO(交易未用产出)有更多资源,则该笔交易的证明时间将会长到令人无法接受。另一个问题是,在当前所有主流匿名货币系统中,都没有一个支持类似以太坊智能合约的区块链平台系统。

为了解决匿名区块链系统在应用层面上存在的这些问题,许多研发团队都在尝试着做进一步的改进。然而,由于零知识证明的开发水平以及其学术和工程方面的复杂性,大多数团队进展缓慢,尚未能开发出能够真正上线的系统。

SERO 项目成功地解决了上述问题。SERO 全称是 Super Zero。它是世界上第一个基于零知识证明技术、支持智能合约操作并实现隐私保护的平台。在零知识证明系统方面,SERO 团队构建了基于 ZK-SNARKS 的 Super-ZK 零知识证明加密系统。

目前,Super-ZK 系统在证据生成速度上比 Zcash 现有系统快 20 多倍,这曾是零知识证明推广应用的最大瓶颈,加速后的区块链网络极大地改善了用户体验,也提高了零知识证明系统的实用性。

那么 SERO 是通过哪些手段来又快又准确地保证用户隐私的呢?敬请期待下集——SERO 匿名系统的体系结构设计。

(二)SERO匿名系统的体系结构设计

为了实现更强的保密性能,SERO匿名系统的体系结构设计在满足系统性能要求的同时,还需遵循以下基本原则。

基本原则

○ 不可追溯—? 区块链网络中每笔交易都有输入和输出通道,它们构成了一个非循环交易图,在这个图上所有交易流都可以被跟踪,所有交易序列都可以被串联、追溯。SERO 的设计初衷是切断两个交易之间的联系,使攻击无法进行。

○ 不可关联—? 区块链网络中的每个用户都有自己的收集地址。一旦该地址与实际用户身份相关联,网络中发生在该地址上的所有交易都将与对应用户的身份关联,从而导致将关联的行为暴露给该地址。当用户创建用于匿名的新假名公钥时,所有的交易和余额仍然是公开可见的。SERO 使用加密技术使支付地址不可关联。

○ 反统计分析—? ?实际用户行为具有统计特征。如果区块链网络中的交易数据具有反映这种统计特性相关内容的功能,则可以通过对区块链数据的统计分析来推断属于特定用户的地址。当使用环签名时,如果环成员或节点是恶意的,抵抗统计分析的能力将会降低。而 SERO 能够通过技术手段完全隐藏地址之间的关系。

○ 可选审计解决方案—? ? 对于可供选择的审计方案和某些复杂的业务程序应用,SERO 用户可以选择可信的第三方对交易进行财务审计,并能够让第三方跟踪交易中的特定信息。

协议设计

SERO 协议的设计简要描述如下:

账户系统:

帐户分为两类:用户帐户与合约帐户。用户帐户是用户自主选择的 32 字节帐户,合约帐户自动生成与用户安装的智能合约环境相对应的 64 字节地址;以上两类帐户都是唯一且不可重复的。

用户帐户可以生成 64 字节私钥 SK 和 64 字节公钥 PK,作为用户的支付地址。安装或调用智能合约时,钱包会根据当前条件生成一个临时地址。该临时地址不能与用户的私钥和公钥关联,并且只能使用一次。

安装智能合约时,钱包会根据当前条件将临时地址更改为 64 字节智能合约地址(CADDR)。当节点接收到地址时,需要确保合约地址以前没有出现过。

资产系统:

用户帐户或智能合约帐户都具有管理无限种类资产的属性,不仅仅是SERO币的结算交易费,账户下的所有资产都具有与SERO币相同的交易特征。除了SERO币外,其他资产可通过智能合约生成(类似以太坊)。

为了便于记忆,可为每项资产指定一个长度不超过 32 字节的名称(代币名),这些名称不允许重复使用。当账户执行余额查询或转账操作时,可以指定资产类型。

输出和输入结构:

输出结构:

输入结构:

锚是输入数据所在哈希树的根。Nil 是用于销毁已使用 OUT 的 32 字节哈希,Til 是用于交易跟踪的 32 字节哈希,并且仅对系统内的 OUT 有效。AssertCM 是输入的资产协议。OutCM 是交易的输出协议。

见证系统:

SERO 协议使用非交互式零知识证明(NIZK),在生成交易时需要提供资产来源的见证信息。每个节点将根据见证信息进行验证。SERO 使用哈希树算法来维护记录状态更改的见证系统。系统将在节点提供验证功能,在钱包端提供认证信息。

根=根哈希(位置、叶、路径):

根即当前哈希树的根

叶即当前位置的叶

路径即从叶至根的证明路径

证明系统:

SERO 的证明系统包括一个基于有向无环图的计算线路,用于描述每个 SERO 交易的内部约束:各种资产类型的输入和输出平衡,公钥和私钥的验证,交易的有效性,见证的有效性等。

加载数据的线路可以通过非交互式零知识证明(NIZK)生成证明。从提交的证明中,节点可以验证线路中加载的各种参数和约束条件,同时又能隐藏大量的详细信息。

步骤流程:

A.计算

用户使用账户、资产和见证系统提供的信息,并根据当前运算需要提供输入数据。计算规则在离链环境下运行以获得结果。

B.证明

用户使用随机变量 r 生成 STX 和计算结果,并将其提交给节点。STX 包括检查数据 Ci、编码数据 Ei 和验证数据 Pi。

STX=PROVE(RESULT,r)

STX={(C0. C1……Cn), (E0, E1……En), (P0, P1……Pn)}

C.验证

节点收到 STX 后,会在见证系统和证明系统中确认 Ci。当证书被验证为正确时,节点将接受 STX。

RET_i=VERIFYi(C_i)

Check=ret_0 ret_1…ret_n

D.确认

当资产接收方与已验证交易 STX 同步时,接收方使用私钥对编码数据 E_i 进行解密,并生成明文 D_i。明文 D_i 和证明 P_i 被输入到证明系统进行验证;成功即表示交易已验证。当交易被 n 个块确认时,交易接收者可认为交易已被确认。

D_i=FETCH_i (E_i,ACCOUNT)

ret_i=CONFIRM_i (D_i,P_i)

Check=ret_0 ret_1…ret_m

值得注意的是,SERO 的执行步骤是开放的,这意味着这种对步骤和参数的抽象描述支持持续升级,随后添加的功能对整体架构的影响也微乎其微。

以上就是SERO 匿名系统的体系结构设计啦,下期矿视界将为大家带来世上最快零知识证明加密库 Super-ZK的介绍。

(三)SERO的零知识加密特点及实际应用场景

对于采用非交互式零知识证明(NIZK)方案的区块链系统来说,目前最大的应用瓶颈是交易时生成证明的时间太长。SERO 系统的零知识证明模型 Super-ZK 针对这一瓶颈进行了以下突破性创新。

01Super-ZK 创新

1、目前,他们使用 zk-SNARKS 框架来生成非交互式零知识证明,它使用 ALT_BN128 曲线和 Groth16 预处理过程,与 ZCash 的 PGHR13 预处理方案相比,计算时间减少了 1/3。

虽然 zk-SNARKS 框架需要信用安装过程,但计算线路不会在 SERO 传输中动态构建,所以 zk-SNARKS 框架可以满足日前所有场景下的 SERO 要求。

2、他们创新性地使用自己编写的 Twisted Edwards 曲线来代替 SHA256 hash 生成公钥,用 Pedersen Hash 生成哈希树,使得交易处理速度提高 4 倍以上。

3、与 ZCash 双输入双输出线路结构相比,SERO 采用单输入单输出结构,每个描述由一个资产通道链接。这样的线路配置比较复杂,但在多核 CPU 的情况下,SERO 的执行效率比 ZCash 高。

4、Super-ZK 部分代码由汇编语言编写。与 ZCash 的 C++ 相比,它具有更高的执行效率。

基于以上优化,SERO 声称在生成交易证明速度上比 ZCash 快了 20 倍以上,同时也大大提高了 NIZK(非交互式零知识证明)系统的适用性。

听上去好厉害的样子,那么SERO网络在现实生活中会有哪些应用场景呢?

02SERO 应用场景

现实世界中无论个人亦或组织都迫切需要隐私保护。SERO 支持图灵完备智能合约和各种相关的隐私组件,可以支持不同经济生态的扩展。匿名资产的发布不再是少数具有专业密码学知识分子的专利。

一般系统开发人员,由于业务需要发布匿名加密货币,可以在 SERO 链上发布自己的匿名代币,建立自己的隐私生态,从而极大地扩展了区块链系统的应用。下面是 SERO 的一些典型使用场景。

01 供应链系统

区块链可以解决上下游交易凭证和供应链系统的可追溯性问题,简化供应链中心企业的管理,为上下游企业的融资提供相应的解决方案。然而,商品的价格和数量等敏感数据在区块链上面临着泄露商业秘密的问题。SERO 系统可以彻底解决商业秘密的暴露问题,同时,参与方可以享受到区块链系统实际应用带来的好处。

02 医疗卫生

数字隐私存在于医疗卫生行业的方方面面。从个人病历到医疗记录,多角色隐私保护和授权机制要求具有高度灵活和安全的隐私保护能力,包括医院、患者、保险公司、制药公司等。

SERO 系统解决了患者和医院面临的隐私问题,也为保险公司和制药公司在获得患者许可的情况下安全遵守和使用相关数据开辟了途径。

03网上拍卖

网上拍卖企业追求公平,竞价隐私是一个重要方面,往往由于利益冲突而难以保障。SERO可以提供一个完全安全、独立和公平的投标环境。

04线上博彩

线上博彩产业的发展一直受中心化化机制的制约。线上博彩的应用往往需要对竞争对手的策略进行高度的隐私保护,在这些巨大的现金流应用中,需要能够提供多个投标、支付和结算的去中心化智能合约系统,而 SERO 系统可以完全支持这类业务。

05网游

大型网络游戏通常需要易于流通、交易和结算的代币系统,并且可以基于智能合约进行发布和流通,同时提供交易隐私保护。

SERO是唯一支持多代币系统的技术解决方案,该系统可以发布和流通同态智能合约,并保障帐户的交易隐私。

资产数字化和隐私敏感数字资产涉及的行业较多,如保险业、商品交易、期货交易、信用行业、数字资产交易(如信用调查和知识产权等)。诸若此类。在这些领域,SERO 系统具有广阔的应用前景。

在隐私保护和区块链技术开发方面 SERO 都有较为成熟的技术体系,并且在实际应用方面也有着大量的可行性。

有区块链从业者将 SERO 称之为“Zcash 和 ETH 核心技术的结晶”,其未来发展空间可见一斑。

SEOR幻影社区——打造最专业的SERO社区

社区网站:https://appdrfsg2wi8927.pc.xiaoe-tech.com

社区联络员:zgfjxm8001、yixiu86877

本文来源:SERO幻影社区
原文标题:SERO的技术革新和应用——区块链隐私保护的重要性

—-

编译者/作者:SERO幻影社区

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...