首页 百科知识 简述将数据即时写入文件的方法

简述将数据即时写入文件的方法

时间:2023-10-16 百科知识 版权反馈
【摘要】:目前,保证数据完整性的最主要的方法是采用散列技术,也称为散列值或消息摘要技术,它是一种与基于密钥的加密不同的数据转换类型。若相同,则说明数据是完整的,没有经过修改的;否则是经过修改过的。通过以上过程处理后的通信,无论是保密性,还是数据完整性,都是非常安全的。

9.4 数据完整性

在9.3节中介绍了数据保密技术,大家可能已经注意到,虽然攻击者获得了经过加密后的密文读不懂是什么内容,但他可以修改密文内容,并重发。这样接收者收到的数据是不完整的,并可能产生歧义,安全的网络通信必须解决这个问题,即必须保证数据的完整性。本节我们将给大家介绍如何防止攻击者修改密文。

目前,保证数据完整性的最主要的方法是采用散列技术,也称为散列值或消息摘要技术,它是一种与基于密钥(对称密钥或公钥)的加密不同的数据转换类型。散列就是通过把一个叫做散列算法的单向数学函数应用于数据,将任意长度的一块数据转换为一个定长的、不可逆转的数字。所产生的散列值的长度应足够长,因此使找到两块具有相同散列值的数据的机会很少。即不同的数据所产生的散列值是不相同的。同时,可以由数据产生散列值,但由散列值不能推导出原始数据。系统在发送前产生原始数据的散列值,散列值与数据同时发送。在接收方,根据数据产生另外一个散列值,然后将两个散列值进行比较,如果两者相同,则数据在传输期间没有发生任何改变,否则数据已被修改。

最常用的单向散列函数有MD5、SHA-1等。MD5的全称是Message-Digest Algorithm 5,在20世纪90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,由MD2/MD3/MD4发展而来的。MD5的实际应用是对一段Message(字节串)产生fingerprint(指纹),可以防止被“篡改”。其应用非常广泛,MD5广泛用于加密和解密技术上,在很多操作系统中,用户的密码是以MD5值(或类似的其他算法)的方式保存的,用户Login的时候,系统把用户输入的密码计算成MD5值,然后再去和系统中保存的MD5值进行比较,以验证该用户的合法性。同时,在设计数据库系统时,常常会设计一个验证用户身份的模块,在设计过程中,可以将用户输入的账号信息通过MD5函数转换成一串数字,不能通过这些数字逆推出用户的输入,然后再将这些数字写入到数据库中,这样的好处是,即使是超级用户,也无法得到用户的账号信息,从而使系统的安全性大大提高。

关于MD5算法实现,有兴趣的读者,可以利用Internet搜索或与作者联系。接下来我们将以一个实例来说明利用MD5算法来传输一个文件。

假设现有一个很重要的商业文件(文件名为:合作事宜.doc)必须安全地传输给对方。

分析:该文件由于是DOC文件,若不采用安全措施,则别人随时有可能窃听或修改该文件,所以为了防止窃听,采用前面所介绍PGP加密手段;为了防止修改,则采用MD5数字签名技术。

步骤:

1.首先采用PGP技术加密该文件,在此不再赘述。

2.采用MD5算法对该加密的文件进行数字签名。

我们采用一个MD5的专用工具(Hyper Hasher),大家可以从http://hyperhasher.cyberdogtech.com/网站下载该工具。该工具能够产生MD2/MD4/MD5/SHA-1/SHA-256/SHA-384/CRC16/CRC32等值。其主界面如图9-41所示。

img334

图9-41 Hyper Hasher主界面

第一步:单击Analyzing文本框后的“浏览”按钮,选择“合作事宜.doc”文件。再勾选“MD5”后的复选按钮,再按下“Hash It!”按钮,此时便产生了MD5数字签名的指纹为:E617348B8947F28E2A280DD93C75A6AD,这个指纹便是利用MD5算法产生的,同时利用这个指纹不能推导出原始数据,如图9-42所示。

img335

图9-42 产生的MD5指纹

第二步:将经过加密后的“合作事宜.doc”传输给对方,然后再将这个指纹E617348B8947F28E2A280DD93C75A6AD也传输给对方。

第三步:对方收到“合作事宜.doc”文件后,同样对该文件产生一个MD5指纹X,然后用X与收到的E617348B8947F28E2A280DD93C75A6AD进行比较。若相同,则说明数据是完整的,没有经过修改的;否则是经过修改过的。值得注意的是,只要是采用MD5算法的软件,无论是什么软件,其产生的MD5散列值是相同的。

第四步:在保证数据的完整性后,再对“合作事宜.doc”进行解密。

通过以上过程处理后的通信,无论是保密性,还是数据完整性,都是非常安全的。希望读者灵活运用这些安全技术。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈