Operating system | Unix, Unix-like |
---|---|
Platform | Cross-platform |
Type | Command |
cksum
is a command in Unix and Unix-like operating systems that generates a checksum value for a file or stream of data. The cksum command reads each file given in its arguments, or standard input if no arguments are provided, and outputs the file's 32-bit cyclic redundancy check (CRC) checksum and byte count.[1] The CRC output by cksum is different from the CRC-32 used in zip, PNG and zlib.[2]
The cksum
command can be used to verify that files transferred by unreliable means arrived intact.[1] However, the CRC checksum calculated by the cksum
command is not cryptographically secure: While it guards against accidental corruption (it is unlikely that the corrupted data will have the same checksum as the intended data), it is not difficult for an attacker to deliberately corrupt the file in a specific way that its checksum is unchanged. Unix-like systems typically include other commands for cryptographically secure checksums, such as sha256sum.
The command is available as a separate package for Microsoft Windows as part of the UnxUtils collection of native Win32 ports of common GNU Unix-like utilities.[3]
Latest GNU Coreutils cksum provides additional checksum algorithms via -a option, as an extension beyond POSIX.[1]