ネームスペース

ネームスペースによって、ブロックチェーン上にあなたのビジネスと資産のための 一意な場所をチェーン上に作ること ができます。

プロパティ

設定可能なプロパティのリストは次の通りです。

名称

ネームスペースはインターネットドメイン名と同様に機能します。ネームスペースの作成にはアカウントまたはアセットを参照したい名前を選択することから始まります。名前はネットワーク内で 一意64 文字以内の必要があります。利用可能な文字は a, b, c, …, z, 0, 1, 2, …, 9, _ , - です。

期間

ネームスペース登録の際にネームスペースを借りたい確認済みブロックの数を設定する必要があります。

パブリックネットワークはネームスペース期間を最小で 30 日間、最大で 365 日間として定義しています。パラメータは ネットワークごとに設定可能 です。デフォルトではネットワークは 15 秒毎にブロック生成するように設定されています。次の式を使用しておよその日数をブロックに変換できます。

\[duration ≈ numberOfDays * 86400 / blockGenerationTargetTimeInSeconds\]
../_images/namespace-life-cycle.png

ネームスペースのライフサイクル

ネームスペース作成者は レンタル期間中 にサブネームスペース、エイリアスアカウント、およびモザイクを作成できます。作成者は NamespaceRegistrationTransaction を希望する追加ブロック数で送信することにより レンタルを延長する こともできます。

ネットワークは有効期限を過ぎたネームスペースが登録可能になる前に、作成者がネームスペースを更新できるように 猶予期間 を定義することができます。 Symbol のパブリックネットワークは 猶予期間30 日に設定しました。

猶予期間が終了するとネームスペースは 削除済み になります。この時点でネームスペースは再び登録可能になります。

ネームスペースステータスのパーミッション
アクション 利用可能 登録期間 猶予期間
新しいネームスペースの取得 ✔️
ネームスペースの更新 ✔️ ✔️
サブネームスペースを作成 ✔️
アドレスまたはモザイクにエイリアスをリンクする ✔️
エイリアスを使ってトランザクションを送信する ✔️

注釈

ネメシスブロック で作成されたネームスペースだけは恒久的な期間になります。

サブネームスペース

インターネット上でドメインはサブドメインを持ちます。 Symbol において、ネームスペースは 資産を識別したり整理する ためにサブネームスペースを持ちます。

../_images/namespace-setup.png

ネームスペースでアセットを整理する

パブリックネットワーク では、ネームスペースは 3 階層まで持つことができます—ネームスペースと2階層のサブネームスペースドメインです。各ルートネームスペースは 256 サブネームスペースまで持つことができます。

サブネームスペースはそれ自身で期間を持っていません。親のネームスペース期間を継承します。

複数のサブネームスペース を異なるネームスペースに同じ名前で作ることができます。例えば foo.barfoo2.bar を作ることができますが、 rootnamespace と subnamespace の組み合わせは一意を保つ必要があります。

エイリアス

エイリアストランザクション はネームスペースをアカウントまたはモザイクへリンクします。エイリアスまたはそのリンク済みアセットはトランザクションを送信するときに互換的に使用できます。エイリアスを使用すると長いアドレスを覚えやすく、モザイクを認識しやすくします。

ネームスペース作成者はアカウントまたはモザイクに ネームスペースをリンク することができます。このリンクは編集可能で、作成者は以前に設定したエイリアスのリンクを解除したり、別のアセットにネームスペースをリンクすることができます。

ブロック レシート は与えられたトランザクションのエイリアスの解決を保存します。

制約事項:

  • アカウントまたはモザイクはたくさんのネームスペースにリンクできますが、1つのネームスペースは1つのアカウントまたはモザイクにだけリンクできます。
  • アカウントは AddressAliasTransaction の 受信を許可している どのアドレスに対してもネームスペースを割り当てることができます。
  • アカウントがモザイク作成者である場合は、エイリアスを mosaic id にだけリンクできます。

レンタル手数料

ネームスペースの作成または期間の延長をするために、アカウントはレンタル手数料に加えて トランザクション手数料 を支払います。有効な NamespaceRegistrationTransaction のアナウンスをすると、手数料はアカウントの残高から差し引かれます。

デフォルトのネームスペースレンタル手数料は ネットワークごとに設定可能 ですが、 ネットワークはモザイクレンタル手数料を動的に調整 していきます。

パブリックネットワークのデフォルト値
プロパティ Value
ネームスペースの取得 0.000001 symbol.xym per block
ネームスペース期間の延長 0.000001 symbol.xym per block
サブネームスペースの作成 0.0001 symbol.xym

実効レンタル手数料を算出するために、ネットワークは設定で決められたデフォルト値に最後の maxDifficultyBlocksmedian network multiplier を乗算します。乗数がゼロの場合は、これらは中央値計算の前に defaultDynamicFeeMultiplier で置き換えられます。

ガイド

トランザクションスキーマ

NamespaceRegistrationTransaction

ネームスペース取得トランザクションはネームスペースの取得と再取得に使用します。

Version: 0x01

EntityType: 0x414E

インライン

プロパティ タイプ 説明
duration BlockDuration ネームスペースをレンタルしたい期間の承認済みブロック数を指定します。ルートネームスペースでは必須項目です。
parentId NamespaceId 親ネームスペース識別子。サブネームスペースに必須です。
id NamespaceId ネームスペース識別子
registrationType NamespaceRegistrationType ネームスペース登録タイプ
nameSize uint8 バイト換算のネームスペース名
name array(bytes, namespaceNameSize) Namespace name.

AddressAliasTransaction

ネームスペースをアカウントへ関連付けるためにはエイリアストランザクションをアナウンスします。ネームスペースはネットワーク上に存在するいかなるアカウントにも割り当てることができます。

Version: 0x01

EntityType: 0x424E

インライン

プロパティ タイプ 説明
namespaceId NamespaceId エイリアスになるネームスペースの識別子
address Address エイリアスアドレス
aliasAction AliasAction エイリアスアクション

MosaicAliasTransaction

ネームスペースをモザイクへ関連付けるためにはエイリアストランザクションをアナウンスします。ネームスペースとモザイクを作成したアカウントがトランザクションをアナウンスしたときだけ、モザイクへエイリアスを設定することが可能です。

Version: 0x01

EntityType: 0x434E

インライン

プロパティ タイプ 説明
namespaceId NamespaceId エイリアスになるネームスペースの識別子
mosaicId MosaicId エイリアス済みモザイク識別子
aliasAction AliasAction エイリアスアクション

NamespaceRegistrationType

Enumeration: uint8

Id 説明
0 ルートネームスペース
1 子ネームスペース

AliasAction

Enumeration: uint8

Id 説明
0x00 エイリアスに関連付ける
0x01 エイリアスの関連付けをやめる

次項: メタデータ