选举信息处理方法和处理系统及选举系统和存储介质与流程

文档序号:16000428发布日期:2018-11-20 19:23阅读:167来源:国知局

本公开涉及信息安全领域,特别涉及一种选举信息处理方法和处理系统及选举系统和存储介质。



背景技术:

选举活动是一种非常常见的集体活动,从候选人中选择合适者以承担某些责任。随着计算机和网络技术的发展,选举活动(尤其是大型的选举活动)已逐渐从线下调整到线上进行,保障选举信息的安全越来越重要。



技术实现要素:

本公开实施例所要解决的一个技术问题是:提高选举信息的安全性。

根据本公开的一个方面,提出一种选举信息处理方法,包括:

根据选举人的选举结果签名信息进入区块链的第一交易标识,向区块链系统查询所述第一交易标识对应的所述选举人的选举结果签名信息,其中,所述选举人的选举结果签名信息是使用所述选举人的私钥对所述选举人的选举结果进行签名得到的,所述选举人的私钥为所述选举人的人脸特征;

如果数据库中存储的所述选举人的选举结果签名信息与所述区块链系统返回的所述选举人的选举结果签名信息不一致,确定所述数据库中存储的所述选举人的选举结果签名信息被篡改。

在一些实施例中,选举信息处理方法还包括:

生成所述选举人的私钥对应的所述选举人的公钥,并保存至所述数据库;

根据所述选举人的公钥进入区块链的第二交易标识,向所述区块链系统查询所述第二交易标识对应的所述选举人的公钥;

如果所述数据库中存储的所述选举人的公钥与所述区块链系统返回的所述选举人的公钥不一致,确定所述数据库中存储的所述选举人的公钥被篡改。

在一些实施例中,选举信息处理方法还包括:

根据所述数据库中存储的所述选举人的选举结果签名信息的表征信息的时间戳,向第三方认证系统查询所述时间戳对应的选举人的选举结果签名信息的表征信息;

如果所述第三方认证系统未返回正常格式的表征信息,或者,所述第三方认证系统返回的选举人的选举结果签名信息的表征信息与所述数据库中存储的所述选举人的选举结果签名信息形成的表征信息不一致,确定所述数据库中存储的时间戳或者所述数据库中存储的所述选举人的选举结果签名信息被篡改。

在一些实施例中,选举信息处理方法还包括:

根据所述选举人的选举结果签名信息进入区块链的第一交易标识,向所述区块链系统查询所述第一交易标识对应的所述选举人的选举结果签名信息进入区块链的时间戳;

如果所述数据库中存储的所述选举人的选举结果签名信息进入区块链的时间戳与所述区块链系统返回的所述选举人的选举结果签名信息进入区块链的时间戳不一致,确定所述数据库中存储的所述选举人的选举结果签名信息进入区块链的时间戳被篡改。

在一些实施例中,所述第一交易标识是所述区块链系统响应于所述选举人的选举结果签名信息进入区块链的请求,生成的所述选举人的选举结果签名信息对应的唯一标识。

在一些实施例中,所述第二交易标识是所述区块链系统响应于所述选举人的公钥进入区块链的请求,生成的所述选举人的公钥对应的唯一标识。

在一些实施例中,所述时间戳是所述第三方认证系统根据接收到所述选举人的选举结果签名信息的表征信息的时间生成的。

根据本公开的另一个方面,提出一种选举信息处理系统,包括:

查询模块,用于根据选举人的选举结果签名信息进入区块链的第一交易标识,向区块链系统查询所述第一交易标识对应的所述选举人的选举结果签名信息,其中,所述选举人的选举结果签名信息是使用所述选举人的私钥对所述选举人的选举结果进行签名得到的,所述选举人的私钥为所述选举人的人脸特征;

确定模块,用于如果数据库中存储的所述选举人的选举结果签名信息与所述区块链系统返回的所述选举人的选举结果签名信息不一致,确定所述数据库中存储的所述选举人的选举结果签名信息被篡改。

在一些实施例中,所述查询模块,还用于根据所述选举人的公钥进入区块链的第二交易标识,向所述区块链系统查询所述第二交易标识对应的所述选举人的公钥,其中,所述选举人的公钥根据所述选举人的私钥生成;所述确定模块,还用于如果所述数据库中存储的所述选举人的公钥与所述区块链系统返回的所述选举人的公钥不一致,确定所述数据库中存储的所述选举人的公钥被篡改。

在一些实施例中,所述查询模块,还用于根据所述数据库中存储的所述选举人的选举结果签名信息的表征信息的时间戳,向第三方认证系统查询所述时间戳对应的选举人的选举结果签名信息的表征信息;所述确定模块,还用于如果所述第三方认证系统未返回正常格式的表征信息,或者,所述第三方认证系统返回的选举人的选举结果签名信息的表征信息与所述数据库中存储的所述选举人的选举结果签名信息形成的表征信息不一致,确定所述数据库中存储的时间戳或者所述数据库中存储的所述选举人的选举结果签名信息被篡改。

在一些实施例中,所述查询模块,还用于根据所述选举人的选举结果签名信息进入区块链的第一交易标识,向所述区块链系统查询所述第一交易标识对应的所述选举人的选举结果签名信息进入区块链的时间戳;所述确定模块,还用于如果所述数据库中存储的所述选举人的选举结果签名信息进入区块链的时间戳与所述区块链系统返回的所述选举人的选举结果签名信息进入区块链的时间戳不一致,确定所述数据库中存储的所述选举人的选举结果签名信息进入区块链的时间戳被篡改。

根据本公开的另一个方面,提出一种选举信息处理系统,包括:

存储器;以及

耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行前述的选举信息处理方法。

根据本公开的另一个方面,提出一种选举系统,包括:

前述任一个实施例的选举信息处理系统;

以及

区块链系统,用于响应于所述选举信息处理系统发送的选举人的选举结果签名信息进入区块链的请求,生成所述选举人的选举结果签名信息对应的第一交易标识,记录所述选举人的选举结果签名信息及其对应的所述第一交易标识,并将所述第一交易标识返回所述选举信息处理系统;或者,用于响应于所述选举信息处理系统发送的选举人的公钥进入区块链的请求,生成的所述选举人的公钥对应的第二交易标识,记录所述选举人的公钥及其对应的所述第二交易标识,并将所述第二交易标识返回所述选举信息处理系统。

在一些实施例中,选举系统还包括:第三方认证系统,用于响应于所述选举信息处理系统发送的选举人的选举结果签名信息的表征信息,生成对应的时间戳,记录所述选举人的选举结果签名信息的表征信息及其时间戳,并将所述时间戳返回所述选举信息处理系统。

根据本公开的另一个方面,提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的选举信息处理方法。

本公开实施例具有以下有效果:

一方面,使用选举人的人脸特征作为私钥对选举人的选举结果进行签名,根据区块链系统记录的选举人的选举结果签名信息,对数据库中存储的选举人的选举结果签名信息进行认证,由于私钥被破解的概率大大降低,且区块链技术的防篡改特性,从而减少选举结果签名信息被篡改的可能性,提高了选举人与其选举结果的一致性。

另一方面,根据区块链系统记录的选举人的公钥,对数据库中存储的选举人的公钥进行认证,利用区块链技术的防篡改特性,从而减少选举人的公钥被篡改的可能性,提高使用公钥对选举结果验签的可信度。

再一方面,通过第三方认证系统记录的选举人的选举结果签名信息的表征信息的时间戳,对数据库中存储的选举人的选举结果签名信息形成的表征信息进行认证,减少该时间戳或选举人的选举结果签名信息被篡改的可能性。

又一方面,利用区块链系统记录的选举人的选举结果签名信息进入区块链的时间戳,对数据库中存储的选举人的选举结果签名信息进入区块链的时间戳进行认证,减少该时间戳被篡改的可能性。

附图说明

下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍。根据下面参照附图的详细描述,可以更加清楚地理解本公开,

显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本公开的选举系统10的一些实施例的示意图。

图2为本公开选举信息存储方法一些实施例的流程示意图。

图3为本公开选举信息认证方法一些实施例的流程示意图。

图4是本公开选举信息处理系统12一些实施例的结构示意图。

图5是本公开选举信息处理系统12另一些实施例的结构示意图。

具体实施方式

下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。

本公开的“第一”“第二”等描述用来区分不同的对象,并不用来表示大小或时序等含义。

本公开提出一种选举信息处理方案,该方案基于区块链技术、人脸特征识别技术以及密码学技术实现,可以提高选举信息的安全性。

图1为本公开的选举系统的一些实施例的示意图。

如图1所示,选举系统10包括选举信息采集系统11、选举信息处理系统12、第三方认证系统13、区块链系统14等四部分。其中的选举信息采集系统11可以独立存在,也可以集成在选举信息处理系统12中。

选举信息采集系统11主要进行选举信息收集工作,例如收集选举人的人脸特征,选举人的身份信息及选举结果等。

选举信息处理系统12是选举系统的核心,负责选举信息的处理,例如包括基于人脸特征的公钥和私钥处理、到第三方认证系统13进行认证,以及与区块链系统14交互,将选举的相关数据存储至区块链等。

第三方认证系统13通常是国家认可的认证中心,例如国家授时中心等。

区块链系统14又称分布式账本系统,基于区块链技术构建,用于数据的分布式存储。

下面从选举信息存储方法和选举信息认证方法两部分描述选举信息处理方案。

图2为本公开选举信息存储方法一些实施例的流程示意图。

如图2所示,该实施例包括:步骤210~250。

在步骤210,选举信息采集系统11使用人脸特征识别技术提取选举人的人脸特征,将选举人的人脸特征和选举人的身份信息发送至选举信息处理系统12。

在步骤220,选举信息处理系统12以选举人的人脸特征作为该选举人的私钥,并使用椭圆曲线算法生成该选举人的私钥对应的该选举人的公钥,然后将选举人的身份信息及公钥和私钥保存至数据库的身份信息表,保存完成后,为保证公私钥的安全性,将选举人的公钥发送至区块链系统14进行存储。区块链系统14生成选举人的公钥对应的第二交易标识(交易ID2),记录选举人的公钥及其对应的第二交易标识,并返回第二交易标识。选举信息处理系统12获得选举人的公钥进入区块链的第二交易标识,并记录到该选举人的身份信息表。

选举人的身份信息表的内容如下:

表1-选举人的身份信息表

在步骤230,选举信息采集系统11采集选举人的选举结果,将选举人的选举结果发送至选举信息处理系统12。选举信息处理系统12先使用该选举人的私钥对其选举结果进行签名生成选举结果签名信息,然后将选举结果签名信息存入数据库。

在步骤240,选举信息处理系统12根据选举人的选举结果签名信息生成其表征信息,该表征信息例如可以是哈希值,将选举人的选举结果签名信息的表征信息发送至第三方认证系统13进行时间戳认证。第三方认证系统13生成选举人的选举结果签名信息的表征信息对应的时间戳(该时间戳可用来代表选举时间),记录选举人的选举结果签名信息的表征信息及其时间戳,并将时间戳返回选举信息处理系统12。选举信息处理系统12记录选举人的选举结果签名信息的表征信息及其时间戳。

例如,使用SHA(Secure Hash Algorithm,安全散列算法)生成选举人的选举结果签名信息的哈希值。

在步骤250,选举信息处理系统12将选举人的选举结果签名信息发送至区块链系统14进行存储。区块链系统14生成选举人的选举结果签名信息对应的第一交易标识(交易ID1),记录选举人的选举结果签名信息及其对应的第一易标识,并返回第一交易标识。选举信息处理系统12获得选举人的选举结果签名信息进入区块链的第一交易标识,并记录到该选举人的选举信息表。

表2-选举人的选举信息表

通过上述实施例,完成选举结果、选举时间、密钥等选举信息的安全存储。

图3为本公开选举信息认证方法一些实施例的流程示意图。

如图3所示,该实施例包括:步骤310~340。

在步骤310,选举信息处理系统12根据选举人的身份信息从选举人的身份信息表中获取选举人的公钥、以及该公钥进入区块链的第二交易标识(交易ID2),并根据该第二交易标识,向区块链系统14查询该第二交易标识对应的该选举人的公钥,如果数据库中存储的该选举人的公钥与区块链系统14返回的该选举人的公钥不一致,说明公钥异常,数据库中存储的该选举人的公钥可能被篡改,如果两个公钥一致,说明公钥正常,可以继续执行步骤320进一步认证。

利用区块链技术的防篡改特性,减少选举人的公钥被篡改的可能性,提高使用公钥对选举结果验签的可信度。

在步骤320,选举信息处理系统12使用选举人的公钥对选举结果进行验签,若验签失败,则表明选举结果可能被篡改,若验签成功,可以继续执行步骤330进一步认证。

一种示例性的验签方法为:使用选举人的公钥对数据库中记录的该选举人的选举结果签名信息进行解密,将解密得到的该选举人的选举结果与数据库中记录的该选举人的选举结果进行比较,如果二者一致,则验签成功,否则,验签失败。

在步骤330,选举信息处理系统12将数据库的选举信息表中记录的时间戳发送至第三方认证系统13,如果第三方认证系统13未返回正常格式的表征信息,或者,第三方认证系统13返回的选举人的选举结果签名信息的表征信息与依据数据库中存储的选举人的选举结果签名信息形成的表征信息不一致,说明数据库中存储的时间戳或者数据库中存储的选举人的选举结果签名信息可能被篡改。如果二者一致,可以继续执行步骤340进一步认证。

本领域技术人员应当理解,选举信息存储方法与选举信息认证方法中的形成表征信息的算法应当一致。

通过第三方认证系统记录的选举人的选举结果签名信息的表征信息的时间戳,对数据库中存储的选举人的选举结果签名信息形成的表征信息进行认证,减少该时间戳或选举人的选举结果签名信息被篡改的可能性。

在步骤340,选举信息处理系统12根据选举人的选举结果签名信息进入区块链的第一交易标识(交易ID1),向区块链系统14查询第一交易标识对应的选举人的选举结果签名信息。如果数据库中存储的该选举人的选举结果签名信息与区块链系统14返回的该选举人的选举结果签名信息不一致,说明数据库中存储的该选举人的选举结果签名信息可能被篡改。如果二者一致,说明数据库中存储的该选举人的选举结果签名信息未被篡改,选举结果可信。

使用选举人的人脸特征作为私钥对选举人的选举结果进行签名,根据区块链系统记录的选举人的选举结果签名信息,对数据库中存储的选举人的选举结果签名信息进行认证,由于私钥被破解的概率大大降低,且区块链技术的防篡改特性,从而减少选举结果签名信息被篡改的可能性,提高了选举人与其选举结果的一致性。

通过上述实施例,对选举结果、选举时间、密钥等选举信息进行认证,提高这些选举信息的安全性。

作为一些替代方案,用来代表选举时间的时间戳,还可以由区块链系统14生成。

具体来说,在选举信息存储方法中,图2所示实施例中的步骤240不再执行,在步骤250中,区块链系统14向选举信息处理系统12不仅返回第一交易标识,还返回选举人的选举结果签名信息进入区块链的时间戳。图2所示实施例中的其他步骤不变。

相应的,在选举信息认证方法中,图3所示实施例中的步骤330不再执行,在步骤340中,区块链系统14向选举信息处理系统12不仅返回第一交易标识,还返回选举人的选举结果签名信息进入区块链的时间戳。如果数据库中存储的选举人的选举结果签名信息进入区块链的时间戳与区块链系统返回的选举人的选举结果签名信息进入区块链的时间戳不一致,说明数据库中存储的选举人的选举结果签名信息进入区块链的时间戳可能被篡改。图3所示实施例中的其他步骤不变。

利用区块链系统记录的选举人的选举结果签名信息进入区块链的时间戳,对数据库中存储的选举人的选举结果签名信息进入区块链的时间戳进行认证,减少该时间戳被篡改的可能性。

图4是本公开选举信息处理系统12一些实施例的结构示意图。

如图4所示,该实施例的选举信息处理系统12包括模块410~420。

查询模块410,用于根据选举人的选举结果签名信息进入区块链的第一交易标识,向区块链系统查询第一交易标识对应的选举人的选举结果签名信息,其中,选举人的选举结果签名信息是使用选举人的私钥对选举人的选举结果进行签名得到的,选举人的私钥为选举人的人脸特征。

确定模块420,用于如果数据库中存储的选举人的选举结果签名信息与区块链系统返回的选举人的选举结果签名信息不一致,确定数据库中存储的选举人的选举结果签名信息被篡改。

在一些实施例中,查询模块410,还用于根据选举人的公钥进入区块链的第二交易标识,向区块链系统查询第二交易标识对应的选举人的公钥,其中,选举人的公钥根据选举人的私钥生成。确定模块420,还用于如果数据库中存储的选举人的公钥与区块链系统返回的选举人的公钥不一致,确定数据库中存储的选举人的公钥被篡改。

在一些实施例中,查询模块410,还用于根据数据库中存储的选举人的选举结果签名信息的表征信息的时间戳,向第三方认证系统查询时间戳对应的选举人的选举结果签名信息的表征信息。确定模块420,还用于如果第三方认证系统未返回正常格式的表征信息,或者,第三方认证系统返回的选举人的选举结果签名信息的表征信息与数据库中存储的选举人的选举结果签名信息形成的表征信息不一致,确定数据库中存储的时间戳或者数据库中存储的选举人的选举结果签名信息被篡改。

在一些实施例中,查询模块410,还用于根据选举人的选举结果签名信息进入区块链的第一交易标识,向区块链系统查询第一交易标识对应的选举人的选举结果签名信息进入区块链的时间戳。确定模块420,还用于如果数据库中存储的选举人的选举结果签名信息进入区块链的时间戳与区块链系统返回的选举人的选举结果签名信息进入区块链的时间戳不一致,确定数据库中存储的选举人的选举结果签名信息进入区块链的时间戳被篡改。

第一交易标识是区块链系统响应于选举人的选举结果签名信息进入区块链的请求,生成的选举人的选举结果签名信息对应的唯一标识。

第二交易标识是区块链系统响应于选举人的公钥进入区块链的请求,生成的选举人的公钥对应的唯一标识。

时间戳是第三方认证系统根据接收到选举人的选举结果签名信息的表征信息的时间生成的。

图5是本公开选举信息处理系统12另一些实施例的结构示意图。

如图5所示,该实施例的选举信息处理系统12包括:存储器510以及耦接至该存储器510的处理器520,处理器520被配置为基于存储在存储器510中的指令,执行前述任意一些实施例中的选举信息处理方法,包括选举信息存储方法和选举信息认证方法。

其中,存储器510例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。

该实施例的选举信息处理系统12还可以包括输入输出接口530、网络接口540、存储接口550等。这些接口530,540,550以及存储器510和处理器520之间例如可以通过总线560连接。其中,输入输出接口530为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口540为各种联网设备提供连接接口。存储接口550为SD卡、U盘等外置存储设备提供连接接口。

本公开还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现执行前述任意一些实施例中的选举信息处理方法,包括选举信息存储方法和选举信息认证方法。

本领域内的技术人员应当明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本公开的较佳实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

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