[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [jmadata-users] チェックサム のリストについて



門倉様
(B
(BCksum というのは昔の SunOS にはなかったので、System V 系の売り物 UNIX にしか
(Bないコマンドかという偏見をもっていましたが、調べてみると業界標準 POSIX 1003.
(B2 だったのですね。これは失礼しました。無視してください。
(B
(Bなお、誤りの検出能力からいうと、TCP 内部で使っている 16 ビットの単純加算
(Bチェックサムなんかよりは遥かに強力ですので、今回の問題で実用上差し支えないの
(Bは申し上げるまでもないことです。
(B
(B豊田英司
(B
(B-----Original Message-----
(BFrom: Shinji KADOKURA [mailto:kdkr@xxxxxxxxxxxxxxxxxxx]
(BSent: Monday, October 25, 2004 11:54 PM
(BTo: toyoda@xxxxxxxxxxxxxx
(BCc: wadakoji@xxxxxxxxxxxxxxxxxxx; jmadata-users@xxxxxxxxxxxxxx; kdkr@criepi.
(Bdenken.or.jp
(BSubject: Re: [jmadata-users] チェックサムのリストについて
(B
(B
(B豊田さま
(B
(B黒幕の門倉です。cksum ですと様々なos上でそのまま使えるようです。
(B一方、md5 は一部のosを除きインストールの手間が生じますので、
(Bそこらじゅうで必要になることを考えると、提案にしづらいものが
(Bあります。
(B
(Bなお、32ビットでも、偶然一致するのは運の良い(悪い?)組合せで複数
(B反転した場合だけで、転送時のビット反転確率より 10桁以上起りに
(Bくいことのように思います。ですのでcksumでもれる確率は気にしな
(Bくてよいのではないでしょうか。
(B
(B--
(B〒270-1194 千葉県 我孫子市 我孫子 1646
(B電力中央研究所 環境科学研究所 大気環境領域 気候グループ
(B電話: 04-7182-1181 (ex. 2077) FAX : 04-7183-2966
(B門倉真二 
(B
(B>> 和田様
(B>>
(B>> べつだんご提案の内容でいけないというわけではないのですが、せっかくお願い
(Bされ
(B>> るなら CRC アルゴリズムよりビット数が多くて「データは壊れているのに偶然一
(B致
(B>> してしまうリスク」が小さい md5 を提案されたほうがよかろうと思います。
(B>>
(B>> 豊田英司
(B>>
(B>> -----Original Message-----
(B>> From: WADA Koji [mailto:wadakoji@xxxxxxxxxxxxxxxxxxx]
(B>> Sent: Monday, October 25, 2004 9:28 PM
(B>> To: jmadata-users@xxxxxxxxxxxxxx
(B>> Cc: kdkr@xxxxxxxxxxxxxxxxxxx
(B>> Subject: [jmadata-users] チェックサムのリストについて
(B>>
(B>>
(B>> 気象業務支援センター 佐藤さま:
(B>>
(B>>   いつも御世話になっております。電力中央研究所の和田です。
(B>> 最近、データの内容化け(サイズは正しい)が発見されました。
(B>> 東大のサイトでは同じものが正しく格納されているので、当所への
(B>> 転送の際のエラーと考えられます。
(B>>   データ量が大きいこと、インターネットの途中の信頼性があやふや
(B>> であることなど鑑みるに、cksum リストが必須なのではないかと
(B>> 思います。
(B>>   そこで、可能であればcksumのリストを配信前に作成して、データと
(B>> いっしょに配信してくださるとありがたいのですが、いかがでしょうか?
(B>>
(B>> 具体的な方法の一例としては
(B>>
(B>>         #!/bin/sh -
(B>>         cmd=`basename $0`
(B>>         usage="usage: $cmd dir1 [dir2 dir3 ..]
(B>>             make cksum list of files under dir1, dir2, ...
(B>>         "
(B>>         pwd=`pwd`
(B>>         for dir in $* ; do
(B>>             yyyymmdd=`basename $dir`
(B>>             lst=cksum.$yyyymmdd
(B>>             cd $dir
(B>>                 new=`ls -t | head -1`
(B>>                 if [ $lst != $new ] ; then
(B>>                     cksum * > ../$lst
(B>>                     mv ../$lst .
(B>>                 fi
(B>>             cd $pwd
(B>>         done
(B>>
(B>> というようなスクリプト(名称例 mkcksum)を用い、引き数に
(B>> ディレクトリ名を指定するようにすればよろしいかと思います。
(B>> 例えば、
(B>>        % cd FTPのホームディレクトリ
(B>>        % mkcksum data/200410*
(B>> 或は
(B>>        % cd FTPのホームディレクトリ
(B>>        % cd data
(B>>        % mkcksum 200410*
(B>>
(B>> というようにして使います。
(B>>
(B>> 以上、御検討のほど、よろしくお願いいたします。
(B>>
(B>> ---
(B>> 電力中央研究所 地球工学研究所 流体科学領域(気象G)
(B>> 和田浩治(wadakoji@xxxxxxxxxxxxxxxxxxx)
(B>> 〒270-1194 千葉県我孫子市我孫子1646
(B>> TEL:04-7182-1181、Fax:04-7184-7142
(B>>
(B>>