モザイク

モザイクは、スマートアセットシステムに一意性と柔軟さをもたらすものの一部です。これらは、変化しない複数の同一物の集合を表すことができる 固定されたアセット です。

モザイクは トークン といえますが、より特化したアセット: 報酬ポイント、株式、署名、状態フラグ、投票やその他の貨幣などのコレクションとみなすこともできます。

各モザイクは 64-bit 符号なし整数の一意な識別子と モザイクを作成 する際に定義できる 設定可能なプロパティ とフラグの集合を持ちます。

プロパティ

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

可分性

モザイクがどれくらいの小数点以下に分割できるかを決定します。可分性 3 はモザイクが最小で 0.001 に分割できることを意味します。可分性は 0 から 6 の範囲でなければなりません。

初期供給量

モザイクの供給量の総数です。合計供給量は 0 と 9,000,000,000,000,000 の原子単位の範囲でなければなりません。

Symbol は 絶対量 を扱います。絶対量を取得するには作成または送信したいアセットの量に 10divisibility を乗じてください。

例えば、モザイクが 可分性 2 である場合、10 単位 (相対) 作成または送信するには 1,000 (絶対) と定義します。

期間

モザイクのレンタル期間の承認済みブロック数を指定します。Symbol パブリックネットワークにおいて、期間は 3650 日 (10年)まで許可されています。パラメータ最大値は ネットワークごとに設定可能 です。 期限の切れないモザイク を作る場合は、プロパティを 0 にしてください。

注釈

ネームスペースとは異なり、モザイク期間は作成後に延長できません。作成する前に、あなたの要求において、モザイクの期限が切れる必要があるかどうかを検討してください。

次の式を使用して、日数をおよそのブロック数に変換します:

\[duration ≈ numberOfDays * 86400 / blockGenerationTargetTimeInSeconds\]

供給可変性

true の場合、モザイクの供給量は後から変更できます。モザイク作成者は MosaicSupplyChangeTransaction を使用して、モザイクの総供給量を再定義できます。トランザクションはモザイクの供給量を delta 単位で増減します。

モザイクの供給を減らすにはモザイク作成者アカウントが少なくとも delta 単位を所有している必要があります。供給量可変プロパティが有効になっていても、モザイク作成者が他のアカウントの残高からモザイクを削除できるわけではありません。

false の場合、モザイクの供給量は不変になります。ただし、モザイク作成者がすべてのモザイクの供給量を所有している場合、モザイクが不変と定義されている場合でも、変更できます。

転送可能性

../_images/mosaic-transferable.png

転送不可モザイクの例

true の場合、モザイクは任意のアカウント間で転送できます。そうでない場合、モザイクはモザイク作成者へ送り返すことしかできません。

制限可能性

../_images/mosaic-restriction-delegated.png

モザイク制限の例

true の場合、モザイク作成者は 制限 を設定できます。

作成手数料

モザイクを作成するために、アカウントは手数料に加えて トランザクション手数料 を支払います。有効な MosaicDefinitionTransaction のアナウンスをすると、手数料はアカウントの残高から差し引かれます。

デフォルトでは、Symbol パブリックネットワークにおいて、モザイクの作成には 0.0005 symbol.xym初期コスト があります。しかし ネットワークはモザイクレンタル手数料を動的に調整 していきます。

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

ガイド

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

MosaicDefinitionTransaction

新しいモザイクを作るために MosaicDefinitionTransaction をアナウンスします。

Version: 0x01

EntityType: 0x414D

インライン

プロパティ タイプ 説明
id MosaicId モザイクの識別子
duration BlockDuration ブロック数で表現されたモザイク期間。0 に設定した場合は無期限のモザイクになります。
nonce uint32 モザイクIDを生成するために使用されるランダムなノンス値
flags MosaicFlag モザイクフラグ
divisibility uint8 モザイク可分性

MosaicSupplyChangeTransaction

モザイクの供給量を増加または減少させるために供給量変更トランザクションをアナウンスする。

Version: 0x01

EntityType: 0x424D

インライン

プロパティ タイプ 説明
mosaicId UnresolvedMosaicId 影響を受けるモザイク識別子
delta Amount モザイク供給量の増加または減少の総量。
action MosaicSupplyChangeAction 供給量変更アクション

モザイク

プロパティ タイプ 説明
mosaicId MosaicId モザイク識別子
amount Amount モザイク量

UnresolvedMosaic

プロパティ タイプ 説明
mosaicId UnresolvedMosaicId モザイク識別子。バイトの最上位ビットが0の設定されている場合、モザイク識別子の代わりに namespaceId (エイリアス) が使用されます。
amount Amount モザイク量

MosaicFlags

Enumeration: uint8

Id 説明
0x00 フラグ無し
0x01 モザイク作成者が供給量を部分的に保有している場合でも、モザイクは供給の変更をサポートします。
0x02 モザイクは任意のアカウント間の振替をサポートします。not を設定した場合はモザイクはモザイク作成者との間でしか転送できません。
0x04 モザイク作成者はどのアカウントがモザイクを送受信できるのかを制限するルールを追加することができます。

MosaicSupplyChangeAction

Enumeration: uint8

Id 説明
0x00 減少
0x01 増加

次項: ネームスペース