#algorithm #hash #cryptography

xynth

Xynth是一种针对ASIC/GPU的加密散列算法,使用纯Rust编写,适用于支持AVX2的x64 CPU

9个版本

0.2.0 2024年7月27日
0.1.7 2024年4月6日
0.1.6 2023年12月28日
0.1.0 2023年11月26日

#383 in 算法

Download history 130/week @ 2024-04-26 4/week @ 2024-07-05 195/week @ 2024-07-26 14/week @ 2024-08-02

209 每月下载量

MIT 许可证

31KB
479

Xynth

Discord Crates.io Version docs.rs

  • 我的资料
    • RetroShare ID - ABCOR8VE42d6yImJdqnlE6FaAxRQvoT4dVgT/ibTYa0o61xRAh3epQEJT2N0b2Nyb3NzkEIAAAAEAAAyNjVob2RtNWU0bHhkcjJw dWZ3cmZyY3I1Z2xnZWhmMnhlYW9jMmJ3and0Z2J1MmtvbHphLmIzMi5pMnAEA5YMNg==
    • Tox.chat - B4444ACFE6E42A72F67879B13B8D758CD6BCD1F498E7AA882A5680FDE2B31D5CE07EEF119CD9

[!IMPORTANT] 列出的资源大部分是用俄语编写的

[ENG]

Xynth是一种散列算法,在虚拟VLIW(128位)CPU机器上运行大型程序。程序代码取决于输入数据。Xynth的开发目的是为了与RandomX相同,即避免在GPU和ASIC上处理算法。

master - 最新版本

[!CAUTION] 此算法尚未通过密码分析进行测试

要求

  • x64 CPU支持AVX2 & AES

[RU]

Xynth - 这是一个散列算法,它在一个虚拟的VLIW(128位)处理器上运行大型程序。程序代码取决于输入数据。Xynth的开发目的是为了与RandomX相同,即避免在GPU和ASIC上处理算法。

master - 最新版本

[!CAUTION] 此算法尚未通过密码分析进行测试

要求

  • 支持AVX2和AES的x64处理器

示例

use xynth::XynthVM;
fn main() {
    let mut m: XynthVM = XynthVM::new();
    let a;
    let b;
    unsafe {
        a = m.hash(&1i32.to_le_bytes(), xynth::HashLength::H256, None);
        b = m.hash(&2i32.to_le_bytes(), xynth::HashLength::H256, None);
    }
    assert!(a != b)
}

MSRV

最新的rustc夜建版本 :c

Xynth之路

  • 多线程
  • 密码分析
  • 学习如何使用Git

版本控制

  • 0.0.x - 补丁
  • 0.x.0 - 输出散列值改变的发布
  • x.0.0 - 完整算法变更

无运行时依赖