基于区块链的交易方法、装置、设备及存储介质与流程
未命名
08-05
阅读:99
评论:0
1.本技术涉及区块链技术领域,尤其涉及一种基于区块链的交易方法、装置、设备及存储介质。
背景技术:
2.随着社会的发展人们的生活水平也大大提高,生活用品等不断更新迭代,这也导致大量旧的生活生产资料和库存产品被闲置。因此通过二手交易平台让闲置资源流通起来成为了人们的一大需求。
3.现有技术中已经存在一些的二手交易平台的运营方式主要有两种模式,即c2c(customer to customer,个人对个人)与c2b2c(customer to business to customer,个人对企业对个人)。c2c模式侧重渠道,主要为买卖两端撮合,让个人买家和个人卖家直接对接,通过双方协商价格达成交易,主要以社交关系链的构建实现闲置流通。c2b2c模式中顾客向企业提供信息,企业根据信息满足顾客需求,公司还对顾客进行顾客价值评估,吸引顾客参与企业服务来创造价值,使他们从一个学习型消费者生产出更多的消费型学习者。
4.但是,发明人发现,现有技术中的很多二手交易平台没有独特的信任体系,二手交易的可信度和可靠性亟待提高。
技术实现要素:
5.本技术提供一种基于区块链的交易方法、装置、设备及存储介质,用以解决现有技术中二手交易平台没有独特的信任体系,可信度和可靠性亟待提高的问题。
6.第一方面,本技术提供一种基于区块链的交易方法,所述区块链包括多个验证节点,每个验证节点上均部署有预建立的智能合约,每个智能合约包括状态机、一个或多个待交易事项以及触发条件;
7.所述方法应用于区块链,包括:
8.周期性地遍历每个验证节点上的智能合约,将每个智能合约中满足触发条件的待交易事项推送至待验证的队列中;
9.将待验证的队列中的任一待交易事项广播至区块链上的每个验证节点进行签名验证,若验证通过,则将通过验证的待交易事项加入待共识集合,若预设比例的验证节点已达成共识,则执行所述待共识集合中的待交易事项;
10.所述验证节点上的状态机判断所述状态机所属智能合约的状态,若所述智能合约中包括的所有待交易事项全部执行完成,所述状态机将所述智能合约的状态标记为完成;
11.针对每个待交易事项,发送交易通知至用户端;
12.通过人脸识别技术识别所述用户端所属的用户,以使所述用户端支付交易费用完成交易。
13.第二方面,本技术提供一种基于区块链的交易装置,包括:
14.推送模块,用于周期性地遍历每个验证节点上的智能合约,将每个智能合约中满
足触发条件的待交易事项推送至待验证的队列中;
15.执行模块,用于将待验证的队列中的任一待交易事项广播至区块链上的每个验证节点进行签名验证,若验证通过,则将通过验证的待交易事项加入待共识集合,若预设比例的验证节点已达成共识,则执行所述待共识集合中的待交易事项;
16.标记模块,用于所述验证节点上的状态机判断所述状态机所属智能合约的状态,若所述智能合约中包括的所有待交易事项全部执行完成,所述状态机将所述智能合约的状态标记为完成;
17.发送模块,用于针对每个待交易事项,发送交易通知至用户端;
18.支付模块,用于通过人脸识别技术识别所述用户端所属的用户,以使所述用户端支付交易费用完成交易。
19.第三方面,本技术提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
20.所述存储器存储计算机执行指令;
21.所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面以及第一方面各种可能的设计所述的方法。
22.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面以及第一方面各种可能的设计所述的方法。
23.本技术提供的基于区块链的交易方法、装置、设备及存储介质,通过将每个验证节点上的智能合约中满足条件的带交易事项广播到每个验证节点进行签名验证并进行共识,达成共识后执行待交易事项,若智能合约中包括的所有待交易事项全部执行完成,则发送交易通知至用户端,通过人脸识别技术识别所述用户端所属的用户,以使用户端支付交易费用完成交易,实现了交易过程且提高了交易的可靠性,保障了交易的安全。
附图说明
24.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
25.图1为本技术实施例提供的基于区块链的交易方法的应用场景图;
26.图2为本技术实施例提供的基于区块链的交易方法的流程图一;
27.图3为本技术实施例提供的基于区块链的交易方法的流程图二;
28.图4为本技术实施例提供的基于区块链的交易方法的流程图三;
29.图5为本技术实施例提供的基于区块链的交易装置的结构示意图;
30.图6为本技术实施例提供的电子设备的结构示意图。
31.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
32.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及
附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
33.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
34.需要说明的是,本技术基于区块链的交易方法、装置、设备及存储介质可用于区块链领域,也可用于除区块链之外的任意领域,本技术基于区块链的交易方法、装置、设备及存储介质的应用领域不作限定。
35.通过二手交易平台让闲置资源流通起来是人们的一大需求,现有技术中,二手交易平台的运营方式主要有两种模式,即c2c与c2b2c,c2c模式侧重渠道,主要为买卖两端撮合,让个人买家和个人卖家直接对接,通过双方协商价格达成交易,主要以社交关系链的构建实现闲置流通。c2b2c模式中顾客向企业提供信息,企业根据信息满足顾客需求,公司还对顾客进行顾客价值评估,吸引顾客参与企业服务来创造价值,使他们从一个学习型消费者生产出更多的消费型学习者。但是,现有技术中的很多二手交易平台没有独特的信任体系,二手交易的可信度和可靠性亟待提高。
36.针对上述技术问题,本技术提出如下技术构思:基于区块链进行物品交易,区块链上包括多个验证节点,每个验证节点上均部署有预建立的智能合约,通过智能合约来管理交易活动,如此便能够解决现有技术中存在的二手交易平台没有独特的信任体系,可信度和可靠性亟待提高的问题。
37.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
38.图1为本技术实施例提供的基于区块链的交易方法的应用场景图。如图1所示,该应用场景包括:区块链网络上包括多个验证节点,如验证节点1、验证节点2、验证节点3。每个验证节点上均部署有预建立的智能合约,通过智能合约来管理交易活动。
39.基于图1所示的应用场景,本技术实施例提供一种基于区块链的交易方法。图2为本技术实施例提供的基于区块链的交易方法的流程图一。本实施例的方法的执行主体可以是区块链,区块链包括多个验证节点,每个验证节点上均部署有预建立的智能合约,每个智能合约包括状态机、一个或多个待交易事项以及触发条件。如图2所示,该基于区块链的交易方法包括:
40.s201、周期性地遍历每个验证节点上的智能合约,将每个智能合约中满足触发条件的待交易事项推送至待验证的队列中。
41.本实施例中,已知每个智能合约包括状态机、一个或多个待交易事项以及触发条件。触发条件。智能合约通过自动执行合同条款,将合同转化为一种自动化的交易,因此智能合约上有很多待交易事项,这些待交易事项均有待验证。通过周期性地遍历每个验证节点上的智能合约,筛选出各待交易事项中满足触发条件的待交易事项,并推送至待验证的队列中,等待验证。
42.本实施例中,区块链通过智能合约来管理交易活动,其中,智能合约的建立过程如下:
43.a1、接收参与智能合约的用户端发送的区块链注册请求,返回一对公钥和私钥至用户端;其中,公钥为用户端在区块链上的账户地址,私钥为操作账户地址的唯一钥匙;
44.a2、制定用户端之间的承诺合约,将承诺合约发送至各用户端,以使各用户端使用各自的私钥进行签名,得到智能合约。
45.具体地,承诺合约是根据各用户端所属的用户的需要共同商定的,承诺合约中包含了用户的权利和义务,这些权利和义务以电子化的方式记录下来。各用户端使用各自的私钥进行签名,以确保智能合约的有效性。
46.用户端上的公钥和私钥通过区块链加密算法md5进行存储。md5的加密过程包括:先定义四个值,然后用这四个值对原文信息进行计算,并得到新的四个值,再对原文进行计算,再得到新的四个值,如此循环一定次数,最终对最后的这四个值进行简单的字符串拼接,就得到了最终的密文。具体地,包括以下三个步骤:
①
填补信息,用原文长度位数对512求余,如果结果不为448,就填充到448位。填充是第一位填1,后面填0。512-448=64,用这剩余的64位,记录原文长度。最终得到一个填补完的信息(总长=原文长度+512位)。
②
拿到初始值,四个初始值,是md5这个算法提前定义好的,分别是4个32位的值,总共刚好128位。
③
真正的计算,计算分为多次循环,每次循环,都是用abcd和原文在第一步填补完的信息,进行计算,最终得到新的abcd。最后将最后一次abcd拼成字符串,就是最终的密文。循环先分为主循环,每个主循环中又套有子循环。主循环次数=原文长度/512。子循环次数=64次。
47.本实施例中,建立得到智能合约后,需要将智慧合约部署到区块链中的每个验证节点上,智能合约在区块链中的每个验证节点上的部署过程如下:
48.b1、每个验证节点通过点对点网络接收智能合约,将智能合约保存在验证节点的内存中;
49.b2、每个验证节点将设定时间区间内接收到的智能合约进行打包,形成第一合约集合,并计算第一合约集合的哈希值;
50.b3、将第一合约结合的哈希值封装在区块结构中,并将区块结构广播至区块链中的其他验证节点上;
51.b4、其他验证节点中的一个验证节点分解出区块结构中的第一合约集合的哈希值,与本验证节点的第二合约集合的哈希值相比较,若第一合约集合的哈希值和第二合约集合的哈希值相同,则本验证节点认可第一合约集合,并发送第一合约集合至其他验证节点;
52.b5、重复上述步骤,直至所有的验证节点在预设时间段内对最新的合约集合达成共识,得到区块形式的最新合约集合;
53.b6、每个验证节点接收区块形式的最新合约集合,以完成智能合约在区块链中的每个验证节点上的部署。
54.具体地,步骤b1中每个验证节点通过点对点(p2p)网络接收智能合约,将智能合约保存在验证节点的内存中。步骤b6中的区块形式的最新合约集合,每个区块包含以下信息:当前区块的哈希值、前一区块的哈希值、达成共识时的时间戳以及其它描述信息。区块链最重要的信息是带有一组已经达成共识的合约集合;收到合约集合的验证节点,都会对每条
合约进行验证,验证通过的合约才会最终写入区块链中,验证的内容主要是合约参与者的私钥签名是否与账户匹配。
55.s202、将待验证的队列中的任一待交易事项广播至区块链上的每个验证节点进行签名验证,若验证通过,则将通过验证的待交易事项加入待共识集合,若预设比例的验证节点已达成共识,则执行待共识集合中的待交易事项。
56.本实施例中,签名验证为用户端使用各自的私钥进行签名的验证,用于确保交易的有效性。若验证通过,说明用户端在区块链上的账户地址是有效的,通过验证后的待交易事项加入待共识集合等待共识。预设比例的验证节点达成共识,说明待交易事项通过了验证,此时即可以执行待共识集合中的待交易事项。
57.具体地,预设比例可以根据实际情况进行设定,例如70%,80%或90%,本实施例不做具体的限定。
58.s203、验证节点上的状态机判断状态机所属智能合约的状态,若智能合约中包括的所有待交易事项全部执行完成,状态机将智能合约的状态标记为完成。
59.本实施例中,若智能合约中包括的所有待交易事项全部执行完成,状态机将智能合约的状态标记为完成的同时,还从最新的区块中移除该智能合约。若智能合约中包括的所有待交易事项没有全部执行完成,状态机将智能合约的状态标记为进行中,继续保存在最新的区块中等待下一轮执行,直到处理完毕。
60.s204、针对每个待交易事项,发送交易通知至用户端。
61.本实施例中,智能合约的状态标记为完成后,说明待交易事项已经在区块链中完成,此时针对每个待交易事项,发送交易通知至用户端,目的是通知用户端进行付费。
62.s205、通过人脸识别技术识别用户端所属的用户,以使用户端支付交易费用完成交易。
63.本实施例中,用户端接收到交易通知后会进行付费操作,通过人脸识别技术可以识别用户的身份,从而可以在用户端完成交易付费。
64.综上,本实施例提供的基于区块链的交易方法,通过将每个验证节点上的智能合约中满足条件的带交易事项广播到每个验证节点进行签名验证并进行共识,达成共识后执行待交易事项,若智能合约中包括的所有待交易事项全部执行完成,则发送交易通知至用户端,通过人脸识别技术识别用户端所属的用户,以使用户端支付交易费用完成交易,实现了交易过程且提高了交易的可靠性,保障了交易的安全。
65.图3为本技术实施例提供的基于区块链的交易方法的流程图二。在图2提供的实施例的基础上,对步骤s205中通过人脸识别技术识别用户端所属的用户,以使用户端支付交易费用完成交易的具体实现方法进行了详细说明。如图3所示,该基于区块链的交易方法,包括如下步骤:
66.s301、通过扫描用户端所属的用户的人脸图像。
67.本实施例中,人脸图像中包含的数据特征十分丰富,如直方图特征、颜色特征、模板特征、结构特征及haar特征等。人脸检测就是把这其中有用的信息挑出来,并利用这些特征实现人脸检测。
68.s302、对人脸图像进行预处理和特征提取,得到人脸特征数据。
69.本实施例中,获取的原始人脸图像由于受到各种条件的限制和随机干扰,往往不
loss多了一个参数,margin的大小需要调参。如果margin太大,则模型的损失会更大,而且学习到最后,loss也很难趋近于0,甚至导致网络不收敛,但是可以较大把握区分较为相似的样本;如果margin太小,loss很容易趋近于0,模型很好训练,但较难区分a与p。
81.对于三元组损失函数的损失公式,要有3个输入,即锚点a,正例p和负例n。对于样本来讲,有3种,即easy triplets、hard triplets和semi-hard triplets。理论上讲,使用hard triplets训练模型较好,因为这样模型能够有很好的学习能力,但由于margin的存在,这类样本可能模型没法很好的拟合,训练比较困难;其次是使用semi-hard triplets,这类样本是实际使用中最优选择,因为这类样本损失不为0,而且损失不大,模型既可以学习到样本之间的差异,又较容易收敛;至于easy triplet,损失为0,不用拿来训练。针对人脸识别场景,样本的选择应该满足d(a,p)和d(a,n)尽可能接近,其实就是选择semi-hard triplets样本,这样一来,损失函数的公式不容易满足,也就意味着损失值不够低,模型必须认真训练和更新自己的参数,从而努力让d(a,n)的值尽可能变大,同时让d(a,p)的值尽可能变小。
82.综上,本实施例提供的基于区块链的交易方法,通过得到用户端的用户的人脸图像并对其进行预处理和特征提取得到人脸特征数据,利用人脸数据模型对人脸特征数据进行识别,识别成功后才可以通知用户端支付交易费用,提高了交易的可靠性,保障了交易的安全。
83.图4为本技术实施例提供的基于区块链的交易方法的流程图三。如图4所示,该基于区块链的交易方法,包括如下步骤:
84.s401、采集验证节点对应的用户的信息数据。
85.本实施例中,采集的用户的数据信息包括用户基本信息、用户行为信息、用户信用信息、服务信息、渠道信息以及产品信息等信息。
86.s402、采用预设算法模型对信息数据进行预测,得到用户偏好,并根据用户偏好对用户进行物品推送。
87.本实施例中,采用cart算法中的后向剪枝算法建立模型,将模型进行分类,生成单分类器模型,即得到算法模型。
88.具体地,cart(classification and regression trees,分类与回归树)算法能够很好地刻画用户的特征以及预测新数据的类别。在学习样本的数据集中常有一些缺失及异常值,因此先要对这些缺失值、异常值进行处理:补上缺失值,删除异常值。此外数据中还有些变量是字符变量,也需要将它们转换为数值变量。随机选择一些用户信息构建单分类器模型,这些单分类器模型即算法模型,利用算法模型对采集到的用户的信息数据进行分析预测,即可得到用户偏好。用户偏好为用户在考量商品和服务的时候所做出的理性的具有倾向性的选择,根据用户偏好可以对用户进行物品推送。
89.综上,本实施例提供的基于区块链的交易方法,通过采集用户的信息数据,采用预设算法模型对信息数据进行预测,得到用户偏好,并根据用户偏好对用户进行物品推送,可以促进基于区块链的交易的进行,且采集到的用户信息数据仅用于物品推送,保证了交易的安全性和可靠性。
90.图5为本技术实施例提供的基于区块链的交易装置的结构示意图。如图5所示,该基于区块链的交易装置,包括:推送模块501、执行模块502、标记模块503、发送模块504和支
付模块505。
91.其中,推送模块501,用于周期性地遍历每个验证节点上的智能合约,将每个智能合约中满足触发条件的待交易事项推送至待验证的队列中。
92.执行模块502,用于将待验证的队列中的任一待交易事项广播至区块链上的每个验证节点进行签名验证,若验证通过,则将通过验证的待交易事项加入待共识集合,若预设比例的验证节点已达成共识,则执行待共识集合中的待交易事项。
93.标记模块503,用于验证节点上的状态机判断状态机所属智能合约的状态,若智能合约中包括的所有待交易事项全部执行完成,状态机将智能合约的状态标记为完成。
94.发送模块504,用于针对每个待交易事项,发送交易通知至用户端。
95.支付模块505,用于通过人脸识别技术识别用户端所属的用户,以使用户端支付交易费用完成交易。
96.在一些实施例中,基于区块链的交易装置还包括:建立模块506,用于接收参与智能合约的用户端发送的区块链注册请求,返回一对公钥和私钥至用户端;其中,公钥为用户端在区块链上的账户地址,私钥为操作账户地址的唯一钥匙;制定用户端之间的承诺合约,将承诺合约发送至各用户端,以使各用户端使用各自的私钥进行签名,得到智能合约。
97.在一些实施例中,基于区块链的交易装置还包括:部署模块507,用于每个验证节点通过点对点网络接收智能合约,将智能合约保存在验证节点的内存中;每个验证节点将设定时间区间内接收到的智能合约进行打包,形成第一合约集合,并计算第一合约集合的哈希值;将第一合约结合的哈希值封装在区块结构中,并将区块结构广播至区块链中的其他验证节点上;其他验证节点中的一个验证节点分解出区块结构中的第一合约集合的哈希值,与本验证节点的第二合约集合的哈希值相比较,若第一合约集合的哈希值和第二合约集合的哈希值相同,则本验证节点认可第一合约集合,并发送第一合约集合至其他验证节点;重复上述步骤,直至所有的验证节点在预设时间段内对最新的合约集合达成共识,得到区块形式的最新合约集合;每个验证节点接收区块形式的最新合约集合,以完成智能合约在区块链中的每个验证节点上的部署。
98.在一些实施例中,支付模块505具体用于通过扫描用户端所属的用户的人脸图像;对人脸图像进行预处理和特征提取,得到人脸特征数据;人脸位置坐标数据及人脸关键点坐标数据进行预处理和特征提取,得到人脸特征数据;将人脸特征数据输入人脸识别模型进行人脸识别;若识别成功,则发送支付费用的通知至用户端,以使用户端支付交易费用,完成交易。
99.在一些实施例中,支付模块505还具体用于获取人脸数据库中的人脸数据集;对人脸数据集进行清洗处理,得到清洗后的人脸数据集;根据清洗后的人脸数据集训练深度卷积神经网络,以得到人脸识别模型;其中,深度卷积神经网络包括主干网、训练用的辅助网络及三元组损失函数。
100.在一些实施例中,基于区块链的交易装置还包括:物品推送模块508,用于采集验证节点对应的用户的信息数据;采用预设算法模型对信息数据进行预测,得到用户偏好,并根据用户偏好对用户进行物品推送。
101.在一些实施例中,物品推送模块508具体用于采用cart算法中的后向剪枝算法建立模型,将模型进行分类,生成单分类器模型,即得到算法模型。
102.本技术实施例提供的基于区块链的交易装置,可用于执行上述实施例中基于区块链的交易方法的技术方案,其实现原理和技术效果类似,在此不再赘述。
103.需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,标记模块503可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上标记模块503的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
104.图6为本技术实施例提供的电子设备的结构示意图。如图6所示,该电子设备可以包括:收发器601、处理器602、存储器603。
105.处理器602执行存储器存储的计算机执行指令,使得处理器602执行上述实施例中的方案。处理器602可以是通用处理器,包括中央处理器cpu、网络处理器(network processor,np)等;还可以是数字信号处理器dsp、专用集成电路asic、现场可编程门阵列fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
106.存储器603通过系统总线与处理器602连接并完成相互间的通信,存储器123用于存储计算机程序指令。
107.收发器601可以用于获取待运行任务和待运行任务的配置信息。
108.系统总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。收发器用于实现数据库访问装置与其他计算机(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(random access memory,ram),也可能还包括非易失性存储器(non-volatile memory)。
109.本技术实施例提供的电子设备,可以是上述实施例的终端设备。
110.本技术实施例还提供一种运行指令的芯片,该芯片用于执行上述实施例中基于区块链的交易方法的技术方案。
111.本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行上述实施例基于区块链的交易方法的技术方案。
112.本技术实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,其存储在计算机可读存储介质中,至少一个处理器可以从计算机可读存储介质读取计算机程序,至少一个处理器执行计算机程序时可实现上述实施例中基于区块链的交易方法的技术方案。
113.在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,模块的划分,仅仅为
一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
114.作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案。
115.另外,在本技术各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
116.上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本技术各个实施例方法的部分步骤。
117.应理解,上述处理器可以是中央处理单元(central processing unit,简称cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
118.存储器可能包含高速ram存储器,也可能还包括非易失性存储nvm,例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。
119.总线可以是工业标准体系结构(industry standard architecture,简称isa)总线、外部设备互连(peripheral component interconnect,简称pci)总线或扩展工业标准体系结构(extended industry standard architecture,简称eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本技术附图中的总线并不限定仅有一根总线或一种类型的总线。
120.上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
121.一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(application specific integrated circuits,简称asic)中。当然,处理器和存储介质也可以作为分立组件存在于电控单元或主控设备中。
122.本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
123.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其
它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。
124.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。
技术特征:
1.一种基于区块链的交易方法,其特征在于,所述区块链包括多个验证节点,每个验证节点上均部署有预建立的智能合约,每个智能合约包括状态机、一个或多个待交易事项以及触发条件;所述方法应用于区块链,包括:周期性地遍历每个验证节点上的智能合约,将每个智能合约中满足触发条件的待交易事项推送至待验证的队列中;将待验证的队列中的任一待交易事项广播至区块链上的每个验证节点进行签名验证,若验证通过,则将通过验证的待交易事项加入待共识集合,若预设比例的验证节点已达成共识,则执行所述待共识集合中的待交易事项;所述验证节点上的状态机判断所述状态机所属智能合约的状态,若所述智能合约中包括的所有待交易事项全部执行完成,所述状态机将所述智能合约的状态标记为完成;针对每个待交易事项,发送交易通知至用户端;通过人脸识别技术识别所述用户端所属的用户,以使所述用户端支付交易费用完成交易。2.根据权利要求1所述的方法,其特征在于,所述智能合约的建立过程如下:接收参与智能合约的用户端发送的区块链注册请求,返回一对公钥和私钥至用户端;其中,所述公钥为用户端在所述区块链上的账户地址,所述私钥为操作所述账户地址的唯一钥匙;制定所述用户端之间的承诺合约,将所述承诺合约发送至各用户端,以使所述各用户端使用各自的私钥进行签名,得到所述智能合约。3.根据权利要求1所述的方法,其特征在于,所述智能合约在所述区块链中的每个验证节点上的部署过程如下:每个验证节点通过点对点网络接收所述智能合约,将所述智能合约保存在所述验证节点的内存中;所述每个验证节点将设定时间区间内接收到的所述智能合约进行打包,形成第一合约集合,并计算所述第一合约集合的哈希值;将所述第一合约结合的哈希值封装在区块结构中,并将所述区块结构广播至所述区块链中的其他验证节点上;所述其他验证节点中的一个验证节点分解出所述区块结构中的第一合约集合的哈希值,与本验证节点的第二合约集合的哈希值相比较,若所述第一合约集合的哈希值和所述第二合约集合的哈希值相同,则本验证节点认可所述第一合约集合,并发送所述第一合约集合至其他验证节点;重复上述步骤,直至所有的验证节点在预设时间段内对最新的合约集合达成共识,得到区块形式的最新合约集合;每个验证节点接收所述区块形式的最新合约集合,以完成所述智能合约在所述区块链中的每个验证节点上的部署。4.根据权利要求1至3任一项所述的方法,其特征在于,所述通过人脸识别技术识别所述用户端所属的用户,以使所述用户端支付交易费用完成交易,包括:通过扫描所述用户端所属的用户的人脸图像;对所述人脸图像进行预处理和特征提取,得到人脸特征数据;人脸位置坐标数据及人
脸关键点坐标数据进行预处理和特征提取,得到人脸特征数据;将所述人脸特征数据输入人脸识别模型进行人脸识别;若识别成功,则发送支付费用的通知至用户端,以使所述用户端支付交易费用,完成交易。5.根据权利要求4所述的方法,其特征在于,所述人脸识别模型的训练过程如下:获取人脸数据库中的人脸数据集;对所述人脸数据集进行清洗处理,得到清洗后的人脸数据集;根据所述清洗后的人脸数据集训练深度卷积神经网络,以得到人脸识别模型;其中,所述深度卷积神经网络包括主干网、训练用的辅助网络及三元组损失函数。6.根据权利要求1所述的方法,其特征在于,还包括:采集所述验证节点对应的用户的信息数据;采用预设算法模型对所述信息数据进行预测,得到用户偏好,并根据所述用户偏好对用户进行物品推送。7.根据权利要求6所述的方法,其特征在于,所述预设算法模型的建立过程如下:采用cart算法中的后向剪枝算法建立模型,将所述模型进行分类,生成单分类器模型,即得到所述算法模型。8.一种基于区块链的交易装置,其特征在于,包括:推送模块,用于周期性地遍历每个验证节点上的智能合约,将每个智能合约中满足触发条件的待交易事项推送至待验证的队列中;执行模块,用于将待验证的队列中的任一待交易事项广播至区块链上的每个验证节点进行签名验证,若验证通过,则将通过验证的待交易事项加入待共识集合,若预设比例的验证节点已达成共识,则执行所述待共识集合中的待交易事项;标记模块,用于所述验证节点上的状态机判断所述状态机所属智能合约的状态,若所述智能合约中包括的所有待交易事项全部执行完成,所述状态机将所述智能合约的状态标记为完成;发送模块,用于针对每个待交易事项,发送交易通知至用户端;支付模块,用于通过人脸识别技术识别所述用户端所属的用户,以使所述用户端支付交易费用完成交易。9.根据权利要求8所述的装置,其特征在于,还包括:建立模块,用于接收参与智能合约的用户端发送的区块链注册请求,返回一对公钥和私钥至用户端;其中,所述公钥为用户端在所述区块链上的账户地址,所述私钥为操作所述账户地址的唯一钥匙;制定所述用户端之间的承诺合约,将所述承诺合约发送至各用户端,以使所述各用户端使用各自的私钥进行签名,得到所述智能合约。10.根据权利要求8所述的装置,其特征在于,还包括:部署模块,用于每个验证节点通过点对点网络接收所述智能合约,将所述智能合约保存在所述验证节点的内存中;所述每个验证节点将设定时间区间内接收到的所述智能合约进行打包,形成第一合约集合,并计算所述第一合约集合的哈希值;将所述第一合约结合的哈希值封装在区块结构中,并将所述区块结构广播至所述区块链中的其他验证节点上;所述其他验证节点中的一个验证节点分解出所述区块结构中的第一合约集合的哈希值,与本验证节点的第二合约集合的哈希值相比较,若所述第一合约集合的哈希值和所述第二合约集合的哈希值相同,则本验证节点
认可所述第一合约集合,并发送所述第一合约集合至其他验证节点;重复上述步骤,直至所有的验证节点在预设时间段内对最新的合约集合达成一致,得到区块形式的最新合约集合;每个验证节点接收所述区块形式的最新合约集合,以完成所述智能合约在所述区块链中的每个验证节点上的部署。11.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至7任一项所述的方法。12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7任一项所述的方法。
技术总结
本申请提供一种基于区块链的交易方法、装置、设备及存储介质,涉及区块链领域。该方法包括:周期性地遍历每个验证节点上的智能合约,将每个智能合约中满足触发条件的待交易事项推送至待验证的队列中;将任一待交易事项广播至区块链上的每个验证节点进行签名验证,若验证通过,则将通过验证的待交易事项加入待共识集合,若预设比例的验证节点已达成共识,则执行待交易事项;判断状态机所属智能合约的状态,若智能合约中包括的所有待交易事项全部执行完成,将智能合约的状态标记为完成;针对每个待交易事项,发送交易通知至用户端;通过人脸识别技术识别用户,以使用户端支付交易费用完成交易。本申请的方法交易的可靠性,保障交易的安全。易的安全。易的安全。
技术研发人员:赵瑞龙 陈永录 牛伯宇 于嘉玮
受保护的技术使用者:中国工商银行股份有限公司
技术研发日:2023.05.29
技术公布日:2023/8/4
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种燕麦片浆料、水果风味燕麦片及其制备方法与流程 下一篇:头戴式耳机的制作方法
