首页 / 专利库 / 资料储存系统 / 分布式账本 / 一种文件签名处理系统

一种文件签名处理系统

阅读:294发布:2020-05-22

专利汇可以提供一种文件签名处理系统专利检索,专利查询,专利分析的服务。并且本 发明 实施例 提供了一种文件签名处理系统。该系统包括:签名设备和签名验证设备;签名设备,用于确定待进行数字签名的目标文件,计算目标文件的第一信息 摘要 值;获得签名者的第一私钥和第一公钥;利用第一私钥对第一信息摘要值进行加密计算,得到第一数字签名;将第一数字签名、第一信息摘要值和第一公钥对应存储至 区 块 链 分布式账本 中;签名验证设备,用于当接收到验证指令时,计算目标文件的第二信息摘要值;判断区块链分布式账本中是否存在第二信息摘要值;若否,确定目标文件被篡改。这样,可以将数字签名存储至区块链分布式账本中,从而确保数字签名的有效性,提高了数据的安全性。并可以对数字签名进行验证,从而可以验证文件是否被篡改。,下面是一种文件签名处理系统专利的具体信息内容。

1.一种文件签名处理系统,其特征在于,所述系统包括:签名设备和签名验证设备;
所述签名设备用于:确定待进行数字签名的目标文件,并根据预设的信息摘要算法计算所述目标文件的第一信息摘要值;获得要对所述目标文件进行数字签名的签名者的第一私钥和第一公钥;利用所述第一私钥对所述第一信息摘要值进行加密计算,得到所述签名者的第一数字签名;将所述第一数字签名、所述第一信息摘要值和所述第一公钥对应存储至分布式账本中;
所述签名验证设备用于:当接收到针对所述目标文件的数字签名的验证指令时,根据所述信息摘要算法计算所述目标文件的第二信息摘要值;判断所述区块链分布式账本中是否存在所述第二信息摘要值;若不存在,确定所述目标文件被篡改。
2.根据权利要求1所述的系统,其特征在于,所述签名设备还用于:
在将所述第一数字签名、所述第一信息摘要值和所述第一公钥对应存储至区块链分布式账本中之后,在所述目标文件中写入签名标记;其中,所述签名标记中携带有所述第一公钥;
所述签名验证设备还用于:当所述区块链分布式账本中存在所述第二信息摘要值时,判断所述区块链分布式账本中与所述第二信息摘要值对应存储的第二公钥是否与所述签名标记中携带的所述第一公钥匹配;若不匹配,确定所述目标文件被篡改。
3.根据权利要求2所述的系统,其特征在于,所述签名验证设备还用于:
若与所述第二信息摘要值对应存储的第二公钥与所述签名标记中携带的所述第一公钥匹配,利用所述第二公钥对所述区块链分布式账本中与所述第二信息摘要值对应存储的第二数字签名进行解密;若解密失败,确定所述目标文件被篡改。
4.根据权利要求3所述的系统,其特征在于,所述签名验证设备还用于:
若解密成功,判断解密得到的第三信息摘要值是否与所述第二信息摘要值相同;若相同,确定所述目标文件未被篡改;若不相同,确定所述目标文件被篡改。
5.根据权利要求2所述的系统,其特征在于,所述签名标记中还携带有所述第一信息摘要值、所述第一数字签名的签名时间和所述签名者的身份标识中的至少一项。
6.根据权利要求5所述的系统,其特征在于,当所述签名标记中携带有所述第一摘要信息值时,所述签名验证设备具体用于:
在根据所述信息摘要算法计算所述目标文件的第二信息摘要值之后,确定所述签名标记中携带的第一信息摘要值是否与所述第二信息摘要值相等;若相等,判断所述区块链分布式账本中是否存在所述第二信息摘要值;若不相等,确定所述目标文件被篡改。
7.根据权利要求5所述的系统,其特征在于,当所述签名标记中携带有所述第一数字签名的签名时间时,所述签名验证设备具体用于:
当所述区块链分布式账本中存在所述第二信息摘要值时,确定所述区块链分布式账本中所存储的第二信息摘要值所对应的存储时间戳;判断所述存储时间戳与签名时间的时间间隔是否小于预设阈值;若大于等于预设阈值,则确定所述目标文件被篡改;若小于预设阈值,判断所述区块链分布式账本中与所述第二信息摘要值对应存储的第二公钥是否与所述签名标记中携带的所述第一公钥匹配。
8.根据权利要求5所述的系统,其特征在于,当所述签名标记中携带有所述签名者的身份标识时,所述签名验证设备具体用于:
当接收到针对所述目标文件的数字签名的验证指令时,向用户展示所述身份标识;当用户对所述身份标识进行确认之后,根据所述信息摘要算法计算所述目标文件的第二信息摘要值;当用户对所述身份标识进行否认时,确定所述目标文件被篡改。
9.根据权利要求1-8中任一项所述的系统,其特征在于,所述签名设备具体用于:
从区块链私钥公钥对存储软件中,加载要对所述目标文件进行数字签名的签名者的私钥加密文件和第一公钥;
利用用户输入的解密密钥对所述私钥加密文件进行解密,得到所述第一公钥对应的第一私钥。
10.根据权利要求1-8中任一项所述的系统,其特征在于,所述签名设备具体用于:
调用区块链私钥公钥对生成软件,生成要对所述目标文件进行数字签名的签名者的第一私钥和第一公钥。

说明书全文

一种文件签名处理系统

技术领域

[0001] 本发明涉及计算机技术领域,特别是涉及一种文件签名处理系统。

背景技术

[0002] 文件签名是指对文件进行数字签名。其中,数字签名是附加在文件中的一些数据,而且数字签名常常附加在文件尾部。这样,文件的接收者能够根据附加的数据来验证:该文件是否确实是签名者发送的,以及该文件的文件内容是否被篡改。
[0003] 例如,张三利用私钥对文件A进行数字签名。其中,签名后的文件A的尾部写入有该数字签名。然后,张三将签名后的文件A发送给李四。李四在接收到签名后的文件A后,可以利用张三的公钥解密该数字签名。若李四能够利用张三的公钥解密得到文件A的哈希值,则证明文件A确实是张三发送的。并且,可以对接收到的文件A进行哈希计算,并将计算得到的哈希值与解密得到的哈希值进行比对。若比对结果一致,则表明文件A未被篡改,若比对结果不一致,则表明文件A被篡改。
[0004] 但是,该种将数字签名附加在文件中的方式,使得数字签名容易被恶意用户篡改,无法保证数字签名的有效性,从而使用户数据的安全受到威胁。

发明内容

[0005] 本发明实施例的目的在于提供一种文件签名处理系统,以可以确保数字签名的有效性,提高用户数据的安全性,并且可以对数字签名进行验证,从而可以验证文件是否被篡改。具体技术方案如下:
[0006] 本发明实施例提供了一种文件签名处理系统,该系统可以包括:签名设备和签名验证设备;
[0007] 签名设备用于:确定待进行数字签名的目标文件,并根据预设的信息摘要算法计算目标文件的第一信息摘要值;获得要对目标文件进行数字签名的签名者的第一私钥和第一公钥;利用第一私钥对第一信息摘要值进行加密计算,得到签名者的第一数字签名;将第一数字签名、第一信息摘要值和第一公钥对应存储至分布式账本中;
[0008] 签名验证设备用于:当接收到针对目标文件的数字签名的验证指令时,根据信息摘要算法计算目标文件的第二信息摘要值;判断区块链分布式账本中是否存在第二信息摘要值;若不存在,确定目标文件被篡改。
[0009] 可选地,在本发明实施例中,签名设备还可以用于:
[0010] 在将第一数字签名、第一信息摘要值和第一公钥对应存储至区块链分布式账本中之后,在目标文件中写入签名标记;其中,签名标记中携带有第一公钥;
[0011] 相应地,签名验证设备还可以用于:当区块链分布式账本中存在第二信息摘要值时,判断区块链分布式账本中与第二信息摘要值对应存储的第二公钥是否与签名标记中携带的第一公钥匹配;若不匹配,确定目标文件被篡改。
[0012] 可选地,在本发明实施例中,签名验证设备还可以用于:
[0013] 若与第二信息摘要值对应存储的第二公钥与签名标记中携带的第一公钥匹配,利用第二公钥对区块链分布式账本中与第二信息摘要值对应存储的第二数字签名进行解密;若解密失败,确定目标文件被篡改。
[0014] 可选地,在本发明实施例中,签名验证设备还可以用于:
[0015] 若解密成功,判断解密得到的第三信息摘要值是否与第二信息摘要值相同;若相同,确定目标文件未被篡改;若不相同,确定目标文件被篡改。
[0016] 可选地,签名标记中还可以携带有第一信息摘要值、第一数字签名的签名时间和签名者的身份标识中的至少一项。
[0017] 可选地,当签名标记中携带有第一摘要信息值时,签名验证设备具体可以用于:
[0018] 在根据信息摘要算法计算目标文件的第二信息摘要值之后,确定签名标记中携带的第一信息摘要值是否与第二信息摘要值相等;若相等,判断区块链分布式账本中是否存在第二信息摘要值;若不相等,确定目标文件被篡改。
[0019] 可选地,当签名标记中携带有第一数字签名的签名时间时,签名验证设备具体可以用于:
[0020] 当区块链分布式账本中存在第二信息摘要值时,确定区块链分布式账本中所存储的第二信息摘要值所对应的存储时间戳;判断存储时间戳与签名时间的时间间隔是否小于预设阈值;若大于等于预设阈值,则确定目标文件被篡改;若小于预设阈值,判断区块链分布式账本中与第二信息摘要值对应存储的第二公钥是否与签名标记中携带的第一公钥匹配。
[0021] 可选地,当签名标记中携带有签名者的身份标识时,签名验证设备具体可以用于:
[0022] 当接收到针对目标文件的数字签名的验证指令时,向用户展示身份标识;当用户对身份标识进行确认之后,根据信息摘要算法计算目标文件的第二信息摘要值;当用户对身份标识进行否认时,确定目标文件被篡改。
[0023] 可选地,在本发明实施例中,该签名设备具体可以用于:
[0024] 从区块链私钥公钥对存储软件中,加载要对目标文件进行数字签名的签名者的私钥加密文件和第一公钥;
[0025] 利用用户输入的解密密钥对私钥加密文件进行解密,得到第一公钥对应的第一私钥。
[0026] 可选地,在本发明实施例中,签名设备具体可以用于:
[0027] 调用区块链私钥公钥对生成软件,生成要对目标文件进行数字签名的签名者的第一私钥和第一公钥。
[0028] 在本发明实施例中,文件签名处理系统中的签名设备可以确定待进行数字签名的目标文件,并可以根据预设的信息摘要算法计算得到该目标文件的第一信息摘要值。然后,可以获得要对该目标文件进行数字签名的签名者的第一私钥和公钥。之后,利用该第一私钥对信息摘要值进行加密计算,得到该签名者的第一数字签名。在得到第一数字签名后,将该第一数字签名、第一信息摘要值和第一公钥对应存储至区块链分布式账本中。这样,可以将第一数字签名存储至区块链分布式账本中。其中,由于区块链分布式账本是集体维护的分布式数据库,并具有去中心化和信息不可篡改性等特点。因而,可以避免现有技术中将数字签名写在目标文件尾部所造成的数字签名容易被篡改的情况发生,确保了该第一数字签名的有效性,从而可以保证用户数据的安全
[0029] 该文件签名处理系统中的签名验证设备,可以在接收到针对目标文件的数字签名的验证指令时,根据该预设的信息摘要算法计算该目标文件的第二信息摘要值。然后,判断区块链分布式账本中是否存在该第二信息摘要值。若不存在,则可以确定该目标文件被篡改。这样,可以通过签名验证设备来对数字签名进行验证,从而验证目标文件是否被篡改。附图说明
[0030] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0031] 图1为本发明实施例所提供的一种文件签名处理系统的结构示意图;
[0032] 图2为本发明实施例所提供的文件签名处理系统进行文件签名及签名验证的一个流程图
[0033] 图3为本发明实施例所提供的签名设备的结构示意图;
[0034] 图4为本发明实施例所提供的签名验证设备的结构示意图。

具体实施方式

[0035] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036] 为了解决现有技术中存在的技术问题,本发明实施例提供了一种文件签名处理系统。
[0037] 下面结合图1和图2对本发明实施例提供的文件签名处理系统进行说明。
[0038] 参见图1,本发明实施例提供的文件签名处理系统100包括:签名设备101和签名验证设备102。其中,签名设备101和签名验证设备102可以为同一个设备,也可以为不同设备,这都是合理的。
[0039] 另外,本发明实施例中的目标文件包括但并不局限于:WPS文件、PPT文件和PDF文件,当然并不局限于此。
[0040] 参见图2,签名设备101用于执行如下步骤:
[0041] S101:确定待进行数字签名的目标文件,并根据预设的信息摘要算法计算目标文件的第一信息摘要值;
[0042] 预设的信息摘要算法包括但并不局限于:CRC(Cyclic Redundancy Check,循环冗余校验)算法、SHA(Secure Hash Algorithm,安全散列算法)算法、RIPEMD(RACE Integrity Primitives Evaluation Message Digest,RACE原始完整性校验消息摘要)算法、MD4(Message-Digest Algorithm 4,信息摘要算法版本4)算法,以及MD5(Message-Digest Algorithm 5,信息摘要算法版本5)算法。
[0043] 其中,计算目标文件的第一信息摘要值具体可以是指:对目标文件的文件内容进行信息摘要计算。
[0044] S102:获得要对目标文件进行数字签名的签名者的第一私钥和第一公钥;
[0045] 当要对目标文件进行数字签名的签名者已经有私钥公钥对时,可以直接从区块链私钥公钥对存储软件中,加载该签名者的私钥加密文件和第一公钥。
[0046] 然后,利用用户输入的解密密钥对私钥加密文件进行解密,得到第一公钥对应的第一私钥。其中,该种加载私钥加密文件的方式,可以避免直接加载签名者的第一私钥,从而可以避免第一私钥泄露,提高私钥的安全性。
[0047] 该区块链私钥公钥对存储软件包括但并不局限于数字钱包。其中,数字钱包为现有概念,在此不对数字钱包进行详细描述。
[0048] 当要对目标文件进行数字签名的签名者还没有私钥公钥对时,可以调用区块链私钥公钥对生成软件,生成该签名者的第一私钥和第一公钥。
[0049] 其中,区块链私钥公钥对生成软件可以为包括:任意可以生成区块链私钥公钥对的软件。
[0050] S103:利用第一私钥对第一信息摘要值进行加密计算,得到签名者的第一数字签名;
[0051] 举例而言,当第一信息摘要值为MD5值时,可以利用第一私钥对该MD5值进行加密计算,从而可以得到该签名者的第一数字签名。
[0052] S104:将第一数字签名、第一信息摘要值和第一公钥对应存储至区块链分布式账本中;
[0053] 具体地,可以利用该签名者的第一数字签名、该目标文件的第一信息摘要值和该签名者的第一公钥来构建一个区块链发布块,实现第一数字签名、第一信息摘要值和第一公钥的对应存储。然后,调用区块链SDK(Software Development Kit,软件开发工具包)将该发布块存储至区块链分布式账本中,从而实现该发布块的全网发布。其中,该区块链SDK为任意可以将发布块存储至区块链分布式账本中的软件,在此不做详述。
[0054] 由于区块链分布式账本是集体维护的分布式数据库,具有去中心化和信息不可篡改性等特点。因而,使得存储至该区块链分布式账本中的第一数字签名是不可篡改的,保证了该第一数字签名的有效性,即保证了数字签名的安全性。进而,可以避免将信息泄露给恶意用户的情况发生,保证了数据的安全性。
[0055] 对于背景技术所举的示例而言,现有技术中在使用数字签名过程中,常需要依赖数字证书来证明李四得到的公钥确实为张三的公钥,从而在一定程度上来确保张三的数字签名的有效性。其中,数字证书是证书授权中心机构进行数字签名的、包含公钥拥有者信息以及公钥的文件,该数字证书可以用于证明:公钥拥有者合法拥有该证书中列出的公钥。
[0056] 但是,证书授权中心机构是中心化机构,该机构很可能会遭受到黑客的攻击。当该机构遭到攻击时,该机构所颁发的数字证书很可能是被黑客篡改的证书。并且,当该机构所颁发的张三的数字证书被黑客篡改时,此时无法确保张三的数字签名的有效性,使数据的安全受到威胁。
[0057] 而在本发明实施例中,由于存储在该区块链分布式账本中的第一数字签名以及对应存储的第一公钥是不可篡改的,因而能够确保存储至区块链分布式账本中的该第一数字签名即为该第一公钥所对应的签名者的数字签名,从而可以保证该第一数字签名的有效性。
[0058] 参见图2,签名验证设备102用于执行如下步骤:
[0059] S105:当接收到针对目标文件的数字签名的验证指令时,根据该信息摘要算法计算目标文件的第二信息摘要值;
[0060] 在将第一数字签名、第一信息摘要值和第一公钥对应存储至区块链分布式账本中之后,接收到针对目标文件的数字签名的验证指令时,可以采用计算第一信息摘要值的信息摘要算法对目标文件当前的文件内容进行信息摘要计算,得到第二信息摘要值。
[0061] S106:判断区块链分布式账本中是否存在第二信息摘要值;若不存在,执行步骤S107;
[0062] S107:确定目标文件被篡改。
[0063] 在计算得到目标文件的第二信息摘要值之后,可以查找区块链分布式账本中是否存在该第二信息摘要值。若不存在该第二信息摘要值,表明目标文件的文件内容发生了变化,从而导致第二信息摘要值与第一信息摘要值不匹配。此时,可以确定目标文件的文件内容被篡改。若存在该第二信息摘要值,在一种实现方式中,可以直接确定该目标文件未被篡改。当然,在确定目标文件未被篡改之前,还可以执行其他验证操作,后续再对该种实现方式进行详述。
[0064] 该种数字签名验证方式可以在签名验证设备本地进行签名验证,而不需要依赖证书授权中心机构来进行签名验证,节约了签名验证的成本。另外,当数字签名处于验证有效期内时,证书授权中心机构才会对该数字签名进行验证,而本发明实施例提供的签名验证设备可以在任意时间对该数字签名进行验证,实现永久验证。
[0065] 在本发明实施例中,文件签名处理系统中的签名设备可以确定待进行数字签名的目标文件,并可以根据预设的信息摘要算法计算得到该目标文件的第一信息摘要值。然后,可以获得要对该目标文件进行数字签名的签名者的第一私钥和公钥。之后,利用该第一私钥对信息摘要值进行加密计算,得到该签名者的第一数字签名。在得到第一数字签名后,将该第一数字签名、第一信息摘要值和第一公钥对应存储至区块链分布式账本中。这样,可以将第一数字签名存储至区块链分布式账本中。其中,由于区块链分布式账本是集体维护的分布式数据库,并具有去中心化和信息不可篡改性等特点。因而,可以避免现有技术中将数字签名写在目标文件尾部所造成的数字签名容易被篡改的情况发生,确保了该第一数字签名的有效性,从而可以保证用户数据的安全
[0066] 该文件签名处理系统中的签名验证设备,可以在接收到针对目标文件的数字签名的验证指令时,根据该预设的信息摘要算法计算该目标文件的第二信息摘要值。然后,判断区块链分布式账本中是否存在该第二信息摘要值。若不存在,则可以确定该目标文件被篡改。这样,可以通过签名验证设备来对数字签名进行验证,从而验证目标文件是否被篡改。
[0067] 下面以PDF文件为示例,对本发明实施例提供的文件签名处理系统进行说明。
[0068] 其中,本发明实施例提供的文件签名处理系统中的签名设备和签名验证设备可以为同一设备,也可以为不同设备,这都是合理的。
[0069] 假设该签名设备和签名验证设备为同一设备K。此时,设备K既可以用于对文件进行数字签名,又可以用于对进行了数字签名的文件进行数字签名验证,从而验证该文件是否被篡改。
[0070] 假设设备K中打开有目标PDF文件。当用户A想要对该目标PDF文件进行数字签名时,该设备K可以根据MD5算法来计算该目标PDF文件的第一MD5值。
[0071] 然后,该设备K还可以获得用户A的第一私钥和第一公钥。具体地,该设备K可以询问用户A是否存在区块链公钥和私钥。若用户A存在区块链公钥和私钥,则从用户A用于存储公钥和私钥的区块链私钥公钥对存储软件中加载该用户A的第一私钥和第一公钥。其中,为了保证第一私钥的安全,可以加载私钥加密文件,然后根据用户A输入的解密秘钥解密得到第一私钥。
[0072] 若用户A不存在区块链公钥和私钥,则可以调用区块链私钥公钥对生成软件来生成用户A的第一私钥和第一公钥。然后,设备K可以利用所生成的第一私钥对第一MD5值进行数字签名。
[0073] 其中,在生成用户A的第一私钥和第一公钥之后,设备K还可以获得用户A的身份标识。然后,将用户A的身份标识和用户A的第一公钥对应存储至区块链分布式账本中。这样,使得区块链分布式账本中可以记录有:用户A的身份标识和用户A的第一公钥的对应关系。也就是说,此时全网可以证明:用户A合法拥有该第一公钥,避免了用户A的第一公钥被冒充。
[0074] 该设备K在获得用户A的第一私钥后,可以利用所获得的第一私钥对该MD5值进行加密计算,从而得到针对该目标PDF文件的第一数字签名。进而,将该第一数字签名、第一MD5值和第一公钥对应存储至区块链分布式账本中。这样,不需要将第一数字签名写在目标PDF文件的尾部。而且,将第一数字签名写在区块链分布式账本中的方式可以避免第一数字签名被篡改,确保了第一数字签名的有效性。
[0075] 其中,将该第一数字签名、第一MD5值和第一公钥对应存储至区块链分布式账本中,可以便于后续利用该第一MD5值和第一公钥对该第一数字签名进行验证。另外,为了便于后续对目标PDF文件的第一数字签名进行验证,还可以给该目标PDF文件标记一个签名标记,以标记该目标PDF文件已经完成了数字签名。
[0076] 其中,该签名标记中还可以携带有第一公钥、第一MD5值、第一数字签名的签名时间和用户A的身份标识中的至少一项,当然并不局限于此。为了签名标记中所携带的内容不被恶意用户篡改,还可以利用用户A的私钥对该签名标记中所携带的内容进行数字签名,这是合理的。
[0077] 这样,在完成对该目标PDF文件的数字签名之后,该设备K还可以通过该目标PDF文件中记录的签名标记,识别该目标PDF文件是经过数字签名的文件。
[0078] 而且,设备K在接收到针对该目标PDF文件的数字签名的验证指令时,可以计算该目标PDF文件当前的MD5值作为第二MD5值。然后,调用区块链SDK查找区块链分布式账本中的、与当前的第二MD5值匹配的MD5值。当在该区块链分布式账本中查找不到与当前的第二MD5值匹配的MD5值时,则表明该目标PDF文件的文件内容被篡改。
[0079] 其中,当签名标记中携带有用户A的身份标识时,设备K也可以在接收到针对该目标PDF文件的数字签名的验证指令时,先向用户展示该用户A的身份标识。当用户对该身份标识进行确认之后,即在用户确认是用户A的数字签名后,设备K可以计算该目标PDF文件当前的MD5值,并将该MD5值作为第二MD5值。反之,当用户对该身份标识进行否认时,则确定该目标PDF文件被篡改。
[0080] 当该签名标记中还携带有第一MD5值时,在计算得到目标PDF文件当前的第二MD5值之后,该设备K还可以确定签名标记中携带的第一MD5值是否与该第二MD5值相等。若不相等,则确定该目标PDF文件被篡改。若相等,则相当,则调用区块链SDK查找区块链分布式账本中的、与当前的第二MD5值匹配的MD5值。
[0081] 当该签名标记中还携带有第一数字签名的签名时间时,而且,在该区块链分布式账本中能查找到与当前的第二MD5值匹配的MD5值时,该设备K还可以确定区块链分布式账本中所存储的第二MD5值所对应的存储时间戳。并判断该存储时间戳与签名时间的时间间隔是否小于预设阈值。若大于等于预设阈值,则确定目标PDF文件被篡改。其中,该预设阈值可以由本领域技术人员根据实际情况进行设定,在此不做限定。
[0082] 反之,若小于预设阈值,则可以确定目标PDF文件未被篡改。其中,当该签名标记中还携带有第一数字签名的第一公钥时,还可以判断区块链分布式账本中与第二MD5值对应存储的第二公钥是否与该签名标记中携带的第一公钥匹配。若不匹配,则确定该目标文件被篡改。
[0083] 若匹配,则利用第二公钥对区块链分布式账本中与第二MD5值对应存储的第二数字签名进行解密。若解密失败,确定目标文件被篡改。若解密成功,判断解密得到的第三MD5值是否与第二MD5值相同。若相同,确定目标PDF文件未被篡改。若不相同,则表明该第二数字签名很可能是恶意用户伪造的数字签名。此时,为了保证用户A的数字签名的有效性,可以重新对利用上述数字签名方式对该目标PDF文件进行数字签名。
[0084] 综上,由于区块链分布式账本是集体维护的分布式数据库,并具有去中心化和信息不可篡改性等特点。因而,应用本发明实施例提供的文件签名处理系统中的签名设备进行数字签名,可以确保数字签名的有效性,即可以保证该数字签名不被篡改,从而提高了数据的安全性。另外,应用本发明实施例提供的文件签名处理系统中的签名验证设备,可以对签名设备所得到数字签名进行验证,从而可以验证文件是否被篡改。
[0085] 其中,本发明实施例提供的签名设备可以参见图3,包括处理器301、通信接口302、存储器303和通信总线304,其中,处理器301,通信接口302,存储器303通过通信总线304完成相互间的通信,
[0086] 存储器303,用于存放计算机程序
[0087] 处理器301,用于执行存储器303上所存放的程序时,执行上述步骤S101~S104。
[0088] 在本发明实施例中,文件签名处理系统中的签名设备可以确定待进行数字签名的目标文件,并可以根据预设的信息摘要算法计算得到该目标文件的第一信息摘要值。然后,可以获得要对该目标文件进行数字签名的签名者的第一私钥和公钥。之后,利用该第一私钥对信息摘要值进行加密计算,得到该签名者的第一数字签名。在得到第一数字签名后,将该第一数字签名、第一信息摘要值和第一公钥对应存储至区块链分布式账本中。这样,可以将第一数字签名存储至区块链分布式账本中。其中,由于区块链分布式账本是集体维护的分布式数据库,并具有去中心化和信息不可篡改性等特点。因而,可以避免现有技术中将数字签名写在目标文件尾部所造成的数字签名容易被篡改的情况发生,确保了该第一数字签名的有效性,从而可以保证用户数据的安全
[0089] 本发明实施例提供的签名验证设备可以参见图4,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信,
[0090] 存储器403,用于存放计算机程序;
[0091] 处理器401,用于执行存储器403上所存放的程序时,执行上述步骤S105~S107。
[0092] 在本发明实施例中,该文件签名处理系统中的签名验证设备,可以在接收到针对目标文件的数字签名的验证指令时,根据该预设的信息摘要算法计算该目标文件的第二信息摘要值。然后,判断区块链分布式账本中是否存在该第二信息摘要值。若不存在,则可以确定该目标文件被篡改。这样,可以通过签名验证设备来对数字签名进行验证,从而验证目标文件是否被篡改。
[0093] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0094] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
[0095] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈