cargo install kura-rs
kura add byte-entropyソースファイルを自分のプロジェクトにコピーします。以後、コードはあなたのものです。
別のツールの kura コマンドとぶつかる場合は、cargo install kura-rs --bin kura-rs で入れて kura-rs add を使ってください。
use crate::parts::byte_entropy::windows;
for w in windows(&binary, 4096) {
if w.entropy > 7.2 {
println!("offset {:#x}: likely packed ({:.2} bits/byte)", w.offset, w.entropy);
}
}検証
サンプルデータscipy.stats.entropy 1.14(Python)と性質ベースのテストで比較しました。同じ入力を両方の実装に与え、出力を突き合わせています。
参照実装
scipy.stats.entropy
Python 1.14
テストケース
4,000
性質ベースのテスト
成功
4,000 / 4,000
すべて一致
最終実行
2026年9月26日
UTC
この数値は仮のものです。 まだ計測していないため、実際の結果として読まないでください。この部品のレジストリファイルには "sample": true が付いています。
ベンチマーク
サンプルデータ入力サイズごとに kura-rs(Rust)と scipy.stats.entropy を比べています。 計測したすべての入力サイズで速い。最大 35× 速い。
この数値は仮のものです。 まだ計測していないため、実際の結果として読まないでください。この部品のレジストリファイルには "sample": true が付いています。
kura-rs (Rust)scipy.stats.entropy
数値の表を見る
| 入力サイズ | kura-rs (Rust) | scipy.stats.entropy | 倍率 |
|---|---|---|---|
| 4,096 | 0.01 ms | 0.35 ms | 35× |
| 65,536 | 0.09 ms | 2.9 ms | 32× |
| 1,048,576 | 1.4 ms | 44 ms | 31× |
| 16,777,216 | 22 ms | 700 ms | 32× |
ファイル
- parts/byte_entropy/mod.rs
依存する crate
なし。標準ライブラリのみです。