The verification options available on ShotPut Pro include: XXHash-64, XXHash3-64, XXHash-128, MD5, SHA-1, SHA-2 256, SHA-2 512, C4, CRC-32and one final verification option that is available to users is File Size Comparison. 


Here is a quick rundown of each of the verification options and how they differ from one another:


  1. XXHash Algorithms: These algorithms are generally the fastest verification checksum. The XXHash family of algorithms are all non-cryptographic hash algorithms working at speeds close to RAM limits. Non-cryptographic functions try to avoid collisions for non malicious input, and are typically much faster as a result. Of the 4 types of XXHash algorithms, there are 3 ShotPut Pro implements: XXHash-64, XXHash3-64, and XXHash-128. Each of these has different speeds and collision spaces.


  1. MD5: MD5 was considered the standard for years before XXHash-64 arrived. Although MD5 is significantly slower than all 3 XXHash algorithms, it is still a very viable option and many industry professionals are very familiar with it. If you’re looking for specifics on XXHash performance metrics against other formats such as MD5, you can find this information on their Github repository using the link in the description.


  1.  SHA versions: These checksums are generally used to keep continuity in workflows. They are rigorous checksums but are outdated when compared to XXHash-64 because SHA versions of checksums are generally slower than most other verification methods. The SHA algorithms that ShotPut Pro implements are SHA-1, SHA-2 256, and SHA-2 512. 


  1. C4: Like SHA formats, C4 is slow, but very robust. A distinctive advantage of using C4 is the production of URL safe output, which means that if a file was renamed to its C4 value, it has the ability to be posted on the web.


  1. CRC-32: This verification option is a legacy format which we do not recommend.  However, it is included to permit conformance to older work flows which require it.


  2. File Size Comparison: This option compares the file size of the source to the copy and is faster than the checksum options. While our apps can detect some transit problems during the replication process, only a full checksum verification can ensure the bytes read match the bytes copied.