论文部分内容阅读
计算机取证是解决争议和打击计算机犯罪的重要手段,是实现信息安全保障的一个重要方面,在保持社会稳定和维护法律秩序方面具有重要作用。计算机取证的安全性、可靠性面临特殊的挑战:首先,电子证据的脆弱性导致了证据容易被修改且修改后不易被发现,电子证据在收集过程中和获得之后都面临着证据毁坏、介质错误、特定数据伪造等各种威胁:其次,大量案例涉及的海量数据信息使得对电子证据的固定面临着细粒度的完整性检验需求与Hash数据量大之间的矛盾;同时,反取证威胁使得电子证据获取工具的安全成为新的问题,计算机取证分析结论的可靠性也不断受到质疑。本文在分析计算机取证领域国内外研究现状和存在问题的基础上,以加强计算机取证的安全性、可靠性为目标,研究了细粒度数据完整性检验理论以支持细粒度电子证据固定,从而支持电子证据的真实性、完整性;研究电子证据获取方法的安全性和可靠的形式化取证推理方法。归纳起来,本文的主要研究工作和创新内容表现在以下几个方面:首先,针对计算机取证的细粒度数据完整性检验需求及海量数据导致的Hash大数据量问题,基于组合编码原理提出了细粒度数据完整性检验方法,称为完整性指示编码。完整性指示编码使用监督矩阵表示Hash和数据对象之间的监督关系,通过适当的交叉检验,在保持Hash检验安全性不变的前提下,可用较少的Hash数据实现细粒度数据完整性检验。该方法适用于细粒度电子证据固定。几种传统的完整性检验方案均是完整性指示编码的无交叉检验特例。设计了一种编码收益度量指标作为选择不同编码及进行参数设置的依据。采用细粒度数据完整性检验方案可以对少数错误进行准确和高效的隔离,从而减轻因偶然错误或少量篡改而导致的整体数据失效的灾难性影响。其次,依据细粒度数据完整性检验方法,分别构造了组合单错完整性指示码、超方体单错完整性指示码以及有限域多错完整性指示码等三种编码;采用并发计算和再Hash计算两种方式加速Hash生成过程,提高了细粒度数据完整性检验效率。组合单错完整性指示码在单错条件下可实现对Hash数据的大幅度压缩。超方体单错完整性指示码在单错条件下具有高压缩率、较低错误放大率,并可通过选取任意自然数作为超方体的阶,以高效率的组合方式处理各种不同规模的数据对象。有限域多错完整性指示码能准确指示多个错误,在低出错率条件下具有较高的压缩率、低错误放大率,并可通过灵活设置码参数来满足不同的实际需要。有限域多错完整性指示码具有模块化的Hash结构,对于有限域GF(q)上的d维向量空间,每增加(d-1)组共(d-1)q个Hash即可多指示一个错。超方体单错完整性指示码和有限域多错完整性指示码的Hash具有平行的分组关系,单独一组Hash即可独立指示所有数据的完整性,为Hash数据的多方分离存储提供了条件,增强了细粒度数据完整性检验方法在电子证据固定等应用中的实用性。随后,针对反取证威胁,分析了一种典型的基于数据底层特征的证据识别方法——上下文触发分片Hash算法的脆弱性,提出了带密钥的上下文触发分片Hash’快速算法。通过在上下文触发分片Hash算法及其传统Hash算法中引入可变参数,由不同密钥生成不同的文件指纹,增加了攻击者通过猜测密钥或比较文件指纹来获得密钥或参数组合进而攻击文件指纹的难度。改进算法在多生成一个Hash指纹的情况下和原算法的速度相当或更快,而且可以在更大程度上找到相似的文件。算法性能分析及实验结果表明由不同密钥生成的参数组之间有较好的独立性,且参数组选择空间大,可较好地抵抗伪造、文件分割与合并、特定位置修改等针对性攻击,安全性得到明显提高。最后,针对现有有限状态自动机模型的不足,提出了通用的Mealy型时间有限状态自动机模型及其正向、双向等推理策略。该模型可同时表达系统输入、输出、内部运行状态等多方面的证据及其时间属性,有利于电子证据的形式化表示和案例建模。案例分析和实验结果表明了该通用模型及其推理策略的有效性。