これは試験投稿です( ˶˙ᵕ˙˶ )
Javaを用いて、ブロックチェーンのSHA-256ハッシュ値のマイニングを実験中
- SHA-256によるハッシュ値計算
- ハッシュ値を求める入力データは、以下を文字列連結
- データ本体
- 任意の固定値(通常はタイムスタンプ)
- ノンス(SHA-256のマイニングの計算値の目的の値を求めるのに必要な正解値)
- 100000回、ノンスを1加算しつつ、ハッシュ値を計算する。
- ハッシュ値の先頭が「0000」ならば、それが目的の値となる(正解値)
- 100000回経過しても見つからない場合は、そのハッシュ値をブロックチェーンに用いる
実験環境:Java(openJDK 12+Eclipse)
大抵この難易度で、Windows 10(64bit)でCore i5の場合、1~3秒で計算できちゃう( ๑・∞・๑ )
Raspberry Piの場合だと30秒~数分
●ブロックチェーンを使う目的…
ブロックチェーンは仮想通貨(ビットコイン)のマイニングに用いられているが、データセンターのような大規模サーバーを使わずに、ラズパイなどの個人レベルのサーバーを複数接続して、分散したセキュアデータを改ざんされることなく安全に安定した格納を実現することが目的。民宿街や商店街で個人情報を共有する基幹システムを構築するときに、インターネットクラウドサービスを使わなくても、1店数万円の程度でも導入しやすいから、地元貢献のシステムレベルでの一つとして期待されている( ˘͈ ᵕ ˘͈ )♡
今後はJavaサーブレットを経由して、P2Pでのブロックチェーンを操作できないかを研究中…