Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data RootPrv
- data RootPub
- data RootKeyId
- data External a
- data Internal a
- data ChildPair
- data ChildPub
- type ExtPub = External ChildPub
- type ExtPrv = External ChildPair
- createRootPrv :: ByteString -> RootPrv
- fromRootPrv :: RootPrv -> RootPub
- class IsChildKey sourceKey t k derivPath | t -> derivPath where
- class HasKey t k key derivPath | t -> derivPath where
- data KeyDeriveIndex
- class HasKeyIndex a where
- keyId :: HasKeyId rk => rk -> RootKeyId
- fromExternalPair :: External ChildPair -> External ChildPub
- type SoftPath = DerivPathI Soft
- type HardPath = DerivPathI Hard
Key types
Source of all other key types
Generic RootPrv Source # | |
ToJSON RootPrv Source # | |
FromJSON RootPrv Source # | |
Serialize RootPrv Source # | |
NFData RootPrv Source # | |
DerivationSeed r => HasSigningKey RootPrv r Source # | |
IsChildKey RootPrv Internal ChildPair HardPath Source # | |
IsChildKey RootPrv External ChildPub SoftPath Source # | |
IsChildKey RootPrv External ChildPair SoftPath Source # | |
DerivationSeed r => DeriveChangeOut (SigSinglePair t r sd) (TxFee, DustPolicy) RootPrv r Source # | |
type Rep RootPrv Source # | |
The public counterpart of a RootPrv
Unique ID for a 'RootPrv'/'RootPub' pair
A key pair where the public part can be derived without knowledge of the private part (not safe if a single derived private key is exposed)
Functor External Source # | |
HasKey External ChildPub XPubKey SoftPath Source # | |
HasKey External ChildPub PubKeyC SoftPath Source # | |
HasKey External ChildPub Address SoftPath Source # | |
HasKey External ChildPair XPubKey SoftPath Source # | |
HasKey External ChildPair PubKeyC SoftPath Source # | |
HasKey External ChildPair PrvKeyC SoftPath Source # | |
HasKey External ChildPair Address SoftPath Source # | |
IsChildKey RootPub External ChildPub SoftPath Source # | |
IsChildKey RootPrv External ChildPub SoftPath Source # | |
IsChildKey RootPrv External ChildPair SoftPath Source # | |
HasKey External ChildPair (PrvKeyC, XPubKey) SoftPath Source # | |
Eq a => Eq (External a) Source # | |
Show a => Show (External a) Source # | |
Generic (External a) Source # | |
ToJSON a => ToJSON (External a) Source # | |
FromJSON a => FromJSON (External a) Source # | |
Serialize a => Serialize (External a) Source # | |
NFData a => NFData (External a) Source # | |
type Rep (External a) Source # | |
A key pair where the public part cannot be derived without knowledge of the private part (safe if a single derived private key is exposed)
Functor Internal Source # | |
HasKey Internal ChildPair XPubKey HardPath Source # | |
HasKey Internal ChildPair PubKeyC HardPath Source # | |
HasKey Internal ChildPair PrvKeyC HardPath Source # | |
HasKey Internal ChildPair Address HardPath Source # | |
IsChildKey RootPrv Internal ChildPair HardPath Source # | |
HasKey Internal ChildPair (PrvKeyC, XPubKey) HardPath Source # | |
Eq a => Eq (Internal a) Source # | |
Show a => Show (Internal a) Source # | |
Generic (Internal a) Source # | |
Serialize a => Serialize (Internal a) Source # | |
NFData a => NFData (Internal a) Source # | |
type Rep (Internal a) Source # | |
Key pair, containing both private and public extended keys.
Derive subkeys using getKey
Public part only of a ChildPair
createRootPrv :: ByteString -> RootPrv Source #
fromRootPrv :: RootPrv -> RootPub Source #
Child key operations
class IsChildKey sourceKey t k derivPath | t -> derivPath where Source #
class HasKey t k key derivPath | t -> derivPath where Source #
Get a key of type key
from an 'Internal'/'External' 'ChildPub'/'ChildPair'
data KeyDeriveIndex Source #
Key index for a BIP32 child key
class HasKeyIndex a where Source #
getKeyIndex :: a -> KeyDeriveIndex Source #
Util
Re-exports
type SoftPath = DerivPathI Soft #
type HardPath = DerivPathI Hard #