HASH Selection menu



    96Crypt provides a selection between 10 different HASH function algorithms.
    The user will make his choice based on his own preferences between:.
    MD5, RMD-128, RMD-160, TIGER, HAVAL-5, SHA1, SHA256, SHA384, SHA512 or
    96Crypt which is a combined process using HAVAL-5 & SHA256 XORed with SHA512.

    A HASH function is a cryptographic algorithm that accepts input, arbitrary in length
    and renders a fixed-length output. In 96Crypt, HASH functions are applied to the
    user-selected password in order to transform any password using variable size letters
    and numbers into a fixed-length string which is called the hash value or "key".
    However, this "compression" that maps an arbitrary finite bitlength message (file) to
    a fixed bitlength output is a one-way irreversible function.

    The length of the result "key" is totally independent of the number of letters/numbers
    contained in the user-provided secret password. This result "key", derived from the
    user-provided secret password, has a fixed length defined ONLY by the selected HASH
    function. This result "key" represents the "fingerprint" of the user-provided secret
    password.

    The result "key" is very similar to a "fingerprint". It is UNIQUE. The longer the
    key-length is, the lower (<< 10^-128) the mathematical probability is to find another
    identical result "key". This is the main reason why long-key HASH functions are more
    secure than short or medium size HASH result keys. [SHA512 (512-bit) vs MD5 (128-bit)]

    In cases where the selected HASH provides a shorter key length than what is required
    by the chosen cipher, like selecting MD5 (128-bit result) with Blowfish (448-bit required),
    96Crypt will pad the "key" to bring it to the required length before feeding it to the
    block cipher to complete the process.

    In any case, even when the HASH function returns the right key length as required by the
    selected cipher, 96Crypt will still use a HASH cascading function with multiple HASH/SALT
    rounds to provide a result key that meets the highest level of security.
    As a matter of fact, cascading HASH functions h(x) = h1(x) || h2(x) || .. || hn(x) delivers
    a sure collision resistant HASH function h, if either h1, h2 or hn are collision resistant.
    96Crypt HASH cascading implementation may be represented by the following simplified scheme:
    The user selected HASH function from the HASH select menu is always considered as h1, and
    96Crypt systematically attributes SHA256 to h2 during one round, then SHA384 in the following
    round and finally SHA512 in the last round. This increased strength is worth the little loss in
    speed, yet largely compensated by the usage of pure assembly language code.
    As SHA256, SHA384 and SHA512 are considered (so far) very secure and collision-free, therefore,
    even when the user selected HASH function is MD5 (for h1), 96Crypt still provides a collision-free
    key to feed the block cipher.

    • 1. 96Crypt Multi-Combined
      This is the default selection. It is a combined process using HAVAL-5 & SHA256 XORed with SHA512.



          HASHer selection


    • 2. MD5
          MD5 was developed by Professor Ronald L. Rivest of MIT, It produces a 128-bit output
          "fingerprint / message digest" of any variable length input. Copyrighted (C) 1991-92
          RSA Data Security Inc.
          As the MD5 HASH funcion produces a 128-bit key, 96Crypt auto-appends the key length
          supplied by MD5, with additional multiple HASH/SALT rounds using a HASH cascading
          routine, to extend the key length as needed by the selected cipher.


    • 3. RMD-128
          RipeMD-128 is a 128-bit cryptographic hash function, designed by Hans Dobbertin,
          Antoon Bosselaers & Bart Preneel and developed in the framework of project RIPE
          1988-1992 (RACE Integrity Primitives Evaluation). It produces a 128-bit output
          "fingerprint / message digest". The authors do not hold any patents on this algorithm.
          As the RMD-128 HASH funcion produces a 128-bit key, 96Crypt auto-appends the key length
          supplied by RMD-128, with additional multiple HASH/SALT rounds using a HASH cascading
          routine, to extend the key length as needed by the selected cipher.


    • 4. RMD-160
          RipeMD-160 is a 160-bit cryptographic hash function, designed by Hans Dobbertin,
          Antoon Bosselaers & Bart Preneel and developed in the framework of project RIPE
          1988-1992 (RACE Integrity Primitives Evaluation). It produces a 160-bit output
          "fingerprint / message digest". The authors do not hold any patents on this algorithm.
          As the RMD-160 HASH funcion produces a 160-bit key, 96Crypt auto-appends the key length
          supplied by RMD-160, with additional multiple HASH/SALT rounds using a HASH cascading
          routine, to extend the key length as needed by the selected cipher.


    • 5. TIGER
          Tiger is a fast new hash function, designed by Ross Anderson & Eli Biham to run
          quickly on 64-bit processors and produce a 192-bit hash output. Tiger has no
          usage restrictions nor patents.
          96Crypt auto-appends the 192-bit key length supplied by TIGER, with additional multiple
          HASH/SALT rounds using a HASH cascading routine, to provide a collision resistant key.


    • 6. HAVAL-5
          HAVAL (Hashing Algorithm with Variable Length) was designed in 1993 by Yuliang Zheng,
          Josef Pieprzyk and Jennifer Seberry, University of Wollongong, Australia.
          HAVAL produces a variable length hash digest of 128, 160 192, 224 & 256-bit.
          HAVAL can process the input in 3, 4 or 5 passes. The implementation of HAVAL-5
          in 96Crypt produces only the 256-bit key.
          96Crypt pads the 256-bit key length supplied by HAVAL-5, with additional multiple
          HASH/SALT rounds using a HASH cascading routine, to provide a collision resistant key.


    • 7. SHA-1
          The Secure Hash Algorithm (SHA) was developed by NIST along with the NSA in 1993.
          SHA1 can produce a 160-bit "message digest" and seems to provide higher security level
          than MD5. The Hash function is one-way and collision-free.
          As the SHA-1 HASH funcion produces a 160-bit key, 96Crypt auto-appends the key length
          supplied by SHA-1, with additional multiple HASH/SALT rounds using a HASH cascading
          routine, to extend the key length as needed by the selected cipher.


    • 8. SHA256
          SHA256 is a newer secure hash standard announced by NIST on October 12, 2000.
          It was approved by NIST on August 26, 2002. It produces a 256-bit "message digest".
          96Crypt pads the 256-bit key length supplied by SHA256, with additional multiple
          HASH/SALT rounds using a HASH cascading routine, to provide a collision-free key.


    • 9. SHA384
          SHA384 is a newer secure 384-bit key hash standard announced by NIST on
          October 12, 2000. Although the relative number of rounds with the SHA384 seems
          lower than for SHA-1, however, SHA384 still provides higher security level than
          preceding hash functions.
          96Crypt pads the 384-bit key length supplied by SHA384, with additional multiple
          HASH/SALT rounds using a HASH cascading routine, to provide a collision-free key.


    • 10. SHA512
          Like the SHA384, SHA512 is a newer secure 512-bit key hash standard announced
          by NIST on October 12, 2000. Although the relative number of rounds with the SHA512
          seems lower than for SHA-1, however, SHA512 provides today the highest security level
          than any preceding hash functions.
          96Crypt pads the 512-bit key length supplied by SHA512, with additional multiple
          HASH/SALT rounds using a HASH cascading routine, to provide a collision-free key.






    The HASH functions implemented in 96Crypt are listed below:

Algorithm Name
Rendered Key length
MD5
128-bit
RMD-128
128-bit
RMD-160
160-bit
SHA-1
160-bit
TIGER
192-bit
HAVAL-5
256-bit
SHA256
256-bit
SHA384
384-bit
SHA512
512-bit








    Note 2:
    NIST is the National Institute of Standards and Technology.


    Note 3:
    When opening 96Crypt, it will auto-position on the last HASH selection that
    was saved the last time 96Crypt was closed.








EnCrypt / DeCrypt files & FOLDERs


Copyright 2002 - © eRightSoft