Skip to content

Commit 5d2149f

Browse files
committed
Merge #722: Truncate secret hash
3d1ce0d Truncate secret hash using precision (Tobin C. Harding) 4b143d6 Remove bitcoin_hashes range dependency (Tobin C. Harding) Pull request description: The `core::hash::Hasher` and `bitcoin_hashes` hash types implement formatting traits slightly differently - We default to displaying in hex but `core` defaults to using base 10 - We truncate with precision not width parameter but core truncates with both Anywho, this PR fixes the secret display truncation. ACKs for top commit: Kixunil: ACK 3d1ce0d apoelstra: ACK 3d1ce0d successfully ran local tests Tree-SHA512: f4f15c084f33bf270eab7b578891b50aa743caac12eb0cc3f7ced8fce2df2af93fcca859a2bc0a50396434514fad63368cd81753b8634a41dc3da996d1b1996c
2 parents 789f384 + 3d1ce0d commit 5d2149f

File tree

4 files changed

+36
-18
lines changed

4 files changed

+36
-18
lines changed

Cargo-minimal.lock

+17-8
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@
22
# It is not intended for manual editing.
33
version = 3
44

5+
[[package]]
6+
name = "arrayvec"
7+
version = "0.7.6"
8+
source = "registry+https://github.com/rust-lang/crates.io-index"
9+
checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
10+
511
[[package]]
612
name = "base-x"
713
version = "0.2.0"
@@ -18,18 +24,18 @@ dependencies = [
1824
]
1925

2026
[[package]]
21-
name = "bitcoin-internals"
22-
version = "0.2.0"
27+
name = "bitcoin-io"
28+
version = "0.1.2"
2329
source = "registry+https://github.com/rust-lang/crates.io-index"
24-
checksum = "9425c3bf7089c983facbae04de54513cce73b41c7f9ff8c845b54e7bc64ebbfb"
30+
checksum = "340e09e8399c7bd8912f495af6aa58bea0c9214773417ffaa8f6460f93aaee56"
2531

2632
[[package]]
2733
name = "bitcoin_hashes"
28-
version = "0.13.0"
34+
version = "0.14.0"
2935
source = "registry+https://github.com/rust-lang/crates.io-index"
30-
checksum = "1930a4dabfebb8d7d9992db18ebe3ae2876f0a305fab206fd168df931ede293b"
36+
checksum = "bb18c03d0db0247e147a21a6faafd5a7eb851c743db062de72018b6b7e8e4d16"
3137
dependencies = [
32-
"bitcoin-internals",
38+
"bitcoin-io",
3339
"hex-conservative",
3440
]
3541

@@ -106,9 +112,12 @@ checksum = "ee6c0438de3ca4d8cac2eec62b228e2f8865cfe9ebefea720406774223fa2d2e"
106112

107113
[[package]]
108114
name = "hex-conservative"
109-
version = "0.1.1"
115+
version = "0.2.1"
110116
source = "registry+https://github.com/rust-lang/crates.io-index"
111-
checksum = "30ed443af458ccb6d81c1e7e661545f94d3176752fb1df2f543b902a1e0f51e2"
117+
checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd"
118+
dependencies = [
119+
"arrayvec",
120+
]
112121

113122
[[package]]
114123
name = "hex_lit"

Cargo-recent.lock

+17-8
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@
22
# It is not intended for manual editing.
33
version = 3
44

5+
[[package]]
6+
name = "arrayvec"
7+
version = "0.7.6"
8+
source = "registry+https://github.com/rust-lang/crates.io-index"
9+
checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
10+
511
[[package]]
612
name = "bincode"
713
version = "1.3.3"
@@ -12,18 +18,18 @@ dependencies = [
1218
]
1319

1420
[[package]]
15-
name = "bitcoin-internals"
16-
version = "0.2.0"
21+
name = "bitcoin-io"
22+
version = "0.1.2"
1723
source = "registry+https://github.com/rust-lang/crates.io-index"
18-
checksum = "9425c3bf7089c983facbae04de54513cce73b41c7f9ff8c845b54e7bc64ebbfb"
24+
checksum = "340e09e8399c7bd8912f495af6aa58bea0c9214773417ffaa8f6460f93aaee56"
1925

2026
[[package]]
2127
name = "bitcoin_hashes"
22-
version = "0.13.0"
28+
version = "0.14.0"
2329
source = "registry+https://github.com/rust-lang/crates.io-index"
24-
checksum = "1930a4dabfebb8d7d9992db18ebe3ae2876f0a305fab206fd168df931ede293b"
30+
checksum = "bb18c03d0db0247e147a21a6faafd5a7eb851c743db062de72018b6b7e8e4d16"
2531
dependencies = [
26-
"bitcoin-internals",
32+
"bitcoin-io",
2733
"hex-conservative",
2834
]
2935

@@ -82,9 +88,12 @@ checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
8288

8389
[[package]]
8490
name = "hex-conservative"
85-
version = "0.1.1"
91+
version = "0.2.1"
8692
source = "registry+https://github.com/rust-lang/crates.io-index"
87-
checksum = "30ed443af458ccb6d81c1e7e661545f94d3176752fb1df2f543b902a1e0f51e2"
93+
checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd"
94+
dependencies = [
95+
"arrayvec",
96+
]
8897

8998
[[package]]
9099
name = "hex_lit"

Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ global-context-less-secure = ["global-context"]
3737
secp256k1-sys = { version = "0.10.0", default-features = false, path = "./secp256k1-sys" }
3838
serde = { version = "1.0.103", default-features = false, optional = true }
3939

40-
hashes = { package = "bitcoin_hashes", version = ">= 0.12, <= 0.14", default-features = false, optional = true }
40+
hashes = { package = "bitcoin_hashes", version = "0.14", default-features = false, optional = true }
4141
rand = { version = "0.8", default-features = false, optional = true }
4242

4343
[dev-dependencies]

src/secret.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ macro_rules! impl_display_secret {
4646
engine.input(&self.secret_bytes());
4747
let hash = sha256::Hash::from_engine(engine);
4848

49-
f.debug_tuple(stringify!($thing)).field(&format_args!("#{:016x}", hash)).finish()
49+
f.debug_tuple(stringify!($thing)).field(&format_args!("#{:.16}", hash)).finish()
5050
}
5151
}
5252

0 commit comments

Comments
 (0)