LoginSignup
15
4

Symbolは何をなめらかにするのか?

Last updated at Posted at 2023-12-25

Symbolはいったい何をなめらかにするブロックチェーンなのか、という視点で、Symbolの基本概要、基本機能を中心にあらためてまとめたいと考え、ざっくりだがこの記事を作成した。
自分でもSymbolの概要一覧・基本機能一覧として使っていくイメージである。

ブロック生成やトランザクションをなめらかにする

Symbolには、後述するアグリゲートトランザクションという機能があり、1つのトランザクション(Tx)の中に 100個 のTxを内包することができる(以降、内部Txと呼ぶことにする)。これにより、1ブロック内で、短時間で多くのTxの処理を実現している。

項目
ブロック生成間隔 30 秒
1ブロック内最大tx数 6,000 tx

※アグリゲートトランザクションを含む

以上から、秒間Tx処理数は 200tx/秒 だ、と言うことができそうだが、
アグリゲートTxによる内部Txも含まれているため、一般的な秒間処理速度と比較しがたい面があるので、注意が必要である。

アカウント/アドレスの運用をなめらかにする

  • ネームスペースを使って、アドレスに名前をつけることが可能
  • アカウント制限機能で、特定のアドレスからのみTxを受け取れるようにすることが可能
  • アカウント制限機能で、特定のトークンの受け取りを自動的に拒否することが可能
    →スパムを防止したり、不必要なトランザクションを避けたりできる

トークノミクスをなめらかにする

  • コンセンサスアルゴリズム:PoS+
  • ハーベスティングするにはステーキング必要、しかし残高資産はロックされない。そのため、自由に資産を活用可能
     ※ただし、ハーベスティング/委任ハーベスティングには、10,000XYM 以上の継続保有が必要
  • ノード運営者のみならず、ノードへ委任することでハーベスティングが可能

トークン(モザイク)をなめらかにする

  • ウォレットを使って、ノンプログラミングで独自トークン(モザイク)の発行が誰でも簡単にできる
  • ネームスペースを使って、トークン(モザイク)に名前をつけることが可能
    →サブネームスペースによって、3層までの階層的な名前の運用ができる
    例)
    gocchi-token・・・ルートネームスペース
    └ gocchi-token.food・・・2層目サブネームスペース
     └ gocchi-token.food.onigiri・・・3層目サブネームスペース
  • 供給量の変更可能(発行時に供給量変更可能に設定した場合)
  • 期限付きのトークンを発行可能
  • 転送できないトークン(モザイク)を発行可能(発行者にのみ送信できる)
  • 取り消し(回収)できるトークン(モザイク)を発行可能
  • トークン(モザイク)にメタデータを付加可能(変更可能)
  • モザイク制限機能によって、該当トークン(モザイク)を送受信できるアカウントを指定可能

マルチシグをなめらかにする

  • ウォレットを使って、ノンプログラミングでマルチシグの利用が可能
    →マルチシグアカウントの作成・連署人の追加・連署人の削除など
  • 3階層までの「マルチレベル・マルチシグ」機能あり
    例)組織内の稟議に活用可能
    役員クラス・・・A・B・C 署名
     ↑部長クラス・・・D・E・F 署名
      ↑社員クラス・・・G・H・I 署名

トランザクションをなめらかにする

  • Txにメッセージを付加することができる
    ・平文でのメッセージ送信可能
    ・暗号化した上でのメッセージ送信可能
    ・ウォレットを使ってノンプログラミングでメッセージ付加可能
    ・0XYM 送信でメッセージのみを送ることもできる
    ・1つのTxにつき 1024KB までメッセージを送ることができる
    →このメッセージ領域を活用してデータのフルオンチェーン保存が可能
  • アグリゲート・トランザクション機能の利用が可能
    →最大 100個 までの内部Txを1つのTxとして一括同時実行が可能
    ①アグリゲートボンデッドトランザクション
     自分の署名のみでほかの必要な署名が揃っていない状態で、10XYM を担保として(ロックされ=ハッシュロックTx)ネットワークにアナウンスすることができる
     ※署名が揃ったら 10XYM が自動で返却される
     ※期限内に署名が揃わなかった場合、10XYM はネットワークに没収される
    ②アグリゲートコンプリートトランザクション
     Tx送信時に必要な署名がすべて揃っている場合のアグリゲートTx
     同一内容のTxを複数人に送信したい場合などに便利(例:NFTの配布)

クロスチェーンスワップをなめらかにする

ハッシュタイムロックコントラクト(HTLC)相当のシークレットロックTxとシークレットプルーフTxを活用

【シークレットロックトランザクション】

→秘密の値を知っている人のみがTx実行できる・・・秘密の値を含めたTxをアナウンス
→シークレットロックTxを2つのアカウント間で転送し、送信されたモザイクは、有効なシークレットプルーフTxによってロックが解除されるまでロックされたままとなる。
有効期限:デフォルトでアナウンス後 365日

【シークレットプルーフトランザクション】

→シークレットプルーフTxを使って、シークレットロックTxでロックされた資金のロックを解除し、異なるチェーン間のトークン交換を完了する。(モザイクを解除する証拠「proof」を知っていることを証明する必要がある)

例) Alice と Bob が異なるチェーン間で、10 alice:tokens と 10 bob:tokens とを交換する場合
 ※お互いに、各チェーンのアカウントを所有していることが必要
 
① Alice がランダムなバイト「proof」を生成(10-100バイト以内)
② Alice は「proof」をハッシュ化して「secret」を生成
③ Alice はシークレットロックTx:TX1 を定義
④ Alice は TX1 をプライベートネットワークへアナウンスし、Bob と「secret」を共有
⑤ Bob はチェーンからシークレットを取得し、次のシークレットロックTx:TX2 をパブリックネットワークへアナウンス
⑥ Alice はシークレットプルーフTx:TX3 をパブリックネットワークへアナウンス。このTxは使用している暗号化アルゴリズム、オリジナルの証明とシークレットを定義する。
⑦ TX3 が承認されると「proof」が明かされる。TX2 はアンロックされて Alice はロックされた資産を受け取る。
⑧ Bob は「proof」を手に入れてシークレットプルーフTx:TX4 をプライベートネットワークへアナウンスし、ロックされた資産を TX1 から受け取る。

世の中をなめらかにするために、Symbolを活用しよう!

symbol-future.png

Symbol自体、このようにたくさんのことをなめらかにしている。
そんなSymbolをうまく活用することで、世の中をなめらかにしていくことができる。

さあ、みんなでSymbolを活用して社会をなめらかにしようではないか!

15
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
4