AutoUpdate de desarrollador.

P4A11B875631DB65EF270D7BFFCB4B7D814

Es el valor de la constante AdminHash; tambien es el 'minero' del bloque 0 y, por tanto, la primera direccion del sumario.

Esta es nuestra direccion publica. Cualquier mensaje recibido en la red, autentificado por esta direccion publica, proviene de nosotros. Esto nos permite poder enviar las ultimas versiones del programa a los usuarios de la red y que todos sepan que es una version original. Desde luego, los usuarios pueden optar por descargarlo e instalarlo  automaticamente o hacerlo manualmente mas tarde, en caso de que prefieran primero ver los cambios que incluye o ver el codigo fuente. Normalmente, el programa podra seguir funcionando en la red aunque se disponga de una version antigua de el, ya que a partir de la version 0.0.1 toda la conectividad esta incluida.

El proceso es el siguiente:

  1. Una vez tenemos completada una nueva version, esta es comprimida junto con su actualizador en un archivo .ZIP de nombre 'mpupdatex.x.x.zip', donde las 'x' representan la version.
  2. Procedemos a ejecutar el comando 'SendUpdate x.x.x' el cual verifica que la direccion del admin esta en la cartera en uso. De ser asi, procede a enviar a todos los pares un mensaje 'update' con el siguiente formato:
    UPDATE {version} {hashdelarchivo} {clavepublica} {firma}
    El hash del archivo garantiza que el archivo no puede ser modificado sin perder su originalidad. La clave publica permitira a los pares saber que somos nosotros quienes enviamos ese mensaje, y la firma de '{version} {hashdelarchivo}' autentifica su origen.
  3. Inmediatamente se envia el archivo .ZIP a los pares. Estos, con la informacion y el archivo ya descargado proceden en el siguiente orden:
    1 - Verifican que el archivo descargado coincide con el hash indicado.
    2 - Verifican que la clave publica genera nuestra direccion publica.
    3 - Comprueban la firma para garantizar su originalidad.
    Si cualquiera de estos pasos fallase, el archivo seria eliminado y el mensaje update descartado, evitando de este modo la difusion de falsos updates.
  4. En este punto, dependiendo de la configuracion que tenga el usuario:
    a - Si el usuario tiene la opcion de instalar automaticamente los updates, el programa se cerrara, se realizara la actualizacion por medio del otro archivo incluido en el .ZIP ('mpupdater.exe') y el programa se volvera a abrir informando de la actualizacion automatica. Inmediatamente, en cuanto vuelva a conectarse, reenviara la actualizacion a todos los pares.
    b - Si el usuario no desea instalar automaticamente las actualizaciones, el archivo .ZIP se reenviar a los pares y se guardara para que el usuario pueda realizar la actualizacion cuando lo desee.
El archivo 'mpupdater.exe' asi mismo actualizara los archivos de configuracion que sean necesarios actualizar para funcionar con la nueva version. Este archivo tambien estara disponible en codigo fuente.

Como se puede ver, los 'mensajes' de desarrollador pueden ser una herramienta segura y poderosa para el crecimiento y desarrollo de una criptomoneda. Y cuando su utilidad pueda ser considerada ya innecesaria, es tan sencillo como lanzar una ultima actualizacion que no los reconozca: escalable y reversible!

Comentarios

Entradas populares de este blog

Como funciona una criptomoneda?

Funcionamiento interno

Codigo fuente y binarios version 0.1.0