zoukankan      html  css  js  c++  java
  • 阅读《基于区块链的智能合约技术与应用综述 》总结

    摘要

    随着以比特币为代表的区块链技术的蓬勃发展,区块链技术已经开始逐步超越可编程货币时代而进入智能合约时代.智能合约(smart contract)是一种由事件驱动的、具有状态的代码合约和算法合同,随着区块链技术的深入发展而受到广泛关注和研究.智能合约利用协议和用户接口完成合约过程的所有步骤,允许用户在区块链上实现个性化的代码逻辑.基于区块链的智能合约技术具有去中心化、自治化、可观察、可验证、可信息共享等特点,可以有效构建可编程金融和可编程社会,广泛应用于数字支付、金融资产处置、多重签名合约、云计算、物联网、共享经济等多个领域.首先阐述了智能合约技术的基本概念、全生命周期、基本分类、基本架构、关键技术、发展现状以及智能合约的主要技术平台;然后探讨了智能合约技术的应用场景以及发展中所存在的问题;最后,基于智能合约的理论知识,搭建了以太坊实验环境并开发了一个众筹智能合约系统,旨在为基于区块链的智能合约技术的研究与发展提供参考与借鉴.

    1 智能合约背景知识

    1.1 区块链知识简介

    • 区块链技术的出现为解决双花问题拜占庭问题提供了有效途径。
      • 双花问题:同一笔钱在两次或多次交易中使用。
      • 拜占庭问题:在缺少可信任中心节点的情况下,分布式系统如何达成共识和建立互信。
    • 区块链的共识算法的理论基础是拜占庭容错。
    • 共识算法
    • 区块结构
      • 默克尔树(Merkle tree,MT)是一种哈希二叉树。与标准二叉树一样,由一组叶节点,一组中间节点和一个根节点构成。叶节点包含存储数据或其哈希值,中间节点是其两个子节点内容的哈希值,最上层的根节点同样也是由它的两个子节点内容的哈希值组成。

    1.2 智能合约概述

    • 智能合约是一种计算机协议,一旦部署就能实现自我执行和自我验证。
    • 智能合约区块链示意图
    • 智能合约的实现,本质上是通过赋予对象数字特性,即将对象程序化并部署在区块链上,成为全网共享的资源,再通过外部事件触发合约的自动生成与执行,进而改变区块链网络中数字对象的状态和数值。
    • 优点:确定性、一致性、可终止性、可观察性和可验证性、去中心化、高效率性和实时性、低成本。
    • 分类:链上代码、智能法律合约、智能应用合约。

    2 智能合约的基本架构

    • 数据加载方式
      • 链上方式:代码和应用发布到链上,从链上加载执行,不利于更新维护。
      • 链下方式:将散列值存储在链上。
    • 虚拟机和容器的作用都是在一个沙箱中执行合约代码,并对合约所使用的资源进行隔离和限制。智能合约的每次调用,都要在新的虚拟机或容器中进行,运行环境启动时间对整个智能合约系统影响较大。
    • 验证方法:形式化验证是智能合约领域的主流验证方式。
      • 形式化验证方法有两种:演绎验证和模型检测。
      • 形式化验证4部分:代码生成、形式化描述、形式化验证、一致性测试。
    • 可扩展性

    3 智能合约主流平台

    3.1 以太坊

    • 以太坊虚拟机(EVM)是在以太坊智能合约及其应用的运行环境
    • 以太坊智能合约的核心要素

    3.2 Hyperledger Fabric 超级账本

    • 设计原则:用例驱动
      • 5种用例:数字支付、金融资产管存、供应链、主数据管理、共享经济。
    • Fabric智能合约实质上是在验证节点上运行的分布式交易程序,用以自动执行特定的业务规则,最终更新账本状态。
    • 三种类型:公开、保密和访问控制,由拥有不同权限的成员发起。
    • 执行过程

    4 智能合约研究现状与应用场景

    应用场景

    • 数字身份
    • 数字记录
    • 证券
    • 金融贸易
    • 物联网
    • 供应链
    • 保险
    • 分布式计算

    5 现存问题

    • 效率问题
      • 数据存储量庞大。轻量化意味着牺牲可靠性和安全性
      • 状态确认是存在双重确认和闭锁确认问题。
    • 隐私问题
      • 智能合约用户的匿名性难以保证
      • 数据公开,地址之间相互联系,一旦泄露所有信息都将被公开。区块链的隐私保护机制可分为3 类:网络层、交易层和应用层的隐私保护。
    • 安全问题
      • 合约代码(和合约文本)的不确定性和不一致性会导致存在漏洞
    • 标准不统一问题
  • 相关阅读:
    16款值得一用的iPhone线框图模板 (PSD & Sketch)
    设计神器
    {CF812}
    hiho1080(多标记线段树)
    {容斥原理}
    {dp入门}
    {AC自动机}
    CF807
    Trie树
    杂记
  • 原文地址:https://www.cnblogs.com/20199321zjy/p/12528456.html
Copyright © 2011-2022 走看看