Description
(This issue has been imported from the Gitlab repository because it seems to not have been addressed yet)
Original Text (Issue 48)
Currently, all our implemented hashing algorithms are based on JCA's SHA-256. We want to have an implementation of our hash interface that uses the project group's Keccak implementation.
This also offers the chance to do smarter hashing into structures by choosing the byte output length of Keccak according to structure size.
Comment by Jan Bobolz
The current implementation of ConcurrentSHA3 is licensed under AGPL (see javadoc), which is comparable but less persmissive than GPL (somewhat stricter copyleft).
Unless we want to GPL (or AGPL?) our whole project, this is problematic. That has to be resolved first before porting anything to our APIs.
Comment by Fabian Eidens
This is delayed until we find an Keccak implementation with a "good" license or someone has free time to implement it in java according to the reference implementation (version >= 3.2) which is written in python.
Comment by Jan Bobolz
SHA-3 will be part of Java 9 (scheduled for release in March 2017):
https://blogs.oracle.com/java/jdk-9-categories and
http://openjdk.java.net/jeps/287
That should make it easy to wrap that into our library.