- La forma de gestionarlo consiste en hacer que el primer commit empiece con el hash
0000000 y el segundo con 0000001, de modo que los números se vean de forma intuitiva
- Para encontrar estos valores de encabezado del hash, hay que insertar datos basura en el mensaje del commit para ajustar el hash SHA-1
- En una MacBook, usando la herramienta
githashcrash, se puede encontrar un encabezado de hash de 8 caracteres en 5 minutos, y uno de 6 caracteres en menos de 1 segundo
- Esto se automatiza con
bash-glue bajo el nombre git linearize
- Se usa
lucky-commit como backend de generación de hashes, y con GPU puede generarse 20x más rápido
→ lucky-commit modifica el mensaje del commit usando caracteres de espacio en blanco invisibles en lugar de texto basura, así que visualmente tampoco se ve mal
9 comentarios
Qué curioso jaja, si son los primeros 8 caracteres, los datos basura tampoco quedan tan largos.
jajaja... tengo muchísima curiosidad por saber qué diría Linus si viera esto..
Algo así como calcular el valor
noncede una blockchain....Si solo usaran svn, los números de revisión se irían acumulando ordenadamente...
Perdón por decirlo, pero si el primero es 0000000, ¿no debería ser 0000001 el segundo? Parece que hay un error tipográfico jaja..
Uf jaja, ya lo corregí.
Ya roza lo obsesivo.
Aun así, es impresionante que se le haya ocurrido la idea y la haya llevado a la práctica.
¿Será simplemente
brute-force?Parece un método de minería de Bitcoin jajaja
¡github como bolsa de intercambio!