首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 62 毫秒
1.
李显伟 《计算机应用研究》2023,40(12):3545-3550
针对现有智能合约缺陷预测方法未考虑合约代码内部结构对缺陷产生的影响的不足,提出了一种基于网络度量元的Solidity智能合约缺陷预测方法。首先,通过Solidity-Antlr4工具构建Solidity智能合约的抽象语法树(abstract syntax tree, AST);其次,根据抽象语法树构建合约网络,网络中的节点代表函数和属性,边代表函数间的调用关系和函数对属性的操作关系;然后,引入复杂网络领域的知识,构建了一套针对Solidity智能合约的网络度量元;最后,基于多种回归模型和分类模型构建智能合约缺陷预测模型,进而比较不同类型的度量元在Solidity智能合约缺陷预测方面的性能。数据实验表明,结合了网络度量元的缺陷预测模型的预测性能比相应没有结合网络度量元的模型要好。  相似文献   

2.
智能合约是一种以代码的方式执行合同条款的可计算交易协议,其应用场景与规模日益增长,承载着多达数十亿美元的各类资产。由于其代码缺陷可能会造成严重的经济损失,因此智能合约的可信开发成为技术关键。为此,提出了一种基于集合论语言Event-B的智能合约可信验证与自动生成方法。Event-B方法是一种基于精化的形式化方法,可用于规约、设计和验证软件系统。通过对智能合约的模型验证和可执行代码的自动生成技术,研发了自动转换工具EB2S,打通了形式化模型和智能合约编程语言的语义鸿沟和技术壁垒。最后,选取典型的在线支付智能合约场景,应用基于Event-B的智能合约模型自动生成合约代码,验证了EB2S转换工具的有效性。  相似文献   

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

4.
本文研究区块链智能合约的缺陷检测问题,即检测合约中是否存在部分合约方无论选择什么动作,均无法避免损失的状态.将智能合约问题转换成合约状态迁移图上的博弈策略选择问题,提出了基于纳什均衡理论的合约缺陷自动检测方法,以及为了提高检测效率,提出了针对合约状态变迁图和博弈策略形式的一系列化简方法.最后,实现了一个智能合约建模、分...  相似文献   

5.
智能合约是一套以数字形式定义的承诺.通过智能合约可以大大减少协议制定的中间环节, 提高协议制定的效率.区块链技术为智能合约的执行提供了可信平台.随着区块链应用的拓广与深入, 智能合约的作用必然越来越突出, 智能合约的可靠性问题也将更加突显.以提高智能合约可靠性为目的的研究日益得到重视, 但尚未有人对智能合约的时间性质可能引起的可靠性问题进行过系统的研究.本文通过分析典型智能合约, 对智能合约时间约束的不同表现形式进行梳理, 提炼出相应的时间约束模式并对其进行形式化; 定义Solidity智能合约到时间自动机的转换规则并实现其到实时模型检测工具UPPAAL入口模型的自动转换; 再利用UPPAAL验证合约的时间相关性质.最后对两个实际合约进行实例研究, 结果表明本文所提炼模式的普遍性以及本文所提出形式化验证方案的可行性和有效性.  相似文献   

6.
作为当前最大的支持智能合约的区块链平台,数以百万计的智能合约被部署在以太坊上.由于即使发现包含bug也无法修改已部署的智能合约,因此对于开发人员而言,在部署合约前修复合约中的bug至关重要.当前研究人员已经提出了许多智能合约分析工具,用于检测合约中的bug.这些工具要么使用基于以太坊虚拟机字节码的符号执行来检测bug,要么将源代码转换为中间表示形式后再检测bug.然而,基于符号执行的工具通常无法覆盖合约中的大部分bug;将源代码转换为中间表示形式会对检测速度产生负面影响.此外,现有的工具都只能检测bug,而无法根据检测结果自动修复bug.为了解除以上限制,提出了一种名为SolidityCheck的方法,该方法通过使用正则表达式、程序插桩和语句替换等技术,实现快速检测合约中的bug并自动修复其中某些种类bug的目的.文中进行了 一系列实验来评估SolidityCheck,实验结果表明,与现有方法相比,SolidityCheck在多个指标上显示出了优异的性能.  相似文献   

7.
在软件缺陷预测过程中,训练集质量是影响预测结果的关键因素。近几年,训练集选择也成为跨项目缺陷预测和跨版本缺陷预测等场景下的研究热点。然而,现有研究大多针对单一预测场景,可能会在一定程度上影响训练集质量。基于跨项目缺陷预测和跨版本缺陷预测两个场景,从数据分布角度提出一种基于相似性度量的训练集推荐(similarity-based training set recommendation,STSR)方法。采用聚类将候选源项目与目标项目划分为相同个数的簇,计算簇心之间的欧氏距离衡量数据集的相似度,对目标项目进行抽样,计算候选源项目与抽样目标项目缺陷率的差值,并计算干扰类比率,最终实现训练集推荐。在PROMISE数据集的11个项目共40个版本上进行实验验证,采用F1和AUC指标评价STSR方法的性能。实验结果表明,与跨版本缺陷预测相比,STSR方法的F1更优,在AUC指标上两者相当;在时间代价方面,STSR方法的最长推荐时间为5.09 s,是可接受的。  相似文献   

8.
软件缺陷度量与软件过程管理方法研究   总被引:1,自引:0,他引:1  
软件能力成熟度模型第4级中要求在项目中定量管理,建立组织级过程性能,构成完整的量化管理,采用统计或其它定量方法管理软件过程,并通过对过程中出现的方法,技术等问题进行因果分析和寻找解决方案。在仔细研究了现有的缺陷度量分类方法和分析指标后,提出了一个基于缺陷度量与分析的软件过程改进模型。应用该模型可以设计缺陷数据管理系统。  相似文献   

9.
针对物联网中设备资源受限、连接数量大、动态性强等特点,传统的集中式访问控制技术已不完全适用,如何在物联网环境中实现安全高效的访问控制授权成为亟待解决的关键问题.对此,提出一种基于层级区块链的物联网分布式体系架构(distributed architecture based on hierarchical blockchain for Internet of things, DAHB).在该架构中以基于属性的访问控制(attribute-based access control, ABAC)模型为基础,采用智能合约的方式实现对物联网设备基于属性的域内和跨域的灵活、动态、自动化的访问控制.同时,在属性度量中增加信任值与诚实度动态评估不同域间和设备间的信任关系,保证实体能够履行合约的信用能力和稳定性.理论分析和实验结果表明:该方案比现有方案更有效解决物联网访问控制中存在的轻量级、灵活性、细粒度和安全性问题.  相似文献   

10.
传统医疗数据共享模型存在访问效率低下和访问控制中心化问题。针对医疗数据动态性强、数据量大和隐私度高的特点,提出一种基于智能合约的分类分级属性访问控制方法。首先,对属性和级别进行划分,形成属性类别和资源隐私等级,根据资源等级设计不同粒度的访问控制策略,合理配置属性信息,提升用户访问效率;然后,利用智能合约为访问控制提供去中心化的执行环境,允许自动化策略判决,解决集中式访问控制带来的安全隐患;最后,实验结果表明该方案能够有效提高访问控制效率,实现访问控制智能判决,保证医疗数据的安全共享。  相似文献   

11.
熊婧  高岩  王雅瑜 《计算机科学》2016,43(7):186-190
将Adaboost算法应用到软件缺陷预测模型中是软件缺陷预测的一种新思路,Adaboost算法原理通过训练多个弱分类器构成一个更强的级联分类器,有效地避免了过拟合问题。通过采用美国国家航空航天局(NASA)的软件缺陷数据库的仿真实验,分别对原始BP神经网络算法和Adaboost算法进行分析对比,其中Adaboost的弱分类器采用神经网络。实验结果表明,Adaboost级联分类器有效地提高了软件缺陷预测模型的预测性能。  相似文献   

12.
王斌  吴太文  胡培培 《计算机科学》2013,40(9):16-20,24
缺陷是软件产品的固有成分,如何管理、减少和预防缺陷,对于提高软件质量、降低软件成本具有重要的意义.从缺陷分类和缺陷分析两个方面介绍了软件缺陷研究的现状,对比、分析了各种缺陷分类方法的优势和不足,总结了缺陷分析的主要研究方向及其研究方法,最后对缺陷研究方法的选择进行了讨论.  相似文献   

13.
杨杰  燕雪峰  张德平 《计算机科学》2017,44(8):176-180, 206
Boosting重抽样是常用的扩充小样本数据集的方法,首先针对抽样过程中存在的维数灾难现象,提出随机属性子集选择方法以进行降维处理;进而针对软件缺陷预测对于漏报与误报的惩罚因子不同的特点,在属性选择过程中添加代价敏感算法。以多个基本k-NN预测器为弱学习器,以代价最小为属性删除原则,得到当前抽样集的k值与属性子集的预测器集合,采用代价敏感的权重更新机制对抽样过程中的不同数据实例赋予相应权值,由所有预测器集合构成自适应的集成k-NN强学习器并建立软件缺陷预测模型。基于NASA数据集的实验结果表明,在小样本情况下,基于Boosting的代价敏感软件缺陷预测方法预测的漏报率有较大程度降低,误报率有一定程度增加,整体性能优于原来的Boosting集成预测方法。  相似文献   

14.
软件缺陷度量   总被引:7,自引:0,他引:7  
运用软件度量的方法改进传统的缺陷管理过程, 论述了在缺陷管理过程中如何计划度量、实施度量, 对度量结果进行分析, 并以实际数据为例分析相关人员的工作效率和项目进展情况, 为项目管理者的决策提供帮助。最终对传统的缺陷管理模式进行改进, 是软件度量方法在缺陷管理中的一次成功实践。关键词: SPM; 软件度量; 软件测试; 缺陷管理中图法分类号: 文献标识码:A 文章编号: 1001-3695(2005)04-0054-04  相似文献   

15.
软件缺陷模式的研究   总被引:1,自引:0,他引:1  
软件缺陷是导致软件不可靠的根本原因,提高软件可靠性的关键在于减少软件缺陷,那么如何利用积累的缺陷数据提高软件可靠性?结合软件缺陷和模式的概念提出了软件缺陷模式的定义。通过分析积累的软件缺陷数据对缺陷模式的所属分类进行了划分,在此基础上进一步给出了软件需求分析、设计和编码各阶段的软件缺陷模式。最后阐述了在软件开发过程和测试过程中缺陷模式的应用,为如何利用缺陷数据来提高软件可靠性提供了思路。  相似文献   

16.
郝世锦  崔冬华 《软件》2012,(2):51-52,55
根据软件开发分层的思想,提出了基于软件缺陷分层的测试构架。在缺陷分层的测试架构下可以知道测试类之间的的关系和属性,容易发现关联缺陷。本文是在软件缺陷分层测试架构下结合粒子群优化(PSO)算法建立软件缺陷预测模型,并通过模拟实验验证预测模型的性能。结果显示该模型能有效提高预测缺陷效率和缺陷发生位置。  相似文献   

17.
软件缺陷预测是合理利用软件测试资源、提高软件性能的重要途径。为处理软件缺陷预测模型中浅层机器学习算法无法对软件数据特征进行深度挖掘的问题,提出一种改进深度森林算法——深度堆叠森林(DSF)。该算法首先采用随机抽样的方式对软件的原始特征进行变换以增强其特征表达能力,然后用堆叠结构对变换特征做逐层表征学习。将深度堆叠森林应用于Eclipse数据集的缺陷预测中,实验结果表明,该算法在预测性能和时间效率上均比深度森林有明显的提升。  相似文献   

18.
在软件缺陷预测中,标记样本不足与类不平衡问题会影响预测结果.为了解决这些问题,文中提出基于半监督集成学习的软件缺陷预测方法.该方法利用大量存在的未标记样本进行学习,得到较好的分类器,同时能集成一系列弱分类器,减少多数类数据对预测产生的偏倚.考虑到预测风险成本问题,文中还采用训练样本集权重向量更新策略,降低有缺陷模块预测为无缺陷模块的风险.在NASA MDP数据集上的对比实验表明,文中方法具有较好的预测效果.  相似文献   

19.
软件缺陷预测技术   总被引:32,自引:6,他引:32  
王青  伍书剑  李明树 《软件学报》2008,19(7):1565-1580
软件缺陷预测技术从20世纪70年代发展至今,一直是软件工程领域最活跃的内容之一,在分析软件质量、平衡软件成本方面起着重要的作用.研究和讨论了软件缺陷预测技术的起源、发展和当前所面临的挑战,对主流的缺陷预测技术进行了分类讨论和比较,并对典型的软件缺陷的分布模型给出了案例研究.  相似文献   

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

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