基于智能合约的疫苗分配管理系统、方法及合约平台与流程

文档序号:30969419发布日期:2022-07-30 21:43阅读:178来源:国知局
基于智能合约的疫苗分配管理系统、方法及合约平台与流程

1.本技术涉及数据处理技术领域,尤其涉及一种基于智能合约的疫苗分配管理系统、方法及合约平台。


背景技术:

2.在疫情频发的大环境下,人们的经济生活和日常生活都遭受了重大冲击,快速全面的接种疫苗是遏制疫情持续发展的有效手段,疫苗分配管理如何透明高效的进行至关重要。
3.由于疫苗的特殊性,部分疫苗对运输及存储条件会有严格要求,其中,最常见的条件如温度。过程中,如果没达到相应规则的运输存储条件,极有可能影响疫苗的效果甚至对接种者产生不可预知的危害。
4.毫无疑问的,接种者的登记信息由于包含身份信息,涉及个人隐私,同样至关重要且十分敏感。因此,该接种者信息及疫苗相关信息必须高度准确透明且不可篡改,同时还必须具有匿名性来保护接种者隐私。然而现有的中心化系统往往使用大量人力对这些信息数据进行整合维护,同时,由于疫苗分配管理过程涉及多个主体协同合作,如医护、生产商、配送方等,任一主体出问题都可能产生隐私泄露、冒名顶替及疫苗质量问题等,引发信任危机,不利于疫苗的快速推广。


技术实现要素:

5.本发明的目的是针对现有技术的不足,提供一种基于智能合约的疫苗分配管理系统、方法及合约平台。
6.本技术一方面提供了一种基于智能合约的疫苗分配管理系统,包括第一客户端、第二客户端、第三客户端及合约平台,其中:
7.所述第一客户端,用于向所述合约平台发送登记请求,其中,所述登记请求包括身份标识;
8.所述第二客户端,用于向所述合约平台发送温度更新请求;其中,温度更新请求包括温度信息;
9.所述第三客户端,用于向所述合约平台发送核验请求;其中,所述核验请求包括所述身份标识、疫苗标识、交易地址及合约地址;
10.所述合约平台,用于对所述第一客户端发送的所述登记请求执行登记验证;当所述登记验证成功时,生成登记信息,向所述第一客户端返回交易地址及合约地址,并将所述登记信息存入存储域并上链;
11.所述合约平台,用于对所述第二客户端发送的所述温度更新请求执行权限验证;当所述权限验证成功时,根据所述第二客户端发送的所述温度更新请求执行温度更新业务并上链;
12.所述合约平台,还用于对所述第三客户端发送的所述核验请求执行核验,生成核
验结果,并将所述核验结果返回给所述第三客户端,当所述核验成功时,还执行登记更新业务并上链
13.优选地,所述第一客户端,用于向所述合约平台发送所述登记请求之前,还用于:获取唯一标识编号id,获取密文sk,根据以下公式生成所述身份标识:
14.身份标识=hash(hash(id)+hash(sk))。
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.图1是本技术一实施例提供的一种网络架构的结构示意图;
43.图2是本技术一实施例提供的一种疫苗分配管理系统的结构示意图;
44.图3是本技术一实施例提供的一种疫苗分配管理系统场景示意图;
45.图4是本技术一实施例提供的一种加密算法演示示意图;
46.图5是本技术一实施例提供的一种二维码数据结构示意图;
47.图6是本技术一实施例提供的一种疫苗分配管理方法的流程图;
48.图7是本技术一实施例提供的一种疫苗分配管理合约平台的结构示意图;
49.图8是本技术一实施例提供的一种计算机设备的结构示意图。
具体实施方式
50.可以理解的是,本技术涉及区块链技术及其智能合约相关技术。
51.区块链技术是实现分布式应用的技术基础,区块链技术采用哈希指针代替传统指针,并将数字资产的交易存储在区块体中,是一种交易驱动的状态机。
52.其中,智能合约是指运行在区块链系统上的一段状态代码,代码逻辑定义了合约内容,是一种特殊协议,在区块链内制定合约时使用,当中内含了代码函数(function),亦能与其他合约进行交互、做决策、存储资料等功能。智能合约提供验证及执行合约内所订立的条件。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。
53.请参见图1,图1是本技术一实施例提供的一种网络架构的结构示意图。
54.如图1所示,该网络架构可以包括区块链网络10、客户端20。其中,区块链网络10中可以包括多个区块链节点,智能合约的逻辑代码运行在区块链节点中,该多个区块链节点之间可以相互进行数据交互,该多个区块链节点可以包括节点a1、节点a2、
……
和节点an等n个节点。客户端20可以包括节点c1、节点c2、
……
和节点cn等n个客户端节点。
55.必须说明的是,客户端20中包含的客户端节点同时也是区块链中的节点,区块链网络10中的节点通常为全节点,客户端20中的节点通常为轻节点。为了便于理解,将区块链中所有的节点划分为区块链网络10和客户端20。全节点保存整个区块的所有内容,而轻节点仅仅保存区块的块头信息,对于移动便携设备来说,如果存储区块的所有内容,则所需空间过大,而这是不现实的。所以轻节点只需要存储区块块头信息,全节点存储区块所有内容即可,当需要向轻节点证明某条交易是否被写入区块链网络10时,可以使用merkle proof,从交易到根节点的一条路径即为merkle proof也称为merkle path,全节点将整个merkle proof发送给轻节点,轻节点即可根据其算出根哈希值,和自己保存的对比,从而验证该交易是否被写入区块链。只要沿着该路径,所有哈希值都正确,说明内容没有被修改过。
56.更多的,区块链网络10中的一个区块链节点或者客户端20中的一个节点,可以由服务器构成,也可以由终端设备构成。其中,用于构成区块链网络10节点的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。用于构成客户端20节点的服务器通常为终端设备,终端设备可以是:智能手机、平板电脑、笔记本电脑、桌上型电脑、物联网设备等智能终端。
57.可以理解的是,现有的中心化疫苗分配管理系统几乎每个流程都需要人为干预,无法确保系统长期高安全性的运行,可能产生接种者的隐私泄露问题和冒名顶替问题,以及疫苗运送存储条件监管不到位导致的疫苗质量问题,进而引发信任危机,最终导致疫情控制被拖延,而区块链技术和智能合约技术的出现,使得具有匿名性、不可篡改性的去中心化应用程序成为可能。
58.请参见图2,图2是本技术一实施例提供的一种疫苗分配管理系统的结构示意图。
59.一种基于区块链智能合约的疫苗分配管理系统,其特征在于,包括第一客户端100、第二客户端200、第三客户端300及合约平台400,其中:
60.所述第一客户端100,用于向所述合约平台400发送登记请求,其中,所述登记请求包括身份标识;
61.所述合约平台400,用于对所述第一客户端100发送的所述登记请求执行登记验证;当所述登记验证成功时,生成登记信息,向所述第一客户端100返回交易地址及合约地址,并将所述登记信息存入存储域并上链;
62.其中,身份标识可以是如身份证号、驾驶证号等可以起到唯一标识作用的唯一标
识编号。
63.其中,登记验证可以是,合约平台400根据预先设置的验证规则对身份标识执行校验逻辑,当身份标识符合验证规则时,确认验证成功,合约平台400生成登记信息,并将登记信息存入存储域并上链,当身份标识不符合验证规则时,验证失败,不生成登记信息,可以生成失败日志,并将所述失败日志存入存储域并上链。验证失败也会产生失败日志并上链,会消耗一定的汽油费,能够一定程度上防止恶意客户端重复发起登记请求。其中,汽油费性质类似于手续费。
64.优选地,失败日志可以仅记录对应身份标识失败次数、时间等信息,节约存储域空间。
65.其中,登记请求还可以登记时间、期望接种地址、期望接种时间、是否已经接种标记、接种次数等信息。登记信息可以包括登记请求中的身份标识、登记时间、期望接种地址、期望接种时间、是否已经接种标记、接种次数等信息。
66.其中,存储域为合约平台400中的存储空间,即智能合约的存储空间。
67.可以理解的是,当登记请求对应的交易被包含于共识区块中时,上述业务逻辑才会执行。此外,登记请求涉及合约平台400状态的变更,因此,需要支付一定的汽油费,汽油费性质类似于手续费,可以一定程度上防止恶意客户端重复植入无效数据。
68.其中,合约地址是执行本次登记请求业务逻辑的合约平台400在区块链网络10上的哈希地址值,便于后续验证登记信息时快速定位。交易地址是本次登记请求对应的交易上链之后的哈希地址值。
69.具体地,可通过交易地址获取交易,交易中通常至少包括发起人地址、目标合约地址及参数等信息,可以用交易中的信息配合合约地址对接种者身份进行辅助验证。
70.所述第二客户端200,用于向所述合约平台400发送温度更新请求;其中,温度更新请求包括温度信息;
71.所述合约平台400,用于对所述第二客户端200发送的所述温度更新请求执行权限验证;当所述权限验证成功时,根据所述第二客户端200发送的所述温度更新请求执行温度更新业务并上链;
72.其中,温度更新请求可以包括温度信息,优选地,温度信息可以包括某一时段内温度最高值及温度最低值。
73.具体地,第二客户端200可以至少包括一个物联网设备,物联网设备可以是物联网控温装置,用于实时采集获取物联网控温装置内疫苗的温度信息并将温度信息上传到区块链网络10中。
74.一方面,物联网设备之间可以为独立的区块链节点,物联网设备实时采集温度信息后直接上传至区块链网络10中。
75.具体地,权限验证过程可以是,合约平台400获取第二客户端200公钥地址,并遍历合约平台400的存储域中预先设置的第二客户端200公钥地址合集进行对比,当第二客户端200公钥地址存在于合集中时,确认权限验证成功,当第二客户端200公钥地址不存在于合集中时,确认权限验证失败。
76.第二客户端200公钥地址是通过其发起的温度更新请求对应的交易中获取的。可以理解的是,区块链系统的交易中通常发起端公钥地址、目标地址及参数信息等。
77.上述过程即为权限验证,通过权限验证可以防止不合法节点非法更新合约平台400中的数据。
78.当权限验证成功时,执行温度更新业务并上链。具体地,温度更新业务可以是,合约平台400根据第二客户端200公钥地址及第二客户端200公钥地址与疫苗标识的关联关系检索出对应的疫苗标识,再将温度更新请求中的温度信息用于上述疫苗标识的关联更新。其中,疫苗标识用于标识区分不同批次或不同剂的疫苗,且疫苗标识及第二客户端200公钥地址与疫苗标识的关联关系可以是预先设置的。
79.所述第三客户端300,用于向所述合约平台400发送核验请求;其中,所述核验请求包括所述身份标识、疫苗标识、交易地址及合约地址;
80.所述合约平台400,还用于对所述第三客户端300发送的所述核验请求执行核验,生成核验结果,并将所述核验结果返回给所述第三客户端300,当所述核验成功时,还执行登记更新业务并上链。
81.如前文所述,疫苗标识可以是预先设置于合约平台400存储域中的。
82.具体地,核验过程可以是,合约平台400获取第三客户端300发起的核验请求中的身份标识及疫苗标识,
83.合约平台400根据身份标识及疫苗标识遍历存储域,检索与身份标识对应的登记信息,检索与疫苗标识对应的温度信息及疫苗保存规则,并根据检索结果生成核验结果,即核验结果可以包括登记信息、温度信息及疫苗保存规则。
84.当检索到与身份标识相匹配的登记信息,同时疫苗标识对应的温度信息符合疫苗保存规则时,确认核验成功。进一步地,当疫苗标识对应的温度信息不符合疫苗保存规则时,可以设置疫苗相关状态为不可使用。
85.当核验成功时,执行登记更新业务并上链。具体地,登记更新业务可以是,合约平台400更新核验请求中身份标识相对应的登记信息,具体可以是更改接种标记或更改接种次数等操作。
86.上述过程即为核验,通过核验检查登记信息及疫苗温度信息可以防止接种者被冒名顶替,也可以避免运送存储环境控制不到位的问题疫苗被使用。
87.所述第三客户端300的公钥地址预先设置于所述合约平台400存储域内。
88.可以理解的是,登记请求既由第一客户端100发起也可以由第三客户端300发起,而核验请求只能由拥有一定权限的第三客户端300发起,预先将第三客户端300的公钥地址设置于存储域内有利于执行权限控制。
89.上述系统即为基于智能合约的疫苗分配管理系统,通过将登记信息注册到区块链智能合约中,能够实现登记信息的不可篡改,进而避免人为因素导致隐私泄露和冒名顶替问题,此外,通过将疫苗信息数字化,并用区块链网络10不可篡改的监测疫苗状态,能够有效的避免不合规疫苗被投入使用。
90.下面以区块链网络10中的节点a1、客户端20中的节点c1、c2及c3之间的数据交互为例,执行本技术实施例的具体描述。
91.本实施例主要以接种者登记到合约平台、疫苗运输过程监测及医护核验接种者和疫苗的过程为例执行说明。
92.请一并参见图3,图3是本技术一实施例提供的一种疫苗分配管理系统场景示意
图。
93.如图3所示,接种者可以是客户端20中的节点c1,同时也是第一客户端100,物联网设备可以是客户端20中的节点c2,同时也是第二客户端200,医护可以是客户端20中的节点c3,同时也是第三客户端300,合约平台400可以预先部署于区块链网络10中的节点a1中。
94.s301.接种者发送登记请求。
95.具体地,在使用第一客户端100的过程中,作为接种者的第一客户端100可以向合约平台400发起疫苗接种的登记请求,登记请求中可以包含接种者的身份标识,还可以包括登记时间、期望接种地址、期望接种时间、是否已经接种标记、接种次数等信息。
96.其中,第一客户端100可以是智能手机、平板电脑、笔记本电脑、桌上型电脑等,身份标识可以是接种者的身份证号、驾驶证号等可以唯一标识接种者身份的编号。
97.s302.合约平台400生成登记信息并上链。
98.其中,登记信息与身份标识相关联,可以包括身份标识、登记时间、期望接种地址、期望接种时间、是否已经接种标记等信息。
99.具体地,合约平台400根据登记请求生成登记信息,并在共识(出矿)时,将数据接入区块链网络10,起到防止篡改的作用,同时,由于登记请求都需要调用智能合约执行状态变更,因此,每次调用均需要花费一定数量的汽油费,即手续费,可在一定程度上阻止非法用户重复注册,导致资源浪费。
100.s303.向接种者返回交易地址和合约地址。
101.其中,合约地址是执行本次登记请求业务逻辑的合约平台400在区块链网络上的哈希地址值,便于后续验证登记信息时快速定位。交易地址是本次登记请求对应的交易上链之后的哈希地址值。
102.具体地,可通过交易地址获取交易,交易中通常至少包括发起人地址、目标合约地址及参数等信息,可以用交易中的信息配合合约地址对接种者身份进行辅助验证。
103.s304.物联网设备发送温度更新请求。
104.具体地,物联网设备可以是物联网控温装置,如物联网的冰箱等,物联网设备在疫苗运输及存储的过程中都由物联网设备监测其温度,并上传至不可篡改的区块链网络10中,便于后期根据运输及存储规则验证疫苗的可用性。
105.s305.合约平台400执行温度更新业务并上链。
106.其中,执行温度更新业务用于更新疫苗在区块链网络10上记录的温度信息,温度信息可以是运输过程中一个区段时间内温度的最高值及最低值。
107.s306.医护发送核验请求。
108.具体地,当接种者接种疫苗时,需要验证接种者的身份是否在合约平台400中登记,同时也需要验证疫苗的运输及存储条件是否合规。医护人员可以首先获取接种者的身份标识和待接种疫苗的疫苗标识,接着作为医护的第三客户端300可以向合约平台400发起核验请求,核验请求可以包括接种者出示提供的身份标识和疫苗的疫苗标识。
109.其中,第三客户端300可以是智能手机、平板电脑、笔记本电脑、桌上型电脑等。
110.s307.合约平台400生成核验结果并执行登记更新业务。
111.具体地,合约平台400根据身份标识及疫苗标识遍历存储域,检索与身份标识对应的登记信息,检索与疫苗标识对应的温度信息及疫苗保存规则,并根据检索结果生成核验
结果,即核验结果可以包括登记信息、温度信息及疫苗保存规则。
112.当检索到的登记信息为空时,说明接种者还未进行疫苗接种登记,不具备接种资格。当疫苗标识对应的温度信息不符合疫苗保存规则时,说明疫苗在运输或存储时不合规范,可以设置疫苗相关状态为不可使用。当检索到与身份标识相匹配的登记信息,同时疫苗标识对应的温度信息符合疫苗保存规则时,确认核验成功。
113.当核验成功时,合约平台400更新核验请求中身份标识相对应的登记信息,具体可以是更改接种标记或更改接种次数等操作。
114.进一步地,执行核验之前,作为医护的第三客户端300的公钥地址预先设置于合约平台400存储域内,合约平台400接收到核验请求时,首先确认发起端的公钥地址是否包含在存储域内,当包含时,才能继续执行。上述过程主要实现了核验请求的权限控制,防止除医护之外的客户端篡改数据。
115.s308.向医护返回核验结果。
116.具体地,医护查收核验结果,当核验成功时,说明接种者已经登记,且疫苗的运输存储过程符合规范,即可对接种者施打疫苗。
117.采用本技术所提供的疫苗分配管理系统,可以实现应用程序的去中心化,减少人为因素的参与,使得作为接种者的第一客户端100、作为物联网设备的第二客户端200、作为医护的第三客户端300及合约平台400之间达成高度互信,避免出现信息泄露和冒名顶替现象,同时还对疫苗运输存储环境起到了监测作用,有利于疫苗的快速普及,此外,疫苗生产商也可以根据登记信息进行疫苗生产规划。
118.可以理解的是,作为接种者的第一客户端100在向合约平台400发起疫苗接种登记请求时,登记请求中需要提供接种者的身份标识,过程中提供明文的身份证号、驾驶证号等唯一标识编号作为身份标识的话匿名性较差,而一般都加密算法进行解密验证时过程较为复杂,会浪费合约平台400资源。
119.当然,可以具体设计一种几乎不可逆且易于验证的身份标识加密算法,详见如下:
120.请一并参见图4,图4是本技术一实施例提供的加密过程演示示意图。
121.所述第一客户端100,用于向所述合约平台400发送所述登记请求之前,还用于:获取唯一标识编号id,获取密文sk,根据以下公式生成所述身份标识:
122.身份标识=hash(hash(id)+hash(sk));
123.具体地,上述公式通过哈希函数分别对唯一标识编号id和密文sk取哈希值,再将两个哈希值合并之后的值通过哈希函数取哈希值即得到身份标识。
124.其中,唯一标识编号可以是身份证号、驾驶证号等起唯一标识作用的编号,密文通常由字符串组成,密文的作用相当于密码,由接种者自定义设置,唯一标识编号及密文可以由接种者输入至第一客户端100。
125.基于哈希函数的不可逆性,几乎无法通过哈希值反推出输入值,从而保证了安全性。通过上述加密算法加密后,接种者的身份信息通过哈希值的形式记录于合约平台400,提高了匿名性。同时,需要验证接种者身份时,接种者只需要提供唯一标识编号,如身份证号及密文的哈希即可快速验证身份,安全高效。
126.可以理解的是,作为医护的第三客户端300在为接种者接种疫苗时,需要验证接种者的身份,具体可以是身份证号、驾驶证号等,过程中如果直接使用明文上传至区块链网络
10进行验证,可能会导致接种者身份信息泄露。
127.当然,可以具体设计一种更安全的验证方法,详见如下:
128.所述第三客户端300,用于向所述合约平台400发送所述核验请求之前,还用于:获取所述唯一标识编号及所述密文的哈希,执行哈希运算获得所述唯一标识编号的哈希,并与所述密文的哈希拼接后,再次执行哈希运算获得所述身份标识。
129.其中,唯一标识编号及密文的哈希可以是由接种者提供的。
130.上述过程中,接种者只需提供唯一标识编号如身份信息,及密文的哈希给医护即可进行身份验证,能够避免身份信息上传至网络中,降低泄露的风险。
131.可以理解的是,在接种疫苗时,接种者可能需要接种不同种类疫苗,不同种类疫苗可能分别通过不同的合约平台400进行验证管理,即合约平台400的地址可以是多个。
132.此外,由于区块链的不可篡改性,当作为唯一标识编号的身份证号及自定义的密文意外暴露时,接种者同样无法通过修改密文的方式来更新区块链网络中登记信息的身份标识,导致冒名顶替者很容易通过核验。
133.需要说明的是,为了更有效的避免冒名顶替者,合约平台400可以在核验时,对交易地址和合约地址进行验证,详见如下:
134.所述核验,具体包括:获取所述核验请求中的所述身份标识、所述交易地址和所述合约地址;
135.根据所述交易地址获取交易,确定所述交易中的目标合约地址是否与所述合约地址匹配;当匹配时,再根据所述身份标识及所述疫苗标识遍历所述存储域,检索与所述身份标识对应的所述登记信息,并根据检索结果生成核验结果,当检索到与所述身份标识相匹配的所述登记信息时,确认所述核验成功。
136.其中,核验结果可以包括登记信息。
137.具体地,当检索到的登记信息为空时,说明接种者还未进行疫苗接种登记,不具备接种资格。当检索到与身份标识相匹配的登记信息时,确认核验成功。
138.当核验成功时,合约平台400更新核验请求中身份标识相对应的登记信息,具体可以是更改接种标记或更改接种次数等操作。
139.其中,合约地址是执行本次登记请求业务逻辑的合约平台400在区块链网络10上的哈希地址值,便于后续验证登记信息时快速定位。交易地址是登记请求对应的交易上链之后的哈希地址值。
140.通过在登记请求后返回交易地址及合约地址,能够在后续核验时先验证交易是否存在,再验证交易中的信息是否与合约地址相匹来辅助验证接种者身份,进而避免在接种者暴露身份证号与密文时因不能修改区块链网络中登记信息的身份标识而出现冒名顶替者。此外,当存在多个疫苗接种合约平台400时返回合约地址能够使疫苗接种系统更加具有通用性。
141.可以理解的是,作为医护的第三客户端300在为接种者接种疫苗时,不仅仅需要验证接种者的身份,还需要验证疫苗的运输及存储过程是否合规。
142.所述核验,还可以包括:获取所述核验请求中的所述身份标识、所述疫苗标识、所述交易地址和所述合约地址;
143.根据所述交易地址获取交易,确定所述交易中的目标合约地址是否与所述合约地
址匹配;当匹配时,再根据所述身份标识及所述疫苗标识遍历所述存储域,检索与所述身份标识对应的所述登记信息,检索与所述疫苗标识对应的温度信息及疫苗保存规则,并根据检索结果生成核验结果,当检索到与所述身份标识相匹配的所述登记信息,同时所述疫苗标识对应的所述温度信息符合所述疫苗保存规则时,确认所述核验成功。
144.其中,核验结果可以包括登记信息、温度信息及疫苗保存规则。
145.具体地,当检索到的登记信息为空时,说明接种者还未进行疫苗接种登记,不具备接种资格。当疫苗标识对应的温度信息不符合疫苗保存规则时,说明疫苗在运输或存储时不合规范,可以设置疫苗相关状态为不可使用。当检索到与身份标识相匹配的登记信息,同时疫苗标识对应的温度信息符合疫苗保存规则时,确认核验成功。
146.当核验成功时,合约平台400更新核验请求中身份标识相对应的登记信息,具体可以是更改接种标记或更改接种次数等操作。
147.通过核验检查登记信息及疫苗温度信息可以防止接种者被冒名顶替,也可以避免运送存储环境控制不到位的问题疫苗被使用
148.可以理解的是,当物联网设备较多时,第二客户端200与合约平台400之间会频发的发生温度更新请求,进而导致合约平台400运算负荷增大,同时,会产生大量的不必要的汽油费。
149.所述第二客户端200,发送所述温度更新请求之前,还用于:生成所述温度信息,其中,所述温度信息包括一定时间区段内温度的最高值及最低值。
150.具体地,作为物联网设备的第二客户端200在发送温度更新请求之前,还用于先采集一定时间段内疫苗的温度信息,再筛选出最重要的数据,即该时间段内疫苗的最高温及最低温,最后再发起温度更新请求。
151.更进一步地,可以选用中继服务器作为第二客户端200,数量众多的物联网设备可以先将温度信息上传至中继服务器,中继服务器对温度信息进行汇总、筛选及整理操作后,再向合约平台400发起温度更新请求。这种方式能更进一步地缓解合约平台400的运行压力,同时产生更少的汽油费。
152.通过在区段时间内筛选关键信息上传的方式,能够有效减少通信次数,降低负荷,减少汽油费。
153.二维码是二维条形码,常见的二维码为qr码,qr码可以存储大量相关联物品的信息,是一个近几年来移动设备上超流行的一种编码方式,它能方便的通过移动设备将物理资产链接到网络系统中。
154.可以理解的是,由于区块链系统通常使用十六进制数据进行编码,作为接种者的第一客户端100在发送登记请求后,会产生难以记忆的长串数据,容易遗忘或遗失,不易找回,也不便于验证时进行输入。
155.请一并参见图5,图5是本技术一实施例提供的一种二维码数据结构示意图。
156.所述第一客户端100,还用于:获取合约平台400发送的所述交易地址及合约地址并生成二维码,其中,所述二维码包括所述唯一标识编号、所述密文的哈希、所述交易地址及所述合约地址。
157.通过将唯一标识编号、密文的哈希、交易地址及合约地址转化生成二维码不仅能一定程度上保护用户信息的安全,也能便于验证时更加快速高效的进行输入。
158.请参见图6,图6是本技术一个实施例提供的一种疫苗分配管理方法的流程图。
159.s601.获取第一客户端100发送的登记请求。
160.当所述登记验证成功时,生成登记信息,向所述第一客户端100返回交易地址及合约地址,并将所述登记信息存入存储域并上链。
161.s602.对第一客户端100发送的登记请求执行登记验证。
162.具体地,当对所述身份标识验证成功时,生成登记信息,并将所述身份标识与所述登记信息关联存入存储域并上链。
163.s603.获取第二客户端200发送的温度更新请求。
164.其中,温度更新请求包括温度信息。
165.s604.对第二客户端200发送的温度更新请求执行权限验证。
166.具体地,当所述权限验证成功时,根据所述第三客户端300发送的所述温度更新请求执行温度更新业务并上链。
167.s605.获取第三客户端300发送的核验请求。
168.其中,所述核验请求包括所述身份标识、疫苗标识、交易地址及合约地址。
169.s606.对第三客户端300发送的核验请求执行核验并返回核验结果。
170.具体地,将所述核验结果返回给所述第三客户端300,当所述核验成功时,还执行登记更新业务并上链。
171.上述方法即为由合约平台400执行的疫苗分配管理方法,通过将登记信息注册到区块链智能合约中,能够实现登记信息的不可篡改,进而避免人为因素导致接种者的隐私泄露和冒名顶替问题,此外,通过在核验时验证疫苗的温度信息,防止不合规疫苗被使用。
172.请参见图7,图7是本技术一个实施例提供的一种疫苗分配管理合约平台的结构示意图。
173.该疫苗分配管理合约平台1可以应用于合约平台400,该疫苗分配管理合约平台1可以用于执行上述图6对应的实施例中描述的各个步骤,该疫苗分配管理合约平台1可以包括:第一获取模块11、登记模块12、第二获取模块13、更新模块14、第三获取模块15、核验模块16:
174.第一获取模块11,用于获取第一客户端100发送的登记请求;
175.登记模块12,用于对所述第一客户端100发送的所述登记请求执行登记验证;当所述登记验证成功时,生成登记信息,向所述第一客户端100返回交易地址及合约地址,并将所述登记信息存入存储域并上链;
176.第二获取模块13,用于获取第二客户端200发送的温度更新请求;
177.更新模块14,用于对所述第二客户端200发送的所述温度更新请求执行权限验证;当所述权限验证成功时,根据所述第二客户端200发送的所述温度更新请求执行温度更新业务并上链;
178.第三获取模块15,用于获取所述第三客户端300发送的核验请求;
179.核验模块16,用于对所述第三客户端300发送的所述核验请求执行核验,生成核验结果,并将所述核验结果返回给所述第三客户端300,当所述核验成功时,还执行登记更新业务并上链。
180.其中,第一获取模块11、登记模块12、第二获取模块13、更新模块14、第三获取模块
15、核验模块16的具体功能实现方式请参阅图6对应的实施例中的步骤s601-步骤s606,这里不再进行赘述。
181.请参见图8,图8是本技术一个实施例提供的一种计算机设备的结构示意图。
182.图8所示,计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(display)、键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图8所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
183.在图8所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现前文图6中任一个所对应实施例中对基于智能合约的疫苗分配管理方法的描述。应当理解,本技术中所描述的计算机设备1000,也可执行前文其余实施例中对疫苗分配管理平台1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
184.此外,这里需要指出的是:本技术还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的疫苗分配管理平台1所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图6中任一个所对应实施例中对基于智能合约的疫苗分配管理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本技术所涉及的计算机存储介质实施例中未披露的技术细节,请参照本技术方法实施例的描述。
185.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
186.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备
187.所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
188.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
189.在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
190.应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
191.以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1