CN111552950B - 一种软件授权方法、装置及计算机可读存储介质 - Google Patents
一种软件授权方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111552950B CN111552950B CN202010343369.8A CN202010343369A CN111552950B CN 111552950 B CN111552950 B CN 111552950B CN 202010343369 A CN202010343369 A CN 202010343369A CN 111552950 B CN111552950 B CN 111552950B
- Authority
- CN
- China
- Prior art keywords
- authorization
- identifier
- terminal device
- software
- intelligent contract
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000013475 authorization Methods 0.000 claims abstract description 175
- 230000004913 activation Effects 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 10
- 238000012795 verification Methods 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例公开一种软件授权方法、装置及计算机可读存储介质,该方法应用于区块链网络,包括:接收来自第一终端设备的授权请求,所述授权请求携带有第一标识和第二标识,所述第一标识为智能合约的标识,所述第二标识为请求人的标识,所述第一终端设备为第一用户使用的终端设备;根据所述第一标识所标识的智能合约确定所述第二标识所标识的请求人为合法请求人;根据所述智能合约生成授权书;向所述第一终端设备发送所述授权书,所述授权书用于指示所述第一用户根据所述授权书使用所述智能合约中的软件。本发明实施例,可以提高授权效率。
Description
技术领域
本发明实施例涉及区块链技术领域,尤其涉及一种软件授权方法、装置及计算机可读存储介质。
背景技术
随着计算机技术的不断发展,软件的应用范围越来越广。软件的功能也越来越丰富。很多时候一个软件被开发出来之后,并不是用于自用的,而是用于售卖的。在软件的开发商或开发者将软件授权给企业、个人等使用之前,先需要签署授权协议。而签署的授权协议需要双方进行签字和/或盖章,所需时间较长,以致降低了授权效率。
发明内容
本发明实施例公开了一种软件授权方法、装置及计算机可读存储介质,用于提高授权效率。
第一方面公开一种软件授权方法,所述方法应用于区块链网络,包括:
接收来自第一终端设备的授权请求,所述授权请求携带有第一标识和第二标识,所述第一标识为智能合约的标识,所述第二标识为请求人的标识,所述第一终端设备为第一用户使用的终端设备;
根据所述第一标识所标识的智能合约确定所述第二标识所标识的请求人为合法请求人;
根据所述智能合约生成授权书;
向所述第一终端设备发送所述授权书,所述授权书用于指示所述第一用户根据所述授权书使用所述智能合约中的软件。
作为一种可能的实施方式,所述授权请求还携带有第一公钥,所述方法还包括:
使用所述第一公钥对所述授权书进行加密;
所述向所述第一终端设备发送所述授权书包括:
向所述第一终端设备发送加密后的授权书,所述加密后的授权书用于指示所述第一终端设备根据所述第一公钥对应的第一私钥对所述加密后的授权书进行解密得到所述授权书。
作为一种可能的实施方式,所述授权书包括激活码,所述第一终端设备根据所述第一公钥对应的私钥对所述加密后的授权书进行解密,得到所述授权书包括:
所述第一终端设备根据所述第一公钥对应的私钥对所述加密后的授权书进行解密,得到所述激活码;
所述第一用户根据所述授权书使用所述智能合约中的软件包括:
所述第一用户根据所述激活码使用所述智能合约中的软件。
作为一种可能的实施方式,所述根据所述第一标识所标识的智能合约确定所述第二标识所标识的请求人为合法请求人之前,所述方法还包括:
根据所述第一公钥确定所述授权请求为所述第一公钥对应的用户发送的授权请求。
作为一种可能的实施方式,所述方法还包括:
接收来自第二终端设备发送的所述智能合约;
对所述智能合约进行共识处理。
作为一种可能的实施方式,所述智能合约包括乙方的信息,所述根据所述第一标识所标识的智能合约确定所述第二标识所标识的请求人为合法请求人包括:
在所述信息对应的乙方与所述第二标识所标识的请求人相同的情况下,确定所述第二标识所标识的请求人为合法请求人。
第二方面公开一种软件授权方法,所述装置设置在区块链网络中,包括:
接收单元,用于接收来自第一终端设备的授权请求,所述授权请求携带有第一标识和第二标识,所述第一标识为智能合约的标识,所述第二标识为请求人的标识,所述第一终端设备为第一用户使用的终端设备;
第一确定单元,用于根据所述第一标识所标识的智能合约确定所述第二标识所标识的请求人为合法请求人;
生成单元,用于根据所述智能合约生成授权书;
发送单元,用于向所述第一终端设备发送所述授权书,所述授权书用于指示所述第一用户根据所述授权书使用所述智能合约中的软件。
作为一种可能的实施方式,所述授权请求还携带有第一公钥,所述装置还包括:
加密单元,用于使用所述第一公钥对所述授权书进行加密;
所述发送单元,具体用于向所述第一终端设备发送加密后的授权书,所述加密后的授权书还用于指示所述第一终端设备根据所述第一公钥对应的第一私钥对所述加密后的授权书进行解密,得到所述授权书。
作为一种可能的实施方式,所述授权书包括激活码,所述第一终端设备根据所述第一公钥对应的私钥对所述加密后的授权书进行解密,得到所述授权书包括:
所述第一终端设备根据所述第一公钥对应的私钥对所述加密后的授权书进行解密,得到所述激活码;
所述第一用户根据所述授权书使用所述智能合约中的软件包括:
所述第一用户根据所述激活码使用所述智能合约中的软件。
作为一种可能的实施方式,所述装置还包括:
第二确定单元,用于所述第一确定单元根据所述第一标识所标识的智能合约确定所述第二标识所标识的请求人为合法请求人之前,根据所述第一公钥确定所述授权请求为所述第一公钥对应的用户发送的授权请求。
作为一种可能的实施方式,所述接收单元,还用于接收来自第二终端设备发送的所述智能合约;
所述装置还包括:
共识单元,用于对所述智能合约进行共识处理。
作为一种可能的实施方式,所述智能合约包括乙方的信息,所述第一确定单元,具体用于在所述信息对应的乙方与所述第二标识所标识的请求人相同的情况下,确定所述第二标识所标识的请求人为合法请求人。
第三方面公开一种软件授权装置,该装置包括处理器、存储器、输入接口和输出接口,存储器用于存储一组计算机程序代码,输入接口用于接收来自该装置之外的其它装置的信息,输出接口用于向该装置之外的其它装置输出信息。当处理器用于调用所述存储器中存储的计算机程序代码时,使得处理器执行第一方面或第一方面的任一可能实现方式所公开的软件授权方法。
第四方面公开一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序或计算机指令,当该计算机程序或计算机指令运行时,实现如第一方面或第一方面的任一可能实现方式所公开的软件授权方法。
第五方面公开一种计算机程序产品,当其在计算机上运行时,使得计算机执行第一方面或第一方面的任一可能实现方式所公开的软件授权方法。
本发明实施例中,接收来自第一终端设备的携带有第一标识和第二标识授权请求,根据第一标识所标识的智能合约确定第二标识所标识的请求人为合法请求人,根据该智能合约生成授权书,向第一终端设备发送授权书,授权书用于指示第一终端设备对应的第一用户根据授权书使用智能合约中的软件。在买卖双方签署了软件买卖合同之后,将包括软件买卖合同的信息作为智能合约上传区块链之后,买(乙)方可以向区块链发送授权请求得到授权书,之后可以使用授权书使用授权的软件,不需要现场或通过邮寄的方式签署授权书而得到授权,因此,可以提高授权效率。
附图说明
图1是本发明实施例公开的一种网络结构示意图;
图2是本发明实施例公开的一种区块链由多个区块组成的示意图;
图3是本发明实施例公开的一种区块链中生成区块的示意图;
图4是本发明实施例公开的一种软件授权方法的流程示意图;
图5是本发明实施例公开的另一种软件授权方法的流程示意图;
图6是本发明实施例公开的一种软件授权装置的结构示意图;
图7是本发明实施例公开的另一种软件授权装置的结构示意图。
具体实施方式
本发明实施例公开了一种软件授权方法、装置及计算机可读存储介质,用于提高授权效率。以下分别进行详细说明。
为了更好地理解本发明实施例公开的一种软件授权方法、装置及计算机可读存储介质,下面先对本发明实施例使用的网络架构进行描述。请参阅图1,图1是本发明实施例公开的一种网络架构示意图。如图1所示,该网络架构可以包括区块链网络101、终端设备102和服务器103。终端设备102,用于向区块链网络101发送授权请求。区块链网络101,用于接收来自终端设备102的授权请求,根据授权请求向终端设备102发送授权书。终端设备102,还用于接收来自于区块链网络101的授权书,根据授权书通过服务器103使用软件。服务器103为授权软件对应的服务器。
区块链网络101是指用于节点与节点之间进行数据共享的网络,该区块链网络101中可以包括多个节点1011,多个节点1011可以是指区块链网络101中各个客户端。每个节点1011在进行正常工作可以接收到输入信息,并基于接收到的输入信息维护该区块链网络101内的共享数据。为了保证区块链网络101内的信息互通,区块链网络101中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当区块链网络101中的任意节点接收到输入信息时,区块链网络101中的其他节点便可以根据共识算法获取该输入信息,将该输入信息作为共享数据中的数据进行存储,使得区块链网络101中全部节点上存储的数据均一致。
对于区块链网络101中的每个节点,均具有与其对应的节点标识,而且区块链网络101中的每个节点均可以存储有区块链网络101中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至区块链网络101中的其他节点。每个节点中可维护一个如表1所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为网络之间互联的协议(internet protocol,IP)地址以及其他任一种能够用于标识该节点的信息,表1中仅以IP地址为例进行说明。
表1节点标识列表
区块链网络101中的每个节点均存储一条相同的区块链。请参阅图2,图2是本发明实施例公开的一种区块链由多个区块组成的示意图。如图2所示,区块链由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
请参阅图3,图3是本发明实施例公开的一种区块链中生成区块的示意图。如图3所示,在生成区块链中的各个区块时,区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行特征值计算,使得计算得到的特征值可以满足下述公式:
SHA256(SHA256(version+prev_hash+merkleroot+ntime+nbits+x))<TARGET其中,SHA256为计算特征值所用的特征值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头特征值;merkle_root为输入信息的特征值;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;TARGET为特征值阈值,该特征值阈值可以根据nbits确定得到。
这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据区块链网络101中其他节点的节点标识,将新生成的区块分别发送给其所在的区块链网络101中的其他节点,由其他节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
终端设备102可以为用户终端(user equipment,UE)、手机、电脑等电子设备。
服务器103为软件对应的服务器,可以为边缘服务器,也可以为云服务器,还可以为其他服务器。
基于图1所示的网络结构,请参阅图4,图4是本发明实施例公开的一种软件授权方法的流程示意图。如图4所示,该软件授权方法可以包括以下步骤。
401、第一终端设备向区块链网络发送授权请求。
第一终端设备为第一用户使用的终端设备。在请求人与软件所有者签署了买卖合同之后,第一用户可以通过第一终端设备向区块链网络发送授权请求。授权请求可以携带有第一标识和第二标识,第一标识为包括上述买卖合同法的智能合约的标识,第二标识为请求人的标识。请求人可以为第一用户,也可以不是第一用户。第一用户与请求人可以为个人,也可以为企业、公司等。一个软件可以卖给一个用户,也可以卖给多个用户。
402、区块链网络根据第一标识所标识的智能合约确定第二标识所标识的请求人为合法请求人。
区块链网络接收到来自第一终端设备的授权请求之后,可以根据第一标识所标识的智能合约确定第二标识所标识的请求人为合法请求人。智能合约包括乙方(即软件买方)的信息,区块链网络根据第一标识所标识的智能合约确定第二标识所标识的请求人为合法请求人时,可以先判断该信息对应的乙方与第二标识所标识的请求人是否相同,在判断出该信息对应的乙方与第二标识所标识的请求人相同的情况下,确定第二标识所标识的请求人为合法请求人,即请求人是被授权人。在判断出该信息对应的乙方与第二标识所标识的请求人不同的情况下,确定第二标识所标识的请求人为非法请求人,即请求人不是被授权人,可以不做后续处理。此外,区块链网络还可以向第一终端设备发送第二标识对应的请求人没有权限的提示信息。
403、区块链网络根据第一标识所标识的智能合约生成授权书。
区块链网络根据第一标识所标识的智能合约确定出第二标识所标识的请求人为合法请求人之后,可以根据第一标识所标识的智能合约生成授权书。授权书可以包括用于激活被授权软件的激活码。
404、区块链网络向第一终端设备发送授权书。
区块链网络根据第一标识所标识的智能合约生成授权书之后,可以向第一终端设备发送授权书。第一终端设备接收到来自区块链网络的授权书之后,第一用户可以使用授权书对被授权软件进行安装或使用,即可以使用激活码对被授权软件进行安装或使用。授权书可以指示第一用户根据授权书使用智能合约中的软件。
在图4所描述的软件授权方法中,在买卖双方签署了软件买卖合同之后,将包括软件买卖合同的信息作为智能合约上传区块链之后,买(乙)方可以向区块链发送授权请求得到授权书,之后可以使用授权书使用授权的软件,不需要现场或通过邮寄的方式签署授权书而得到授权,因此,可以提高授权效率。
基于图1所示的网络架构,请参阅图5,图5是本发明实施例公开的另一种软件授权方法的流程示意图。如图5所示,该软件授权方法可以包括以下步骤。
501、第二终端设备建立与区块链网络之间的连接。
第二终端设备为第二用户使用的终端设备。第二终端设备与区块链网络进行通信之前,先需要建立与区块链网络之间的连接。在建立连接的过程中,第二终端设备可以采用非对称加密算法创建第二密钥对。第二密钥对可以包括第二公钥和第二私钥。第二私钥用于第二终端设备向区块链网络上传信息时对信息进行签名,以表明上传的信息是属于第二用户的;第二公钥用于验证由第二私钥签名并上传到区块链网络中的信息。第二用户可以为软件所有者,可以为个人,也可以为单位、企业等。
502、第二终端设备向区块链网络发送智能合约。
第二终端设备建立与区块链网络之间的连接之后,可以向区块链网络发送智能合约。智能合约可以包括买卖合同。在软件只授权给一个用户的情况下,智能合约的数量为1。在软件授权给多个用户的情况下,智能合约的数量可以为一个,也可以为多个。在智能合约的数量为一个的情况下,这个智能合约包括所有被授权的用户的买卖合同。在智能合约的数量为多个的情况下,多个智能合约中每个智能合约包括一个被授权的用户的买卖合同。
第二终端设备向区块链网络发送智能合约之前,可以先使用第二私钥对智能合约进行签名。智能合约还可以携带有第二公钥。
503、区块链网络对智能合约进行共识处理。
区块链网络接收到来自第二终端设备的智能合约之后,可以对智能合约进行共识处理。对智能合约进行共识处理之前,可以先使用第二公钥验证智能合约是否为第二用户的智能合约,在验证结果为智能合约为第二用户的智能合约的情况下,对智能合约进行共识处理,在验证结果为智能合约不是第二用户的智能合约的情况下,可以丢弃智能合约。
504、第一终端设备建立与区块链网络之间的连接。
第一终端设备为第一用户使用的终端设备。第一终端设备与区块链网络进行通信之前,先需要建立与区块链网络之间的连接。在建立连接的过程中,第一终端设备可以采用非对称加密算法创建第一密钥对。第一密钥对可以包括第一公钥和第一私钥。第一私钥用于第一终端设备向区块链网络上传信息时对信息进行签名,以表明上传的信息是属于第一用户的;第一公钥用于验证由第一私钥签名并上传到区块链网络中的信息。
505、第一终端设备生成授权请求。
在请求人与软件所有者签署了买卖合同之后,卖方可以将包括买卖合同的智能合约上传到区块链网络。因此,第一用户需要使用购买的软件的情况下,可以通过第一终端设备生成授权请求。
506、第一终端设备使用第一私钥对授权请求进行签名,向区块链网络发送签名后的授权请求。
第一终端设备生成授权请求之后,可以先使用第一私钥对授权请求进行签名,之后向区块链网络发送签名后的授权请求。签名后的授权请求可以携带有第一标识和第二标识,第一标识为包括上述买卖合同法的智能合约的标识,第二标识为请求人的标识。请求人可以为第一用户,也可以不是第一用户。第一用户与请求人可以为个人,也可以为企业、公司等。一个软件可以卖给一个用户,也可以卖给多个用户。签名后的授权请求还可以携带有第一公钥。
507、区块链网络根据第一公钥确定签名后的授权请求为第一公钥对应的用户发送的授权请求。
区块链网络接收到来自第一终端设备的签名后的授权请求之后,可以根据第一公钥确定签名后的授权请求为第一公钥对应的用户发送的授权请求,即根据第一公钥确定签名后的授权请求为第一用户发送的授权请求。
508、区块链网络根据第一标识所标识的智能合约确定第二标识所标识的请求人为合法请求人。
区块链网络根据第一公钥确定签名后的授权请求为第一公钥对应的用户发送的授权请求之后,可以根据第一标识所标识的智能合约确定第二标识所标识的请求人为合法请求人。智能合约包括乙方(即软件买方)的信息,区块链网络根据第一标识所标识的智能合约确定第二标识所标识的请求人为合法请求人时,可以先判断该信息对应的乙方与第二标识所标识的请求人是否相同,在判断出该信息对应的乙方与第二标识所标识的请求人相同的情况下,确定第二标识所标识的请求人为合法请求人,即请求人是被授权人。在判断出该信息对应的乙方与第二标识所标识的请求人不同的情况下,确定第二标识所标识的请求人为非法请求人,即请求人不是被授权人,可以不做后续处理。此外,区块链网络还可以向第一终端设备发送第二标识对应的请求人没有权限的提示信息。
509、区块链网络根据第一标识所标识的智能合约生成授权书。
区块链网络根据第一标识所标识的智能合约确定出第二标识所标识的请求人为合法请求人之后,可以根据第一标识所标识的智能合约生成授权书。授权书可以包括用于激活被授权软件的激活码。
510、区块链网络使用第一公钥对授权书进行加密,向第一终端设备发送加密后的授权书。
区块链网络根据第一标识所标识的智能合约生成授权书之后,可以先使用第一公钥对授权书进行加密,之后向第一终端设备发送加密后的授权书。
511、第一终端设备根据第一公钥对应的第一私钥对加密后的授权书进行解密得到授权书。
第一终端设备接收到来自区块链网络的加密后的授权书之后,可以根据第一公钥对应的第一私钥对加密后的授权书进行解密得到授权书。第一用户可以使用授权书对被授权软件进行安装或使用,即第一用户可以根据授权书使用智能合约中的软件,也即第一用户可以使用激活码对被授权软件进行安装或使用。第一终端设备可以根据第一公钥对应的私钥对加密后的授权书进行解密得到激活码,第一用户可以根据激活码使用智能合约中的软件。
在图5所描述的业务处理方法中,在买卖双方签署了软件买卖合同之后,将包括软件买卖合同的信息作为智能合约上传区块链之后,买(乙)方可以向区块链发送授权请求得到授权书,之后可以使用授权书使用授权的软件,不需要现场或通过邮寄的方式签署授权书而得到授权,因此,可以提高授权效率。
基于图1所示的网络结构,请参阅图6,图6是本发明实施例公开的一种软件授权装置的结构示意图。其中,该软件授权装置可以设置在区块链网络中,例如,区块链网络中的节点中。如图6所示,该软件授权装置可以包括:
接收单元601,用于接收来自第一终端设备的授权请求,授权请求携带有第一标识和第二标识,第一标识为智能合约的标识,第二标识为请求人的标识,第一终端设备为第一用户使用的终端设备;
第一确定单元602,用于根据第一标识所标识的智能合约确定第二标识所标识的请求人为合法请求人;
生成单元603,用于根据智能合约生成授权书;
发送单元604,用于向第一终端设备发送授权书,授权书用于指示第一用户根据授权书使用智能合约中的软件。
在一个实施例中,授权请求还携带有第一公钥,该软件授权装置还可以包括:
加密单元605,用于使用第一公钥对授权书进行加密;
发送单元604,具体用于向第一终端设备发送加密后的授权书,加密后的授权书还用于指示第一终端设备根据第一公钥对应的第一私钥对加密后的授权书进行解密,得到授权书。
在一个实施例中,授权书可以包括激活码,第一终端设备根据第一公钥对应的私钥对加密后的授权书进行解密,得到授权书包括:
第一终端设备根据第一公钥对应的私钥对加密后的授权书进行解密,得到激活码;
第一用户根据授权书使用智能合约中的软件包括:
第一用户根据激活码使用智能合约中的软件。
在一个实施例中,该软件授权装置还可以包括:
第二确定单元606,用于第一确定单元602根据第一标识所标识的智能合约确定第二标识所标识的请求人为合法请求人之前,根据第一公钥确定授权请求为第一公钥对应的用户发送的授权请求。
在一个实施例中,接收单元601,还用于接收来自第二终端设备发送的智能合约;
该软件授权装置还可以包括:
共识单元607,用于对智能合约进行共识处理。
在一个实施例中,智能合约可以包括乙方的信息,第一确定单元602,具体用于在该信息对应的乙方与第二标识所标识的请求人相同的情况下,确定第二标识所标识的请求人为合法请求人。
有关上述接收单元601、第一确定单元602、生成单元603、发送单元604、加密单元605、第二确定单元606和共识单元607详细的描述可以直接参考上述图4和图5所示的方法实施例中区块链网络的相关描述直接得到,这里不加赘述。
基于图1所示的网络架构,请参阅图7,图7是本发明实施例公开的另一种软件授权装置的结构示意图。其中,该软件授权装置可以设置在区块链网络中,例如设置在区块链节点中。如图7所示,该软件授权装置可以包括处理器701、存储器702、输入接口703、输出接口704和连接线705。存储器702可以是独立存在,连接线705与处理器701相连接。存储器702也可以和处理器701集成在一起。连接线705可包括一通路,在上述组件之间传送信息。其中,存储器702中存储程序指令,处理器701用于执行存储器702中存储的程序指令。
其中:
该软件授权装置可以为图6对应的软件授权装置。存储器702中存储的程序指令被执行时,该处理器701用于调用存储器702存储的程序指令执行上述实施例中第一确定单元602、生成单元603、加密单元605、第二确定单元606和共识单元607执行的操作。输入接口703用于执行接收单元601执行的操作。输出接口704用于执行发送单元604执行的操作。
本发明实施例还公开了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序运行时,实现如图4-图5所示的信息处理方法。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。
Claims (5)
1.一种软件授权方法,其特征在于,所述方法应用于区块链网络,包括:
接收来自第二终端设备发送的至少一个智能合约,所述至少一个智能合约中每个智能合约包括一个被授权的用户的买卖合同,所述智能合约包括乙方的信息;
对所述智能合约进行共识处理;
接收来自第一终端设备的授权请求,所述授权请求携带有第一公钥、第一标识和第二标识,所述第一标识为智能合约的标识,所述第二标识为请求人的标识,所述第一终端设备为第一用户使用的终端设备,所述授权请求为经第一私钥签名后的授权请求,所述第一私钥为与所述第一公钥对应的私钥;
根据所述第一公钥确定所述授权请求为所述第一公钥对应的用户发送的授权请求且根据所述第一标识所标识的智能合约确定所述乙方的信息与所述第二标识所标识的请求人相同的情况下,确定所述第二标识所标识的请求人为合法请求人;
根据所述智能合约生成授权书;
使用所述第一公钥对所述授权书进行加密;
向所述第一终端设备发送加密后的授权书,所述加密后的授权书用于指示所述第一终端设备根据所述第一私钥对所述加密后的授权书进行解密得到所述授权书,所述授权书用于指示所述第一用户根据所述授权书使用所述智能合约中的软件。
2.根据权利要求1所述的方法,其特征在于,所述授权书包括激活码,所述第一终端设备根据所述第一公钥对应的私钥对所述加密后的授权书进行解密,得到所述授权书包括:
所述第一终端设备根据所述第一公钥对应的私钥对所述加密后的授权书进行解密,得到所述激活码;
所述第一用户根据所述授权书使用所述智能合约中的软件包括:
所述第一用户根据所述激活码使用所述智能合约中的软件。
3.一种软件授权装置,其特征在于,所述装置设置在区块链网络中,包括:
接收单元,用于接收来自第一终端设备的授权请求,所述授权请求携带有第一公钥、第一标识和第二标识,所述第一标识为智能合约的标识,所述第二标识为请求人的标识,所述第一终端设备为第一用户使用的终端设备,所述授权请求为经第一私钥签名后的授权请求,所述第一私钥为与所述第一公钥对应的私钥;
所述接收单元,还用于接收来自第二终端设备发送的至少一个智能合约,所述至少一个智能合约中每个智能合约包括一个被授权的用户的买卖合同,所述智能合约包括乙方的信息;
共识单元,用于对所述智能合约进行共识处理;
第一确定单元,用于根据所述第一公钥确定所述授权请求为所述第一公钥对应的用户发送的授权请求且根据所述第一标识所标识的智能合约确定所述乙方的信息与所述第二标识所标识的请求人相同的情况下,确定所述第二标识所标识的请求人为合法请求人;
生成单元,用于根据所述智能合约生成授权书;
加密单元,用于使用所述第一公钥对所述授权书进行加密;
发送单元,用于向所述第一终端设备发送加密后的授权书,所述加密后的授权书用于指示所述第一终端设备根据所述第一私钥对所述加密后的授权书进行解密得到所述授权书,所述授权书用于指示所述第一用户根据所述授权书使用所述智能合约中的软件。
4.一种软件授权装置,其特征在于,所述装置设置在区块链网络中,包括处理器、存储器、输入接口和输出接口,所述存储器用于存储一组计算机程序代码,所述输入接口用于接收来自所述装置之外的其它装置的信息,所述输出接口用于向所述装置之外的其它装置输出信息,所述处理器用于调用所述存储器中存储的计算机程序代码实现如权利要求1或2所述的软件授权方法。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中
存储有计算机程序或计算机指令,当所述计算机程序或计算机指令被运行时,
实现如权利要求1或2所述的软件授权方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010343369.8A CN111552950B (zh) | 2020-04-27 | 2020-04-27 | 一种软件授权方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010343369.8A CN111552950B (zh) | 2020-04-27 | 2020-04-27 | 一种软件授权方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111552950A CN111552950A (zh) | 2020-08-18 |
CN111552950B true CN111552950B (zh) | 2024-08-16 |
Family
ID=72007735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010343369.8A Active CN111552950B (zh) | 2020-04-27 | 2020-04-27 | 一种软件授权方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111552950B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112699344B (zh) * | 2020-12-29 | 2024-07-05 | 无锡井通网络科技有限公司 | 基于区块链的软件授权方法 |
CN115168811B (zh) * | 2022-09-07 | 2022-11-29 | 北京航天奥祥通风科技股份有限公司 | 一种软件防破解方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109995523A (zh) * | 2019-03-13 | 2019-07-09 | 网易(杭州)网络有限公司 | 激活码管理方法及装置、激活码生成方法及装置 |
CN110457875A (zh) * | 2019-07-31 | 2019-11-15 | 阿里巴巴集团控股有限公司 | 基于区块链的数据授权方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107079036A (zh) * | 2016-12-23 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 注册及授权方法、装置及系统 |
US10572688B2 (en) * | 2017-04-07 | 2020-02-25 | Cisco Technology, Inc. | Blockchain based software licensing enforcement |
CN108776936A (zh) * | 2018-06-05 | 2018-11-09 | 中国平安人寿保险股份有限公司 | 保险理赔方法、装置、计算机设备和存储介质 |
US11171783B2 (en) * | 2018-09-28 | 2021-11-09 | Infosys Limited | System and method for decentralized identity management, authentication and authorization of applications |
CN110597924B (zh) * | 2019-09-29 | 2021-08-06 | 腾讯科技(深圳)有限公司 | 基于区块链的用户标识处理方法、装置、设备及存储介质 |
-
2020
- 2020-04-27 CN CN202010343369.8A patent/CN111552950B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109995523A (zh) * | 2019-03-13 | 2019-07-09 | 网易(杭州)网络有限公司 | 激活码管理方法及装置、激活码生成方法及装置 |
CN110457875A (zh) * | 2019-07-31 | 2019-11-15 | 阿里巴巴集团控股有限公司 | 基于区块链的数据授权方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111552950A (zh) | 2020-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109756485B (zh) | 电子合同签署方法、装置、计算机设备及存储介质 | |
CN111292041B (zh) | 一种电子合同生成方法、装置、设备及存储介质 | |
CN108537046A (zh) | 一种基于区块链技术的在线合同签署系统及方法 | |
KR101985179B1 (ko) | 블록체인 기반의 ID as a Service | |
CN113162752B (zh) | 基于混合同态加密的数据处理方法和装置 | |
CN106576043A (zh) | 病毒式可分配可信消息传送 | |
CN110189184B (zh) | 一种电子发票存储方法和装置 | |
CN110597836B (zh) | 基于区块链网络的信息查询请求响应方法及装置 | |
CN112804217B (zh) | 一种基于区块链技术的存证方法和装置 | |
CN115203749B (zh) | 一种基于区块链的数据交易方法和系统 | |
CN111683090A (zh) | 一种基于分布式存储的区块链数字签名方法及装置 | |
CN111552950B (zh) | 一种软件授权方法、装置及计算机可读存储介质 | |
CN114119021A (zh) | 图像文件安全多方计算方法及系统 | |
CN112734423A (zh) | 一种基于区块链的交易方法及终端设备 | |
CN113129008B (zh) | 数据处理方法、装置、计算机可读介质及电子设备 | |
CN111865761B (zh) | 一种基于区块链智能合约的社交聊天信息存证方法 | |
WO2024011863A9 (zh) | 通信方法、装置、sim卡、电子设备和终端设备 | |
CN113342802A (zh) | 区块链数据存储的方法和装置 | |
CN110851804A (zh) | 一种基于电子合同的联盟链身份认证方式 | |
JP5001968B2 (ja) | ソーシャルネット内の各ユーザの公開鍵の正当性を保証する認証局を設定する認証局設定装置及び認証局設定方法 | |
CN114301612A (zh) | 信息处理方法、通信设备和加密设备 | |
TWI576779B (zh) | Method and Method of Payment Authentication System for Internet of Things | |
CN112784314B (zh) | 一种数据完整性检测方法、装置、电子设备及存储介质 | |
CN115599773B (zh) | 分布式资源转移方法、装置、系统与计算机设备 | |
CN114005190B (zh) | 用于课堂考勤系统的人脸识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |