Monacard完全非中央集権化構想
この記事では画像のアップロード仕様について話します。
現在の仕様ではcard.mona.jpを必ず通さないとMonacardの画像をアップロードできないことになっています。
モナパレットを使っているときも裏で必ずcard.mona.jpのサーバーにアップロードしています。
現在のメリット
・card.mona.jpの管理人がまともである限りは安定して使用できる。
デメリット
・card.mona.jpの管理人が変な事をしていても従わざるを得ない。
・管理人が行方不明になった場合に新規カードが発行ができなくなる。もしくは第三者が類似サービスを立ち上げるのに時間がかかる。
モナカードは2.0化によって非中央集権化を進めましたが、実は画像の運用については現在も中央集権的です。ここを非中央集権化しなかった理由は画像へのアクセス速度や寿命が不安定になりユーザーが著しく使いにくくなると考えたからです。
最近のNFTブームの影響もあって波はありますがモナカードユーザーは増える傾向にあります。ここまで大きく育ったサービスをcard.mona.jpに依存させたまま不意に終わらせてしまうようなことがないように、画像部分についての構想も文章化しておきたいと思います。非中央集権化と画像の安定した運用の両立を考えた構想です。
画像非中央集権化構想
策定した仕様を満たした画像アップロードサーバーをMonacard2.0画像準拠サーバーとし、誰でもMonacard2.0画像準拠サーバーを公開, 運用できるようにする構想です。
基本的な仕様
・アップロード用のAPIを用意すること
・IPFSにファイルを設置すること
・画像についての情報をAPIとして公開すること
・策定された画像についての規約について同意しこの規約を表示すること
・規約違反の画像を検閲すること
・画像へアクセスするためのURLを公開すること(http(s)でアクセスできるもの)
・画像が消えないようにどのような構成でバックアップを行っているか明示すること
・アップロード時の利用料は任意で決めることができる
今のところ思い付きですがこんな感じの共通の仕様を作ることで複数のサーバーが立ち上がっても最低限の動きは保証されるはずです。サーバーの運営者はアップロードされた画像を消えにくい状態にする努力義務が発生します。ユーザーはバックアップの構成や運営者の信用を見てどこを使うか判断することができます。
非中央集権化して選択肢が増えるということは良いことばかりのような気がしますがそうではありません。
この構想が正式な仕様となってサーバーを運用する方が出てきて半分の新規カードの画像がそちら経由でアップロードされたとします。2年後、このサーバーの運営者が飽きてサーバーを放置あるいは解約、さらに不運にもIPFSからも参照できなくなり画像が行方不明になってしまうかもしれません。その場合新規モナカードが表示されなくなり電子ごみになる可能性があります。
自分で言うのもあれですが、card.mona.jpは5年近くある程度安定して運営されてます。誰も見向きもしなくなった期間も最低限の保守はしていました。7年以上いろんな暗号通貨系のサービスを見てきましたがこのように長い期間生き残ることは稀です。長い間保守運営できる人は稀です。そう考えると信頼できるサーバーを選択すること自体がなかなか難しいということになります。
長々と書いてきましたが、構想はあるのですがデメリットもあるためずっと先送りにし続けている状態です。これから先もずっと先送りしたいのですがそうも言っていられない状況がくるかもしれないのでいろんな人に共有するために記事にしてみました。
この構想はこの後書こうと思っているモナカード有料化構想とセットですので気になる人はそっちも読んでみてください。
厳しいご意見、提案、質問などお待ちしてます。
お疲れ様です。
もちろん仮の仕様だとは思うのですが違和感があった点についてコメントしておきたいと思います(IMO)。
・策定された画像についての規約について同意しこの規約を表示すること
・規約違反の画像を検閲すること
この2つの項目は他の項目とレイヤーが異なり過ぎているのではないかと思いました。IFなどの技術的な仕様であればバリデーション可能ですが、このような倫理条項のようなものは機械的に弾くことはできないですよね。そのようなライセンスを作ったりして法的にバリデーションするしか方法がなさそうです。
また、非中央集権化を謳っていることと「検閲」との相性が悪いと素朴におもいました。(もし検閲を強制できるのであれば非中央集権化できていないのでは)
ここからはより個人的な意見ですが、MonacardのAPIサーバが複数あったとしてもBANリストに何をいれるかなどにコンセンサスを得る必要は特にないと思います。規約には「日本国の法律に違反するもの。」は登録しないことと明記されていますが、たとえばもし【女性が肌を見せることが違法】な国があればその国のサーバではそのようなカードはBANされるべきかもしれませんが日本のサーバでBANする必要はないでしょう。
そして逆も然りだと思います。
ご参考までに、似たような現実のソフトウウェアとしてマストドンのサーバをみてみると、規約についてはサーバごとに設定されておりそれぞれのサーバの管理人の責任で運営されているようです。場合によっては他のサーバからサーバごとドメインブロックが行われることで平和が守られています。
ただこれはパット見て感じただけの意見ですので、できればどんな目的意識でこの項目を入れる必要があったのかを深堀していただけると助かります。
長文失礼しました。