lzip: Trailing data

 
 8 Extra data appended to the file
 *********************************
 
 Sometimes extra data are found appended to a lzip file after the last
 member. Such trailing data may be:
 
    * Padding added to make the file size a multiple of some block size, for
      example when writing to a tape. It is safe to append any amount of
      padding zero bytes to a lzip file.
 
    * Useful data added by the user; a cryptographically secure hash, a
      description of file contents, etc. It is safe to append any amount of
      text to a lzip file as long as none of the first four bytes of the text
      match the corresponding byte in the string "LZIP", and the text does
      not contain any zero bytes (null characters). Nonzero bytes and zero
      bytes can't be safely mixed in trailing data.
 
    * Garbage added by some not totally successful copy operation.
 
    * Malicious data added to the file in order to make its total size and
      hash value (for a chosen hash) coincide with those of another file.
 
    * In rare cases, trailing data could be the corrupt header of another
      member. In multimember or concatenated files the probability of
      corruption happening in the magic bytes is 5 times smaller than the
      probability of getting a false positive caused by the corruption of the
      integrity information itself. Therefore it can be considered to be
      below the noise level. Additionally, the test used by lzip to
      discriminate trailing data from a corrupt header has a Hamming
      distance (HD) of 3, and the 3 bit flips must happen in different magic
      bytes for the test to fail. In any case, the option '--trailing-error'
      guarantees that any corrupt header will be detected.
 
    Trailing data are in no way part of the lzip file format, but tools
 reading lzip files are expected to behave as correctly and usefully as
 possible in the presence of trailing data.
 
    Trailing data can be safely ignored in most cases. In some cases, like
 that of user-added data, they are expected to be ignored. In those cases
 where a file containing trailing data must be rejected, the option
 '--trailing-error' can be used. ⇒--trailing-error.