En el blog de Etherem
Vitalik dice: "pero no almacenamos el historial de más de 5000 bloques".
1) ¿Se debe entender que el estado Trie no contiene el estado de las cuentas que no estuvieron en uso durante los últimos 5000 bloques?
2) Digamos que un tipo se despierta de una hibernación después de 50 años y quiere hacer una transacción que haga referencia a un bloque que ocurrió hace años. Teniendo en cuenta todos los algoritmos de poda de blockchain actuales implementados o que se implementarán pronto en Ethereum; ¿Cómo funcionaría el protocolo al respecto? Supongo que la mayoría de los nodos completos típicos ni siquiera contendrían los bloques que contienen transacciones que mencionan esa cuenta en particular en sus HDD (nuevamente, ¿hay algún algoritmo de poda de blockchain (no Trie State) en este momento?) Probablemente estaría contenido en algunos de los nodos de archivo. ¿Cómo sería el protocolo al respecto?
Entonces, la pregunta se extiende un poco a través de la arquitectura de Ethereum en sí (sugiere que en realidad tenemos algunos tipos de nodos completos, unos que almacenan todos los datos y otros que decidieron usar algunos algoritmos de poda). No es que amenace la criptografía. seguridad, ya que los hashes recientes serían suficientes para verificar si los colocados hace 50 años son correctos, pero eso requeriría verificar todos los bloques nuevamente una vez que los eliminemos del estado Trie. Otra opción sería CONFIAR en un nodo de archivo de inmediato, pero entonces no la seguridad criptográfica PERO, la naturaleza descentralizada de los servicios sufre mucho.
Curioso soy.
Esto es incorrecto. Creo que la desconexión es que el bloque no solo contiene cambios en el estado, sino que también contiene la raíz del estado en sí, que se genera utilizando todo el estado actual. Esencialmente, esto significa que, para los últimos 5000 bloques, el estado completo se almacena para cada uno de esos bloques, pero se descarta para los bloques anteriores. Entonces tiene el estado de cada cuenta en los bloques n a n-5000, pero no antes de eso.
Nuevamente, vea el #1. La persona no tendría problemas porque su cuenta aún existiría en el estado actual. Sin embargo, no estoy muy seguro de lo que quiere decir con "hacer referencia a un bloque que sucedió hace años". No hace referencia a un bloque al realizar una transacción. Sin embargo, pueden estar confundidos, ya que en 10 años, la cadena de bloques de Ethereum probablemente se verá bastante diferente con fragmentación, plasma, casper, etc.
vega4
vega4
vega4
natewelch_
natewelch_
natewelch_
vega4
natewelch_
vega4