取证要证明的不是【我看过这个文件】,而是【这个文件从提取到呈交全程没被动过】——哈希值与证据链记录表,就是干这件事的两样工具。
6-10 讲的是【怎么把记录留下来】,这一节讲的是【怎么让留下来的东西在法律上站得住】——前者是技术问题,后者一半是技术、一半是程序问题。 它和 5-5 直接衔接:那一节讲的哈希三性质(定长、单向、抗碰撞),在这一节变成了一个具体的法律工具——完整性校验值。 它也和 6-5 里【先取证、再遏制】的顺序呼应:取证的动作要在处置之前做,因为处置会破坏证据。
一、法律依据的时间线
电子数据是法定证据种类之一,这件事在国内是通过几个文件确立并细化的:
| 时间 | 文件 |
|---|---|
| 2016-10-01 施行 | 两高一部《关于办理刑事案件收集提取和审查判断电子数据若干问题的规定》 |
| 2019-02-01 施行 | 公安部《公安机关办理刑事案件电子数据取证规则》 |
| 2026-05-22 公布 | 公安部《公安机关电子数据取证规则(征求意见稿)》 |
【电子数据是法定证据】这句话的分量,比它听起来要重。它意味着三件事:
- 电子数据不需要【打印出来盖章】才有效——它本身就是证据种类,有自己的规则;
- 它的收集、提取、审查、判断都有专门规定——也就是说,程序不合规会导致证据不被采信;
- 企业和个人不是这套规则的执行主体,但会受它的影响——内部调查、报警、诉讼,都会用到这些规则来衡量【你手里的证据能不能用】。
二、2026 修订的三个方向
2026-05-22 公布的征求意见稿(反馈截止 2026-06-21)有三个明确的修订方向:
- 扩大适用范围——从仅刑事案件,扩展到网络安全、数据安全等行政案件;
- 规范概念——按勘验、扣押、封存介质、冻结、提取、调取、检查鉴定分类;
- 明确特殊程序——获取账号密码、调取邮件等,须经县级以上或地市级以上批准。
这三条里,【扩大适用范围】最值得注意。它的实际含义是:过去只用于刑事案件的取证规则,现在也会用于行政案件,而企业最常遇到的其实是行政场景(数据泄露、违规处理个人信息、网络安全事件处置)。对应的程序要求上,行政案件基本参照刑事执行,但是否全程同步录像、电子数据冻结期限等,会作出差别化规定。
【明确特殊程序】这一条对企业有直接的操作参考:确需输入智能终端账号密码的,一般应先由持有人提供;不提供的,须经县级以上公安机关负责人批准,并在告知持有人或有见证人见证下采取相应措施;调取电子邮件等个人通讯内容,先由持有人登录邮箱协助,不予协助的须经地市级以上批准并告知或见证。同时增加了【获取账号密码决定书】【获取个人通讯内容决定书】这类文书。这套要求的设计意图很清楚:把【获取什么、凭什么获取、谁批准】写成可追溯的文书,避免过程无据可查。
三、电子数据包括什么
范围比很多人想象得宽:
- 网页、博客、朋友圈、贴吧、网盘等平台发布的信息;
- 短信、邮件、即时通信、通讯群组等通信信息;
- 用户注册信息、身份认证信息、电子交易与通信记录、登录日志;
- 文档、图片、音视频、数字证书、计算机程序。
这个范围对企业内部调查的意义是:可能成为证据的东西,远不止【文件】这一类——聊天记录、日志、账号注册信息、甚至是数字证书,都在范围内。所以【保留证据】这件事,从【把文件拷出来】扩展成了【把整条痕迹链固定下来】。顺带说一句:【电子数据】的范围这么宽,也意味着它极容易因处置动作而被破坏(一条处置指令就可能覆盖日志、清理临时文件)——这就是 6-5 讲的【先取证、再遏制】的技术原因。
四、四个原则与一条底线
电子数据作为证据,要满足四个属性:
| 原则 | 落到操作上 |
|---|---|
| 真实性 | 来源可查、过程可复现、内容没被选择性截取 |
| 合法性 | 取证主体与程序合规,该批的批、该见证的见证 |
| 关联性 | 能指向具体的人、账号、设备与时间 |
| 完整性 | 用哈希值固定,且全程留痕 |
【真实性】这一条有一个特别容易被忽略的补充要求:不得选择性截取、删减或拼接。这条看似只是伦理要求,实际是技术问题:你从一段聊天记录里截取几句话,和把整段对话完整保存,证明力完全不同——前者无法排除【断章取义】的可能。 对应的做法是:保全时尽量保留上下文与原始载体结构,而不是导出成一份【摘要】。
底线是【严禁触碰原始数据】。具体做法是:用只读接口、做数据镜像、在虚拟环境里分析,实时记录检验步骤、设备参数与分析结果,确保操作可复现、可核查。【可复现】这个要求值得特别提一下:它意味着检验过程本身要详细到【另一个有资质的人按记录重做一遍,能得到同样的结果】——这其实是科学方法在取证里的应用,也是【检验步骤要实时记录】的原因。
最后一个数字要记住:冻结电子数据的期限是六个月,每次续冻最长不超过六个月。这个期限和 6-10 里的六个月是两件事:一个是【必须留存多久】(义务),一个是【冻结能持多久】(程序期限)。
五、动手 Demo:用哈希值证明没被动过
这一段是本节最技术、也最有价值的部分。哈希值(完整性校验值)的作用是:用一串短字符代表任意长度内容的【指纹】——内容变一个字节,指纹就完全不同。
import hashlib
data = "订单表 orders_2026Q1.csv 的原始字节".encode("utf-8")
h1 = hashlib.sha256(data).hexdigest() # 第一次计算
h2 = hashlib.sha256(data).hexdigest() # 第二次计算,用于比对
# 改动一个字节之后
bad = bytearray(data); bad[0] = (bad[0] + 1) % 256
h3 = hashlib.sha256(bytes(bad)).hexdigest()
same = sum(1 for a, b in zip(h1, h3) if a == b) # 4 —— 64 位里相同的位置数
实跑输出:
五、动手:用哈希值证明没被动过
原始数据长度 43 字节
第 1 次 SHA-256 1490edf3ddc1d4a8a20c06d31c4f619d83d5f84e916bbd99
2e83fbbfaf642af3
第 2 次 SHA-256 1490edf3ddc1d4a8a20c06d31c4f619d83d5f84e916bbd99
2e83fbbfaf642af3
两次是否一致 一致,完整性未被破坏
改动 1 个字节后 d65dcf716b63b50abc8a2651fbaf196360153fb75628953c
9adb4a4b7a20b243
与原始哈希相同位数 4 / 64
→ 只改了一个字节,64 位十六进制里几乎全变了。
这就是完整性校验值能当作证据的理由。
读这个输出:
- 两次计算结果完全相同——这是【完整性未被破坏】的标准做法:提取时算一次、移交或呈交时再算一次,两者一致就说明中间没被动过。 注意这里的关键不是【哈希值本身是多少】,而是【两次是不是一样】——哈希值不是保密的,它是用来比对的。
- 只改一个字节,64 位十六进制里相同的位置只有 4 个。这个比例(4/64)已经接近纯随机——换句话说,改动一个字节会让指纹看起来完全无关。 这就是【雪崩效应】(5-5 讲过它的原理):输入变一点,输出大变。
- 在实际取证里,这个哈希值会跟着证据一起走:写入证据链记录表、写进移交单据。只要有一个环节的哈希值对不上,这段证据的可信度就要打折扣——所以【算哈希】不是一次动作,而是每个交接节点都要重复的动作。
六、证据链记录表要记什么
哈希解决【内容有没有变】,证据链记录表解决【东西经过谁的手】。两件事都要有:
| 字段 | 示例 |
|---|---|
| 证据编号 | EV-2026-0312-001 |
| 提取时间与地点 | 2026-03-12 10:05,主机房 B12 机柜 |
| 提取人与见证人 | 张某(编号 0321)、李某(见证) |
| 原始介质序列号 | SN-8HJ2K9L1 |
| 镜像文件与哈希 | disk01.E01,SHA-256 见上 |
| 保管移交记录 | 每次移交签名与时间,缺一不可 |
这张表里最关键的是最后一行。证据的证明力不只取决于【它是什么】,还取决于【它没被谁碰过】——所以每一次移交(从现场到实验室、从实验室到保管柜、从保管柜到呈交)都要有签名和时间。 一个常见的失败场景是:证据从技术同事的电脑拷贝到 U 盘,再从 U 盘拷到另一台电脑,中间没有任何记录——这时即使哈希值一致,【这段时间谁能接触到它】也是说不清的。
另外两个细节:① 见证人——在需要见证的场景下,见证人本身也是记录的一部分(他见证了什么、什么时候在场);② 国际协作——《联合国打击网络犯罪公约》在 2024-12 由联合国大会通过,中国等 70 余国签署,跨境取证协作有了新的框架。对涉外业务的组织来说,这意味着【证据能不能跨境采用】这件事,未来会有更明确的路径。
七、⚠️ 2026 现状
- 【行政场景的要求在明确】。 如上所述,2026-05-22 的征求意见稿把适用范围扩展到网络安全、数据安全等行政案件。对企业的实际影响是:过去觉得【取证规则是公安的事、和我们无关】的想法需要调整——在数据泄露事件里,你的取证质量会直接影响后续的定责与处置。
- 【程序细节被写得更细,这是好事】。 新增【获取账号密码决定书】【获取个人通讯内容决定书】这类文书、明确批准层级(县级以上/地市级以上)——这些规定让【什么情况下可以获取什么】变得可预期。对企业的实际参考是:内部调查如果涉及员工个人账号或通讯内容,应当参照这个思路(谁批准、有无见证、有无记录),否则即使查到了内容,也可能因为程序问题而无法使用(甚至引出侵犯个人信息权益的风险)。
- 【取证与合规是同一件事的两面】。 留存六个月的日志(6-10)、个人信息的处理规范(6-1)、事件报告与沟通(6-5)——这些看似不同的要求,在【出事之后要能说清楚发生了什么】这一点上汇合。实务上的建议是把它们放在同一个制度体系里设计:日志留存策略、取证预案、报告流程如果能一次设计好,出事时就不会出现【有日志但没有工具读】【有镜像但没有哈希记录】【有结论但没有过程记录】这类破碎状态。
- 【一个成本最低的起点】。 如果资源有限,优先做三件事:① 建立【事件发生时谁负责取证、第一个动作是什么】的一页纸预案(动作就是【先做内存与镜像、再关机】);② 准备一个干净的、独立的存储介质专用于存放证据镜像(不要用日常在用的移动硬盘);③ 规定【算哈希、记交接】两个动作必须做。这三件事成本极低,缺了它们,后面的一切都补不回来。
30 秒实验
今天做两个动作,各 15 秒:
- 在手边找一个文件,算一次它的 SHA-256。Windows 上用
Get-FileHash 文件名 -Algorithm SHA256,Linux/macOS 上用sha256sum 文件名。 然后改一个字符再算一次,看两串值有多不同——亲手做过一次,你对【哈希能证明没被动过】这件事的理解会比读十遍定义更牢。 - 想一下你所在环境里【出事之后第一个要做的事】是什么。如果是【赶紧关机/重启试试】,那说明现有流程与取证要求是冲突的——正确的第一动作通常是【记录并保全易失数据(内存、连接、进程)】,然后才隔离。 这个顺序平时写进一页纸,出事时能省掉几小时。
这一节要带走的一句是:取证的核心不是【我看到了什么】,而是【我怎么证明我看到的就是当时的原样】——哈希管内容,证据链管过程,两者缺一不可。
常见误区
-
错误:出了事赶紧关机断电,防止攻击者继续破坏。——纠正:这个动作会销毁大部分易失证据,而且往往没必要。关机断电会让内存中的进程、网络连接、登录会话、临时文件全部消失——而这些恰好是判断【攻击者怎么进来、做了什么、还有没有其他驻留点】的关键材料。更稳妥的顺序是:① 先记录并保全易失数据(内存镜像、当前连接与进程列表、已登录用户);② 再隔离(优先用网络隔离策略而不是关机);③ 保持系统带电——因为很多取证动作要在开机状态下用只读方式完成(镜像制作、日志导出)。当然有一个例外必须承认:如果攻击正在快速扩散(比如勒索软件正在加密共享目录),遏制优先于取证——所以这个判断必须由 6-5 里的【事件指挥官】来做,不能由现场每个人各自决定。
-
错误:只要算出哈希值一致,这段证据就没有问题了。——纠正:哈希只解决【内容与计算时刻是否一致】,它不解决另外三件事。① 计算时刻之前的内容对不对——如果提取时就已经不完整(比如漏了一部分日志),哈希只能证明【你手里这份没变】,不能证明【你手里这份是全的】;② 谁在什么时候接触过它——这是证据链要回答的;③ 取证程序是否合规——该批准的有无批准、该见证的有无见证、取证主体是否具备资格,这些属于合法性问题,哈希完全无法覆盖。 换句话说:真实性与完整性靠技术手段(哈希、镜像、时钟同步),合法性与关联性靠程序设计(批准、见证、编号、上下文)——后者往往比前者更容易出问题,因为它需要人按流程做,而不是运行一条命令。
-
错误:先把系统重装好恢复业务,取证以后再说。——纠正:重装会不可逆地销毁证据,而【以后】通常意味着证据已经不存在了。具体来说:重装会覆盖磁盘、清除日志、丢失内存中的痕迹;即使之后发现【这是起入侵事件、需要追责或报警】,也已经无法证明对方做了什么。 正确的顺序是把恢复和处置分开:① 先保全证据(镜像 + 内存 + 相关日志导出);② 再评估影响范围与根因;③ 然后才做清理与恢复;④ 恢复后要验证(确认没有残留的账号、任务、外连行为,见 6-5)。一个现实的折中是:如果业务压力极大,可以在保全证据之后,用【干净环境】先恢复对外服务——但前提是证据已经固定住,而不是【边恢复边取证】。
-
错误:内部调查不受那些取证规则约束,随便怎么查都行。——纠正:内部调查虽然不适用刑事取证规则,但它受另外两套约束。① 个人信息保护的相关要求——调查中获取员工个人账号、通讯内容、位置信息等,涉及个人信息处理,需要正当目的、必要范围与告知(参照 6-1 讲的隐私策略);② 证据可采信的问题——如果将来要用于劳动仲裁或民事诉讼,程序瑕疵同样会影响它的证明力。所以更稳的做法是【内部调查也按取证标准来】:有批准、有见证、有编号、有哈希、有交接记录。实务建议是在员工手册与信息安全制度里提前写明【公司有权在何种情形下、以何种方式对工作设备与账号进行审计】——提前写清比事后解释有效得多。
自测三问(点开对答案)
1. 哈希值为什么能证明【内容没被动过】?它的局限在哪? —— **原理上**:**哈希函数把任意长度的输入映射成定长输出,且具有雪崩效应(改一个字节,输出几乎完全不同)与抗碰撞性(很难找到两个不同输入得到同一个输出)**(5-5 有完整说明)。**所以【提取时算一次、呈交时再算一次,两值相同】就构成一个很强的证据:内容在这两点之间没有变化**——**Demo 里那个 4/64 就是在演示【哪怕只改一个字节,指纹也会完全不同】。** **局限有三条**:**① 它只能证明【与计算时刻一致】,不能证明内容本身完整、来源合法**(**漏采的数据不会因为哈希一致而变全**);**② 它能证明【没变】,但不能证明【没被人看过】**——**保密性不在它的能力范围内**;**③ 它的效力依赖于【计算过程本身可信】**——**如果算哈希的机器被控制、或者两次计算用的是不同版本的软件,比对的意义就打折**。**所以实务上要求【用只读方式、在受控环境下计算并记录工具与参数】。** 2. 为什么【证据链记录】里的移交记录这么重要? —— 因为它**回答的是【证据有没有被谁动过】这个问题,而这是证明力的核心组成部分**。**哈希能证明【内容一致】,但有一种情况哈希管不了**:**如果有人复制了一份、改动后再复制回来,而两次计算都没在对的时机做**——**这时只有【谁在什么时候持有过它】的记录能揭示出可疑窗口**。**另外,移交记录还有三个直接作用**:**① 它构成完整的保管链证据**,**任何一环缺失都会成为对方质疑的抓手**;**② 它能排除【取证人员自导自演】的怀疑**(**多人见证与签名是廉价的防伪手段**);**③ 它是内部追责与流程改进的依据**(**如果某次移交无人签名,那说明制度执行有洞**)。**实务上最有效的做法是把移交做成一个固定表单**:**每次交接填一行(时间、交出人、接收人、介质编号、哈希值、备注)**——**一行一行填下来,链条就是自动完整的。** 3. 出事后【先恢复业务、再取证】这个想法错在哪? —— 错在**它假定【证据以后还在】,而现实恰恰相反**。**处置动作对证据的破坏是快速且不可逆的**:**重启会清内存、重装会覆盖磁盘、清理临时文件会丢掉执行痕迹、日志轮转会让旧记录消失**(**而这些日志很可能就是 6-10 讲的那种【平时设成 30 天】的应用日志**)。**所以【以后再说】通常等于【永久失去】。** **但这不等于要在没有业务的情况下慢慢取证**——**正确的做法是把顺序拆成【保全 → 处置 → 恢复】三段**:**第一段尽可能短(抓易失数据、做镜像、导出相关日志,通常几十分钟到几小时),第二段把攻击者清出去、把漏洞堵上,第三段恢复业务并验证。** **如果业务压力极大,可以并行**:**在保全完成之后,用隔离的干净环境先恢复对外服务,同时在生产环境的取证副本上继续分析**——**前提是【保全】这一步已经完成,而不是边恢复边取证。**- ☐ 下一节(6-12 移动设备的管理)
相关笔记
- 日志是调查事故原因的重要线索 —— 上一篇:日志是最常见的一类电子证据
- 移动设备的管理 —— 下一篇:最容易丢失、也最常成为证据载体的设备
- 防止数据被篡改的技术 —— 哈希三性质:定长、单向、抗碰撞
- 突发事件的早期应对 —— 为什么取证的顺序在处置之前
- 🛡️ 网络与信息安全 · 索引 —— 全课路线图