El artículo se centra en discutir las diferencias entre la lista enlazada y una string de bloques. Aquí, discutiremos los siguientes puntos:
- ¿Qué es la lista enlazada?
- ¿Qué es la string de bloques?
- Similitudes entre la lista enlazada y la string de bloques.
- Lista enlazada vs Blockchain.
Vamos a discutir cada uno de estos temas en detalle.
¿Qué es la lista enlazada?
Una lista enlazada es una estructura de datos lineal, en la que los elementos no se almacenan en ubicaciones de memoria contiguas. Los datos se almacenan en un Node, y este Node también tiene una referencia (puntero) al siguiente Node de datos, que continúa, comenzando desde la cabeza hasta el último Node llamado cola.
Una lista enlazada se representa mediante un puntero al primer Node, es decir, la cabeza de la lista enlazada. Si la lista enlazada no contiene ningún dato, el encabezado apunta a NULL.
¿Qué es la string de bloques?
Blockchain es una red de varios bloques de datos. La estructura de cada bloque es tal que tiene las siguientes propiedades o atributos:
- Número de bloque.
- Los datos a almacenar.
- Referencia al bloque anterior. En el caso del primer bloque, es cero.
- Es hash/dirección.
La dirección de un bloque se calcula combinando su número, datos y la dirección del bloque anterior y pasando esta combinación a una función hash que da un hash muy complejo.
- Una vez que los datos se agregan al bloque, no se pueden cambiar. Esto significa que si alguien editara los datos en un bloque, la dirección cambiará y se producirá un nuevo hash.
- Dado que el siguiente bloque tiene referencia a su bloque anterior, se notará que la dirección no coincide y se puede detectar si los datos fueron manipulados. Incluso un solo cambio de carácter cambiará el valor hash del bloque.
- Cada vez que un nuevo bloque se une a la string, se copia toda la string y esta copia se entrega al usuario de este nuevo bloque. Si se une otro usuario, se copia la última string y esta copia se entrega al nuevo usuario.
- Así se mantienen múltiples copias de los mismos bloques.
- Siempre que alguien intente cambiar datos, la dirección de ese bloque cambiará. Todas las copias se utilizan para comparar la dirección de un bloque. Si todos pueden confirmar que la dirección no cambió, esto significa que los datos no cambiaron y no pasa nada, de lo contrario, el cambio se detiene.
- Por lo tanto, si hay 1 millón de bloques e intenta cambiar los datos en un bloque, 1 millón – 1 bloques están ahí para comparar y resistir el cambio en los datos.
Esta característica simple hace que blockchain sea una buena opción para mantener un libro de contabilidad entre las partes, ya que cada vez que alguien intenta cambiar los datos, se resiste. Dado que nadie puede cambiar los registros, se puede mantener un seguimiento seguro de las transacciones y estar seguro de que los registros no fueron manipulados.
Similitudes entre la lista enlazada y la string de bloques
Las siguientes son algunas de las similitudes entre Linked List y Blockchain:
- String: Ambos tienen una string de datos en una secuencia. No se distribuyen aleatoriamente.
- Datos: Ambos pueden contener datos como strings o datos numéricos.
- Referencia: Cada bloque tiene referencias a otro bloque.
- Expansión: Ambos pueden expandirse en tamaño.
- Implementación: Ambos se implementan utilizando un lenguaje de programación.
Diferencia entre Lista Vinculada y Blockchain
De las explicaciones anteriores, puede parecer que las listas vinculadas y la string de bloques son lo mismo, pero no lo son. Las siguientes son algunas de las diferencias entre Linked List y Blockchain:
Base |
string de bloques |
Lista enlazada |
---|---|---|
Referencia | La referencia a un bloque en la string de bloques viene dada por el hash del bloque. | En las listas enlazadas, la referencia es la ubicación de memoria de ese bloque. |
Dirección de referencia | En blockchain, el bloque se refiere al bloque anterior. | En una lista enlazada, el bloque se refiere al siguiente bloque. |
Expansión | Para agregar un nuevo bloque, se copia toda la string y luego se agrega un nuevo bloque a la string copiada, | En una lista enlazada, el bloque simplemente se agrega a la lista enlazada sin copiarlo. |
copias | Cuando se trata de blockchain, tenemos múltiples copias. | En una lista enlazada, mantenemos una única string de datos sin copias. |
Edición de datos | Los datos en la string de bloques no se pueden cambiar. | En las listas enlazadas, se puede cambiar fácilmente simplemente haciendo referencia al bloque y poniendo el nuevo valor. |
Objetivo | Blockchain es un libro de contabilidad digital para transacciones. | Una lista enlazada es una colección secuencial de datos. |
Estructura de control | Blockchain no tiene un control central, se distribuye entre las personas de la string. | Una lista enlazada está en una sola ubicación bajo el control de una de las partes. |
Bloquear contenido | Un bloque en una string de bloques también puede contener algún código para ejecutar, | Una lista enlazada solo almacena datos sólidos que pueden ser datos numéricos o de string. |
Seguridad | Blockchain es altamente seguro para la autenticación. | La lista enlazada no tiene ningún método de autenticación. |
Velocidad | Las strings de bloques son un poco lentas debido a una gran cantidad de cálculos. | Las listas enlazadas son más rápidas que la string de bloques, ya que no se copia la string completa ni se verifica. |
Complejidad | Las strings de bloques son muy complejas de implementar. | Las listas enlazadas son fáciles de implementar. |
Publicación traducida automáticamente
Artículo escrito por ishanrastogi26 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA