数字文件防伪保护的制作方法

文档序号:24352768发布日期:2021-03-19 12:38阅读:95来源:国知局
数字文件防伪保护的制作方法

本发明涉及使数字数据免受伪造或篡改的保护、以及数字文件的可追溯性的技术领域。



背景技术:

假冒和篡改数字文件的问题是众所周知的、严重的且日益增长的。对原始数字证件(诸如数字身份证件或者凭证的数字版本等)上所标记的数据进行造假的示例是众所周知的,并且如果考虑到原始(可能是真的)数字证件,则这种担忧甚至更糟。仅跟踪标识符(诸如序列号,或者甚至包括一些数字水印)一般来说是微弱的回应,因为假冒者也可以容易地复制这些编号或数字水印。

用于确保数字文件的真实性或保护其数字数据的最传统方法的另一个缺点是,即使在数字文件是定义明确的组(诸如数字证件批次)中的成员的情况下,也趋向于单独地查看文件。这忽略了有价值的认证信息。

因此,本发明的目的是保护可打印数字文件以免受对其相关数据、特别是与该数字文件属于特定数字文件批次相关联的数据的伪造和造假。另外,本发明的目的是允许离线检查根据本发明进行保护的可打印数字文件的真实性以及其数字数据内容相对于真数字文件的数字数据内容的一致性。本发明还旨在保护可打印数字文件,使得容易检查可打印数字文件及其打印版本这两者的数据内容的真实性。特别地,本发明的目标是保护打印就绪数字文件,打印就绪数字文件被称为满足以下标准的打印文件:所有(可能的)rgb图像被转换为cmyk颜色,文件为如psd、eps、al、高分辨率jpg、pdf或tif等的合适格式,并且最终图像具有足够的分辨率(例如,300dpi或更高)。



技术实现要素:

根据一方面,本发明涉及一种保护属于多个原始数字文件的批次的给定原始数字文件以免受伪造或篡改的方法,各原始数字文件包括其自己的数字数据,其特征在于所述方法包括以下的步骤:

-针对所述批次中的各原始数字文件,通过单向函数来计算所述原始数字文件的数字数据的关联数字文件签名;

-基于针对所述批次中的原始数字文件所计算出的多个数字文件签名来形成树并在所述树中包括根据给定节点排序排列的节点,所述树包括从所述树的叶节点到根节点的节点级别,所述叶节点对应于与所述批次中的多个原始数字文件分别相关联的多个数字文件签名,根据树级联排序,所述树的每个非叶节点通过其子节点的相应数字签名的级联的单向函数而与数字签名相对应,根据所述树级联排序,所述根节点通过所述树中的倒数第二节点级别的节点的数字签名的级联的单向函数而与参考根数字签名即数字签名相对应;

-将相应数字验证密钥与所述给定原始数字文件相关联,所述相应数字验证密钥是从所述叶节点级别到所述倒数第二节点级别的在所述树中与同所述给定原始数字文件的数字文件签名相对应的叶节点具有相同父节点的每个其它叶节点、以及依次处于所述树中的各下一级别处的在所述树中与被认为处于前一级别处的前一相同父节点具有相同父节点的每个非叶节点的相应数字签名的序列;

-使所述树的参考根数字签名对用户可用;以及

-在所述给定原始数字文件中包括相应数字安全标记,所述相应数字安全标记包括其数字数据及其相应数字验证密钥的机器可读表示,

由此,获得数字数据被保护以免受伪造或篡改的标记原始数字文件。

因此,如果数字文件中所包括的数字安全标记可被打印为条形码,则通过(利用传统打印机)打印安全数字文件所获得的打印证件(包括打印条形码)也是安全的,即,其打印数据被保护以免受伪造或篡改。

所述树的根节点的参考根数字签名可被发布在所述用户能够访问的媒体中,或者被存储在所述用户能够访问的可搜索根数据库中,或者被存储在区块链中,或者被存储在所述用户能够访问的由区块链保护的数据库中。因此,使所述参考根数字签名不可变。

因此,根据本发明,由于树结构以及用于计算树的节点值的稳健单向函数的使用、并且使树的根数字签名不可变并在相应原始数字文件中所包括的数字安全标记中包括数字数据及其关联数字验证密钥,批次中的所有原始数字文件的数字签名的纠缠允许在防止数据的造假和标记文件的伪造的同时以非常高的可靠性级别来跟踪和追踪标记文件及其副本以及其打印版本。

所述标记原始数字文件还可以包括根节点访问数据,所述根节点访问数据被包括到所述标记原始数字文件并且包含足以允许所述用户访问所述树的根节点的与原始数字文件的批次相对应的参考根数字签名的信息,所述信息是到访问接口的链接,所述访问接口能够操作以从所述用户接收包含从标记原始数字文件的数字安全标记获得的数字数据或数字文件签名的根请求、并发送回相应树的参考根数字签名,所述访问接口允许分别访问以下各项其中之一:

-发布所述参考根数字签名的媒体;

-存储所述参考根数字签名的可搜索根数据库;以及

-存储时间戳参考根数字签名的区块链或相应的由所述区块链保护的数据库。

根据本发明,

-虚拟数字文件还可以被算作属于原始数字文件的批次,所述虚拟数字文件包括其自己的虚拟数字数据以及通过所述虚拟数字数据的单向函数所获得的关联虚拟数字文件签名,所述虚拟数字文件不是真实的,而是仅用于根据其虚拟数字数据生成所述关联虚拟数字文件签名;以及

-与所述原始数字文件的批次相关联的参考根数字签名还可以根据具有所述批次中的原始数字文件的所有数字文件签名的树而被计算为叶节点,所述所有数字文件签名包括所述虚拟数字文件签名。

为了具有较短的签名,所述单向函数可以是哈希函数,以及原始数字文件的数字签名可以是从相应数字数据的哈希值的位中选择的较低权重的给定多个位的序列。

在以上方法中,与同所述标记原始数字文件相关联的数字数据相对应的附加数字数据可被存储在所述用户能够经由信息数据库接口访问的可搜索信息数据库中,所述信息数据库接口能够操作以从所述用户接收包含从标记原始数字文件的数字安全标记获得的数字数据或数字文件签名的信息请求、并发送回相应附加数字数据。

所述标记原始数字文件的数字数据还可以包括关联物体或个体的相应唯一物理特征的参考特征数字数据。此外,所述关联物体或个体的唯一物理特征可以分别是关联物体上所应用的基于材料的安全标记的唯一物理特征或关联个体的识别生物特征。

在以上方法中,所述数字安全标记中所包括的数字验证密钥中的数字签名的序列可以根据与树级联排序所定义的相应节点的排序不同的节点的序列排序来排列,并且所述数字安全标记还可以包括与序列排序相关联的排序码。这些特征增加了相对于破码攻击的安全级别。

根据本发明,在所述批次中的相应原始数字文件的数字数据散布在所述批次中的所有数字文件所共通的给定字段之间的情况下,与这些字段相关的特定数字数据可以不包括在所述数字数据中,而是可以聚集在与所述批次相关联的单独字段数据块中,其中:

i)利用所述相应数字数据和所述字段数据块的级联的单向函数来计算原始数字文件的数字文件签名;以及

ii)使所述参考根数字签名与关联字段数据块一起对所述用户可用。

本发明的另一方面涉及一种验证根据以上保护方法进行保护的数字文件的真实性、或这种安全数字文件的副本相对于原始数字文件的一致性的方法,其在通过连接至存储器的处理单元来处理作为所述数字文件或所述数字文件的副本的测试文件时包括以下的步骤:

-将所述测试文件存储在所述存储器中;

-读取所存储的测试文件的数字安全标记上的数字数据和数字验证密钥的表示,并从所读取的表示中分别提取相应测试数字数据和测试数字验证密钥;

-将所述原始数字文件的批次的树的根节点的参考根数字签名存储在所述存储器中,并在所述处理单元中对单向函数进行编程以根据所述树中的节点排序和树级联排序来计算数字数据的数字签名以及数字签名的级联的数字签名;

-通过进行以下的步骤来验证所提取的测试数字数据和关联测试数字验证密钥是否确实与所存储的参考根数字签名相对应:

-利用所述单向函数来计算所提取的测试数字数据的测试数字签名,所述测试数字签名与同所述测试文件的数字安全标记相对应的测试树中的测试叶节点相对应;

-从所述测试数字验证密钥中的数字签名的序列提取所述测试树中与所述测试叶节点具有相同父节点的每个其它叶节点的数字签名,并计算所述测试数字签名和所述每个其它叶节点的所提取的数字签名的级联的数字签名,因此获得所述测试叶节点的相同父节点的数字签名;

-在所述测试树中的各下一级别处依次地并且直到倒数第二节点级别,从所述测试数字验证密钥中的数字签名的序列提取所述测试树中与被认为处于前一梯级处的前一相同父节点具有相同父节点的每个其它非叶节点的数字签名,并计算相应的每个其它非叶节点的数字签名和所获得的所述前一相同父节点的数字签名的级联的数字签名,因此获得所述前一相同父节点的相同父节点的数字签名;

-计算所获得的与所述测试树的倒数第二节点级别相对应的非叶节点的数字签名的级联的数字签名,因此获得所述测试树的根节点的候选根数字签名;以及

-检查所获得的候选根数字签名与所存储的参考根数字签名是否匹配,

由此,在所述根数字签名匹配的情况下,所述测试文件的数字数据是真的数字文件的数字数据。

在标记原始数字文件在具有上述的单独字段数据块的同时受到保护的情况下,所述处理单元的存储器还可以存储关联字段数据块,并且计算与同所述测试文件上的数字安全标记相对应的测试树中的测试叶节点相对应的测试数字签名的步骤可以包括利用所述单向函数来计算所提取的测试数字数据和所存储的字段数据块的级联的数字签名。

在如上所述所述数字文件已通过将所述参考根数字签名存储在所述用户能够访问的可搜索根数据库中来保护、并且所述处理单元还连接至能够操作以经由通信链路来发送和接收回数据的通信单元的情况下,以上验证方法可以包括以下的初步步骤:

-利用所述通信单元经由所述通信链路来向所述根数据库发送请求,并接收回所述参考根数字签名;以及

-将所接收到的根数字签名存储在所述存储器中。

在安全数字文件包括如上所述的根节点访问数据、并且所述处理单元还连接至能够操作以经由通信链路来发送和接收数据的通信单元的情况下,以上验证方法可以包括以下的初步步骤:

-读取所述测试文件中所包括的根节点访问数据;

-利用所述通信单元经由所述通信链路来向访问接口发送包含从所述测试文件上的数字安全标记获得的数字数据或所述数字数据的数字签名的根请求,并接收回关联批次的相应参考根数字签名;以及

-将所接收到的参考根数字签名存储在所述存储器中。

在标记数字文件具有存储在如上所述的可搜索信息数据库中的关联附加数字数据的情况下,所述成像器还可以配备有通信部件,所述通信部件能够操作以向信息数据库接口发送包含从所述测试文件的数字安全标记获得的数字数据或数字文件签名的信息请求、并接收回相应附加数字数据。

在安全数字文件包括如上所述的参考特征数字数据、以及所述成像器还配备有能够操作以检测相应的关联物体或个体的唯一物理特征的传感器、以及所述处理单元被编程为从自所述传感器接收到的检测信号中提取相应特征数字数据的情况下,所述成像器将与相应的关联物体或个体的唯一物理特征相对应的参考特征数字数据即参考cdd存储在所述存储器中,所述验证方法可以包括以下的进一步步骤:在查看作为所述关联物体或个体的对象时:

-利用所述传感器来检测所述对象的唯一物理特征,并提取相应候选特征数字数据即cddc

-将所获得的候选特征数字数据即cddc与所存储的参考特征数字数据即参考cdd进行比较;以及

-在所述候选特征数字数据即cddc与所存储的参考特征数字数据即参考cdd相似的情况下,在给定容差标准内,所述对象被认为分别与同真的数字文件有效地关联的真的物体或个体相对应。

本发明的另一方面涉及一种数字文件,其属于多个原始数字文件的批次并且根据上述的保护方法进行保护,所述批次中的各原始数字文件具有其自己的数字数据和相应数字验证密钥,所述批次具有相应参考根数字签名,所述数字文件包括机器可读安全标记,所述机器可读安全标记包括其数字数据和其验证密钥的表示。所述数字文件的数字数据还可以包括关联物体或个体的相应唯一物理特征的参考特征数字数据即参考cdd。此外,关联物体的唯一物理特征可以是关联物体上所应用的基于材料的安全标记的唯一物理特征。

本发明的另一方面涉及一种用于验证根据上述的保护方法进行保护的数字文件的真实性、或这种数字文件的副本相对于属于原始数字文件的批次的标记原始数字文件的一致性的系统,其包括成像器,所述成像器具有成像单元、带存储器的处理单元以及图像处理单元,所述存储器存储与所述原始数字文件的批次相对应的树的参考根数字签名、以及在所述处理单元中进行编程的用以根据所述树的节点排序和树级联排序来计算数字数据的数字签名以及数字签名的级联的数字签名的单向函数,所述系统能够操作以:

-将作为所述数字文件或所述数字文件的副本的测试文件存储在所述存储器中;

-读取所存储的测试文件的数字安全标记上的数字数据和数字验证密钥的表示,并从所读取的表示中分别提取相应测试数字数据和测试数字验证密钥;

-通过在所述处理单元上进行以下的编程操作来验证所提取的测试数字数据和测试数字验证密钥是否确实与所存储的参考根数字签名相对应:

-利用所述单向函数来计算所提取的测试数字数据的测试数字签名,所述测试数字签名与同所述测试文件的数字安全标记相对应的测试树中的测试叶节点相对应;

-从所述测试数字验证密钥中的数字签名的序列提取所述测试树中与所述测试叶节点具有相同父节点的每个其它叶节点的数字签名,并计算所述测试数字签名和所述每个其它叶节点的所提取的数字签名的级联的数字签名,因此获得所述测试叶节点的相同父节点的数字签名;

-在所述测试树中的各下一级别处依次地并且直到倒数第二节点级别,从所述测试数字验证密钥中的数字签名的序列提取所述测试树中与被认为处于前一梯级处的前一相同父节点具有相同父节点的每个其它非叶节点的数字签名,并计算相应的每个其它非叶节点的数字签名和所获得的所述前一相同父节点的数字签名的级联的数字签名,因此获得所述前一相同父节点的相同父节点的数字签名;

-计算所获得的与所述测试树的倒数第二节点级别相对应的非叶节点的数字签名的级联的数字签名,因此获得所述测试树的根节点的候选根数字签名;以及

-检查所获得的候选根数字签名与所存储的参考根数字签名是否匹配,

由此,在所述根数字签名匹配的情况下,所述系统被配置为递送所述测试文件的数字数据是真的数字文件的数字数据的指示。

在以上系统中,在标记原始数字文件具有如上所述的关联字段数据块的情况下,所述处理单元的存储器还存储关联字段数据块,计算与同所述测试文件的数字安全标记相对应的测试树中的测试叶节点相对应的测试数字签名的编程操作继而包括利用所述单向函数来计算所提取的测试数字数据和所存储的字段数据块的级联的数字签名。

在标记原始数字文件属于通过包括如上所述的关联物体或个体的相应唯一物理特征的参考特征数字数据来保护的原始数字文件批次的情况下,以上系统还配备有连接至所述处理单元并且能够操作以检测相关联物体或个体的唯一物理特征的传感器,并且所述处理单元被编程为从自所述传感器接收到的检测信号中提取相应特征数字数据,所述系统将与所述关联物体或个体的唯一物理特征相对应的参考特征数字数据即参考cdd存储在所述存储器中,所述系统还可以能够操作以:

-利用所述传感器来检测作为所述关联物体或个体的对象的唯一物理特征,并提取相应候选特征数字数据即cddc

-将所获得的候选特征数字数据即cddc与所存储的参考特征数字数据即参考cdd进行比较;以及

-在所述候选特征数字数据即cddc与所存储的参考特征数字数据即参考cdd相似的情况下,在给定容差标准内,递送所述对象被认为是真的指示。

以下将参考附图来更全面地描述本发明,在附图中,相同的附图标记表示相同的元件,并且示出本发明的突出方面和特征。

附图说明

图1是根据本发明的保护原始数字文件批次的总体概念的示意图。

图2a示出根据本发明进行保护的作为数字生物识别身份证件的示例的安全数字生物识别护照。

图2b示出授权官员对具有图2a的安全数字生物识别护照的个体的管制。

图3示出根据本发明进行保护的与飞机的组件相关的数字证件批次。

具体实施方式

这里参考附图中所示的非限制性实施例来详细描述本发明。

图1示出与保护数字文件批次相关的本发明的总体概念以及对可能与各数字文件相关联的验证信息的编码进行计算的方法。图1示出包含机器可读安全标记110(这里用2d条形码示出)的数字表示的数字文件a1,…,a8的组或“批次”。在下文中,表述“数字安全标记110”实际上是指“机器可读安全标记110的数字表示”。图1实际上示出数字文件及其关联树的组或“批次”,其中,为了简单起见,仅示出八个原始数字文件:a1,…,a8。另外,为了简单起见,与文件a1,…,a8的批次相关联的树这里仅为二元树。数字文件可能涉及制造的物品或其包装、物理证件或图像、包含多个物品的包装(诸如泡罩药包)、或包含货物纸箱托盘的容器等。不仅是物体、甚至是人也可以与本发明的实施例的意义上的数字文件“关联”;例如,某项事件的经授权参与者或团体的成员、或羊群或牛群的成员可以携带某种形式的id识别证或可以利用包含相应数字文件中所记录的数据的某种标记进行物理标记。

例如,数字文件批次可能涉及常见制造运行、特定供应商所递送的物品、在某一时间段期间制造或运输的物品、相关图像集、人群、羊群或牛群、或可以定义数字文件ai(具有数字内容di)的任何物体的任何其它用户定义分组。

图1所示的任何一个物件可以是“虚拟物件”av,该“虚拟物件”av是可被包括以使得能够对选定数据进行编码的可选软件结构。在下文中对此作进一步解释。例如,八个物件其中之一(例如,物件a8)可以实际上是虚拟物件av,该虚拟物件av被算作属于八个物件的批次并且与其它七个真实物件中的任一个一样地被处理,因为它可以基本上以相同的方式进行处理(尽管其与真实物体不对应)。当然,多个虚拟物件av1,av2,…,avk可以用于对数字数据进行编码,并产生更稳健的物件数字签名(参见下文)。

对于批次中的各物件a1,a2,…,a7,a8(可能地,其中a8≡av),使用任何适当的方法来关联或提取(或者在虚拟物件av的情况下创建)相应的物件数字数据d1,d2,…,d7,d8(可能地,其中d8≡dv)。该数据可能是物理特征、文本数据(诸如已完成的表单或产品信息等)、序列号或其它标识符、内容的指示、图像的数字表示或系统设计者选择以与物件关联的任何其它信息的度量。物件数字数据di可以通过能够产生数字文件ai的相应数字数据的读取器、从关联物件上所标记(例如,物件或者贴附在物件上的标签上所打印)的人类可读数据(例如,字母数字数据)中提取。其它数字数据(例如,用于关联物件的指令或安全指令等)可以与所提取数据相关联,以构成物件数字数据di。

对于虚拟物件av,关联数字数据可以例如包括批次识别号、批次中的物件数、为了通过增加数据熵来提高安全性的(伪)随机数、日期和/或时间信息等。关联数据的另一种形式可以是允许或不允许的操作规则、到期日期等的指示。简而言之,数字数据dv可以是能够以数字形式表示的任何事物。

对于批次中的各物件,其相应的数字物件数据d1,d2,…,d7,d8优选以其被基本上隐藏的方式进行数学变换,尽管这不是任何实施例的绝对要求。应用于物件ai的物件数字数据di的这种变换用于创建相应的数字签名xi。该数字签名是通过单向函数、即容易计算但难以反演的函数(参见s.goldwasser和m.bellare于2008年7月在mit发表的“lecturenotesoncryptography”,http://www-cse.ucsd.edu/users/mihir)产生的。

一种这样的有利变换例如是对数字数据应用哈希函数h()=hash(),该函数通常具有无论输入的大小如何都返回已知位长的输出的属性:无论数字数据的大小和相应数字文件的批次的大小如何,这种技术效果对于创建(例如,与物件相关联的)数字文件的数字数据的数字签名特别有用。哈希函数是单向函数的众所周知的示例。如果使用诸如sha(安全哈希算法)类函数(例如,sha-256)等的加密哈希函数,则存在该函数实际上不可逆且抗冲突的附加益处,也就是说,两个不同输入将导致相同输出的概率可忽略不计。从下面的描述可以理解,这也不是本发明的要求,尽管其由于与其它申请中相同的原因而有利。如图1所示,值x1,x2,x3,…,x8是相应物件数据集的哈希值、即关联物件数字签名,也就是说,对于j=1,…,8,xj=h(dj)(在a8≡av的情况下,则d8≡dv并且x8≡xv=h(dv))。

为了缩短签名,物件aj的物件数字签名xj甚至可以是从哈希值h(dj)的位中选择的给定的多个低权重位的序列:例如,利用sha-2族的sha-256哈希函数,仅保留来自签名的256位的128个低权重位以相对于破译攻击仍具有稳健签名就足够了。

图1示出八个标记原始物件a1,…,a8(各自具有应用于其上的相应安全标记110)的批次,并且示出通过数字数据的数字签名的树来保护物件及其相应的关联物件数字数据d1,…d8(在图1的文件ai上用位“0”和“1”的序列进行符号表示)的方法。与数字签名相关联的树是众所周知的(二元哈希树、n元哈希树或merker树),它们通常具有基节点或叶节点,这些基节点或叶节点用于通过根据叶节点的特定分组对与叶节点相关联的数字签名的级联进行数字签名来构建下一(中间)级节点。在二元树的情况下,通过(例如,利用单向哈希函数h或单向椭圆曲线函数…)对与连续两个叶节点相关联的数字签名的级联进行数字签名,来分别计算与第一中间级节点相关联的数字签名。在n元树的情况下,通过n个连续叶节点的值的级联来获得第一中间级节点的值。树也可能具有更复杂的结构(混合树),因为叶节点的级联可以通过特定叶节点的连续节点对、其它连续叶节点的节点三元组来进行。出于简单的原因,图1仅示出具有八个叶节点的二元树:树的八个叶节点a(1,1),…,a(1,8)的相应值分别与物件数字签名x1=h(d1),…,x8=h(d8)相对应。对于所有叶节点,第一索引的值即“1”表示树的第一级别(或基本级别),并且从1到8的第二索引表示树的(叶)节点排序。下一级(非叶)节点、即级别二的四个节点a(2,1)、a(2,2)、a(2,3)和a(2,4)的值是通过对叶节点对、即下一级节点在树中的子节点对的值的级联(用运算符“+”进行符号表示)进行数字签名而获得的(这里利用哈希函数)。用于获得下一级别的节点的值的对子节点的这种分组定义了树级联排序。为了简化表示法,我们也使用节点符号a(i,j)来表示其关联值(即其关联数字签名)。这里,树在叶节点级别以上仅具有两个中间级别,并且在最高级别具有根节点。根节点级别实际上是树的最后非叶节点级别。因此,下一中间级别的四个非叶节点的值为:

a(2,1)=h(a(1,1)+a(1,2)),即a(2,1)=h(h(d1)+h(h(d2)),(因为a(1,1)和a(1,2)是节点a(2,1)的子节点)

a(2,2)=h(a(1,3)+a(1,4))

a(2,3)=h(a(1,5)+a(1,6))

a(2,4)=h(a(1,7)+a(1,8))

并且,对于接下来的倒数第二节点节别(这里为级别三),存在两个节点值:

a(3,1)=h(a(2,1)+a(2,2))

a(3,2)=h(a(2,3)+a(2,4))。

我们注意到,对于各非叶节点,可以选择不同的树级联排序:例如,代替a(2,4)=h(a(1,7)+a(1,8)),我们可以定义a(2,4)=h(a(1,8)+a(1,7)),从而给出不同的节点值。

最后,获得树的根节点r的值或参考根数字签名为:r=h(a(3,1)+a(3,2))。

由于树中涉及的级联的串联,因此如果节点(特别是叶节点)中的任何数字数据的位发生变化,则几乎不可能检索到根值。此外,在批次中包括一些虚拟物件(其中虚拟物件数字数据仅被已产生树的叶节点的数字签名的系统所已知)的情况下,即使知道批次中的所有产生(和标记)物件的数字数据,假冒者也不能检索到根数字签名。

根据本发明,原始数字文件批次的参考根数字签名r通过发布在必须对物件(或其关联数据)的真实性进行检查的用户可访问的(公共)媒体中、或者存储在用户可访问的可搜索根数据库中、或在优选模式下存储在用户可访问的区块链中(或存储在区块链所保护的数据库中)而不可变、并因此防伪造。然后,用户可以存储从这些可用源获取的参考值r。

对于批次中的各原始数字文件ai,然后计算关联树的相应数字验证密钥ki(或验证路径),作为从叶节点级别到倒数第二节点级别的在树中与对应于原始数字文件ai的数字签名的叶节点具有相同父节点的每个其它叶节点、以及依次处于树中的各下一级别处的在树中与被认为处于前一级别处的前一相同父节点具有相同父节点的每个非叶节点的相应数字签名的序列。在图1的示例中,存在八个验证密钥k1,…,k8,其分别与批次中的八个物件a1,…,a8及其相应的八个叶节点a(1,1),…,a(1,8)相对应:

1)对于与物件a1相对应的叶节点a(1,1)=x1=h(d1),验证密钥为k1={a(1,2),a(2,2),a(3,2)},根据该验证密钥,可以经由(根据树中的节点排序以及树级联排序而执行的)以下步骤来检索根数字签名值r:

i)根据叶节点a(1,1)=x1和k1中的叶节点a(1,2)=x2(a(1,2)是对应于与物件数字签名x1相对应的叶节点,即节点a(1,1),具有相同父节点,即节点a(2,1),的其它叶节点),通过a(2,1)=h(a(1,1)+a(1,2))(即a(2,1)=h(x1+x2))获得父节点值a(2,1),

ii)根据所获得的a(2,1)和k1中的下一节点值、即下一非叶节点级别的a(2,2)(其为树中与被认为处于前一级别处的前一相同父节点,即节点a(2,1),具有相同父节点,即节点a(3,1),的非叶节点),通过a(3,1)=h(a(2,1)+a(2,2))获得父节点值a(3,1),

iii)根据所获得的a(3,1)和k1中的下一节点值、即倒数第二节点级别的a(3,2)(其为树中与被认为处于前一级别处的前一相同父节点,即节点a(3,1),具有相同父节点,即根节点,的非叶节点),通过r=h(a(3,1)+a(3,2))获得根节点值r。

注意:在本示例中,我们有三个步骤i)、ii)和iii),这是因为树在根节点级别以下具有三个级别,因此验证密钥包含三个节点值。

因此,树的根节点的值可被获得为:

r=h(h(h(a(1,1)+a(1,2))+a(2,2))+a(3,2))。

2)对于与物件a2相对应的叶节点a(1,2)=x2=h(d2),验证密钥为k2={a(1,1),a(2,2),a(3,2)},根据该验证密钥,可以经由(根据树中的节点排序以及树级联排序而执行的)以下步骤来检索根值r:

i)根据a(1,2)=x2和k2中的a(1,1)=x1(a(1,1)是与同物件数字签名x2相对应的叶节点,即节点a(1,2),具有相同父节点,即节点a(2,1),的其它叶节点),通过a(2,1)=h(a(1,1)+a(1,2))获得父节点值a(2,1),

ii)根据所获得的a(2,1)和k2中的下一节点值、即下一非叶节点级别的a(2,2)(其为树中与被认为处于前一级别处的前一相同父节点,即节点a(2,1),具有相同父节点,即节点a(3,1),的非叶节点),通过a(3,1)=h(a(2,1)+a(2,2))获得父节点值a(3,1),

iii)根据所获得的a(3,1)和k2中的下一节点值、即倒数第二节点级别的a(3,2)(其为树中与被认为处于前一级别处的前一相同父节点,即节点a(3,1),具有相同父节点,即根节点,的非叶节点),通过r=h(a(3,1)+a(3,2))获得根节点值r。

因此,树的根节点的值可被获得为:

r=h(h(h(a(1,1)+a(1,2))+a(2,2))+a(3,2))。

3)对于与物件a3相对应的叶节点a(1,3)=x3=h(d3),验证密钥为k3={a(1,4),a(2,1),a(3,2)},可以经由(根据树中的节点排序以及树级联排序而执行的)以下步骤来检索根值r:

i)根据a(1,3)=x3和k3中的a(1,4)=x4(a(1,4)是与对应于物件数字签名x3的叶节点,即节点a(1,3),具有相同父节点,即节点a(2,2),的其它叶节点),通过a(2,2)=h(a(1,3)+a(1,4))获得父节点值a(2,2),

ii)根据所获得的a(2,2)和k3中的下一节点值、即下一非叶节点级别的a(2,1)(其为树中与被认为处于前一级别处的前一相同父节点,即节点a(2,2),具有相同父节点,即节点a(3,1),的非叶节点),通过a(3,1)=h(a(2,1)+a(2,2))获得父节点值a(3,1),

iii)根据所获得的a(3,1)和k3中的下一节点值、即倒数第二节点级别的a(3,2)(其为树中与被认为处于前一级别处的前一相同父节点,即节点a(3,1),具有相同父节点,即根节点,的非叶节点),通过r=h(a(3,1)+a(3,2))获得根节点值r。

因此,树的根节点的值可被获得为:

r=h(h(a(2,1)+h(a(1,3)+a(1,4)))+a(3,2))。

4)对于与物件a4相对应的叶节点a(1,4)=x4=h(d4),验证密钥为k4={a(1,3),a(2,1),a(3,2)},可以经由(根据树中的节点排序以及树级联排序而执行的)以下步骤来检索根值r:

i)根据a(1,4)=x4和k4中的a(1,3)=x3,通过a(2,2)=h(a(1,3)+a(1,4))获得父节点值a(2,2),

ii)根据所获得的a(2,2)和k4中的下一节点值、即下一非叶节点级别的a(2,1),通过a(3,1)=h(a(2,1)+a(2,2))获得父节点值a(3,1),

iii)根据所获得的a(3,1)和k4中的下一节点值、即倒数第二节点级别的a(3,2),通过r=h(a(3,1)+a(3,2))获得根节点值r。

因此,树的根节点的值可被获得为:

r=h(h(a(2,1)+h(a(1,3)+a(1,4)))+a(3,2))。

5)对于与物件a5相对应的节点a(1,5)=x5=h(d5),验证密钥为k5={a(1,6),a(2,4),a(3,1)},可以经由(根据树中的节点排序以及树级联排序而执行的)以下步骤来检索根值r:

i)根据a(1,5)=x5和k5中的a(1,6)=x6,通过a(2,3)=h(a(1,5)+a(1,6))获得父节点值a(2,3),

ii)根据所获得的a(2,3)和k5中的下一节点值、即下一非叶节点级别的a(2,4),通过a(3,2)=h(a(2,3)+a(2,4))获得父节点值a(3,2),

iii)根据所获得的a(3,2)和k5中的下一节点值、即倒数第二节点级别的a(3,1),通过r=h(a(3,1)+a(3,2))获得根节点值r。

因此,树的根节点的值可被获得为:

r=h(a(3,1)+h(h(a(1,5)+a(1,6))+a(2,4)))。

6)对于与物件a6相对应的节点a(1,6)=x6=h(d6),验证密钥为k6={a(1,5),a(2,4),a(3,1)},可以经由(根据树中的节点排序以及树级联排序而执行的)以下步骤来检索根值r:

i)根据a(1,6)=x6和k6中的a(1,5)=x5,通过a(2,3)=h(a(1,5)+a(1,6))获得父节点值a(2,3),

ii)根据所获得的a(2,3)和k6中的下一节点值、即下一非叶节点级别的a(2,4),通过a(3,2)=h(a(2,3)+a(2,4))获得父节点值a(3,2),

iii)根据所获得的a(3,2)和k6中的下一节点值、即倒数第二节点级别的a(3,1),通过r=h(a(3,1)+a(3,2))获得根节点值r。

因此,树的根节点的值可被获得为:

r=h(a(3,1)+h(h(a(1,5)+a(1,6))+a(2,4)))。

7)对于与物件a7相对应的节点a(1,7)=x7=h(d7),验证密钥为k7={a(1,8),a(2,3),a(3,1)},可以经由(根据树中的节点排序以及树级联排序而执行的)以下步骤来检索根值r:

i)根据a(1,7)=x7和k7中的a(1,8)=x8,通过a(2,4)=h(a(1,7)+a(1,8))获得父节点值a(2,4),

ii)根据所获得的a(2,4)和k7中的下一节点值、即下一非叶节点级别的a(2,3),通过a(3,2)=h(a(2,3)+a(2,4))获得父节点值a(3,2),

iii)根据所获得的a(3,2)和k7中的下一节点值、即倒数第二节点级别的a(3,1),通过r=h(a(3,1)+a(3,2))获得根节点值r。

因此,树的根节点的值可被获得为:

r=h(a(3,1)+h(a(2,3)+h(a(1,7)+a(1,8))))。

8)对于与物件a8相对应的节点a(1,8)=x8=h(d8),验证密钥为k8={a(1,7),a(2,3),a(3,1)},可以经由(根据树中的节点排序以及树级联排序而执行的)以下步骤来检索根值r:

i)根据a(1,8)=x8和k8中的a(1,7)=x7,通过a(2,4)=h(a(1,7)+a(1,8))获得父节点值a(2,4),

ii)根据所获得的a(2,4)和k8中的下一节点值、即下一非叶节点级别的a(2,3),通过a(3,2)=h(a(2,3)+a(2,4))获得父节点值a(3,2),

iii)根据所获得的a(3,2)和k8中的下一节点值、即倒数第二节点级别的a(3,1),通过r=h(a(3,1)+a(3,2))获得根节点值r。

因此,树的根节点的值可被获得为:

r=h(a(3,1)+h(a(2,3)+h(a(1,7)+a(1,8))))。

一般地,对于通过从给定叶节点值以及与给定叶节点相关联的验证密钥中所指定的节点值开始检索(候选)根节点值,进行以下步骤:

-从验证密钥中的节点值序列提取树中与给定叶节点具有相同父节点的每个其它叶节点的节点值(即数字签名值),并计算给定节点值的级联的数字签名,并根据树中的节点排序以及树级联排序分别计算每个其它叶节点的提取节点值,因此获得给定叶节点的相同父节点的数字签名;

-在树中的各下一级别处依次地进行以下步骤直到倒数第二节点级别:

.从验证密钥中的节点值的序列提取树中与被认为处于前一梯级处的前一相同父节点具有相同父节点的每个其它非叶节点的节点值,以及

.根据树中的节点排序以及树级联排序来计算相应的每个其它非叶节点的节点值的级联的数字签名和所获得的前一相同父节点的数字签名,因此获得前一相同父节点的相同父节点的节点值;以及

-根据树中的节点排序以及树级联排序来计算与树的倒数第二节点级别相对应的非叶节点的所获得节点值的级联的数字签名,因此获得树的根节点的根数字签名。

从以上示例可以清楚地看出,根节点值r最终可以从任何给定叶节点值通过该叶节点值与仅相应验证密钥中所指定的节点值的级联的数字签名来检索到。因此,检索根节点值所需的验证信息中的数据量明显远低于(即仅基于叶节点值,通过计算树的中间级别的所有非叶节点值来)计算参考根节点值所需的数据量:考虑到安全标记(如二维条形码)上可用的有限大小的约束,这是本发明的优点。

根据本发明,物件批次中的数字文件ai的数字安全标记110包括验证信息vi,该验证信息允许通过在使该验证信息vi的数字表示的位大小维持在与传统读取器可以容易读取的二维机器可读条形码的数据内容兼容的级别处的同时,在ai的数字数据di与标记原始数字文件ai属于给定的真物件批次的事实之间提供唯一的、不可变的且防伪造的链接,从而允许对标记文件的真实性、其关联数据相对于真的标记文件的关联数据的一致性的在线和离线检查操作这两者:该验证信息包括物件数字数据di和相应验证密钥ki,vi=(di,ki)。检查操作包括通过首先读取数字文件ai的机器可读安全标记110上的数字数据di和相应数字验证密钥ki、然后通过所读取的数字数据di的单向函数来计算候选数字签名xi为xi=h(di)、并且根据数字验证密钥ki中所指示的节点值的序列从xi以及树的节点值的级联的数字签名中如上所述地计算候选根数字签名rc,从而检索批次值或与批次相关联的树的参考根数字签名r。与通过公共加密密钥-私有解密密钥的传统数据加密(例如,rsa“rivest-shamir-adleman”系统)相比,这种保护方案(其优点是无需数据加密,因此无需对加密/解密密钥的管理,特别地,在数字安全标记中不包括加密密钥)相对于破译攻击更加稳健。作为结果,根据本发明的数字安全标记中所要表示的数字数据的大小是紧凑的,并且允许使用传统2d条形码表示(例如,qr码)(对于打印就绪数字文件特别有用)以及因此允许使用传统条形码读取器(或者甚至仅仅是具有照相机的编程智能手机),同时提供非常高的抗破译攻击的稳健性级别。此外,这种安全标记与标记数字文件的真实性以及标记数字文件的数据相对于真的(原始)数字文件的数据的一致性的在线检查(经由与码读取器进行通信的服务器)和离线(经由编程码读取器)检查这两者兼容。另外,根据本发明,数字数据di的表示和密钥数据ki的表示可以不同,数据级联方案和/或单向函数可以取决于树中的节点级别,这提供了相对于破译攻击的额外稳健性水平。

优选地,为了进一步减小数字安全标记中所要包括的数字数据(即,验证信息v)的大小,如果批次中的相应原始数字文件ai的数字数据di散布在批次的所有数字文件所共通的给定字段之间,则与这些字段相关的数字数据不包括在各数字数据di中,而是聚集在与数字文件批次相关联的单独字段数据块fdb中,以及:

-然后利用相应数字数据di和字段数据块fdb中的数字数据的级联的单向函数h来计算批次中的原始数字文件ai的数字签名xi,即xi=h(di+fdb);以及

-使参考根数字签名r与关联字段数据块fdb一起对用户可用(这使得字段数据块也是不可变的)。

在本发明的变形中,与参考根数字签名无关地使字段数据块fdb对用户可访问。

在大多数情况下,可以进行上述的大小减小,因为与批次中的数字文件相关联的大多数数据是根据用于对数据进行结构化的一些字段来分类的:例如,对于与安全数字文件相关联的药品为指示“序列号”、“到期数据”等,仅与这些字段相关联的数据被包括在di中(例如,12603、2020年5月等),而字段“序列号”、“到期数据”等的共通名称被包括在字段数据块fdb中。

存在用于对信息进行编码的许多已知方法。任何此类方法可用于本发明的任何实施例的实现。标记的一种常见形式是众所周知的qr码(作为数字文件中所包括的2d图像的表示)。众所周知,对于给定区域,qr码能够编码的数据越多,其所具有的模组密度(大致为黑白“方块”的密度)越高,并且其进行打印和读取所需的分辨率越高。除了其密度(每平方的模组数)之外,qr码一般还根据其包括的纠错级别进行分类。目前,四种不同的标准“级别”、即l、m、q和h各自表示“损伤”的程度,即qr码图像可以承受并恢复的数据损失。级别l、m、q和h可以分别承受大致7%、15%、25%和30%的损伤。

下表示出针对不同qr码版本的至少近似值:

然而,并非所有位都可以用于对数据“负载”进行编码,这是因为一些模组用于扫描目标、掩模图案和纠错模组。因此,在qr码(或使用标记110的任何事物)可以编码的信息量与有多少信息被包括在验证信息v中并且必须编码之间存在折衷。

对于具有有限编码能力的选定类型的数字安全标记110(诸如qr码),也因此应选择合适的单向函数h:对于所需位而言输出太大的函数可能根本无法使用,并且范围太小的函数可能不够安全。此外,在许多应用中,可扩展性可能是问题。例如,一些数据安全方案涉及签名,该签名随着批次成员数量的增加而增长,并且从数字安全标记110可以编码的位数的角度来看,签名可能不允许地限制批次的大小。这就是为什么,根据本发明的优选模式,所选择的函数类型是sha-2族的单向哈希函数。

计算模块(未示出)优选地包括在保护系统内,以执行被提供用于进行计算以对批次中的原始数字文件的数字数据进行数字签名、用于确定不同数字文件的数字验证密钥、并且用于计算相应树的参考根数字签名的代码。保护系统还可以包括用于输入与虚拟数字文件av的数字数据dv相对应的(预编程)值的合适模块。还可以在外部(例如,在连接的远程服务器上)(例如,在制造数字文件的任何位置处)进行文件相关哈希计算,以避免在网络上从该场所(或多个场所)向保护系统发送原始数字数据di(如果这是问题的话)。对于各数字文件ai,相应验证信息vi被编译,并以某种形式的机器可读数字安全标记110进行编码(表示),该机器可读数字安全标记110继而被包括在相应物件中。

对于任何“虚拟”数字文件av,其相应验证信息vv=(dv,kv)可以通过保护系统与其在内部关联。验证信息一般至少包括针对数字文件批次中的任何数字文件ai的相应数字数据di和相应数字验证密钥ki:即,vi=(di,ki)。

附加数字数据还可以与数字文件相关联,并且可以例如包括批次值、即参考根数字签名r、或系统设计者(或系统管理员)选择包括的任何其它信息,诸如关联物品序列号、批次id、日期/时间信息、产品名称、指向其它的url、与单个物品相关联的在线信息(诸如物品或其标签或包装的图像)、或批次、或供应商/制造商、可以呼叫以进行验证的电话号码等。附加数字数据可被存储在用户(经由信息数据库接口)可访问的可搜索信息数据库中。

一旦原始数字文件ai的数字验证ki被计算出、并(即,经由编码或任何选定数据表示)与相应的数字数据di一起包括在数字文件ai的机器可读数字安全标记110中,所产生的标记原始数字文件及其关联数字数据实际上被保护以免受伪造和篡改。

然后,接收诸如a1等的数字文件的用户例如可以利用成像器(读取器)来扫描(或以其它方式读取)a1的数字安全标记,并提取数字数据d1和数字验证密钥k1(以及可能已编码为标记的任何其它信息)。为了对标记数字文件a1进行验证,用户必须首先从a1的数字安全标记110检索验证信息v1=(d1,k1),并因此根据所提取的数字数据d1计算数字签名x1:为了做到这一点,用户必须知道要用于计算数字签名的单向函数(这里是单向函数h())(例如,sha-256哈希),然后进行运算x1=h(d1)以获得计算相应候选根数字签名rc所需的全部数据(x1,k1)。例如,用户可以(例如,使用公钥/私钥对)安全地或者通过向数字文件提供者或已创建签名和密钥的任何实体请求单向函数、或者将单向函数编程在其成像器的用户处理单元中来接收单向函数。

接着,为了计算这种候选根数字签名rc,用户将需要进一步知道所要使用的(用于经由h(a(i,j)+a(i,k)来级联节点值的)数据级联方案的类型:用户可以(例如,使用公钥/私钥对)安全地或者仅通过向数字文件提供者或已创建签名和密钥的任何实体请求该信息或者将该信息编程在用户处理单元中,来以任何已知方式接收该信息。然而,级联方案实际上可以对应于分别与两个节点值相对应的两个数字数据块的仅传统的端到端联接:在这种情况下,不能向用户发送特定方案。在一些变形中,级联方案还可以插入可包含特定于树中的级联数字数据块的秩或级别的数据的级联块,其结果是使破译攻击甚至更困难。

在知道数据级联方案后,用户继而可以如上所述地通过根据验证密钥k1中所指定的节点序列对物件数字签名x1和节点值的级联逐步进行数字签名来(例如,经由适当编程的成像器)计算候选根数字签名rc,参见以上根据树中的节点排序和树级联顺序而执行的与节点a(1,1)相关的第1)项。这里,候选根数字签名被获得为(树中的节点排序由级别和级别中的秩的相应索引(i,j)给出):

rc=h(h(h(a(1,1)+a(1,2))+a(2,2))+a(3,2))

该计算出的候选根数字签名rc继而应等于可用的(或发布的)参考r值:该值可能是用户先前获取的和/或已存储在成像器的处理单元的存储器中,其还可以是接收者以任何已知方式从系统管理员请求并接收的值。如果候选rc和可用参考根数字签名r匹配,则该计算验证数字安全标记110中的信息,并确认为物件a1来自正确批次。

用以访问与数字文件a1相对应的批次的参考根数字签名r的链接可以包括在数字安全标记110(例如,如果可以在相应网站上检索到r,则为网址)中,尽管它不是优选变形。

然后,接收诸如a1等的数字文件的用户例如可以利用读取器来扫描(或以其它方式读取)a1的数字安全标记,并提取数字数据d1和数字验证密钥k1(以及可能已编码为数字安全标记的任何其它信息)。读取器的示例是具有显示器的计算机或者甚至是(可编程)智能手机。为了验证标记文件a1,用户必须首先从a1的数字安全标记检索验证信息v1=(d1,k1),并因此根据所提取的数字数据d1计算数字文件签名x1:为了做到这一点,用户必须知道要用于计算数字签名的单向函数(这里是哈希函数h()),然后进行运算x1=h(d1)以获得计算相应候选根数字签名bc所需的全部数据(x1,k1)。例如,用户可以(例如,使用公钥/私钥对)安全地、或者通过向数字文件提供者或已创建签名和密钥的任何实体请求该单向函数、或者将该单向函数编程在其成像器的用户处理单元中,来接收单向函数。

优选地,参考根数字签名(即,“批次值”)r被存储在用户通过其配备有通信单元的计算机(经由通信链路)可访问的可搜索根数据库中,智能手机的上述示例就是这种情况。必须验证数字文件a1的用户可以仅利用其智能手机、经由数据库的访问接口来向数据库的地址发送根请求,该请求包含在a1的数字安全标记110上所读取的数字数据d1(或者所计算出的数字签名x1=h(d1)),从而允许检索相应参考批次值r,并且访问接口将向智能手机返回参考根数字签名r。数据库可以通过区块链进行保护,以增强所存储的根数字签名的不可变性。本发明的优点是使物理物体、即存储器中所存储的原始数字文件与其属性、即关联数字数据及其属于特定数字文件批次之间的链接几乎不能通过相应的根数字签名改变。

数字文件ai的上述验证过程还可以用于对数字文件的相应打印版本上的ai的人类可读数据内容进行认证。实际上,用户可以在计算机的显示器上读取由计算机从数字文件ai中的数字安全标记解码的相应数字数据di,并在视觉上检查为所显示的信息与数字文件的打印版本上的打印数据一致。

在优选实施例中,数字数据di还包括与标记原始数字文件ai相关联的物体或个体的相应唯一物理特征的特征数字数据(cdd),该标记原始数字文件ai可用于通过将从数字安全标记提取的特征数字数据与从合适传感器获得的唯一物理特征的相应检测数据进行比较来(在实质上)对相关联物体或相关联个体进行认证。因此,在与数字文件ai中的唯一物理特征相对应的特征数字数据为cddi的情况下,相应唯一物理签名数据upsi可以通过cddi的编码(优选地通过单向函数)获得:例如,通过对特征数字数据cddi进行哈希处理获得,即upsi=h(cddi)。然而,作为替代可以使用任何其它已知编码:例如,为了具有短签名,可以使用椭圆曲线数字签名算法。作为说明性的、与同数字文件ai相关联的物体obji的唯一物理特征的特征数字数据相对应的非常简单的示例,我们仅考虑例如通过利用智能手机的照相机对物体obji(或obji上的特定区域)进行成像所获得的数字图像,相应的唯一物理签名数据upsi例如是数字图像的哈希,upsi=h(cddi)。生成了签名upsi的特征数字数据cddi是ai的参考特征数字数据,并且所获得的签名upsi是ai的相应参考唯一物理签名数据。优选地,upsi、即数字文件ai的参考唯一物理签名数据被存储在可搜索数据库或用户(例如,经由包含在数字文件ai中的数字安全标记上读取的数字数据di、或其相应数字文件签名xi的请求)可访问的区块链(或由区块链保护的数据库)中。因此,所存储的upsi获取不可变的字符。cddi的副本可以进一步存储在用户的智能手机(或读取器或计算机)的存储器中。在本实施例的变形中,upsi的副本也可以进一步存储在用户的智能手机(或读取器或计算机)的存储器中,以允许离线检查操作。

可以通过从数字文件ai中所包括的数字安全标记上(这里是利用智能手机上运行的解码应用)所读取的数字数据di中提取候选特征数字数据cddic、并将其与智能手机的存储器中所存储的参考特征数字数据cddi进行比较,来进行数字文件ai的真实性的检查:在匹配cddic=cddi的情况下,数字文件ai被认为是真的(其数字内容与真的标记原始数字文件相对应)。如果参考特征数字数据cddi未存储在智能手机的存储器中、而是参考唯一物理签名数据upsi被存储在智能手机的存储器中(与cdd相比具有占用少得多的存储器的优点),则仍然可以通过验证为通过计算从数字数据di提取的候选特征数字数据cddic的哈希值所获得的候选唯一物理签名数据upsic、即upsic=h(cddic)与存储器中所存储的参考唯一物理签名数据upsi匹配来检查ai的真实性。

用户还可以通过利用能够进行这种测量的传感器(这里为智能手机的照相机)检测与数字文件ai相关联的物体或个体上的唯一物理特征、并从所检测到的特征(这里为智能手机所拍摄的数字图像)中获得候选特征数字数据cddic,经由离线(自验证)处理来检查所接收到的数字文件ai的真实性。然后,用户可以(经由其智能手机的图像处理单元,或在视觉上在智能手机的显示器上)将所获得的cddic与(智能手机的存储器中所存储的)参考cddi的副本进行比较:在“合理”匹配cddic≈cddi(即,两个数字数据在给定的容差或相似性标准内一致)的情况下,数字文件ai被认为是真的(即,其数字内容与真的标记原始数字文件的数字内容相对应)。

此外,用户还可以根据智能手机的存储器中所存储的参考cddi的副本将相应候选唯一物理签名数据进一步计算为upsic=h(cddi),并将其与智能手机的存储器中所存储的参考物理签名数据upsi进行比较:在匹配upsic=upsi的情况下,数字文件以甚至更高的置信度被认为是真的(这是因为仅一位差就足以导致不匹配)。此外,在匹配的情况下,与ai相关联的数字数据di(如以上通过从ai中的数字安全标记中所存储的读取验证信息(di,ki)中检索相应批次值r所解释的,该数字数据di已被验证为与真正数字文件的数字数据相对应)也得到认证。

在本实施例的变形中,用户对数字文件ai的真实性的检查可以经由在线处理来进行。在这种情况下,参考数据、即特征数字数据cddi和/或参考唯一物理签名数据upsi被存储在用户可访问的可搜索数据库中,其中,与数字文件ai相关的参考数据分别与相应数字数据di(包括在ai中的数字安全标记中)或相应数字文件签名xi(一旦经由运算xi=h(di)从数字安全标记中提取出数据di,用户就可以计算出该数字文件签名xi)相关联地存储:可以通过向数据库发送分别包含di或xi的查询来请求参考数据。

保护物体的传统方法是在其上应用基于材料的安全标记(可以是防篡改的)、即具有很难(如果不是不可能的话)复制的可检测固有物理或化学属性的标记。如果适当的传感器在标记上检测到该固有属性性质,则该标记继而以高置信度被认为是真的,因此也是相应的标记物体。存在这种已知的认证固有属性的许多示例:标记可以包括一些粒子(可能是随机分散的),或具有特定分层结构,该分层结构具有可在利用特定光谱内容的“光”的特定照射条件下检测到的固有光学反射或透射或吸收或甚至发射(发光,例如偏振或衍射或干涉…)属性。这种固有属性可能是由于标记的材料的特定化学组成导致的:例如,发光颜料(可能不是市售的)可以分散在用于在物体上打印某种图案的油墨中,并且用于在利用特定光(例如,利用uv光谱范围内的光)的照射下(例如,在红外范围内的光谱窗口中)发射特定光。这例如用于保护纸币的安全。可以使用其它固有属性:例如,标记中的发光粒子在利用适当的激发光脉冲照射后可能具有特定的发光发射衰减时间。其它类型的固有属性是所包括的粒子的磁性属性,或者甚至是物体本身的“指纹”属性,诸如证件的纸张基底的固有随机分散纤维在该证件的给定区域中的相对定位,该给定区域在以足够的分辨率观察时可用于提取物体上所打印的数据的唯一特征签名或一些随机打印制品,该随机打印制品在以足够的倍率观察时也可以得到唯一签名等…。物体的固有指纹属性的主要问题是其相对于老化或磨损的稳健性。然而,基于材料的安全标记并不总是允许还保护与标记物体相关联的数据:例如,即使证件被标记有基于材料的安全标记(例如在证件的某个区域中打印有安全油墨的徽标),也仍然可以对该证件的其余部分上所打印的数据进行造假。此外,太复杂的认证签名通常需要涉及外部数据库以及用于查询此类数据库的通信链路的大量存储能力,使得无法对物体进行离线认证。根据本发明,通过基于材料的安全标记进行标记并且与(数字)标记的数字文件相关联的物体被纠缠保护,这是由于如下的事实导致:与标记物体的唯一物理特征相对应的特征数字数据或其相应的唯一物理签名数据不可变地(由于在区块链中发布或存储了聚合数字签名)且防伪地与作为相关联数字文件的一部分的数字安全标记中的数字数据相链接。因此,本发明可以用于保护物体批次以及相应的相关联数字文件批次这两者。

当然,可以使用任何其它已知的固有物理/化学属性来获得与同数字文件ai相关联的物体obji的唯一物理特征有关的特征数字数据cddi、以及相应的唯一物理签名数据upsi。作为另一说明性示例,可以利用具有其特征衰减时间常数以及其光激发波长窗口和其发光发射波长窗口的发光颜料来打印在物体上形成基于材料的安全标记的2d条形码:结果是具有用作油墨的材料“指纹”的特定参考衰减时间值τ的油墨。利用覆盖颜料激发波长窗口的照射波长窗口内的激发光照射条形码、并且利用能够检测发光发射波长窗口内的光强度的传感器收集从条形码产生的发光以对条形码以及因此物体进行认证就足够了。例如,用户的读取器可以配备有能够将激发光递送到条形码的闪光灯、能够从条形码收集(检测时间间隔内的)相应发光强度分布i(t)的光电二极管、以及被编程为根据所收集的强度分布i(t)来计算衰减时间值的读取器的cpu。例如,激发波长窗口可以在uv(紫外)波段内,并且发射波长窗口可以在ir(红外)波段内。在验证物体期间在用户的成像器所收集到的发光强度表现出与候选衰减时间τc相对应的随时间的特征衰减的情况下,如果τc≈τ(在给定的容差范围内),则墨水以及因此物体被认为是真的。在这种情况下,标记物体obji的特征数字数据cddi至少包括参考衰减时间值τ(以及可能的与激发波长窗口和发射波长窗口相关的数据)。从以上示例可以清楚地看出,在相关联数字文件ai的数字安全标记的验证信息中包括参考(唯一)特征数字数据具有提供数字文件的数字数据与其相关联物体的认证数据之间的防伪链接的技术效果。

本发明的另一说明性实施例涉及生物识别证件(例如,生物识别数字护照)的批次,如图2a所示。作为数字文件的各数字护照与相应的个体(即,护照的所有者)相关联。为了清楚起见,在图2a中,a1的数字数据被表示为等效文本和字母数字信息(即,人类可读),例如,其可以从数字pdf(“便携文档格式”)文件中显示,并且数字安全标记被示出为等效的传统qr码二维图案。本发明的该实施例对于创建例如打印就绪数字文件等的可打印数字文件以允许打印机直接从相应的安全可打印数字文件(例如,与身份证件、凭证、合同等相关的数字文件)递送打印安全证件特别有用。

在本示例中,我们仍然使用哈希函数作为用于对护照数字数据进行签名的单向函数,考虑到其众所周知的稳健性,优选为sha-256哈希函数。实际上,考虑到批次的给定大小,为了对护照数字数据进行签名而选择(具有其已知的桶列表)的哈希函数因此是单向加密函数的示例,使得每个不同的数字护照具有其不同的数字护照签名,从而使签名是唯一的。由于哈希函数的域(即,可能密钥的集合)大于其范围(即,不同表索引的数量),因此其将把多个不同密钥映射到同一索引,这可能导致冲突:当批次的大小已知时,可以通过考虑与哈希函数的哈希表相关联的桶列表并仅保留给出零冲突的函数、或者通过单独地选择哈希表冲突解决方案(诸如联合哈希法、疯狂哈希法或跳房子哈希法),来避免这种冲突。

图2a示出利用数字生物识别护照a1中所编码的机器可读数字安全标记210(这里为qr码)进行保护、并且包括护照数字数据230的数字生物识别护照a1的示例,其中护照数字数据230包含传统护照数据,例如,表示证件的标题的数字数据230a(“护照”)、护照的所有者的档案数据集230b(姓(“doe”)、名(“john”)、性别(“m”)、出生日期(“1975年3月20日”)、国籍(“usa”)、原籍(“desmoines”)、出生地(“oakland”))、护照的签发日期230c(“2018年2月24日”)、以及有效期230d(“2020年2月23日”)。这些护照数字数据还可以包括发放护照的当局所指派的一些(唯一)序列号235(这里为“12345”)。护照数字数据还包括护照所有者的生物识别数据,作为与同数字护照相关联的个体的唯一物理特征相对应的特征数字数据(cdd)。表征与生物识别数据相对应的唯一物理特征(未示出)的数据的机器可读表示230e(例如,字母数字表示)与护照数字数据230相关联。从广义上理解数字数据的表示:这种数据表示只需要能够检索原始数字数据。唯一物理特征的机器可读数据表示230e、即生物识别数据可以例如与数字护照的所有者的指纹识别数据或虹膜识别数据相对应。例如,与个人的指纹相对应的生物识别数据230e可能由对例如脊末端、分叉和短脊(根据传统的亨利分类系统)等的指纹脊的特定细节特征集的分析得出。

因此,对于μ个发放数字生物识别护照的批次中的数字护照aj(这里μ=1024),关联护照数字数据dj包括上述的数字数据230a至230e。在本实施例的变形中,关联护照数字数据dj只能包括所有发放护照所共通的字段的值,而共通字段、即“护照”、“姓”、“性别”、“出生日期”、“国籍”、“原籍”、“出生地”、“签发日期”和“有效期”被包括在单独的字段数据块fdb中,如上文所述:例如,d1仅包含字段值“doe”、“john”、“m”、“1975年3月20日”、“usa”、“desmoines”、“oakland”、“2018年2月24日”和“2020年2月23日”的表示。

优选地,附加护照数字数据与上述的护照数字数据230相关联。例如,护照所有者的指纹图案的数字图像或数字身份照片等。在本实施例的变形中,这些附加护照数字数据被存储在可搜索信息数据库250中,该可搜索信息数据库250可以经由包含一些护照数据的信息请求(例如,所有者的姓名或生物识别数据或来自安全标记或唯一序列号235的数据)来搜索以检索相应的指纹图案数据并接收回该指纹图案数据。优选地,在数字护照中包括到信息数据库250的链接,作为信息访问数据240:这里,这种信息访问数据以包含参考索引的qr码的数字表示进行编码,以检索信息数据库250中的相应附加数据。然而,在涉及访问远程信息数据库的护照管制操作(在线操作)的变形中,qr码可以例如包含经由web可访问的信息数据库的url。

然后通过例如上述的稳健sha-256哈希函数来计算利用数字护照aj的护照数字数据230a至230e相对应的护照数字数据dj的单向哈希函数的数字护照签名,以获得相应的(唯一)护照数字签名xj=h(dj)。以相同的方式,计算针对所有不同所有者的批次中的所有数字护照的护照数字签名。

从批次中的护照的所有签名中,根据关联(二元)树的树排序和树级联排序来计算参考根数字签名r,如上文所述。由于批次中存在μ=1024个护照,因此相应的二元树对于第一级别具有1024个叶节点a(1,1),…,a(1024),对于第二级别具有512个非叶节点a(2,1),…,a(2,512),对于第三级别具有256个非叶节点a(3,1),…,a(3,256)等等,直到具有非叶节点a(10,1)和a(10,2)的倒数第二节点级别(这里为级别10)以及与根节点r(树的级别11)相对应的最高节点。叶节点值为a(1,j)=xj=h(dj),j=1,…,1024,第二级节点值为a(2,1)=h(a(1,1)+a(1,2)),….,a(2,512)=h(a(1,1023)+a(1,1024))等等,以及参考根数字签名r为r=h(a(10,1)+a(10,2))。因此,各数字验证密钥kj是10个节点值的序列。数字护照aj的数字安全标记210包括护照数字数据dj和相应的数字验证密钥kj(即验证信息vj=(dj,kj))。

检查为生物识别数字护照aj的数字安全标记210中的护照数字数据dj和数字验证密钥kj确实与属于具有批次值r的μ个生物识别数字护照的批次的真的生物识别数字护照的护照数据相对应的操作只需计算护照数字签名xj=h(dj),并且验证为xj和数字验证密钥kj允许(利用传统级联方案根据二元树中的节点排序以及树级联排序)经由节点值a(1,j)和kj中的节点值的级联的哈希函数的10倍(因为这里,树在根级别以下具有10个级别)的组成来检索可用的相应参考根数字签名r。因此,根据本发明进行保护的生物识别数字护照既提供了其持有者的“个人数据”和“生物识别数据”之间的防伪链接,又提供了持有者的自然人和持有者的身份之间的唯一且防伪的链接。

图2b示出图2a的安全生物识别数字护照a1的管制处理,其中该安全生物识别数字护照a1的护照数据标记230与某个johndoe相对应,其生物识别数据230e与johndoe的指纹相对应,以及附加护照数字数据与johndoe的数字身份照片255相对应,该数字身份照片可经由信息访问标记240中所包括的到信息数据库250的链接来访问。护照数据还包括由发放护照的当局指派的唯一序列号235。护照a1的数字安全标记210包含验证信息(d1,k1),其中护照数字数据d1与打印护照数据230a至230d、生物识别数据230e和唯一序列号235相对应,并且数字验证密钥k1与10个节点值{a(1,2),a(2,2),…,a(10,2)}的序列相对应,该10个节点值是从数字护照a1的节点值a(1,1)中检索根值r所必需的(其中a(1,1)=x1=h(d1))。参考根数字签名r可以是时间戳记的,并存储在区块链260中。在该示例中,该批次中的生物识别护照的相应持有者的生物识别数据230e也分别与其相应的唯一序列号相关联(以使这些数据不可变)地存储在区块链260中。可以通过向区块链260发送指示johndoe的护照上所提及的唯一序列号235的请求来检索他的存储生物识别数据。负责管制人的身份的当局(例如,警察、海关等)可以经由通信链路来访问区块链260,并且在本说明性实施例中,还具有用于存储所有发放生物识别数字护照批次的(已发布)根数字签名的本地存储能力。在图2b所示的示例中,信息数据库250是本地的(即,当局可直接访问,而不必使用公共通信网络)。此外,这些当局配备了指纹扫描器270,以捕获个体的指纹并计算表征所捕获指纹的数据(即,生物识别数据230e)的相应机器可读表示。

在例如警察或海关官员对johndoe的身份管制期间,该官员接收johndoe的安全生物识别数字护照a1,并通过适当的读取器(其可以例如是适当编程的计算机290,该计算机连接到本地存储能力250)读取和解码数字护照的数字安全标记210中所存储的验证信息(d1,k1)。在读取了护照数字数据d1和赎罪验证密钥k1并将其发送给计算机290之后,计算机290上运行的专门应用(具有编程的哈希函数h和节点值的级联)计算护照数字签名x1(为x1=h(d1))和候选批次值rc为:

h(h(h(h(h(h(h(h(h(h(a(1,1)+a(1,2))+a(2,2))+..)+..)+..)+..)+..)+..)+a(9,2))+a(10,2)),

即,节点a(1,1)和k1={a(1,2),a(2,2),…,a(10,2)}中的节点值的级联的哈希函数的10倍的组成。然后,计算机例如可以在本地信息数据库250中搜索与候选值rc匹配的参考根数字签名r:在没有匹配的情况下,护照是伪造的,并且“johndoe”(即,声称他的名字是johndoe的筛查个体)可能被逮捕。在rc与某个存储的参考根数字签名匹配的情况下,护照被认为是真的,并且官员可以进行附加安全检查:

-官员通过经由计算机290发送包含a1上所打印的序列号235的请求来检索信息数据库250中所存储的数字身份照片255,接收回该照片,并将接收到的身份照片255显示在计算机290的画面上:然后,官员可以在视觉上将所显示的面貌(即,某位johndoe的图像)与正检查的个体的面貌进行比较,并估计这两个面貌是否相似;以及

-官员通过利用计算机290在数字安全标记210上读取生物识别数据230e来检索护照a1上的生物识别数据230e,并通过连接到计算机290的指纹扫描器270来扫描个体的指纹并获得相应的个体生物识别数据:官员然后通过计算机290上运行的程序来检查所检索到的生物识别数据230e是否与所获得的个体生物识别数据相似(在给定误差范围内)。

如果两个面貌和生物识别数据被判断为相似,则一切都是正确的,并且被检查个体确实是真正的johndoe、即真的生物识别护照a1的所有者。

在以上附加安全检查中的任一个失败的情况下,显然,官员面前的个体不是真的生物识别护照a1的真正持有者。因此,利用根据本发明的安全生物识别护照,仅离线检查就可以很快地检测出任何欺诈。

事实上,甚至可以将数字生物识别护照证件缩减至仅具有包括验证信息v=(d,k)的2d条形码(例如上述qr码的示例)的数字表示的纯数字文件:其中v包括持有者的档案数据和(唯一)生物识别数据,例如持有者的指纹(在护照数字数据d内)以及验证码密钥等。实际上,根据本发明,即使是这种“缩减的”安全数字护照也充分利用护照持有者的“个人档案数据”和“生物识别数据”之间所创建的上述防伪链接、以及持有者的自然人与持有者的身份之间的唯一且防伪的链接。

本发明的另一说明性实施例涉及飞机的组件,如图3所示。由于故障可能影响飞机安全的某些关键组件(例如,反应器(例如,涡轮叶片、泵…)或起落架的一些部件、或电池等)的价格很高,假冒者有兴趣生产这些组件的复制品,但当然不符合所需安全技术要求,因为它们的质量一般较低。即使飞机组件一般标记有相应的唯一序列号来识别该飞机,这种标记也很容易被假冒。这些假冒的飞机部件一般是有缺陷的,并且可能造成严重的损坏或甚至飞机坠毁。这是当今日益严重的安全问题。此外,即使这些组件是真的,它们也可能不方便用于同一类型飞机的某些版本,并且存在不小心使用不适当的组件来修理例如给定飞机的严重风险。因此,重要的是至少保护针对给定飞机所允许的关键真正组件的安全。

一般地,各组件具有相应的(可能是数字的)技术数据表,该技术数据表例如指示组件技术名称、组件唯一序列号、组件制造商名称、组件的制造日期以及证明信息。此外,对于给定飞机,相应记录包含其相应组件的所有(数字)技术数据表。然而,假冒组件可能具有其相应的假数字技术数据表,因此,检测欺诈不是显而易见的(除非进行例如技术测试)。例如,如何确保数字技术数据表很好地与特定飞机上所安装的组件相对应(并且反之亦然)?

根据本发明的说明性实施例,要用于制造或修理给定飞机或安装在飞机上的允许部件被视为属于该飞机的“组件”(或“物体”)批次。

在图3所示的具体说明性实施例中,飞机批次中的各组件、即用于安装在给定飞机上或对给定飞机进行修理的各允许飞机组件具有相应的飞机组件数字识别证件ac-id,该飞机组件数字识别证件ac-id包含与传统技术数据表中相同的组件数字数据(例如,飞机id码、飞机制造商名称、组件技术名称、组件唯一序列号、组件制造商名称、以及组件的制造日期)以及与飞机id码、飞机制造商名称、飞机上的组件的组装日期、负责进行一致性检查的技术人员的姓名相对应的附加数字数据以及一致性检查的日期和检查者的相应(唯一)数字签名。此外,各飞机组件数字识别证件ac-id通过添加到该ac-id的机器可读数字安全标记加以保护。为清楚起见,在图3中,ac-id:a125的数字数据被表示为等效的文本和字母数字信息(即,人类可读),并且数字安全标记310被示出为等效的传统qr码二维图案。

优选地,每次更换飞机上的组件或组件集时,利用上述的(与新的安装操作相关的)相应附加数字数据来创建相应的安全数字ac-id证件并且还创建飞机批次的相应更新版本。

因此,特定飞机(这里具有飞机id参考hb-sno)上的所有(关键)安装组件属于相应的安装组件批次(这里,总共有μ个组件),并被记录在相关联的μ个数字文件的相应批次、即数字识别证件ac-id中。数字安全标记310(这里采用qr码的形式)被包括在与飞机hb-sno上所安装的相应飞机组件(这里为a125)相关联的各飞机组件数字识别证件(例如ac-id:a125)中。图3特别地示出飞机批次的组件a125是适于飞机hb-sno上所安装的反应器类型并且标记有唯一的制造序列号(这里为12781,一般由制造商镌刻)的涡轮叶片。与组件a125相关联的飞机组件数字识别证件ac-id:a125的数字安全标记310中的组件数字数据d125包括与技术数据表的数字数据相对应的数字数据:飞机id码330a(这里为hb-sno)、飞机制造商名称330b(这里为aeroabc)、组件技术名称330c(这里为涡轮叶片-第1环)、组件序列号330d(这里为12781)、组件制造商名称330e(这里为pcx)、组件的制造日期330f(这里为2017年11月13日)、反应器上的组件的组装日期330g(这里为2018年2月24日)、负责进行一致性检查的技术人员的姓名330h(这里,检查者是martinwhite)以及一致性检查的日期330i(这里为2018年3月20日)和检查者的(唯一)数字签名330j(这里为2w9s02u)。

组件a125的数字文件ac-id:a125的组件数字数据d125的组件数字签名x125通过单向哈希函数h而被计算为x125=h(d125)。以相同的方式,组件ai的组件数字数据di的所有组件数字签名xi通过单向哈希函数h而被计算为xi=h(di)(这里,i=1,…,μ)。根据本发明,建立了与组件a1,…,aμ的批次相关联、并因此与数字文件ac-id:a1,…,ac-id:aμ的相应批次相关联的树(这里为二元树),其具有分别与组件a1,…,aμ的组件数字识别证件ac-id:a1,…,ac-id:aμ的相应组件数字数据d1,…,dμ的μ个组件数字签名x1,…,xμ相对应的μ个叶节点a(1,1),…,a(1,μ)。这里,二元树的节点排序是传统的,即节点a(i,j)根据索引(i,j)的值排列:索引i指示树中的级别(从叶节点级别(i=1)开始到根节点以下的倒数第二节点级别),以及索引j对于叶节点级别(级别1)为1至μ,对于下一(非叶)节点级别(级别2)为1至μ/2等等,并且对于倒数第二节点级别为1至2。树包括从叶节点到根节点的节点级别,树的每个非叶节点根据树级联排序通过其子节点的相应数字签名的级联的单向函数h而与数字签名相对应。

针对μ个飞机组件a1,…aμ的批次的参考根数字签名r是通过树的节点值的(传统)级联的单向函数来计算的(如下所述)。然后,参考根数字签名r被存储在负责控制或更换所安装的组件的技术人员可访问的可搜索数据库(优选为区块链)中。因此,树包括从树的叶节点到根节点的节点级别,树的每个非叶节点根据树级联排序(这里为传统的)通过其(两个)子节点的相应数字签名的级联的单向函数h而与数字签名相对应,根节点(根据树中的节点排序和树级联排序)通过树中的倒数第二节点级别的节点的数字签名的级联的单向函数h而与参考根数字签名r、即数字签名相对应。

对于批次中的给定组件ai,与组件数字数据di的组件数字签名xi(即,叶节点a(1,i))相对应的数字验证密钥ki被计算为从树的叶节点级别到倒数第二节点级别的在树中与同数字签名xi相对应的叶节点a(1,i)具有相同父节点的每个其它叶节点、以及依次处于树中的各下一级别处的在树中与被认为处于前一级别处的前一相同父节点具有相同父节点的每个非叶节点的相应数字签名的序列。对于飞机hb-sno上所安装的各组件ai,关联组件数字数据di和相应数字验证密钥ki被嵌入在相应飞机组件数字识别证件ac-id:ai中所包括的数字安全标记310中。

例如,在飞机hb-sno上的组件的控制操作的情况下,技术人员可以向可搜索数据库发送包含在要控制的组件a125的数字文件ac-id:a125上读取的组件序列号12781或者如利用适当的读取器(例如,作为被编程用于对数字安全标记的内容进行解码的计算机)在相应ac-id:a125证件的数字安全标记310上读取的数字验证密钥k125的请求,并且将接收回相应的批次值r。然而,在允许完全离线检查的优选变形中,技术人员的计算机具有用于存储与要控制的飞机相关的所有根数字签名的存储器。在后一种变形中,技术人员然后可以通过读取ac-id:a125的数字安全标记310上的组件数字数据d125、检查为从d125提取的唯一序列号330d(这里为12781)与在所安装的飞机组件a125上物理标记的序列号相匹配、(例如,通过在根据所读取的数字数据d125来计算签名x125=h(d125)的计算机的处理单元即cpu上运行编程应用)计算相应的组件数字签名x125、经由在计算机的cpu上被编程为叶节点值a(1,125)=x125和相应数字验证密钥k125中给定的节点值的级联的哈希值的单向函数h来计算候选批次值rc、并且检查为候选批次值rc与计算机的存储器中所存储的参考根数字签名其中之一(即参考值r,与飞机hb-sno相对应)相匹配,来检查组件是否是真的。在完全匹配(即,序列号匹配,并且rc=r)的情况下,组件a125被认为是真的,并且属于hb-sno飞机的允许组件的(最近)飞机批次,如果rc与所存储的参考根数字签名r不匹配,或者如果序列号不匹配,则组件a125可能是假冒的,或者是不被允许用于飞机hb-sno的真正组件(例如,a125不属于该飞机的正确批次),并且必须更改。

以相同的方式,本发明将允许通过验证存储部件上的标记的真实性并检查为数字安全标记中的组件序列号与相应组件上的标记相匹配,来检测仓库中所存储的替换部件的安全ac-id批次中的欺诈(或错误)。在高度关键组件的情况下,还可以对组件应用防篡改的基于材料的安全标记,同时优选使该标记的(例如,由合适的传感器在应用基于材料的安全标记时捕获的)与相应参考唯一物理特征相关的数字数据、即特征数字数据cdd是该组件的飞机组件数字识别证件的数字安全标记中的组件数字数据d的一部分,并且相应的参考唯一物理签名数据ups(例如,通过取特征数字数据cdd的哈希值,即ups=h(cdd))被计算出,并且也可以是组件数字数据d的一部分。这种附加安全级别提高了其制造商在组件上标记的唯一序列号所提供的安全性。优选地,参考upc和ups被存储在区块链中(以使它们不可变),并且可供技术人员访问。此外,这些参考值还可以进一步存储在技术人员的计算机的存储器中,以允许对高度关键组件上的基于材料的安全标记进行离线认证。

对这种基于材料的安全标记进行认证的进一步离线操作可以包括通过连接到计算机的合适传感器来测量组件上的唯一物理特征,并且(例如,经由计算机的cpu中所编程的特定应用来)从测量到的特征获得候选特征数字数据cddc。然后,技术人员(或其计算机的cpu,如果适当编程的话)将所获得的cddc与计算机的存储器中所存储的参考cdd的副本进行比较:在“合理”匹配cddc≈cdd的情况下(即,在某个预定义的容错标准内),基于材料的安全标记以及因此组件被认为是真的。

如上所述,代替被存储在技术人员的计算机的存储器中,参考特征数字数据cdd的副本是组件的飞机组件数字识别证件ac-id:a中的数字安全标记内所包括的数字数据d的一部分,并且可以通过直接读取数字安全标记而获得。然后,技术人员可以读取数字安全标记上的候选cddc,并检查为计算机的存储器中所存储的签名ups与通过计算upsc=h(cddc)而从所读取的候选cddc计算出的候选签名upsc相匹配:在匹配upsc=ups的情况下,基于材料的安全标记以及因此组件被确认为真的。

在本实施例的变形中,技术人员对组件的真实性的检查可以可选地经由在线处理、以与本发明的第一详细实施例中所述类似的方式进行,并且这里将不重复说明。

根据本发明,还可以验证飞机组件数字识别证件ac-id:a125的副本例如相对于原始安全数字文件的真实性。实际上,如果负责控制(或维修)操作的技术人员能够访问其计算机(其例如可以是适当编程的智能手机)上的数字文件ac-id:a125,则他可以通过进行以下操作来检查为组件数字数据与原始证件的数字数据相对应:

-读取组件数字识别证件ac-id:a125的数字安全标记310上的组件数字数据d125和数字验证密钥k125;

-获取与证件ac-id:a125相对应的批次的参考批次值r:该参考值可能已经在计算机的存储器中,或者在该计算机配备有通信单元的情况下可以通过发送例如包含数字安全标记310中所读取的组件(唯一)序列号或仅密钥k125的请求并接收回相应的参考批次值r、经由通信链路从存储飞机组件数字识别证件的参考批次值的数据库中获取;

-(利用编程的单向函数h)从所读取的组件数字数据d125中计算组件数字签名,x125=h(d125);

-(利用编程的单向哈希函数h以及数字签名的级联的数字签名)通过(根据树中的节点排序以及树级联排序的)叶节点值x125和数字验证密钥k125中所指示的节点值的级联的哈希函数h来计算候选批次值rc为数字签名;以及

-验证为候选批次值rc与参考批次值r相匹配。

根据以上详细说明,本发明清楚地与用于验证安全数字文件的真实性或安全数字文件的副本的数据相对于与原始安全数字文件相关联的数据的一致性的离线和本地检查操作兼容。然而,本发明还可例如通过以下操作来与在线验证处理兼容:(经由通信链路)从外部源(例如,服务器或区块链)接收参考批次值(或根数字签名);或者经由外部计算部件来进行涉及单向函数或数字签名的级联的部分或全部计算步骤(例如,在服务器上操作);或者甚至进行候选根数字签名与参考根数字签名相匹配的验证(并且仅接收结果)。

以上公开的主题被认为是说明性的,而不是限制性的,并且用于提供对独立权利要求所限定的本发明的更好理解。

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