项目作者: codahale

项目描述 :
A Java implementation of the Gimli cryptographic permutation and hash algorithm.
高级语言: Java
项目地址: git://github.com/codahale/gimli.git
创建时间: 2017-08-16T02:25:20Z
项目社区:https://github.com/codahale/gimli

开源协议:Apache License 2.0

下载


gimli

CircleCI

A Java implementation of the Gimli cryptographic permutation and hash
algorithm:

Gimli is a 384-bit permutation designed to achieve high security with high performance across a
broad range of platforms, including 64-bit Intel/AMD server CPUs, 64-bit and 32-bit ARM smartphone
CPUs, 32-bit ARM microcontrollers, 8-bit AVR microcontrollers, FPGAs, ASICs without side-channel
protection, and ASICs with side-channel protection.

In conforms to the test vectors produced by the reference C implementation. N.B: The test
vectors for the hash algorithm are
incorrect

and this implementation conforms to the corrected test vectors.

Add to your project

  1. <dependency>
  2. <groupId>com.codahale</groupId>
  3. <artifactId>gimli</artifactId>
  4. <version>0.1.3</version>
  5. </dependency>

Note: module name for Java 9+ is com.codahale.gimli.

Use the thing

  1. import com.codahale.gimli.Gimli;
  2. import java.util.Arrays;
  3. class Example {
  4. public void main(String... args) {
  5. final int[] state = new int[12]; // the input is 12 32-bit integers
  6. Gimli.permute(state);
  7. System.out.println(Arrays.toString(state));
  8. }
  9. }

License

Copyright © 2017 Coda Hale

Distributed under the Apache License 2.0.