[メモ] party系チェーンでSBT?

つぶやき。ぽえむ。

NFT の次は SBT だそうです。Vitalik さんも言っているようなので間違いない。Vitalik さん間違えない。

乗るぜこのビッグウェーブに!

って思ったとき、どういう設計が良いのかな、と。

まず SBT 相当の概念になにか名前をつけたい。ここでは Label と呼ぶことにする。Label はアセットとは別の 1st class なオブジェクトである。

まず、create_label という API を用意する。

create_label(destination_address, text, is_hex)

このメッセージを解釈した counterparty-server は、下記テーブルにレコードを追加する。たぶん anti-spam-fee は徴収される。

/* 疑似 SQL */
INSERT into labels (
  block_index,
  transaction_index,
  source_address,
  destination_address,
  memo)

INSERT into label_states (
  transaction_index,
  accepted = False,
  revoked = False)

accepted = False であるのがキモ。自分のアドレスに対し、勝手にレッテルを貼られたら萎える。誹謗中傷やらハラスメントやらメモの温床になるのは避けたい。なので、opt-in 戦略を取る。このトランザクションに対する trigger message が destination_address から発行されると、 accepted = True へ更新される。一度 True となったら False には戻せない。前言撤回を許さないバイオゴリラの世界観。

一方、labels メッセージを発行したアドレス (source_address) から trigger (または cancel) メッセージを発行することで、この Label をいつでも失効させられる (revoked = True)。失効に対して destination_address 側は拒否できない。履歴は残る。source_address からの失効撤回もできない。失効させたら別の Label を再度発行してくださいねと。

最先端金融工学ギャンブルマシーンではない、party 系チェーンで SBT のユースケースは在るのか? ちょっと考えていたのですが。

これ、アドレスの所有証明に使えます。

まず、Twitter ログイン可能でトラストフルな存在証明サービス A を用意します。

アドレスの所有証明を行いたい Alice は、 A に Twitter ログインします。

Alice は A に対し、自らが所有するアドレスで署名し A に提出します。

Alice の署名を検証できたら、A は、署名に使われたアドレスを destination とし Twitter ID を text に含む Label メッセージを発行します。

Alice は、発行された Label を accept するメッセージを発行します。

以上の手順で、Alice が秘密鍵を所有するアドレスとその Twitter アカウントが結びつきます。

もうちょっと設計っぽい感じで描くと、こんなの。

Twitter でなくても、ソーシャルログイン機能を提供しているサービスなら同様に結び付けられます。

ソーシャルアカウントは、実在の人物と結びつけるのは難しい感はありますが。しかしたとえば、政府が法人向けに発行している gBizID に対応させたら、かなり強い所有証明になるのではないでしょうか。

なお、Alice と A が結託すると偽造が可能であり、A へのトラストは必要です。しかし  A の発行するラベルの信頼性については、ブロックチェーン外での、メタ評価が可能でしょう。たぶんもんだいない。しらんけど。

最近、無職業者 BOT では "やるやる詐欺" が多発しているうえに、上記実装には未実装の trigger message が必要なので、諸々アレなのですが。

ビッグウェーブが来たときには、割とシンプルに実装できそうよ?

というお話でした。

ぽえむ。

追記

署名を求めるのではなく「指定のメモ付きのユーティリティ・アセットを Alice から A が指定するアドレスへ送らせる」という実装もありえる。 A はユーティリティ・アセットの販売で収益をあげられるので、経済が回り始める。

Remaining : 0 characters / 0 images
100

Sign up / Continue after login

Related stories

Writer

I'm just a BOT.

Share

Popular stories

Mona is moving the branch to Bitcoin core, why?

1184

唯一性と希少性と、デジタル・アセット

1071

Monacoin-core 0.20, when?

860