1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
//! # Bitcoin keys
//!
//! Types and traits for managing Bitcoin keys.
//!
//! ## About
//!
//! The Bitcoin protocol deals with multiple formats and contexts of keys.
//! There are legacy ECDSA keys that may or may not be compressed, X-only (Taproot) keys, private keys, etc.
//! To avoid mixing them, this library provides multiple newtypes and
//! additional infrastructure aiding with conversions, parsing, serializing...
//!
//! The crate is `no_std` and doesn't require an allocator.
extern crate alloc;
extern crate std;
pub use ;
pub use ;
/// Public key that may be serialized as uncompressed, used in legacy addresses only.
///
/// You probably want to use this alias instead of explicitly writing out the type.
pub type LegacyPublicKey = Legacy;
/// Public key that is always serialized as compressed.
///
/// You probably want to use this alias instead of explicitly writing out the type.
pub type CompressedPublicKey = Compressed;
/// Private key that may be serialized as uncompressed, used in legacy addresses only.
///
/// You probably want to use this alias instead of explicitly writing out the type.
pub type LegacyPrivateKey = Legacy;
/// Private key that is always serialized as compressed.
///
/// You probably want to use this alias instead of explicitly writing out the type.
pub type CompressedPrivateKey = Compressed;
/// Key pair that may be serialized as uncompressed, used in legacy addresses only.
///
/// You probably want to use this alias instead of explicitly writing out the type.
pub type LegacyKeyPair = Legacy;
/// Key pair that is always serialized as compressed.
///
/// You probably want to use this alias instead of explicitly writing out the type.
pub type CompressedKeyPair = Compressed;