回答編集履歴
2
python改良版のコードを追記
    
        answer	
    CHANGED
    
    | @@ -25,4 +25,24 @@ | |
| 25 25 | 
             
            解決策: Pythonのコードでもファイルの中のデータを読み込むように対応する。
         | 
| 26 26 |  | 
| 27 27 | 
             
            デバッグのヒント: まずは小さなデータを対象に
         | 
| 28 | 
            -
            「計算対象のデータ」「計算されたハッシュ値」の双方を表示すると違いに気づくと思います。
         | 
| 28 | 
            +
            「計算対象のデータ」「計算されたハッシュ値」の双方を表示すると違いに気づくと思います。
         | 
| 29 | 
            +
             | 
| 30 | 
            +
            ----
         | 
| 31 | 
            +
            追記2
         | 
| 32 | 
            +
             | 
| 33 | 
            +
            コメントに書いたpythonのコードは確認用の短いコードで、
         | 
| 34 | 
            +
            サイズの大きなファイルには使えないので、改良版のコードを追記しておきます。
         | 
| 35 | 
            +
             | 
| 36 | 
            +
            出典: https://stackoverflow.com/questions/3431825/generating-an-md5-checksum-of-a-file
         | 
| 37 | 
            +
             | 
| 38 | 
            +
            ```
         | 
| 39 | 
            +
            import hashlib
         | 
| 40 | 
            +
            def md5sum(filename, blocksize=65536):
         | 
| 41 | 
            +
                hash = hashlib.md5()
         | 
| 42 | 
            +
                with open(filename, "rb") as f:
         | 
| 43 | 
            +
                    for block in iter(lambda: f.read(blocksize), b""):
         | 
| 44 | 
            +
                        hash.update(block)
         | 
| 45 | 
            +
                return hash.hexdigest()
         | 
| 46 | 
            +
             | 
| 47 | 
            +
            print(md5sum("./files/0a39bcc9c0647cf569c6d7108726ec596007ed80"))
         | 
| 48 | 
            +
            ```
         | 
1
node.js のコードと pythnon のコードの相違点について追記
    
        answer	
    CHANGED
    
    | @@ -12,4 +12,17 @@ | |
| 12 12 | 
             
            // Output: cf31175e3aadb0e711cdf2cfac2f640b
         | 
| 13 13 | 
             
            ```
         | 
| 14 14 |  | 
| 15 | 
            -
            ハッシュ値計算は問題ありません。問題は与えるデータが違う点です。
         | 
| 15 | 
            +
            ハッシュ値計算は問題ありません。問題は与えるデータが違う点です。
         | 
| 16 | 
            +
             | 
| 17 | 
            +
            ----
         | 
| 18 | 
            +
             | 
| 19 | 
            +
            ./files/0a39bcc9c0647cf569c6d7108726ec596007ed80 を読み込んでいますが
         | 
| 20 | 
            +
            違いを分かりやすくするために、ファイル名を `test.txt` ファイルの中身は `ABC`とします。
         | 
| 21 | 
            +
             | 
| 22 | 
            +
            node.js のコードでは、ファイル `test.txt` の中身の文字列 「`ABC`」 のハッシュ値を計算
         | 
| 23 | 
            +
            python のコードは 「`test.txt`」という文字列のハッシュ値を計算。
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            解決策: Pythonのコードでもファイルの中のデータを読み込むように対応する。
         | 
| 26 | 
            +
             | 
| 27 | 
            +
            デバッグのヒント: まずは小さなデータを対象に
         | 
| 28 | 
            +
            「計算対象のデータ」「計算されたハッシュ値」の双方を表示すると違いに気づくと思います。
         | 
