基于数字加密的电子文件真实性探析

自20世纪中叶以来,档案载体开始由纸张一统天下的局面演变为纸张、磁带、光碟、胶片等多分天下的新形势,至此,一轮新的档案实践和理论大探讨就又开始了,传统档案学理论再质疑和重新发现中,跌跌拌拌,确立了新的理论体系,并一步一步迈向学科范式革命,和时代接轨,和其他学科融合。计算机技术成为社会生活的基础技术之后,档案必然面临新的抉择,原因很简单:档案是什么?从二元档案理论而言,档案包含其物质的统一体和信息的统一体,在新的技术环境下,无论是档案物质形式(存储在磁性载体上的二进制代码形式),还是其信息内容(以计算机技术手段记录的所有元数据),都和传统社会截然不同了。而正是因为传统档案学理论在新的环境下,无法确认二进制代码形式档案的原始性、真实性,才有了我们今天这篇文章要谈的话题。

虽然在我读过的诸多文献中,对档案真实性的探讨已很充沛,然而,我认为技术问题还需技术来解决。对于电子文件的真实性,通过数字加密的方式来进行验证,或许可以从技术的角度对电子文件的真实加以保障。

电子文件真实性问题是如何产生的?

电子文件管理理论第一次系统全面的将档案管理把物理管理和信息内容管理区分开,档案的信息和载体在一定条件下是可以分离的,信息终于摆脱载体的束缚,可以在不同的人群中自由扩散,并最终由独立个体的大脑组成社会的记忆。“信息和载体的可以分离”可以说是造成“电子文件真实性问题”的核心根源,因为传统鉴辨学的理论在这种学说上无法奏效,传统鉴辨学鉴定一份档案真伪,首先要从其实体进行鉴定,而如果档案的信息和载体可以分离,那么对实体的鉴辨则没有意义,而如果没有实体鉴辨结果的束缚,电子文件内容的可更改性给档案真实性的鉴定,带来了毁灭性的的消极影响。

纸张独霸天下的时代,伪造档案可以通过技术手段加以鉴别,再佐以内容的鉴别(如根据当时的书写规范、特定的历史环境以及档案产生的情境),可以以较低的成本鉴别出其真伪,而若要进行伪造,想要满足所有鉴辨条件,除成本上的因素外,概率上也是无法完成的。但是电子文件的伪造极为便捷,收到上级的电文通知后,对其中的数字加以修改,再转发给自己的下级,即可改变文件,即使采用PDF等无法修改的电子文件格式,也可以通过抄袭等手段重新制作一份相同格式和形式的文件即可,接收者如果没有特定的鉴辨能力和技术手段,无法识别其真伪。即便是非人为主观因素,一份电子文件在传输过程中,也有可能因为各种客观条件而导致信息的错误。因此,电子文件的真实性饱受质疑,是不可避免的。

在部分学者的文献中指出,在电子文件管理领域,没有必要去纠结文件的原始性、可靠性,只要保证文件的完整性、真实性,即可满足电子文件工作的需要,并提出了很多保证真实性的管理手段。然而,忽略部分技术高手的能力,把希望寄托于规则和管理,在一些重要领域,以及电子文件作为呈堂证供时的法律严肃,其档案的特性将要打上一个大大的问号。

数字加密的基本模式

数字加密主要有两种:对称加密和非对称加密。对称加密需要双方知道私钥,一方用私钥加密,另一方面用私钥解密。非对称加密则有一对私钥和公钥,把公钥告知对方,让对方用公钥对信息加密,发送过来,自己则可以用私钥解密获取信息。

在加密的过程中,有三个要素:信息、密钥、算法。可用下图加以表示:

encode-decode

在日常生活中我们经常会遇到这样的加密解密,例如:

  • ?+1=2 = 2-1=?
  • 摩尔电码

在?+1=2的这个例子中,?代表要加密的信息,1代表密钥,2代表加密后的信息,?和2之间的数量关系代表算法,如果你手上有1,知道了对方发过来的信息2,那么就可以用解密算法2-1获得?的具体内容。摩尔电码则是在电码使用者之间相互怀揣一本密码本,通过点划规则,来获取最终对方要告诉自己的情报,其中获得的电文为加密后的信息,密码本记录的点划规则与信息(文字)之间的对应规则为算法。

在摩尔电码的例子中,算法本身就是密钥,只有双方在知道算法的情况下,才能正确传递信息。由此可见,在加密的过程中,可以公开的部分是不同的。有的时候,只有被加密的信息可以被公开,例如摩尔电码,有的时候算法也可以被公开,有的时候公钥也可以被公开。

目前最流行的是非对称加密,即由“待加密信息+公钥+加密算法=加密后信息=私钥+解密算法+解密后信息”组成的加密模式。在这种模式下,公钥是可以被别人知道的,但因为公钥只被用于加密,无法用于解密,因此其他人即使获得了公钥,也无法利用拦截到的信息和密钥进行解密,只有拥有私钥者,才能解密获取信息内容。当然,在一些特殊情况下,加密者可以能使用私钥对信息加密,并将公钥公之于众,让公众用公钥解密该信息以读取信息内容,以此证明该信息是自己发布的(虽然没有人知道该私钥的具体内容,但是只有利用该私钥才能得到该公钥,因此,只有私钥的主人才能制造出该公钥才能解密的加密后的信息,而目前将这一模式运用到极致的,是方兴未艾的虚拟货币比特币)。

电子文件真实性问题中加密技术的使用

由上文可知,想要让一份电子文件保证其由特定的人发出,最可行的方法就是通过特定的加密,将加密后得到的公钥公之于众,以此确认该电子文件由该特定的人发出。由于电子文件的载体与信息的可分离特性,即使一份文件由一个人转发给另外一个人,甚至转发给多人,该公钥也不会发生改变,除非该文件被修改。

那么,在电子文件真实性的保障上,需要如何去构建呢?其实数字签名技术已然可以解决一些问题。这其中涉及两个算法:RSA和HASH算法。其中RSA用于加密算法,而HASH用于生成报文摘要的算法。数字签名服务由特定的取得国家或国际认可资质的机构提供,可以认为是一个公正公平的裁判,因为RSA和HASH算法是公开的,所以没人可以作弊。

首先,收发双方都应该获得同一数字签名公司的服务,因为只有在该公司所提供的数字签名系统下,公钥和私钥才能在算法中获得正确的结果。发信方利用该系统发送电子文件,该系统通过对该文件进行HASH算法获取特定的一串字符(即“报文摘要”),于此同时利用发信方的私钥对该报文摘要进行RSA算法加密,得到的信息即“数字指纹”,并将该指纹加入到文件中,成为文件的一项元数据,最后,将该文件发送给收信方。收信方收到文件后,利用该系统对收到的文件进行分解,剖离出数字指纹和原本的文件,对剖离出来的文件进行同样的HASH计算,获得一个摘要,同时利用发信方发来的公钥进行RSA解密计算,也将得到一个摘要,将这个摘要和由文件计算得到的摘要进行对比,如果两个摘要相同,则说明和发信方发来的原信息是一致的。而如果不同,则说明要么不是使用该公钥(一个公钥只对应一个人)的人的私钥签名的信息,要么在信息转发过程中,信息被修改,总之该文件已不可信。

shuzhiqianming

其中,“报文摘要”对于档案行业的人而言比较难以理解。其实,任何数字信息,都是以二进制代码形式存在于磁性载体的,即01串,例如10010001010001……这样一串代码,通过HASH算法,可以算出一个比较简短的01串,而HASH算法一般都是不可逆的,这一简短的01串无法恢复为完整的01串,也可以看作不可逆加密。而在计算机中,这一01串被以字符的形式表现出来,和原代码串对应的电子文件对应,因此被称为该文件的“报文摘要”。一般情况下,要做到两个文件经过同一个HASH运算得到相同的摘要,其概率比捡到两粒相同的沙子的概率还要低,因此,可以认为该HASH值是唯一的。

“数字指纹”则是对该摘要进行加密后得到的一个新代码串,把这个代码串加入到文件代码串里面,一起传输,能够被该签名系统识别,并用来作为检验是否是该签名用户和文件的唯一对应性,因此具有“指纹”的作用。因为算法的复杂性,只有该私钥和该文件才能得到该指纹,因此指纹也具有唯一性,无法被伪造。

数字签名中使用到了多套加密算法,不同的数字签名服务机构其内部的签名算法可能在公开的算法上再加入新的复杂算法(保密的)以保障其服务的安全性,除了RSA算法之外,还有EIGamal、Des/DSA、椭圆曲线算法等等,上文提到的比特币就使用了椭圆曲线加密算法。

HASH(哈希算法,即散列函数)得到hash值的算法包括MD2、MD4、MD5、SHA-1等,其中MD5和SHA-1被广泛使用,因为HASH具有把长串摘要为短串、不可逆、得到的串长度一定(如MD5为32位或16位)、对应唯一性等特点,因此,在对文件进行搜索和对比,以及把用户密码加密后保存等领域有普遍的使用。

将数字加密技术用于电子文件真实性问题所遇到的问题

虽然使用数字签名,或者跟数字签名技术原理一样的其他加密技术,可以解决电子文件的真实性问题,但是为何在电子文件领域仍然无法被广泛使用呢?为何电子邮件、QQ聊天等在法庭上无法作为确凿证据呢?

第一,技术风险。虽然目前市场上取得数字签名服务资质的机构不多,但是仍然有不少冒泡数字签名机构,因为电子文件证据性未得确认等原因,人们对这方面的知识仍然很薄弱,冒牌机构仍然很多。前文提到,数字签名机构对自己的签名系统具有安全责任,必须保证用户的签名安全,技术薄弱的机构仍然存在技术风险,其核心算法仍然有可能被盗窃或被破解,一旦失窃或被破解,那么所有签名过的文件都面临风险,因为盗窃者可以根据所盗的算法伪造签名。

第二,数字签名服务的成本比较高。目前市场上的数字签名服务费用依旧很高,一般是按年付费,从几千元到几十万元每年不等。对于普通人和小企业而言,一方面需要数字签名的电子文件比较少,另一方面也未重视,只有大型企业和政府等部门,才经常采购数字签名。而且,提供数字签名的机构之间的服务不通用,一般机构只能在自己内部使用签名,如果要在不同机构之间签名,必须采购对方所使用的服务商提供的服务。

第三,使用不便捷。目前市面上安全性最高的加密手段为硬件加密,常见的类似于我们使用网银时所用到的U盾,而在加密时常使用加密狗,也类似一个UKey,使用时将其插在电脑上,需要安装对应系统的驱动程序,有的甚至只能在特定电脑上使用,使用过程中还需要输入密码。(如果要回到上文的逻辑中,其实“Ukey+输入密码”是为了获取你的私钥。)这些操作极不方便,除非电子文件真的很重要,否则很少有人愿意花那么多时间来进行签名。

第四,使用者身份的不确定性。及时上面这些问题都解决了,还有最后一个问题仍然无法让电子文件走上法庭成为呈堂证供。如果盗用者盗用了私钥,那签名仍然有效。目前的技术而言,签名只认私钥,不认人,一旦盗用者获取了Ukey,盗取了UKey密码,那么仍然可以对电子文件进行签名。除非有一天,数字签名技术可以实现通过人体生理特征作为私钥进行签名。

结语

电子文件的真实性是档案学领域面临的一个重要话题,通过数字加密技术,可以更从某种程度上更好来解决电子文件真实性问题,但无论如何,技术仅仅是一方面,想要让电子文件最终像档案一样,能够作为呈堂证供,作为社会记忆的原始材料,还需要再管理、法律、道德等方面不断建设。

2015-01-25