- Move ledger/btc specific code to
ledger/
directory. - Rename
bcoin
toledgerbcoin
- Add
managed-ledgerbcoin
that will open/close device for you. - Minor:
- Add logger/logs to ledger.
- Describe more types.
- use bsert for everything.
- Drop
u2f
support. - Replace
node-hid
withusb
(busb
). - Add WebUSB Support (
busb
) - Switch to
busb
that uses:usb
for node.js andwebusb
for browser. - Add
webauthn
backend. - remove
DeviceInfo
class. - Minor:
- Separate error types
isSupported
andensureSupport
are strictly async (both backends webauthn, usb).
getFirmwareVersion()
- output of this may changegetOperationMode()
andsetOperationMode
randomBytes(size)
- get random bytes from ledger (Up to 255 bytes)getFingerPrint(path)
- get fingerprint of the path.signMessage(message)
- will return signature wrapped inLedgerSignature
.verifyMessage(path, message, signature)
- verify message using public key from ledger.LedgerSignature
helper that has several serialization methods:fromLedgerSignature/toLedgerSignature
- DER with first byte having recidfromDER/toDER
- DER encoded signature.decode/encode
- Just R/S encoding.fromCoreSignature/toCoreSignature
- Bitcoin signed message encodingverifyMessage(msg, publicKey, prefix = BITCOIN_MAGIC)
- verify message.verify(hash, publicKey)
- verify hash.recoverMessage(msg, compress = true, prefix = BITCOIN_MAGIC)
- recover public key from message and signature.recover(hash, compress = true)
- recover public key from hash and sig.
getPublicKey(path, addressFlags = 0)
changed togetPublicKey(path, parentFingerPrint = false, addressFlags = 0)
parentFingerPrint = 1
will return parentFingerprint withHDPublicKey
object.
- Removed karma in favor of
bmocha
.