National Software Reference Library
The National Software Reference Library (NSRL) consists of sets of known 'traceable' hashes produced by the National Institute of Standards and Technology (NIST). Useful for data reduction, it can be used to eliminate or highlight files from examination. The NSRL creates what they call a "Reference Data Set" or RDS. The RDS does not indicate if a file is known good or bad, only that it is known.
Although quite large, the NSRL is distributed online can be downloaded from the NSRL website. The most recent release was version 2.22 in September 2008.
NSRL File Format
Each RDS consists of several files, but the hashes are stored in NSRLFile.txt. These files have a header followed by many hash records. The header denotes the columns in each file. (See the External Links for the complete specification). RDS files can be used directly with programs like md5deep, FTK, and EnCase.
The file format has changed slightly over time. The latest version was dated 7 Feb 2007:
Starting in version 2.0, the NSRL moved the hashes to the start of each line and dropped the MD4 hash. The file header:
Information on the older header version is kept here so that programs can read older files. The file header:
OpSystemCode refers to the operating system code. The SpecialCode is a single character that can be used to mark records. A normal file has a blank value here. An M in this field denotes a malicious file.