Entendiendo los Tokens No Fungibles — NFTs
Cómo los tokens no fungibles conectan blockchains con el mundo real y los planes de Qtum con respecto a los NFT.
Antecedentes
En Noviembre del año pasado, un juego de DApp llamado CryptoKitties provocó una tormenta de emoción en el mundo de la criptomoneda. Es un juego coleccionable en el que las personas pueden recolectar gatitos digitales e intercambiarlos con otros. El precio de algunos de estos gatitos digitales incluso se elevó a $ 300,000. En su punto máximo, CryptoKitties contribuía con un promedio del 30% del volumen diario de transacciones, congestionando toda la red Ethereum. Luego, cuando la cantidad de usuarios activos en CryptoKitties disminuyó, muchos juegos similares salieron y dominaron el mercado de DApp. Detrás de la popularidad de los juegos coleccionables de blockchain, hay un concepto subyacente que los conecta a todos: el concepto de NFTs (Fungible Tokens).ungible Tokens).
¿Qué es un token no fungible?
Un token no fungible se define como un tipo de token que se puede identificar y distinguir de forma única durante la interacción y la circulación.En el área de blockchain, los activos digitales se pueden dividir en dos categorías: monedas y tokens. Los primeros, como Bitcoin, Qtum, etc., tienen un blockchain, que utilizan transacciones para mantener su ledger; el último, como BOT, INK, etc., se ejecuta en un blockchain existente, utilizando contratos inteligentes para registrar datos. Estos tokens pueden caer dos tipos: fungibles y no fungibles.FT (Fungible Token), generalmente basado en el estándar de ERC20 o QRC20, es un token que se puede dividir en partes y reemplazar uno por otro. NFT, por el contrario, es un tipo de token que es único y no se puede dividir, como los kitties, etc.
Las características de FT lo hacen útil para representar cualquier cosa reemplazable en el mundo real, como moneda, puntos de recompensa, acciones y más. Estas cosas deben dividirse y luego intercambiarse entre diferentes propietarios. En el área de blockchain, FT se usa ampliamente para emitir nuevas monedas digitales. Estas monedas digitales generalmente están vinculadas a acciones de una empresa o derechos de acceso a un producto, para atraer compradores o incluso especuladores.
A medida que el mercado de la criptomoneda regresa gradualmente a la racionalidad, las personas comienzan a darse cuenta de la limitación del FT: las cosas más valiosas en el mundo real son indivisibles e insustituibles, como una mercancía, un contrato, una calificación. Estos activos no pueden ser representados por FT.
En comparación con FT, la innovación clave de NFT es proporcionar un método para registrar la propiedad de activos indivisibles y únicos. Este tipo de propiedad se puede mantener en una cadena de bloques, por lo que es transparente y resistente a la manipulación. Los NFT no impiden que otros accedan a la propiedad, simplemente la capturan y descubren su valor, así como las relaciones con el resto de la información en el blockchain.
Debido a la característica no fungible de los NFT, se puede utilizar para representar una gran cantidad de bienes del mundo real, como un boleto, una botella de vino, una pieza de joyería, etc. Los NFT nos permiten personalizar cualquier cosa valiosa y rastrear su propiedad, para así construir una conexión entre la información y el valor.
Aplicaciones de NFTs
NTF es un tipo de activo digital no fungible basado en blockchain, y un blockchain compatible con NTF es como una base de datos que guarda información de cosas valiosas. En teoría, NFT puede conectarse a cualquier cosa con características no fungibles, realizar tokenización del mundo real y formar un mundo de activos digitales con intercambio de valor.
Algunas aplicaciones de NFT enumeradas a continuación:
- Coleccionables: al igual que la aplicación CryptoKitties que mencionamos anteriormente, podría haber muchas otras extensiones de la idea de los juegos coleccionables basados en NFT. Podemos almacenar la información de obras de arte, joyas y otras colecciones en el blockchain en forma de un NFT con el fin de actualizaciones, circulación e intercambios. Por ejemplo, podemos desarrollar un NFT para obras de arte como pinturas y esculturas que hayan sido certificadas por expertos. Su propietario solo necesita mostrar los metadatos del NFT para declarar que es el propietario de la obra cuando quiere venderla. La certificación se puede rastrear digitalmente ya que la propiedad de los activos artísticos se registra en la cadena de bloques, lo que también evita la falsificación y el fraude de las obras de arte.
- Accesorios para juegos: los NFT también están revolucionando el mundo de los juegos en línea. En general, al jugar, los personajes obtendrán artículos comerciables como armas, ropa, mascotas. La creación de un NFT para cada elemento permite que estos accesorios se intercambien con puntos en el juego o incluso con dinero del mundo real, y finalmente construye una economía digital en línea para bienes virtuales. Estos NFT son almacenados en blockchain, por lo que sus metadatos, propiedad y todos los registros de transacciones son transparentes y no pueden ser destruidos o manipulados.
- Ticket digital: si obtengo un boleto para un concierto de música o un boleto de baloncesto, son el mismo tipo de elemento que define el permiso de participación en una actividad en un momento y lugar determinados, pero los derechos que representan no son convertibles. Debido a este tipo de singularidad, el ticket puede ser representado por NFT en la naturaleza, y se ha convertido en uno de los escenarios típicos de NFT. NFT se asegura de que cada boleto sea válido y pueda ser transferido de uno a otro. Mientras tanto, la tokenización también evitará entradas falsas. Entonces el boleto es un área que puede ser reconstruida por NFT.
- Autenticación de identidad: podemos aplicar NFT a la autenticación de identidad para lograr un registro completo del comportamiento personal. Por ejemplo, será propietario de NFT como un certificado de nacimiento, un pasaporte y un permiso de conducir. Aunque este tipo de NFT no es negociable, la verificación de identidad se puede realizar agregando control de acceso a estos NFT. Podemos verificar la identidad de una persona a través de la interacción con sus NFT para obtener información sobre su diploma universitario al momento de una entrevista, o solicitar la información de identidad de un médico para autenticar sus calificaciones al consultarlo. Todos serán identificados mediante la autenticación de identidad y se registrarán todos los atributos y el historial de comportamiento.
- Certificados digitales: NFT proporciona una forma de almacenar contratos, patentes y otros documentos en blockchain, para prevenir la falsificación y hacerlos rastreables. La validez de estos documentos se puede probar aún más mediante firmas electrónicas. El certificado digital puede registrar efectivamente el valor de la propiedad intelectual, los derechos de autor, etc. Además, NFT puede hacer que estos valores sean negociables en la cadena de bloques, lo que también facilita la circulación de estos valores.
Implementación de NFTs
Desde la aparición de las criptomonedas, toda la industria sigue intentando tokenizar entidades del mundo real. La popularidad de la color coin en 2013 fue el primer intento de grabar NFT en una blockchain. Las color coins se construyen en Bitcoin y generalmente se utilizan para representar activos en el mundo real, como casas, acciones y productos básicos, Más tarde cuando salió Ethereum, los contratos inteligentes permiten a los usuarios crear fácilmente sus propios activos en una cadena de bloques. En este contexto, se proponen varias normas para NFT.
Estándar ERC721
El estándar ERC721 es la implementación más popular y reconocida de un NFT. ERC721 es una EIP (Propuesta de mejora de Ethereum) que fue propuesta por los desarrolladores de Ethereum, y se convirtió en una de ERC (Solicitud de comentarios de Ethereum) después de que fue aprobada por el comité Ethereum. La introducción oficial de ERC721 es: Una interfaz estándar para tokens no fungibles, también conocidos como escrituras.
ERC721 sugiere que un NFT estándar en Ethereum debería realizar las interfaces en ERC721 y ERC165. Estas interfaces se definen de la siguiente manera. Además de las interfaces estándar, también hay algunas interfaces extendidas. Por ejemplo, las interfaces definidas en el contrato de datos ERC721 contienen información básica de la NFT, y las interfaces en ERC721Enumerable agregan algunas funciones de enumeración.
interface ERC721 /* is ERC165 */ {
event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId);
event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId);
event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved);function balanceOf(address _owner) external view returns (uint256);
function ownerOf(uint256 _tokenId) external view returns (address);
function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes data) external payable;
function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable;
function transferFrom(address _from, address _to, uint256 _tokenId) external payable;
function approve(address _approved, uint256 _tokenId) external payable;
function setApprovalForAll(address _operator, bool _approved) external;
function getApproved(uint256 _tokenId) external view returns (address);
function isApprovedForAll(address _owner, address _operator) external view returns (bool);
}interface ERC165 {
function supportsInterface(bytes4 interfaceID) external view returns (bool);
}
Se debe tener en cuenta que al usar ERC721, debe implementar algunas funciones adicionales, como una operación nueva para crear un NFT nuevo, una operación de grabación para destruir un NFT, etc. Luego, puede aplicar los tokens ERC271 a sus propios escenarios y agregarlos libremente. Lógica de negocio específica para enriquecer la aplicación.
Otro estándar ERC de NFT
Debido a la popularidad de los juegos de colección digital activados por CryptoKitties, el estándar NFT se actualiza con frecuencia. Por ejemplo, ERC875 [3] y ERC998 [4] son nuevas propuestas basadas en ERC721. Vale la pena considerarlos, especialmente el ERC875, que agrega una interfaz comercial al ERC721, permitiendo a los usuarios comprar tokens NFT mediante el uso de monedas en blockchain.
Planes de Futuro de Qtum
Qtum tiene como objetivo definir un ecosistema de blockchain con alta compatibilidad y escalabilidad, por lo que los NFT son necesarios en el ecosistema de Qtum. Qtum ya es compatible con un estándar de token fungible, QRC20. El estándar de token QRC20 ha recibido mucha atención y muchos proyectos han elegido QRC20 para construir sus propias aplicaciones en Qtum. Por lo tanto, planeamos introducir un estándar NFT en Qtum y alentar a los desarrolladores a construir DApps sobre la base del estándar. Este plan incluirá los siguientes aspectos:
Proponer un estándar QRC721. Básicamente, este estándar se referirá a ERC721, y dará seguimiento a algunas de las aplicaciones más recientes, así como a los comentarios de la comunidad.
- Desarrollar una plantilla de código QRC721. Planeamos implementar la funcionalidad básica de QRC721, ayudando a los desarrolladores a crear fácilmente aplicaciones NFT basadas en QRC721.
- Añadir soporte de QRC721 en la cadena de herramientas. Agregaremos el soporte de QRC721 en las herramientas de Qtum, como el explorador y la billetera, de acuerdo con los requisitos de los desarrolladores.
Resumen
A través del análisis de NFT, hemos visto una dirección futura de la tecnología blockchain, que utiliza tokens en el blockchain para representar entidades en el mundo real, a fin de realizar el registro, la circulación, el intercambio y el rastreo de estas entidades. NFT amplía enormemente las perspectivas de aplicación de blockchain y proporciona un método eficaz para que la tecnología blockchain sirva al público.
Referencias
[1] ¿Qué son los NFT? https://coincentral.com/nfts-non-fungible-tokens/.
[2] ERC721: Estándar de token no fungible. https://eips.ethereum.org/EIPS/eip-721.[3] ERC875: Un mejor estándar NFT. https://eips.ethereum.org/EIPS/eip-875.
[4] ERC998: Estándar de token no fungible.
https://eips.ethereum.org/EIPS/eip-998.
Contacto:
Zheng Yi (zhengyi@qtum.org), Li Qi (qi.li@qtum.org)