Chunkへの素数の割り当てについて


#1

多分この題名であっていると思うのですが、間違っていればご指摘下さい。
coinへの素数の割り当てでも良いと思います。
以下で別スレッドを立てると言ったので立てました。

基本的には以下のethresear.chのprime hash gameの話だと思うのですが、私の理解と不明点をまず書きますね。

私の理解

  • 基本的には自然数と素数のマッピングを作成したい
  • Cashの実装的に、coinのデータ構造があるのでそこにprime numberを追加すれば良いと思っている
  • それがルール上、自然数Iに対してより大きい素数か?そもそも素数か?でprime hash gameを行う。

疑問

  • 対応する素数が決まるまで、そのchunk(coin)は使用できない。
  • 例えばオペレーターが、あらかじめいくつかのchunk(coin)の素数を提案しておいて、対応する素数を決定させておく?
  • この場合誰が、素数にchallengeする?(誰でも良いので報酬狙いでやる?)

#2

材料として、上記スレの提案からも関連する内容をピックアップしておきます。


#3

おお!なるほど、確かにこのくらいの量なら、素数をleafとしたmerkle treeのrootを入れ込んでおけば良いんですね。僕の用途だと事足りそうです。


#4

https://ethresear.ch/t/plasma-prime-design-proposal/4222

^ これを読み直していたら、

Each segment is mapped to a prime number generated by the prime hash function, usage of that prime number will be shown later.

との記載がありますね。素数にマッピングされるのは chunk ではなく segment?

引き続き理解深めていきますが一旦メモ。


#5

確かにSumMerkleTreeを使ってますし、leafに割り当てられたrangeが可変なので、Primeのleafはsegmentですね。
実はそこわざわざそうする利点がわかってないのですよね、、
一回一通り思考をしたのですが(ちょっとメモをしてなくてあやふやですが

その時はleafに割り当てる幅を固定する場合と固定しない場合で、以下のような利点欠点があるのではないかと考えました(すごく間違ってる可能性あり)

leafに割り当てる幅を固定しない

  • segmentに素数を割り当てる
  • 履歴量が所持ethに比例しない
  • merkle treeのleafでrangeがかぶる可能性がある
    • sum merkle tree を使って、invalidな場合block全体に対してchallengeする必要がある?

leafに割り当てる幅を固定する

  • chunkに素数を割り当てる
  • 履歴量が所持ethに比例してしまう
  • merkle treeのindexから、rangeがわかる。
    • sum merle treeがいらない?

で冷静に考えると、segmentに素数を割り当てる欠点って無いんですかね。exitが複雑になるかと思ったのですがそうでもなさそうです。でもSumMerkleTreeがinvalidなことって、誰がどうやってわかるんでしょうね。