# CIP-68

NMKR Studioは、[CIP-68メタデータ規格による](https://cips.cardano.org/cips/cip68/)NFTミントもサポートしています。

<br>

#### CIP-68データ・メタデータ規格とは？

CIP-68はCardanoブロックチェーン上の資産に関するメタデータの標準を提案するもので、NFTに限らずあらゆる資産クラスに対応します。CIP-68は、参照NFTとユーザートークンという2つの資産を導入することにより、以前の標準[（CIP-0025](https://docs.nmkr.io/nmkr-studio/token/metadata#metadata-structure)）の限界に対処することを目的としています。ユーザートークンはユーザのウォレット内の実際の資産を表し、参照NFTはユーザートークンのメタデータを指します。

トークンを分類するため、CIP-68はトークンの目的を識別するラベルを導入しています。CIP-68のユースケースは、Cardanoの柔軟性とイノベーションを可能にすることです。これにより、開発者は動的なメタデータを持つ資産を作成することができ、時間の経過とともに更新することが可能になります。この柔軟性により、特性が変化するNFTや分数化されたNFTなど、様々なユースケースの可能性が広がります。

まとめると、CIP-68は資産のメタデータを扱う標準化された方法を提供することでCardanoの機能を強化し、開発者が多様なトークン化資産やアプリケーションを作成できるようにします。

#### CIP-68のメリット

CardanoトークンのCIP-68メタデータ標準にはいくつかのメリットがあります：

1. プログラマビリティ： CIP-68は、プログラム可能なメタデータを持つトークンの作成を可能にします。これは、新しいトークンをミントする必要なく、トークンに関連するメタデータを更新および修正できることを意味します。この柔軟性により、時間の経過とともにトークンを進化させ、適応させることができます。
2. メタデータの変更： CIP-68では、トークンのメタデータを簡単に変更・更新できます。これは、アートワークや追加情報など、関連するメタデータを変更または拡張する必要がある代替可能トークン（NFT）にとって特に有用です。
3. コントラクトフレンドリー：CIP-68メタデータ標準はコントラクトフレンドリーに設計されています。つまり、他のCIP（Cardano Improvement Proposals）の構造と一致し、メタデータの低レベル表現に従っています。これにより、トークンをCardanoブロックチェーン上のスマートコントラクトやその他のアプリケーションと統合することが容易になります。
4. 資産クラスの柔軟性： CIP-68は当初NFT向けに開発されましたが、Cardanoブロックチェーン上のあらゆる資産クラスに適用できます。つまり、プログラム可能なメタデータと容易な更新のメリットはNFTにとどまらず、さまざまな種類のトークンに活用できます。
5. 他のプラットフォームに対する優位性 CIP-68メタデータ標準は、Cardanoのその他の設計上の選択とともに、他のブロックチェーンプラットフォーム上のトークンと比較してCardanoネイティブトークンに利点をもたらします。これらのメリットには、プログラマビリティの向上、メタデータの柔軟性、スマートコントラクトとの統合などがあります。

全体的に見て、CIP-68メタデータ標準は、プログラム可能なメタデータ、容易なメタデータの変更、コントラクトフレンドリーな統合を可能にすることで、Cardanoトークンの機能性と汎用性を高めます。これらのメリットにより、CIP-68はCardanoブロックチェーンのトークン作成者や開発者にとって価値ある標準となっています。

#### CIP-68トークンのミントと更新のワークフロー

1. ユーザートークンは購入者に送られ、参照トークンのメタデータを反映します。
2. 参照トークンがスマートコントラクトに送信される実際の取引では、インラインデータが参照トークンのメタデータを提供します。
3. NFTはスマートコントラクトからスマートコントラクトに送信され、メタデータが変更されても、更新されたインラインデータを使用します。

{% hint style="warning" %}
スマートコントラクトは、資産の変更にアクセスし続けるために必要です。第一に、自動化された方法でNFTを更新するため、第二に、NFTを更新できる人を定義するためです（独自のスマートコントラクトをローンチするまで、CIP-68スマートコントラクトには[Yepple](https://blockchain.yepple.io/)をお勧めします！）。<br>

技術的には、通常のアドレスを使用することもできますが、その場合は自動化の方法がなく、鍵を保持する人だけがトークンをマニュアルで更新することができます。

{% endhint %}

NMKR StudioでCIP-68を有効にする

<figure><img src="/files/K1jBCXaQt1ceH15Mg5Q2" alt=""><figcaption></figcaption></figure>

CIP-68は、NMKR Studioで新規プロジェクトを作成する際に有効にすることができます。

プロジェクト作成の最初のタブで、CIP-25の代わりにCIP-68を選択するだけです。

**CIP-68参照NFTアドレス**

特定のユーザートークンには参照NFTが1つだけ存在する必要があり、このトークンは自分のセルフカストディウォレットで受け取るか、NMKR Studioでのセットアップを簡単にするために、同じプロセスで管理ウォレットを作成して参照NFTを受け取ることもできます。

{% hint style="info" %}
NMKRからのシンプルなスマートコントラクトは、NMKR StudioのCIP-68機能をさらに拡張するために近日中に提供される予定です。
{% endhint %}

#### CIP-68メタデータテンプレート<br>

CIP-68を選択すると、メタデータテンプレートはCIP-25からCIP-68に調整されます。

メタデータのテンプレートは変更しないでください。

**例：**

```
{
  "fields": [
    {
      "map": [
        {
          "k": {
            "bytes": "6e616d65"
          },
          "v": {
            "bytes": "3c61737365745f6e616d653e"
          }
        },
        {
          "k": {
            "bytes": "696d616765"
          },
          "v": {
            "bytes": "3c697066735f6c696e6b3e"
          }
        },
        {
          "k": {
            "bytes": "6d6564696174797065"
          },
          "v": {
            "bytes": "3c6d696d655f747970653e"
          }
        },
        {
          "k": {
            "bytes": "6d6564696154797065"
          },
          "v": {
            "bytes": "3c6d696d655f747970653e"
          }
        },
        {
          "k": {
            "bytes": "6465736372697074696f6e"
          },
          "v": {
            "bytes": "3c6465736372697074696f6e3e"
          }
        },
        {
          "k": {
            "bytes": "66696c6573"
          },
          "v": {
            "list": [
              {
                "map": [
                  {
                    "k": {
                      "bytes": "6d6564696174797065"
                    },
                    "v": {
                      "bytes": "3c6d696d655f747970653e"
                    }
                  },
                  {
                    "k": {
                      "bytes": "6e616d65"
                    },
                    "v": {
                      "bytes": "3c6d696d655f747970653e"
                    }
                  },
                  {
                    "k": {
                      "bytes": "737263"
                    },
                    "v": {
                      "bytes": "3c697066735f6c696e6b3e"
                    }
                  }
                ]
              }
            ]
          }
        }
      ]
    },
    {
      "int": 1
    }
  ],
  "constructor": 0
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nmkr.io/jp/nmkr-studio/tkun/metadta/cip-68.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
