Pure rust library in Lyra2, Lyra2RE, Lyra2REv2, Lyra2REv3.
The following golang libraries have been rewritten in Rust. https://github.com/bitgoin/lyra2rev2
1.32+
``` extern crate lyra2;
fn main() {
let base1 = "abc".asbytes().tovec();
let base2 = base1.clone();
let lyra2result1 = lyra2::lyra2::lyra2(32, base1, base2, 1, 4, 4);
println!("result: {:?}", lyra2result1);
//result: [143, 99, 117, 139, 209, 120, 240, 20, 234, 63, 212, 223, 9, 255, 10, 97, 100, 109, 197, 116, 160, 182, 188, 242, 137, 14, 197, 41, 166, 167, 54, 12]
}
extern crate lyra2;
fn main() {
let base = "脇山珠美ちゃんかわいい!".asbytes().tovec();
let lyra2rev2result = lyra2::lyra2rev2::sum(base);
asserteq!(
"bdaaa569c4f4918da66b02f2d0a2093a51e3d1735ee6023e9a93185c7bff40bc",
lyra2rev2_result
.iter()
.map(|n| format!("{:02x}", n))
.collect::
extern crate lyra2;
fn main() {
let base3 = parsehex("700000005d385ba114d079971b29a9418fd0549e7d68a95c7f168621a314201000000000578586d149fd07b22f3a8a347c516de7052f034d2b76ff68e0d6ecff9b77a45489e3fd511732011df0731000");
let lyra2rev3result1 = lyra2::lyra2rev3::sum(base3);
println!("result: {:?}", lyra2rev3_result1.iter()
.map(|n| format!("{:02x}", n))
.collect::
// from code https://tutorialmore.com/questions-23721.htm
fn parsehex(hexasm: &str) -> Vec
}).collect::
In order to use this crate, you have to add it under [dependencies]
to your Cargo.toml
[dependencies]
lyra2 = "0.2.6"
MIT