coreutilsにsha3sumコマンドがない場合、SHA3を生成するにはどうすればよいですか?


17

私が持っているsha1sumか、sha512sum平均的なLinuxディストリビューションに。

しかし、SHA-3コマンドをsha3sum生成できるコマンドはどこにありますか?


DebianベースのLinuxでは、明らかにlibdigest-sha3-perlパッケージの一部です(テストされていません)。
クサラナンダ

rhashは、最近の十分なバージョンで例えば利用可能な場合rhash --sha3-256
frostschutz

回答:


12

実装の数ありますが、例えば マティアス・アンドレのsha3sum、またはPerlのダイジェスト-SHA3モジュールが。Debianでは、インストールしlibdigest-sha3-perlます。Fedoraでは、インストールしsha3sumます。これらは両方ともsha3sum、Perlモジュールに基づいたコマンドを提供します。Perlモジュールは、使用しているバイナリと同じように動作します。


Debianでは、libdigest-sha3-perlはjessie以降で利用可能です(現在はstretchsidを意味します)。
CVn

パッケージsha3sumはありません。
ペペ

Fedoraの@pepite?どのバージョンですか?
スティーブンキット

Fedoraの下@pepiteあなたが使用する必要がありperl-Digest-SHA3、パッケージrpmfind.net/linux/rpm2html/search.php?query=perl-Digest-SHA1
GAD3R

2
Fedoraの@ GAD3Rには適切なパッケージがありますsha3sum(Fedoraシステムをチェックした後、答えを更新しました)。
スティーブンキット

6

OpenSSLこれを行うために使用できます。以下は、Ubuntu 18.10以降のOpenSSL 1.1.1 11 Sep 2018で示されています。

OpenSSL> help
...
Message Digest commands (see the `dgst' command for more details)
blake2b512        blake2s256        gost              md4               
md5               rmd160            sha1              sha224            
sha256            sha3-224          sha3-256          sha3-384          
sha3-512          sha384            sha512            sha512-224        
sha512-256        shake128          shake256          sm3

だから、それがサポートされていることがわかりますsha3-{224,256,384,512}

ファイルをチェックサムするには、

openssl dgst -sha3-512 /bin/echo
SHA3-512(/bin/echo)= c9a3baaa2aa3d667a4ff475d893b3e84eb588fb46adecd0af5f3cdd735be88c62e179f98dc8275955da4ee5ef1dc7968620686c6f7f63f5b80f10e43bc1f00fc

あなたは文字列をチェックサムすることができます

printf "foobar" | openssl dgst -sha3-512

出力形式を変更することもできます

  • -c コロンを区切ってダイジェストを印刷する
  • -r ダイジェストをcoreutils形式で出力します


3

RHashアプリケーションはそれを行うことができます:

rhash --sha3-256 yourfile

より詳しい情報: rhash -h

Linux、BSD、Windowsで動作します


2

あなたが私のように怠け者で、md5sum、sha1sum、sha256sumに慣れている場合:

ファイル/ usr / local / bin / sha3256sumを作成し、chmod + x sha3256sumで実行可能にします。

#!/bin/bash
rhash --sha3-256 $1

その後、次を実行できます。

sha3256sum file

1

あなたがいる場合はopensslインストールされ、あなたは持っている必要があるhashalotと言うコマンドを。

   Supported values for HASHTYPE:
           ripemd160 rmd160 rmd160compat sha256 sha384 sha512

sha384コマンドを直接使用することもできます。

OpenSSLの最近の十分なバージョン(1.1.1以降)にはSHA-3が完全にサポートされており、次のopenssl helpように表示されます。

Message Digest commands (see the `dgst' command for more details)
blake2b512        blake2s256        gost              md4
md5               mdc2              rmd160            sha1
sha224            sha256            sha3-224          sha3-256
sha3-384          sha3-512          sha384            sha512
sha512-224        sha512-256        shake128          shake256
sm3

質問を更新すると、sha384はsha2です。sha3はsha2ではありません。
ペペ

はい、確かに、私の間違いでごめんなさい。SHA3​​のサポートopensslは計画中/作業中です:github.com/openssl/openssl/issues/439
パトリックメヴゼク

1

もう1つの代替手段は、Linux、BSD、Windows、Macなどのsha3sumです。...Rustがサポートするすべてのプラットフォーム。

Rustユーザーの場合: cargo install sha3sum

Linuxパッケージx86_64の場合:オープンビルドシステム

その他:一部のプレートフォームのバイナリ

詳細については、Bitbucketをご覧ください。


ようこそ!これは有用な答えですが、この特定のsha3sum実装の作成者であることを示した方が良いでしょう。
スティーブンキット
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.