结构化格式文档的独特内容确定制造技术

技术编号:38711722 阅读:12 留言:0更新日期:2023-09-08 14:54
提供了一种针对结构化文档生成摘要的计算机实现的方法,该方法包括:选择OOXML文档的多个组成部分的子集,其中,所选择的组成部分的子集中的至少一个是XML文件,并且其中,选择子集排除命名为“docProps\app.xml”、“docProps\core.xml”和“docProps\custom.xml”的文件;对所选择的组成部分的子集进行排序;通过去除引用没有包括在所选择的子集中的组成部分的至少一个关系条目以及通过标识符值对关系进行分类来处理关系文件;针对所选择的组成部分的子集中的每一个生成组成散列值;以及将每个组成散列值转换成字节数组,并将字节数组附加至规范字节流。并将字节数组附加至规范字节流。并将字节数组附加至规范字节流。

【技术实现步骤摘要】
【国外来华专利技术】结构化格式文档的独特内容确定


[0001]本公开内容涉及分析结构化格式文档的内容。

技术介绍

[0002]该
技术介绍
部分出于大体上描述本公开内容的上下文的目的而提供。就在该
技术介绍
部分中描述的工作的程度而言,目前署名的专利技术人的工作以及在提交时可能未被另外视为现有技术的描述的各方面既没有明确地也没有隐含地被承认为是针对本公开内容的现有技术。
[0003]出于跨许多行业的不同目的而使用数字文件。必须对一些行业法规例如对数字文件施加限制的HIPAA、SOX、GDPR和ISO 9000进行保护、认证或审核。
[0004]散列通常用于评估文件的内容。散列算法使用单向函数将文件的内容映射至散列值(也称为摘要值)中。对文件中的任何数据的更改将引起不同的散列值。相关的散列算法包括消息摘要5(MD5)、Rivest

Shamir

Adleman(RSA)、安全散列算法(SHA)、Scrypt、Ethash和循环冗余校验(CRC),但不限于此。
[0005]散列可以用于通过计算文件的当前散列值并将该当前散列值与文件的先前散列值进行比较来确定文件是否已经被更改或更新。如果散列值不同,则数字文件的内容自上次计算散列值以来已经被更改。匹配的散列值高度肯定地确认数字文件的内容未被更改。
[0006]通过使用散列可以针对数字文件创建数字签章。数字签章可以包括存储在区块链分类帐例如比特币或以太坊分类帐中的散列值。可以从数字签章中读取散列值,以验证文件内容与在创建数字签章时的文件内容是否匹配。可以利用区块链技术来管理数字签章,以确保数字签章的真实性。用户或系统可以利用该方法来证实数字文件的数据完整性和真实性,因为数据错误和对文件的有意修改将导致不同的散列值。
[0007]结构化数字文件例如Microsoft Office
TM
文件(例如,Word
TM
、Excel
TM
、PowerPoint
TM
等)包含各种信息,所述各种信息包括例如内容信息、格式化信息和元数据信息。这些文件可以以Open Office XML(OOXML)的格式被存储。即使文件中的实质性信息没有更改,但是元数据信息例如文件的上次访问日期或打印日期可能会在文件被访问时更新或更改。
[0008]正如本申请的专利技术人已经确定的,使用结构化文档的全部内容可能限制散列和数字签章的效果,所述结构化文档的全部内容包括与数据完整性或真实性无关的信息。此外,存储在数字文件中的顺序数据也可能导致散列结果的变化,而事实上,文件中的底层数据是相同的。更具体地,文档之间的差异可能不指示文档的内容或呈现方面的差异。在由办公文档编辑器打开文档后,即使用户未对文档做出更改,这些非实质性差异也可能导致传统的签章处理和认证处理失败。

技术实现思路

[0009]本专利技术的目的是通过以下操作来提高例如OOXML的结构化文档的散列和数字签章
的有用性:仅对结构化文档的内容进行散列以避免对特定文档的副本之间的变化的错误指示。该目的通过根据所附权利要求的主题来解决。
[0010]在权利要求书、以下说明书和附图中描述了本专利技术的示例。
[0011]提供了一种针对结构化文档生成摘要的计算机实现的方法。该方法包括:选择OOXML文档的多个组成部分的子集,其中,所选择的组成部分的子集中的至少一个是XML文件,并且其中,选择子集排除命名为“docProps\app.xml”、“docProps\core.xml”和“docProps\custom.xml”的文件;对所选择的组成部分的子集进行排序;处理来自所选择的组成部分的子集的关系文件。处理该关系文件包括:去除引用没有包括在所选择的子集中的组成部分的至少一个关系条目,以及通过标识符值对所述关系进行分类。该计算机实现的方法还包括:针对所选择的组成部分的子集中的每一个生成组成散列值,以及将每个组成散列值转换成字节数组,并将字节数组附加至规范字节流。
[0012]提供了一种针对结构化文档生成摘要的计算机实现的方法,该方法包括:选择结构化文档的多个组成部分的子集;对组成部分的子集进行排序;针对组成部分的子集中的每一个生成组成散列值;以及将每个组成散列值转换成字节数组,并将字节数组附加至规范字节流。在一些示例中,结构化文档是OOXML文件,该OOXML文件是ZIP存档,并且多个组成部分中的每一个是文件。在一些示例中,该方法包括计算规范字节流的总散列值。在一些示例中,所选择的组成部分的子集不包括以下日期中的任何日期:创建结构化文档的日期、上次打印结构化文档的日期、上次编辑结构化文档的日期、上次打开结构化文档的日期。在一些示例中,所选择的组成部分的子集包括命名为“_rels\.rels”的关系文件,其中,关系文件包含类型为“officeDocument”的关系。在一些示例中,所选择的组成部分的子集不包括命名为“custom.xml”的文档。在一些示例中,该计算机实现的方法包括:将规范字节流的总散列值存储在记录中;选择第二多个组成部分的第二子集;对第二结构化文档的第二多个组成部分进行排序;针对第二组成部分的子集中的每一个生成第二组成散列值;将每个第二散列值转换成第二字节数组,并将第二字节数组附加至第二规范字节流;计算第二规范字节流的第二总散列值;以及如果第二规范字节流的第二散列值与记录中的总散列值匹配,则确定结构化文档与第二结构化文档基本上相同。
[0013]提供了一种包含可执行软件指令的非暂态计算机可读介质,该可执行软件指令在被执行时:选择结构化文档的多个组成部分的子集;对组成部分的子集进行排序;针对组成部分的子集中的每一个生成组成散列值;以及将每个组成散列值转换成字节数组并将字节数组附加至规范字节流。在一些示例中,结构化文档是OOXML文件,该OOXML文件是ZIP存档,并且多个组成部分中的每一个是文件。在一些示例中,该介质还包括指令,所述指令在被执行时计算规范字节流的总散列值。在一些示例中,所选择的组成部分的子集不包括以下日期中的任何日期:创建结构化文档的日期、上次打印结构化文档的日期、上次编辑结构化文档的日期或者上次打开结构化文档的日期。在一些示例中,所选择的组成部分的子集包括命名为“_rels\.rels”的关系文件,其中,关系文件包含类型为“officeDocument”的关系。在一些示例中,所选择的组成部分的子集不包括命名为“custom.xml”的文档。在一些示例中,该介质包括指令,所述指令在被执行时:将规范字节流的总散列值存储在记录中;选择第二多个组成部分的第二子集;对第二结构化文档的第二多个组成部分进行排序;针对第二组成部分的子集中的每一个生成第二组成散列值;将每个第二散列值转换成第二字节数
组,并将第二字节数组附加至第二规范字节流;计算第二规范字节流的第二总散列值;以及如果第二规范字节流的第二散列值与记录中的总散列值匹配,则确定结构化文档与第二结构化文档基本上相同。
附图说明
[0本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种针对结构化文档生成摘要的计算机实现的方法,包括:选择OOXML文档的多个组成部分的子集,其中,所选择的组成部分的子集中的至少一个是XML文件,并且其中,选择所述子集排除命名为“docProps\app.xml”、“docProps\core.xml”和“docProps\custom.xml”的文件;对所选择的组成部分的子集进行排序;如下处理来自所选择的组成部分的子集的关系文件:去除引用没有包括在所选择的子集中的组成部分的至少一个关系条目,以及通过标识符值对所述关系进行分类;针对所选择的组成部分的子集中的每一个生成组成散列值;以及将每个组成散列值转换成字节数组,并将所述字节数组附加至规范字节流。2.一种针对结构化文档生成摘要的计算机实现的方法,包括:选择结构化文档的多个组成部分的子集;对所述组成部分的子集进行排序;针对所述组成部分的子集中的每一个生成组成散列值;以及将每个组成散列值转换成字节数组,并将所述字节数组附加至规范字节流。3.根据权利要求1所述的方法,其中,所述结构化文档是OOXML文件,所述OOXML文件是ZIP存档,并且所述多个组成部分中的每一个是文件。4.根据权利要求1所述的方法,还包括计算所述规范字节流的总散列值。5.根据权利要求1所述的方法,其中,所选择的组成部分的子集不包括以下日期中的任何日期:创建所述结构化文档的日期;上次打印所述结构化文档的日期;上次编辑所述结构化文档的日期;以及上次打开所述结构化文档的日期。6.根据权利要求2所述的方法,其中,所选择的组成部分的子集包括命名为“_rels\.rels”的关系文件,其中,所述关系文件包含类型为“officeDocument”的关系。7.根据权利要求1所述的方法,其中,所选择的组成部分的子集不包括命名为“custom.xml”的文档。8.根据权利要求1所述的方法,还包括:将所述规范字节流的总散列值存储在记录中;选择第二多个组成部分的第二子集;对第二结构化文档的第二多个组成部分进行排序;针对第二组成部分的子集中的每一个生成...

【专利技术属性】
技术研发人员:托马斯
申请(专利权)人:软件连接公司
类型:发明
国别省市:

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1