一种基于云智能合约编译的代码产权管理系统

文档序号:37511419发布日期:2024-04-01 14:18阅读:13来源:国知局
一种基于云智能合约编译的代码产权管理系统

本技术涉及分布式,尤其是一种基于云智能合约编译的代码产权管理系统。


背景技术:

1、随着互联网技术的发展,软件产品的创新和交易越来越频繁,软件代码作为软件产品的核心资产,其产权的保护和管理成为一个重要的问题。传统的代码产权在软件产品流转使用过程中,由于软件代码的可复制性,极易导致软件代码泄露,难以有效保护代码产权。因此,如何在软件产品的使用过程中有效保护其代码产权是一个亟待解决的挑战。


技术实现思路

1、本技术人针对上述提出的难以在软件产品流转使用时保护代码产权的技术问题及技术需求,提出了一种基于云智能合约编译的代码产权管理系统,本技术的技术方案如下:

2、一种基于云智能合约编译的代码产权管理系统,包括授权存储子系统、软件编译子系统和软件使用平台,授权存储子系统和软件编译子系统均部署在云端环境中;授权存储子系统包括存储库且部署有云智能合约,存储库中对应存储有至少一个代码项目的产权标识符及加密后代码产权数据,且每个代码项目的代码产权数据由对代码项目的管理公钥进行加密。

3、软件使用平台用于接收使用者用户节点发送的构建请求,构建请求携带有目标代码项目对应的目标产权标识符和目标编译环境;软件使用平台还用于根据目标产权标识符将构建请求发送给目标代码项目对应的创作者用户节点,并在接收到目标代码项目对应的创作者用户节点针对构建请求的授权响应后,将构建请求发送至软件编译子系统。

4、软件编译子系统用于解析接收到的构建请求,并将目标产权标识符发送至授权存储子系统。

5、授权存储子系统用于调用云智能合约从存储库中获取目标产权标识符对应的加密后的目标代码产权数据并返回给软件编译子系统。

6、软件编译子系统,用于将加密后的目标代码产权数据推送至按照目标编译环境配置好的虚拟机中,利用目标代码项目的管理私钥在虚拟机提供的隔离环境中进行解密后,对目标代码产权数据进行编译生成目标docker软件产品,目标docker软件产品是针对构建请求的软件服务的docker镜像;其中,每个代码项目的管理公钥和管理私钥为一对密钥对。

7、软件使用平台用于将目标docker软件产品下发给发送构建请求的使用者用户节点。

8、其进一步的技术方案为,代码产权管理系统还包括创作平台,存储库包括星际文件系统和区块链。

9、创作平台用于获取创作者用户节点上传的代码项目的代码产权数据,及对应的管理节点的用户身份标识并上传至授权存储子系统,每个代码项目的管理节点是代码项目的其中一个创作者用户节点。

10、授权存储子系统接收到代码项目的代码产权数据及对应的管理节点的用户身份标识后,从区块链中读取管理节点的用户身份标识对应的公钥作为代码项目的管理公钥,并触发云智能合约生成代码项目的产权标识符;授权存储子系统,还用于利用代码项目的管理公钥对代码产权数据中的非结构化数据加密后存储于星际文件系统并得到存储地址,以及,利用代码项目的管理公钥对代码产权数据中的结构化数据加密后与代码项目的产权标识符和存储地址对应存储于区块链。

11、则从存储库中获取目标产权标识符对应的加密后的目标代码产权数据包括:从区块链获取与目标产权标识符对应的存储地址和加密后结构化数据,从星际文件系统获取与存储地址对应的加密后非结构化数据,得到的加密后的目标代码产权数据包括加密后结构化数据和加密后非结构化数据。

12、其进一步的技术方案为,创作平台获取创作者用户节点上传的代码项目的代码产权数据包括:

13、获取具有协作权限的多个创作者用户节点上传的局部数据,将具有协作权限的所有创作者用户节点的用户身份标识及其上传的局部数据对应存储,得到代码项目的代码产权数据。

14、每个创作者用户节点具有对代码项目的具有协作权限的所有创作者用户节点上传的局部数据的查阅权限。

15、其进一步的技术方案为,每个软件产品具有对应的生存总时长。

16、软件使用平台还用于在检测到目标docker软件产品下发给使用者用户节点的累积使用时长达到目标docker软件产品的生存总时长时,停止向使用者用户节点下发目标docker软件产品并向软件编译子系统发送针对目标docker软件产品的销毁请求。

17、软件编译子系统根据接收到的销毁请求销毁目标docker软件产品并回收目标docker软件产品的端口号,不同的目标docker软件产品分别分配不同的端口号。

18、其进一步的技术方案为,软件使用平台还用于在检测到目标docker软件产品下发给使用者用户节点的累积使用时长达到目标docker软件产品的生存总时长时,向目标docker软件产品的使用者用户节点推送支付账单,并在检测到响应于支付账单的支付完成操作后,执行停止向使用者用户节点下发目标docker软件产品并向软件编译子系统发送针对目标docker软件产品的销毁请求的步骤。

19、其进一步的技术方案为,代码产权管理系统还包括服务监管子系统。

20、软件使用平台,还用于在检测到响应于支付账单的支付完成操作后,经由服务监管子系统向存储库中的区块链发送交易记录登记请求,交易记录登记请求携带的交易信息至少包括目标docker软件产品的产品标识、使用者用户节点的用户身份标识以及交易过程数据;区块链根据交易记录登记请求生成订单合同并通过多节点共识机制完成存储。

21、软件使用平台,还用于在接收到使用者用户节点发送的查询请求时,将查询请求发送给区块链,并将接收到的区块链返回的订单合同下发给使用者用户节点;查询请求携带使用者用户节点的用户身份标识和/或目标docker软件产品的产品标识。

22、其进一步的技术方案为,软件使用平台接收到的构建请求中包括基础生存时长。

23、当软件使用平台在目标docker软件产品下发给使用者用户节点的累积使用时长达到基础生存时长之前未接收到延期请求时,确定目标docker软件产品的生存总时长为基础生存时长。

24、当软件使用平台在目标docker软件产品下发给使用者用户节点的累积使用时长达到基础生存时长之前接收到携带延期时长的延期请求时,软件使用平台将延期请求发送给目标docker软件产品所封装的目标代码项目对应的创作者用户节点,并在接收到目标代码项目对应的创作者用户节点针对延期请求的同意反馈后,确定目标docker软件产品的生存总时长为基础生存时长与延期时长的总和。

25、其进一步的技术方案为,软件使用平台还用于执行如下操作:

26、当在将目标docker软件产品下发给对应的使用者用户节点的过程中,接收到使用者用户节点发送的携带暂停时长的暂停请求时,将暂停请求发送给目标docker软件产品所封装的目标代码项目对应的创作者用户节点。

27、在接收到述目标代码项目对应的创作者用户节点针对暂停请求的同意反馈后,暂停将目标docker软件产品下发给对应的使用者用户节点直至达到暂停时长后重新继续将目标docker软件产品下发给对应的使用者用户节点,目标docker软件产品的累积使用时长在暂停下发的过程中不增加。

28、其进一步的技术方案为,代码产权管理系统还包括服务监管子系统,服务监管子系统还用于将构建请求对应的事务数据通过多节点共识机制上传存储至存储库的区块链中,每个构建请求对应的事务数据包括发送构建请求的使用者用户节点的用户身份标识、软件编译子系统编译生成的目标docker软件产品的过程数据、软件使用平台将目标docker软件产品下发给对应使用者用户节点的使用数据。

29、其进一步的技术方案为,创作平台为每个完成注册的创作者用户节点生成一个对应的密钥对,并将创作者用户节点的用户身份标识与生成的密钥对中的公钥对应存储在区块链中,将生成的密钥对中的私钥返回给创作者用户节点。

30、本技术的有益技术效果是:

31、本技术公开了一种基于云智能合约编译的代码产权管理系统,该系统通过部署在云端环境中的云智能合约获取存储于授权存储子系统中的代码产权数据,并通过docker镜像进行编译生成docker软件产品。其中,docker技术为软件产品的可控构建提供操作系统级别的隔离,再利用智能合约的满足预设规则即触发执行的特点,实现了软件产品的高效自动化构建。通过代码项目的管理公钥将对应的代码产权数据加密存储于存储库,在需要编译的时候再使用同一密钥对中的管理私钥进行解密,有效提高了软件流转使用过程中代码产权数据的安全性和完整性,避免了代码泄露和滥用的风险。

32、本技术将星际文件系统和区块链作为存储库,结合云智能合约实现数据的存取,其中的星际文件系统实现了非结构化数据的分布式和去中心化存储,提高了数据的可寻址性和可靠性;区块链则实现了结构化数据的上链和备份,提高了数据的不可篡改性,解决了单点故障问题。

33、本技术使用池化技术和互斥锁,实现了端口号的有效分配和管理,避免了端口号冲突的问题。

34、本技术通过服务监管子系统监测软件使用过程中的服务使用数据,并将其中的事务数据共识上链存证,提高了软件服务交易的透明性和可追溯性。

35、本技术通过数字证书颁发机构实现了用户身份标识的颁发及维护,提高了代码产权管理系统的可信性和安全性。

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