Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alisianoi/lyra2-compare
Compare original Lyra2 in C with its Java Lyra2 port
https://github.com/alisianoi/lyra2-compare
Last synced: 25 days ago
JSON representation
Compare original Lyra2 in C with its Java Lyra2 port
- Host: GitHub
- URL: https://github.com/alisianoi/lyra2-compare
- Owner: alisianoi
- License: mit
- Created: 2017-08-18T20:02:00.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2022-01-21T19:20:24.000Z (almost 3 years ago)
- Last Synced: 2024-04-16T02:04:12.092Z (7 months ago)
- Language: Jupyter Notebook
- Size: 4.3 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Comparison of [Lyra2][1] and [lyra2-java][2]
This repository provides a performance comparison between the original C implementation of Lyra2 and its Java port. Lyra2 is a memory-hard password hashing scheme which allows its user to configure both memory and processing time required to compute the hash. The original repository for Lyra2 can be [found here][3].
The gist of the comparison: the Java version is slower and requires more memory. This happens because the Java version has to perform extra steps to produce exactly the same results as the original C implementation. These include explicit endianness conversion and explicit modulo/remainder computations for unsigned 64 bits integers. Without these extra steps different hashes are produced for the same input parameters but significant speed-up is achieved.
![alt text](https://raw.githubusercontent.com/all3fox/lyra2-compare/master/src/figures/mcost_256.png )
![alt text](https://raw.githubusercontent.com/all3fox/lyra2-compare/master/src/figures/tcost_256.png )
[1]: https://github.com/all3fox/Lyra
[2]: https://github.com/all3fox/lyra2-java/
[3]: https://github.com/leocalm/Lyra