1use ckb_types::{core::EpochNumberWithFraction, h256, H256};
2
3pub const PREFIX_MAINNET: &str = "ckb";
4pub const PREFIX_TESTNET: &str = "ckt";
5
6pub const NETWORK_MAINNET: &str = "ckb";
7pub const NETWORK_TESTNET: &str = "ckb_testnet";
8pub const NETWORK_STAGING: &str = "ckb_staging";
9pub const NETWORK_DEV: &str = "ckb_dev";
10
11pub const SECP_SIGNATURE_SIZE: usize = 65;
12
13pub const LOCK_TYPE_FLAG: u64 = 1 << 63;
15pub const METRIC_TYPE_FLAG_MASK: u64 = 0x6000_0000_0000_0000;
16pub const VALUE_MASK: u64 = 0x00ff_ffff_ffff_ffff;
17pub const REMAIN_FLAGS_BITS: u64 = 0x1f00_0000_0000_0000;
18
19pub const SIGHASH_OUTPUT_LOC: (usize, usize) = (0, 1);
21pub const MULTISIG_OUTPUT_LOC: (usize, usize) = (0, 4);
22pub const DAO_OUTPUT_LOC: (usize, usize) = (0, 2);
23pub const SIGHASH_GROUP_OUTPUT_LOC: (usize, usize) = (1, 0);
24pub const MULTISIG_GROUP_OUTPUT_LOC: (usize, usize) = (1, 1);
25
26pub const ONE_CKB: u64 = 100_000_000;
27pub const MIN_SECP_CELL_CAPACITY: u64 = 61 * ONE_CKB;
28pub const CELLBASE_MATURITY: EpochNumberWithFraction =
30 EpochNumberWithFraction::new_unchecked(4, 0, 1);
31
32pub const TYPE_ID_CODE_HASH: H256 = h256!("0x545950455f4944");
34
35pub const SIGHASH_TYPE_HASH: H256 =
36 h256!("0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8");
37pub const MULTISIG_TYPE_HASH: H256 =
38 h256!("0x5c5069eb0857efc65e1bca0c07df34c31663b3622fd3876c876320fc9634e2a8");
39pub const DAO_TYPE_HASH: H256 =
40 h256!("0x82d76d1b75fe2fd9a27dfbaa65a039221a380d76c926f378d3f81cf3e7e13f2e");
41
42pub const ACP_TYPE_HASH_LINA: H256 =
45 h256!("0xd369597ff47f29fbc0d47d2e3775370d1250b85140c670e4718af712983a2354");
46pub const ACP_TYPE_HASH_AGGRON: H256 =
48 h256!("0x3419a1c09eb2567f6552ee7a8ecffd64155cffe0f1796e6e61ec088d740c1356");
49
50pub const CHEQUE_CELL_SINCE: u64 = 0xA000000000000006;
52
53pub const SPORE_TYPE_HASH_LINA: H256 = h256!("0x4a4dce1df3dffff7f8b2cd7dff7303df3b6150c9788cb75dcf6747247132b9f5");
54pub const SPORE_TYPE_HASH_AGGRON: H256 = h256!("0x685a60219309029d01310311dba953d67029170ca4848a4ff638e57002130a0d");