この暗号をブロックチェーンで運用する場合
復号
3AB
復号
2AB
復号
AB
復号
復号
復号
復号
復号
復号
暗号ABに到着する方法:
・AにBの暗号化を施す
・BにAの暗号化を施す
・A2BとB2Aから復号化する
この関係は、2ABなど世代が変わっても保証される
よって、マイニングの必要がないブロックチェーンを形成することが出来る。
IDには、価値情報が盛り込んである。
それは、トークンの価値という情報で問題ない。
渡したい金額分のトランザクションIDとして、このIDは機能する。
(つまり、トランザクションにウォレットのアドレスの明記が要らないので、横取りが出来ない。)
ある端末「X」が「Y」へ情報を伝える際に伝えるのは、A2BとAB2の暗号である。
そこからYはABへの復号化をして、その情報が確かなものかをXに問い合わせる(認証する)
(これが合意形成と一意制約の根拠になる)
確かなものと分かれば、Walletに価値移動分を反映する。
この時、X端末内に移動価値と暗号ABをペアで保存しておく。
端末Yが誰かに送金をする場合、この端末Xに認証を取るが、この時にABの値で認証を取り、同時に受信価値の確認も行う。これに相違がある場合、Walletログインに認証エラーとして、改ざんを除外する。
この時、金額のみが改ざんされたとしたら、前世代認証時の値を参考に自動訂正機能を組み込むことも可能。
送受信2端末を使った結託改ざんを行った場合は、移動額を更新することで結託者間の授受金額を均一にならせる(送信者側のウォレットが一方的に損をする。
送信者側のウォレットの金額が負の数になった場合は結託改ざんとみなし、認証から除外できる。
この際、前世代の暗号の認証がエラーすると、先の端末での認証もエラーとする。
改ざん結託者の端末は、ブロックチェーンから切り離されて孤立する。
端末内で保存の場合:
A2 B2 AB の 各世代を保存する。
世代についての記述は必要ないので上述をそのままKeyと出来る。
根拠は、値が違っても型が同じだと解釈していただければOK
各端末の管理機能は、
各世代のAB値をクエリするデータベースと同等である。
サイズ:256Bに確定。
ID
A
A2
A3
A4
A5
A6
A7
A2B
A3B
A4B
A5B
A6B
A3B2
A4B2
A5B2
A4B3
復号
B
B2
AB2
AB3
A2B3
A2B4
A3B4
A2B5
AB4
AB5
AB6
B3
B4
B5
B6
B7
端末B
(受信側)
A2B AB2
受信
ABへ復号化
事前価値情報追記
送信
認証受信
認証完了
Walletへ反映
(送信側)
ABを使用申請
認証完了
ブランチID受信
2ABを生成
価値情報追記
2ABを受信
認証可否の送信
認証完了
Walletへ反映
A3B2 A2B3 生成
事前価値情報追記
送信
端末A
(送信側)
トランザクションIDを生成
ABを生成
価値情報追記
ABと価値情報を受信
認証可否の送信
認証完了
Walletへ反映
ABと価値情報を受信
(改ざん検知開始)
ID生成代(初代)
or
信頼に足る世代
まで再認証
ブランチID生成
送信
A2B AB2 生成
事前価値情報追記
送信
端末C
(受信側)
A3B2 A2B3
受信
2ABへ復号化
事前価値情報追記
送信
認証受信
認証完了
Walletへ反映