1. 区块链如何获取现实世界的数据?

由于网络、节点处理速度等原因,各节点直接获取外界数据时可能会有偏差,从而造成结果不同。

eg. 理想的区块链和预言机1对1模型(实际上是不行的)

1.1 预言机提供的解决方案

通过第三方发送一笔区块链交易,交易中附加需要的数据,交易会将数据嵌入区块,并同步到每个节点,从而保证数据的完全一致。

  • 第三方将数据推送进区块链

1.2. 保证数据的可靠性
1.3. 监管性和隐私性

监管性和隐私性是两个相互矛盾的性质。强监管性必然导致弱隐私性,而强隐私性必然弱化监管。
eg. 强隐私弱监管的mlb系统 , 基于加密CryptoNote协议通过环签名实现。

2. 系统整体架构

2.1 审计端架构

2.1.1 审计链

  • 功能: 服务端的信誉机制、数据源的准入机制

  • 本质: 一个区块链系统, 有别于其他的区块链交易系统, 功能更多的是用于存证以及数据共识从而保让该数据的可靠性。

  • 审计链不需要验证交易的有效性, 因为审计链本身不涉及交易的功能。

2.1.2 服务节点

  • 减轻审计链中共识节点的工作量,同时分摊共识节点的责任与能力,防止共识节点作恶。
  • 监督共识节点的运行,共识节点也同样评估服务节点的工作信誉和能力, 两两相互制约,达到审计监管的目的。

2.1.3 四层架构

  • 存储层
    使用 Redis 数据库作为缓存,MySQL 数据库持久保存数据。(Redis 数据库是非关系型数据库,存取速度快用于系统和数据库之间的缓存)

  • 数据层
    系统主要有三类数据: 统计各服务节点的信誉指数、数据源的信用以及安全等级 、数据馈送记录(记录服务端和数据源通信请求和回复便于今后监管时有迹可循)

  • 共识层
    对三种数据达成共识:服务节点数据、通信记录以及数据源数据。这三种数据使用同一种共识算法—实用拜占庭将车协议(Practi-cal Byzantine Fault Tolerance.PBHFT)算法。

  • 应用层

    • 投票模块
      主要针对的是服务节点的信誉指数,各节点将各自的结果发送给各个共识节点,共识节点先各自参与服 务的节点的信誉值,然后将结果达成一致后存入链中作为各个服务节点信誉指数的更新。

    • 智能合约
      针对数据源的信任等级,数据源将自己的申请以及证明材料递交给入审计链触发准入审计智级智能合约的运行,合约顺序执行,执行到重要节点时,将此时的运行状态经过共识存入审计链中,直到合约运行完成,数据源获得准入权限,结果共识上链。

    • 通信模块
      针对服务端和数据源之间的通信问题,审计链作为第三方,保存有服务端的请求以及双方的通信记录便于监管,这些记录都是用密钥进行加密,保证隐私性。

    • 数据操作。
      数据操作主要是面向内部和外部提供查询接口,主要提供查询的数据的通信记录数据、服务节点信息及信誉指数、数据源的相关信息及信任等级、最基本的区块信息查询等。

2. 2.通信层架构

通信主要指的是服务端、审计端以及数据源的通信过程。

2.2.1 三种通信过程

  • 服务节点与审计链之间的通信
  • 数据源与审计链之间的通信
  • 服务节点与数据源之间的通信

2.2.2 三点通信基本原则

  • 服务节点可以和审计链直接通信
    服务节点向审计链发送消息时向审计链中所有共识节点同时发送请求或信息。审计链向服务节点返回结果时是所有共识节点同时向服务节点返回,超时返回的数据视为无效数据。
  • 数据源可以和审计链直接通信
    数据源向审计链发送审计数据,审计链触智能合约的执行,结果共识后上链,并向数据源返回共识结果,也是共识节点同向数据源发送结果数据,数据源选择多数节点提供的结果。
  • 服务节点和数据源的通信必须有审计链的参与,否则不可以直接单独通信。
    因为服务节点和数据源的通信纪录要上链,使用的算法是基于第三方区块链的安全通信算法,该算法保证了通信记录一定上链后,服务节点和数据源才能正常通信。

2.2.3 安全通信协议

在引入了一个第三方分布式系统的前提下,完成了服务端与数据源的通信过程。一次请求完成过程需要执行两次共识,一次共识请求并存入区块链中,另一次是共识通信记录并存入链中。

  • 服务节点与审计链、数据源和审计链的通信都是单节点对多节点的通信
  • 单节点指的是服务节点和数据源,多节点就是审计链中的共识节点,共识节点分别处理请求后,对结果达成共识,结果数据存入链中。
  • 所有共识节点都会将结果发送给服务节点或者数据源。
  • 单节点在有效时间内收到回复后,将大多数共识节点回复的数据作为最后的结果。
  • 服务节点与数据源的通信就是一个单节点对单节点的通信,审计链的参与只是作为第三方存证,并没有实际参与通信。
  • 在服务节点与数据源的通信过程中, 由于第三方的加入,不可避免地会有和第三万的交互过程,这个交互过程可以今照上述的单节点对多节点的交互过程。

在本系统中单对多的通信是单对单通信的基础。

智能合约重构社会契约 (4)预言机基础说明相关推荐

  1. 智能合约重构社会契约 (5)比特犬模型实现智能合约

    1. 设计思想 针对法律.司法执法应用场景,将智能合约的许多问题简化, 在智能合约的自然语言处理.形式化方法.软件测试方面,突出智能合约的核心功能,降低使用智能合约的门槛,使其可靠且高效. 2.模型驱 ...

  2. 智能合约重构社会契约 (2)雅阁项目智能合约

    1. 雅阁项目有三个主要思想 文本合同到可计算合同:主要目的是从静态的文本合同,以自然语言和文件为主,到动态,数字化,电子文档和证据集成的系统.电子签名仅仅是向本合同迈进的开始. 合同高科技:雅阁项目 ...

  3. 智能合约重构社会契约 (1)李嘉图合约

    1. 定义 智能合约是机器可读的指令集,而李嘉图合约是指明智能合约所遵循的指令意图的文件. 1.1 李嘉图合约前面的部分看起来像普通的软件合同. 1.2 由于加密签名,李嘉图合约极其安全.每个李嘉图合 ...

  4. 智能合约重构社会契约(6)赛迪智能合约安全标准

    1. 安全实施框架 根据运行机制可分为运行与规划.合约创建.安全审计.合约触发.合约运行.合约废止六个阶段. 2. 编译部署安全要求 区块链系统应校验智能合约的编译实体.写入策略和签名内容. 区块链系 ...

  5. 智能合约重构社会契约(9)Fabric

    1. Docker Docker 是一个开源的应用容器引擎, 开发者可以将他们的应用及依赖包打包到一个可移植的镜像中,也可以实现虚拟化. 完全使用沙箱机制,相互之间不会有任何接口. 在超级账本中,智能 ...

  6. 智能合约重构社会契约(12)天秤币

    1. 定义 一种稳定的数字加密货币,并将全部使用真实的资产储备进行担保.与大多数加密货币波动剧烈不同,天秤币将使用低波动性的资产作为抵押来保证天秤币价值的稳定 账户规模数十亿 需要极高的交易吞吐量和低 ...

  7. 智能合约重构社会契约(11)天德区块链智能合约系统

    智能合约是可以运行在区块链上的合约代码,是一种运行在区块链之上的电子协议,它允许在没有第三方的情况下进行可信执行. 1. 设计原则 智能合约数据来源于链上. 智能合约的输人是从区块链的数据库里出来的. ...

  8. 智能合约重构社会契约(10)超级账本之跨链Hyperledger Lab

    1. 定义 Hyperledger Lab定义了一种通信模型,允许许可链生态系统独立于平台交换任何链上数据或者自定义资产.它为每个可互相操作的区块链网络引人了"互操作性验证者"(i ...

  9. 智能合约重构社会契约(8)以太坊分片

    1. 定义 使用场景:以太坊的同构链跨链需求 分片定义:将所有节点分配到多条区块链中,每条区块链只需要处理网络中工作的部分. 分片效果:提高了以太坊的处理效率 分片问题:增加了链与链之间信息交互的困难 ...

最新文章

  1. linux 网络编程 ping,Linux 网络编程基础(4) -- Ping 的C代码实现
  2. 理论实践都重要,交换机安装全接触
  3. 微星主板超频_内存超频能力依旧拔群!微星MEG Z490 ACE主板评测
  4. 【EOJ Monthly 2019.01 - E】唐纳德先生与假骰子(假概率问题)
  5. python 如何判断excel单元格为空_如何用python处理excel(二)
  6. C# 通过一个控制台打开另一个控制台
  7. tpc的time-wait
  8. 突发奇想的分享一张Windows经典图片
  9. 云平台、面向服务的体系结构和云编程
  10. Gut Microbes:肠道微生物谱的改变与孤独症谱系障碍的异常神经递质代谢活动相关...
  11. ado全称_JDBC、ODBC、OLE DB、ADO、ADOMD区别与联系
  12. 浙工大c语言期中考试试题答案,浙工大c语言程序设计期末试卷2
  13. 报错!Exception in thread “main“ java.lang.UnsatisfiedLinkError: ilog.cplex.Cplex.CPXopenCPLEX([I)J
  14. Direction-aware Spatial Context Features for Shadow Detection and Removal
  15. 041_CSS及案例-网站主页模板
  16. java swing 自动补全_扩展easyui的combobox组件的自动完成(autocomplete)
  17. FreeSWITCH GUI (fs图形化配置程序介绍)
  18. liunx基础—zabbix5.0监控系统安装部署
  19. STM32学习心得十七:窗口看门狗(WWDG)实验及旧知识点复习
  20. micropython stm32f401_在STM32F401RE(小钢炮CANNON开发板)移植MicroPython

热门文章

  1. 青少年蓝桥杯_2020_每日一题_11.03_输出M与N之间符合要求的数据
  2. Android --- 按钮控件设置与不设置背景都会有一个小小的灰色阴影怎么去掉?
  3. hdfs user 连接_Python入门操作HDFS
  4. 学机械可以转计算机吗,本人合工大车辆工程大一新生,但是机械类前景都不太好,我要不要转计算机,求教?...
  5. 数据中心柴油发电机组功率有哪几种?
  6. Algorithm:数学建模大赛(国赛和美赛)的简介/内容、数学建模做题流程、历年题目类型及思想、常用算法、常用工具之详细攻略
  7. AI:几张图理清人工智能与机器学习、知识发现、数据挖掘、统计学、模式识别、神经计算学、数据库之间的暧昧关系
  8. DL之CNN:基于CNN-RNN(GRU,2)算法(keras+tensorflow)实现不定长文本识别
  9. ML之LoRBaggingRF:依次利用Bagging、RF算法对泰坦尼克号数据集 (Kaggle经典案例)获救人员进行二分类预测——模型融合
  10. HighNewTech:横向、纵向动图查看《Why资本寒冬》——根据中国四大行每年(2004年~2018年)贷款主要流向来看当下的资本寒冬