一种基于区块链的IP软核授权方法、装置及介质与流程

文档序号:15844952发布日期:2018-11-07 08:53阅读:398来源:国知局
一种基于区块链的IP软核授权方法、装置及介质与流程

本发明涉及区块链领域,特别是涉及一种基于区块链的ip软核授权方法、装置及介质。

背景技术

由于电子产品以及软件产品的功能越来越丰富,当前人们对于集成电路的设计要求越来越高,随着芯片设计的复杂程度的提高,人们逐渐设计出功能各异,且可复用的模块并申请相应的知识产权保护,该可复用的模块被称为ip核,并且根据ip核的实体形式的不同,ip核被分为ip软核、ip固核以及ip硬核。

生活中常见的付费软件产品,即为ip软核的一种体现方式。如需对ip软核进行使用,需要预先通过相应ip软核的开发公司进行授权,授权的具体过程通常是,申请端设备向授权端进行相关ip软核的使用支付或满足授权端对ip软核的相关使用要求后,授权端在申请端生成授权文件以完成最终的授权。进而每次ip软核在申请端运行时,均需要查看授权文件,以确保ip软核使用的合法性。但是由于授权文件极易被伪造及复制,因此当前的授权方法相对难以抑制ip软核盗版情况的发生。

由此可见,提供一种基于区块链的ip软核授权方法,以保证对ip软核授权的安全性,进而相对减少ip软核盗版情况的发生,是本领以技术人员亟待解决的问题。



技术实现要素:

本发明的目的是提供一种基于区块链的ip软核授权方法、装置及介质,以保证对ip软核授权的安全性,进而相对减少ip软核盗版情况的发生。

为解决上述技术问题,本发明提供一种基于区块链的ip软核授权方法,包括:

通过授权端响应申请端对目标ip软核的授权申请,并对目标ip软核的源代码进行hash运算以生成第一hash值;

根据第一hash值生成数字签名,并将数字签名及预设的授权条件传输至申请端;

当申请端满足授权条件,且根据源代码验证数字签名合法时,将授权记录广播至区块链网络中的节点,以加入节点的区块链中,完成对目标ip软核的授权;

当申请端使用目标ip软核时,根据区块链中的授权记录对申请端进行授权检验。

优选的,在根据第一hash值生成数字签名前,该方法进一步包括:

对第一hash值进行数字摘要。

优选的,申请端根据源代码验证数字签名的具体步骤包括:

申请端对源代码进行hash运算以生成第二hash值,并解析数字签名以得到第一hash值;

判断第一hash值与第二hash值是否相同;

如果是,则数字签名合法。

优选的,申请端与授权端均处于区块链网络中。

优选的,授权条件具体为申请端的代币数量大于或等于预设值;

相应的,当将授权记录广播至区块链网络中的节点前,该方法进一步包括:

根据预设值对应修改申请端以及授权端的utxo,并将申请端以及授权端的utxo写入授权记录。

优选的,在将授权记录广播至区块链网络中的节点后,该方法进一步包括:

当获取到6个节点的广播确认消息后,将授权记录写入数据库。

此外,本发明还提供一种基于区块链的ip软核授权装置,包括:

响应运算模块,用于通过授权端响应申请端对目标ip软核的授权申请,并对目标ip软核的源代码进行hash运算以生成第一hash值;

传输模块,用于根据第一hash值生成数字签名,并将数字签名及预设的授权条件传输至申请端;

授权模块,用于当申请端满足授权条件,且根据源代码验证数字签名合法时,将授权记录广播至区块链网络中的节点,以加入节点的区块链中,完成对目标ip软核的授权;

授权检验模块,用于当申请端使用目标ip软核时,根据区块链中的授权记录对申请端进行授权检验。

优选的,该装置进一步包括:

摘要模块,用于对第一hash值进行数字摘要。

此外,本发明还提供一种基于区块链的ip软核授权装置,包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上述的基于区块链的ip软核授权方法的步骤。

此外,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的基于区块链的ip软核授权方法的步骤。

本发明所提供的基于区块链的ip软核授权方法,在响应申请端对目标ip软核的授权申请后,根据目标ip软核的源代码生成数字签名,并且将预设的授权条件与数字签名传输至申请端,进而当申请端验证数字签名合法并且满足授权条件时,将授权记录广播至区块链网络中的节点以加入节点的区块链中,进而完成对目标ip软核的授权。完成授权后,当申请端使用目标ip软核时,根据区块链中的授权记录对申请端进行授权检验。可见,本方法在对ip软核进行授权时,通过将授权记录广播至区块链网络的节点并加入各节点的区块链中,由于区块链机制具有严格的数据共识性,因此将授权记录加入区块链网络的各节点中,相当于各节点共同见证ip软核的授权状态,而当申请端使用ip软核时,通过各节点区块链中的授权记录对申请端进行授权检验,降低了对授权文件进行伪造及复制的可能性,保证了对ip软核授权的安全性,进而相对减少了ip软核盗版情况的发生。此外,本发明还提供一种基于区块链的ip软核授权装置及介质,有益效果同上所述。

附图说明

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种基于区块链的ip软核授权方法的流程图;

图2为本发明实施例提供的一种基于区块链的ip软核授权装置结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

本发明的核心是提供一种基于区块链的ip软核授权方法,以保证对ip软核授权的安全性,进而相对减少ip软核盗版情况的发生。本发明的另一核心是提供一种基于区块链的ip软核授权装置及介质。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

实施例一

图1为本发明实施例提供的一种基于区块链的ip软核授权方法的流程图。请参考图1,基于区块链的ip软核授权方法的具体步骤包括:

步骤s10:通过授权端响应申请端对目标ip软核的授权申请,并对目标ip软核的源代码进行hash运算以生成第一hash值。

需要说明的是,由于是申请对目标ip软核的授权,而目标ip软核的实体形式为代码,因此在响应申请端对于目标ip软核的授权申请后,根据目标ip软核的源代码进行hash运算以生成第一hash值,由于hash值与源代码当前的内容紧密相关,即使源代码发生很细小的改变,其相应的hash值也会发生明显变化,因此hash值的作用在于验证源代码内容的一致性。此外,本发明的执行主体可以为具体的授权端,即具有ip软核授权资格的设备节点,当前也可以将本发明的执行主体视为调控授权端与申请端之间授权步骤的控制系统,但最终目的在于实现对申请端ip软核的授权,因此对执行主体不作具体限定。

步骤s11:根据第一hash值生成数字签名,并将数字签名及预设的授权条件传输至申请端。

需要说明的是,数字签名是仅有发送者能够产生,其他人无法伪造的一端数据,数字签名也同样是对发送者所发送信息真实性的有效证明。在本步骤中数字签名具体是采用授权端的私钥对第一hash值进行加密而得,其所表征的是该授权端为目标ip软核的授权方。另外,需要说明的是,本步骤中的授权条件应由授权端进行预先规定,授权条件可以具体是申请端的身份方面的条件或性能等方面的条件。

此外,在本发明中,目标ip软核的源代码可以与数字签名及授权条件一同传输至申请端,也可以默认该源代码已经存在于申请端中,由于本方法的重点在于对ip软核的授权,而非ip软核源代码的传输以及运行,因此并不限定申请端如何获取到ip软核的源代码。另外,本申请中所指的“传输”都应该为“非对称传输”,即发送端通过接收端的公钥进行原始数据的加密,进而将加密数据传输至接收端后,由接收端根据自身私钥对加密的数据进行解密以获得原始数据,以此保证数据传输的安全性。

步骤s12:当申请端满足授权条件,且根据源代码验证数字签名合法时,将授权记录广播至区块链网络中的节点,以加入节点的区块链中,完成对目标ip软核的授权。

需要说明的是,根据源代码验证数字签名合法性的目的在于,检验申请端中的ip软核与授权端所要授权的ip软核是否相同,确保ip软核的内容没有发生改变。只有当验证数字签名合法,且申请端满足授权条件时,才能够确保授权的准确性以及可靠性。当申请端满足授权条件且根据源代码验证数字签名合法时,将授权记录广播至区块链中的节点并加入各节点的区块链中,目的在于通过区块链机制将表征“已授权”的授权记录进行分布式存储,进而区块链网络中各个存有授权记录的节点均为对目标ip核进行授权的见证者。

步骤s13:当申请端使用目标ip软核时,根据区块链中的授权记录对申请端进行授权检验。

可以理解的是,由于区块链机制具有节点间严格的共识性,相同的授权记录会由多个节点共同记载并承认,且难以修改,因此在申请端使用目标ip软核时,通过区块链中的授权记录对申请端进行授权检验,能够保证避免授权记录遭到伪造或复制,提高了授权的可靠性。

本发明所提供的基于区块链的ip软核授权方法,在响应申请端对目标ip软核的授权申请后,根据目标ip软核的源代码生成数字签名,并且将预设的授权条件与数字签名传输至申请端,进而当申请端验证数字签名合法并且满足授权条件时,将授权记录广播至区块链网络中的节点以加入节点的区块链中,进而完成对目标ip软核的授权。完成授权后,当申请端使用目标ip软核时,根据区块链中的授权记录对申请端进行授权检验。可见,本方法在对ip软核进行授权时,通过将授权记录广播至区块链网络的节点并加入各节点的区块链中,由于区块链机制具有严格的数据共识性,因此将授权记录加入区块链网络的各节点中,相当于各节点共同见证ip软核的授权状态,而当申请端使用ip软核时,通过各节点区块链中的授权记录对申请端进行授权检验,降低了对授权文件进行伪造及复制的可能性,保证了对ip软核授权的安全性,进而相对减少了ip软核盗版情况的发生。

实施例二

在上述实施例的基础上,本发明还提供以下一系列优选的实施方式。

作为一种优选的实施方式,在根据第一hash值生成数字签名前,该方法进一步包括:

对第一hash值进行数字摘要。

需要说明的是,数字摘要的目的是将任意长度的数据转化为固定长度的短数据。考虑到由目标ip软核的源代码所生成的第一hash值的数据长度往往较高,进而在后续根据hash值生成数字签名的处理压力较大,因此可以在根据第一hash值生成数字签名前,对第一hash值进行数字摘要,能够进一步缩短第一hash值的数据长度,进而减轻生成数字签名的计算压力,提高整体效率。

作为一种优选的实施方式,申请端根据源代码验证数字签名的具体步骤包括:

申请端对源代码进行hash运算以生成第二hash值,并解析数字签名以得到第一hash值;

判断第一hash值与第二hash值是否相同;

如果是,则数字签名合法。

可以理解的是,由于申请端具有目标ip软核的源代码,并且进行数据签名验证的目的在于核实所授权的目标ip软核的准确性,防止申请端所需授权的ip软核与授权端进行授权的ip软核存在差异,而hash值最能够最大程度反应数据之间的差异,因此申请端根据源代码验证数字签名,需要先对源代码进行hash运算以生成第二hash值,进而再与接收到的数字签名所解析的第一hash进行比较,如果第一hash值与第二hash值完全一致,则数字签名合法,即说明申请端所需授权的ip软核与授权端进行授权的ip软核相同。

作为一种优选的实施方式,申请端与授权端均处于区块链网络中。

需要说明的是,由于考虑到本方法主要是基于区块链机制,将授权记录分布式存储在区块链网络的节点中,以达到对ip软核的授权,涉及到申请端、授权端与区块链网络中节点的通信,因此当申请端与授权端同样处于区块链网络时,可以相对提升其二者与区块链网络中其他节点之间数据传输的整体效率,在此基础上,ip软核授权的整体效率也能够得到提高。

在上述实施方式的基础上,作为一种优选的实施方式,授权条件具体为申请端的代币数量大于或等于预设值;

相应的,当将授权记录广播至区块链网络中的节点前,该方法进一步包括:

根据预设值对应修改申请端以及授权端的utxo,并将申请端以及授权端的utxo写入授权记录。

需要说明的是,代币是区块链机制中重要的组成部分,是区块链运作中激励各节点工作的奖励,每种价值代币均采用不同的生产和分配方式,因此代币在区块链中具有相应的价值。将代币的数量作为授权条件,与区块链网络中各节点普遍的工作目的更为契合,因此能够促使更多的节点加入至区块链网络中工作。另外,需要说明的是,utxo为unspendtransactionoutput的缩写,即未消费的交易输出,utxo可以用于记录区块链中的代币转移情况,并且utxo具有体积小的优点,保证了区块链机制的整体运作效率。申请端与授权端具体的工作过程为,申请端通过锁定脚本对自身的utxo进行锁定及预设数值的修改,并通过自身的私钥进行签名,进而在区块链网络中进行申请端utxo的广播;授权端在接收到申请端的utxo后,通过自身私钥对其进行解析并验证签名,验证通过后对自身的utxo进行相应的修改,以最终完成申请端与授权端各自utxo的修改。

作为一种优选的实施方式,在将授权记录广播至区块链网络中的节点后,该方法进一步包括:

当获取到6个节点的广播确认消息后,将授权记录写入数据库。

需要说明的是,由于区块链网络中的节点数量普遍较大,当进行区块链网络中的数据广播时,广播的发起节点将数据传输至与自身直接通信的其它节点,进而其它节点再将数据继续传输至与其它节点直接通信的节点,当区块链网络中的其它节点接收到发起节点的数据后,会向发起节点发送广播确认消息以表征数据被接收。由于将授权记录写入各节点的区块链是本方法对ip软核授权的本质,因此可以通过一定数量的广播确认消息确定授权记录在区块链网络中被顺利记载。本实施例中将界定授权记录被区块链顺利记载的广播确认消息次数设定为6次,在获取到6个节点的广播确认消息后,将授权记录写入数据库。需要说明的是,此处的数据库具体是指授权端或整体控制系统在区块链机制外的数据库,用于在本地进行授权记录的独立统计,便于查看或使用。

实施例三

在上文中对于基于区块链的ip软核授权方法的实施例进行了详细的描述,本发明还提供一种与该方法对应的基于区块链的ip软核授权装置,由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

图2为本发明实施例提供的一种基于区块链的ip软核授权装置结构图。本发明实施例提供的基于区块链的ip软核授权装置,包括:

响应运算模块10,用于通过授权端响应申请端对目标ip软核的授权申请,并对目标ip软核的源代码进行hash运算以生成第一hash值。

传输模块11,用于根据第一hash值生成数字签名,并将数字签名及预设的授权条件传输至申请端。

授权模块12,用于当申请端满足授权条件,且根据源代码验证数字签名合法时,将授权记录广播至区块链网络中的节点,以加入节点的区块链中,完成对目标ip软核的授权。

授权检验模块13,用于当申请端使用目标ip软核时,根据区块链中的授权记录对申请端进行授权检验。

本发明所提供的基于区块链的ip软核授权装置,在响应申请端对目标ip软核的授权申请后,根据目标ip软核的源代码生成数字签名,并且将预设的授权条件与数字签名传输至申请端,进而当申请端验证数字签名合法并且满足授权条件时,将授权记录广播至区块链网络中的节点以加入节点的区块链中,进而完成对目标ip软核的授权。完成授权后,当申请端使用目标ip软核时,根据区块链中的授权记录对申请端进行授权检验。可见,本装置在对ip软核进行授权时,通过将授权记录广播至区块链网络的节点并加入各节点的区块链中,由于区块链机制具有严格的数据共识性,因此将授权记录加入区块链网络的各节点中,相当于各节点共同见证ip软核的授权状态,而当申请端使用ip软核时,通过各节点区块链中的授权记录对申请端进行授权检验,降低了对授权文件进行伪造及复制的可能性,保证了对ip软核授权的安全性,进而相对减少了ip软核盗版情况的发生。

在实施例三的基础上,该装置还包括:

摘要模块,用于对第一hash值进行数字摘要。

实施例四

本发明还提供一种基于区块链的ip软核授权装置,包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上述的基于区块链的ip软核授权方法的步骤。

本发明所提供的基于区块链的ip软核授权装置,在响应申请端对目标ip软核的授权申请后,根据目标ip软核的源代码生成数字签名,并且将预设的授权条件与数字签名传输至申请端,进而当申请端验证数字签名合法并且满足授权条件时,将授权记录广播至区块链网络中的节点以加入节点的区块链中,进而完成对目标ip软核的授权。完成授权后,当申请端使用目标ip软核时,根据区块链中的授权记录对申请端进行授权检验。可见,本装置在对ip软核进行授权时,通过将授权记录广播至区块链网络的节点并加入各节点的区块链中,由于区块链机制具有严格的数据共识性,因此将授权记录加入区块链网络的各节点中,相当于各节点共同见证ip软核的授权状态,而当申请端使用ip软核时,通过各节点区块链中的授权记录对申请端进行授权检验,降低了对授权文件进行伪造及复制的可能性,保证了对ip软核授权的安全性,进而相对减少了ip软核盗版情况的发生。

本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的基于区块链的ip软核授权方法的步骤。

本发明所提供的基于区块链的ip软核授权的计算机可读存储介质,在响应申请端对目标ip软核的授权申请后,根据目标ip软核的源代码生成数字签名,并且将预设的授权条件与数字签名传输至申请端,进而当申请端验证数字签名合法并且满足授权条件时,将授权记录广播至区块链网络中的节点以加入节点的区块链中,进而完成对目标ip软核的授权。完成授权后,当申请端使用目标ip软核时,根据区块链中的授权记录对申请端进行授权检验。可见,本计算机可读存储介质在对ip软核进行授权时,通过将授权记录广播至区块链网络的节点并加入各节点的区块链中,由于区块链机制具有严格的数据共识性,因此将授权记录加入区块链网络的各节点中,相当于各节点共同见证ip软核的授权状态,而当申请端使用ip软核时,通过各节点区块链中的授权记录对申请端进行授权检验,降低了对授权文件进行伪造及复制的可能性,保证了对ip软核授权的安全性,进而相对减少了ip软核盗版情况的发生。

以上对本发明所提供的一种基于区块链的ip软核授权方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1