# Verkle分散ストレージアプリケーション(on Lappsnet) # 要件 ``💡Lappsnet上で動作するアプリケーションを作成したい。`` Verkle Treeを使った分散ストレージを作成することとする。 # 特徴 - ユーザは`ESEAT`を支払って、VerkleTreeの分散ストレージを利用することができる。 - 複数のユーザのストレージ(N個)に同一のデータがコピーされる。 - 永続保証 - 永続的にデータは保存されるが、1年ごとにストレージの料金を支払わないとデータが消える。(永続的にデータが保存されるとい記述しているが、あくまでも永続保証という言い方をパワーワードとして使いたいためである) - (APIでも使えるようにする? = GUI操作他、APIでも使用できるようにしたい。イメージは他のアプリからAPI呼び出してプログラムとして利用できる。) ![](https://hackmd.io/_uploads/rJ4Sju_-5.jpg) # ユースケース - ユーザのアプリケーションから、データの保存場所として分散ストレージをAPI経由で利用する。 # 機能 - ユーザはVerkleTreeを作成することができる - 複数のVerkleTree一覧を確認できる - VerkleTreeを選択して下記機能を実行することができます - keyを指定して値を取得することができる - keyとvalueを指定しストレージに値を保存することができる - keyを指定して値を削除することができる - keyを指定してVerkle Proofを受け取ることができる - Verkle Proofを渡してVerify判定を受けることができる - VerkleTreeの保存時にSATを支払う。 - VerkleTreeは複数ノードにFullコピーが保存される。(Advanced: 上記の機能一覧の実装後) # メモ - フロントのサービスサイトは1枚のページで、zkcloudのフロントページとは独立して作成することとする。 - 最初は自分等のストレージのみでサービス提供を行う。 - 将来的には、一般ユーザにストレージ領域を提供してもらう。 - 分散ストレージの作成は、お互いのnodeがProofを提出し合うことで同期の正しさを担保する。 - 5つくらいのノードにデータを分散させたい。