libtomcrypt icon indicating copy to clipboard operation
libtomcrypt copied to clipboard

Wishlist: Adding all SHA3 candidates in SPHLib

Open DonaldTsang opened this issue 7 years ago • 3 comments

  1. 224, 256, 384 and 512 bit hash for each of these algorithms
  2. Allow stripped variable outputs (like SHA512-256 or SHA512-384) Note: All SHA2 candidates uses the same basic input-output formats.
    For future reference: http://www.saphir2.com/sphlib/
  • [ ] blake
  • [ ] bmw
  • [ ] cubehash
  • [ ] echo
  • [ ] fugue
  • [ ] groestl
  • [ ] hamsi
  • [ ] jh
  • [ ] keccak
  • [ ] luffa
  • [ ] shabal
  • [ ] shavite
  • [ ] simd
  • [ ] skein

DonaldTsang avatar Feb 17 '18 14:02 DonaldTsang

For libtomcrypt, it follows the format md5_init(&md); md5_process(&md, in, in_len); md5_done(&md, out); While for SPHLib, sph_md5_init(&md); sph_md5(&md, in, in_len); sph_md5_done(&md, out); So the syntax is nearly identical. Also, for SPHLib, hashes are md5.c headers are sph_md5.h tests are test_md5.c

DonaldTsang avatar Mar 05 '18 12:03 DonaldTsang

Short notes regarding Key Derivation Functions

  • "Old KDF strength" SCrypt > BCrypt > PBKDF2
  • Finalist library https://github.com/mbroz/PHCtest
  • Original competition Repo https://github.com/bsdphk/PHC

Winner and special recognition KDFs

  • [ ] Argon2 (the winner, allows tweaking with hashes)
  • [ ] Catena (allows tweaking with hashes)
  • [ ] Makwa (allows tweaking with hashes)
  • [ ] Lyra2 (allows tweaking with sponge functions)
  • [ ] Yescrypt (based on Scrypt, needs Salsa20 and a hash function)

Finalists

  • [ ] BATTCrypt (based on BCrypt, needs Blowfish and a hash function)
  • [ ] Pufferfish (based on BCrypt, needs Blowfish, takes no hash function)
  • [ ] Parallel (allows tweaking with hashes)
  • [ ] Pomelo (does not allow tweaking with hashes)

DonaldTsang avatar Mar 05 '18 16:03 DonaldTsang

List of other hash algorithms:

  • https://multipoolminer.io/algorithms
  • https://github.com/JayDDee/cpuminer-opt
  • https://github.com/nemosminer/NemosMiner-v2.4.2
  • https://github.com/luisvasquez/cpuminer-easy
  • https://www.nicehash.com/algorithm
  • https://github.com/maciejczyzewski/retter

DonaldTsang avatar Mar 06 '18 10:03 DonaldTsang