ethers_core/utils/
moonbeam.rs1use std::collections::BTreeMap;
4
5use generic_array::GenericArray;
6use k256::SecretKey;
7
8pub fn dev_keys() -> Vec<SecretKey> {
10 MoonbeamDev::default().into_keys().collect()
11}
12
13#[derive(Debug, Clone)]
15pub struct MoonbeamDev {
16 keys: BTreeMap<&'static str, SecretKey>,
17}
18
19impl MoonbeamDev {
20 pub fn keys(&self) -> impl Iterator<Item = &SecretKey> {
21 self.keys.values()
22 }
23
24 pub fn into_keys(self) -> impl Iterator<Item = SecretKey> {
25 self.keys.into_values()
26 }
27
28 pub fn get(&self, name: impl AsRef<str>) -> Option<&SecretKey> {
30 self.keys.get(name.as_ref())
31 }
32
33 pub fn alith(&self) -> &SecretKey {
34 self.get("Alith").unwrap()
35 }
36
37 pub fn baltathar(&self) -> &SecretKey {
38 self.get("Baltathar").unwrap()
39 }
40
41 pub fn charleth(&self) -> &SecretKey {
42 self.get("Charleth").unwrap()
43 }
44
45 pub fn ethan(&self) -> &SecretKey {
46 self.get("Ethan").unwrap()
47 }
48}
49
50fn to_secret_key(s: &str) -> SecretKey {
51 SecretKey::from_bytes(&GenericArray::clone_from_slice(&hex::decode(s).unwrap())).unwrap()
52}
53
54impl Default for MoonbeamDev {
55 fn default() -> Self {
56 Self {
57 keys: BTreeMap::from([
58 (
59 "Alith",
60 to_secret_key(
61 "5fb92d6e98884f76de468fa3f6278f8807c48bebc13595d45af5bdc4da702133",
62 ),
63 ),
64 (
65 "Baltathar",
66 to_secret_key(
67 "8075991ce870b93a8870eca0c0f91913d12f47948ca0fd25b49c6fa7cdbeee8b",
68 ),
69 ),
70 (
71 "Charleth",
72 to_secret_key(
73 "0b6e18cafb6ed99687ec547bd28139cafdd2bffe70e6b688025de6b445aa5c5b",
74 ),
75 ),
76 (
77 "Dorothy",
78 to_secret_key(
79 "39539ab1876910bbf3a223d84a29e28f1cb4e2e456503e7e91ed39b2e7223d68",
80 ),
81 ),
82 (
83 "Faith",
84 to_secret_key(
85 "b9d2ea9a615f3165812e8d44de0d24da9bbd164b65c4f0573e1ce2c8dbd9c8df",
86 ),
87 ),
88 (
89 "Goliath",
90 to_secret_key(
91 "96b8a38e12e1a31dee1eab2fffdf9d9990045f5b37e44d8cc27766ef294acf18",
92 ),
93 ),
94 (
95 "Heath",
96 to_secret_key(
97 "0d6dcaaef49272a5411896be8ad16c01c35d6f8c18873387b71fbc734759b0ab",
98 ),
99 ),
100 (
101 "Ida",
102 to_secret_key(
103 "4c42532034540267bf568198ccec4cb822a025da542861fcb146a5fab6433ff8",
104 ),
105 ),
106 (
107 "Judith",
108 to_secret_key(
109 "94c49300a58d576011096bcb006aa06f5a91b34b4383891e8029c21dc39fbb8b",
110 ),
111 ),
112 ]),
113 }
114 }
115}