#ssh-key #color #fingerprint #cert #quick #x509 #compare

bin+lib mim

MIM 是一种利用 4x4 颜色矩阵的哈希可视化算法。它提供了一种快速简单的方法来比较指纹,例如 SSH 密钥、x509 证书等。

1 个不稳定版本

0.1.0 2022年12月29日

#19 in #cert

MIT 许可证

22KB
76

MIM-RS (Minimal Identity Mozaic)

一个锈迹斑斑的实现。

MIM 是一种利用 4x4 颜色矩阵的哈希可视化算法。它提供了一种快速简单的方法来比较指纹,例如 SSH 密钥、x509 证书等。

[ Go 实现 ] [ Rust 实现 ]

属性

  • 抗预图像
  • 固定长度输出
  • 抗碰撞
  • 快速且高效
  • 相同颜色跨平台

输出

MIM 输出彩色 ANSI 转义码

Mim Rust Image

示例

use mim::{Mozaic};
use sha2::{Sha256,Digest};
use hex;

fn main() {
	// create the fingerprint in the typical way
	let mut hasher = Sha256::new();
    hasher.update("certificate contents would typically go here");
    let fingerprint = hasher.finalize();

	// provide the fingerprint to MIM
    let moz = Mozaic::new(&fingerprint);

	// print fingerprint
    println!("Fingerprint: {}", hex::encode(&fingerprint));

	// print Mozaic as ASNI
    println!("\n{}", &moz.ansi());
}

依赖项

~1MB
~14K SLoC