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
// #[cfg(test)]
// mod tests {
// use super::sha256;
// use bitcoin::consensus::encode;
// use bitcoin::hashes::{sha256, Hash, HashEngine};
// use bitcoin::secp256k1::ThirtyTwoByteHash;
// #[test]
// fn test_compute_hash() {
// let data = b"Hello, world!";
// let hash: [u8; 32] = sha256(data);
// assert_eq!(
// hash,
// [
// 49, 95, 91, 219, 118, 208, 120, 196, 59, 138, 192, 6, 78, 74, 1, 100, 97, 43, 31,
// 206, 119, 200, 105, 52, 91, 252, 148, 199, 88, 148, 237, 211
// ]
// );
// }
// #[test]
// fn test_compared_with_signed_msg_hash() {
// let message = "HelloWorld";
// let prefix = b"\x18Bitcoin Signed Message:\n";
// let msg_len = encode::VarInt(message.len() as u64);
// let mut prefixed_message = Vec::with_capacity(prefix.len() + msg_len.len() + message.len());
// prefixed_message.extend_from_slice(prefix);
// let _f: [u8; 1] = [0xFD];
// let msg_len = message.len() as u8;
// prefixed_message.extend_from_slice(&[msg_len]);
// prefixed_message.extend_from_slice(message.as_bytes());
// let mut engine = sha256::Hash::engine();
// engine.input(&prefixed_message[..]);
// let sha_1: [u8; 32] = sha256(prefixed_message.as_slice());
// let sha_2: [u8; 32] = sha256(sha_1.as_slice());
// let hash_2 = bitcoin::sign_message::signed_msg_hash(message);
// assert_eq!(hex::encode(sha_2), hex::encode(hash_2.into_32()));
// }
// }