breez-sdk
breez-sdk copied to clipboard
Implement lnurl auth signer
This PR changes the lnurl auth functionality to support signers that don't expose private keys. Instead of passing the private key (linking key) to the lnurl module for signing the lnurl module expect a signer implementation with some basic building blocks for siginig and deriving public keys. Also the caller now doesn't need to have a knowledge about the lnurl auth internals (constructing the linking key for example) as the lnurl module takes care of it. This is needed in order also to support splitting the signer from the sdk implementation in breez-ask-liquid project.