Tutoriales

Una solución simple al enigma de la pérdida de clave privada

Según las estadísticas, más del 10% de los usuarios Olvidé o perdí la contraseña o clave privada para cifrar datos.

No es gran cosa si hay opciones de recuperación de contraseña o clave privada, pero cuando hay no hay manera de recuperar Contraseña o clave privada perdida u olvidada.

Según la firma de datos de criptomonedas Chainalysis, más de Se cree que 3 millones de bitcoins se perdieron debido a una contraseña olvidada.

Inversionista de San Francisco Stefan Thomas perdió su clave privada llegar Monedero criptográfico basado en hardware IronKey, estableció 7,002 bitcoinsEl valor de esta pérdida (en dólares estadounidenses) es 5 de noviembre de 2021 $479,784,042El valor de la pérdida de claves privadas perdidas a datos cifrados, archivos, unidades no se puede estimar con precisión.

Generar contraseñas dinámicas en la terminal de Linux

llegar evitar esta situación catastrófica, el usuario puede utilizar Método simple de cuatro pasos llegar Genere claves privadas fácilmente recuperables Residencia en contraseña dinámica.

¿Qué es una contraseña dinámica?

contraseña dinámica son contraseñas parametrizadas, dinámicas, recuperables, generadas bajo demanda y pseudoaleatorias No se almacena en formato electrónico o en papel..

Esta más crítico La característica de la contraseña dinámica es que es fácil de recuperar de algunos parámetros inolvidables. Los parámetros más comunes son clave y fecha (año, mes, día). Por ejemplo, si eliges el nombre y la fecha de nacimiento de alguno de tus familiares, amigos o algún famoso, podrás utilizar estos parámetros para recuperar rápidamente tu contraseña.

Este artículo te enseña cómo Genere claves privadas recuperables de 256 bits para billeteras de bitcoin utilizando un generador de contraseñas dinámicas públicas (DPG)Nuestro enfoque consiste en los siguientes cuatro pasos:

  • Define los parámetros de entrada del DPG.
  • Obtenga contraseñas dinámicas a través de la solicitud POST de cURL a un generador público de contraseñas dinámicas (DPG).
  • Elija 32 símbolos de contraseñas dinámicas.
  • Convierte 32 símbolos en una clave privada de 256 bits.

Un script bash simple

En esta sección, describimos un script bash simple que realiza los cuatro pasos requeridos.

Paso 1. Definir parámetros

key='test'
day=2
month=2
year=2022

Paso 2. Envíe una solicitud POST al DPG público usando cURL

url='https://dynpass.online/dpt/dpt.php'
curl -X POST -F 'key='$key -F 'day='$day -F 'month='$month -F 'year='$year $url > dp.tmp

Como resultado, obtenemos 10 contraseñas de 15 símbolos de longitud, cada una guardada en un archivo «dp.tmp».

Paso 3. Elija 32 símbolos de la contraseña dinámica

out=$(awk '{if (NR<3) s=s $2;if (NR==3) s=s substr($2,1,2)} END {print s}' dp.tmp)

Paso 4. Convierta 32 símbolos en un número binario de 256 bits, que es la clave privada requerida

echo “Your private key:”
echo $out |perl -lpe '$_=join " ", unpack"(B8)*"'

La siguiente lista es el script bash completo.

key='test'
day=2
month=2
year=2022
url='https://dynpass.online/dpt/dpt.php'
curl -X POST -F 'key='$key -F 'day='$day -F 'month='$month -F 'year='$year $url >dp.tmp
out=$(awk '{if (NR<3) s=s $2;if (NR==3) s=s substr($2,1,2)} END {print s}' dp.tmp)   
echo “Your private key:”
echo $out |perl -lpe '$_=join " ", unpack"(B8)*"'

Crear un "pk_basic.sh" y almacene el script anterior en este archivo.

entonces da permiso ejecutable Use el siguiente comando para crear este archivo.

$ chmod +x pk_basic.sh

Al final, ejecutar secuencia de comandos Utilice los siguientes comandos.

$ ./pk_basic.sh

El siguiente diagrama muestra el comportamiento de este script.

Un script bash simple

Agregar interfaz de usuario simple

usar echo y read comando, podemos crear una interfaz de usuario simple como se muestra en el siguiente script.

echo "Enter a key"
read key
echo "Enter a day"
read day
echo "Enter a month"
read month
echo "Enter an year"
read year
url='https://dynpass.online/dpt/dpt.php'
curl -X POST -F 'key='$key -F 'day='$day -F 'month='$month -F 'year='$year $url >dp.tmp
out=$(awk '{if (NR<3) s=s $2;if (NR==3) s=s substr($2,1,2)} END {print s}' dp.tmp)   
echo “Your private key:”
echo $out |perl -lpe '$_=join " ", unpack"(B8)*"'

Ahora crea un archivo llamado "pk_si.sh" y almacene el script anterior en este archivo.

entonces da permiso ejecutable Use el siguiente comando para crear este archivo.

$ chmod +x pk_si.sh

Al final, ejecutar secuencia de comandos Utilice los siguientes comandos.

$ ./pk_si.sh

El siguiente diagrama muestra el comportamiento de este script.

Agregar interfaz de usuario simple
Agregar interfaz de usuario simple

Agregar interfaz de diálogo

Podemos crear una mejor interfaz de usuario usando la utilidad de diálogo como se muestra en el siguiente script.

clear
key=$(dialog --title "Input" --inputbox "Enter a key" 8 60 2 3>&1 1>&2 2>&3 3>&-)
clear
x=$(dialog --title "Calendar" --calendar "Choose a date" 0 0 3>&1 1>&2 2>&3 3>&-)
d=$(echo $x |awk '{split($0,x,"/");print x[1]}')
m=$(echo $x |awk '{split($0,x,"/");print x[2]}')
y=$(echo $x |awk '{split($0,x,"/");print x[3]}')
clear
echo "d="$d " m="$m " y="$y " key="$key
url='https://dynpass.online/dpt/dpt.php'
curl -X POST -F 'key='$key -F 'day='$day -F 'month='$month -F 'year='$year $url >dp.tmp
out=$(awk '{if (NR<3) s=s $2;if (NR==3) s=s substr($2,1,2)} END {print s}' dp.tmp)   
echo “Your private key:”
echo $out |perl -lpe '$_=join " ", unpack"(B8)*"'

Crear un "pk_dialog.sh" y almacene el script anterior en este archivo.

entonces da permiso ejecutable Use el siguiente comando para crear este archivo.

$ chmod +x pk_dialog.sh

Al final, ejecutar secuencia de comandos Utilice los siguientes comandos.

$ ./pk_dialog.sh

El siguiente diagrama muestra el comportamiento de este script.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba