人群标记方法、系统和计算机可读存储介质与流程

文档序号:21880563发布日期:2020-08-18 16:38阅读:128来源:国知局
人群标记方法、系统和计算机可读存储介质与流程

本发明涉及数据处理技术领域,具体而言,涉及一种人群标记方法、系统和计算机可读存储介质。



背景技术:

部分传染病会在人与人之间进行传播,在传播的过程中,可能存在潜伏期,通常情况下,根据人群感染和接触情况,可以将人群分为已感染人群a、未感染人群b和接触人群c。

其中,对于已感染人群a需要将其与其他人群隔离开来,保证不再传染其他人群,具体地,可以根据传染病的发病症状和对应的检测手段将已感染人群a从人群中区分出来。其中,未感染人群b可以正常工作和生活,不会进行隔离,但是已感染人群a在工作、生活、旅行的过程中可能会与未感染人群b进行接触,行程接触人群c,而接触人群c存在被已感染人群a感染,进而转化成已感染人群a的风险,因此,需要将接触人群c从人群中筛选出来进行隔离观察。

现有技术方案中,接触人群c的筛选通常是通过信息填报的方式识别出来,如利用连续定位的方法,记录人群移动的轨迹,通过轨迹交叉来判断人群接触的情况,但是位置信息属于个人隐私信息,在记录和处理的过程中,存在泄漏的情况,无法保证信息的安全性和隐私性。



技术实现要素:

本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。

为此,本发明的第一个方面在于,提供了一种人群标记方法。

本发明的第二个方面在于,提供了一种人群标记系统。

本发明的第三个方面在于,提供了一种计算机可读存储介质。

有鉴于此,根据本发明的第一个方面,本发明提供了一种人群标记方法,包括:响应第一用户被标记的指令信息,查找在第一用户被标记时刻之前预设时长内的第一零知识证明记录;查找第二用户在第一用户被标记时刻之前预设时长内的第二零知识证明记录;确定第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息存在重叠轨迹,将第二用户标记为目标人群;其中,第一零知识证明记录和第二零知识证明记录记载在预先构建的默克尔树的叶子节点中。

在本发明的技术方案中,在接收到第一用户被标记的指令信息后,其中,第一用户被标记的指令信息可以是第一用户被标记是发出的控制指令,如第一用户因患病被禁止外出,也可以是第一用户被标记时所带来的影响,如,第一用户的家庭集体进行隔离,由于零知识证明是涉及双方或更多方的协议,在该协议使用过程中,证明者无需向不同验证者提供任何有用的信息的情况下,使得验证者相信某个论断是正确的,具体地,应用到本申请的技术方案中,响应第一用户被标记的指令信息,查找在第一用户被标记时刻之前预设时长内的第一零知识证明记录以及查找第二用户在第一用户被标记时刻之前预设时长内的第二零知识证明记录,通过比较第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息是否存在重叠轨迹来判断第一用户和第二用户是否存在接触,进而将第二人群从人群中筛选出来,作为目标人群,进一步地,第一零知识证明记录和第二零知识证明记录记载在预先构建的默克尔树的叶子节点中,默克尔树是存储hash值的一棵树,即第一零知识证明记录和第二零知识证明记录是通过哈希函数计算的摘要,因此,隐藏了第一用户和第二用户的信息,确保了第一用户和第二用户所对应信息的安全性。

另外,本发明提供的上述技术方案中的人群标记方法还可以具有如下附加技术特征:

在上述技术方案中,在响应第一用户被标记的指令信息的步骤之前,还包括:为第一用户对应的第一终端分配第一账户信息和为第二用户所对应的第二终端分配第二账户信息;接收第一终端按照预先设定的获取周期获取第一经纬度信息和第一时间信息,并根据第一账户信息、第一经纬度信息和第一时间信息生成第一零知识证明记录、以及接收第二终端按照预先设定的获取周期获取第二经纬度信息和第二时间信息,并根据第二账户信息、第二经纬度信息和第二时间信息生成第二零知识证明记录。

在该技术方案中,通过为第一用户对应的第一终端分配第一账户信息和为第二用户所对应的第二终端分配第二账户信息,以便第一终端按照预先设定的获取周期获取第一经纬度信息和第一时间信息,进而得到第一账户信息对应的第一零知识证明记录,由于第一经纬度信息和第一时间信息是第一终端按照预先设定的获取周期获取,因此,第一零知识证明记录能够表征第一用户的运动轨迹,同理,得到第二用户的运动轨迹,因此,根据第一零知识证明记录和第二零知识证明记录筛选得到的目标人群更加准确,此外,采用第一零知识证明记录和第二零知识证明记录来筛选得到的目标人群的过程中不会出现第一账户信息和第二账户信息的泄漏,确保了用户的隐私安全。

在上述任一技术方案中,还包括:按照预先设定的规格将地图划分成至少一个区域,并对任一区域绑定唯一编号;根据第一账户信息、第一经纬度信息和第一时间信息生成第一零知识证明记录的步骤,具体包括:将第一经纬度信息与区域的经纬度信息进行比对,确定第一经纬度信息所对应的第一目标区域;根据第一账户信息、第一时间信息和第一目标区域对应的唯一编号生成第一零知识证明记录;根据第二账户信息、第二经纬度信息和第二时间信息生成第二零知识证明记录的步骤,具体包括:将第二经纬度信息与区域的经纬度信息进行比对,确定第二经纬度信息所对应的第二目标区域;根据第二账户信息、第二时间信息和第二目标区域对应的唯一编号生成第二零知识证明记录。

在该技术方案中,采用区域划分的结果来生成第一零知识证明记录和第二零知识证明记录,实现对第二用户更加有效的筛选,具体地,第一零知识证明记录是根据第一账户信息、第一时间信息和第一目标区域对应的唯一编号所生成的,同理,第二零知识证明记录是根据第二账户信息、第二时间信息和第二目标区域对应的唯一编号生成,只要第一用户和第二用户在第一用户被标记时刻之前预设时长内出现在相同的区域内,虽然没有直接进行接触,也可以将第二用户筛选出现,确保了筛选的可信度。

在上述任一技术方案中,确定第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息存在重叠轨迹,将第二用户标记为目标人群的步骤,具体包括:确定第一目标区域对应的唯一编号和第二目标区域对应的唯一编号存在重复,将第二用户标记为目标人群。

在该技术方案中,在确定目标人群的过程中,只需将不同用户途径的区域的唯一编号进行比较即可将目标人群筛选出来,计算过程简单,通过出现错误的几率较低。

在上述任一技术方案中,在响应第一用户被标记的指令信息,查找在第一用户被标记的时刻之前预设时长内的第一零知识证明记录的步骤之后,查找第二用户在第一用户被标记的时刻之前预设时长内的第二零知识证明记录的步骤之前,还包括:获取叶子节点的兄弟节点和默克尔树的理论根节点;根据第二零知识证明记录和兄弟节点得到实际根节点;检测到理论根节点和实际根节点一致,确定第二零知识证明记录记载在默克尔树中。

在该技术方案中,在验证第二零知识证明记录是否记载在默克尔树的过程中,可以根据叶子节点的兄弟节点和默克尔树的理论根节点来进行判断,而在此过程中,无需输入第二用户的个人信息,进而降低了个人信息出现泄漏的几率。

在上述任一技术方案中,采用zokrates生成第一零知识证明记录和第二零知识证明记录。

在该技术方案中,zokrates是一种链下计算/链上验证的处理框架,具体地,使用zk-snarks算法实现零知识证明,技术手段成熟,便于实现。

在上述任一技术方案中,预设时长与传染病的潜伏期呈正相关。

在该技术方案中,预设时长与传染病的潜伏期呈正相关,因此,可以目标人群的筛选过程可以根据传染病的潜伏期进行调整,提高了筛选后的目标人群的可信度。

在上述任一技术方案中,第一零知识证明记录存储在第一账户信息所对应的区块链地址中;和/或第二零知识证明记录存储在第二账户信息所对应的区块链地址中。

在该技术方案中,由于区块链地址的防篡改特点,通过将第一零知识证明记录存储在第一账户信息所对应的区块链地址中;和/或第二零知识证明记录存储在第二账户信息所对应的区块链地址中,在证明第一零知识证明记录和第二零知识证明记录存在的同时,还可以确保不能被抵赖,便于确保数据的真实性。

根据本发明的第二个方面,本发明提供了一种人群标记系统,包括:存储器,存储器存储有计算机程序;控制器,控制器执行计算机程序实现如上述任一项的人群标记方法的步骤。

在本发明的技术方案中,提出了一种人群标记系统,其与第一方面任一实施例提供的人群标记方法一一对应,因此,本发明的实施例提供的人群标记系统具有第一方面任一实施例提供的人群标记方法的全部有益效果,在此不一一列举。

根据本发明的第三个方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被执行时,实现如上述任一项的人群标记方法的步骤。

在本发明的技术方案中,提出了一种计算机可读存储介质,包括如第一方面任一实施例提供的人群标记方法的步骤,因此,本发明的实施例提供的计算机可读存储介质具有第一方面任一实施例提供的人群标记方法的全部有益效果,在此不一一列举。

本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1示出了根据本发明一个实施例的人群标记方法的流程示意图;

图2示出了根据本发明一个实施例的人群标记方法的流程示意图;

图3示出了根据本发明一个实施例的验证第二零知识证明记录记载在默克尔树中的流程示意图;

图4示出了根据本发明一个实施例的人群标记系统的示意框图。

具体实施方式

为了能够更清楚地理解本发明的上述方面、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

实施例一

根据本发明的一个实施例中,如图1所示,提出了一种人群标记方法,包括:

步骤102,响应第一用户被标记的指令信息,查找在第一用户被标记时刻之前预设时长内的第一零知识证明记录;

步骤104,查找第二用户在第一用户被标记时刻之前预设时长内的第二零知识证明记录;

步骤106,确定第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息存在重叠轨迹,将第二用户标记为目标人群。

其中,第一零知识证明记录和第二零知识证明记录记载在预先构建的默克尔树的叶子节点中。

在本发明的实施例中,在接收到第一用户被标记的指令信息后,其中,第一用户被标记的指令信息可以是第一用户被标记是发出的控制指令,如第一用户因患病被禁止外出,也可以是第一用户被标记时所带来的影响,如,第一用户的家庭集体进行隔离,由于零知识证明是涉及双方或更多方的协议,在该协议使用过程中,证明者无需向不同验证者提供任何有用的信息的情况下,使得验证者相信某个论断是正确的,具体地,应用到本申请的实施例中,响应第一用户被标记的指令信息,查找在第一用户被标记时刻之前预设时长内的第一零知识证明记录以及查找第二用户在第一用户被标记时刻之前预设时长内的第二零知识证明记录,通过比较第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息是否存在重叠轨迹来判断第一用户和第二用户是否存在接触,进而将第二人群从人群中筛选出来,作为目标人群,进一步地,第一零知识证明记录和第二零知识证明记录记载在预先构建的默克尔树的叶子节点中,默克尔树是存储hash值的一棵树,即第一零知识证明记录和第二零知识证明记录是通过哈希函数计算的摘要,因此,隐藏了第一用户和第二用户的信息,确保了第一用户和第二用户所对应信息的安全性。

在其中一个实施例中,采用zokrates生成第一零知识证明记录和第二零知识证明记录。

在该实施例中,zokrates是一种链下计算/链上验证的处理框架,具体地,使用zk-snarks算法实现零知识证明,技术手段成熟,便于实现。

在其中一个实施例中,预设时长与传染病的潜伏期呈正相关。

在该实施例中,预设时长与传染病的潜伏期呈正相关,因此,可以目标人群的筛选过程可以根据传染病的潜伏期进行调整,提高了筛选后的目标人群的可信度。

实施例二

在本发明的一个实施例中,如图2所示,人群标记方法,包括:

步骤202,为第一用户对应的第一终端分配第一账户信息和为第二用户所对应的第二终端分配第二账户信息;

步骤204,接收第一终端按照预先设定的获取周期获取第一经纬度信息和第一时间信息,并根据第一账户信息、第一经纬度信息和第一时间信息生成第一零知识证明记录、以及接收第二终端按照预先设定的获取周期获取第二经纬度信息和第二时间信息,并根据第二账户信息、第二经纬度信息和第二时间信息生成第二零知识证明记录;

步骤206,响应第一用户被标记的指令信息,查找在第一用户被标记时刻之前预设时长内的第一零知识证明记录;

步骤208,查找第二用户在第一用户被标记时刻之前预设时长内的第二零知识证明记录;

步骤210,确定第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息存在重叠轨迹,将第二用户标记为目标人群。

其中,第一零知识证明记录和第二零知识证明记录记载在预先构建的默克尔树的叶子节点中。

在该实施例中,通过为第一用户对应的第一终端分配第一账户信息和为第二用户所对应的第二终端分配第二账户信息,以便第一终端按照预先设定的获取周期获取第一经纬度信息和第一时间信息,进而得到第一账户信息对应的第一零知识证明记录,由于第一经纬度信息和第一时间信息是第一终端按照预先设定的获取周期获取,因此,第一零知识证明记录能够表征第一用户的运动轨迹,同理,得到第二用户的运动轨迹,因此,根据第一零知识证明记录和第二零知识证明记录筛选得到的目标人群更加准确,此外,采用第一零知识证明记录和第二零知识证明记录来筛选得到的目标人群的过程中不会出现第一账户信息和第二账户信息的泄漏,确保了用户的隐私安全。

在其中一个实施例中,第一零知识证明记录存储在第一账户信息所对应的区块链地址中;和/或第二零知识证明记录存储在第二账户信息所对应的区块链地址中。

在该实施例中,由于区块链地址的防篡改特点,通过将第一零知识证明记录存储在第一账户信息所对应的区块链地址中;和/或第二零知识证明记录存储在第二账户信息所对应的区块链地址中,在证明第一零知识证明记录和第二零知识证明记录存在的同时,还可以确保不能被抵赖,便于确保数据的真实性。

实施例三

在实施例一和实施例二中任一实施例中,还包括:按照预先设定的规格将地图划分成至少一个区域,并对任一区域绑定唯一编号;根据第一账户信息、第一经纬度信息和第一时间信息生成第一零知识证明记录的步骤,具体包括:将第一经纬度信息与区域的经纬度信息进行比对,确定第一经纬度信息所对应的第一目标区域;根据第一账户信息、第一时间信息和第一目标区域对应的唯一编号生成第一零知识证明记录;根据第二账户信息、第二经纬度信息和第二时间信息生成第二零知识证明记录的步骤,具体包括:将第二经纬度信息与区域的经纬度信息进行比对,确定第二经纬度信息所对应的第二目标区域;根据第二账户信息、第二时间信息和第二目标区域对应的唯一编号生成第二零知识证明记录。

在该实施例中,采用区域划分的结果来生成第一零知识证明记录和第二零知识证明记录,实现对第二用户更加有效的筛选,具体地,第一零知识证明记录是根据第一账户信息、第一时间信息和第一目标区域对应的唯一编号所生成的,同理,第二零知识证明记录是根据第二账户信息、第二时间信息和第二目标区域对应的唯一编号生成,只要第一用户和第二用户在第一用户被标记时刻之前预设时长内出现在相同的区域内,虽然没有直接进行接触,也可以将第二用户筛选出现,确保了筛选的可信度。

在其中一个实施例中,确定第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息存在重叠轨迹,将第二用户标记为目标人群的步骤,具体包括:确定第一目标区域对应的唯一编号和第二目标区域对应的唯一编号存在重复,将第二用户标记为目标人群。

在该实施例中,在确定目标人群的过程中,只需将不同用户途径的区域的唯一编号进行比较即可将目标人群筛选出来,计算过程简单,通过出现错误的几率较低。

实施例四

在上述任一实施例中,如图3所示,在响应第一用户被标记的指令信息,查找在第一用户被标记的时刻之前预设时长内的第一零知识证明记录的步骤之后,查找第二用户在第一用户被标记的时刻之前预设时长内的第二零知识证明记录的步骤之前,还包括:

步骤302,获取叶子节点的兄弟节点和默克尔树的理论根节点;

步骤304,根据第二零知识证明记录和兄弟节点得到实际根节点;

步骤306,检测到理论根节点和实际根节点一致,确定第二零知识证明记录记载在默克尔树中。

在该实施例中,在验证第二零知识证明记录是否记载在默克尔树的过程中,可以根据叶子节点的兄弟节点和默克尔树的理论根节点来进行判断,而在此过程中,无需输入第二用户的个人信息,进而降低了个人信息出现泄漏的几率。

实施例五

在本发明的一个实施例中,如图4所示,提出了一种人群标记系统,包括:存储器,存储器存储有计算机程序;控制器,控制器执行计算机程序实现如响应第一用户被标记的指令信息,查找在第一用户被标记时刻之前预设时长内的第一零知识证明记录;查找第二用户在第一用户被标记时刻之前预设时长内的第二零知识证明记录;确定第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息存在重叠轨迹,将第二用户标记为目标人群的步骤;其中,第一零知识证明记录和第二零知识证明记录记载在预先构建的默克尔树的叶子节点中。

在本发明的实施例中,在接收到第一用户被标记的指令信息后,其中,第一用户被标记的指令信息可以是第一用户被标记是发出的控制指令,如第一用户因患病被禁止外出,也可以是第一用户被标记时所带来的影响,如,第一用户的家庭集体进行隔离,由于零知识证明是涉及双方或更多方的协议,在该协议使用过程中,证明者无需向不同验证者提供任何有用的信息的情况下,使得验证者相信某个论断是正确的,具体地,应用到本申请的实施例中,响应第一用户被标记的指令信息,查找在第一用户被标记时刻之前预设时长内的第一零知识证明记录以及查找第二用户在第一用户被标记时刻之前预设时长内的第二零知识证明记录,通过比较第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息是否存在重叠轨迹来判断第一用户和第二用户是否存在接触,进而将第二人群从人群中筛选出来,作为目标人群,进一步地,第一零知识证明记录和第二零知识证明记录记载在预先构建的默克尔树的叶子节点中,默克尔树是存储hash值的一棵树,即第一零知识证明记录和第二零知识证明记录是通过哈希函数计算的摘要,因此,隐藏了第一用户和第二用户的信息,确保了第一用户和第二用户所对应信息的安全性。

在其中一个实施例中,采用zokrates生成第一零知识证明记录和第二零知识证明记录。

在该实施例中,zokrates是一种链下计算/链上验证的处理框架,具体地,使用zk-snarks算法实现零知识证明,技术手段成熟,便于实现。

在其中一个实施例中,预设时长与传染病的潜伏期呈正相关。

在该实施例中,预设时长与传染病的潜伏期呈正相关,因此,可以目标人群的筛选过程可以根据传染病的潜伏期进行调整,提高了筛选后的目标人群的可信度。

实施例六

在上述任一实施例中,如图4所示,控制器执行计算机程序实现如:在响应第一用户被标记的指令信息的步骤之前,还包括:为第一用户对应的第一终端分配第一账户信息和为第二用户所对应的第二终端分配第二账户信息;接收第一终端按照预先设定的获取周期获取第一经纬度信息和第一时间信息,并根据第一账户信息、第一经纬度信息和第一时间信息生成第一零知识证明记录、以及接收第二终端按照预先设定的获取周期获取第二经纬度信息和第二时间信息,并根据第二账户信息、第二经纬度信息和第二时间信息生成第二零知识证明记录的步骤。

在该实施例中,通过为第一用户对应的第一终端分配第一账户信息和为第二用户所对应的第二终端分配第二账户信息,以便第一终端按照预先设定的获取周期获取第一经纬度信息和第一时间信息,进而得到第一账户信息对应的第一零知识证明记录,由于第一经纬度信息和第一时间信息是第一终端按照预先设定的获取周期获取,因此,第一零知识证明记录能够表征第一用户的运动轨迹,同理,得到第二用户的运动轨迹,因此,根据第一零知识证明记录和第二零知识证明记录筛选得到的目标人群更加准确,此外,采用第一零知识证明记录和第二零知识证明记录来筛选得到的目标人群的过程中不会出现第一账户信息和第二账户信息的泄漏,确保了用户的隐私安全。

在其中一个实施例中,第一零知识证明记录存储在第一账户信息所对应的区块链地址中;和/或第二零知识证明记录存储在第二账户信息所对应的区块链地址中。

在该实施例中,由于区块链地址的防篡改特点,通过将第一零知识证明记录存储在第一账户信息所对应的区块链地址中;和/或第二零知识证明记录存储在第二账户信息所对应的区块链地址中,在证明第一零知识证明记录和第二零知识证明记录存在的同时,还可以确保不能被抵赖,便于确保数据的真实性。

实施例七

在实施例五和实施例六中任一实施例中,如图4所示,控制器执行计算机程序还用于实现:按照预先设定的规格将地图划分成至少一个区域,并对任一区域绑定唯一编号;根据第一账户信息、第一经纬度信息和第一时间信息生成第一零知识证明记录的步骤,具体包括:将第一经纬度信息与区域的经纬度信息进行比对,确定第一经纬度信息所对应的第一目标区域;根据第一账户信息、第一时间信息和第一目标区域对应的唯一编号生成第一零知识证明记录;根据第二账户信息、第二经纬度信息和第二时间信息生成第二零知识证明记录的步骤,具体包括:将第二经纬度信息与区域的经纬度信息进行比对,确定第二经纬度信息所对应的第二目标区域;根据第二账户信息、第二时间信息和第二目标区域对应的唯一编号生成第二零知识证明记录。

在该实施例中,采用区域划分的结果来生成第一零知识证明记录和第二零知识证明记录,实现对第二用户更加有效的筛选,具体地,第一零知识证明记录是根据第一账户信息、第一时间信息和第一目标区域对应的唯一编号所生成的,同理,第二零知识证明记录是根据第二账户信息、第二时间信息和第二目标区域对应的唯一编号生成,只要第一用户和第二用户在第一用户被标记时刻之前预设时长内出现在相同的区域内,虽然没有直接进行接触,也可以将第二用户筛选出现,确保了筛选的可信度。

在其中一个实施例中,确定第一零知识证明记录所指示的历史轨迹信息和第二零知识证明记录所指示的历史轨迹信息存在重叠轨迹,将第二用户标记为目标人群的步骤,具体包括:确定第一目标区域对应的唯一编号和第二目标区域对应的唯一编号存在重复,将第二用户标记为目标人群。

在该实施例中,在确定目标人群的过程中,只需将不同用户途径的区域的唯一编号进行比较即可将目标人群筛选出来,计算过程简单,通过出现错误的几率较低。

实施例八

在上述任一实施例中,如图4所示,控制器执行计算机程序还用于实现:在响应第一用户被标记的指令信息,查找在第一用户被标记的时刻之前预设时长内的第一零知识证明记录的步骤之后,查找第二用户在第一用户被标记的时刻之前预设时长内的第二零知识证明记录的步骤之前,还包括:获取叶子节点的兄弟节点和默克尔树的理论根节点;根据第二零知识证明记录和兄弟节点得到实际根节点;检测到理论根节点和实际根节点一致,确定第二零知识证明记录记载在默克尔树中。

在该实施例中,在验证第二零知识证明记录是否记载在默克尔树的过程中,可以根据叶子节点的兄弟节点和默克尔树的理论根节点来进行判断,而在此过程中,无需输入第二用户的个人信息,进而降低了个人信息出现泄漏的几率。

实施例九

在本发明的一个实施例中,在移动设备终端,区块链系统和智能合约组成的系统应用人群标记方法时,具体地,交互流程为:

每个用户a,b,c分配一个账号na,nb,nc,分配一对公-私钥对和对应的区块链地址pkr,skr,addra,pkr=sha256(skr),其中sha256是哈希函数,在用户a,b,c对应的移动设备终端部署移动设备app应用,通过账号登录移动设备app应用,并与移动设备终端进行绑定,移动设备app应用定时(即本申请中涉及到的获取周期,如1分钟)获取移动设备gps定位信息,包括经纬度和时间(即本申请中涉及到的第一经纬度信息、第一时间信息、第二经纬度信息和第二时间信息),并将获取的定位信息记录到此账号中。

将地图栅格化,例如按照10米×10米的规格将地图划分为一个个栅格(即本申请中涉及到的区域),给每个栅格一个唯一编号α(即本申请中涉及到的区域对应的唯一编号)。

具体地,以用户a为例,移动设备app应用在t时刻(即本申请中涉及到的第一用户被标记时刻)获取用户a精确位置后,根据位置和地图栅格四个顶点的位置进行判断,如果位置在栅格内部,记录下位置所在的栅格的唯一编号α。

利用zokrates生成一条帐号a在t时刻和地图栅格α的关联关系的零知识证明π(即本申请中涉及到的第一零知识证明记录),其中,零知识证明π包含约束其中公开输入为私有输入为在区块链上记录并构建一个merkletree(默克尔树),将记录到merkletree的叶子节点中。由于是通过哈希函数计算的摘要,所以隐藏了帐号a的信息,隐藏了地图栅格α的信息,以及帐号a和地图栅格α的关联关系。

从而实现了防止从区块链上的地图栅格α找到对应的个人帐号a,防止从区块链上的个人账户a找到个人所有的地图栅格,防止从区块链上的地图栅格α找到关联的所有个人账户。

验证帐号a和地图栅格α的关联关系存在的零知识证明。获取在merkletree上的兄弟节点的路径。获取merkletree的根节点rtr。生成零知识证明π,包含约束其中m为merkletree根节点计算算法,公开输入为[rtr],私有输入为由于merkletree存储的都是哈希函数计算的摘要,所以可以通过rtr和验证存在于merkletree中,同时区块链的防篡改特点,可以证明帐号a和地图栅格α的关联关系存在并且不可抵赖和篡改。

在区块链中,采用开放源码的智能合约实现用户轨迹交叉的计算。

对于t1时刻被确定为感染人群的用户b,根据传染病的潜伏期th,针对[t1-th,t1]时间范围内,智能合约对区块链上帐号b和关联的所有地图栅格的零知识证明,将通过验证的地图栅格标记为t时刻感染性地图栅格β。

对于用户a,智能合约计算[t1-th,t1]时间范围内,区块链上帐号a和关联的所有地图栅格的零知识证明,对于通过验证的所有地图栅格α,计算t时刻帐号a的地图栅格α与t时刻感染性地图栅格β是否具有相同地图栅格唯一编号。如果地图栅格唯一编号相同,则把用户a识别为接触人群。

在该实施例中,防止从区块链上的位置信息找到对应的个人账户地址,同时防止从区块链上的个人账户地址找到个人所有位置信息,进一步地,防止从区块链上的位置信息找到关联的所有个人账户地址。从而避免在记录必要的个人传染病接触位置信息时,泄漏不必要的个人非传染病接触位置信息,保护个人隐私信息。

此外,通过手机等终端设备的gps定位功能,利用app程序自动、连续、准确采集人群位置信息形成移动轨迹,通过轨迹交叉计算感染人群、未感染人群和接触人群,并保护个人隐私安全。

实施例十

在本发明的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被执行时,实现如上述任一项的人群标记方法的步骤。

在本发明的实施例中,提出了一种计算机可读存储介质,包括如第一方面任一实施例提供的人群标记方法的步骤,因此,本发明的实施例提供的计算机可读存储介质具有第一方面任一实施例提供的人群标记方法的全部有益效果,在此不一一列举。

在本发明的描述中,术语“多个”则指两个或两个以上,除非另有明确的限定,术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制;术语“连接”、“安装”、“固定”等均应做广义理解,例如,“连接”可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

在本发明的描述中,术语“一个实施例”、“一些实施例”、“具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本发明的至少一个实施例或示例中。在本发明中,对上述术语的示意性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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