Introducción a la inscripción|Comprender los casos de uso, la implementación y la seguridad de los activos de los protocolos de inscripción

Principiante2/7/2024, 11:56:00 AM
En este artículo se clasifican los principales protocolos de inscripción para ayudar a los usuarios a comprender los casos de uso, los métodos de implementación y cómo proteger los activos de inscripción.

El 1 de febrero, Binance Web3 Wallet lanzó oficialmente su mercado de inscripción, compatible con varios protocolos de inscripción como BRC-20 y Ethscription. Hace unos días, OKX también anunció su soporte para protocolos de inscripción como ARC-20, Runes, Doginals, etc., lo que desencadenó la atención de todo el mercado hacia las inscripciones. Durante la ola de inscripción, surgen con frecuencia diversos problemas de seguridad debido a la complejidad y novedad de los protocolos de inscripción. Esto no solo amenaza la seguridad de los activos de los usuarios, sino que también tiene un impacto negativo en el desarrollo saludable de todo el ecosistema de Inscription.

En respuesta a esto, el equipo de seguridad de Beosin analizará los principales protocolos de inscripción para ayudar a los usuarios a comprender el propósito y la implementación de los protocolos de inscripción y cómo proteger los activos de inscripción.

Introducción a las inscripciones

La llamada inscripción en la cadena de bloques es para registrar cierta información específica y significativa en la cadena de bloques a través de ciertas características de la cadena de bloques. Una vez que esta información se registra en la cadena de bloques, se almacenará permanentemente en la cadena de bloques y será difícil de manipular. La información registrada en la cadena de bloques puede ser de muchos tipos, como información de texto simple, códigos complejos, imágenes, etc. que se pueden escribir en la cadena de bloques. De esta manera, podemos utilizar un conjunto de estándares para implementar las funciones de los activos digitales.

Estado actual de las inscripciones

Desde la aparición inicial de las inscripciones de Bitcoin como BRC-20, hasta la ecología actual de las inscripciones, hay un sinfín de nuevos protocolos de inscripción y nuevos proyectos que surgen casi todos los días. Se puede decir que el desarrollo de la Inscripción avanza a pasos agigantados. Varias cadenas públicas comunes también se han unido al ecosistema de inscripción, como el protocolo Ethscription en la cadena pública ETH, el protocolo ARC-20 en la cadena pública BTC, BSC-20 y otros protocolos en la cadena pública BSC, y el PRC- en la cadena pública Polygon. 20 etc acuerdo .... Todos estos protocolos se generan con el propósito de publicar inscripciones en sus cadenas públicas. En el siguiente contenido, presentaremos los métodos de implementación y los casos de uso de varios protocolos.

Explicación detallada de la inscripción

Presentemos los protocolos que actualmente atraen mucha atención en el mercado y comparemos los puntos en común y las diferencias entre los protocolos de inscripción de varias cadenas públicas.

1. BRC-20

Para explicar BRC-20 claramente, primero debemos presentar UTXO y Ordinals.

BTC utiliza el modelo UTXO y las transacciones se transfieren en unidades UTXO. UTXO es la abreviatura de Unspent Transaction Output, que significa salida de transacción no gastada. El modelo UTXO se diferencia del modelo de cuenta de cadenas públicas como Ethereum en que registra los eventos de transacción pero no el estado final. Para calcular cuántos Bitcoins tiene un usuario, hay que sumar todos los UTXO de su dirección, y el resultado es el número de monedas que tiene el usuario.

Ordinals es un protocolo sistemático para numerar Satoshis (sats), la unidad más pequeña de Bitcoin. Puede asignar un número único a cada Satoshi en cada UTXO (incluidos varios Satoshis). Ordinals también admite la función de escribir texto, imágenes, audio, video, etc. a satoshis, lo que hace que cada satoshi sea único, similar al conocido NFT de tokens no fungibles de Ethereum, que llamamos NFT de Bitcoin.

Al fundador de BRC-20 se le ocurrió otro concepto basado en el protocolo Ordinals. Dado que el protocolo Ordinals puede crear NFT de Bitcoin dando a cada Satoshi diferentes "atributos", también puede crear FT de Bitcoin dando un "formato" y "atributos" unificados, es decir, tokens homogéneos.

BRC-20 escribe datos de texto unificados en formato JSON en Satoshi a través del protocolo Ordinals. Estos datos de texto son el libro de contabilidad de los tokens BRC-20. Sobre la base de estos datos de texto, se pueden analizar las tenencias y transferencias de tokens. Incluye principalmente los siguientes contenidos:

Los anteriores son los tres estándares de BRC-20. Entre ellos, el campo op representa la operación que debe realizarse, incluida la implementación (despliegue), la acuñación (acuñación) y la transferencia (transferencia). La marca representa el nombre del token que se debe realizar. max representa la cantidad total de tokens emitidos, lim representa el número máximo de monedas acuñadas por token, amt representa el número de tokens que deben operarse. En el estándar de transferencia, también hay campos como "a", pero esto no es necesario. La transferencia se realiza mediante La inscripción se envía a la dirección de destino para implementar el cambio de saldo, como se muestra en la siguiente figura:

Fuente:https://twitter.com/blockpunk2077/status/1725513817982136617

2. ARCO-20

ARC-20 sigue siendo el protocolo de inscripción en la cadena pública de Bitcoin. Al igual que el protocolo BRC-20, se implementa escribiendo datos estándar en UTXO, pero la diferencia es que el protocolo ARC-20 no necesita especificar ARC-20 en los datos. En cambio, el número de tokens ARC-20 está representado por satoshi (satoshi, la unidad más pequeña de Bitcoin) en el UTXO. La regla es 1 sat=1 token ARC-20.

El protocolo ARC-20, al igual que el protocolo BRC-20, también se divide en tres pasos: implementación, acuñación y transferencia. En la fase de implementación, el nombre del token estándar, la cantidad total de tokens, las restricciones de conversión y la información del bloque deben completarse en el UTXO. , información de imágenes, etc.; en la etapa de acuñación, el usuario debe completar el nombre del token en el UTXO, y el número de sats del UTXO es la cantidad de acuñación del token ARC-20, y no se completa en el UTXO junto con el nombre del token; cuando el usuario acuña tokens ARC-20 se pueden enviar a otras direcciones. Al enviar tokens, los usuarios no necesitan completar ningún dato en el UTXO, sino transferir directamente el UTXO que contiene el token a otras direcciones.

Fuente:https://twitter.com/blockpunk2077/status/1725513817982136617

Al consultar tokens ARC-20, solo se necesita un índice. El servidor de índices sin conexión puede leer la información de registro de tokens y las transacciones de acuñación y transferencia. No es necesario que el servidor calcule la relación de transferencia de fondos y consulte los tokens ARC-20 propiedad de la dirección. La cantidad se puede obtener leyendo directamente la cantidad de sats del UTXO que contiene el token.

Después de comprender BRC-20 y ARC-20, debe saber por qué algunas personas transfieren por error activos inscritos a otras direcciones o los "queman".

Dado que los protocolos de inscripción de BTC como BRC-20 y ARC-20 se basan en transacciones UTXO, las transacciones de inscripción en realidad se anexan a las transacciones de BTC y los usuarios pueden realizar operaciones ordinarias de transferencia de BTC sin comprender completamente la inscripción. Su UTXO actual se fusiona y se divide con otros UTXO y luego se envía a direcciones no deseadas, lo que hace que los activos inscritos se transfieran incorrectamente o se "quemen", causando pérdidas irreversibles.

3. Escritura étnica

Ethscription es un protocolo para crear y compartir datos en Ethereum. Algunas inscripciones utilizan este protocolo para reemplazar los contratos inteligentes para implementar la emisión de tokens. El uso de inscripciones puede reducir los costos de usuario a niveles extremadamente bajos.

Cuando Ethereum envía una transacción, proporciona un bloque de datos de llamadas. Por lo general, este bloque de datos se dejará en blanco para las transferencias ordinarias de ETH. Si se llama a un contrato inteligente, el bloque de datos se designará como la firma de la función de llamada y los datos de cada parámetro. El protocolo Ethscription utiliza el bloque de datos calldata para agregar algunos datos estándar para dar un significado relevante al enviar transferencias ETH ordinarias.

¿Cómo especifica Ethscription estos datos estándar?

En primer lugar, si desea crear una Ethscription cuyo contenido sean datos de imagen, debe convertir la imagen (el tamaño de la imagen está limitado a 96 KB) en un URI de datos codificados en Base64 en el formato (data:image/png; base64,...); siguiente Convierta el URI en una cadena hexadecimal; enviar una transacción de transferencia ordinaria a la dirección de destino a través de Ethereum y completar la cadena hexadecimal anterior en calldata, como se muestra a continuación:

De esta manera, la dirección 0xf1bf es propietaria de la Ethscription, y cualquier Ethscription creada posteriormente con los mismos datos de llamada se considerará inválida.

Si desea transferir la Ethscription, necesita que el propietario de la Ethscription envíe una transferencia ordinaria a la dirección receptora y complete el hash de la transacción que creó la Ethscription en los datos de llamada, luego la dirección receptora será propietaria de la Ethscription, como se muestra a continuación:

4. Inscripción de EVM Blockchain

Para las cadenas de bloques EVM como BSCChain, Ethereum, Polygon, etc., existe un método común de inscripción llamado calldata. Este método utiliza bloques de datos para almacenar datos de formato fijo. A diferencia del almacenamiento de datos de imagen mencionado anteriormente, este método implica escribir datos de texto con formato estándar en los datos de llamada.

En la cadena BSC, las inscripciones están grabadas con un formato similar al formato de inscripción BRC20. Por ejemplo, el formato de inscripción es: data:,{“p”:””,”op”:””,”tick”:””,”amt”:””}; donde el campo "p" representa el nombre del protocolo, como BSC-20, BNBS-20, LTC-20, BEP-20, DRC-20, NRC-20, SRC-20, etc. El campo "op" representa la operación, normalmente "mint". El campo "tick" representa el nombre del token y el campo "amt" representa la cantidad del token.

Tomando el token bnbs como ejemplo, podemos ver que siempre que se envíe una transferencia ordinaria a la dirección de destino, complete data:,{“p”:”bsc-20”,”op”:”mint” in the calldata ,”tick”:”bnbs”,”amt”:”1000”} luego complete la operación de acuñación del token bnbs, como se muestra a continuación. En este momento, la dirección 0x22ef tiene 1,000 tokens bnbs.

A continuación, debe transferir el token. Como se indicó anteriormente, debe enviar una transferencia ordinaria a la dirección receptora y completar el hash de la transacción que creó el token bnbs en los datos de llamada. A continuación, la dirección receptora será propietaria del token bnbs, como se muestra a continuación:

Es básicamente lo mismo en Ethereum, Polygon y otras cadenas, pero debe tenerse en cuenta que el contenido de la cadena BSC anterior no es la única situación en la que se crean inscripciones en la cadena evm. Puede haber diferencias en los campos de datos de texto rellenados entre diferentes cadenas de evm o diferentes protocolos. También puede haber diferencias en la forma en que se transfieren los tokens. Pero para este tipo de método, todos se implementan utilizando el atributo calldata en la cadena EVM, por lo que parecen ser similares.

Resumen

En este artículo discutimos los principios de implementación de las inscripciones en múltiples cadenas. En resumen, las inscripciones introducidas son todos procesos que utilizan algunas características del sistema de cadena pública para guardar información fuera de línea en la cadena de bloques de acuerdo con los estándares prescritos, y luego identificarla y mostrarla a través de servidores fuera de línea. Ninguna de las inscripciones introducidas utiliza contratos inteligentes. Los usuarios pueden reducir una gran cantidad de costos de transacción adicionales al participar. Sin embargo, los usuarios deben comprender completamente la implementación del protocolo de inscripción para evitar transferencias erróneas o quemaduras accidentales de inscripciones, lo que resulta en pérdidas de activos.

Renuncia:

  1. Este artículo es una reimpresión de [PANoticias]. Todos los derechos de autor pertenecen al autor original [Beosin]. Si hay objeciones a esta reimpresión, comuníquese con el equipo de Gate Learn y ellos lo manejarán de inmediato.
  2. Descargo de responsabilidad: Los puntos de vista y opiniones expresados en este artículo son únicamente los del autor y no constituyen ningún consejo de inversión.
  3. Las traducciones del artículo a otros idiomas son realizadas por el equipo de Gate Learn. A menos que se mencione, está prohibido copiar, distribuir o plagiar los artículos traducidos.

Introducción a la inscripción|Comprender los casos de uso, la implementación y la seguridad de los activos de los protocolos de inscripción

Principiante2/7/2024, 11:56:00 AM
En este artículo se clasifican los principales protocolos de inscripción para ayudar a los usuarios a comprender los casos de uso, los métodos de implementación y cómo proteger los activos de inscripción.

El 1 de febrero, Binance Web3 Wallet lanzó oficialmente su mercado de inscripción, compatible con varios protocolos de inscripción como BRC-20 y Ethscription. Hace unos días, OKX también anunció su soporte para protocolos de inscripción como ARC-20, Runes, Doginals, etc., lo que desencadenó la atención de todo el mercado hacia las inscripciones. Durante la ola de inscripción, surgen con frecuencia diversos problemas de seguridad debido a la complejidad y novedad de los protocolos de inscripción. Esto no solo amenaza la seguridad de los activos de los usuarios, sino que también tiene un impacto negativo en el desarrollo saludable de todo el ecosistema de Inscription.

En respuesta a esto, el equipo de seguridad de Beosin analizará los principales protocolos de inscripción para ayudar a los usuarios a comprender el propósito y la implementación de los protocolos de inscripción y cómo proteger los activos de inscripción.

Introducción a las inscripciones

La llamada inscripción en la cadena de bloques es para registrar cierta información específica y significativa en la cadena de bloques a través de ciertas características de la cadena de bloques. Una vez que esta información se registra en la cadena de bloques, se almacenará permanentemente en la cadena de bloques y será difícil de manipular. La información registrada en la cadena de bloques puede ser de muchos tipos, como información de texto simple, códigos complejos, imágenes, etc. que se pueden escribir en la cadena de bloques. De esta manera, podemos utilizar un conjunto de estándares para implementar las funciones de los activos digitales.

Estado actual de las inscripciones

Desde la aparición inicial de las inscripciones de Bitcoin como BRC-20, hasta la ecología actual de las inscripciones, hay un sinfín de nuevos protocolos de inscripción y nuevos proyectos que surgen casi todos los días. Se puede decir que el desarrollo de la Inscripción avanza a pasos agigantados. Varias cadenas públicas comunes también se han unido al ecosistema de inscripción, como el protocolo Ethscription en la cadena pública ETH, el protocolo ARC-20 en la cadena pública BTC, BSC-20 y otros protocolos en la cadena pública BSC, y el PRC- en la cadena pública Polygon. 20 etc acuerdo .... Todos estos protocolos se generan con el propósito de publicar inscripciones en sus cadenas públicas. En el siguiente contenido, presentaremos los métodos de implementación y los casos de uso de varios protocolos.

Explicación detallada de la inscripción

Presentemos los protocolos que actualmente atraen mucha atención en el mercado y comparemos los puntos en común y las diferencias entre los protocolos de inscripción de varias cadenas públicas.

1. BRC-20

Para explicar BRC-20 claramente, primero debemos presentar UTXO y Ordinals.

BTC utiliza el modelo UTXO y las transacciones se transfieren en unidades UTXO. UTXO es la abreviatura de Unspent Transaction Output, que significa salida de transacción no gastada. El modelo UTXO se diferencia del modelo de cuenta de cadenas públicas como Ethereum en que registra los eventos de transacción pero no el estado final. Para calcular cuántos Bitcoins tiene un usuario, hay que sumar todos los UTXO de su dirección, y el resultado es el número de monedas que tiene el usuario.

Ordinals es un protocolo sistemático para numerar Satoshis (sats), la unidad más pequeña de Bitcoin. Puede asignar un número único a cada Satoshi en cada UTXO (incluidos varios Satoshis). Ordinals también admite la función de escribir texto, imágenes, audio, video, etc. a satoshis, lo que hace que cada satoshi sea único, similar al conocido NFT de tokens no fungibles de Ethereum, que llamamos NFT de Bitcoin.

Al fundador de BRC-20 se le ocurrió otro concepto basado en el protocolo Ordinals. Dado que el protocolo Ordinals puede crear NFT de Bitcoin dando a cada Satoshi diferentes "atributos", también puede crear FT de Bitcoin dando un "formato" y "atributos" unificados, es decir, tokens homogéneos.

BRC-20 escribe datos de texto unificados en formato JSON en Satoshi a través del protocolo Ordinals. Estos datos de texto son el libro de contabilidad de los tokens BRC-20. Sobre la base de estos datos de texto, se pueden analizar las tenencias y transferencias de tokens. Incluye principalmente los siguientes contenidos:

Los anteriores son los tres estándares de BRC-20. Entre ellos, el campo op representa la operación que debe realizarse, incluida la implementación (despliegue), la acuñación (acuñación) y la transferencia (transferencia). La marca representa el nombre del token que se debe realizar. max representa la cantidad total de tokens emitidos, lim representa el número máximo de monedas acuñadas por token, amt representa el número de tokens que deben operarse. En el estándar de transferencia, también hay campos como "a", pero esto no es necesario. La transferencia se realiza mediante La inscripción se envía a la dirección de destino para implementar el cambio de saldo, como se muestra en la siguiente figura:

Fuente:https://twitter.com/blockpunk2077/status/1725513817982136617

2. ARCO-20

ARC-20 sigue siendo el protocolo de inscripción en la cadena pública de Bitcoin. Al igual que el protocolo BRC-20, se implementa escribiendo datos estándar en UTXO, pero la diferencia es que el protocolo ARC-20 no necesita especificar ARC-20 en los datos. En cambio, el número de tokens ARC-20 está representado por satoshi (satoshi, la unidad más pequeña de Bitcoin) en el UTXO. La regla es 1 sat=1 token ARC-20.

El protocolo ARC-20, al igual que el protocolo BRC-20, también se divide en tres pasos: implementación, acuñación y transferencia. En la fase de implementación, el nombre del token estándar, la cantidad total de tokens, las restricciones de conversión y la información del bloque deben completarse en el UTXO. , información de imágenes, etc.; en la etapa de acuñación, el usuario debe completar el nombre del token en el UTXO, y el número de sats del UTXO es la cantidad de acuñación del token ARC-20, y no se completa en el UTXO junto con el nombre del token; cuando el usuario acuña tokens ARC-20 se pueden enviar a otras direcciones. Al enviar tokens, los usuarios no necesitan completar ningún dato en el UTXO, sino transferir directamente el UTXO que contiene el token a otras direcciones.

Fuente:https://twitter.com/blockpunk2077/status/1725513817982136617

Al consultar tokens ARC-20, solo se necesita un índice. El servidor de índices sin conexión puede leer la información de registro de tokens y las transacciones de acuñación y transferencia. No es necesario que el servidor calcule la relación de transferencia de fondos y consulte los tokens ARC-20 propiedad de la dirección. La cantidad se puede obtener leyendo directamente la cantidad de sats del UTXO que contiene el token.

Después de comprender BRC-20 y ARC-20, debe saber por qué algunas personas transfieren por error activos inscritos a otras direcciones o los "queman".

Dado que los protocolos de inscripción de BTC como BRC-20 y ARC-20 se basan en transacciones UTXO, las transacciones de inscripción en realidad se anexan a las transacciones de BTC y los usuarios pueden realizar operaciones ordinarias de transferencia de BTC sin comprender completamente la inscripción. Su UTXO actual se fusiona y se divide con otros UTXO y luego se envía a direcciones no deseadas, lo que hace que los activos inscritos se transfieran incorrectamente o se "quemen", causando pérdidas irreversibles.

3. Escritura étnica

Ethscription es un protocolo para crear y compartir datos en Ethereum. Algunas inscripciones utilizan este protocolo para reemplazar los contratos inteligentes para implementar la emisión de tokens. El uso de inscripciones puede reducir los costos de usuario a niveles extremadamente bajos.

Cuando Ethereum envía una transacción, proporciona un bloque de datos de llamadas. Por lo general, este bloque de datos se dejará en blanco para las transferencias ordinarias de ETH. Si se llama a un contrato inteligente, el bloque de datos se designará como la firma de la función de llamada y los datos de cada parámetro. El protocolo Ethscription utiliza el bloque de datos calldata para agregar algunos datos estándar para dar un significado relevante al enviar transferencias ETH ordinarias.

¿Cómo especifica Ethscription estos datos estándar?

En primer lugar, si desea crear una Ethscription cuyo contenido sean datos de imagen, debe convertir la imagen (el tamaño de la imagen está limitado a 96 KB) en un URI de datos codificados en Base64 en el formato (data:image/png; base64,...); siguiente Convierta el URI en una cadena hexadecimal; enviar una transacción de transferencia ordinaria a la dirección de destino a través de Ethereum y completar la cadena hexadecimal anterior en calldata, como se muestra a continuación:

De esta manera, la dirección 0xf1bf es propietaria de la Ethscription, y cualquier Ethscription creada posteriormente con los mismos datos de llamada se considerará inválida.

Si desea transferir la Ethscription, necesita que el propietario de la Ethscription envíe una transferencia ordinaria a la dirección receptora y complete el hash de la transacción que creó la Ethscription en los datos de llamada, luego la dirección receptora será propietaria de la Ethscription, como se muestra a continuación:

4. Inscripción de EVM Blockchain

Para las cadenas de bloques EVM como BSCChain, Ethereum, Polygon, etc., existe un método común de inscripción llamado calldata. Este método utiliza bloques de datos para almacenar datos de formato fijo. A diferencia del almacenamiento de datos de imagen mencionado anteriormente, este método implica escribir datos de texto con formato estándar en los datos de llamada.

En la cadena BSC, las inscripciones están grabadas con un formato similar al formato de inscripción BRC20. Por ejemplo, el formato de inscripción es: data:,{“p”:””,”op”:””,”tick”:””,”amt”:””}; donde el campo "p" representa el nombre del protocolo, como BSC-20, BNBS-20, LTC-20, BEP-20, DRC-20, NRC-20, SRC-20, etc. El campo "op" representa la operación, normalmente "mint". El campo "tick" representa el nombre del token y el campo "amt" representa la cantidad del token.

Tomando el token bnbs como ejemplo, podemos ver que siempre que se envíe una transferencia ordinaria a la dirección de destino, complete data:,{“p”:”bsc-20”,”op”:”mint” in the calldata ,”tick”:”bnbs”,”amt”:”1000”} luego complete la operación de acuñación del token bnbs, como se muestra a continuación. En este momento, la dirección 0x22ef tiene 1,000 tokens bnbs.

A continuación, debe transferir el token. Como se indicó anteriormente, debe enviar una transferencia ordinaria a la dirección receptora y completar el hash de la transacción que creó el token bnbs en los datos de llamada. A continuación, la dirección receptora será propietaria del token bnbs, como se muestra a continuación:

Es básicamente lo mismo en Ethereum, Polygon y otras cadenas, pero debe tenerse en cuenta que el contenido de la cadena BSC anterior no es la única situación en la que se crean inscripciones en la cadena evm. Puede haber diferencias en los campos de datos de texto rellenados entre diferentes cadenas de evm o diferentes protocolos. También puede haber diferencias en la forma en que se transfieren los tokens. Pero para este tipo de método, todos se implementan utilizando el atributo calldata en la cadena EVM, por lo que parecen ser similares.

Resumen

En este artículo discutimos los principios de implementación de las inscripciones en múltiples cadenas. En resumen, las inscripciones introducidas son todos procesos que utilizan algunas características del sistema de cadena pública para guardar información fuera de línea en la cadena de bloques de acuerdo con los estándares prescritos, y luego identificarla y mostrarla a través de servidores fuera de línea. Ninguna de las inscripciones introducidas utiliza contratos inteligentes. Los usuarios pueden reducir una gran cantidad de costos de transacción adicionales al participar. Sin embargo, los usuarios deben comprender completamente la implementación del protocolo de inscripción para evitar transferencias erróneas o quemaduras accidentales de inscripciones, lo que resulta en pérdidas de activos.

Renuncia:

  1. Este artículo es una reimpresión de [PANoticias]. Todos los derechos de autor pertenecen al autor original [Beosin]. Si hay objeciones a esta reimpresión, comuníquese con el equipo de Gate Learn y ellos lo manejarán de inmediato.
  2. Descargo de responsabilidad: Los puntos de vista y opiniones expresados en este artículo son únicamente los del autor y no constituyen ningún consejo de inversión.
  3. Las traducciones del artículo a otros idiomas son realizadas por el equipo de Gate Learn. A menos que se mencione, está prohibido copiar, distribuir o plagiar los artículos traducidos.
Empieza ahora
¡Regístrate y recibe un bono de
$100
!