暗号理論

NEMは 楕円曲線暗号 に基づく暗号を使用しています。基礎となる曲線の選択は、セキュリティとスピードを保証する上で重要です。

秘密鍵と公開鍵

秘密鍵 はランダムな 256-bit の整数です。公開鍵 は秘密鍵から暗号学的に導出されます。NEM では Ed25519曲線sha3 ハッシュアルゴリズムを使用しています。

アドレス

NEM アドレスは base-32 3 エンコードトリプレットです:

  • ネットワークバイト
  • アカウントの公開鍵の 160-bit ハッシュ
  • アドレスのミスタイプを素早く確認するための 4 byte チェックサム

以下のステップで公開鍵をアドレスに変換します:

  1. 公開鍵に 256-bit sha3 を適用します。
  2. ステップ 1 の結果に 160-bit Ripemd ハッシュを適用します。
  3. Ripemd ハッシュにバージョンバイト (0x68 か 0x98) を接頭します。
  4. 結果に 256-bit sha3 を適用し、最初の 4 byte をチェックサムとします。
  5. ステップ 3 の出力とステップ4のチェックサムを結合します。
  6. base32 を使ってエンコードした結果

上記の説明通り、ブロックチェーンとの疎通無しにアドレスを作ることができます。ブロックチェーンは最低でも1つのトランザクションが関係するアドレスだけを追跡します。