PHC
PHC copied to clipboard
Added PHS wrappers and generated vectors
This is a big patch involving several entries that cleans up the PHS declarations, defines limits for the input parameters, and provides a mechanism for automatically generating test vectors for each of them other than PolyPassHash, which generates different results each time it's PHS function is called.
I wish to use this for automated benchmarking, among other things. It is not required that these changes be pulled upstream, but it will allow you to compile and test the various entries through a common interface. I tried to keep the actual code changes to the entries minimal. For example, I have not fixed compiler warnings. The entries are built with a new Makefile, using common compiler flags, and supports opt (the default) and debug targets.
Bill
Thanks Bill! I'll let PHK approve or challenge your pr. On Apr 14, 2014 6:16 PM, "Bill" [email protected] wrote:
This is a big patch involving several entries that cleans up the PHS declarations, defines limits for the input parameters, and provides a mechanism for automatically generating test vectors for each of them other than PolyPassHash, which generates different results each time it's PHS function is called.
I wish to use this for automated benchmarking, among other things. It is not required that these changes be pulled upstream, but it will allow you to compile and test the various entries through a common interface. I tried to keep the actual code changes to the entries minimal. For example, I have not fixed compiler warnings. The entries are built with a new Makefile, using common compiler flags, and supports opt (the default) and debug targets.
Bill
You can merge this Pull Request by running
git pull https://github.com/waywardgeek/PHC master
Or view, comment on, or merge it at:
https://github.com/bsdphk/PHC/pull/1 Commit Summary
- Copied in some files I wrote for testing
- Got stuff compiling
- Fixed overwriting password in POMELO
- Got Lyra2 compiling
- Did a number of totally ugly edits to get m3lcrypt to compile
- Run automake for Lanarea to regenerate automake in systems with different automake.
- Run test from local directory.
- Print PHS() failure code.
- Added v1 versions of Yard, M3lcrypt, and POMELO, and added make support for Makwa
- Modified M3lcrypt to get it to compile
- Got MCS_PHS compiling, though un-windowizing it was painful
- Minor mod to omegacrypt to have linkable PHS function
- Added extern C to Parallela declarations
- Add some trivial run time test.
- Got PolyPassHash to compile
- Merge pull request #1 from mbroz/testing
- Got Pufferfish running
- Compiled RIG
- Got Yescript building - that's all of them
- Fix to Pufferfish to call raw kdf
- Modified runall
- Return logical not of yarn value, since yarn returns 1 always
- Working on test vectors
- Starting to add limits for the PHSs
- Updated limits through Catena
- updates
- conflict merges
- Working on limits for PHC entries
- Added more test vector limits
- Added some more limit support
- Fix to twocats full password hashing for small m_cost
- Finished adding limit support
- Got vectors running
- Cleaned up Makefile a bit
File Changes
- A Argon/Argon-Optimized/Linux-AES-NI/Argon-Optimized.cpphttps://github.com/bsdphk/PHC/pull/1/files#diff-0(925)
- A Argon/Argon-Optimized/Linux-AES-NI/README.mdhttps://github.com/bsdphk/PHC/pull/1/files#diff-1(12)
- A Argon/Argon-Optimized/Windows-AES-NI/Argon-Optimized.cpphttps://github.com/bsdphk/PHC/pull/1/files#diff-2(917)
- A Argon/Argon-Optimized/Windows-AES-NI/README.mdhttps://github.com/bsdphk/PHC/pull/1/files#diff-3(10)
- A Argon/Argon-Optimized/Windows-AES-NI/bin/x64/Argon-Optimized.exehttps://github.com/bsdphk/PHC/pull/1/files#diff-4(0)
- M Argon/Reference_implementation/argon-ref.cpphttps://github.com/bsdphk/PHC/pull/1/files#diff-5(962)
- M Battcrypt/code/c++/battcrypt.cpphttps://github.com/bsdphk/PHC/pull/1/files#diff-6(2)
- M Battcrypt/code/c++/battcrypt.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-7(2)
- M Catena/code/src/catena.chttps://github.com/bsdphk/PHC/pull/1/files#diff-8(2)
- M Catfish/ref-c/catfish.chttps://github.com/bsdphk/PHC/pull/1/files#diff-9(5)
- M Catfish/ref-c/catfish.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-10(4)
- M Gambit/src/gambit.cpphttps://github.com/bsdphk/PHC/pull/1/files#diff-11(2)
- M Gambit/src/gambit.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-12(2)
- M Lanarea/lanarea.chttps://github.com/bsdphk/PHC/pull/1/files#diff-13(15)
- M Lanarea/lanarea.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-14(9)
- M Lanarea/libb2/Makefile.inhttps://github.com/bsdphk/PHC/pull/1/files#diff-15(15)
- M Lanarea/libb2/aclocal.m4https://github.com/bsdphk/PHC/pull/1/files#diff-16(122)
- M Lanarea/libb2/configurehttps://github.com/bsdphk/PHC/pull/1/files#diff-17(102)
- M Lanarea/libb2/src/Makefile.inhttps://github.com/bsdphk/PHC/pull/1/files#diff-18(10)
- M M3lcrypt/code/Sha2.chttps://github.com/bsdphk/PHC/pull/1/files#diff-19(2)
- M M3lcrypt/code/Sha2.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-20(3)
- M M3lcrypt/code/m3lcrypt.chttps://github.com/bsdphk/PHC/pull/1/files#diff-21(5)
- M M3lcrypt/code/m3lcrypt.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-22(2)
- M MCS_PHS/code/mcs_psw/mcs_psw.cpphttps://github.com/bsdphk/PHC/pull/1/files#diff-23(173)
- M MCS_PHS/code/mcs_psw/mcs_psw.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-24(2)
- A Makefile https://github.com/bsdphk/PHC/pull/1/files#diff-25(113)
- M OmegaCrypt/ocrypt.chttps://github.com/bsdphk/PHC/pull/1/files#diff-26(9)
- M OmegaCrypt/phs.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-27(11)
- M Parallel/code/c++/parallel.cpphttps://github.com/bsdphk/PHC/pull/1/files#diff-28(2)
- M Parallel/code/c++/parallel.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-29(2)
- M PolyPassHash/polypasshash-c/include/libpolypasshash.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-30(6)
- M PolyPassHash/polypasshash-c/lib/libgfshare.chttps://github.com/bsdphk/PHC/pull/1/files#diff-31(2)
- M PolyPassHash/polypasshash-c/src/libpolypasshash.chttps://github.com/bsdphk/PHC/pull/1/files#diff-32(2)
- M Pufferfish/src/common/api.chttps://github.com/bsdphk/PHC/pull/1/files#diff-33(14)
- M RIG/source/rig.cpphttps://github.com/bsdphk/PHC/pull/1/files#diff-34(2)
- M RIG/source/rig.hhttps://github.com/bsdphk/PHC/pull/1/files#diff-35(11)
- R Schvrch/schvrch.chttps://github.com/bsdphk/PHC/pull/1/files#diff-36(0)
- M TwoCats/skinnycat/skinnycat.chttps://github.com/bsdphk/PHC/pull/1/files#diff-37(2)
- M TwoCats/twocats/twocats-common.chttps://github.com/bsdphk/PHC/pull/1/files#diff-38(2)
- M TwoCats/twocats/twocats-ref.chttps://github.com/bsdphk/PHC/pull/1/files#diff-39(2)
- M Yarn/yarn.c https://github.com/bsdphk/PHC/pull/1/files#diff-40(6)
- A genvectors https://github.com/bsdphk/PHC/pull/1/files#diff-41(8)
- A limits/antcrypt-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-42(20)
- A limits/argon-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-43(20)
- A limits/battcrypt-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-44(20)
- A limits/catena-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-45(20)
- A limits/catfish-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-46(20)
- A limits/centrifuge-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-47(20)
- A limits/earworm-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-48(20)
- A limits/gambit-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-49(24)
- A limits/lanarea-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-50(20)
- A limits/lyra-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-51(20)
- A limits/m3lcrypt-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-52(20)
- A limits/makwa-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-53(20)
- A limits/mcsphs-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-54(20)
- A limits/omegacrypt-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-55(20)
- A limits/parallela-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-56(29)
- A limits/polypasshash-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-57(20)
- A limits/pomelo-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-58(20)
- A limits/pufferfish-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-59(20)
- A limits/rig-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-60(20)
- A limits/schvrch-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-61(20)
- A limits/tortuga-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-62(20)
- A limits/twocats-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-63(20)
- A limits/yarn-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-64(20)
- A limits/yescrypt-limits.chttps://github.com/bsdphk/PHC/pull/1/files#diff-65(20)
- A main.c https://github.com/bsdphk/PHC/pull/1/files#diff-66(333)
- A runall https://github.com/bsdphk/PHC/pull/1/files#diff-67 (7)
- A runall_time https://github.com/bsdphk/PHC/pull/1/files#diff-68(18)
- A vectors/antcrypt-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-69(393)
- A vectors/argon-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-70(3123)
- A vectors/battcrypt-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-71(898)
- A vectors/catena-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-72(867)
- A vectors/catfish-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-73(272)
- A vectors/centrifuge-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-74(492)
- A vectors/earworm-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-75(615)
- A vectors/gambit-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-76(290)
- A vectors/lanarea-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-77(334)
- A vectors/lyra-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-78(537)
- A vectors/m3lcrypt-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-79(1306)
- A vectors/makwa-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-80(283)
- A vectors/mcsphs-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-81(285)
- A vectors/omegacrypt-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-82(780)
- A vectors/parallela-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-83(774)
- A vectors/pomelo-vectorshttps://github.com/bsdphk/PHC/pull/1/files#diff-84(0)
Patch Links:
- https://github.com/bsdphk/PHC/pull/1.patch
- https://github.com/bsdphk/PHC/pull/1.diff
Reply to this email directly or view it on GitHubhttps://github.com/bsdphk/PHC/pull/1 .