๋ฉ”์ธ ์ฝ˜ํ…์ธ ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ
๋น ๋ฅด๊ฒŒ ์‚ดํŽด๋ณด๊ธฐ์—ฌ๊ธฐ์—์„œ IP Asset์— ๋Œ€ํ•œ 1๋ถ„์งœ๋ฆฌ ๋น ๋ฅธ ๊ฐœ์š”๋ฅผ ํ™•์ธํ•˜์„ธ์š”.
IP Asset์€ DATA Foundation ์œ„์˜ ๊ธฐ์ดˆ์ ์ธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ€๋Šฅํ•œ IP ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์ž…๋‹ˆ๋‹ค. ๊ฐ IP Asset์€ ์˜จ์ฒด์ธ ERC-721 NFT(IP๋ฅผ ๋‚˜ํƒ€๋ƒ„)์ž…๋‹ˆ๋‹ค. IP๊ฐ€ ์˜คํ”„์ฒด์ธ์— ์žˆ๋Š” ๊ฒฝ์šฐ, ๋จผ์ € ํ•ด๋‹น IP๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ERC-721 NFT๋ฅผ ๋ฐœํ–‰ํ•œ ๋‹ค์Œ IP Asset์œผ๋กœ ๋“ฑ๋กํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. IP Asset์ด ์ƒ์„ฑ๋˜๋ฉด, ๊ด€๋ จ๋œ โš™๏ธ IP Account๊ฐ€ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ˆ˜์ •๋œ ERC-6551(Token Bound Account) ๊ตฌํ˜„์ž…๋‹ˆ๋‹ค. IP Asset์— ๋ฐ”์ธ๋”ฉ๋œ ๋ณ„๋„์˜ ์ปจํŠธ๋ž™ํŠธ๋กœ, DATA Foundation ๋ชจ๋“ˆ๊ณผ์˜ ์ƒํ˜ธ ์ž‘์šฉ์— ๋Œ€ํ•œ ๊ถŒํ•œ์„ ์ œ์–ดํ•˜๊ฑฐ๋‚˜ IP์˜ ๊ด€๋ จ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

IP Asset ๋“ฑ๋กํ•˜๊ธฐ

IP Asset์€ ERC-721 NFT๋ฅผ DATA Foundation์˜ ๊ธ€๋กœ๋ฒŒ IP Asset Registry์— ๋“ฑ๋กํ•˜์—ฌ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ ์˜ˆ์‹œ/ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐ”๋กœ ๊ฐ€๋ ค๋ฉด DATA Foundation์— IP๋ฅผ ๋“ฑ๋กํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ฐธ์กฐํ•˜์„ธ์š”.

NFT ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ vs. IP ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ

DATA Foundation์—์„œ, ์—ฌ๋Ÿฌ๋ถ„์˜ IP๋Š” ํ”„๋กœํ† ์ฝœ์— IP Asset์œผ๋กœ ๋“ฑ๋ก๋˜๋Š” NFT์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ NFT์™€ IP Asset ๋ชจ๋‘ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ž์ฒด ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”๋ฐ, ๊ทธ ์ฐจ์ด๋Š” ๋ฌด์—‡์ผ๊นŒ์š”?
ํ‘œ์ค€๋ฌด์—‡์ธ๊ฐ€์š”?
NFTOpensea ERC721 ํ‘œ์ค€name, description, image, attributes, animation_url ๋“ฑ์˜ ํ•ญ๋ชฉ
IP๐Ÿ“ IPA ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ํ‘œ์ค€DATA Foundation์— ๋” ํŠนํ™”๋˜์–ด ์žˆ์œผ๋ฉฐ, ์นจํ•ด ๊ฒ€์‚ฌ๋ฅผ ์œ„ํ•œ ๊ธฐ๋ณธ ์ฝ˜ํ…์ธ ์— ๋Œ€ํ•œ ํ•„์š”ํ•œ ์ •๋ณด, ์ž‘ํ’ˆ์˜ ์ €์ž ๋“ฑ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค
IP Asset์˜ ์†Œ์œ ๊ถŒ, ๋ฒ•์ , ๊ฒฝ์ œ์  ์„ธ๋ถ€ ์ •๋ณด์™€ ๊ฐ™์€ ๋ชจ๋“  ๊ธฐํƒ€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋Š” ํ”„๋กœํ† ์ฝœ์—์„œ ์ง์ ‘ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ํ”„๋กœํ† ์ฝœ์€ ๐Ÿ“œ Licensing Module์„ ํ†ตํ•œ ๋ถ€๋ชจ-์ž์‹ ๊ด€๊ณ„์™€ ๊ด€๋ จ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ , ๐Ÿ’Š Programmable IP License (PIL)์„ ํ†ตํ•ด IP Asset์˜ ๋ฒ•์  ์ œ์•ฝ/๊ถŒํ•œ์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

IP Asset์— NFT ๋ฐ IP ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ถ”๊ฐ€ํ•˜๊ธฐ

SDK ์™„์„ฑ๋œ ์ฝ”๋“œ ์˜ˆ์ œ

์ฝ”๋“œ๋กœ ๋ฐ”๋กœ ๊ฐ€์„œ IP Asset์— NFT ๋ฐ IP ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ์™„์„ฑ๋œ ์ฝ”๋“œ ์˜ˆ์ œ๋ฅผ ํ™•์ธํ•˜์„ธ์š”

SDK ์„ค๋ช…

๋‹จ๊ณ„๋ณ„ ์„ค๋ช…์œผ๋กœ IP Asset์— ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์„ธ์š”.
์‹ค์ œ๋กœ SDK๋ฅผ ์‚ฌ์šฉํ•˜๋“  ์šฐ๋ฆฌ์˜ ์Šค๋งˆํŠธ ์ปจํŠธ๋ž™ํŠธ๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋“ , ํ”„๋กœํ† ์ฝœ์€ 4๊ฐ€์ง€ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ œ๊ณตํ•˜๋„๋ก ์š”๊ตฌํ•ฉ๋‹ˆ๋‹ค:
  • WorkflowStructs.sol ์ปจํŠธ๋ž™ํŠธ๋Š” ์—ฌ๊ธฐ์—์„œ ํ™•์ธํ•˜์„ธ์š”.
WorkflowStructs.sol
/// @notice Struct for metadata for NFT minting and IP registration.
/// @dev Leave the nftMetadataURI empty if not minting an NFT.
/// @param ipMetadataURI The URI of the metadata for the IP.
/// @param ipMetadataHash The hash of the metadata for the IP.
/// @param nftMetadataURI The URI of the metadata for the NFT.
/// @param nftMetadataHash The hash of the metadata for the IP NFT.
struct IPMetadata {
  string ipMetadataURI;
  bytes32 ipMetadataHash;
  string nftMetadataURI;
  bytes32 nftMetadataHash;
}