Barrido de una clave privada de bitcoin usando PHP

¿Existe un script PHP donde valide una clave privada de bitcoin y también obtenga la dirección pública de la clave?

Mi objetivo era:

  1. verificar la clave privada
  2. Obtenga la dirección pública usando esa clave privada
  3. Consultar el saldo mediante una API externa
  4. Barrido si saldo > 0

Sé que puedo probarlo enviándole algunos bitcoins, o usar electrum para intentar el barrido, pero digamos que tengo 100 claves privadas que necesito verificar, ¿cómo lo haría?

¿Qué define como clave privada válida en el paso 1? ¿Cuándo la clave está en el rango secp256k1 ECDSA? Eso sería casi todos los números de 256 bits. ( es.bitcoin.it/wiki/… )
¿Qué formato tienen sus claves privadas?
Edición del título de la pregunta: ¿Cómo vacío las cuentas de 100 personas cuyas claves privadas he pirateado?

Respuestas (1)

No hay código PHP MVP, pero algunos bits que podrían ayudar.

  1. verificar la clave privada

Suponiendo que desea que una clave privada esté en el rango ECDSA secp256k1. Puede verificar si la clave es cualquier número entre 0x1y 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4140. Eche un vistazo a la entrada de la wiki de bitcoin sobre claves privadas sobre el rango de claves .

  1. Obtenga la dirección pública usando esa clave privada

La biblioteca BitcoinECDSA.php podría ayudarte aquí. Especialmente

$bitcoinECDSA->setPrivateKey($privateKey);
$bitcoinECDSA->getAddress(); 

3 + 4. Verifique el saldo usando una API externa y barra si el saldo> 0

Este paso se puede combinar fácilmente. Si desea confiar en un tercero, puede usar la API PHP de Block.io y Libary . Tienen un ejemplo de código PHP para barrer.

FYI, esto necesita el módulo PHP gmp .