回答編集履歴
5
確認コード追加
answer
CHANGED
@@ -19,12 +19,14 @@
|
|
19
19
|
hash = hashlib.sha256(str(block).encode())
|
20
20
|
|
21
21
|
print(hash)
|
22
|
+
print(hash.digest())
|
22
23
|
print(str(binascii.hexlify(hash.digest()), 'utf-8'))
|
23
24
|
print(hash.hexdigest())
|
24
25
|
```
|
25
26
|
結果
|
26
27
|
```
|
27
28
|
<sha256 HASH object @ 0x00000205C1845DF0>
|
29
|
+
b'F\xe3\x91\xc4(\x1c\x16-\xc4R\xa5\x8d\nun\xc6V\x8e\xbe:\xcb\xd9\xd3s\x1d\x1e\xcc\xc6l#\xd1{'
|
28
30
|
46e391c4281c162dc452a58d0a756ec6568ebe3acbd9d3731d1eccc66c23d17b
|
29
31
|
46e391c4281c162dc452a58d0a756ec6568ebe3acbd9d3731d1eccc66c23d17b
|
30
32
|
```
|
4
引用内容追加
answer
CHANGED
@@ -3,6 +3,9 @@
|
|
3
3
|
計算したダイジェスト(ハッシュ)値をバイト列ではなく、16進形式文字列で返しているだけです。
|
4
4
|
それと、比較すべき対象は`digest()`です。
|
5
5
|
```
|
6
|
+
hash.digest()
|
7
|
+
これまで update() メソッドに渡されたデータのダイジェスト値を返します。これは digest_size と同じ長さの、0 から 255 の範囲全てを含み得るバイトの列です。
|
8
|
+
|
6
9
|
hash.hexdigest()
|
7
10
|
digest() と似ていますが、倍の長さの、16進形式文字列を返します。これは、電子メールなどの非バイナリ環境で値を交換する場合に便利です。
|
8
11
|
```
|
3
比較対象名修正
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
[hashlib --- セキュアハッシュおよびメッセージダイジェスト](https://docs.python.org/ja/3/library/hashlib.html)
|
2
2
|
ドキュメントを読みましょう。
|
3
3
|
計算したダイジェスト(ハッシュ)値をバイト列ではなく、16進形式文字列で返しているだけです。
|
4
|
-
それと、比較すべき対象は
|
4
|
+
それと、比較すべき対象は`digest()`です。
|
5
5
|
```
|
6
6
|
hash.hexdigest()
|
7
7
|
digest() と似ていますが、倍の長さの、16進形式文字列を返します。これは、電子メールなどの非バイナリ環境で値を交換する場合に便利です。
|
2
digest()追記
answer
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
[hashlib --- セキュアハッシュおよびメッセージダイジェスト](https://docs.python.org/ja/3/library/hashlib.html)
|
2
2
|
ドキュメントを読みましょう。
|
3
3
|
計算したダイジェスト(ハッシュ)値をバイト列ではなく、16進形式文字列で返しているだけです。
|
4
|
+
それと、比較すべき対象はhash.digest()です。
|
4
5
|
```
|
5
6
|
hash.hexdigest()
|
6
7
|
digest() と似ていますが、倍の長さの、16進形式文字列を返します。これは、電子メールなどの非バイナリ環境で値を交換する場合に便利です。
|
@@ -14,11 +15,13 @@
|
|
14
15
|
block = {'b':2, 'a':1 }
|
15
16
|
hash = hashlib.sha256(str(block).encode())
|
16
17
|
|
18
|
+
print(hash)
|
17
19
|
print(str(binascii.hexlify(hash.digest()), 'utf-8'))
|
18
20
|
print(hash.hexdigest())
|
19
21
|
```
|
20
22
|
結果
|
21
23
|
```
|
24
|
+
<sha256 HASH object @ 0x00000205C1845DF0>
|
22
25
|
46e391c4281c162dc452a58d0a756ec6568ebe3acbd9d3731d1eccc66c23d17b
|
23
26
|
46e391c4281c162dc452a58d0a756ec6568ebe3acbd9d3731d1eccc66c23d17b
|
24
27
|
```
|
1
説明更新
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
[hashlib --- セキュアハッシュおよびメッセージダイジェスト](https://docs.python.org/ja/3/library/hashlib.html)
|
2
2
|
ドキュメントを読みましょう。
|
3
|
-
計算したダイジェスト(ハッシュ)値をバイ
|
3
|
+
計算したダイジェスト(ハッシュ)値をバイト列ではなく、16進形式文字列で返しているだけです。
|
4
4
|
```
|
5
5
|
hash.hexdigest()
|
6
6
|
digest() と似ていますが、倍の長さの、16進形式文字列を返します。これは、電子メールなどの非バイナリ環境で値を交換する場合に便利です。
|