链下数据互操作

区块链链下数据互操作框架

链下数据互操作主要解决链上链下数据的安全可信交互问题。区块链多方共识、难以篡改的特点可以保证链上数据的安全共享,但在保证与链下系统交互过程中的安全可信方面存在难点。因此该过程中要格外重视数据可信、隐私保护、安全监管问题。链下数据互操作所处位置及关键问题如图所示。

在这里插入图片描述
链上链下交互场景中需从数据可信、隐私保护、安全监管三个方面来保证交互过程的可信、安全、合规。

(1)数据可信包括数据来源可信、数据传输可信、计算可信三个方面,数据来源可信包括可信第三方数据源,如银行数据、政府数据等具有信任基础的数据源,以及通过共识增信的预言机数据源等。数据传输过程可信是指数据传输过程的可信,如常见的加密通道传输,专有网络传输等。计算可信是指链下计算过程的可信,如通过可信执行环境保证链下计算过程的可信。

(2)隐私保护是指重视数据交互过程中的隐私问题,包括身份信息、资产信息等,常见技术手段包括数据加密、数据加工、零知识证明、可信执行环境等。

(3)安全监管是指为净化区块链网络环境,保证链系统健康可持续发展,在链上链下数据交互过程中加强监管,将非法数据拦截在上链之前,具体包括跨境数据安全、数据权责问题、链上内容安全三个方面。

链下数据互操作是指区块链系统实例与链下系统实例之间交换信息,并对所交换信息加以使用的能力。主要用于解决链上链下数据安全可信交互问题。

(一)需求分析

链上程序的正常运行通常需要链下世界的数据支持。区块链系统与外部世界割裂的问题极大的限制了区块链的应用范围,而实际应用中,区块链系统及其承载的上层应用系统的正常运行,很大程度上依赖于链下世界的数据支撑。如智能合约的执行需要链下数据的触发,典型的应用场景包括跨境结算场景中的汇率数据、审计追踪过程中的链上链下身份映射数据、溯源场景中的快递物流数据和IoT采集的数据等,通常需要从链下世界获取。

链上业务的高效运转需要链下计算支持。区块链的本质是通过冗余计算来确保计算正确性,即网络内所有节点或部分节点重复计算某个相同的交易,之后对计算结果达成共识,从而确保计算结果的可信。区块链系统通过对网络资源、存储资源、计算资源的冗余消耗,换来了数据的安全可信。该技术决定了区块链系统难以支持对资源消耗过重的业务。但实际商业场景中,存在资源消耗型业务需求,如对网络、存储消耗较大的音视频文件处理,以及对计算消耗较大的机器学习类计算等。针对该类场景,通常需要链上、链下结合的方式,提升链系统对资源消耗型业务的支持能力。

如上所述,区块链系统的正常运转离不开链下世界的数据支持和计算支持,相对于链上多方共识确保数据可信流转,链上链下交互过程存在中心化作恶风险。因此,如何保证交互过程中的数据可信、安全、合规,成为链上链下交互过程中亟待解决的关键问题。

(二)互操作现状

针对链上链下数据交互过程中的数据可信、安全、合规问题,当前已出现了以Oracle(预言机)为基础的解决方案。根据应用场景不同可分为以解决数据问题为主的数据预言机,和以解决计算问题为主的计算预言机。数据预言机:为保证链上业务的正常运转,为区块链系统提供真实、可信的链下数据支持。计算预言机:为支撑计算密集型业务,并降低其对区块链系统能效的影响,将计算密集型业务放到链下执行,通过链上链下结合的方式提升链系统的计算能力。

1.数据预言机

数据预言机主要解决数据交互过程中的安全可信问题,具体包括数据来源可信、传输过程可信、计算过程可信三个方面。按照中心化程度又可分为中心化预言机和去中心化预言机两类。

(1)中心化预言机

中心化预言机指通过将链下数据汇聚到其中心化运营的节点中,中心化节点对数据进行校验,验证通过的数据经中心化服务中转给数据需求端。该过程中,数据来源、数据验证处理、数据传输过程都是中心化的,数据的安全性、真实性由服务提供商信用背书,预言机合约提供验证。典型案例包括Oraclize和Town Crier。

·Oraclize 依托亚马逊 AWS 服务和 TLSNotary 技术,提供可证明的预言机服务,当前主要服务于以太坊、EOS、Hyperledger Fabric和Corda等区块链平台。Oraclize支持的数据源包括URL、Computation、IPFS、Blockchain等,针对不同数据源提供真实性证明。Oraclize中心化运营的特点,增加了其中心化风险,未来将升级为去中心化版本。

·Town Crier 是基于以太坊的中心化数据预言机,其预制了一系列的数据源,主要提供航班数据、股票数据、通证价格数据、天气数据等服务。在计算过程可信方面,Town Crier利用基于SGX技术的可信执行环境(TEE)保护合约代码的安全执行。在数据传输过程可信方面,利用TLS加密通信机制保证数据传输过程的可信。

(2)去中心化预言机

为了降低链上链下数据交互过程中的中心化作恶风险,出现了以ChainLink、DOS Network、MakerDao为代表的去中心化预言机数据交互方案。

·ChainLink 是目前以太坊生态中较为成熟的去中心化预言机方案。在数据源方面,其使用用户指定的互联网数据源。与中心化方案不同的是,其数据服务节点不是由项目方独立运营的,其运营方包括项目方、第三方机构、以及用户等。

·DOS Network 通过在链上部署一个轻量级智能合约,服务节点的选取和数据验证采用VRF + 阈值签名技术(BLS算法),结合P2P网络,实现去中心化的多方共识,提升数据安全性。

·MakerDao 支持与多种加密数字货币兑换交易,MakerDao为了屏蔽其它币种价值波动对本币值稳定性造成影响,其通过跟踪其它币种的价值曲线,不断调整其与其他币种之间的汇率,而其它币种价格则通过14个可信节点从不同交易机构获取,价格数据经汇聚共识后方可被网络接受。

综上所述,不同数据预言机获取数据的基本流程为:从指定的链下数据源获取数据,验证获取到的链下数据,对经过验证共识的数据进行后续的上链等操作。实际应用中,一些关键、敏感数据也多存在权威的专业结构中,如银行的金融数据、政府的身份数据等。因此,在尽可能的保证数据来源可信的基础上,通过各种技术手段保证数据传输过程和计算过程的安全可信。

2. 计算预言机

计算预言机通过异步方式在链下完成计算任务,然后将计算结果返回给链上,从而扩展提升链系统的计算能力。相对于链上计算结果需要全网共识,链下计算缺乏有效的监管手段,难以保证计算过程、计算结果的安全可信。针对该问题,当前出现了一批以TEE(Trusted Execution Environment,可信执行环境)、MPC(Secure Multi-Party Computation,安全多方计算)为代表的计算预言机方案,结合TLS等加密通信机制,将参与计算的多方数据汇聚至可信执行环境,可信执行环境按照既定规则进行计算,并将结果反馈至利益相关方。该方案中,TEE提供可信计算环境,TLS保证传输过程的安全可信,结合链上链下的双重身份验证等机制,共同提升链上链下交互过程中的隐私安全、数据安全、计算安全。

(三)互操作建议

链上链下交互作为链下数据流转到链上的关键环节,在保证数据可信的基础上,也要重视交互过程中的数据隐私问题,和上链数据的内容安全问题,如图所示。

在这里插入图片描述

1. 数据可信

数据可信包括数据来源可信、计算过程可信、传输过程可信三部分。

(1)数据来源可信:

链下数据的根本来源为传统的中心化服务,如互联网上的企业数据、银行数据、政府数据等。当前,关于数据来源可信问题,主要通过可信第三方和数据多方采集共识两种手段。可信第三方数据指有一定信任基础的链下数据,包括来自权威机构的数据,如银行数据、政府数据等;多方采集共识指对于缺乏信任关系的数据源,通常采用多方采集,相互验证,多方共识的手段提升数据的可信性。

(2)计算过程可信:

在链上链下交互过程,部分场景中出于隐私保护、提升链系统计算能力等目的,将部分计算业务放置在链下。而链下执行过程通常缺乏有效的监管,计算过程中存在作恶、造假等风险,因此,需要采取一定的技术手段保证链下计算过程的可信性。当前,链下计算过程主要通过TEE、MPC等技术提升计算过程的可信性。

(3)传输过程可信:

数据传输作为链上链下数据交互过程中的必要环节,数据传输过程中存在被监听、劫持、篡改等风险。通常可采用TLS等加密通信机制、专用通信网络,结合通信双方身份校验、数据完整性校验等手段保证传输过程的可信。

2. 隐私保护

同传统互联网中注重隐私保护一样,链上链下交互过程中也要重点考虑数据的隐私保护问题。

如交互报文中的用户身份信息、鉴权Token、SessionID、资产信息等敏感数据需要采取一定的隐私保护技术避免交互过程中的隐私泄露,常见手段包括数据加密、加密传输、数据加工、链下可信计算等。数据加密指链下数据加密后,以密文形式传输上链;加密传输指通过TLS等加密隧道传输数据;数据加工指原始数据经脱敏处理后,将脱敏数据或计算结果反馈至需求方;此外,还可结合零知识证明、同态加密、TEE、MPC、联邦学习等手段提升多方协同场景中的隐私保护能力,实现数据的“可用而不可见”。

3. 安全监管

同传统互联网一样,区块链技术也有被滥用的风险,如利用加密数字货币从事洗钱、逃避税收、转移资产等非法金融活动,利用区块链分布式存储、难以篡改的特点,造谣传播虚假信息、煽动性言论等,利用区块链准匿名的特点泄露企业机密信息、国家机密信息等。不同于传统互联网,区块链去中心化存储、难篡改的特性增加了链上非法内容的整改难度。因此,为了净化区块链网络环境,保持区块链网络健康可持续发展,需要从明确区块链权责问题、交互过程留痕可审计、强化跨境数据安全三个方面加强安全监管。

(1)明确区块链权责问题。

区块链的权责问题可分链的权责问题和链上数据的权责问题两类。

1)链的权责问题:链的权责问题指链系统的责任主体,即研发、运营主体等。与传统中心化服务拥有确定的项目方不同,区块链去中心化的特性,难以按照谁运营谁负责的原则确定链的责任主体,尤其在公链领域,由于无准入机制,任何人都可以加入并运营网络的特点,进一步分散了责任主体。

2)链上数据的权责问题:链上数据的权责问题指链上数据的用户主体,包括上传数据的用户主体、传播数据的用户主体等。链上数据通常根据公私钥账户体系,确定链上数据、资产的所属关系,而区块链准匿名的特点,增加了链上用户到链下现实世界自然人的追溯难度,进而增加了链上数据权责问题的判定难度。数据权责问题是强化链上内容安全的基础,需从监管手段和监管法规两方面入手,明确链系统和链上数据的权责问题,为链上内容安全提供有力支撑。

(2)链上链下交互过程留痕可审计。

链上链下交互作为链下世界的数据到链上的关键入口,是数据上链前审查的重要关卡。链前审查是从源头保证链上数据安全的重要机制,但实际操作中,受限于上链数据时效性要求高、监管部门精力有限等,可能出现数据先上链、后审核的情况。因此,在加强链前审查的基础上,还要强化上链后的事后审计工作。

(3)跨境数据安全。

数据跨境流动,即数据跨越国境进行移动和流转。互联网和通信技术的飞速发展,极大地推动了经济数字化、全球化的进程,跨境数据的流量、内容均大幅增长。跨境数据流动,带来了经贸合作、技术交流、资源共享等跨国合作,为全球的金融、科技发展起到了重要的助推作用。但同时,信息数据往往与国家信息安全、企业商业机密和个人隐私信息密切相关,容易出现跨境数据安全问题。区块链作为提升数据流通效率的关键技术,在跨境信息流通中具有广阔的应用前景,因此,在链上链下交互过程中,需加强对跨境数据的安全审计。

(四)演进方向

链下数据互操作涉及各种各样的区块链系统以及各行各业的数据系统、身份系统等,因此在工程实现方面需要从接口规范、通信标准方面对行业进行规范约束,以提升不同区块链系统和链下世界互联互通的能力。数据安全方面,需要从数据来源、传输过程、计算过程三个方面保证链上链下交互过程的数据可信交互。隐私安全方面,需要从数据采集、传输、加工、执行等方面提升整个交互过程中隐私安全保护能力。内容安全方面,需要采用事前检查与事后审计相结合的方式保证链上内容的安全合规。链下数据互操作涉及数据需求方、数据提供方、标准化组织、监管机构等多个参与方,需要各参与方凝聚共识、通力合作,共同推进链下数据互操作的发展进程。

参考文章

区块链互操作白皮书可信区块链推进计划2020年7月(1.0版)

猜你喜欢

转载自blog.csdn.net/qq_40713201/article/details/125940419