Waves - クライアントAPIとかスマコンについて少し

機能詳細の話ではないです。

WavesクライアントにはAPIが用意されている(ドキュメント)
現状二つあって、簡単に言うと

  • Payment API
    (たぶん)TransferTranscationを発行してくれる。Waves支払いとかに使える。
  • Web Auth API
    Waves署名をしてくれる。アカウント/アドレスの秘密鍵/SEED(backup phrase)を知っていることの証明。

Payment API

Paymentについては名前の通り。
Wavesクライアントの Receive -> Invoice で生成されるリンク/QRコードの呼び出し先と言えば分かるだろうか。
将来的にはInterledger的になるのかもしれない。

Web Auth API

一方、Web Auth APIについて
アドレスを認証して、
そのアドレスが特定トークンを持っていたら とか
特定のデータトランザクションが発行されていたら とかの条件で
サービスを提供したりするのが基本的な使い方なのだと思う。

ところでスマコン(RIDEコントラクト)有効になると署名/証明の手段を変更できるので、
SEEDを知っている = アカウントの持ち主ということにはならない。
(アカウントごと譲るとかたぶんできる)
普通に使っている分にはスマートアカウントにはしないよね。
ということなのだろう。

みんなのアカウント?

例えばトランザクションのproofsに含めた公開鍵で署名チェックするとか(確認はしていない)

let sigv = sigVerify(tx.bodyBytes, tx.proofs[0], tx.proofs[1])

別の管理アカウントのデータトランザクションと合わせて設定できる公開鍵の許可/不許可とか制御できそうなので(確認はしていない)

let pubkeystr = toBase58String(tx.proofs[1])
let agreement = getBoolean(<ManageAddress>, pubkeystr)
let isAgreed = if(isDefined(agreement)) then extract(agreement) else false

それはそれで何か用途がありそうだけども。

スパムトークン多いね

Wavesクライアントで参照している スパムリスト
多いですよね。
自身の発行したのが含まれていることはないと思いますが・・・

あと、Web/デスクトップクライアントであればリストの参照URLを変更できるので自分専用にカスタムできる。


See also