Solidの真正性
Solidの技術的な理解が足りているかは分からない(浅いとも思う) SolidはData Controllerが自分でサーバーを建てるか、委託者に委託することでDataをControllすることができる。 Solidの構図はIONと仕組み上は近いのではないか?と思っている つまり一つ一つのサーバーは独立しており、状態の管理に脆弱性があるのではないか?という事。
サーバー自体にログやアクセス制御の情報を管理していくと認識している
つまりこれは改ざんや編集ができる可能性があるという事ではないか?
この問題は必ず出ていると思うんだけど、そこに対して取り組んでいないってのは、もしかしたらそこまで重大なことではない or もっと違う側面から見た時に改ざん、編集がされてもよい or するインセンティブがないって可能性がある
それができないようなデータ構造になってることも考えられる?mameta.icon
下記参照Yudai.icon
この部分はなってなくてむしろ今研究されているっぽい
KeplerはSolidで言っているログやアクセス制御をブロックチェーン上で管理している ログ解析はMonas でどうする?mameta.icon
ただKeplerが分散型ストレージ上で保存するには僕たちと同じ問題にあたる可能性があり、解決できないならばSolidと同じ問題を抱える可能性がある(一貫性などは解決している) そうなるとMonasが分散型ネットワーク上でPDSを実現する理由が出てくるのかもしれない(分散型ネットワーク上で実現できることは、現在のサーバーやローカルでも可能であると思う。どう抽象化するかの話にはなるがYudai.icon) 真正性を保つために一番いいのは分散型ストレージを使う事である だからこそIPFSで構築することに意味があるのかもしれないYudai.icon or 分散型PDSを独自で作る
とりあえず聞いてみたYudai.icon(2023/7/30)
返信来た!
To my knowledge, this is a currently ongoing research topic in decentralized systems. This would require an unbiased store to record valuable information one way or another. Having a blockchain component in here would be a decent choice, as transactions by 2+ agents could be queried from the chain as long as the chain is tamper-proof.
私の知る限り、これは分散型システムにおいて現在進行中の研究テーマである。そのためには、貴重な情報を一方的に記録する公平なストアが必要になる。チェーンが改ざんされない限り、2人以上のエージェントによるトランザクションをチェーンから照会することができるからだ。
あ、やっぱりそうなんだYudai.icon
You could use digital signatures if you want to prevent manipulation. For instance, if you want a verifiable university transcript:
University signs transcript and sends signature + document to user
User/App stores it in the users pod
Other user downloads both, asks the university for the public signature key and verifies the document with it
This way the user has control over the storage (where to put it, who has access, if they want to delete), while the university is the only one who can create/modify such documents. And everyone with access can verify these documents.
And this depends on the type of data you store. Most apps and data you use locally on your computer won’t require authenticity for example (music players, document editors, etc), a Solid equivalent of such apps also won’t require authenticity. But for other apps it will be necessary.
And afaik there’s no standard way yet to do this (ie where to store the signature, which vocabulary to use, etc).
改ざんを防ぎたいのであれば、デジタル署名を使うこともできる。例えば、検証可能な大学の成績証明書が欲しい場合:
大学が成績証明書に署名し、署名と文書をユーザーに送信する。
ユーザー/アプリはそれをユーザーのポッドに保存する。
他のユーザーが両方をダウンロードし、公開署名鍵を大学に要求し、その鍵で文書を検証する。
こうすることで、ユーザーは保管場所(どこに置くか、誰がアクセスできるか、削除したいか)をコントロールでき、一方、大学はそのような文書を作成/修正できる唯一の人物となる。そして、アクセス権を持つ誰もがこれらの文書を検証することができる。
そしてこれは、保存するデータの種類にもよる。例えば、あなたがコンピュータ上でローカルに使用するほとんどのアプリやデータ(音楽プレーヤー、文書エディタなど)は真正性を必要とせず、そのようなアプリに相当するソリッドも真正性を必要としません。しかし、他のアプリでは必要です。
そして、そのための標準的な方法(署名を保存する場所、使用する語彙など)はまだありません。
確かにYudai.icon
VCもまさしく署名による真正性Yudai.icon