Blockchain es un libro público de transacciones que contiene toda la información sobre una criptomoneda desde su lanzamiento. Para encontrar y ver fragmentos de interés en esta enorme base de datos, se utilizan códigos criptográficos especiales, incluido un identificador de transacción. 

ID de transacción: ¿qué es?

El ID de transacción (TxID) es un código único que consta de una secuencia específica de letras y números. Se asigna a cada transacción en la cadena de bloques y es su hash, un valor único que se genera mediante un algoritmo criptográfico basado en la información contenida en la transacción. El hash resultante se utiliza para identificar y garantizar la seguridad de los pagos en blockchain. 

¿Por qué se necesita TxID?

Utilizando TxID, cada nueva transacción se asocia con la anterior. Esto ayuda a garantizar que las transacciones estén en el orden correcto y que no hayan sido alteradas ni manipuladas. 

Los valores hash también le permiten proteger billeteras y otros sistemas con información confidencial. Además, ayudan a proteger los datos de los usuarios del acceso no autorizado.

Condiciones para crear TxID

Cada billetera de criptomonedas tiene un determinado conjunto de funciones, incluida la capacidad de generar TxID automáticamente. Cuando un usuario realiza una transferencia de criptomonedas, la firma con una clave privada y se asigna un identificador único a la transacción. Este TxID se puede rastrear en la cadena de bloques inmediatamente después de que se envía la transferencia desde la billetera. 

A continuación, la transacción debe pasar la verificación y recibir la confirmación de los nodos de la red (mineros). Como resultado, su TxID se agrega al bloque y se almacena en el registro público. Después de esto, los datos no se pueden cambiar. 

Por lo tanto, se crea una ID de transacción en el momento en que el usuario la envía, e incluso antes de recibir la confirmación en la cadena de bloques. 

A veces, los nodos de la red pueden rechazar transferencias por varias razones: debido a tarifas bajas, saldo insuficiente en el remitente, congestión de la red, etc. En estos casos, el TxID generado en la billetera no se utilizará y no se asociará con ninguna transacción en blockchain. . Entonces dejará de ser válida y desaparecerá del registro público. 

El usuario puede recrear la traducción con datos corregidos y luego recibirá un nuevo identificador único. Esta transacción se enviará a la red para su verificación de la misma manera y se podrá rastrear utilizando el nuevo TxID.

Proceso de creación de TxID 

Un valor hash (o hash) se calcula utilizando una función hash. Es un algoritmo matemático que transforma texto de entrada arbitrario (como datos de transacciones) en una salida hash única de longitud fija. Una función hash suele ser unidireccional, lo que significa que el código hash no se puede utilizar para reconstruir los datos originales. 

Cada red de criptomonedas tiene su propio método de hash. Por ejemplo, Bitcoin utiliza el algoritmo SHA-256 (Secure Hash Algorithm de 256 bits). Toma como entrada los datos que necesitan ser hash y devuelve un valor hash de 256 bits de 64 caracteres, aproximadamente en el siguiente formato:

0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098

Este proceso se puede representar en los siguientes pasos:

  1. La función hash recibe datos de entrada: información de transacción.

  2. A partir de estos datos, la función hash genera un código hash único: un conjunto de caracteres de longitud fija (256 bits en Bitcoin).

  3. El código hash resultante se almacena en la cadena de bloques, donde pasa a formar parte de una cadena de bloques única.

  4. En la siguiente transferencia, el valor hash de la transacción anterior se utiliza para crear un nuevo hash que pasará a formar parte de un nuevo bloque de la cadena.

Por lo tanto, el valor hash juega un papel importante para garantizar la seguridad de la red de criptomonedas, porque cualquier cambio en los datos de la transacción requiere un cambio en el valor hash correspondiente, y esto conducirá inmediatamente al rechazo de la transacción. 

Cómo se crea una transacción

Una transacción de criptomonedas es el proceso de transferir monedas de una cuenta a otra. Contiene información sobre el monto del pago, direcciones del remitente y del destinatario, así como otros datos que pueden variar según la cadena de bloques. 

Por ejemplo, la red Bitcoin utiliza tres tipos de datos para crear un valor hash: 

  • entradas de transacciones;

  • resultados de transacciones;

  • firma. 

Toda la cadena de bloques es una combinación secuencial de esta información. Sin ellos, es imposible enviar criptomonedas. 

Entradas de transacciones

Las entradas son monedas que se reciben de transacciones entrantes y aún no se han utilizado en las salientes, es decir, están en la cuenta. 

Al crear un nuevo pago, el remitente selecciona la entrada de billetera que desea usar para la transacción actual. Por lo tanto, la entrada es un enlace a la transacción anterior desde la cual se transferirá nuevamente la criptomoneda. 

Este enlace contiene la siguiente información:

  • el ID de salida, que ahora se utiliza como entrada;

  • dirección del remitente;

  • dirección del destinatario;

  • suma. 

Al crear un nuevo pago, el remitente puede especificar una o más entradas. Por ejemplo, si su billetera tiene dos entradas: 3 y 4 BTC, puede usar ambas para transferir 7 BTC a una nueva dirección.  

Salidas de transacciones

Las salidas muestran información sobre las monedas que se utilizaron para transferencias externas. Cada salida contiene la siguiente información:

  • un enlace a la entrada desde la que se creó;

  • sobre a qué direcciones se enviará la criptomoneda;

  • sobre el monto de la transferencia.

En este caso, el remitente puede dividir las entradas en partes. Por ejemplo, a partir de una entrada de 10 BTC puedes crear una salida de 3 BTC. La cantidad restante de 7 BTC son resultados de transacciones no gastadas (UTXO). El remitente también puede transferir criptomonedas a varias direcciones al mismo tiempo.

Firma

Cuando un usuario envía una transacción, utiliza su clave privada para crear una firma digital, que luego se verifica con su clave pública. Si la firma coincide con la clave, la transacción se confirma y se envía a la cadena de bloques. Esto garantiza seguridad y protección contra el fraude, ya que sólo el propietario de la clave privada puede crear la firma correcta. 

Por lo tanto, la información de las transacciones es el núcleo de la seguridad de blockchain. 

El principio de construir una cadena de entradas y salidas.

Por ejemplo, podemos considerar el proceso de interacción entre tres cuentas A, B y C, que transfieren la moneda X entre sí.

Si el titular de la cuenta A desea crear una transacción (T1), debe especificar: 

  • destinatario (por ejemplo, cuenta B);

  • número de monedas (por ejemplo, 1X).

Esta información se cifra y se almacena en el ID de transacción T1. 

En el momento del envío, dicha traducción recibe las siguientes propiedades:

  • se convierte en una salida de la cuenta A, una continuación de los recibos anteriores;

  • se convierte en una entrada en la cuenta de B. 

Mientras la moneda 1X permanezca en la cuenta B, la transacción T1 se considera una entrada. 

De manera similar, si el propietario de la cuenta B desea transferir 1X a la cuenta C, deberá especificar (T2):

  • destinatario - cuenta C;

  • número de monedas - 1X.

Al momento del envío, la transferencia T2 recibe las siguientes propiedades:

  • se convierte en una salida de la cuenta B - una continuación de la transacción T1; 

  • se convierte en una entrada para la cuenta de C. 

Mientras la moneda 1X permanezca en la cuenta C, la transacción T2 se considera una entrada. 

¿Cómo se puede utilizar un ID de transacción?

Los usuarios pueden aplicar manualmente la identificación para otros fines. Por ejemplo, utilizando TxID, las contrapartes pueden controlar las transferencias: 

  • el remitente puede verificar que su pago haya ingresado exitosamente a la cadena de bloques;

  • el destinatario puede verificar que la transferencia fue enviada a su cuenta.

Además, TxID te permite ver información adicional:

  • cantidad;

  • moneda (moneda o ficha);

  • estado: completado, incompleto, pendiente, en proceso, etc.;

  • número de bloque en el que se guarda la transacción; 

  • hora de transferencia; 

  • comisión, etcétera.

La integridad y el formato de esta información dependen de la cadena de bloques y del servicio utilizado para la verificación. 

Existen diferentes navegadores para diferentes blockchains: 

  • Bitcoin — blockchain.info;

  • Ethereum — etherscan.io;

  • BNB-bscscan.com;

  • TRON — tronscan.org;

  • Polkadot: explorer.polkascan.io. 

El registro público está disponible para que todos lo vean, pero su volumen es enorme. Por ejemplo, la cadena de bloques BNB procesa más de 5 millones de transacciones por día. Para encontrar el fragmento requerido en esta matriz de datos, necesita el código criptográfico apropiado. Puedes buscar información no sólo por identificador, sino también por dirección, bloque, token, etc. 

Sólo se puede ver información criptográfica. Nadie sabe quién envió el pago a quién y por qué; esto garantiza simultáneamente la publicidad de la red y el anonimato de los usuarios.