hash

ファイルのダウンロードや転送後に内容が同じか確認するには、hash <file> で SHA-256 ダイジェストを取得します。出力は値のみです。hash -s "text" は文字列を処理しますが、暗号化はしません。

セキュリティバージョン 1.1.4安定版
lil-terminal

概要

-a は PHP で利用できるアルゴリズムを選択し、-b は16進数ではなく Base64 で出力します。hash -c <digest> <file> は期待値と照合します。一致しても、値を配布した相手の信頼性は保証されません。

Digest と HMAC は別の問いに答える

通常の hash はデータ変更を検出できますが、同じデータを持つ人なら誰でも同じ値を計算できます。HMAC は秘密鍵を加えます。どちらも入力を暗号化せず、digest から元の内容を復元することもできません。

構文

lil-terminal
hash [<file>|-s "<text>"] [-a <algo>] [-h|-K <file>] [-b] · hash -c <digest> <file> [-b]

リファレンス

hash

利用可能なハッシュアルゴリズムを表示する

hash <file>

ファイルの SHA-256 を計算する

hash -s "<text>"

文字列のハッシュを計算する。空白を含む文字列は引用符で囲む

hash <file> -a sha512

別のアルゴリズムを選択する

hash <file> -h

非表示入力した鍵で HMAC を計算する

hash <file> -K <keyfile>

鍵ファイルで HMAC を計算する

hash -c <digest> <file>

16 進ダイジェストを検証する

hash -c <digest> <file> -b

16 進の代わりに Base64 を検証または出力する

-b

16進数ではなく Base64 で出力

注意事項

Minimum はファイルや文字列のハッシュに対応し、アルゴリズム選択・照合・HMAC には Base が必要です。

インタラクティブな sandbox プレビュー

用意された例をページ上でそのまま実行できます。結果は事前に生成されてブラウザに表示され、サーバーではターミナルコマンドを実行しません。

SHA-256 と SHA-512 を比較する

インストールと管理

現在の互換バージョンをインストールします。全機能は Base、縮小版は Minimum を選び、すでに導入済みのモジュール更新には upgrade を使います。

Base と Minimum は同じ現在のモジュールリリースの二つのパッケージです。

Base パッケージ

ローカル参照と公開済みの全モードを含む完全パッケージをインストールします。

install hash
Minimum パッケージ

縮小パッケージをインストールします。ローカルリファレンスは含まれず、help <cmd> -i で現在のサーバーリファレンスを開きます。

install hash -m
正確な公開版

この公開済みバージョンを正確に指定してインストールします。

install hash -v 1.1.4
確認または更新

upgrade が互換性を確認し、必要な場合だけブロックを置換します。

upgrade hash
モジュールを削除

コアや他のモジュールに触れず拡張ブロックを削除します。

install hash -u

例

例はコピーできますが、サイトは実行しません。実プロジェクトではパス、権限、破壊的オプションを確認してください。

SHA-256 と SHA-512 を比較する
hash
利用可能なアルゴリズムは PHP サーバーによって異なります。一部を表示:
adler32      haval128,5  haval256,5  sha1        snefru256
crc32        haval160,3  joaat       sha3-224    tiger128,3
crc32b       haval160,4  md2         sha3-256    tiger128,4
crc32c       haval160,5  md4         sha3-384    tiger160,3
…
ファイルの SHA-256 を計算する
hash \sandbox/feed.xml
fecb9e779e2de5637918deca5ea1bfde9059833a67ed38146e3360944bc06000
文字列のハッシュを計算する。空白を含む文字列は引用符で囲む
hash -s "HELLO WORLD!"
bf96648169ba89c284b3e94108074c7d5e5806c7b9498031aceded5ca139ed69
別のアルゴリズムを選択する
hash \sandbox/feed.xml -a sha512
b1326264154960b4eb6fb685521ac40de967749c9dd11cc00da69e2d8f2a88b969ecef723d9da4c86945ad407571ec62e3e9cc12bcb2070a0f1e14802ffe5fc3
16進数ではなく Base64 で出力
hash \sandbox/feed.xml -b
/sued54t5WN5GN7KXqG/3pBZgzpn7TgUbjNglEvAYAA=
文字列のハッシュを計算する。空白を含む文字列は引用符で囲む
hash -s "hello" -a sha512 -b
m3HSJL1i83hdltRq0+o9czGb+8KJDKra4t/3JRlnPKcjI8PZm6XBHXx6zG4UuMXaDEZjR1wuXDre9G9zvN7AQw==
鍵ファイルで HMAC を計算する
hash \sandbox/feed.xml -K \sandbox/keys/hash.key
09ada086ae48552d1f2c31e2339694927d88b4510e4de75d5099980deb77398b
鍵ファイルで HMAC を計算する
hash -s "hello" -K \sandbox/keys/hash.key
fe8e9832244f6150d4d9655df350647f8efff014774fe0f2b10d1a7fcec449ce
存在しないファイルを拒否する
hash \sandbox/feed.xml -h
パスワードまたは鍵の非表示入力が開きます。
16 進ダイジェストを検証する
hash -c fecb9e779e2de5637918deca5ea1bfde9059833a67ed38146e3360944bc06000 \sandbox/feed.xml
Status     Verified
Algorithm  sha256
16 進の代わりに Base64 を検証または出力する
hash -c /sued54t5WN5GN7KXqG/3pBZgzpn7TgUbjNglEvAYAA= \sandbox/feed.xml -b
Status     Verified
Algorithm  sha256
16 進ダイジェストを検証する
hash -c 0000000000000000000000000000000000000000000000000000000000000000 \sandbox/feed.xml
Hash mismatch
16 進ダイジェストを検証する
hash -c 1234 \sandbox/feed.xml
Invalid hexadecimal digest
ファイルの SHA-256 を計算する
hash \sandbox/missing.txt
File not found
別のアルゴリズムを選択する
hash \sandbox/feed.xml -a invalid
Hash algorithm is unavailable
鍵ファイルで HMAC を計算する
hash \sandbox/feed.xml -K \sandbox/keys/missing.key
Key file is not readable
非表示入力した鍵で HMAC を計算する
hash -s "hello" -h
パスワードまたは鍵の非表示入力が開きます。
ファイルの SHA-256 を計算する
hash \sandbox/feed.xml -z
Unknown option

この例で使うファイル: sandbox/data/sample.txt

例では、保護されたドキュメント用 /sandbox/ ワークスペースのファイルまたはディレクトリを使います。

lil-terminal sandbox text file

This file is safe to read, copy, rename, replace, hash and archive.

関連ドキュメント

現在の公開版

v1.1.42026-08-12

hash だけでアルゴリズム一覧

引数なしの hash で利用可能なアルゴリズムを表示し、重複していた -l を削除しました。