3 个版本

使用旧的 Rust 2015

0.1.2 2018年11月29日
0.1.1 2018年10月17日
0.1.0 2018年10月17日

#3 in #multihash

MIT 许可证

79KB
2K SLoC

Blot

Blot 是一个命令行界面 (CLI),用于计算类似于 shasum 工具的散列,但使用 Ben Laurie 的 objecthash 的变体,并结合 Multihash

Build Status

在 MIT 许可下发行(见 LICENSE)。

特性

Objecthash

  • 标记类型:bool、dict、float、integer、list、null、raw、set、unicode。
  • 使用 **REDACTED** 保密值。
  • 常见 JSON(仅当编译带有 common_json 特性标志时)。

多哈希

  • 散列算法
    • sha1
    • sha2
    • sha3
    • blake2
      • 最大长度(blake2b-512,blake2s-256)
      • 部分长度。

自定义

  • 使用 0x77 保密值。
  • 时间戳标记类型。注意检测非常粗糙,不能保证有效的时间。

用法

紧凑输出

$ blot -a sha2-256 '["foo", "bar"]'
122032ae896c413cfdc79eec68be9139c86ded8b279238467c216cf2bec4d5f1e4a2

详细输出

$ blot -a blake2b-512 --verbose '"foo"'
Codec:  0xb240 (blake2b-512)
Length: 0x40
Digest: 0x20fb5053ecefc742b73665625613de5ea09917988fac07d2977ece1c9bebb1aa0e5dfe8e3f2ae7b30ac3b97fac511a4745d71f5d4dbb211d69d06b34fb031e60

序列作为集合而不是列表

blot --sequence=set -a sha3-256 '["7716209dec0a5fc4b58a6d2a89c248c8ac845fc2a42ec440ec72f5f1554d3b9507689d", "bar"]'`
1620e689a806ca38fb367f300a83022aa9f1c1ad74fd6f50038f3cb5d253e7cb17c6

另请参阅

依赖项

~1–1.8MB
~25K SLoC