Cómo obtener una nueva dirección en el núcleo de bitcoin a través de una clave pública extendida

voy a lanzar un nuevo servicio para que los comerciantes usen mi API de servicio para recibir pagos directamente en sus billeteras a través de la clave xpub, ahora he instalado bitcoin core, ¿es esto posible con bitcoin core o también necesito un servidor electrum?

<?php
    //replace with your BIP32 extended public key
    $xpub = "xpub661MyMwAqRbcGTFHLp4c7j2hByE3qAZdN37FqJHTAmSPE2vfL4GAQ4mZvGZz4bVzpfdwoeoEBXWV5g2vWwP";
    $url = "https://api.smartbit.com.au/v1/blockchain/address/".$xpub;
    $fgc = json_decode(file_get_contents($url), true);
    $next = $fgc["address"]["extkey_next_receiving_address"];
    ?>

    <!DOCTYPE html>
    <html>
    <head>
    <script type="text/javascript" src="js/jquery.min.js"></script>
    <script type="text/javascript" src="js/qrcode.js"></script>
    </head>
    <body>
    <center><br>
    <div id="qrcode"></div>
      <script type="text/javascript">
      new QRCode(document.getElementById("qrcode"), "<?php echo $next; ?>");
      </script>
    <br><?php echo $next;?><br>
    </center>
    </body>
    </html>
    <?php

    Print_r($fgc);
    ?>
ese es todo el xpub? Parece demasiado corto. Además, no puedo hacer que se valide.
así que aquí no estás para responder, ¿solo quieres probar xpub? , pregunté cómo hacer esto en el núcleo de bitcoin sin ninguna API, ¿y qué?
Creo que la razón por la que tienes problemas es que el xpub no es válido. Eso significa que tendrá problemas sin importar qué biblioteca use.

Respuestas (1)

Hay bibliotecas php que puedes usar. Por ejemplo, los que están en la dirección de bitcoin de mi complemento en el directorio include/libs. Estas bibliotecas fueron creadas originalmente por los autores del complemento de pagos de bitcoin para woocommerce.

También está la biblioteca bitwasp php , pero es mucho más grande y hace más cosas que simplemente derivar direcciones de xpubs.