TupleHash
NIST SP 800-185 https://csrc.nist.gov/pubs/sp/800/185/final
Keccak系
cSHAKEを利用した可変長出力ハッシュ関数。
ハッシュ関数は1つのデータ(ストリーム?)からハッシュ値を出力するが、TupleHashは複数のデータのセットからハッシュ値を計算する想定のもの。
出力長を指定する(ハッシュ用入力データとして含む) TupleHash128 / TupleHash256 と出力長を指定しない(含まない) XOF版 TupleHashXOF128 / TupleHashXOF256 がある。
TupleHash128
TupleHash256
TupleHashXOF128
TupleHashXOF256
updateとデータ区切りを別にするか、update1回で1つ分にするか
https://github.com/okomeki/SoftLibCrypto/blob/master/src/main/java/net/siisise/security/digest/TupleHash.java
https://github.com/okomeki/SoftLibCrypto/blob/master/src/main/java/net/siisise/security/digest/TupleHash128.java
https://github.com/okomeki/SoftLibCrypto/blob/master/src/main/java/net/siisise/security/digest/TupleHash256.java
https://github.com/okomeki/SoftLibCrypto/blob/master/src/main/java/net/siisise/security/digest/TupleHashXOF128.java
https://github.com/okomeki/SoftLibCrypto/blob/master/src/main/java/net/siisise/security/digest/TupleHashXOF256.java