本发明涉及信息验证技术领域,特别是涉及一种数据信息的验证方法和系统。
背景技术:
在通过网络获取信息的过程中,需要的目标信息可能会因网络环境的影响出现差错,对信息的处理造成严重影响。
例如数字菜谱信息的获取过程。随着自动化技术和信息技术同传统烹饪设备的结合,越来越多的智能烹饪设备进入了普通百姓的日常生活,例如具备基本烹饪功能的微波炉、电饭煲、电高压锅等。特别是近年出现的一种称之为炒菜机的智能烹饪设备,可以自动或者半自动的完成多道菜肴的制作过程,得到了越来越多的应用。目前帮助这类智能烹饪设备实现智能烹饪的控制程序,一般都是在智能烹饪设备内存储的电子菜谱。此类电子菜谱,名为菜谱,其实就是一些声音文件、控制参数等。只能在一些比较简单的菜肴的烹制过程中,起到辅助性的作用,并不能完全满足使用者日常生活中对各种菜肴的烹饪需求。
数字菜谱(也叫智能菜谱),是将各种菜系的大厨对菜肴的烹饪过程经过处理,获得的具有通用的标准数据格式的烹饪程序信息。采用这种方式,完全满足了使用者利用智能烹饪设备对各类菜肴的烹饪需求。
在使用数字菜谱时,一般通过智能烹饪设备下载数字菜谱,但是目前智能烹饪设备能连接网络,无法保证得到的数字菜谱一定是从正规渠道下载的,获得的数字菜谱存在合法性和正确性缺陷。
从上述的举例可以看出,在各种信息的获取过程中,获取的目标信息可能会存在合法性和正确性缺陷。
技术实现要素:
基于此,有必要针对传统的信息的获取过程会存在合法性和正确性缺陷的问题,提供一种数据信息的验证方法和设备。
一种数据信息的验证方法,包括以下步骤:
获取用于接收数据信息的设备的第一摘要序列,获取待接收的目标数据信息的标识码;
根据标识码和第一摘要序列生成下载请求指令并发送至数据服务器;其中,数据服务器根据下载请求指令获取数字签名和目标数据信息;
接收数据服务器返回的数字签名和目标数据信息,根据目标数据信息与第一摘要序列获取第一数据信息,根据数字签名对第一数据信息进行验证。
一种数据信息的验证系统,包括:
数据获取模块,用于获取用于接收数据信息的设备的第一摘要序列,获取待接收的目标数据信息的标识码;
下载请求模块,用于根据标识码和第一摘要序列生成下载请求指令并发送至数据服务器;其中,数据服务器根据下载请求指令获取数字签名和目标数据信息;
数据验证模块,用于接收数据服务器返回的数字签名和目标数据信息,根据目标数据信息与第一摘要序列获取第一数据信息,根据数字签名对第一数据信息进行验证。
根据上述本发明的数据信息的验证方法和系统,其是获取用于接收数据信息的设备的第一摘要序列和待接收的目标数据信息的标识码,进而生成下载请求指令,从数据服务器下载目标数据信息和数字签名,利用数字签名对根据目标数据信息与第一摘要序列得到的第一数据信息进行验证。在此方案中,摘要序列具有唯一性和不可逆性,可以防止篡改,数据安全性高,以第一摘要序列和待接收的目标数据信息的标识码作为请求参数,可以有效防止非法复制或非法篡改而获得目标数据信息的使用权限,利用从数据服务器下载的数字签名验证第一数据信息的一致性,可以准确判断下载的数据是否是从数字服务器下载,在验证通过时可以确保目标数据信息的合法性和正确性。
一种可读存储介质,其上存储有可执行程序,该程序被处理器执行时实现上述的数据信息的验证方法的步骤。
一种验证设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的可执行程序,处理器执行程序时实现上述的数据信息的验证方法的步骤。
根据上述本发明的数据信息的验证方法,本发明还提供一种可读存储介质和验证设备,用于通过程序实现上述数据信息的验证方法。
附图说明
图1为其中一个实施例的数据信息的验证方法的流程示意图;
图2为其中一个实施例的数据信息的验证系统的结构示意图;
图3为其中一个实施例的数据信息的验证系统的结构示意图;
图4为其中一个实施例的数据信息的验证系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
参见图1所示,为本发明一个实施例的数据信息的验证方法的流程示意图。该实施例中的数据信息的验证方法,包括以下步骤:
步骤s101:获取用于接收数据信息的设备的第一摘要序列,获取待接收的目标数据信息的标识码;
在本步骤中,第一摘要序列与用于接收数据信息的设备相关联,可以代表用于接收数据信息的设备的身份信息,摘要序列具有唯一性和不可逆性,可以防止篡改,数据安全性高;
步骤s102:根据标识码和第一摘要序列生成下载请求指令并发送至数据服务器;其中,数据服务器根据下载请求指令获取数字签名和目标数据信息;
在本步骤中,数字签名用于在用于接收数据信息的设备上进行信息验证;
步骤s103:接收数据服务器返回的数字签名和目标数据信息,根据目标数据信息与第一摘要序列获取第一数据信息,根据数字签名对第一数据信息进行验证。
在本步骤中,数字签名包含目标数据信息和第一摘要序列两者的必要信息,利用数字签名可以验证第一数据信息的一致性;
在本实施例中,获取用于接收数据信息的设备的第一摘要序列和待接收的目标数据信息的标识码,进而生成下载请求指令,从数据服务器下载目标数据信息和数字签名,利用数字签名对根据目标数据信息与第一摘要序列得到的第一数据信息进行验证。在此方案中,摘要序列具有唯一性和不可逆性,可以防止篡改,数据安全性高,以第一摘要序列和待接收的目标数据信息的标识码作为请求参数,可以有效防止非法复制或非法篡改而获得目标数据信息的使用权限,利用从数据服务器下载的数字签名验证第一数据信息的一致性,可以准确判断下载的数据是否是从数字服务器下载,在验证通过时可以确保目标数据信息的合法性和正确性。
可选的,在获取用于接收数据信息的设备的第一摘要序列之后,可以将第一摘要序列保存在用于接收数据信息的设备中,以备后续验证过程使用。
在其中一个实施例中,获取用于接收数据信息的设备的第一摘要序列的步骤包括以下步骤:
获取随机数和用于接收数据信息的设备的唯一码,根据随机数和唯一码提取第一摘要序列。
在本步骤中,唯一码可以代表用于接收数据信息的设备,将其与随机数相结合,可以提取得到第一摘要序列,由于随机数是随机生成的,唯一码是固定的,第一摘要序列既可以代表用于接收数据信息的设备的身份信息,又可以在每次生成时产生变化,从而使生成的下载请求指令产生变化,防止重复请求以及非法复制转发请求。
在其中一个实施例中,获取待接收的目标数据信息的标识码的步骤包括以下步骤:
在接收到下载请求命令时,根据下载请求命令获取标识码。
在本实施例中,可以根据接收到的下载请求命令获取标识码,从而获取目标数据信息,通过下载请求命令进一步明确待下载的数据信息,加强下载数据信息的针对性。
在其中一个实施例中,根据数字签名对第一数据信息进行验证的步骤包括以下步骤:
对数字签名进行解密,获得第二摘要序列;
根据第一数据信息获取第三摘要序列;
在第三摘要序列与第二摘要序列一致时,提示代表第一数据信息通过验证的信息。
在本实施例中,数字签名一般是经过加密处理的,在使用数字签名之前,需要对其进行解密,从而获取其中的第二摘要序列,验证工具是摘要序列,因此被验证也应当是摘要序列,在对第一数据信息进行验证之前,需要获取对应的第三摘要序列,通过比较第三摘要序列与第二摘要序列可以验证第一数据信息的一致性,由于摘要序列中包含了需要验证的必要信息,而且信息容量较小,可以提高验证效率。
在其中一个实施例中,对数字签名进行解密的步骤包括以下步骤:
通过预存的公钥对数字签名进行解密,其中,数字签名是数据服务器根据下载请求指令获取第四摘要序列和目标数据信息,根据目标数据信息和第四摘要序列提取第二摘要序列,通过预存的私钥对第二摘要序列进行加密后得到的;公钥与私钥是成对的密钥,第四摘要序列与第一摘要序列相对应。
在本实施例中,第四摘要序列是数据服务器根据下载请求指令得到的,其与生成下载请求指令时的请求参数第一摘要序列相对应,在本质上与第一摘要序列是相同的;数据服务器通过预存的私钥对第二摘要序列加密,得到数字签名,防止非法复制或非法篡改而获得目标数据信息的使用权限,提高数据信息的安全性;接收到数字签名后,可以通过预存的公钥对数字签名进行解密,从而得到其中的第二摘要数据进行验证,公钥与私钥是成对的密钥,可以保证目标数据信息的合法性。
可选的,公钥可以预存在用于接收数据信息的设备中。
在其中一个实施例中,数据信息的验证方法还包括以下步骤:
在调用本地数据信息之前,获取本地数据信息对应的本地数字签名,通过公钥对本地数字签名进行解密,获得第五摘要序列;
根据本地数据信息与第一摘要序列提取第六摘要序列;
在第六摘要序列与第五摘要序列一致时,调用本地数据信息。
在本实施例中,在调用本地数据信息之前,可以对本地数据信息进一步进行验证,验证过程与目标数据信息的验证过程相似,只是获取的是本地数据信息对应的本地数字签名,无需再从数据服务器进行下载;在验证通过以后,可以确保本地数据信息是之前从数据服务器下载至本地的,并非从其他设备中拷贝得到,对本地数据信息进行验证,可以防止非法复制获取其他设备上的数据信息的使用权限,
在其中一个实施例中,数据信息的验证方法还包括以下步骤:
在第六摘要序列与第五摘要序列不一致时,上传第五摘要序列至数据服务器;
其中,数据服务器根据下载请求指令获取用于接收数据信息的设备的帐号信息,在发送数字签名和目标数据信息之前,记录第二摘要序列与用于接收数据信息的设备的帐号信息的绑定关系,在接收到第五摘要序列时,根据绑定关系查找与第五摘要序列对应的帐号信息。
在本实施例中,数据服务器在发送数字签名和目标数据信息之前,记录第二摘要序列与用于接收数据信息的设备的帐号信息的绑定关系,如此可以便于查找数据信息的来源,在第六摘要序列与第五摘要序列不一致时,可以上传第五摘要序列至数据服务器,在数据服务器中查询得到相应的用于接收数据信息的设备的帐号信息,即原始下载与第五摘要序列对应的数据信息的设备的帐号信息,该设备的帐号下载的数据信息有被盗用的风险,为被盗用的设备的帐号采取保护措施提供依据。
在其中一个实施例中,接收数据服务器返回的数字签名和目标数据信息的步骤包括以下步骤:
接收数据服务器返回的第二数据信息和数字签名,其中,第二数据信息包括目标数据信息和第四摘要序列;
在根据本地数据信息与第一摘要序列提取第六摘要序列的步骤之后,还包括以下步骤:
在第六摘要序列与第五摘要序列不一致时,获取第七摘要序列并上传至数据服务器;其中,本地数据信息同第七摘要序列的关联关系与目标数据信息同第四摘要序列的关联关系相同;
其中,数据服务器根据下载请求指令获取用于接收数据信息的设备的帐号信息,在发送数字签名和第二数据信息之前,记录第四摘要序列与用于接收数据信息的设备的帐号信息的绑定关系,在接收到第七摘要序列时,根据绑定关系查找与第七摘要序列对应的帐号信息。
在本实施例中,接收的是数据服务器返回的第二数据信息和数字签名,第二数据信息包括目标数据信息和第四摘要序列;数据服务器在发送数字签名和第二数据信息之前,记录的是第四摘要序列与用于接收数据信息的设备的帐号信息的绑定关系,虽然绑定关系的对象与上一实施例有所不同,但是绑定关系同样可以用于查找数据信息的来源,在第六摘要序列与第五摘要序列不一致时,可以上传第七摘要序列至数据服务器,在数据服务器中查询得到相应的用于接收数据信息的设备的帐号信息。
在其中一个实施例中,通过md5算法获取第一摘要序列。
在本实施例中,md5(message-digestalgorithm5)算法是一种通过压缩加密方式提取信息摘要的算法,通过该md5算法可以快速获取用于接收数据信息的设备的第一摘要序列。
可选的,在获取第三摘要序列、第六摘要序列时也可以使用md5算法。
在其中一个实施例中,数据信息包括数字菜谱信息,数据服务器包括数字菜谱服务器。
在本实施例中,数据信息的验证方法可以应用在数字菜谱的场景中。数据信息可以是数字菜谱信息,数据服务器可以是数字菜谱服务器。
根据上述数据信息的验证方法,本发明还提供一种数据信息的验证系统,以下就本发明的数据信息的验证系统的实施例进行详细说明。
参见图2所示,为本发明一个实施例的数据信息的验证系统的结构示意图。该实施例中的数据信息的验证系统包括:
数据获取模块210,用于获取用于接收数据信息的设备的第一摘要序列,获取待接收的目标数据信息的标识码;
下载请求模块220,用于根据标识码和第一摘要序列生成下载请求指令并发送至数据服务器;其中,数据服务器根据下载请求指令获取数字签名和目标数据信息;
数据验证模块230,用于接收数据服务器返回的数字签名和目标数据信息,根据目标数据信息与第一摘要序列获取第一数据信息,根据数字签名对第一数据信息进行验证。
在其中一个实施例中,数据获取模块210获取随机数和用于接收数据信息的设备的唯一码,根据随机数和唯一码提取第一摘要序列。
在其中一个实施例中,数据获取模块210在接收到下载请求命令时,根据下载请求命令获取标识码。
在其中一个实施例中,数据验证模块230对数字签名进行解密,获得第二摘要序列;根据第一数据信息获取第三摘要序列;在第三摘要序列与第二摘要序列一致时,提示代表第一数据信息通过验证的信息。
在其中一个实施例中,数据验证模块230通过预存的公钥对数字签名进行解密,其中,数字签名是数据服务器根据下载请求指令获取第四摘要序列和目标数据信息,根据目标数据信息和第四摘要序列提取第二摘要序列,通过预存的私钥对第二摘要序列进行加密后得到的;公钥与私钥是成对的密钥,第四摘要序列与第一摘要序列相对应。
在其中一个实施例中,如图3所示,数据信息的验证系统还包括信息调用模块240;
数据获取模块210还用于在调用本地数据信息之前,获取本地数据信息对应的本地数字签名;
数据验证模块230还用于通过公钥对本地数字签名进行解密,获得第五摘要序列;根据本地数据信息与第一摘要序列提取第六摘要序列;
信息调用模块240用于在第六摘要序列与第五摘要序列一致时,调用本地数据信息。
在其中一个实施例中,如图4所示,数据信息的验证系统还包括信息查询模块250,用于在第六摘要序列与第五摘要序列不一致时,上传第五摘要序列至数据服务器;
其中,数据服务器根据下载请求指令获取用于接收数据信息的设备的帐号信息,在发送数字签名和目标数据信息之前,记录第二摘要序列与用于接收数据信息的设备的帐号信息的绑定关系,在接收到第五摘要序列时,根据绑定关系查找与第五摘要序列对应的帐号信息。
在其中一个实施例中,数据信息的验证系统还包括信息查询模块250;
数据验证模块230接收数据服务器返回的第二数据信息和数字签名,其中,第二数据信息包括目标数据信息和第四摘要序列;
信息查询模块250用于在第六摘要序列与第五摘要序列不一致时,获取第七摘要序列并上传至数据服务器;其中,本地数据信息同第七摘要序列的关联关系与目标数据信息同第四摘要序列的关联关系相同;
其中,数据服务器根据下载请求指令获取用于接收数据信息的设备的帐号信息,在发送数字签名和第二数据信息之前,记录第四摘要序列与用于接收数据信息的设备的帐号信息的绑定关系,在接收到第七摘要序列时,根据绑定关系查询与第七摘要序列对应的帐号信息。
在其中一个实施例中,通过md5算法获取第一摘要序列。
在其中一个实施例中,数据信息包括数字菜谱信息,数据服务器包括数字菜谱服务器。
本发明的数据信息的验证系统与本发明的数据信息的验证方法一一对应,在上述数据信息的验证方法的实施例阐述的技术特征及其有益效果均适用于数据信息的验证系统的实施例中。
根据上述数据信息的验证方法,本发明实施例还提供一种可读存储介质和一种检测设备。可读存储介质上存储有可执行程序,该程序被处理器执行时实现上述数据信息的验证方法的步骤;检测设备包括存储器、处理器及存储在存储器上并可在处理器上运行的可执行程序,处理器执行程序时实现上述数据信息的验证方法的步骤。
在一个具体的实施例中,本发明的方案可以应用于智能烹饪设备的使用场景中,智能烹饪设备可以作为接收数字菜谱的设备,数据菜谱可以从数据菜谱服务器中下载,利用本发明的方案不仅可以对下载的数字菜谱进行验证,还可以对数字菜谱的使用权限进行限制管理,防止数字菜谱的非法使用。
具体包括以下步骤:
1.1数字菜谱服务器发布公钥、私钥;私钥只保存在数字菜谱服务器,公钥存储至智能烹饪设备;
1.2智能烹饪设备在接收到需要下载菜谱的指令时,智能烹饪设备在本地用随机数发生器生成一个随机数;并与自身产品唯一码(即上述唯一码)连接在一起,组合成一个唯一串码,这串码经过压缩加密方式提取摘要(md5)生成一个摘要序列
1.3智能烹饪设备保存步骤1.2中的摘要序列
1.4智能烹饪设备在接收到下载数字菜谱的命令时,提取所要下载的数字菜谱的名称(即上述标识码),向数字菜谱服务器发出下载菜谱请求,并以此摘要序列
1.5数字菜谱服务器对下载菜谱请求进行解析,得到智能烹饪设备上传的摘要序列
将数字菜谱
1.6下载数字菜谱时,智能烹饪设备先通过公钥验证数字菜谱的一致性,不可抵赖性,具体验证步骤包括:智能烹饪设备通过公钥对数字签名解密得到摘要序列
1.7在调用数字菜谱时,智能烹饪设备通过公钥验证本地数字菜谱
1.8智能烹饪设备上传此非法数字菜谱
在上述的具体步骤中,1.5的步骤可以是:数字菜谱服务器对下载菜谱请求进行解析,得到智能烹饪设备上传的摘要序列
将数字菜谱
1.8的步骤可以是:智能烹饪设备上传此非法数字菜谱
通过上述方式获得的数字签名可以将数字菜谱数据与摘要序列相结合,便于验证下载的数字菜谱数据与数字菜谱服务器中的数字菜谱数据的一致性,确保下载的数字菜谱数据的合法性和正确性,合理使用数字菜谱,防止非法使用。
在上述实施例中,“第一”、“第二”等序数词只是为了区分所描述的对象,并非对所描述对象的限定。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成。所述的程序可以存储于可读取存储介质中。该程序在执行时,包括上述方法所述的步骤。所述的存储介质,包括:rom/ram、磁碟、光盘等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。