Coreutils'te sha3sum komutu yoksa SHA3'ü nasıl oluşturabilirim?


Yanıtlar:


13

Bir uygulamaların sayısı vardır mesela Mattias Andrée'de ensha3sum ya Perl Digest-SHA3 modülü . Debian'a yükleyin libdigest-sha3-perl; Fedora'da yükleyin sha3sum; her ikisi sha3sumde Perl modülünü temel alan ve alıştığınız ikili dosyalar gibi davranan bir komut sağlar.


Debian'da, libdigest-sha3-perl jessie ve daha yenisinde mevcuttur (şu anda streç ve sid anlamına gelir ).
CVn

Hiçbir paket sha3sum mevcut değildir.
pepite

Fedora'da @pepite? Hangi versiyon?
Stephen Kitt

@pepite Fedora altında kullanmanız gereken perl-Digest-SHA3paket rpmfind.net/linux/rpm2html/search.php?query=perl-Digest-SHA1
GAD3R

2
@ Fedora'daki GAD3R uygun paket sha3sum(Fedora sistemini kontrol ettikten sonra cevabımı güncelledim).
Stephen Kitt

7

Bunu OpenSSLyapmak için kullanabilirsiniz , Aşağıda Ubuntu 18.10'dan OpenSSL 1.1.1 11 Eylül 2018 ile gösterilmiştir.

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

Böylece desteklediğini görebilirsiniz sha3-{224,256,384,512} .

Bir dosyayı sağlama toplamı için,

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

Bir dizeyi sağlama toplamı ile

printf "foobar" | openssl dgst -sha3-512

Çıktı biçimini de değiştirebilirsiniz

  • -c Sütunları ayırarak özeti yazdırın
  • -r Özeti coreutils biçiminde yazdır

4

RHash uygulaması bunu yapabilir:

rhash --sha3-256 yourfile

Daha fazla bilgi: rhash -h

Linux, BSD ve Windows üzerinde çalışacak



2

Benim gibi tembelseniz ve md5sum, sha1sum, sha256sum için alışkınsanız:

/ Usr / local / bin / sha3256sum dosyasını oluşturun ve chmod + x sha3256sum ile çalıştırılabilir yapın.

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

Sonra çalıştırabilirsiniz:

sha3256sum file

1

Yüklediyseniz opensslşu hashalotkomutu vermelisiniz :

   Supported values for HASHTYPE:
           ripemd160 rmd160 rmd160compat sha256 sha384 sha512

Ayrıca doğrudan sha384komutu da kullanabilirsiniz .

OpenSSL'nin (1.1.1 veya daha yeni) yeterince güncel bir sürümü tam SHA-3 desteğine sahiptir, openssl helpşunları gösterir:

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

soruyu güncelleyerek sha384 sha2'dir. sha3, sha2 değildir.
pepite

evet gerçekten, hatam için üzgünüm. SHA3 ​​için destek opensslplanlanıyor / işte planlanıyor: github.com/openssl/openssl/issues/439
Patrick Mevzek

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.