<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.sarg.dev/index.php?action=history&amp;feed=atom&amp;title=File_verification</id>
	<title>File verification - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.sarg.dev/index.php?action=history&amp;feed=atom&amp;title=File_verification"/>
	<link rel="alternate" type="text/html" href="https://wiki.sarg.dev/index.php?title=File_verification&amp;action=history"/>
	<updated>2026-04-21T18:28:50Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://wiki.sarg.dev/index.php?title=File_verification&amp;diff=360333&amp;oldid=prev</id>
		<title>imported&gt;VulcanSphere: Trimming #ShortDescription #VulcanSphere</title>
		<link rel="alternate" type="text/html" href="https://wiki.sarg.dev/index.php?title=File_verification&amp;diff=360333&amp;oldid=prev"/>
		<updated>2025-10-26T01:55:24Z</updated>

		<summary type="html">&lt;p&gt;Trimming #ShortDescription #VulcanSphere&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Short description|Operation of checking the integrity of file}}&lt;br /&gt;
{{Refimprove|date=September 2014}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;File verification&amp;#039;&amp;#039;&amp;#039; is the process of using an [[algorithm]] for verifying the integrity of a [[computer file]], usually by [[checksum]]. This can be done by [[file comparison|comparing two files]] bit-by-bit, but requires two copies of the same file, and may miss systematic corruptions which might occur to both files. A more popular approach is to generate a [[Cryptographic hash function|hash]] of the copied file and comparing that to the hash of the original file.&lt;br /&gt;
&lt;br /&gt;
== Integrity verification ==&lt;br /&gt;
[[Computer file|File]] integrity can be compromised, usually referred to as the file becoming [[Data corruption|corrupted]].  A file can become corrupted by a variety of ways: faulty [[storage media]], errors in transmission, write errors during copying or moving, [[software bug]]s, and so on.&lt;br /&gt;
&lt;br /&gt;
[[hash function|Hash]]-based verification ensures that a file has not been corrupted by comparing the file&amp;#039;s hash value to a previously calculated value. If these values match, the file is presumed to be unmodified.  Due to the nature of hash functions, [[hash collision]]s may result in [[false positive]]s, but the likelihood of collisions is often negligible with random corruption.&lt;br /&gt;
&lt;br /&gt;
== Authenticity verification ==&lt;br /&gt;
It is often desirable to verify that a file hasn&amp;#039;t been modified in transmission or storage by untrusted parties, for example, to include malicious code such as [[virus]]es or [[Backdoor (computing)|backdoor]]s. To verify the authenticity, a classical hash function is not enough as they are not designed to be [[collision resistance|collision resistant]]; it is computationally trivial for an attacker to cause deliberate hash collisions, meaning that a malicious change in the file is not detected by a hash comparison.  In cryptography, this attack is called a [[preimage attack]].&lt;br /&gt;
&lt;br /&gt;
For this purpose, [[cryptographic hash function]]s are employed often. As long as the hash sums cannot be tampered with &amp;amp;mdash; for example, if they are communicated over a secure channel &amp;amp;mdash; the files can be presumed to be intact. Alternatively, [[digital signature]]s can be employed to assure [[tamper resistance]].&lt;br /&gt;
&lt;br /&gt;
== File formats ==&lt;br /&gt;
A &amp;#039;&amp;#039;&amp;#039;checksum file&amp;#039;&amp;#039;&amp;#039; is a small file that contains the checksums of other files.&lt;br /&gt;
&lt;br /&gt;
There are a few well-known checksum file formats.&amp;lt;ref&amp;gt;&lt;br /&gt;
[https://ant.apache.org/manual/Tasks/checksum.html &amp;quot;Checksum&amp;quot;].&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Several utilities, such as [[md5deep]], can use such checksum files to automatically verify an entire directory of files in one operation.&lt;br /&gt;
&lt;br /&gt;
The particular hash algorithm used is often indicated by the file extension of the checksum file.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;.sha1&amp;quot; file extension indicates a checksum file containing 160-bit [[SHA-1]] hashes in [[sha1sum]] format.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;.md5&amp;quot; file extension, or a file named &amp;quot;MD5SUMS&amp;quot;, indicates a checksum file containing 128-bit [[MD5]] hashes in [[md5sum]] format.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;.sfv&amp;quot; file extension indicates a checksum file containing 32-bit CRC32 checksums in [[simple file verification]] format.&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;crc.list&amp;quot; file indicates a checksum file containing 32-bit CRC checksums in brik format.&lt;br /&gt;
&lt;br /&gt;
As of 2012, best practice recommendations is to use [[SHA-2]] or [[SHA-3]] to generate new file integrity digests; and to accept MD5 and SHA-1 digests for backward compatibility if stronger digests are not available.&lt;br /&gt;
The theoretically weaker SHA-1, the weaker MD5, or much weaker CRC were previously commonly used for file integrity checks.&amp;lt;ref&amp;gt;NIST.&lt;br /&gt;
[http://csrc.nist.gov/groups/ST/hash/policy.html &amp;quot;NIST&amp;#039;s policy on hash functions&amp;quot;] {{Webarchive|url=https://web.archive.org/web/20110609064344/http://csrc.nist.gov/groups/ST/hash/policy.html |date=2011-06-09 }}.&lt;br /&gt;
2012.&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;&lt;br /&gt;
File Transfer Consulting.&lt;br /&gt;
[http://www.filetransferglossary.com/category/integrity/ &amp;quot;Integrity&amp;quot;].&lt;br /&gt;
&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;[http://www.sans.org/security-resources/idfaq/integrity_checker.php &amp;quot;Intrusion Detection FAQ: What is the role of a file integrity checker like Tripwire in intrusion detection?&amp;quot;] {{Webarchive|url=https://web.archive.org/web/20141012055343/http://www.sans.org/security-resources/idfaq/integrity_checker.php |date=2014-10-12 }}.&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;&lt;br /&gt;
Hacker Factor.&lt;br /&gt;
[http://fotoforensics.com/tutorial-digest.php &amp;quot;Tutorial: File Digest&amp;quot;].&lt;br /&gt;
&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;&lt;br /&gt;
Steve Mead.&lt;br /&gt;
[http://www.nsrl.nist.gov/Documents/analysis/draft-060530.pdf &amp;quot;Unique File Identification in the National Software Reference Library&amp;quot;]&lt;br /&gt;
p. 4.&lt;br /&gt;
&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;&lt;br /&gt;
Del Armstrong.&lt;br /&gt;
[http://www.giac.org/paper/gcux/188/introduction-file-integrity-checking-unix-systems/104739 &amp;quot;An Introduction To File Integrity Checking On Unix Systems&amp;quot;].&lt;br /&gt;
2003.&lt;br /&gt;
&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;&lt;br /&gt;
[http://www.cisco.com/web/about/security/intelligence/iosimage.html &amp;quot;Cisco IOS Image Verification&amp;quot;]&lt;br /&gt;
&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;&lt;br /&gt;
Elizabeth D. Zwicky, Simon Cooper, D. Brent Chapman.&lt;br /&gt;
[https://books.google.com/books?id=Q0ErhHGxNWcC &amp;quot;Building Internet Firewalls&amp;quot;].&lt;br /&gt;
p. 296.&lt;br /&gt;
&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;&lt;br /&gt;
Simson Garfinkel, Gene Spafford, Alan Schwartz.&lt;br /&gt;
[https://books.google.com/books?id=50maN7VmpusC &amp;quot;Practical UNIX and Internet Security&amp;quot;].&lt;br /&gt;
p. 630.&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CRC checksums cannot be used to verify the authenticity of files, as CRC32 is not a collision resistant hash function -- even if the hash sum file is not tampered with, it is computationally trivial for an attacker to replace a file with the same CRC digest as the original file, meaning that a malicious change in the file is not detected by a CRC comparison.{{Citation needed|date=March 2021}}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Checksum]]&lt;br /&gt;
* [[Data deduplication]]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Computer files}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Computer files]]&lt;br /&gt;
[[Category:Error detection and correction]]&lt;/div&gt;</summary>
		<author><name>imported&gt;VulcanSphere</name></author>
	</entry>
</feed>