本技术涉及资源管理,尤其涉及一种开源社区的资源处理的方法、装置、设备及存储介质。
背景技术:
1、开源社区是一个协作和共享知识的社区,在开源社区中,个人和组织可以自由地共享他们的代码、文档、工具和知识,并且允许其他人使用、修改和重新分发这些内容。
2、但是,在开源社区中通常由机构、审核人员或规则决定用户的个人贡献,用户再通过个人贡献交换所需要的技术资源。在开源社区中贡献评估往往是主观的,并且决策过程不够透明和公正,一些用户可能会因为其影响力而被中心机构过分重视,这导致对用户的奖励分配具有偏向性。
3、因此,如何在开源社区中实现公平的技术交换是亟待解决的问题。
技术实现思路
1、本技术提供一种开源社区的资源处理的方法、装置、设备及存储介质,用以解决开源社区中技术交换不公平的问题。
2、第一方面,本技术提供一种开源社区的资源处理的方法,应用于开源社区平台,所述方法包括:
3、接收第一用户的终端设备上传的技术资源和交换需求,其中,所述交换需求包括交换所述技术资源需要的资产信息;
4、根据所述技术资源和交换需求为第一用户创建智能合约,所述智能合约包括对所述技术资源进行交换的逻辑程序,交换条件,所述第一用户的合约账户以及所述第一用户的数字签名;
5、将所述智能合约发送到区块链网络中进行存储,并在本地存储合约地址,所述合约地址为所述合约在所述区块链网络中的存储的位置。
6、结合第一方面,在一种实现方式中,所述方法还包括:
7、接收第二用户的终端设备发送的技术交换请求,所述技术交换请求中包括所述第二用户的身份标识和所述技术资源的标识;
8、基于所述第二用户的身份标识以及所述技术资源的标识,根据所述技术交换请求生成交易请求,所述交易请求中包括所述第二用户的身份标识,交换类型,资产信息以及所述第二用户的数字签名;
9、将所述交易请求发送至所述区块链网络中所述技术资源的合约地址;
10、基于接收到的所述区块链网络返回的交易响应消息,向所述第一用户的终端设备返回第一技术交换结果,并向所述第二用户的终端设备返回第二技术交换结果。
11、结合第一方面,在一种实现方式中,所述基于所述第二用户的身份标识以及所述技术资源的标识,根据所述技术交换请求生成交易请求,包括:
12、根据所述第二用户的身份标识,获取所述第二用户对应的资产信息以及签名私钥;
13、根据待交易的技术资源的标识,所述第二用户对应的资产信息,生成对所述待交易的技术资源的交易请求,并根据所述签名私钥对所述交易请求进行数字签名。
14、结合第一方面,在一种实现方式中,所述向所述第一用户的终端设备返回第一技术交换结果,并向所述第二用户的终端设备返回第二技术交换结果之前,所述方法还包括:
15、若交易响应消息指示技术交换完成,则将所述第一用户和所述第二用户的资产信息根据交易响应消息进行更新。
16、第二方面,本技术还提供一种开源社区的资源处理的方法,应用区块链网络中的任一节点,所述方法包括:
17、接收开源社区平台发送的智能合约,所述智能合约中包括对技术资源进行交换的逻辑程序,交换条件以及第一用户的数字签名;
18、将所述的智能合约进行存储,并将所述智能合约广播至所述区块链网络中的各节点;
19、将所述智能合约的合约地址返回所述开源社区平台。
20、结合第二方面,在一种实现方式中,所述方法还包括:
21、接收所述开源社区平台发送的交易请求,所述交易请求中包括第二用户的身份标识,交换类型,资产信息以及所述第二用户的数字签名;
22、根据所述交易请求,校验所述第二用户是否满足所述智能合约中的交换条件;
23、若所述第二用户满足所述智能合约中的交换条件,则根据所述第二用户的身份标识,交换类型,资产信息,以及所述第二用户的数字签名执行所述智能合约中的交易操作,并更新所述智能合约的状态;
24、将所述智能合约执行的交易操作广播至所述区块链网络中的各节点;
25、获取交易操作的结果,作为交易响应消息返回给所述开源社区平台,所述交易操作的结果中包括交易状态、资产信息。
26、第三方面,本技术还提供一种开源社区的资源处理的装置,所述装置包括:
27、接收模块,用于接收第一用户的终端设备上传的技术资源和交换需求,其中,所述交换需求包括交换所述技术资源需要的资产信息;
28、智能合约模块,用于根据所述技术资源和交换需求为第一用户创建智能合约,所述智能合约包括对所述技术资源进行交换的逻辑程序,交换条件,所述第一用户的合约账户以及所述第一用户的数字签名;
29、发送模块,用于将所述智能合约发送到区块链网络中进行存储;
30、存储模块,用于在本地存储合约地址,所述合约地址为所述合约在所述区块链网络中的存储的位置。
31、结合第三方面,在一种实现方式中,所述装置还包括:
32、所述接收模块还用于接收第二用户的终端设备发送的技术交换请求,所述技术交换请求中包括所述第二用户的身份标识和所述技术资源的标识;
33、交易请求生成模块,用于基于所述第二用户的身份标识以及所述技术资源的标识,根据所述技术交换请求生成交易请求,所述交易请求中包括所述第二用户的身份标识,交换类型,资产信息以及所述第二用户的数字签名;
34、所述发送模块,还用于:
35、将所述交易请求发送至所述区块链网络中所述技术资源的合约地址;
36、基于接收到的所述区块链网络返回的交易响应消息,向所述第一用户的终端设备返回第一技术交换结果,并向所述第二用户的终端设备返回第二技术交换结果。
37、结合第三方面,在一种实现方式中,所述交易请求生成模块具体用于:
38、根据所述第二用户的身份标识,获取所述第二用户对应的资产信息以及签名私钥;
39、根据待交易的技术资源的标识,所述第二用户对应的资产信息,生成对所述待交易的技术资源的交易请求,并根据所述签名私钥对所述交易请求进行数字签名。
40、结合第三方面,在一种实现方式中,所述装置还包括:
41、资产管理模块,用于若交易响应消息指示技术交换完成,则将所述第一用户和所述第二用户的资产信息根据交易响应消息进行更新。
42、第四方面,本技术还提供一种开源社区的资源处理的装置,所述装置包括:
43、接收模块,用于接收开源社区平台发送的智能合约,所述智能合约中包括对技术资源进行交换的逻辑程序,交换条件以及第一用户的数字签名;
44、存储模块,用于将所述的智能合约进行存储,并将所述智能合约广播至区块链网络中的各节点;
45、发送模块,用于将所述智能合约存储的合约地址返回所述开源社区平台。
46、结合第四方面,在一种实现方式中,所述装置还包括:
47、所述接收模块还用接收所述开源社区平台发送的交易请求,所述交易请求中包括第二用户的身份标识,交换类型,资产信息以及所述第二用户的数字签名;
48、校验模块,用于根据所述交易请求,校验所述第二用户是否满足所述智能合约中的交换条件;
49、执行模块,用于若所述第二用户满足所述智能合约中的交换条件,则根据所述第二用户的身份标识,交换类型,资产信息,以及所述第二用户的数字签名执行所述智能合约中的交易操作,并更新所述智能合约的状态;
50、广播模块,用于将所述智能合约执行的交易操作广播至所述区块链网络中的各节点;
51、所述发送模块还用于获取交易操作的结果,作为交易响应消息返回给所述开源社区平台,所述交易操作的结果中包括交易状态、资产信息。
52、第五方面,本技术还提供一种电子设备,所述电子设备包括:
53、处理器,存储器及与其他设备交互的通信接口,所述处理器用于执行如第一方面或第二方面任一项所述的开源社区的资源处理的方法。
54、第六方面,本技术还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面或第二方面任一项所述的开源社区的资源处理的方法。
55、第七方面,本技术还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时用于实现如第一方面或第二方面任一项所述的开源社区的资源处理的方法。
56、本技术提供的开源社区的资源处理的方法、装置、设备及存储介质,通过第一用户的终端设备上传技术资源和交换需求到开源社区平台,开源社区平台根据技术资源和交换需求为第一用户创建智能合约,将智能合约发送到区块链网络;区块链网络将智能合约进行存储,并将智能合约广播至区块链网络中的各节点,生成合约地址;将智能合约的合约地址返回开源社区平台,在开源社区平台的本地存储合约地址。通过这种方法将区块链引入开源社区平台,通过区块链去中心化的特性可以避免单一中心化组织的垄断和控制,保证平台的公正性和透明度,并且可以避免数据丢失或被篡改。另外本方案通过用户自己对技术资源进行定价,提供交换需求,依据用户间的自愿交换,实现公平的技术交换。开源社区平台为用户创建智能合约,方便用户进行操作,实现快速部署。