Precio de Bitcoin Precio de Bitcoin
Ctrl+D Precio de Bitcoin
ads
Casa > Bitcoin > Info

¿Cómo acuñar tu propio Token en DFINITY? Discusión sobre el token estándar

Author:

Time:

El 10 de junio, ICP League se asoció con desarrolladores de la comunidad para realizar la tercera conferencia telefónica de desarrolladores, invitando a los desarrolladores del proyecto DFinance a discutir cómo emitir tokens en DFINITY y diseñar un tren de pensamiento similar al estándar de token ERC-20. Haga clic en "Leer el texto original" para ver la reproducción del video.

Aspectos destacados de este problema:

ICP en sí es el primer token de DFINITY, que se implementa en la cadena en forma de contratos inteligentes, por lo que puede usarse como referencia para implementar estándares;

Al implementar el estándar similar a ERC-20 en DFINITY, a diferencia de Ethereum, la cadena de bloques de DFINITY no mantendrá el mensaje de la transacción, por lo que es necesario registrar los registros de transacciones bajo el estándar del token;

Debido a que los registros de transacciones deben guardarse en el espacio limitado del contenedor, existe un problema de expansión en el contrato de token;

DFINITY utiliza un modelo de gas inverso, y los usuarios no necesitan consumir gas, por lo tanto, para evitar una gran cantidad de transacciones de spam, es necesario escribir la deducción de transferencia o la tarifa de manejo en el token estándar;

En la red Ethereum, el token ETH es el token nativo en la parte inferior de la cadena de bloques, y sus eventos de transacción, como minería, transferencia, interacción con contratos, pago de gas, etc., también se empaquetan en el bloque y se acoplan con la cadena de bloques. ; En DFINITY, el token ICP en realidad se basa en un contrato inteligente llamado "Ledger" en la red. Las funciones de consulta, transferencia, gestión de transacciones y compromiso del token ICP ahora están en el contrato inteligente (archive_node.rs).

Dado que los contratos inteligentes de DFINITY son más similares a los contenedores de los microservicios de Internet, el estado de los contratos inteligentes se almacena dentro del contenedor Ledger. De hecho, todos los registros de transacciones de ICP se almacenan dentro del contrato inteligente, que debe consultarse utilizando las funciones del contrato.

De hecho, solo los ciclos de tokens de gas de DFINITY son los únicos tokens nativos subyacentes en la cadena, y los ciclos solo se pueden obtener quemando ICP.

Todas las operaciones se registran como transacciones en el contenedor Ledger, y DFINITY usa una estructura de datos similar a una cadena de bloques cuando registra el libro mayor en el contenedor Ledger. Tenga en cuenta que la cadena de bloques aquí es solo un formato para almacenar datos del libro mayor, no una cadena de bloques de consenso tal como la entendemos. A continuación se muestra el estado de la implementación.

Bloomberg: Changpeng Zhao seguirá apoyando la adquisición de Twitter por parte de Musk: Jinse Finance informa que el CEO de Binance, Changpeng Zhao, planea cumplir su compromiso financiero con la adquisición de Twitter por parte de Elon Musk, incluso si el acuerdo potencial enfrenta desafíos potenciales de Washington. Cuando se le preguntó en una conferencia en Arabia Saudita el martes si se mantendría con él, Changpeng Zhao respondió: "Creo que sí". escrutinio de seguridad nacional junto con algunos de los otros negocios de Musk.

En mayo de este año, un documento presentado por Twitter a la Comisión de Bolsa y Valores de EE. UU. (SEC) mostró que Musk había recibido otros $ 7,139 mil millones en compromisos de financiamiento para la adquisición de Twitter. Entre ellos, el cofundador de Oracle, Larry Ellison, invirtió mil millones de dólares a través de Lawrence J. Ellison Revocable Trust, Sequoia Capital invirtió 800 millones de dólares y Binance invirtió 500 millones de dólares. (el bloque)[2022/10/26 16:38:47]

Por lo tanto, ICP puede considerarse como la primera especificación de token en DFINITY. Su código ha sido de código abierto. Lo mejor es seguir el diseño del token ICP al implementar un estándar similar a ERC-20. Enlace de código abierto: https://github .com/dfinity/ic/tree/master/rs/rosetta-api/ledger_canister.

Visite https://github.com/dfinance-tech/ic-token/blob/main/simple-erc20/src/token.mo, puede ver el código fuente del estándar de token DFINITY que DFinance sigue el ERC-20, utilizando el desarrollo oficial escrito en el idioma Motoko.

own_ indica el creador del token, generalmente el implementador del contenedor; name_ indica el nombre; decimals_ indica el número exacto de dígitos del token; symbol_ es el símbolo del token; totalSupply_ es el suministro total del token. Los anteriores son algunos conceptos básicos.

Pero, de hecho, los decimales_ que indican la cantidad de tokens se pueden considerar eliminados. Este parámetro es necesario en el contrato de Ethereum porque el sólido utilizado por Ethereum no puede admitir cálculos de punto flotante, pero el lenguaje de DFINITY puede admitir cálculos de punto flotante. .

saldos es un tipo bajo la base de datos, indicando el saldo correspondiente a una cuenta. Aquí, la base de datos persistente HashMap de DFINITY se usa para establecer una conexión entre cuentas y saldos. Registros de asignación Aprobar, que a menudo se usa en Ethereum para permitir que una cuenta o contrato inteligente use su saldo.

Shanghái ha desarrollado un sistema operativo de Internet orientado a la tecnología web3.0: Jinse Finance informó que esta tarde, el Gobierno Municipal de Shanghái realizó la segunda conferencia de prensa de la serie especial del comité del partido de "Luchar por un nuevo viaje, construir una nueva era": una sesión especial sobre innovación tecnológica. El reportero supo en la conferencia de prensa que en los últimos años Shanghai ha apoyado y liderado la innovación y el desarrollo de industrias emergentes y ha desarrollado un sistema operativo de Internet (Conflux OS) orientado a la tecnología web3.0. (Bolsa de Valores de Shanghái) [2022/9/20 7:08:29]

Esta implementación sigue las operaciones de transferencia, transferFrom, balanceOf, asignación y aprobación de ERC-20. Con respecto a las funciones de acuñación y destrucción de tokens, muchos proyectos en Ethereum optarán por transferir tokens directamente a la dirección 0x0 para su destrucción, porque es imposible que alguien calcule a la inversa la clave privada de la dirección 0x0, por lo que ya no se puede transferir. afuera. Sin embargo, esto no se hace bajo el estándar DFinance, debido a que DFINITY actualmente no tiene una dirección de destrucción reconocida, por lo que se implementa un método de quemado para restar directamente el saldo en la base de datos.

Desde el lanzamiento de DFINITY, el código de implementación ICP de código abierto oficial se ha acercado más a la práctica oficial al usar ERC-20, y se ha vuelto más complicado lograr la mayor compatibilidad posible. github.com/dfinance-tech/ic-token/tree/ledger/src.

En la implementación de ICP de DFINITY, la cuenta usa el ID de la cuenta, y en esta implementación, se usa el ID principal. Con respecto a la diferencia entre los dos, escribí "Introducción a la identidad, la cuenta y la billetera descentralizadas de DFINITY, y cómo los desarrolladores pueden usar eso." ? "Se ha introducido, y la comunidad tiene diferentes opiniones sobre la elección de los dos.

La mayor diferencia es la adición de una base de datos para registrar los mensajes del historial de transferencias: debido a que el token también es la implementación del contrato inteligente en DFINITY, tiene el mismo problema que ICP, es decir, la consistencia final de los datos es la prioridad. y no se puede encontrar en el bloque Información comercial. Por lo tanto, se debe establecer una estructura de datos en el contenedor para guardar el mensaje. Encuentre OpRecord.mo bajo el código central. Cada operación de transferencia, lanzamiento, destrucción y aprobación se registra en un OpRecord, y hay información relevante detallada bajo un OpRecord, que es conveniente para que los usuarios consulten en el futuro.

Hemos hablado muchas veces sobre el problema de la expansión, y también apareció en el token estándar. Debido a que la necesidad actual de guardar registros de transferencia de tokens en contratos inteligentes será de datos muy grandes, y DFINITY actualmente solo admite una capacidad máxima de 4 GB.

De hecho, todas las aplicaciones de DFINITY encontrarán el problema de la limitación de la capacidad del contenedor. La solución definitiva es implementar un conjunto de infraestructura de base de datos de expansión automática, que dividirá los datos en nuevos contenedores antes de que se agote la capacidad de un contenedor.

Esta infraestructura es equivalente a una capa intermedia de base de datos estandarizada. Las DApps de la capa superior pueden llamar directamente a la interfaz de la capa intermedia de la base de datos, y la capa intermedia maneja la expansión del contenedor de la base de datos. En la actualidad, aunque hay intentos de implementar sudograph del motor de base de datos, es más conveniente para los desarrolladores personalizar los tipos de datos en la actualidad y aún no se ha intentado expandir automáticamente la capacidad.

Por supuesto, a corto plazo, también es posible empaquetar con regularidad parte del historial de transacciones en un almacenamiento estático externo y luego eliminar el historial en el contenedor DFINITY, conservándolo solo durante un período de tiempo. Y WASM de DFINITY puede admitir 64 bits, lo que puede expandir la memoria de un solo contenedor.

En "¿Por qué se llama blockchain de próxima generación, las 8 ventajas principales de DFINITY! Como se presentó en ", DFINITY utiliza un modelo de gas inverso. Los usuarios de Ethereum pagan gas por las transacciones que envían, mientras que en DFINITY, el contrato de implementación paga gas. Los usuarios comunes pueden disfrutar de servicios de contrato sin pagar tarifas, incluidas las transferencias de tokens, por supuesto. .

Pero puede estar sujeto a posibles ataques. Si alguien envía maliciosamente muchas transacciones basura, o llama al contrato continuamente, o llena su contrato con datos basura, consumiendo el espacio de almacenamiento y el gas del contrato, habrá un tiempo de inactividad. El desempeño directo en el contrato de token es que nadie puede transferir dinero, e incluso este tipo de ataque DDOS puede usarse para evitar que todos operen, manipulando así el mercado.

El token ICP de DFINITY tiene esto en cuenta al implementarlo. Cada vez que se llama a una transferencia, se debe deducir una tarifa de manejo. Ahora, se deduce 0.0001 por una operación para prevenir ataques. Cuando se diseña el contrato de token, se pueden derivar diseños más interesantes:

1. Qué tipo de moneda se transfiere y qué tipo de tarifa de manejo de moneda se deducirá. Una cierta cantidad o proporción de tokens se deducen o destruyen para cada transferencia, lanzamiento y otras operaciones del contrato de token.Este esquema es muy simple y se parece mucho al diseño de token deflacionario en Ethereum.

2. El ICP se deduce como una tarifa de servicio para la transferencia de divisas, que es similar a la realización del propio ICP.

3. Cada operación informática en Ethereum tiene una cantidad fija de consumo de gas, y los desarrolladores pueden estimar la cantidad de gas consumida por una operación. En la actualidad, no existe tal interfaz en DFINITY, pero se puede lograr. Y la gasolina de DFINITY se paga en ciclos con precios estables. Por lo tanto, primero puede estimar cuántos ciclos necesita consumir la operación para calcular el precio unitario de la operación, y luego deducir la cantidad correspondiente del token según el par de transacciones entre los ciclos y el token en el intercambio, para que el la tarifa de manejo puede cubrir completamente el costo de procesamiento de la transacción.

Debido a la diferencia entre los estándares ETH y ERC-20 en la red Ethereum, y para evitar ataques de reentrada, se provoca una operación adicional de aprobación. Pero en DFINITY, alguien sugirió que la función de aprobación podría eliminarse para mejorar la experiencia del usuario y se propuso una alternativa a la "suscripción". Y esto también puede prevenir ataques, ya que en el modelo de aprobación bajo DFINITY, el atacante puede enviar una gran cantidad de aprobación para llenar la memoria del contenedor y hacerlo colapsar. También hay algunas personas que plantearon objeciones. Para debates específicos de la comunidad, puede consultar: https://forum.dfinity.org/t/thoughts-on-the-token-standard/4694/4.

Ahorre espacio con las identificaciones principales

En "Introducción a la identidad, cuenta y billetera descentralizadas de DFINITY, ¿cómo pueden usarla los desarrolladores?" "En ", presentamos dos ID similares, la ID principal y la ID de cuenta de DFINITY: la ID principal se usa para contenedores, mientras que la ID de cuenta se usa para libros mayores, los cuales tienen el mismo origen. En la actualidad, la implementación de ICP de DFINITY usa el ID de cuenta, pero algunas personas de la comunidad han propuesto usar el ID principal en el contrato de token. Debido a que la ID principal es más corta, puede ahorrar un 25 % de espacio.

Selección de idioma

El funcionario declaró en la AMA que se recomienda a los desarrolladores que usen Rust para escribir código que requiera mayor seguridad, como contratos de token.

Gestionar controlador de contratos

Debido a que el contrato de DFINITY permite actualizaciones, el controlador del contrato tiene mayor poder e incluso puede emitir tokens adicionales y revertir el negocio, por lo que es necesario administrar mejor el controlador. El controlador se puede asignar a la dirección cero para que el contrato nunca se pueda actualizar, o el controlador se puede reemplazar por un DAO, que es administrado colectivamente por la comunidad.

Gracias a los desarrolladores de DFinance por compartir, DFinanace está estableciendo el estándar de token DFINITY, ayudando a los usuarios a emitir tokens con un solo clic y estableciendo bases financieras como el intercambio. Obtenga sus noticias siguiendo https://twitter.com/DFinance_AI, o acuñe sus primeros tokens a través del enlace de prueba de seguimiento.

Tags:

Bitcoin
El impacto de la próxima actualización de Ethereum "Londres" sobre nosotros

Hola a todos, este es el Instituto de Investigación Baize. El crecimiento explosivo del mercado de criptomonedas durante el año pasado no hubiera sido posible sin la red Ethereum. ¿Recuerdas la actualización de Ethere.

Iteración de Curva: de línea a superficie

Cuando se lanzó Uniswap V3, muchos amigos se preguntaron si Curve sería eliminado por Uniswap V3. Ahora Curve V2 está fuera. La curva no solo no se mata.

¿Cómo acuñar tu propio Token en DFINITY? Discusión sobre el token estándar

El 10 de junio, ICP League se asoció con desarrolladores de la comunidad para realizar la tercera conferencia telefónica de desarrolladores.

Resolver estos 7 desafíos acelerará la adopción generalizada de Bitcoin

Según un participante de la conferencia BTC de Miami que habló con Cryptonews, actualmente existen siete desafíos importantes que impiden la adopción masiva de Bitcoin (BTC). Sin embargo.

Se anuncia que la red de prueba de la cadena NA (Nirvana) (Chaosi) se lanzará oficialmente hoy.Es posible que marque el comienzo de una vela completa dentro de este año

NA (Nirvana) Chain oficial Twitter anunció otro hito importante: Nirvana Chain Testnet Khaos lanzado oficialmente hoy. En la actualidad.

Observación dorada | Después de que Sichuan emitiera una prohibición, el poder de cómputo BTC de China se redujo drásticamente

Resumen 1. El poder de cómputo en tiempo real de AntPool, Biyin y BTC.com, entre los cinco principales pools de minería de BTC del mundo.

ads