yasuokaの日記: 初期のBitcoinにおけるnonceの偏り
日記 by
yasuoka
Bitcoinの取引記録をチェックしていたところ、初期のnonce (Bitcoinパズルの答)に妙な偏りがあるのを見つけた。nonceを256で割った余りをmと置く時、初期の30240個は以下のような分布を見せている。
- 0≦m≦15 … 4562個
- 16≦m≦31 … 6742個
- 32≦m≦47 … 6924個
- 48≦m≦63 … 3823個
- 64≦m≦79 … 703個
- 80≦m≦95 … 696個
- 96≦m≦111 … 678個
- 112≦m≦127 … 669個
- 128≦m≦143 … 620個
- 144≦m≦159 … 677個
- 160≦m≦175 … 699個
- 176≦m≦191 … 684個
- 192≦m≦207 … 676個
- 208≦m≦223 … 667個
- 224≦m≦239 … 701個
- 240≦m≦255 … 719個
本来、どの区間もランダム(つまり1890個付近)になるはずなので、上記の分布における偏りは、有意なものだと考えられる。実は、この30240個の取引承認がおこなわれている間、Bitcoinパズルの難易度は、ずっと最低値の1.0のままだった。すなわち、nonceのこの偏りは、あくまで難易度1のBitcoinパズルにおいてだけ現れているもので、「SHA-256」そのものが崩壊したわけではない。ただ、「SHA-256」を基礎にしているはずのBitcoinパズルにおいて、答のnonceに特徴的な偏りが見られる、というのは、特殊な条件下とはいえ驚きである。
では、難易度が上がってしまった現在においては、nonceにはどのような偏りが見られるのだろう。と書いていたところ、エイプリルフールになってしまった。まあ、この話自体がエイプリルフールだったということにして、あとは読者の皆さんに捜していただくことにしようと思う。よろしくね。
初期のBitcoinにおけるnonceの偏り More ログイン