こんにちは、鯨井貴博@opensourcetechです。
ファイル操作でちょっとハマったので、各OS毎のハッシュ確認方法を残しておこうと思います。
Linux
操作は、CentOS7で実施してます。
[root@localhost testuser]# md5sum Integrated-Log-Collector-17.2R2.13.sh
c72db8aee995d2947a145fb38445ebe1 Integrated-Log-Collector-17.2R2.13.sh
[root@localhost testuser]# sha1sum Integrated-Log-Collector-17.2R2.13.sh
ee1bbbb60a7f3431e5a7a03b9b11630c9836feb0 Integrated-Log-Collector-17.2R2.13.sh
[root@localhost testuser]# sha256sum Integrated-Log-Collector-17.2R2.13.sh
2d3e71a0a4fc0fc006a028a1783baccf14292b05b8faf7acef00e20b36e65571 Integrated-Log-Collector-17.2R2.13.sh
[root@localhost testuser]# sha512sum Integrated-Log-Collector-17.2R2.13.sh
fc3b760037eb86335601072402ba445e653941fd90d522aceacaff51d3c1fd7fbb55319fc779fe10ded7f4da09f33e22f76aba2d68059f612879c2513c582471 Integrated-Log-Collector-17.2R2.13.sh
c72db8aee995d2947a145fb38445ebe1 Integrated-Log-Collector-17.2R2.13.sh
[root@localhost testuser]# sha1sum Integrated-Log-Collector-17.2R2.13.sh
ee1bbbb60a7f3431e5a7a03b9b11630c9836feb0 Integrated-Log-Collector-17.2R2.13.sh
[root@localhost testuser]# sha256sum Integrated-Log-Collector-17.2R2.13.sh
2d3e71a0a4fc0fc006a028a1783baccf14292b05b8faf7acef00e20b36e65571 Integrated-Log-Collector-17.2R2.13.sh
[root@localhost testuser]# sha512sum Integrated-Log-Collector-17.2R2.13.sh
fc3b760037eb86335601072402ba445e653941fd90d522aceacaff51d3c1fd7fbb55319fc779fe10ded7f4da09f33e22f76aba2d68059f612879c2513c582471 Integrated-Log-Collector-17.2R2.13.sh
Mac OS X
bash-3.2$ openssl md5 Integrated-Log-Collector-17.2R2.13.sh
MD5(Integrated-Log-Collector-17.2R2.13.sh)= c72db8aee995d2947a145fb38445ebe1
bash-3.2$ openssl sha1 Integrated-Log-Collector-17.2R2.13.sh
SHA1(Integrated-Log-Collector-17.2R2.13.sh)= ee1bbbb60a7f3431e5a7a03b9b11630c9836feb0
bash-3.2$ openssl sha256 Integrated-Log-Collector-17.2R2.13.sh
SHA256(Integrated-Log-Collector-17.2R2.13.sh)= 2d3e71a0a4fc0fc006a028a1783baccf14292b05b8faf7acef00e20b36e65571
bash-3.2$ openssl sha512 Integrated-Log-Collector-17.2R2.13.sh
SHA512(Integrated-Log-Collector-17.2R2.13.sh)= fc3b760037eb86335601072402ba445e653941fd90d522aceacaff51d3c1fd7fbb55319fc779fe10ded7f4da09f33e22f76aba2d68059f612879c2513c582471
MD5(Integrated-Log-Collector-17.2R2.13.sh)= c72db8aee995d2947a145fb38445ebe1
bash-3.2$ openssl sha1 Integrated-Log-Collector-17.2R2.13.sh
SHA1(Integrated-Log-Collector-17.2R2.13.sh)= ee1bbbb60a7f3431e5a7a03b9b11630c9836feb0
bash-3.2$ openssl sha256 Integrated-Log-Collector-17.2R2.13.sh
SHA256(Integrated-Log-Collector-17.2R2.13.sh)= 2d3e71a0a4fc0fc006a028a1783baccf14292b05b8faf7acef00e20b36e65571
bash-3.2$ openssl sha512 Integrated-Log-Collector-17.2R2.13.sh
SHA512(Integrated-Log-Collector-17.2R2.13.sh)= fc3b760037eb86335601072402ba445e653941fd90d522aceacaff51d3c1fd7fbb55319fc779fe10ded7f4da09f33e22f76aba2d68059f612879c2513c582471
Windows10
コマンドプロンプトを使用した方法です。
C:\Users\Public\Documents> certutil -hashfile test.txt MD5
MD5 ハッシュ (ファイル test.txt):
19 2b 6e 28 66 2e af 3f 3d a2 0e 36 dc 26 93 47
CertUtil: -hashfile コマンドは正常に完了しました。
C:\Users\Public\Documents> certutil -hashfile test.txt SHA1
SHA1 ハッシュ (ファイル test.txt):
ff 3f d9 69 98 c3 49 01 12 bc 4e 7a cf f1 09 c5 1c 99 96 e5
CertUtil: -hashfile コマンドは正常に完了しました。
C:\Users\Public\Documents> certutil -hashfile test.txt SHA256
SHA256 ハッシュ (ファイル test.txt):
5f a0 bd 20 20 a7 c1 67 6f f9 9a fc 11 e8 81 2d f9 c0 b4 01 9c f0 33 bb 5e b4 f7
d7 dc dd cf de
CertUtil: -hashfile コマンドは正常に完了しました。
C:\Users\Public\Documents> certutil -hashfile test.txt SHA512
SHA512 ハッシュ (ファイル test.txt):
c2 12 fd 88 e3 57 bf 47 fe 0d 07 da 91 4d 4c 8d 0c b1 7a 1f bd 45 5e 46 4a c0 1a
27 4d 68 53 e9 b8 b7 92 71 3f c0 a7 87 1f d9 91 a5 05 a8 54 4f ce 39 61 b0 86 4
6 00 12 48 99 0a 54 81 1f 17 48
CertUtil: -hashfile コマンドは正常に完了しました。
ちなみに、WSL(Windows Subsystem for Linux)からbashを起動すれば、
md5sumなどが使えます。
WSLを使ってみたい方は、以下を参考にして下さい。
Windows Subsystem for Linux(WSL)で Linux (LinuC)を学習する方法 - Opensourcetechブログ
root@DESKTOP-GRR2ATL:/mnt/c/ Users/Matt/Desktop# md5sum desktop.ini
9e36cc3537ee9ee1e3b10fa4e76104 5b desktop.ini
root@DESKTOP-GRR2ATL:/mnt/c/ Users/Matt/Desktop# sha1sum desktop.ini
7726f55012e1e26cc762c9982e7c6c 54ca7bb303 desktop.ini
root@DESKTOP-GRR2ATL:/mnt/c/ Users/Matt/Desktop# sha256sum desktop.ini
4b9d687ac625690fd026ed4b236dad 1cac90ef69e7ad256cc42766a065b5 0026 desktop.ini
root@DESKTOP-GRR2ATL:/mnt/c/ Users/Matt/Desktop# sha512sum desktop.ini
5f92493c533d3add10b4ce2a364624 817ebd10e32daa45ee16593e913073 602db5e339430a3f7d2c44abf250e9 6ca4e679f1f09f8ca807d58a47cf3d 5c9c3790 desktop.ini
9e36cc3537ee9ee1e3b10fa4e76104
root@DESKTOP-GRR2ATL:/mnt/c/
7726f55012e1e26cc762c9982e7c6c
root@DESKTOP-GRR2ATL:/mnt/c/
4b9d687ac625690fd026ed4b236dad
root@DESKTOP-GRR2ATL:/mnt/c/
5f92493c533d3add10b4ce2a364624
余談(ハッシュを調べるに至った原因)
シェルスクリプトファイルをftpで転送するときに、
ASCIIモードを使用したこと。
ASCIIモードでは、ファイル転送時にテキストの改行コード(CR / LF / CR+LF)を変換する。
以下のように、バイナリーモードを使えば変換はされない。
bash-3.2$ ftp 172.***.***.***
Connected to 172.***.***.***
220 (vsFTPd 3.0.2)
Name (172.***.***.***:Matt): testuser
331 Please specify the password.
Password:
230 Login successful.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
226 Directory send OK.
ftp> bin・・・バイナリーモードに切り替え
200 Switching to Binary mode.
ftp> put Integrated-Log-Collector-17.2R2.13.sh
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 Transfer complete.
92330769 bytes sent in 8.06 seconds (10.9 Mbytes/s)
Connected to 172.***.***.***
220 (vsFTPd 3.0.2)
Name (172.***.***.***:Matt): testuser
331 Please specify the password.
Password:
230 Login successful.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
226 Directory send OK.
ftp> bin・・・バイナリーモードに切り替え
200 Switching to Binary mode.
ftp> put Integrated-Log-Collector-17.2R2.13.sh
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 Transfer complete.
92330769 bytes sent in 8.06 seconds (10.9 Mbytes/s)