「なでしこv1」開発掲示板

なでしこv1のバグや要望を書き込む掲示板

(#2538) Re: MD5/SHA1ファイル取得で正しくないハッシュ値が返る - うぇいく (2016-02-18 13:11) /中 未処理
256MBごとに切り替わるということで分りました。

 内部で全体のバイト数を、ビット数に変換する処理(8倍する)ところで、桁上がりの処理に誤りがありました。
(標準の整数長より長いので、単なる数式ではなく、桁上がり等考慮したロジックで求めています。実際には、8回足すことで求めています。2つの値の足し算であれば、桁上がりするのは1しかないので処理が簡単になる。)

1:0000000032000000 ←正しい。
2:0000000064000000 ←正しい。
3:0000000196000000 ←桁上がりしているが、本当はまだ。なので値も正しくない。
4:00000001C8000000 ←値が正しくない。
5:00000001FA000000 ←値が正しくない。
6:000000012C000000 ←本来の桁上がりするタイミング。値も正しい。
7:000000015E000000 ←ここの値も正しい。
8:0000000290000000 ←2回目の桁上がりしているが、本当は未だ。また値が正しくない。

本当の答えは、0000000190000000。
上記のように、正しくなったり、不正になったりを繰り返します。これの周期が256MBとなるようです。
原因が絞り込めたので、折を見て修正します。
MD5/SHA1ファイル取得で正しくないハッシ.. / wt (2016-02-14 18:01) (#2535)/ 中 未処理
  Re: MD5/SHA1ファイル取得で正しくないハ.. / うぇいく (2016-02-15 22:33) (#2536)/ 中 未処理
    Re: MD5/SHA1ファイル取得で正しくないハ.. / wt (2016-02-18 00:51) (#2537)/ 中 未処理
  Re: MD5/SHA1ファイル取得で正しくないハ.. / うぇいく (2016-02-18 13:11) (#2538)/ 中 未処理
  Re: MD5/SHA1ファイル取得で正しくないハ.. / うぇいく (2016-05-02 16:03) (#2575)/ 中 未処理
    修正確認しました / wt (2016-05-03 19:06) (#2576)/ 中 解決

(#2538)へ返信する:

👆お手数ですが、いたずら防止のために、「真夏」の読み方を記入してください。

編集時に使うキーを入力(省略可能)

画像ファイル(最大300KB)を添付可能