Como equipo, siempre elegimos resultados de seguridad y calidad en lugar de decisiones precipitadas. Apoyar los BNK como tokens ERC20 siempre ha sido nuestro objetivo, sin embargo, decidimos dedicarle más tiempo y lanzar una versión más avanzada del contrato inteligente basado en Ethereum. Se requiere esta versión más avanzada y segura debido a una de nuestras características especiales de token: sus titulares reciben ingresos transaccionales netos semanales. Por lo tanto, el código fuente del contrato inteligente incluye la función de guardar fondos de comisiones semanales. Sin embargo, esa es solo una de las varias razones por las cuales los tokens BNK son especiales entre otros en el mercado. Así que echemos un vistazo más de cerca a los tokens BNK y lo que los hace únicos.
¿Qué significa ERC20?
Para explicar el significado detrás del término ERC20, primero, tenemos que volver a visitar lo que es Ethereum. Ethereum es una plataforma descentralizada basada en blockchain que presenta una funcionalidad del contrato inteligente (los contratos inteligentes son esencialmente contratos digitales autoejecutables, cuyos términos se escriben directamente en las líneas de código, es decir, un contrato inteligente para alquilar un apartamento puede ser programado para proporcionarle una clave digital solo una vez que pague el alquiler). Al igual que Bitcoin, tiene su propia moneda local llamada Ether. Sin embargo, el blockchain de Ethereum es único ya que también puede apoyrar múltiples tokens diferentes. La mayoría de los tokens de Ethereum siguen los protocolos ERC (Ethereum Request for Comment), el más extendido de los cuales es ERC20.
ERC20 define un estándar constituido por unas pocas funciones obligatorias que el contrato inteligente debe implementar para que el token se considere un token ERC20 y funcione en el blockchain de Ethereum. Tener un estándar común hace que sea más fácil para los exchanges y billeteros de criptomonedas apoyar tokens ERC20, ya que solo necesitan implementar la interfaz ERC20 y podrán apoyar todos los tokens basados en Ethereum, siempre que los tokens cumplan con el estándar. No es necesario escribir un código personalizado para admitir cada token nuevo. Esto hace que los tokens ERC20 sean muy populares entre las plataformas de trading y las billeteras de criptomonedas, y es la razón por la cual la mayoría de los contratos inteligentes en la actualidad son compatibles con ERC20. Sin embargo, el estándar ERC20 no es perfecto. Por lo tanto, bastante recientemente, un nuevo y mejorado estándar token Ethereum, llamado ERC223, ha despegado.
ERC20 vs ERC223: ¿cuál es la diferencia?
ERC223 apoya todas y cada una de las funciones de ERC20, lo que significa que los servicios que funcionan con tokens ERC20 también funcionarán correctamente con tokens ERC223. Sin embargo, al mismo tiempo, el estándar ERC223 resuelve el principal inconveniente del estándar ERC20. Por ejemplo, apoya la función de rechazar transacciones enviadas a direcciones de contrato aleatorias, por lo que sus fondos no se perderán si envía una transacción a una dirección incorrecta por accidente.
Antes de ICO, ya habíamos estado trabajando en el código fuente de BNK, pero habiendo reconocido los beneficios del estándar ERC223 más nuevo y más seguro, decidimos adaptarlo para tokens BNK. Esto garantiza que nuestros tokens serán compatibles con todos los servicios que tengan tokens ERC20 y los usuarios podrán disfrutar de las características adicionales que ofrece el estándar también.
La tierra de no perdón
Una amplia gama de ICOs lanza cientos de nuevos tipos de tokens basados en Ethereum cada año. Muchos de estos tokens se ven extrañamente familiares entre sí y no ofrecen ninguna funcionalidad, excepto que permiten un crowdsale. Además, a menudo economizar cuando se trata de seguridad. Nuestro equipo, sin embargo, trata la seguridad como una prioridad. Para comprender por qué la seguridad es tan importante cuando se trata de contratos inteligentes y la complejidad de asegurar el contrato inteligente, primero es necesario comprender algunos aspectos básicos de los propios contratos inteligentes de Ethereum.
Empecemos con el proceso de creación de contrato. Para crear un nuevo contrato inteligente, primero necesitamos desarrollar el código fuente. Una vez que se prepara el código fuente, se envía una transacción y al contrato inteligente se le asigna una dirección. Así es como obtenemos el contrato inteligente que permitirá que nuestro token sea completamente funcional en el blockchain Ethereum. Sin embargo, aquí es donde se complica. La mayoría (si no todos) los proyectos de software requieren constantes actualizaciones, mejoras y correcciones de errores. Los contratos Ethereum no son una excepción, pero actualmente no hay forma de actualizar un contrato Ethereum sin crear uno nuevo, y crear uno nuevo significa que se le asigna una nueva dirección (diferente). Entonces, la única solución restante es obtener el código correcto la primera vez. Si quedan errores de seguridad en el código fuente y se aprovecha una falla de seguridad, pueden ocurrir numerosos problemas. Por ejemplo, tal ataque podría drenar todos los fondos del contrato. Es por eso que se requiere tanto esfuerzo de desarrollo y tiempo antes de lanzar el contrato de token.
Además de eso, el contrato inteligente de BNK es diferente de los contratos inteligentes de otros tokens y hay una razón importante detrás de eso. Cada semana, Bankera paga una comisión semanal a los titulares de token BNK, que está constituida por el 20% de los ingresos netos transaccionales de Bankera y SpectroCoin. Una vez que se inicien los tokens BNK ERC223, los titulares de token de BNK podrán reclamar su comisión semanal a través del contrato inteligente de Ethereum si deciden retirar sus BNK de sus billeteras SpectroCoin. Esto significa que, a diferencia de la mayoría de otros contratos de tokens de ERC, el contrato inteligente de BNK debe diseñarse para guardar Ether. Como el contrato contendrá los fondos de la comisión semanal, es esencial para garantizar la seguridad del contrato.
Bounty de errores en el código fuente de Banker
Para garantizar que no se pasen por alto los fallos de seguridad en el contrato inteligente de BNK, el contrato fue sometido a auditoría por un grupo externo de expertos. Los expertos concluyeron que no se encontraron lagunas en el contrato inteligente de BNK. Nuestro equipo de IT realizó una auditoría privada adicional para implementar las mejoras que se sugirieron durante la auditoría inicial.
Ahora, como esta etapa ya se completó, el contrato inteligente está disponible para pruebas públicas por parte de nuestros contribuyentes. Para probar el código fuente BNK, estamos anunciando un bounty de errores. Para participar en el bounty, simplemente visite nuestra página de GitHub donde hemos publicado nuestro código fuente de token BNK. Si encuentra algún riesgo o problema potencial en el código, infórmelo a [email protected] o envíe el problema a GitHub. Los miembros de la comunidad que nos identifican e informan sobre los errores serán elegibles para recibir recompensas monetarias.
¿Qué sigue para Bankera?
También estamos trabajando para habilitar la funcionalidad de retiro y depósito de tokens en SpectroCoin. Por lo tanto, una vez que se lance la versión finalizada del código fuente de BNK, los titulares de BNK podrán retirar sus tokens a billeteras compatibles con ERC20 y ERC223, depositarlos nuevamente en SpectroCoin y reclamar los ingresos netos transaccionales semanales a través del contrato inteligente Ethereum. Sin embargo, los titulares de tokens que poseen pequeñas cantidades de BNK podrían tener que esperar antes de recaudar una cantidad significativa de ingresos transaccionales netos semanales para retirarlos. Dado que los tokens ERC223 usan ether para “gas” para enviar transacciones, no es económicamente viable retirar pequeñas cantidades de comisión semanal. Los usuarios que opten por guardar sus tokens BNK en SpectroCoin continuarán recibiendo su comisión cada semana en sus billeteras Ethereum en SpectroCoin.
Después del lanzamiento del código fuente del ERC223, los tokens BNK también se incluirán en los exchanges de criptomonedas, incluidos HitBTC, SpectroCoin y el exchange Bankera. Puede encontrar más información sobre exchanges y los próximos pasos de Bankera en nuestro blog.
Una vez que el código fuente del ERC223 se finaliza y llega a los exchanges, nuestro equipo de IT cambiará su enfoque para apoyar tokens BNK como NEM Mosaics también. Esto dará a nuestros titulares de tokens la posibilidad de elegir si desean guardar sus BNK en los billeteros ERC20 / ERC223 o NEM Mosaic. Por lo tanto, podrán decidir si desean recibir la comisión semanal en monedas ETH o XEM. Sin embargo, los tenedores de tokens deben elegir su blockchain preferido de antemano ya que, una vez que muevan sus tokens a los billeteros ERC20/ERC223 compatibles, los tokens serán reconocidos como listados en el blockchain Ethereum y los titulares BNK no podrán cambiar al blockchain NEM después.
Recuerde seguirnos durante este emocionante viaje en nuestros canales de redes sociales. ¡Traeremos actualizaciones pronto!