首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
Blockchain is becoming popular as a distributed and reliable ledger which allows distrustful parties to transact safely without trusting third parties. Emerging blockchain systems like Ethereum support smart contracts where miners can run arbitrary user-defined programs. However, one of the biggest concerns about the blockchain and the smart contract is privacy, since all the transactions on the chain are exposed to the public. In this paper, we present ShadowEth, a system that leverages hardware enclave to ensure the confidentiality of smart contracts while keeping the integrity and availability based on existing public blockchains like Ethereum. ShadowEth establishes a confidential and secure platform protected by trusted execution environment (TEE) off the public blockchain for the execution and storage of private contracts. It only puts the process of verification on the blockchain. We provide a design of our system including a protocol of the cryptographic communication and verification and show the applicability and feasibility of ShadowEth by various case studies. We implement a prototype using the Intel SGX on the Ethereum network and analyze the security and availability of the system.  相似文献   

2.
施建锋  吴恒  高赫然  张文博 《软件学报》2022,33(11):4084-4106
以太坊等区块链采用串行方式执行区块中的智能合约交易,虽能严格保障执行后节点间区块链状态的一致性,但这已成为目前制约区块链吞吐率的一个重要瓶颈.因此,采用并行方法优化智能合约交易的执行逐渐成为工业界和学术界关注的重点.总结了区块链智能合约并行执行方法的研究进展,提出了一个研究框架,该框架以智能合约并行执行的阶段为视角,凝练出4种智能合约并行执行模型,即基于静态分析的并行执行模型、基于动态分析的并行执行模型、节点间并行执行模型和分治并行执行模型,然后描述了每种模型下典型的并行执行方法.最后,对交易依赖图和并发控制策略等影响并行执行的因素进行了讨论,并提出了未来可研究的方向.  相似文献   

3.
陈胜  方明哲  蒋步云  李春晓  左春  李玉成  梁赓 《软件学报》2023,34(10):4681-4704
区块链上运行的智能合约具有一经部署难以修改、调用执行需经过共识等特点, 现有的需要修改智能合约代码或打断其执行过程的调试方法难以直接应用到智能合约上. 由于智能合约的运行过程由区块链交易顺序执行过程组成, 实现对区块链交易执行过程的追溯是提升智能合约可调试性的一个有效途径. 对区块链交易执行过程进行追溯主要目标是找出一条已经出块的区块链交易是如何得到当前的执行结果的. 区块链交易的执行依赖于区块链内部状态, 且该状态取决于之前区块链交易的执行结果, 因此存在着传递性依赖. 区块链交易的依赖性和区块链所提供的执行环境的特点给区块链交易执行追溯带来了挑战. 区块链交易执行追溯面临的挑战主要有3方面, 即如何从智能合约部署的生产环境中获取足够追溯的信息、如何获取区块链交易之间的依赖关系, 以及如何保证追溯结果与实际在线执行过程一致. 提出了一种基于录制重放的区块链交易执行追溯方法, 在合约容器中建立录制重放机制, 无需修改合约代码即可支持交易执行中对状态读写操作的录制, 并且不会打断智能合约运行; 提出了基于状态读写的交易依赖分析算法, 支持对存在依赖关系的前序交易进行按需回溯; 此外, 设计了录制读写操作记录的验证机制, 确保重放的执行过程与真实执行过程之间的一致性可被验证. 所提出的方法能够追溯区块链交易调用智能合约的执行过程, 可用于智能合约调试, 并且当智能合约异常造成损失时可用于举证. 在实验中对比了将录制的读写操作记录存储于链上和存储于链下之间的性能差异, 通过案例研究展示了所提方法在追溯区块链交易执行方面的有效性和优点.  相似文献   

4.
随着区块链技术的应用推广,智能合约的数量呈现爆发式增长,而智能合约的漏洞将给用户带来巨大损失。但目前研究侧重于以太坊智能合约的语义分析、符号执行的建模与优化等,没有详细描述利用符号执行技术检测智能合约漏洞流程,以及如何检测智能合约常见漏洞。为此,在分析以太坊智能合约的运行机制和常见漏洞原理的基础上,利用符号执行技术检测智能合约漏洞。首先基于以太坊字节码构建智能合约执行控制流图,再根据智能合约漏洞特点设计相应的约束条件,利用约束求解器生成软件测试用例,检测常见的整型溢出、权限控制、Call注入、重入攻击等智能合约漏洞。实验结果表明,所提检测方案具有良好的检测效果,对Awesome-Buggy-ERC20-Tokens漏洞库中70份含漏洞的智能合约的漏洞检测正确率达85%。  相似文献   

5.
吴恺东  马郓  蔡华谦  景翔  黄罡 《软件学报》2023,34(11):5042-5057
基于区块链的去中心化应用已在加密数字货币、云存储、物联网等多个领域提供健壮、可信且持久的服务, 然而区块链的吞吐能力难以满足去中心化应用日益增长的性能需求. 分片是当前主流的区块链性能优化技术, 但现有的区块链分片主要面向用户和用户之间的转账交易, 并不完全适用于以智能合约调用交易为主的去中心化应用. 针对此问题, 设计并实现面向智能合约分片的联盟区块链系统BETASCO. BETASCO为每个智能合约提供一个分片作为独立执行环境, 通过基于分布式散列表的合约定位服务将交易路由至目标智能合约所在的分片, 并通过智能合约间的异步调用机制满足跨智能合约的通信和协作需求. BETASCO通过节点虚拟化允许一个节点加入多个分片, 支持同一组节点上多个智能合约的并行执行. 实验结果表明, BETASCO整体吞吐能力可随智能合约数量的增加而线性增长, 且执行单个智能合约的吞吐能力与HyperLedger Fabric相当.  相似文献   

6.
以太坊虚拟机是以太坊区块链中关键组成部分, 其缺陷会导致交易的执行结果出现偏差, 给以太坊生态带来严重问题. 现有的以太坊虚拟机缺陷检测工作仅将虚拟机视为独立的智能合约执行工具, 没有完整测试其工作流程, 从而导致缺陷检测存在盲点. 针对上述问题, 提出了一种以太坊虚拟机运行全过程的缺陷检测方法(ETHCOV). ETHCOV首先结合权重策略指导智能合约、合约接口参数输入和交易序列按不同粒度变异, 然后将其与区块状态以及世界状态打包作为测试用例, 最后将测试用例输入到以太坊虚拟机中触发运行并对比检验运行结果, 以此来检测以太坊虚拟机的漏洞缺陷. 基于上述方法实现了一个原型系统, 并以2万多个真实智能合约作为为输入对以太坊虚拟机进行缺陷检测测试. 实验结果表明, 相较于现有工具EVMFuzzer, ETHCOV的测试效率提升了339%, 代码覆盖率提升了125%, 并检测出3组用例的不一致输出. 这些结果表明ETHCOV能有效检测以太坊虚拟机的缺陷.  相似文献   

7.
以太坊是第二代区块链平台的典型代表,其最大特点是能够通过智能合约来支持功能丰富的分布式应用.另外,为了提高交易验证效率,以太坊使用了本地数据库来存储账户状态,并基于区块头内的状态树根保证状态数据的完整性.但是研究工作表明,本地数据库存在被篡改的安全隐患,且攻击者可以基于被篡改的账户状态发出非法交易,从而牟取不正当利益....  相似文献   

8.
The creative introduction of the smart contracts in Ethereum, which are Turing-complete programs, boosted blockchain to the second generation. Meantime, the specifically designed young and fast-evolving programming languages, such as Solidity, become the key factors behind smart contracts being the breeding ground of ubiquitous defects. As many contract defects occur within certain compiler versions, knowing the specific compiler version used to generate the contract's bytecode, facilitates the design of more targeted defect detection approaches, and provides ways to estimate the risks faced of invoking it. To this end, we propose VSmart (compiler Version identification for Smart contract), which takes in the bytecode of the smart contract to be analyzed and outputs the major compiler version used to produce it. The basic idea is to leverage deep neural networks to grasp version-indicative features from contracts' normalized opcode sequences, and train classifiers on a data set consisting of 131,546 smart contracts with ground-truth labels we collected from Etherscan. The performance evaluation conducted shows that VSmart achieves nearly 98% accuracy in identifying major Solidity compiler versions. Further, on the basis of VSmart, we perform an empirical study on the distribution of the Solidity compiler versions on a wild data set consisting of 15,326,672 nontrivial smart contracts actually deployed on the Ethereum blockchain. The landscape estimation results show that the Solidity version distribution is rather imbalanced, with Solidity 0.4 being the most popular one; and the developers' Solidity usage practices conflict with the official's suggestion of always using the latest version, while they tend to gradually switch to newer versions.  相似文献   

9.
Ao  Xiang  Liu  Yang  Qin  Zidi  Sun  Yi  He  Qing 《World Wide Web》2021,24(5):1565-1585
World Wide Web - Ethereum, the most popular public blockchain with the capability of smart contracts and the cryptocurrency Ether, is escalating in the number of account addresses and transactions...  相似文献   

10.
Contemporary Cloud Manufacturing-as-a-Service (CMaaS) platforms now promise customers instant pricing and access to a large capacity of manufacturing nodes. However, many of the CMaaS platforms are centralized with data flowing through an intermediary agent connecting clients with service providers. This paper reports the design, implementation and validation of middleware software architectures which aim to directly connect client users with manufacturing service providers while improving transparency, data integrity, data provenance and retaining data ownership to its creators. In the first middleware, clients have the ability to directly customize and configure parts parametrically, leading to an instant generation of downstream manufacturing process plan codes. In the second middleware, clients can track the data provenance generated in a blockchain based decentralized architecture across a manufacturing system. The design of digital assets across a distributed manufacturing system infrastructure controlled by autonomous smart contracts through Ethereum based ERC-721 non-fungible tokens is proposed to enable communication and collaboration across decentralized CMaaS platform architectures. The performance of the smart contracts was evaluated on three different global Ethereum blockchain test networks with the centrality and dispersion statistics on their performance provided as a reference benchmark for future smart contract implementations.  相似文献   

11.
智能合约是实现各类区块链应用的核心软件程序.近期,以太坊区块链平台(Ethereum)上的智能合约暴露出大量错误和安全隐患,在国际上引发了智能合约形式化验证的研究热潮.为提供高可信度的验证结果,智能合约程序语言的形式化必不可少.本工作对以太坊中间语言Yul进行形式化,首次给出了其类型系统和小步操作语义的形式化定义.该语义为可执行语义(executable semantics),由120个Yul语言程序组成的测试集进行测试.本工作在Isabelle/HOL证明辅助工具中完成,为基于定理证明的智能合约正确性、安全性验证奠定了基础.  相似文献   

12.
自中本聪提出比特币以来,区块链技术得到了跨越式发展,特别是在数字资产转移及电子货币支付方面。以太坊引入智能合约代码,使其具备了同步及保存智能合约程序执行状态,自动执行交易条件并消除对中介机构需求,Web3.0 开发者可利用以太坊提供的通用可编程区块链平台构建更加强大的去中心化应用。公链系统具备的特点,如无须中央节点控制、通过智能合约保障交互数据公开透明、用户数据由用户个人控制等,使得它在区块链技术发展的过程中吸引了更多的用户关注。然而,随着区块链技术的普及和应用,越来越多的用户将自己的数字资产存储在区块链上。由于缺少权威机构的监管及治理,以太坊等公链系统正逐步成为黑客窃取数字资产的媒介。黑客利用区块链实施诈骗及钓鱼攻击,盗取用户所持有的数字资产来获取利益。帮助读者建立区块链资产安全的概念,从源头防范利用区块链实施的资产窃取攻击。通过整理总结黑客利用区块链环境实施的资产窃取攻击方案,抽象并归纳威胁模型的研究方法,有效研究了各类攻击的特征及实施场景。通过深入分析典型攻击方法,比较不同攻击的优缺点,回答了攻击能够成功实施的根本原因。在防御技术方面,针对性结合攻击案例及攻击实施场景介绍了钓鱼检测、代币授权检测、代币锁定、去中心化代币所属权仲裁、智能合约漏洞检测、资产隔离、供应链攻击检测、签名数据合法性检测等防御方案。对于每一类防御方案,给出其实施的基本流程及方案,明确了各防护方案能够在哪类攻击场景下为用户资产安全提供防护。  相似文献   

13.
为解决物流服务交易中供应商、生产商、用户等多方参与者之间的信用关系缺失,提高制定合约的效率,避免干扰合约的正常执行以及传统合约的可抵赖性、可篡改性以及不可追溯性等问题,提出了物流服务交易区块链与蚁群智能合约算法。分析传统的物流服务交易模式存在的问题,提出一种新的物流服务交易合约概念模型,并利用区块链和智能合约的特点和优势,以及物流服务交易中的信息发布、谈判、议价、制定合约等交易环节和区块链的链接关系,构建一种去中心化的物流服务交易智能合约区块链模型。以该模型为基础,依据物流服务交易合约的工作流程以及蚁群算法的特点,设计了物流服务交易区块链与蚁群智能合约算法。在多节点物流服务交易仿真平台进行实验,实验结果表明,该算法实现了基于区块链的多物流用户服务交易智能合约的创建、存储和自动执行,整个过程透明可跟踪、共识且不可篡改。因此,该算法是基于区块链解决物流服务交易问题的一种有效方法。  相似文献   

14.

Being the blockchain and distributed ledger technologies particularly suitable to create trusted environments where participants do not trust each other, business process management represents a proper setting in which these technologies can be adopted. In this direction, current research work primarily focuses on blockchain-oriented business process design, or on execution engines able to enact processes through smart contracts. Conversely, less attention has been paid to study if and how blockchains can be beneficial to business process monitoring. This work aims to fill this gap by (1) providing a reference architecture for enabling the adoption of blockchain technologies in business process monitoring solutions, (2) defining a set of relevant research challenges derived from this adoption, and (3) discussing the current approaches to address the aforementioned challenges.

  相似文献   

15.
针对已部署到区块链上的智能合约无法实现升级的问题,结合以太坊技术提出了一种松耦合的新型智能合约模型。该模型将传统的智能合约拆分为接口合约集、逻辑合约集、数据合约集三个子集。以此松耦合智能合约模型为基础,设计了一个客户实名转账获取代币的业务场景,通过部署代币合约、接口合约、逻辑合约和数据合约,实现了基本的实名转账功能。最后通过以太坊平台进行系统测试,分析了实名转账场景的功能性、可升级性及成本花销。结果表明基于该模型设计的智能合约,在实现基本功能的同时,能够允许在上链之后对其合约子集进行升级,且能有效降低升级成本,相比传统的链下升级方案,松耦合模型合约的升级成本降低了32.43%,部署成本仅增加了24.16%。  相似文献   

16.
以太坊Solidity智能合约基于区块链技术,作为一种旨在以信息化方式传播、验证或执行的计算机协议,为各类分布式应用服务提供了基础.虽然落地还不足6年,但因其安全漏洞事件频繁爆发,且造成了巨大的经济损失,使得其安全性检查方面的研究备受关注.首先基于以太坊相关技术对智能合约的一些特殊机制和运行原理进行介绍,并根据智能合约...  相似文献   

17.
目前知识产权交易普遍存在信息不对称、交易多方缺乏信任和有效激励等问题,借助区块链的不可篡改、安全透明、可追溯、去中心化等技术特性,提出并实现了一种基于区块链的知识产权交易平台BIPTP,通过智能合约实现交易的精准撮合,支持多方定制转让合同和收益分配合同,引入知识产权权人方和监管方作为联盟链节点,异步完成需求收集和权人变更。实验表明,平台的交易吞吐量可达到250?TPS,万笔交易平均撮合时延约1.9?s,交易成功率可达到78%,相较于其他知识产权交易平台,本系统能够在知识产权权人、发明人、受让方以及中介方之间达成多方权益保证的可信合约并确保执行,从而获得更好的数据可信度和合同履约能力,显著提高知识产权交易的成功率,为繁荣我国知识产权交易市场提供了一种有效的解决方案。  相似文献   

18.
双链式区块链交易监管研究   总被引:1,自引:0,他引:1       下载免费PDF全文
最近,作为去中心化的分布式帐本,区块链使人们能够在不可信赖的环境中进行安全可靠的交易,慢慢地被应用于各个领域。但是,逐渐出现了一些问题,用户隐私信息泄露,存在非法的交易且缺乏有效的监管,智能合约市场存在漏洞等。针对区块链非法交易,提出了监管链的概念,并建立了可以有效监管区块链交易的交易区块链(TBC)和监管区块链(RBC)双链结构。为了提高智能合约的安全性,进一步在监管链中建立智能合约市场,并设计了用于智能合约功能校验的零知识证明算法。理论和数据分析表明,双链结构具有高效率和可扩展性强。实验结果表明机器学习算法对于区块链交易数据的分类准确性达到95.0%,并证明了零知识证明校验智能合约功能的可行性。  相似文献   

19.
Ethereum blockchain is a new internetware with tens of millions of smart contracts running on it.Different from general programs,smart contracts are decentralized,tamper-resistant and permanently running.Moreover,to avoid resource abuse,Ethereum charges users for deploying and invoking smart contracts according to the size of contract and the operations executed by contracts.It is necessary to optimize smart contracts to save money.However,since developers are not familiar with the operating environment of smart contracts(i.e.,Ethereum virtual machine)or do not pay attention to resource consumption during development,there are many optimization opportunities for smart contracts.To fill this gap,this paper defines six gas-inefficient patterns from more than 25,000 posts and proposes an optimization approach at the source code level to let users know clearly where the contract is optimized.To evaluate the prevalence and economic benefits of gas-inefficient patterns,this paper conducts an empirical study on more than 160,000 real smart contracts.The promising experimental results demonstrate that 52.75%of contracts contain at least one gas-inefficient pattern proposed in this paper.If these patterns are removed from the contract,at least 0.30 can be saved per contract.  相似文献   

20.
近年来预付费消费模式倍受商家和消费者的青睐,在娱乐健身、教育培训、商超零售等服务业中得到广泛应用。现有预付卡管理中存在商家欺诈高发、商家违约频发、监管不善等诸多问题,难以保障消费者的权益。当前,基于区块链的智能合约技术具有去中心化、安全性高、可验证等特性,可用来有效管理预付卡,为解决预付卡管理存在的问题提供了新思路。因此提出了一种基于区块链的公平预付卡管理方案,消费者和商家通过与智能合约的交互完成交易,利用智能合约的暂存价值完成预付款的管理。消费者和商家共同确认消费成功后,由智能合约自动结算本次消费费用给商家。当商家存在违约时,消费者可以通过申诉追回已支付的预付款,维护自己的权益,从而保证交易的公平性。基于以太坊实验环境实现了预付卡管理方案,对预付卡发售、消费与退款等功能进行了详细测试。通过实验测试和安全性分析,验证了该方案的有效性和可行性。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号