¿Qué es Timestamp?

El timestamp o bien marca de tiempo es un pequeño dato guardado en todos y cada bloque como serial único y que tienen como primordial función determinar el instante preciso en el que el bloque ha sido sido minado y ratificado por la red blockchain.

La descentralización es uno de los aspectos esenciales de la tecnología blockchain y claro, eso implica que cualquiera, desde cualquier una parte del planeta se puede agregar a la red y puede operar en esta. Esto por su parte provoca, que no exista un código de tiempo universal. Esto se debe a que nos podemos conectar desde cualquier franja horaria. El timestamp es una marca de tiempo, que se calcula conforme diferentes factores.

El factor temporal o bien timestamp, se fundamenta en un ajuste instantáneo que emplea una mediana de las marcas de tiempo devueltas por todos y cada uno de los nodos de la red. Esto se debe a la manera descentralizada de exactamente la misma, y busca sostener a los nodos de la red lo mejor acompasados posible.

Debemos asimismo tener en consideración que las marcas de tiempo de los bloques no son precisas. Esto debido a que no necesariamente deben estar en orden. No obstante, prosiguen ofertando una precisión relativa de entre una y 2 horas, lo que da un margen de valía. Esencialmente, todos y cada uno de los nodos se conectan a una misma franja horaria. Para esto se toma como referencia la UTC-0 (Hora local de la ciudad de Londres), donde UTC es en castellano Tiempo Universal Coordinado. Desde este, los nodos de la red regulan el tiempo en el que trabajan. Ahora bien, tras guardar este dato, el nodo local calcula el tiempo de desplazamiento existente entre la franja UTC y la hora local.

Así se efectúa un ajuste entre el tiempo del nodo local con el desplazamiento de todos y cada uno de los nodos que hay conectados a la red. Esto deja que el tiempo de la red se ajusta constantemente. Con esto se evita la manipulación y acostumbra a hacer con ligeras alteraciones temporales con respecto la franja horaria. Esto se efectúa así, por el hecho de que pueden haber muchos índices horarios y podrían darse reiteraciones y otros inconvenientes. Por ende, se desarrolló un sistema de creación de marcas de tiempo universales para todos y cada uno de los nodos. Este sistema tiene presente el desfase horario que podría existir entre los nodos.

Implementar una marca de tiempo, hace que el bloque sea imposible de ser repetido en un futuro, en tanto que aparte de la hora, asimismo se guarda la data de creación del bloque, por ende, no existe la posibilidad de que se repita exactamente el mismo hash que se dio hace una semana, un par de meses o bien un año.

¿Para qué exactamente se emplea el timestamp en blockchain?

Uno de los usos primordiales de los timestamp es para establecer los factores del proceso de minería. Esto es debido a que estas marcas de tiempo deja a los nodos ajustar apropiadamente la dificultad de la minería que se empleará para cada periodo de generación de bloques. Los timestamp asisten a la red a determinar cuánto tiempo se lleva en extraer los bloques de un determinado periodo y de allá se ajusta el factor de complejidad de la minería.

Esto como es lógico puede abrir la puerta a que los mineros manipulen el tiempo con la intención de reducir la complejidad. No obstante, Satoshi Nakamoto previó esto y programó la red a fin de que los nodos ignoren los bloques que están fuera de un cierto rango de tiempo en función de su tiempo de reloj interno. Como resultado, si un minero intentara efectuar esto, perdería su trabajo de minería.

Por otro lado, en el whitepaper de Bitcoin, Nakamoto explica que otra funcionalidad del timestamp es crear un mecanismo para eludir el doble gasto. En tal sentido, Nakamoto escribió lo siguiente:

Para nuestros propósitos, la última transacción es la que cuenta, conque no nos van a importar otros intentos de doble gasto siguientes.

¿Cuánto sabes, criptonauta?

¿Las marcas de tiempo son esenciales para el proceso de minería?

El timestamp en Bitcoin y su seguridad

En Bitcoin, cada bloque contiene una marca de tiempo tipo Unix. Esta marca sirve como fuente de alteración en el hash del bloque y eludir su manipulación. El hecho de emplear una marca de tiempo tipo Unix representa un inconveniente para Bitcoin. Esto es debido a que las marcas de tiempo tipo Unix, tiene capacidad de enseñar periodos de tiempo hasta el año dos mil treinta y ocho. Para solventar esto, Satoshi Nakamoto programó el sistema de marcas de tiempo para eludir este fallo y retrasarlo hasta el año dos mil ciento seis.

Sin embargo a pesar de la seguridad de los timestamp estos no son infalible. Como mentamos previamente, un minero podría trastocar el horario de su equipo y minar bloques con una marca de tiempo menor. Este ataque es conocido y recibe el nombre Time Warp Attack o bien Ataque de Deformación del Tiempo.

El ataque de deformación del tiempo (Time Warp Attack)

Un Time Warp Attack sucede en el momento en que un minero notifica marcas de tiempo incorrectas en los bloques que extraen, con el objetivo de provocar una complejidad menor. Muchas criptomonedas como Bitcoin ajustan periódicamente la complejidad conforme con la tasa de generación de bloques. Así que la generación de bloques se sostiene en la cantidad establecida en el código, que es diez minutos por bloque para Bitcoin.

Así al informar marcas de tiempo incorrectas, un minero puede mentir al algoritmo de complejidad y hacer que reduzca la complejidad. Una situación que le deja extraer bloques más veloz y ganar más dinero. Esto tiene efectos negativos para la economía de una criptomoneda, en tanto que un ataque de distorsión de tiempo aumenta la tasa de inflación de una criptomoneda, lo que provoca un incremento de la oferta que puede conducir a un coste de mercado más bajo.

Sin embargo, la probabilidad de que se realice en Bitcoin es bajísima debido a la gran complejidad que tiene en nuestros días Bitcoin. Esto reduce la probabilidad de que se efectúen esta clase de ataques. Esta situación ha llevado a que los desarrolladores no deseen solventar este problema.

bitcoin
Bitcoin (BTC) $ 61,874.00
ethereum
Ethereum (ETH) $ 3,770.48
binance-coin
Binance Coin (BNB) $ 484.99
tether
Tether (USDT) $ 1.00
cardano
Cardano (ADA) $ 2.12
xrp
XRP (XRP) $ 1.08
solana
Solana (SOL) $ 156.46
polkadot
Polkadot (DOT) $ 40.63
usd-coin
USD Coin (USDC) $ 1.00
dogecoin
Dogecoin (DOGE) $ 0.245114