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

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

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

4.
文章提出一种基于区块链智能合约的茶叶交易模型,将茶叶交易过程中的各利益相关方都纳入基于区块链的茶叶交易信息共享网络中,各方自成节点,所有交易行为都在网络中进行,并由所有参与方共同监管,所有信息被记录在不可篡改、按时间戳记录的可靠数据库区块链中,并制定各方共同约定遵循的、监管茶叶种植、生产加工、交易行为过程的智能合约,合约的执行为各方提供一个无需人为干预、去信任的对茶叶交易行为的监督,更好平衡与保障茶农、消费者、茶商各方利益.  相似文献   

5.
智能合约:架构及进展   总被引:12,自引:0,他引:12  
智能合约是一种无需中介、自我验证、自动执行合约条款的计算机交易协议,近年来随着区块链技术的日益普及而备受关注.区块链上的智能合约具有去中心化、去信任、可编程、不可篡改等特性,可灵活嵌入各种数据和资产,帮助实现安全高效的信息交换、价值转移和资产管理,最终有望深入变革传统商业模式和社会生产关系,为构建可编程资产、系统和社会奠定基础.本文致力于以区块链智能合约为研究对象,对已有的研究成果进行全面梳理和系统概述,提出了智能合约的基础架构模型并以此为研究框架阐述了智能合约的运行机制与基础架构,总结了智能合约的研究挑战与进展,介绍了智能合约的技术优势与典型应用领域,讨论了智能合约的发展趋势,以期为智能合约的后续研究提供参考.  相似文献   

6.
区块链由于其去中心化的特点,被认为是近年来最具颠覆性和革命性的技术创新之一。然而,目前大多数公有链由于数据高度冗余使得区块链系统数据迅速增长,从而造成节点存储资源消耗严重,此外它还存在区块共识成本较高导致系统吞吐量低的问题。针对区块链的可扩展性问题,提出一种适用于智能合约的无状态区块链性能优化方案STiPChain。STiPChain基于密码累加器与可验证计算完成无状态设计,采用RSA累加器生成智能合约的有效性证明实现节点状态数据压缩,同时通过分布式设计将智能合约的有效性证明更新效率优化至常数,极大降低节点对磁盘和内存的需求。在此基础上,STiPChain将区块共识与区块运算解耦,基于可验证计算技术提出新的智能合约执行逻辑和交易验证方案,解决无状态条件下的交易验证与执行问题,有效提高系统吞吐量。实验结果表明,与Ethereum相比,STiPChain无状态区块链性能优化方案将共识节点的存储需求降低了99%,吞吐量提高了1.6~2 500倍。  相似文献   

7.
基于区块链的应用系统开发方法研究   总被引:2,自引:0,他引:2  
蔡维德  郁莲  王荣  刘娜  邓恩艳 《软件学报》2017,28(6):1474-1487
本文从区块链的技术层面及应用层面分析其特征,并给出区块链的分类。挖掘区块链的设计需求,针对区块链的一致性和可扩展性的应用需求进行深入分析。对区块链的应用系统开发方法及区块链建模进行研究,提出了账户区块链(account blockchain,简称ABC)和交易区块链(trading blockchain,简称TBC)的双链设计模型。对智能合约进行深入剖析,提出了链上代码并行执行模型应用原则。最后对区块链应用技术进行总结和展望。  相似文献   

8.
基于语义嵌入模型与交易信息的智能合约自动分类系统   总被引:1,自引:0,他引:1  
作为区块链技术的一个突破性扩展,智能合约允许用户在区块链上实现个性化的代码逻辑从而使得区块链技术更加的简单易用.在智能合约代码信息迅速增长的背景下,如何管理和组织海量智能合约代码变得更具挑战性.基于人工智能技术的代码分类系统能根据代码的文本信息自动分门别类,从而更好地帮助人们管理和组织代码的信息.本文以Ethereum平台上的智能合约为例,鉴于词嵌入模型可以捕获代码的语义信息,提出一种基于词嵌入模型的智能合约分类系统.另外,每一个智能合约都关联着一系列交易,我们又通过智能合约的交易信息来更深入地了解智能合约的逻辑行为.据我们所知,本文是对智能合约代码自动分类问题的首次研究尝试.测试结果显示该系统具有较为令人满意的分类性能.  相似文献   

9.
随着区块链技术在各行各业的广泛应用,区块链系统的架构变得越来越复杂,这也增加了安全问题的数量.目前,在区块链系统中采用了模糊测试、符号执行等传统的漏洞检测方法,但这些技术无法有效检测出未知的漏洞.为了提高区块链系统的安全性,本文提出了基于形式化理论的区块链系统漏洞检测模型VDMBS (Vulnerability Detection Model for Blockchain Systems),该模型综合了系统迁移状态、安全规约和节点间信任关系等多种安全因素,同时提供了基于业务流程执行语言BPEL (Business Process Execution Language)流程的漏洞模型构建方法.最后,本文用NuSMV在基于区块链的电子投票选举系统上验证了所提出的漏洞检测模型的有效性,实验结果表明,与现有的五种形式化测试工具相比,所提出的VDMBS模型能够检测出更多的区块链系统业务逻辑漏洞和智能合约漏洞.  相似文献   

10.
本文通过研究联盟区块链技术,结合医疗健康信息集成规范IHE,探讨对跨区域电子病历共享模型研究方法,构建了基于联盟区块链的电子病历系统模型,设计系统的四个智能合约。区块链存储患者关键医疗和交易记录,采用了改进的PBFT共识算法,该算法适用于P2P网络且能耗较低;医疗机构作为联盟成员互联互通,自动执行智能合约,通过授权可以共享和交换患者的完整病历信息。这个跨平台、安全可靠的医院间电子病历共享模型,对医疗大数据背景下共享医疗资源和提升医疗系统的服务质量有重大的现实意义。  相似文献   

11.
崔展齐  杨慧文  陈翔  王林章 《软件学报》2024,35(5):2235-2267
智能合约是运行在区块链合约层的计算机程序,能够管理区块链上的加密数字货币和数据,实现多样化的业务逻辑,扩展了区块链的应用.由于智能合约中通常涉及大量资产,吸引了大量攻击者试图利用其中的安全漏洞获得经济利益.近年来,随着多起智能合约安全事件的发生(例如TheDAO、Parity安全事件等),针对智能合约的安全漏洞检测技术成为国内外研究热点.提出智能合约安全漏洞检测的研究框架,分别从漏洞发现与识别、漏洞分析与检测、数据集与评价指标这3个方面分析现有检测方法研究进展.首先,梳理安全漏洞信息收集的基本流程,将已知漏洞根据基础特征归纳为13种漏洞类型并提出智能合约安全漏洞分类框架;然后,按照符号执行、模糊测试、机器学习、形式化验证和静态分析5类检测技术对现有研究进行分析,并讨论各类技术的优势及局限性;第三,整理常用的数据集和评价指标;最后,对智能合约安全漏洞检测的未来研究方向提出展望.  相似文献   

12.
Blockchain has recently emerged as a research trend, with potential applications in a broad range of industries and context. One particular successful Blockchain technology is smart contract, which is widely used in commercial settings (e.g., high value financial transactions). This, however, has security implications due to the potential to financially benefit froma security incident (e.g., identification and exploitation of a vulnerability in the smart contract or its implementation). Among, Ethereum is the most active and arresting. Hence, in this paper, we systematically review existing research efforts on Ethereum smart contract security, published between 2015 and 2019. Specifically, we focus on how smart contracts can be maliciously exploited and targeted, such as security issues of contract program model, vulnerabilities in the program and safety consideration introduced by program execution environment. We also identify potential research opportunities and future research agenda.  相似文献   

13.
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.  相似文献   

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

15.
近年来,以智能合约为代表的第二代区块链平台及应用出现了爆发性的增长,但频发的智能合约漏洞事件严重威胁着区块链生态安全。针对当前主要依靠基于专家经验的代码审计效率低下的问题,提出开发通用的自动化工具来挖掘智能合约漏洞的重要性。首先,调研并分析了智能合约面临的安全威胁问题,总结了代码重入、访问控制、整数溢出等10种出现频率最高的智能合约漏洞类型和攻击方式;其次,讨论了主流的智能合约漏洞的检测手段,并梳理了智能合约漏洞检测的研究现状;然后,通过实验验证了3种现有符号执行工具的检测效果。对于单一漏洞类型,漏报率最高达0.48,误报率最高达0.38。实验结果表明,现有研究涵盖的漏洞类型不完整,误报及漏报多,并且依赖人工复核;最后,针对这些不足展望了未来研究方向,并提出一种符号执行辅助的模糊测试框架,能够缓解模糊测试代码覆盖率不足和符号执行路径爆炸问题,从而提高大中型规模智能合约的漏洞挖掘效率。  相似文献   

16.
Blockchain is a cutting-edge technology based on a distributed, secure and immutable ledger that facilitates the registration of transactions and the traceability of tangible and intangible assets without requiring central governance. The agreements between the nodes participating in a blockchain network are defined through smart contracts. However, the compilation, deployment, interaction and monitoring of these smart contracts is a barrier compromising the accessibility of blockchains by non-expert developers. To address this challenge, in this paper, we propose a low-code approach, called EDALoCo, that facilitates the development of event-driven applications for smart contract management. These applications make blockchain more accessible for software developers who are non-experts in this technology as these can be modeled through graphical flows, which specify the communications between data producers, data processors and data consumers. Specifically, we have enhanced the open-source Node-RED low-code platform with blockchain technology, giving support for the creation of user-friendly and lightweight event-driven applications that can compile and deploy smart contracts in a particular blockchain. Additionally, this platform extension allows users to interact with and monitor the smart contracts already deployed in a blockchain network, hiding the implementation details from non-experts in blockchain. This approach was successfully applied to a case study of COVID-19 vaccines to monitor and obtain the temperatures to which these vaccines are continuously exposed, to process them and then to store them in a blockchain network with the aim of making them immutable and traceable to any user. As a conclusion, our approach enables the integration of blockchain with the low-code paradigm, simplifying the development of lightweight event-driven applications for smart contract management. The approach comprises a novel open-source solution that makes data security, immutability and traceability more accessible to software developers who are non-blockchain experts.  相似文献   

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

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