Compare commits
No commits in common. "main" and "cosmos-add-ghosties" have entirely different histories.
main
...
cosmos-add
16
Cargo.lock
generated
16
Cargo.lock
generated
@ -1186,7 +1186,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "casper-runtime"
|
name = "casper-runtime"
|
||||||
version = "3.5.19"
|
version = "3.5.17"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"casper-runtime-constants",
|
"casper-runtime-constants",
|
||||||
"frame-benchmarking",
|
"frame-benchmarking",
|
||||||
@ -3528,7 +3528,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ghost-cli"
|
name = "ghost-cli"
|
||||||
version = "0.7.180"
|
version = "0.7.178"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
"clap 4.5.4",
|
"clap 4.5.4",
|
||||||
@ -3584,7 +3584,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ghost-machine-primitives"
|
name = "ghost-machine-primitives"
|
||||||
version = "0.7.180"
|
version = "0.7.178"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"lazy_static",
|
"lazy_static",
|
||||||
"sc-sysinfo",
|
"sc-sysinfo",
|
||||||
@ -3593,7 +3593,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ghost-metrics"
|
name = "ghost-metrics"
|
||||||
version = "0.7.180"
|
version = "0.7.178"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"assert_cmd",
|
"assert_cmd",
|
||||||
"bs58 0.5.1",
|
"bs58 0.5.1",
|
||||||
@ -3648,7 +3648,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ghost-networks"
|
name = "ghost-networks"
|
||||||
version = "0.7.180"
|
version = "0.7.178"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"frame-benchmarking",
|
"frame-benchmarking",
|
||||||
"frame-support",
|
"frame-support",
|
||||||
@ -3665,7 +3665,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ghost-node"
|
name = "ghost-node"
|
||||||
version = "0.7.180"
|
version = "0.7.178"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"assert_cmd",
|
"assert_cmd",
|
||||||
"color-eyre",
|
"color-eyre",
|
||||||
@ -3696,7 +3696,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ghost-rpc"
|
name = "ghost-rpc"
|
||||||
version = "0.7.180"
|
version = "0.7.178"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ghost-core-primitives",
|
"ghost-core-primitives",
|
||||||
"jsonrpsee",
|
"jsonrpsee",
|
||||||
@ -3748,7 +3748,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ghost-service"
|
name = "ghost-service"
|
||||||
version = "0.7.180"
|
version = "0.7.178"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"assert_matches",
|
"assert_matches",
|
||||||
"async-trait",
|
"async-trait",
|
||||||
|
@ -17,7 +17,7 @@ homepage.workspace = true
|
|||||||
[workspace.package]
|
[workspace.package]
|
||||||
license = "GPL-3.0-only"
|
license = "GPL-3.0-only"
|
||||||
authors = ["571nky", "57r37ch", "f4750"]
|
authors = ["571nky", "57r37ch", "f4750"]
|
||||||
version = "0.7.180"
|
version = "0.7.178"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
homepage = "https://ghostchain.io"
|
homepage = "https://ghostchain.io"
|
||||||
repository = "https://git.ghostchain.io/ghostchain/ghost-node"
|
repository = "https://git.ghostchain.io/ghostchain/ghost-node"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "ghost-cli"
|
name = "ghost-cli"
|
||||||
description = "Implementation of the Ghost Client Node in Rust"
|
description = "Ghost Client Node"
|
||||||
version.workspace = true
|
version.workspace = true
|
||||||
edition.workspace = true
|
edition.workspace = true
|
||||||
authors.workspace = true
|
authors.workspace = true
|
||||||
|
@ -29,7 +29,7 @@ impl SubstrateCli for Cli {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn impl_version() -> String {
|
fn impl_version() -> String {
|
||||||
env!("SUBSTRATE_CLI_IMPL_VERSION").into()
|
env!("CARGO_PKG_DESCRIPTION").into()
|
||||||
}
|
}
|
||||||
|
|
||||||
fn description() -> String {
|
fn description() -> String {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "casper-runtime"
|
name = "casper-runtime"
|
||||||
version = "3.5.19"
|
version = "3.5.17"
|
||||||
build = "build.rs"
|
build = "build.rs"
|
||||||
description = "Runtime of the Casper Network"
|
description = "Runtime of the Casper Network"
|
||||||
edition.workspace = true
|
edition.workspace = true
|
||||||
|
@ -1,6 +1,4 @@
|
|||||||
use codec::Encode;
|
use codec::Encode;
|
||||||
use pallet_staking::Forcing;
|
|
||||||
use sp_staking::StakerStatus;
|
|
||||||
|
|
||||||
use crate::{opaque::SessionKeys, BABE_GENESIS_EPOCH_CONFIG};
|
use crate::{opaque::SessionKeys, BABE_GENESIS_EPOCH_CONFIG};
|
||||||
use primitives::{AccountId, AccountPublic};
|
use primitives::{AccountId, AccountPublic};
|
||||||
@ -16,7 +14,7 @@ use sp_std::alloc::format;
|
|||||||
use sp_std::vec::Vec;
|
use sp_std::vec::Vec;
|
||||||
use sp_std::prelude::*;
|
use sp_std::prelude::*;
|
||||||
use sp_core::{sr25519, Pair, Public};
|
use sp_core::{sr25519, Pair, Public};
|
||||||
use sp_runtime::{Perbill, traits::IdentifyAccount};
|
use sp_runtime::traits::IdentifyAccount;
|
||||||
|
|
||||||
#[derive(Encode, Clone)]
|
#[derive(Encode, Clone)]
|
||||||
struct PreparedNetworkData {
|
struct PreparedNetworkData {
|
||||||
@ -64,7 +62,7 @@ fn get_authority_keys_from_seed(
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn casper_testnet_accounts() -> Vec<AccountId> {
|
fn testnet_accounts() -> Vec<AccountId> {
|
||||||
Vec::from([
|
Vec::from([
|
||||||
get_account_id_from_seed::<sr25519::Public>("Alice"),
|
get_account_id_from_seed::<sr25519::Public>("Alice"),
|
||||||
get_account_id_from_seed::<sr25519::Public>("Bob"),
|
get_account_id_from_seed::<sr25519::Public>("Bob"),
|
||||||
@ -81,7 +79,7 @@ fn casper_testnet_accounts() -> Vec<AccountId> {
|
|||||||
])
|
])
|
||||||
}
|
}
|
||||||
|
|
||||||
fn casper_testnet_evm_accounts() -> Vec<(AccountId, u128, u8)> {
|
fn testnet_evm_accounts() -> Vec<(AccountId, u128, u8)> {
|
||||||
vec![
|
vec![
|
||||||
// 01c928771aea942a1e7ac06adf2b73dfbc9a25d9eaa516e3673116af7f345198
|
// 01c928771aea942a1e7ac06adf2b73dfbc9a25d9eaa516e3673116af7f345198
|
||||||
(get_account_id_from_seed::<sr25519::Public>("1A69d2D5568D1878023EeB121a73d33B9116A760"), 1337 * CSPR, 1),
|
(get_account_id_from_seed::<sr25519::Public>("1A69d2D5568D1878023EeB121a73d33B9116A760"), 1337 * CSPR, 1),
|
||||||
@ -94,7 +92,7 @@ fn casper_testnet_evm_accounts() -> Vec<(AccountId, u128, u8)> {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
fn casper_testnet_evm_networks() -> Vec<(u32, Vec<u8>)> {
|
fn testnet_evm_networks() -> Vec<(u32, Vec<u8>)> {
|
||||||
vec![
|
vec![
|
||||||
(1, PreparedNetworkData {
|
(1, PreparedNetworkData {
|
||||||
chain_name: "ethereum-mainnet".into(),
|
chain_name: "ethereum-mainnet".into(),
|
||||||
@ -130,7 +128,7 @@ fn casper_session_keys(
|
|||||||
SessionKeys { babe, grandpa, authority_discovery, slow_clap }
|
SessionKeys { babe, grandpa, authority_discovery, slow_clap }
|
||||||
}
|
}
|
||||||
|
|
||||||
fn testnet_config_genesis(
|
fn casper_testnet_genesis(
|
||||||
initial_authorities: Vec<(
|
initial_authorities: Vec<(
|
||||||
AccountId,
|
AccountId,
|
||||||
AccountId,
|
AccountId,
|
||||||
@ -144,16 +142,15 @@ fn testnet_config_genesis(
|
|||||||
evm_networks: Option<Vec<(u32, Vec<u8>)>>,
|
evm_networks: Option<Vec<(u32, Vec<u8>)>>,
|
||||||
) -> serde_json::Value {
|
) -> serde_json::Value {
|
||||||
let endowed_accounts: Vec<AccountId> =
|
let endowed_accounts: Vec<AccountId> =
|
||||||
endowed_accounts.unwrap_or_else(casper_testnet_accounts);
|
endowed_accounts.unwrap_or_else(testnet_accounts);
|
||||||
|
|
||||||
let ghost_accounts: Vec<(AccountId, u128, u8)> =
|
let ghost_accounts: Vec<(AccountId, u128, u8)> =
|
||||||
ghost_accounts.unwrap_or_else(casper_testnet_evm_accounts);
|
ghost_accounts.unwrap_or_else(testnet_evm_accounts);
|
||||||
|
|
||||||
let evm_networks: Vec<(u32, Vec<u8>)> =
|
let evm_networks: Vec<(u32, Vec<u8>)> =
|
||||||
evm_networks.unwrap_or_else(casper_testnet_evm_networks);
|
evm_networks.unwrap_or_else(testnet_evm_networks);
|
||||||
|
|
||||||
const ENDOWMENT: u128 = 1_000 * CSPR;
|
const ENDOWMENT: u128 = 1_000 * CSPR;
|
||||||
const STASH: u128 = 500 * CSPR;
|
|
||||||
|
|
||||||
serde_json::json!({
|
serde_json::json!({
|
||||||
"balances": {
|
"balances": {
|
||||||
@ -182,20 +179,6 @@ fn testnet_config_genesis(
|
|||||||
})
|
})
|
||||||
.collect::<Vec<_>>(),
|
.collect::<Vec<_>>(),
|
||||||
},
|
},
|
||||||
"staking": {
|
|
||||||
"validatorCount": initial_authorities.len() as u32,
|
|
||||||
"minimumValidatorCount": 1,
|
|
||||||
"invulnerables": initial_authorities
|
|
||||||
.iter()
|
|
||||||
.map(|x| x.0.clone())
|
|
||||||
.collect::<Vec<_>>(),
|
|
||||||
"forceEra": Forcing::NotForcing,
|
|
||||||
"slashRewardFraction": Perbill::from_percent(10),
|
|
||||||
"stakers": initial_authorities
|
|
||||||
.iter()
|
|
||||||
.map(|x| (x.0.clone(), x.0.clone(), STASH, StakerStatus::<AccountId>::Validator))
|
|
||||||
.collect::<Vec<_>>(),
|
|
||||||
},
|
|
||||||
"babe": {
|
"babe": {
|
||||||
"epochConfig": Some(BABE_GENESIS_EPOCH_CONFIG),
|
"epochConfig": Some(BABE_GENESIS_EPOCH_CONFIG),
|
||||||
},
|
},
|
||||||
@ -216,7 +199,7 @@ fn testnet_config_genesis(
|
|||||||
|
|
||||||
// development
|
// development
|
||||||
fn casper_development_config_genesis() -> serde_json::Value {
|
fn casper_development_config_genesis() -> serde_json::Value {
|
||||||
testnet_config_genesis(
|
casper_testnet_genesis(
|
||||||
vec![get_authority_keys_from_seed("Alice")],
|
vec![get_authority_keys_from_seed("Alice")],
|
||||||
None, None, None,
|
None, None, None,
|
||||||
)
|
)
|
||||||
@ -224,7 +207,7 @@ fn casper_development_config_genesis() -> serde_json::Value {
|
|||||||
|
|
||||||
// local
|
// local
|
||||||
fn casper_local_config_genesis() -> serde_json::Value {
|
fn casper_local_config_genesis() -> serde_json::Value {
|
||||||
testnet_config_genesis(
|
casper_testnet_genesis(
|
||||||
vec![
|
vec![
|
||||||
get_authority_keys_from_seed("Alice"),
|
get_authority_keys_from_seed("Alice"),
|
||||||
get_authority_keys_from_seed("Bob"),
|
get_authority_keys_from_seed("Bob"),
|
||||||
|
@ -1,38 +0,0 @@
|
|||||||
[Unit]
|
|
||||||
Description=Ghost Node
|
|
||||||
After=network.target
|
|
||||||
Documentation=https://git.ghostchain.io/ghostchain/ghost-node
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
EnvironmentFile=-/etc/default/ghost
|
|
||||||
ExecStart=/usr/bin/ghost $GHOST_CLI_ARGS
|
|
||||||
ReadWritePaths=/var/lib/ghost
|
|
||||||
User=ghost
|
|
||||||
Restart=always
|
|
||||||
RestartSec=30
|
|
||||||
CapabilityBoundingSet=
|
|
||||||
LockPersonality=true
|
|
||||||
NoNewPrivileges=true
|
|
||||||
PrivateDevices=true
|
|
||||||
PrivateMounts=true
|
|
||||||
PrivateTmp=true
|
|
||||||
PrivateUsers=true
|
|
||||||
ProtectClock=true
|
|
||||||
ProtectControlGroups=true
|
|
||||||
ProtectHostname=true
|
|
||||||
ProtectKernelModules=true
|
|
||||||
ProtectKernelTunables=true
|
|
||||||
ProtectSystem=strict
|
|
||||||
RemoveIPC=true
|
|
||||||
RestrictAddressFamilies=AF_INET AF_INET6 AF_NETLINK AF_UNIX
|
|
||||||
RestrictNamespaces=false
|
|
||||||
RestrictSUIDSGID=true
|
|
||||||
SystemCallArchitectures=native
|
|
||||||
SystemCallFilter=@system-service
|
|
||||||
SystemCallFilter=landlock_add_rule landlock_create_ruleset landlock_restrict_self seccomp mount umount2
|
|
||||||
SystemCallFilter=~@clock @module @reboot @swap @privileged
|
|
||||||
SystemCallFilter=pivot_root
|
|
||||||
UMask=0027
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=multi-user.target
|
|
@ -1,46 +1,48 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
current_path=$(pwd)
|
if [ "$#" -ne 1 ]; then
|
||||||
current_script=$(realpath "$0")
|
echo "Please provide the number of initial validators!"
|
||||||
script_folder=$(dirname "$current_script")
|
exit 1
|
||||||
project_folder=("$script_folder/..")
|
fi
|
||||||
|
|
||||||
num_ghosties=$(grep "Local identity" $project_folder/service/ghosties | wc -l)
|
generate_account_id() {
|
||||||
echo "let endowed_accounts = vec!["
|
./target/release/ghostkey inspect ${3:-} ${4:-} "$SECRET//$1//$2" | grep "Account ID" | awk '{ print $3 }'
|
||||||
for num in $(seq 2 $num_ghosties); do
|
|
||||||
account_id=$(grep -m $num "wallet" $project_folder/service/ghosties | tail -n 1 | awk '{ print $6 }')
|
|
||||||
public_key=$(ghost key inspect $account_id --public | grep "SS58 Address" | awk '{ print $3 }')
|
|
||||||
echo -e "\t// $public_key"
|
|
||||||
echo -e "\thex![\"${account_id:2}\"].into(),"
|
|
||||||
done
|
|
||||||
echo "];"
|
|
||||||
echo -e "\n"
|
|
||||||
|
|
||||||
print_session_key() {
|
|
||||||
echo -e "\t\t// $1"
|
|
||||||
echo -e "\t\thex![\"${2:2}\"].$3(),"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "let initial_authorities: Vec<("
|
generate_address() {
|
||||||
echo -e "\tAccountId,"
|
./target/release/ghostkey inspect ${3:-} ${4:-} "$SECRET//$1//$2" | grep "SS58 Address" | awk '{ print $3 }'
|
||||||
echo -e "\tAccountId,"
|
}
|
||||||
echo -e "\tBabeId,"
|
|
||||||
echo -e "\tGrandpaId,"
|
generate_public_key() {
|
||||||
echo -e "\tAuthorityDiscoveryId,"
|
./target/release/ghostkey inspect ${3:-} ${4:-} "$SECRET//$1//$2" | grep "Public key (hex)" | awk '{ print $4 }'
|
||||||
echo -e "\tSlowClapId,"
|
}
|
||||||
echo ")> = vec!["
|
|
||||||
for num in $(seq 2 $num_ghosties); do
|
generate_address_and_account_id() {
|
||||||
echo -e "\t("
|
ACCOUNT=$(generate_account_id $1 $2 $3)
|
||||||
for key_word in $(echo stash stash babe gran audi slow); do
|
ADDRESS=$(generate_address $1 $2 $3)
|
||||||
account_id=$(grep -m $num $key_word $project_folder/service/ghosties | tail -n 1 | awk '{ print $7 }')
|
if ${4:-false}; then
|
||||||
public_key=$(ghost key inspect $account_id --public | grep "SS58 Address" | awk '{ print $3 }')
|
INTO="unchecked_into"
|
||||||
postfix="unchecked_into"
|
else
|
||||||
if [ $key_word = "stash" ]; then
|
INTO="into"
|
||||||
postfix="into"
|
|
||||||
fi
|
fi
|
||||||
print_session_key $public_key $account_id $postfix
|
|
||||||
|
printf "//$ADDRESS\nhex![\"${ACCOUNT#'0x'}\"].$INTO(),"
|
||||||
|
}
|
||||||
|
|
||||||
|
V_NUM=$1
|
||||||
|
|
||||||
|
AUTHORITIES=""
|
||||||
|
|
||||||
|
for i in $(seq 1 $V_NUM); do
|
||||||
|
AUTHORITIES+="(\n"
|
||||||
|
AUTHORITIES+="$(generate_address_and_account_id $i stash)\n"
|
||||||
|
AUTHORITIES+="$(generate_address_and_account_id $i controller)\n"
|
||||||
|
AUTHORITIES+="$(generate_address_and_account_id $i babe '--scheme sr25519' true)\n"
|
||||||
|
AUTHORITIES+="$(generate_address_and_account_id $i grandpa '--scheme ed25519' true)\n"
|
||||||
|
AUTHORITIES+="$(generate_address_and_account_id $i authority_discovery '--scheme sr25519' true)\n"
|
||||||
|
AUTHORITIES+="$(generate_address_and_account_id $i slow_clap '--scheme sr25519' true)\n"
|
||||||
|
AUTHORITIES+="),\n"
|
||||||
done
|
done
|
||||||
echo -e "\t),"
|
|
||||||
done
|
printf "$AUTHORITIES"
|
||||||
echo "];"
|
|
||||||
|
@ -1,418 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -Ee
|
|
||||||
|
|
||||||
CHECK_KEYS=false
|
|
||||||
INSERT_KEYS=false
|
|
||||||
UNIT_FILE=false
|
|
||||||
SKIP_BUILD=false
|
|
||||||
SET_ENVIRONMENT=false
|
|
||||||
EXECUTABLE_PATH="/usr/bin/"
|
|
||||||
SPECIFICATION_PATH="/etc/ghost/"
|
|
||||||
BASE_PATH="/var/lib/ghost"
|
|
||||||
SPECIFICATION_NAME="casper"
|
|
||||||
TARGET="release"
|
|
||||||
|
|
||||||
CURRENT_PATH=$(pwd)
|
|
||||||
CURRENT_SCRIPT=$(realpath "$0")
|
|
||||||
SCRIPT_FOLDER=$(dirname "$CURRENT_SCRIPT")
|
|
||||||
PROJECT_FOLDER=("$SCRIPT_FOLDER/..")
|
|
||||||
|
|
||||||
final() {
|
|
||||||
cd $CURRENT_PATH
|
|
||||||
if [[ $1 -eq 1 ]]; then
|
|
||||||
echo "[-] error occured during execution"
|
|
||||||
else
|
|
||||||
echo "[+] execution finished"
|
|
||||||
fi
|
|
||||||
exit $1
|
|
||||||
}
|
|
||||||
|
|
||||||
prompt() {
|
|
||||||
while true; do
|
|
||||||
printf "$1 [y/N]: "
|
|
||||||
read yn
|
|
||||||
case $yn in
|
|
||||||
[Yy]* ) return 0;;
|
|
||||||
* ) return 1;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
sanity_check() {
|
|
||||||
secret_seed=$(ghost key inspect --scheme="$1" "$2" | grep "Secret seed" | awk '{ print $3 }')
|
|
||||||
account_id=$(ghost key inspect --scheme="$1" "$2" | grep "Account ID" | awk '{ print $3 }')
|
|
||||||
|
|
||||||
echo "[+] inspected account id for $3: $account_id"
|
|
||||||
num_keys=$(grep $account_id "$PROJECT_FOLDER/service/ghosties" | wc -l)
|
|
||||||
num_types=$(grep $account_id "$PROJECT_FOLDER/service/ghosties" | grep $3 | wc -l)
|
|
||||||
if [ $num_keys = 1 ] && [ $num_types = 1 ]; then
|
|
||||||
echo "[+] local $3 key found in 'ghosties' with correct key type"
|
|
||||||
else
|
|
||||||
echo "[-] inspected account id not found on 'ghosties' file or wrong key type"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
genesis_check() {
|
|
||||||
secret_seed=$(ghost key inspect --scheme="$1" "$2" | grep "Secret seed" | awk '{ print $3 }')
|
|
||||||
account_id=$(ghost key inspect --scheme="$1" "$2" | grep "Account ID" | awk '{ print $3 }')
|
|
||||||
|
|
||||||
num_keys=$(grep ${account_id:2} "$PROJECT_FOLDER/service/chain-specs/casper.json" | wc -l)
|
|
||||||
if [ ! $num_keys = 0 ]; then
|
|
||||||
echo "[+] found in genesis block"
|
|
||||||
else
|
|
||||||
echo "[-] not yet in genesis block"
|
|
||||||
fi
|
|
||||||
echo
|
|
||||||
}
|
|
||||||
|
|
||||||
extract_seed() {
|
|
||||||
name_with_spaces=$(echo $1 | tr '-' ' ')
|
|
||||||
read -p "[?] path to the file with $name_with_spaces: (default: /etc/ghost/$1) " seed_path
|
|
||||||
seed_path="${seed_path:-/etc/ghost/$1}"
|
|
||||||
if [ ! -f $seed_path ]; then
|
|
||||||
echo "[-] path to $name_with_spaces is not valid"
|
|
||||||
fi
|
|
||||||
seed=$(cat $seed_path)
|
|
||||||
echo $seed
|
|
||||||
}
|
|
||||||
|
|
||||||
help() {
|
|
||||||
echo -e "Ghost Node Build automation tool. Helper for Ghost Node environment preparation.\n"
|
|
||||||
echo -e "With no OPTION nothing will happen, possible OPTION:\n"
|
|
||||||
echo -e "-i, --set-environment\n\tSet up rust environment."
|
|
||||||
echo -e "-u, --unit-file\n\tCreation of systemd unit file."
|
|
||||||
echo -e "-m, --make-global\n\tStore compiled ghost executable and chain specification globally."
|
|
||||||
echo -e "-a, --set-arguments\n\tPrepare CLI arguments for running ghost node."
|
|
||||||
echo -e "-k, --check-keys\n\tCheck if your keys are already included in 'ghosties' file."
|
|
||||||
echo -e "-y, --insert-keys\n\tInsert session keys to the keystore via JSON RPC."
|
|
||||||
echo -e "-r, --release\n\tCompile node with '--release' flag."
|
|
||||||
echo -e "-p, --profile\n\tCompile node with '--profile [PROFILE]' flag."
|
|
||||||
echo -e "-f, --features\n\tCompilation features '--features=\"FEATURE1,FEATURE2\"'"
|
|
||||||
echo -e "-e, --executable-path\n\tPath to the executable ('/usr/lib/' is default)."
|
|
||||||
echo -e "-s, --base-path\n\tPath to the folder with chain database ('/var/lib/ghost' is default)."
|
|
||||||
echo -e "-c, --specification-path\n\tPath to specification ('/etc/ghost' is default)."
|
|
||||||
echo -e "-n, --specification-name\n\tSpecification name to be used ('casper' is default)."
|
|
||||||
echo -e "-h, --help\n\tPrints help information."
|
|
||||||
}
|
|
||||||
|
|
||||||
trap 'final "$?"' EXIT
|
|
||||||
|
|
||||||
clear
|
|
||||||
echo " ____ _ _ _ _ _"
|
|
||||||
echo " / ___| |__ ___ ___| |_ | \ | | ___ __| | ___"
|
|
||||||
echo "| | _| '_ \ / _ \/ __| __| | \| |/ _ \ / _' |/ _ \\"
|
|
||||||
echo "| |_| | | | | (_) \__ \ |_ | |\ | (_) | (_| | __/"
|
|
||||||
echo " \____|_| |_|\___/|___/\__| |_| \_|\___/ \__,_|\___|"
|
|
||||||
echo -e "\nCreated by st1nky (stinky@ghostchain.io)"
|
|
||||||
echo -e "Repository: https://git.ghostchain.io/ghostchain/ghost-node"
|
|
||||||
echo -e "Usage: starter.sh [OPTION]\n"
|
|
||||||
|
|
||||||
while [ $# -gt 0 ]; do
|
|
||||||
case "$1" in
|
|
||||||
--set-environment|-i)
|
|
||||||
SET_ENVIRONMENT=true
|
|
||||||
;;
|
|
||||||
--unit-file|-u)
|
|
||||||
UNIT_FILE=true
|
|
||||||
;;
|
|
||||||
--make-global|-m)
|
|
||||||
MAKE_GLOBAL=true
|
|
||||||
;;
|
|
||||||
--set-arguments|-a)
|
|
||||||
ARGUMENTS=true
|
|
||||||
;;
|
|
||||||
--check-keys|-k)
|
|
||||||
CHECK_KEYS=true
|
|
||||||
;;
|
|
||||||
--insert-keys|-k)
|
|
||||||
INSERT_KEYS=true
|
|
||||||
;;
|
|
||||||
--release|-r)
|
|
||||||
RELEASE="--release"
|
|
||||||
TARGET="release"
|
|
||||||
;;
|
|
||||||
--profile*|-p*)
|
|
||||||
if [[ "$1" != *=* ]]; then shift; fi
|
|
||||||
RELEASE="--profile=${1#*=}"
|
|
||||||
TARGET="${1#*=}"
|
|
||||||
;;
|
|
||||||
--feature*|-f*)
|
|
||||||
if [[ "$1" != *=* ]]; then shift; fi
|
|
||||||
FEATURES="--features=${1#*=}"
|
|
||||||
;;
|
|
||||||
--executable-path*|-e*)
|
|
||||||
if [[ "$1" != *=* ]]; then shift; fi
|
|
||||||
EXECUTABLE_PATH=$(echo ${1#*=}/ | tr -s /)
|
|
||||||
;;
|
|
||||||
--specification-path*|-c*)
|
|
||||||
if [[ "$1" != *=* ]]; then shift; fi
|
|
||||||
SPECIFICATION_PATH=$(echo ${1#*=}/ | tr -s /)
|
|
||||||
;;
|
|
||||||
--base-path*|-?)
|
|
||||||
if [[ "$1" != *=* ]]; then shift; fi
|
|
||||||
BASE_PATH=$(echo ${1#*=}/ | tr -s /)
|
|
||||||
;;
|
|
||||||
--specification-name*|-n*)
|
|
||||||
if [[ "$1" != *=* ]]; then shift; fi
|
|
||||||
SPECIFICATION_NAME="${1#*=}"
|
|
||||||
;;
|
|
||||||
--help|-h)
|
|
||||||
help
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
help
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
shift
|
|
||||||
done
|
|
||||||
|
|
||||||
if [[ $SET_ENVIRONMENT = true ]]; then
|
|
||||||
echo -e "\n"
|
|
||||||
echo "WARNING!!! THIS IS HIGHLY EXPERIMENTAL FLAG, USE IT ONLY ON YOUR"
|
|
||||||
echo "OWN RISK! NOT EVERY SYSTEM CHECKED AND PROVED TO BE WORKING AS"
|
|
||||||
echo "EXPECTED! FOR THOSE WHO FOUND BUG OR SOME INCONSISTENCY FEEL"
|
|
||||||
echo "FREE TO FILL ISSUE ON https://git.ghostchain.io/ghostchain/ghost-node/issues"
|
|
||||||
echo -e "\n"
|
|
||||||
if prompt "[?] are you brave enough?"; then
|
|
||||||
echo "[+] you were warned, I hope you know what you're doing"
|
|
||||||
else
|
|
||||||
echo "[-] aborting environment setup"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if command -v rustc >/dev/null 2>&1; then
|
|
||||||
echo "[+] rust already installed"
|
|
||||||
else
|
|
||||||
os_name=$(uname -s)
|
|
||||||
cd $HOME
|
|
||||||
if [ "$os_name" = "Darwin" ]; then
|
|
||||||
echo "[+] detected MacOS. installing dependencies via homebrew"
|
|
||||||
|
|
||||||
if command -v brew >/dev/null 2>&1; then
|
|
||||||
echo "[+] already installed: $(brew --version)"
|
|
||||||
else
|
|
||||||
if prompt "[?] do you want to install homebrew?"; then
|
|
||||||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
|
|
||||||
else
|
|
||||||
echo "[-] cannot continue without homebrew"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
brew update
|
|
||||||
|
|
||||||
if prompt "[?] install git, cmake, openssl and protobuf?"; then
|
|
||||||
brew install git cmake openssl protobuf
|
|
||||||
else
|
|
||||||
echo "[!] assuming git, cmake, openssl and protobuf are present"
|
|
||||||
fi
|
|
||||||
elif [ "$os_name" == "Linux" ]; then
|
|
||||||
distro=$(cat /etc/*-release | tr '[:upper:]' '[:lower:]' | grep -Poi '(debian|ubuntu|arch|fedora|opensuse)' | uniq | head -n 1)
|
|
||||||
echo $distro
|
|
||||||
|
|
||||||
if [ "$distro" = "ubuntu" ]; then
|
|
||||||
echo "[+] ubuntu detected, using apt to install dependencies"
|
|
||||||
sudo apt update
|
|
||||||
sudo apt install --assume-yes git make clang curl libssl-dev protobuf-compiler
|
|
||||||
elif [ "$distro" = "debian" ]; then
|
|
||||||
echo "[+] debian detected, using apt to install dependencies"
|
|
||||||
sudo apt update
|
|
||||||
sudo apt install --assume-yes git make clang curl libssl-dev llvm libudev-dev protobuf-compiler
|
|
||||||
elif [ "$distro" = "arch" ]; then
|
|
||||||
echo "[+] arch linux detected, using pacman to install dependencies"
|
|
||||||
sudo pacman -Syu --needed --no-confirm curl git clang make protobuf
|
|
||||||
elif [ "$distro" = "fedora" ]; then
|
|
||||||
echo "[+] fedora detected, using dnf to install dependencies"
|
|
||||||
sudo dnf update --assumeyes
|
|
||||||
sudo dnf install --assumeyes clang curl git openssl-devel make protobuf-compiler perl
|
|
||||||
elif [ "$distro" = "opensuse" ]; then
|
|
||||||
echo "[+] openSUSE detected, using zypper to install dependencies"
|
|
||||||
sudo zypper install --no-confirm clang gcc gcc-c++ curl git openssl-devel llvm-devel libudev-devel make awk protobuf-devel
|
|
||||||
else
|
|
||||||
if prompt "[?] unknown linux distribution, unable to install dependencies. continue anyway?"; then
|
|
||||||
echo "[+] proceeding with unknown linux distribution"
|
|
||||||
else
|
|
||||||
echo "[-] aborting with uknown distribution"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "[-] unknown operating system"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if prompt "[?] setup the rust environment (e.g. WASM support)?"; then
|
|
||||||
rustup default stable
|
|
||||||
rustup update
|
|
||||||
rustup target add wasm32-unknown-unknown
|
|
||||||
rustup component add rust-src
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ ! -z $RELEASE ]]; then
|
|
||||||
if prompt "[?] 'cargo build $RELEASE $FEATURES' is what you want?"; then
|
|
||||||
cd $PROJECT_FOLDER
|
|
||||||
echo "[+] Starting build in 3 seconds..."
|
|
||||||
sleep 3
|
|
||||||
cargo build $RELEASE $FEATURES
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $MAKE_GLOBAL = true ]]; then
|
|
||||||
cd $PROJECT_FOLDER
|
|
||||||
echo "[+] trying to copy executable to '$EXECUTABLE_PATH'"
|
|
||||||
sudo cp target/$TARGET/ghost $EXECUTABLE_PATH
|
|
||||||
cp service/chain-specs/$SPECIFICATION_NAME.json $SPECIFICATION_PATH
|
|
||||||
|
|
||||||
echo "[+] ghost executable copied in '$EXECUTABLE_PATH' from '$TARGET'"
|
|
||||||
echo "[+] specification '$SPECIFICATION_NAME.json' copied to '$SPECIFICATION_PATH'"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $ARGUMENTS = true ]]; then
|
|
||||||
echo "[+] setting-up default CLI arguments"
|
|
||||||
CLI_ARGS=()
|
|
||||||
|
|
||||||
read -p "[?] specify p2p protocol TCP port (default: 30333): " port
|
|
||||||
CLI_ARGS+=("--port=${port:-30333}")
|
|
||||||
|
|
||||||
read -p "[?] specify JSON-RPC server TCP port: (default: 9945): " rpc_port
|
|
||||||
CLI_ARGS+=("--rpc-port=${rpc_port:-9945}")
|
|
||||||
|
|
||||||
read -p "[?] specify the chain specification (default: /etc/ghost/casper.json): " chain
|
|
||||||
CLI_ARGS+=("--chain=${chain:-/etc/ghost/casper.json}")
|
|
||||||
|
|
||||||
read -p "[?] specify node's secret key file for p2p networking (default: /etc/ghost/node-key): " node_key
|
|
||||||
CLI_ARGS+=("--node-key-file=${node_key:-/etc/ghost/node-key}")
|
|
||||||
|
|
||||||
read -p "[?] specify name for the node (default: RANDOM_NAME): " node_name
|
|
||||||
if [[ ! -z $node_name ]]; then
|
|
||||||
CLI_ARGS+=("--name='$node_name'")
|
|
||||||
fi
|
|
||||||
|
|
||||||
CLI_ARGS+=("--validator")
|
|
||||||
if prompt "[?] disable validator mode?"; then
|
|
||||||
unset CLI_ARGS[-1]
|
|
||||||
fi
|
|
||||||
|
|
||||||
if prompt "[?] enable prometheus?"; then
|
|
||||||
read -p "[?] specify prometheus exporter TCP port: (default: 9615)" prometheus_port
|
|
||||||
CLI_ARGS+=("--prometheus-port=${prometheus_port:-9615}")
|
|
||||||
else
|
|
||||||
CLI_ARGS+=("--no-prometheus")
|
|
||||||
fi
|
|
||||||
|
|
||||||
read -p "[?] bootnode if any: " bootnodes
|
|
||||||
if [ ! -z $bootnodes ]; then
|
|
||||||
CLI_ARGS+=("--bootnodes=$bootnodes")
|
|
||||||
fi
|
|
||||||
|
|
||||||
read -p "[?] address that other nodes will use to connect: (default: current ip)" public_addr
|
|
||||||
if [ ! -z $public_addr ]; then
|
|
||||||
CLI_ARGS+=("--public-addr=$public_addr")
|
|
||||||
fi
|
|
||||||
|
|
||||||
# default for now
|
|
||||||
CLI_ARGS+=("--base-path=$BASE_PATH")
|
|
||||||
CLI_ARGS+=("--state-pruning=archive")
|
|
||||||
CLI_ARGS+=("--blocks-pruning=archive")
|
|
||||||
CLI_ARGS+=("--rpc-methods=auto")
|
|
||||||
CLI_ARGS+=("--no-telemetry")
|
|
||||||
CLI_ARGS+=("--no-private-ip")
|
|
||||||
CLI_ARGS+=("--no-mdns")
|
|
||||||
CLI_ARGS+=("--no-hardware-benchmarks")
|
|
||||||
|
|
||||||
echo "[+] trying to save new node arguments"
|
|
||||||
echo "GHOST_CLI_ARGS=\"$(IFS=' '; echo "${CLI_ARGS[*]}")\"" > /tmp/ghost
|
|
||||||
sudo cp /tmp/ghost /etc/default/ghost
|
|
||||||
rm /tmp/ghost
|
|
||||||
echo "[+] new CLI arguments stored in '/etc/default/ghost'"
|
|
||||||
cat /etc/default/ghost
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $CHECK_KEYS = true ]; then
|
|
||||||
seed=$(extract_seed "wallet-key")
|
|
||||||
sanity_check "sr25519" $seed "wallet"
|
|
||||||
genesis_check "sr25519" $seed "wallet"
|
|
||||||
|
|
||||||
seed=$(extract_seed "stash-key")
|
|
||||||
sanity_check "sr25519" $seed "stash"
|
|
||||||
genesis_check "sr25519" $seed "stash"
|
|
||||||
|
|
||||||
seed=$(extract_seed "session-key")
|
|
||||||
if [ $INSERT_KEYS = true ]; then
|
|
||||||
read -p "[?] JSON RPC endpoint to the node: (default: localhost:9945) " rpc_endpoint
|
|
||||||
rpc_endpoint="${rpc_endpoint:-localhost:9945}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
for type in $(echo audi babe gran slow); do
|
|
||||||
echo "[+] parsing session key for [$type]"
|
|
||||||
scheme="sr25519"
|
|
||||||
if [ $type = "gran" ]; then
|
|
||||||
scheme="ed25519"
|
|
||||||
fi
|
|
||||||
|
|
||||||
sanity_check $scheme "$seed//$type" $type
|
|
||||||
genesis_check $scheme "$seed//$type" $type
|
|
||||||
if [ $INSERT_KEYS = true ]; then
|
|
||||||
echo "[+] trying to make an 'author_insertKey' RPC call to $rpc_endpoint..."
|
|
||||||
curl --location $rpc_endpoint \
|
|
||||||
--header "Content-Type: application/json" \
|
|
||||||
--data '{ "id":1, "jsonrpc":"2.0", "method":"author_insertKey", "params": ["'"$type"'", "'"$secret_seed"'", "'"$account_id"'"] }'
|
|
||||||
fi
|
|
||||||
echo
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $UNIT_FILE = true ]; then
|
|
||||||
cd $SCRIPT_FOLDER
|
|
||||||
read -p "[?] name for the unit file (default: ghost-node.service) " unit_name
|
|
||||||
if [ -z $unit_name ]; then
|
|
||||||
unit_name="ghost-node"
|
|
||||||
fi
|
|
||||||
unit_name=$(echo "$unit_name" | sed -e "s/.service//g")
|
|
||||||
unit_name="$unit_name.service"
|
|
||||||
|
|
||||||
user_name="ghost"
|
|
||||||
if id $user_name > /dev/null 2>&1; then
|
|
||||||
echo "[+] user ghost found, continue for the user ghost"
|
|
||||||
else
|
|
||||||
echo "[!] user ghost not found"
|
|
||||||
if prompt "[?] do you want to create ghost user? (NOT RECOMMENDED: current $(whoami))"; then
|
|
||||||
sudo useradd --system --create-home $user_name
|
|
||||||
else
|
|
||||||
user_name=$(whoami)
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -d $BASE_PATH ]; then
|
|
||||||
echo "[+] create folder for the node at '$BASE_PATH'"
|
|
||||||
sudo mkdir $BASE_PATH
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$(stat -c "%U %G" $BASE_PATH | grep $user_name)" ]; then
|
|
||||||
echo "[+] make $user_name owner of $BASE_PATH"
|
|
||||||
sudo chown -R "$user_name:" $BASE_PATH
|
|
||||||
fi
|
|
||||||
|
|
||||||
cp packaging/template.service /tmp/$unit_name
|
|
||||||
sed -i -e "s/User=ghost/User=$user_name/g" /tmp/$unit_name
|
|
||||||
sed -i -e "s#/ReadWritePaths=/var/lib/ghost#/ReadWritePaths=$BASE_PATH#g" /tmp/$unit_name
|
|
||||||
|
|
||||||
echo "[+] prepare unit file for the $unit_name"
|
|
||||||
sudo cp packaging/template.service /etc/systemd/system/$unit_name
|
|
||||||
echo "[+] reloading systemd because of updated unit file"
|
|
||||||
sudo systemctl daemon-reload
|
|
||||||
|
|
||||||
if prompt "[?] do you want to start the $unit_name?"; then
|
|
||||||
sudo systemctl restart $unit_name
|
|
||||||
fi
|
|
||||||
|
|
||||||
if prompt "[?] do you want to enable the $unit_name?"; then
|
|
||||||
sudo systemctl enable $unit_name
|
|
||||||
fi
|
|
||||||
fi
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
116
service/ghosties
116
service/ghosties
@ -1,110 +1,28 @@
|
|||||||
|
|
||||||
### TEMPLATE ###
|
### TEMPLATE ###
|
||||||
Local identity : ./PATH_TO_GHOST/ghost key inspect-node-key --bin --file PATH_TO_NODE_KEY
|
local identity : ./PATH_TO_GHOST/ghost key inspect-node-key --bin --file PATH_TO_NODE_KEY
|
||||||
Public key (hex) wallet : ./PATH_TO_GHOST/ghost key inspect $(cat PATH_TO_WALLET_KEY)
|
personal wallet : ./PATH_TO_GHOST/ghost key inspect $(cat PATH_TO_WALLET_KEY)
|
||||||
==================================================================================================================
|
=======================================================================================================
|
||||||
Public key (hex) for stash : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 $(cat PATH_TO_STASH_KEY)
|
session audi : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 "$(cat PATH_TO_SESSION_KEY)//audi"
|
||||||
Public key (hex) for audi : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 "$(cat PATH_TO_SESSION_KEY)//audi"
|
session babe : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 "$(cat PATH_TO_SESSION_KEY)//babe"
|
||||||
Public key (hex) for babe : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 "$(cat PATH_TO_SESSION_KEY)//babe"
|
session slow : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 "$(cat PATH_TO_SESSION_KEY)//slow"
|
||||||
Public key (hex) for slow : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 "$(cat PATH_TO_SESSION_KEY)//slow"
|
session gran : ./PATH_TO_GHOST/ghost key inspect --scheme=ed25519 "$(cat PATH_TO_SESSION_KEY)//gran"
|
||||||
Public key (hex) for gran : ./PATH_TO_GHOST/ghost key inspect --scheme=ed25519 "$(cat PATH_TO_SESSION_KEY)//gran"
|
|
||||||
|
|
||||||
### str3tch aka Pierre ###
|
### str3tch aka Pierre ###
|
||||||
Local identity : 12D3KooWFMiBom4mrJ57CaJZBxKWD1eDLYUyWLZzcjTaQW5crcNQ
|
local identity : 12D3KooWFMiBom4mrJ57CaJZBxKWD1eDLYUyWLZzcjTaQW5crcNQ
|
||||||
Public key (hex) wallet : 0x328d3b7c3046ef7700937d99fb2e98ce2591682c2b5dcf3f562e4da157650237
|
Public key (hex) wallet : 0x328d3b7c3046ef7700937d99fb2e98ce2591682c2b5dcf3f562e4da157650237
|
||||||
===============================================================================================
|
===============================================================================================
|
||||||
Public key (hex) for stash : 0x507045c82be367f95408466cd054ca39bfa52697a3ef22809af14cf9de304f02
|
|
||||||
Public key (hex) for audi : 0x12c14850562021eb99f58f90ab624fb6cfaf3ac9228a92f8b60115fe6a6af15a
|
Public key (hex) for audi : 0x12c14850562021eb99f58f90ab624fb6cfaf3ac9228a92f8b60115fe6a6af15a
|
||||||
Public key (hex) for babe : 0xdaaaaab6a6e574099e24ae9bb75b543610edef9d374fa85a378edb573b47615f
|
Public key (hex) for babe : 0xdaaaaab6a6e574099e24ae9bb75b543610edef9d374fa85a378edb573b47615f
|
||||||
Public key (hex) for slow : 0x0e9e698c7b2bf5ce3861cb4bc4ddf9e200237c282025b093ada850d764d12a35
|
Public key (hex) for slow : 0x0e9e698c7b2bf5ce3861cb4bc4ddf9e200237c282025b093ada850d764d12a35
|
||||||
Public key (hex) for gran : 0x55446f9a7aa99ced06b317c80ce90d56b84e56526775683af2525969e8da0b64
|
Public key (hex) for gran : 0x55446f9a7aa99ced06b317c80ce90d56b84e56526775683af2525969e8da0b64
|
||||||
|
|
||||||
### ghost_7 ###
|
|
||||||
Local identity : 12D3KooWNZYbA3Ty1h8BqfMjzKVeJ83UTJxKUXj9zqnSirJZ51KR
|
|
||||||
Public key (hex) wallet : 0x3666e4e19f87bb8680495f31864ce1f1c69d4178002cc01911aef2cc7313f203
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xa0ba0196e6ee7e6b5b0553035c5cb5c04e9725001b5732839d0529cbc00c9600
|
|
||||||
Public key (hex) for audi : 0x90db5ed339a559ed157995a48d781f44c7df972dfba4bc855e4b59fa46438e17
|
|
||||||
Public key (hex) for babe : 0x6c4dd88b43e2011cf9a6a73d53446336ac9e04cdd4ca23587df63187ac455e49
|
|
||||||
Public key (hex) for slow : 0x3481cdcbcf37a4669c29a78cf9ceb39383a10ef0a18b36b92d149fdd0c24ae00
|
|
||||||
Public key (hex) for gran : 0x8f9ea20bf4a807a8e710f7559dece86e94672b5b361de157bdaa5c1f37849f8d
|
|
||||||
|
|
||||||
### Neptune ###
|
### Cosmos ###
|
||||||
Local identity : 12D3KooWF9SWxz9dmy6vfndQhoxqCa7PESaoFWEiF8Jkqh4xKDRf
|
local identity : 12D3KooWN1hdioQuovznNgw4nNfBqrp2qxJHvr6FdXH5KC55C2c1
|
||||||
Public key (hex) wallet : 0xac871e8bab00dd56ba3a1c0bd289357203dcaf10010b0b04ad7472870cd22a3c
|
Public key (hex) wallet : 0xfa9809611a6930c246fcd138475f1d9b5aa7b12e1573cfea5b40f7ddb24a7c74
|
||||||
===============================================================================================
|
=======================================================================
|
||||||
Public key (hex) for stash : 0x8a0d0b66e827bf20e79f9a499317e73925ce4f422371067edfab690e43857f13
|
Public key (hex) for audi : 0xe8646430cc92137f8fb722ade64329e76698096185dff4170cae827b5e8bb86b
|
||||||
Public key (hex) for audi : 0x2cf69452e9f2a8457119139408884941ed50f590c0fc0f2b044c4d82c69e4245
|
Public key (hex) for babe : 0xbc576d9ac94f37c7a3f530ee69774d52cefe2da3e829c430acbff4fb0068ee23
|
||||||
Public key (hex) for babe : 0xe0f0a776ecc9fa5e1f22e2fa001fe3fba5aea52b9444bc894b45589d42132475
|
Public key (hex) for slow : 0x6a7d400964de8e7ddbd38c06b8927b0a988372a264b0669bf06819af25f83214
|
||||||
Public key (hex) for slow : 0x0e6fa6934f9e99fa84874f2ed9318825a0d5443a0ced984acfbd24ece72ba55e
|
Public key (hex) for gran : 0x14fd4c3e746866cdc42099e33a5c2aea463dd561407c7bc7460eeb869fea5511
|
||||||
Public key (hex) for gran : 0xb63c5a0cf342b9b04931bc8ed74d7d0165ab99ab5f8a4514797d4b299a4501fe
|
|
||||||
|
|
||||||
### Neptune 2 ###
|
|
||||||
Local identity : 12D3KooWPQXpz8UM9uBsB7pcv12pLCLbYdk8W3SHrZBgiju2fbAs
|
|
||||||
Public key (hex) wallet : 0x425ccd7bda4f5c76788ba23bc0381d7a2e496179c93301208c57501c80a4232a
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x6c0283f4c688f0e75ad546c790bbd5961c1a6931543aa589f368f8272c44b758
|
|
||||||
Public key (hex) for audi : 0x00946618c353e4c6546b87f9ca1089b846b0ea4658ee8e6d9d1200c24cb5ee27
|
|
||||||
Public key (hex) for babe : 0x74fa7381a7a74b316afb6793a00387eed9d95d46a69866cbb316b5d9c918af0e
|
|
||||||
Public key (hex) for slow : 0x520e74f8c5853ec8577932327ad3247656db25b74c79ad09adb431b271002401
|
|
||||||
Public key (hex) for gran : 0x236d2fa03f4ed8cb65de7e514d7540159b328f1c170dd402b094ad7fbf547218
|
|
||||||
|
|
||||||
### Doctor K ###
|
|
||||||
Local identity : 12D3KooWP3h5dSdqcpvsCr7fp1jyfqDj291QDZ68a4gY6VQ8T1nW
|
|
||||||
Public key (hex) wallet : 0x927a98dcf8f721103005f168476c24b91d7d10d580f457006a908e10e62c7729
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xb24feb55b2cac4b365a9245c2a97525b01bd1a594d2d42b91f6bc38c9c2e6517
|
|
||||||
Public key (hex) for audi : 0xa8e828d10cf7b74481b6e746e5532d4740ea8014a0d3d856540a59847f8a6b76
|
|
||||||
Public key (hex) for babe : 0x3c944c704cae203619b9e7a5a4b6742736da6a8e76c762291bebdc7652cfec2f
|
|
||||||
Public key (hex) for slow : 0x2645f1f6820dd3a917eebbdab033088d8862477c1c14759b218685f9a0893377
|
|
||||||
Public key (hex) for gran : 0x0aa3a88f6b777c95c3dfe7e997b76798413f16aa325f34824cae0c9102b281d5
|
|
||||||
|
|
||||||
### starman ###
|
|
||||||
Local identity : 12D3KooWMikWyNweALKadEN8KMEhLs5JnNqCBecydAtP8d5UzVgs
|
|
||||||
Public key (hex) wallet : 0xac9e227e30a63ce6eeb55cfbb1fb832aa7e1d3fad2bcb3f663de4a91d744fd50
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x44376f8fa786be1f16fcb45232cfb07300cea845b2fc6e30dde61952de3e5e33
|
|
||||||
Public key (hex) for audi : 0x3271915dc67eba8ad2759a30c2537702f4fbf45647cba565e3a464ab75b91f05
|
|
||||||
Public key (hex) for babe : 0xec981eb1ef1ddbc8ded2db16198cb03667b4b39a8ea58f28ad469ddfaf256161
|
|
||||||
Public key (hex) for slow : 0x6e9426dc78fba9eeb264dcab98be86daf3d8cf510ecfb2acddec370295ff8176
|
|
||||||
Public key (hex) for gran : 0x15b9a867891cf449584b108e512d60b945b1a065bec1703c4c5709ee5093c03d
|
|
||||||
|
|
||||||
### Kitsune1 ###
|
|
||||||
Local identity : 12D3KooWR5JJQ9mALPpnSxfZm5M23AByitSfxpei9ZDghU1NLNeW
|
|
||||||
Public key (hex) wallet : 0x46c78fcacffd80abc9cca4917ef8369a37e21a1691ca11e7a3b53f80be745313
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x4a5596e97c602e7846d54fae81dcdc5a553b7422231e32f9567ac30a6b7c743a
|
|
||||||
Public key (hex) for audi : 0x241bfc05caa2d3e53e671df7261599c13f069a37f6cc4be10b5d49502c3a1e1c
|
|
||||||
Public key (hex) for babe : 0xceb63298b1b7a1277fddf6eee735dbbf9921fd5ebaac0132eee1963e22cf5935
|
|
||||||
Public key (hex) for slow : 0x7ce0c80ee65fb00e229d8c8fa5484144eca3d45d733165fbffcdb4de24c14951
|
|
||||||
Public key (hex) for gran : 0x95f73a6271b517f2016fa91411bdeeb990158066c95f106a79697446ba9f78b4
|
|
||||||
|
|
||||||
### ajruecker (scientio) ###
|
|
||||||
Local identity : 12D3KooWEiC9wp3rHF8JcDiadqtwdWvtUXLBbZhKuao1SwPy2m52
|
|
||||||
Public key (hex) wallet : 0xfa5e5a295ec74c3dda81118d9240db1552b28f831838465ae0712e97e78a6728
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x2021a16182e3af39a79d20021a1b8755d589c04292d361d6b387411f7e975602
|
|
||||||
Public key (hex) for audi : 0x9eb1063afcaf568e7a62458ef33237a41ca500c89e084f7a5dd75bf5d89b105a
|
|
||||||
Public key (hex) for babe : 0x64e9968f3af2e1a86ee8d4be9ad77a1d66f50138527988bf93ede25baaf2e671
|
|
||||||
Public key (hex) for slow : 0x2e77fde21162d1f21ca371846d70c3b75931329074101ee668e614336d25c120
|
|
||||||
Public key (hex) for gran : 0x45e28f333bf0d4a9956ae20341cd07db8d471c4b482ed15d5cf7edd70201670d
|
|
||||||
|
|
||||||
### Kitsune_2 ###
|
|
||||||
Local identity : 12D3KooWDs4i6VoK4dpwGSUVtZENzSmsbQk3tF63gYT745x7eAb2
|
|
||||||
Public key (hex) wallet : 0x4078ddb1ba1388f768fe6aa40ba9124a72692ecbcc83dc088fa86c735e4dc128
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xb624cb291f7464773f3b449ee2252165f3934ace08b1e10611a53e174766fc73
|
|
||||||
Public key (hex) for audi : 0xc2403683be24a92ae8489e28fb502e2bab16d815c4f6c865c50ffb34430a8d7c
|
|
||||||
Public key (hex) for babe : 0xca72b6ea2c83f9e429479bf51c324ea90cbf01e08d2850ced2590c8796cfe222
|
|
||||||
Public key (hex) for slow : 0xeabb3463e300f357b9886683d5a240a395f6bd41182057f03b0e9697a8b3465e
|
|
||||||
Public key (hex) for gran : 0x4ec8584ca9da16d8c60e1770e98fbca8bec648e13c69601e3dfdc1330bf1f999
|
|
||||||
|
|
||||||
### Proxmio ###
|
|
||||||
Local identity : 12D3KooWHZDmyvNFF31PCVVrwDSmUPyC7kgvfpC6wTTDevFcX4dH
|
|
||||||
Public key (hex) wallet : 0x5e1456904c40192cd3a18183df7dffea90d97739830a902cabb702ecdae4f649
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xda6875e9df9a7894e065ef5befcde567dec4dc2c0b73a6ad5514dcca26a90702
|
|
||||||
Public key (hex) for audi : 0x1496150847d512e0491899eba72ee36f76b882ae29fccf18201fd9fbd5bfd300
|
|
||||||
Public key (hex) for babe : 0x8006e3f6e3d92c4c5f2e2f001452e4993e6d5c2b1136f2ae6060c6e9c9523b4a
|
|
||||||
Public key (hex) for slow : 0xaaa41b6ade4c30b5792aa6e5604c444e424900ddf649b23eed4bd0d7f5d3a34f
|
|
||||||
Public key (hex) for gran : 0x86ee138c9e7e67c1c2e157c0ba888761a122d8b9aa6a8653e886ac329e34255d
|
|
||||||
|
@ -288,32 +288,17 @@ fn casper_staging_config_genesis() -> serde_json::Value {
|
|||||||
use hex_literal::hex;
|
use hex_literal::hex;
|
||||||
use sp_core::crypto::UncheckedInto;
|
use sp_core::crypto::UncheckedInto;
|
||||||
|
|
||||||
// Following keys are used in genesis config for testing (casper) chains.
|
// Following keys are used in genesis config for development chains.
|
||||||
// DO NOT use them in production chains such as ghost.
|
// DO NOT use them in production chains as the secret seed is public.
|
||||||
|
//
|
||||||
|
// SECRET_SEED="fall cargo frown step audit cover various urge urge six pattern leisure"
|
||||||
|
// ghostkey inspect -n casper "$SECRET_SEED"
|
||||||
let endowed_accounts = vec![
|
let endowed_accounts = vec![
|
||||||
// sfErNwRgZ6ypB7wY8M2smXMZjxqUkc2TgUcNvC1JNQJFXS8bw
|
// sfFmPT1hi3iySSwEdLpNRMJWo5pvFAKpfgjhDYAgL2i2qyEWx
|
||||||
hex!["328d3b7c3046ef7700937d99fb2e98ce2591682c2b5dcf3f562e4da157650237"].into(),
|
hex!["5afaf4bba29ed7557a0112d9664c6c3d4acd96440f1b43f3bddeffdc2b3bc800"].into(),
|
||||||
// sfEwRjyvEQcpRQ1qbCZum27nEkTggKEt7DtqxwyYQULt9UuUN
|
|
||||||
hex!["3666e4e19f87bb8680495f31864ce1f1c69d4178002cc01911aef2cc7313f203"].into(),
|
|
||||||
// sfHcJxw5cgkvukZZyxcNUMCdbm9e7773orByLrGgAREka81TK
|
|
||||||
hex!["ac871e8bab00dd56ba3a1c0bd289357203dcaf10010b0b04ad7472870cd22a3c"].into(),
|
|
||||||
// sfFD7KSRi2aSREJWc9X75sVTN4a5pbPM5VSSJefmPvMuiVbPr
|
|
||||||
hex!["425ccd7bda4f5c76788ba23bc0381d7a2e496179c93301208c57501c80a4232a"].into(),
|
|
||||||
// sfH29zyFYtoFj6fSXskAEXG5XyyMCa5YycahJkYMwSUz8CcEU
|
|
||||||
hex!["927a98dcf8f721103005f168476c24b91d7d10d580f457006a908e10e62c7729"].into(),
|
|
||||||
// sfHcRoUmrL8GDmWxUcPcZEWVfJbnaXyjWuaBxu5pNtdW5nERK
|
|
||||||
hex!["ac9e227e30a63ce6eeb55cfbb1fb832aa7e1d3fad2bcb3f663de4a91d744fd50"].into(),
|
|
||||||
// sfFJuDxqSc3skWaNUQgqmtCDYvcRj9c56urEky7ByD26aXQEW
|
|
||||||
hex!["46c78fcacffd80abc9cca4917ef8369a37e21a1691ca11e7a3b53f80be745313"].into(),
|
|
||||||
// sfKNNbANdBuBpA4n1sXwPBhV57HBgV2y3R3YjHz1S1uWKfKAy
|
|
||||||
hex!["fa5e5a295ec74c3dda81118d9240db1552b28f831838465ae0712e97e78a6728"].into(),
|
|
||||||
// sfFAdZQQVdbCTA7eWomTrJXe5L8ZcwZRfkyyRkMQZftDqbcMg
|
|
||||||
hex!["4078ddb1ba1388f768fe6aa40ba9124a72692ecbcc83dc088fa86c735e4dc128"].into(),
|
|
||||||
// sfFqT8fmF15Ddshio5rnucmqzMxtUoHZVh7qSALSdAaM7Y6zb
|
|
||||||
hex!["5e1456904c40192cd3a18183df7dffea90d97739830a902cabb702ecdae4f649"].into(),
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
// SECRET=$SECRET_SEED ./scripts/prepare-test-net.sh 4
|
||||||
let initial_authorities: Vec<(
|
let initial_authorities: Vec<(
|
||||||
AccountId,
|
AccountId,
|
||||||
AccountId,
|
AccountId,
|
||||||
@ -323,153 +308,68 @@ fn casper_staging_config_genesis() -> serde_json::Value {
|
|||||||
SlowClapId,
|
SlowClapId,
|
||||||
)> = vec![
|
)> = vec![
|
||||||
(
|
(
|
||||||
// sfFXZmnDVnkQ781J2gbqUpi7K5KgMWMdM4eeii74xxGgKYnNN
|
//sfEdnhKt7YcjUP8iuvxNqTqUu7YpbARBeqFjAPRMH6yFuuPco
|
||||||
hex!["507045c82be367f95408466cd054ca39bfa52697a3ef22809af14cf9de304f02"].into(),
|
hex!["28f303d3b1f821edda19bf6c97ee886edd85d7dc80e2500ab5f4888a19e40a50"].into(),
|
||||||
// sfFXZmnDVnkQ781J2gbqUpi7K5KgMWMdM4eeii74xxGgKYnNN
|
//sfJxZKUmPStRqKF1sq5dpdgeCSCx5zRVa53c4q6d8SgfUUf7W
|
||||||
hex!["507045c82be367f95408466cd054ca39bfa52697a3ef22809af14cf9de304f02"].into(),
|
hex!["e83494e12531b122043315d780c4b5b1153c52b7a94c42b5d61cd91b1f188e31"].into(),
|
||||||
// sfJeojACBa7WiH6tBwikBKAMU2oKmseEBD1GYUYATvfWuLcPa
|
//sfFJMwRUaHrHPFL48SqQbvr39HFYvhgX4YKRmrN61i5vqmxnJ
|
||||||
hex!["daaaaab6a6e574099e24ae9bb75b543610edef9d374fa85a378edb573b47615f"].unchecked_into(),
|
hex!["465e3f1220c774ba014defd7273c3a6e57336eb87c2bea9f04419c2eb6ee895c"].unchecked_into(),
|
||||||
// sfFdtzNxJdeEkgHxvk144rJKxf7wcYvgX5tqfgZRutW9YvAKE
|
//sfEpnU74Gr7bRfTBR7pEKZdxx6SRXmw55atd9x4uJSWRJMGby
|
||||||
hex!["55446f9a7aa99ced06b317c80ce90d56b84e56526775683af2525969e8da0b64"].unchecked_into(),
|
hex!["3155f271b9ca868a2eb980e35f17ee13525cb59e90848c1b0cc2ff306956c916"].unchecked_into(),
|
||||||
// sfE8gsMYAjAJHk5gyYZN7AW6pfmJ7V9H7xxWto24nmhzCUXaQ
|
//sfEM1Bj59N9gnscE7t6fqBF1xvR4wvhmrxfviCQYDfrTY9dvJ
|
||||||
hex!["12c14850562021eb99f58f90ab624fb6cfaf3ac9228a92f8b60115fe6a6af15a"].unchecked_into(),
|
hex!["1c25e311eade248d63ff2103d3a0bd8909ad618e5878b423c99bd043b47fd535"].unchecked_into(),
|
||||||
// sfE3GKSrKZzrZpdapJ2VGRpPor45T4D4i8QBZNumSNGqGv7PX
|
//sfFyrauZLXLR44mBB58i73ZTnsgSHBjbgGxtXwoDTH751LaHE
|
||||||
hex!["0e9e698c7b2bf5ce3861cb4bc4ddf9e200237c282025b093ada850d764d12a35"].unchecked_into(),
|
hex!["647d3fc5c00e3dd975838a92a72e06edc6d060c2e79e23672425da61812a8011"].unchecked_into(),
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
// sfHLqWNC4hMKHhwvPWmWcxZsDPhCTQKgh1Ap7pm3qML5GBTBa
|
//sfJEs3nDW3aemaCWeSjeuFtiGR3Zx5nD3uMAPvLoRkATdUicY
|
||||||
hex!["a0ba0196e6ee7e6b5b0553035c5cb5c04e9725001b5732839d0529cbc00c9600"].into(),
|
hex!["c867f4f1417b0aa0c1cf9805866ea3e75d810a47a1ee8d302477768d95306542"].into(),
|
||||||
// sfHLqWNC4hMKHhwvPWmWcxZsDPhCTQKgh1Ap7pm3qML5GBTBa
|
//sfHf6BwnPaRkMqLivmsTrHGWPQ1DsPM5pVzaeodUvpUGDEuhT
|
||||||
hex!["a0ba0196e6ee7e6b5b0553035c5cb5c04e9725001b5732839d0529cbc00c9600"].into(),
|
hex!["aea5d94e3837022ddd3b006d77d38b70b87ebaa5423b358b871a3e05d9157e77"].into(),
|
||||||
// sfGA6tPPF8dAc8QpMCMjxitG3j8sXPhkdpm5bwz4UsXAApUiw
|
//sfDzomQME6PRxB5LTEJsLYz7wxJUNNAnMop88Uj4E3wWVyu9x
|
||||||
hex!["6c4dd88b43e2011cf9a6a73d53446336ac9e04cdd4ca23587df63187ac455e49"].unchecked_into(),
|
hex!["0cbe89b4ea4fd1d618f9d0db15522f2ca335893abb806a638c3e9bc43f022c78"].unchecked_into(),
|
||||||
// sfGxQZXFUQH1AXv82rpjiJHFs7YsdEuVGdyvKiS2Tajpvw6Se
|
//sfK6CJTmSa5cGk51KFibhvbm1di6EPBnefGeCzXcprUQVokeV
|
||||||
hex!["8f9ea20bf4a807a8e710f7559dece86e94672b5b361de157bdaa5c1f37849f8d"].unchecked_into(),
|
hex!["ee07cb1fd2fbc6b079ec3abb6c4866a35a3f1a25aef0bd5e50d8c188a98148c9"].unchecked_into(),
|
||||||
// sfGz2enFUR22cQ5ey61MdtPqbCeEWZA1wsCFFSLGaK7vKnv8C
|
//sfK9Kq2pXUW5JZBMYSFRwKCWZoMEzqkq8wRVTtpo6zxdDENqG
|
||||||
hex!["90db5ed339a559ed157995a48d781f44c7df972dfba4bc855e4b59fa46438e17"].unchecked_into(),
|
hex!["f06ade37706f898adce54b09f7e973e718b20fbec06eebf34e6d23046aa51d63"].unchecked_into(),
|
||||||
// sfEtwe5BoroNjkdLsvnjnMemUKiw8MS1X4YW8bepbbGvhS4LZ
|
//sfEBQtB12x7xi5RPGXJiLWugdwAdDBsYePwssMLFBtr43dZiC
|
||||||
hex!["3481cdcbcf37a4669c29a78cf9ceb39383a10ef0a18b36b92d149fdd0c24ae00"].unchecked_into(),
|
hex!["14d534940143dc260894c7ebfd013a0d5c65c2cd85ae89decb32d663a2628e66"].unchecked_into(),
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
// sfGq75CrCrkcfqNzyyidu3D4jW3AoJSzL5tKKuv1UbS16ezzy
|
//sfF4sfGLNyVtYMYZbte6A6kcncFi4hG65vPpbftQZxcBVbavS
|
||||||
hex!["8a0d0b66e827bf20e79f9a499317e73925ce4f422371067edfab690e43857f13"].into(),
|
hex!["3c14dca7697cd193184708b00abf3c148c2d78eae6d8c102b84683ec6936123b"].into(),
|
||||||
// sfGq75CrCrkcfqNzyyidu3D4jW3AoJSzL5tKKuv1UbS16ezzy
|
//sfJUHCESTjHwXKmHbzhApCDRgzUTcP5kcUUCATeBaTUwtyx8X
|
||||||
hex!["8a0d0b66e827bf20e79f9a499317e73925ce4f422371067edfab690e43857f13"].into(),
|
hex!["d2a36dc75ef7933c2934b0855e2568a85c11347a48f0a1bfbcf1fc3757db1a07"].into(),
|
||||||
// sfJo2ogBpssRAU9ZPTvuXFZEdmJw9pKsPydLjXe8DypRScjzT
|
//sfGS5ypMSqG3VSWyhKghZzCxSUdp4JC3Qaw3eu2oe8iaSy1TM
|
||||||
hex!["e0f0a776ecc9fa5e1f22e2fa001fe3fba5aea52b9444bc894b45589d42132475"].unchecked_into(),
|
hex!["787eb8a2780f422382474cfa7e44493fffd86824963a0da22d0f0c82f9d39860"].unchecked_into(),
|
||||||
// sfHq3EVT1sqY7o5ki3zA6LEdRDfdFc29YaZN3w2Thhz6JD5ZF
|
//sfFH1EKd6KCqCJ9HPPW5oBr5gigsEKBkHtFT4GoBqu5iUdYzZ
|
||||||
hex!["b63c5a0cf342b9b04931bc8ed74d7d0165ab99ab5f8a4514797d4b299a4501fe"].unchecked_into(),
|
hex!["45554a1b748fed1f2f51f06970c8cd764edbdefd82d697993ddfe7f97290918c"].unchecked_into(),
|
||||||
// sfEj3wrDy9EDLCAodyEdQEYxJpNnM8Etaj3RJ5bCBRzdaDced
|
//sfG28QRqEgkAgvpjZc3N86xDTebiwKiSvKYfg1NdwW2GNDbP6
|
||||||
hex!["2cf69452e9f2a8457119139408884941ed50f590c0fc0f2b044c4d82c69e4245"].unchecked_into(),
|
hex!["6638fe19b4331656dacf3be9d6a81506fa71db1fbe4bd9db0ab8c9cc0e364f1b"].unchecked_into(),
|
||||||
// sfE32RmBp1xX4KRTphVGLUJBxLGPN3Dzg9BwCJktxMf3iEwck
|
//sfFUfGqByAJGfe3e4vxiDJv5A1v1dp2piSNGpR8Kz5U9dFvMp
|
||||||
hex!["0e6fa6934f9e99fa84874f2ed9318825a0d5443a0ced984acfbd24ece72ba55e"].unchecked_into(),
|
hex!["4e390dd2dad59ff8709e0cb714bfccdbadde8b4e91d5931cb98ba6e6eb48a93b"].unchecked_into(),
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
// sfG9iWUS7AKBzvqdz3uDZv7f1t79vvSTYL1VxzYPHjhmLnQVn
|
//sfG7zdnf5t6JHbi9tBfkKesz13x7B9mSiYwDJfnDQ1LQwXwAi
|
||||||
hex!["6c0283f4c688f0e75ad546c790bbd5961c1a6931543aa589f368f8272c44b758"].into(),
|
hex!["6ab24f598a38e1d91004487faedadc8c338a7cb2a07e29899eccc7d106a2195e"].into(),
|
||||||
// sfG9iWUS7AKBzvqdz3uDZv7f1t79vvSTYL1VxzYPHjhmLnQVn
|
//sfDu1voz5vmiKXeiCHutmCp96C6LqLogsWE4rkaUZeZyhdt1B
|
||||||
hex!["6c0283f4c688f0e75ad546c790bbd5961c1a6931543aa589f368f8272c44b758"].into(),
|
hex!["085401d14ff3c620c76347a9e9a7e020fd3575d081c8352728db56ea6cc52677"].into(),
|
||||||
// sfGMUYXSjHgwGBpbGiHFoqT1DdJwZdHk49H5ViaQM7HUnayvZ
|
//sfH9hH4P98SohVs3Aj4cBoDXZvgYbF8dPXi3NfyEng5eMry9G
|
||||||
hex!["74fa7381a7a74b316afb6793a00387eed9d95d46a69866cbb316b5d9c918af0e"].unchecked_into(),
|
hex!["983a9aa148f94a54f313aca8537fb00f3c3353f70fafa8c14d4de22b44366f3c"].unchecked_into(),
|
||||||
// sfEWYhczV6PbmeNXZTcA4LvhpzvCfNMatYoSNKvDphmNaQzqB
|
//sfJQChmUKaDDQgzsAyZvuRNQZxV4CQ2qmxzmZk27tdWczKtRa
|
||||||
hex!["236d2fa03f4ed8cb65de7e514d7540159b328f1c170dd402b094ad7fbf547218"].unchecked_into(),
|
hex!["cf875474e8dfe94f4e9e0e2a4743e02c18cebf87b2c763710c9630f3fc94c9c4"].unchecked_into(),
|
||||||
// sfDirg32ityDvrjxh4822unhP4qm4S9yTqN99gesN322swn7h
|
//sfEMDH3w5xvZCwhXaMKYV7hsSL36evqHhqianntoiNDEtewLT
|
||||||
hex!["00946618c353e4c6546b87f9ca1089b846b0ea4658ee8e6d9d1200c24cb5ee27"].unchecked_into(),
|
hex!["1c4e97776053b47b5b48035bab5f5f4afb3e6e13b15d1964195502cf40124c2a"].unchecked_into(),
|
||||||
// sfFZgp1Z5diFAZ16swuQD5GojGCsMMFVR19uWnCrppMLuYjRv
|
//sfEPb5wWLKAHZH8k8KXpBtfnbBQPBBTkyv2ZQ1YP3GRKKpP1w
|
||||||
hex!["520e74f8c5853ec8577932327ad3247656db25b74c79ad09adb431b271002401"].unchecked_into(),
|
hex!["1e1e7f0781828178bd1237d9a8c2e057bbb15f2f46d1fc5fb316ebd9f5d1ad04"].unchecked_into(),
|
||||||
),
|
|
||||||
(
|
|
||||||
// sfHjtrXFzRmxwjE4rjVxFJXpvVv7furjdymZS7PQRFiANpodz
|
|
||||||
hex!["b24feb55b2cac4b365a9245c2a97525b01bd1a594d2d42b91f6bc38c9c2e6517"].into(),
|
|
||||||
// sfHjtrXFzRmxwjE4rjVxFJXpvVv7furjdymZS7PQRFiANpodz
|
|
||||||
hex!["b24feb55b2cac4b365a9245c2a97525b01bd1a594d2d42b91f6bc38c9c2e6517"].into(),
|
|
||||||
// sfF5XWwvNPjZEsBz1HWs5Ys5zcE85UHnN1BV8TBBectqFQZRm
|
|
||||||
hex!["3c944c704cae203619b9e7a5a4b6742736da6a8e76c762291bebdc7652cfec2f"].unchecked_into(),
|
|
||||||
// sfDx3gj4wFHg3cK6bopnypHQ6TxW1VgyPsYVbXKhRHtLDLxQb
|
|
||||||
hex!["0aa3a88f6b777c95c3dfe7e997b76798413f16aa325f34824cae0c9102b281d5"].unchecked_into(),
|
|
||||||
// sfHXZbnZV3YWwnH28q2xumm7stvuC8LweYYxPNuHGonnX7QHL
|
|
||||||
hex!["a8e828d10cf7b74481b6e746e5532d4740ea8014a0d3d856540a59847f8a6b76"].unchecked_into(),
|
|
||||||
// sfEaHBrBgeMhRTA3WHE9Nbyvn3h7xkhYKi7go4yo81L88o9zJ
|
|
||||||
hex!["2645f1f6820dd3a917eebbdab033088d8862477c1c14759b218685f9a0893377"].unchecked_into(),
|
|
||||||
),
|
|
||||||
(
|
|
||||||
// sfFFYKBEwmJAQEJR73Q4Gfs1sH1c8wyuBGnHc1UdzWucAYrKC
|
|
||||||
hex!["44376f8fa786be1f16fcb45232cfb07300cea845b2fc6e30dde61952de3e5e33"].into(),
|
|
||||||
// sfFFYKBEwmJAQEJR73Q4Gfs1sH1c8wyuBGnHc1UdzWucAYrKC
|
|
||||||
hex!["44376f8fa786be1f16fcb45232cfb07300cea845b2fc6e30dde61952de3e5e33"].into(),
|
|
||||||
// sfK4K5bS7M6bHeKHoGec9bw1PMngNyzhTx9YZq6hkqibos4LJ
|
|
||||||
hex!["ec981eb1ef1ddbc8ded2db16198cb03667b4b39a8ea58f28ad469ddfaf256161"].unchecked_into(),
|
|
||||||
// sfECakKMW2xf5dK8Ut55tnwadoKTNGKdRLh5E7dYRmV6sW812
|
|
||||||
hex!["15b9a867891cf449584b108e512d60b945b1a065bec1703c4c5709ee5093c03d"].unchecked_into(),
|
|
||||||
// sfErEin4Ljy11VGnYtTYJZ9LLcDP4fvsKV6f9LXYRwRXtrNqa
|
|
||||||
hex!["3271915dc67eba8ad2759a30c2537702f4fbf45647cba565e3a464ab75b91f05"].unchecked_into(),
|
|
||||||
// sfGD5sHSa1h8NGpUD29ZogBJW6fatg8Sg6Pzg9Q7RPUm24Mkr
|
|
||||||
hex!["6e9426dc78fba9eeb264dcab98be86daf3d8cf510ecfb2acddec370295ff8176"].unchecked_into(),
|
|
||||||
),
|
|
||||||
(
|
|
||||||
// sfFPZZNrhDuY9MKJCBHyBCkgJecgDqPJBPSjA37be4czdX6t3
|
|
||||||
hex!["4a5596e97c602e7846d54fae81dcdc5a553b7422231e32f9567ac30a6b7c743a"].into(),
|
|
||||||
// sfFPZZNrhDuY9MKJCBHyBCkgJecgDqPJBPSjA37be4czdX6t3
|
|
||||||
hex!["4a5596e97c602e7846d54fae81dcdc5a553b7422231e32f9567ac30a6b7c743a"].into(),
|
|
||||||
// sfJP8aW6eSUs14AfUG6ZDFFjtyJxDed5Ubk1CFh7dNmL69rbx
|
|
||||||
hex!["ceb63298b1b7a1277fddf6eee735dbbf9921fd5ebaac0132eee1963e22cf5935"].unchecked_into(),
|
|
||||||
// sfH6jAeHqDpwtYGv9KJWNJ8aom8ivSvVztRSwAHw4bXd1isoP
|
|
||||||
hex!["95f73a6271b517f2016fa91411bdeeb990158066c95f106a79697446ba9f78b4"].unchecked_into(),
|
|
||||||
// sfEXSdKyx6uQBzgR3a7oH53XSCLrjUM2B7fbcvUvm21b5J6Uf
|
|
||||||
hex!["241bfc05caa2d3e53e671df7261599c13f069a37f6cc4be10b5d49502c3a1e1c"].unchecked_into(),
|
|
||||||
// sfGXqJTwJTkh3bwhECju7XCdgvJXYJZUtYSEJ2PbfpXGak42s
|
|
||||||
hex!["7ce0c80ee65fb00e229d8c8fa5484144eca3d45d733165fbffcdb4de24c14951"].unchecked_into(),
|
|
||||||
),
|
|
||||||
(
|
|
||||||
// sfESE7VifnknxVe71z3zsqC3xiirXyzHurKjdQoD537WpwJjW
|
|
||||||
hex!["2021a16182e3af39a79d20021a1b8755d589c04292d361d6b387411f7e975602"].into(),
|
|
||||||
// sfESE7VifnknxVe71z3zsqC3xiirXyzHurKjdQoD537WpwJjW
|
|
||||||
hex!["2021a16182e3af39a79d20021a1b8755d589c04292d361d6b387411f7e975602"].into(),
|
|
||||||
// sfFzQmYYckD8XLV7XGU1pJAyt1K3foCpPumpKBqdb5sJGHXrc
|
|
||||||
hex!["64e9968f3af2e1a86ee8d4be9ad77a1d66f50138527988bf93ede25baaf2e671"].unchecked_into(),
|
|
||||||
// sfFHjCLzWetvQJQzNwxeWcrkHmnPS1mVz7gT63yiRdvxFZ9T8
|
|
||||||
hex!["45e28f333bf0d4a9956ae20341cd07db8d471c4b482ed15d5cf7edd70201670d"].unchecked_into(),
|
|
||||||
// sfHJAk4HiVuMjXqaXoFEKTCF6938Lta7qd9w3zbyyuWCs1T5L
|
|
||||||
hex!["9eb1063afcaf568e7a62458ef33237a41ca500c89e084f7a5dd75bf5d89b105a"].unchecked_into(),
|
|
||||||
// sfEm2SME5H6GiezhYokZWmrZLMTUNFbLV7xwgKrMXz3NwppKb
|
|
||||||
hex!["2e77fde21162d1f21ca371846d70c3b75931329074101ee668e614336d25c120"].unchecked_into(),
|
|
||||||
),
|
|
||||||
(
|
|
||||||
// sfHpvEbP79MrDMVw4GhTvgLSU987ZSJ21VAsDWiJdgjG3ijse
|
|
||||||
hex!["b624cb291f7464773f3b449ee2252165f3934ace08b1e10611a53e174766fc73"].into(),
|
|
||||||
// sfHpvEbP79MrDMVw4GhTvgLSU987ZSJ21VAsDWiJdgjG3ijse
|
|
||||||
hex!["b624cb291f7464773f3b449ee2252165f3934ace08b1e10611a53e174766fc73"].into(),
|
|
||||||
// sfJHYLgjoHotvKi46URmtaVoG4p54SPE2ASTrauym99WxFcAn
|
|
||||||
hex!["ca72b6ea2c83f9e429479bf51c324ea90cbf01e08d2850ced2590c8796cfe222"].unchecked_into(),
|
|
||||||
// sfFVPqgCsDQe3k4qhGmUH4UoZaxsGb9majPgoH3WaYCZjFhTf
|
|
||||||
hex!["4ec8584ca9da16d8c60e1770e98fbca8bec648e13c69601e3dfdc1330bf1f999"].unchecked_into(),
|
|
||||||
// sfJ6nxM1SvcdbV2Gmf8WKkPKeX6rRYaEmSj7V9r64799acqHV
|
|
||||||
hex!["c2403683be24a92ae8489e28fb502e2bab16d815c4f6c865c50ffb34430a8d7c"].unchecked_into(),
|
|
||||||
// sfK1sQY3GL8waX2htW9EaBo9MjWGuy4VGeiUfP4NCq5tCjt37
|
|
||||||
hex!["eabb3463e300f357b9886683d5a240a395f6bd41182057f03b0e9697a8b3465e"].unchecked_into(),
|
|
||||||
),
|
|
||||||
(
|
|
||||||
// sfJeU4TBQyuGxfsCqNDPax1TcfAseEmBDPqx5YEm7kXUvnnPa
|
|
||||||
hex!["da6875e9df9a7894e065ef5befcde567dec4dc2c0b73a6ad5514dcca26a90702"].into(),
|
|
||||||
// sfJeU4TBQyuGxfsCqNDPax1TcfAseEmBDPqx5YEm7kXUvnnPa
|
|
||||||
hex!["da6875e9df9a7894e065ef5befcde567dec4dc2c0b73a6ad5514dcca26a90702"].into(),
|
|
||||||
// sfGbxmQAD2jbktjRkq6NsJxHKHWnkdtvoR14fFPAX85t148ej
|
|
||||||
hex!["8006e3f6e3d92c4c5f2e2f001452e4993e6d5c2b1136f2ae6060c6e9c9523b4a"].unchecked_into(),
|
|
||||||
// sfGm1jJagueW5dCng6xKCDx3FX2JohtsYMuNjf2tJGXN5ePUL
|
|
||||||
hex!["86ee138c9e7e67c1c2e157c0ba888761a122d8b9aa6a8653e886ac329e34255d"].unchecked_into(),
|
|
||||||
// sfEB68auUQmSCK8M3Zr7WuzRSipj9sQ5ykfDmvLmT8FDY5bg6
|
|
||||||
hex!["1496150847d512e0491899eba72ee36f76b882ae29fccf18201fd9fbd5bfd300"].unchecked_into(),
|
|
||||||
// sfHZqUptNXpRNGPHKn2Tfv8K1RjFGJ9XCdSw41nPAw9ZXM37T
|
|
||||||
hex!["aaa41b6ade4c30b5792aa6e5604c444e424900ddf649b23eed4bd0d7f5d3a34f"].unchecked_into(),
|
|
||||||
),
|
),
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
let ghost_accounts: Vec<(AccountId, u128, u8)> = casper_testnet_evm_accounts();
|
let ghost_accounts: Vec<(AccountId, u128, u8)> = casper_testnet_evm_accounts();
|
||||||
let evm_networks = casper_testnet_evm_networks();
|
let evm_networks = casper_testnet_evm_networks();
|
||||||
|
|
||||||
const ENDOWMENT: u128 = 31 * CSPR;
|
const ENDOWMENT: u128 = 5_000 * CSPR;
|
||||||
const STASH: u128 = 69 * CSPR;
|
const STASH: u128 = 500 * CSPR;
|
||||||
|
|
||||||
serde_json::json!({
|
serde_json::json!({
|
||||||
"balances": {
|
"balances": {
|
||||||
@ -497,8 +397,8 @@ fn casper_staging_config_genesis() -> serde_json::Value {
|
|||||||
.collect::<Vec<_>>(),
|
.collect::<Vec<_>>(),
|
||||||
},
|
},
|
||||||
"staking": {
|
"staking": {
|
||||||
"validatorCount": 10,
|
"validatorCount": 50,
|
||||||
"minimumValidatorCount": 3,
|
"minimumValidatorCount": 4,
|
||||||
"stakers": initial_authorities
|
"stakers": initial_authorities
|
||||||
.iter()
|
.iter()
|
||||||
.map(|x| {
|
.map(|x| {
|
||||||
@ -510,11 +410,8 @@ fn casper_staging_config_genesis() -> serde_json::Value {
|
|||||||
)
|
)
|
||||||
})
|
})
|
||||||
.collect::<Vec<_>>(),
|
.collect::<Vec<_>>(),
|
||||||
"invulnerables": initial_authorities
|
"invulnerables": initial_authorities.iter().map(|x| x.0.clone()).collect::<Vec<_>>(),
|
||||||
.iter()
|
"forceEra": Forcing::ForceNone,
|
||||||
.map(|x| x.0.clone())
|
|
||||||
.collect::<Vec<_>>(),
|
|
||||||
"forceEra": Forcing::NotForcing,
|
|
||||||
"slashRewardFraction": Perbill::from_percent(10)
|
"slashRewardFraction": Perbill::from_percent(10)
|
||||||
},
|
},
|
||||||
"babe": {
|
"babe": {
|
||||||
|
@ -1,200 +0,0 @@
|
|||||||
|
|
||||||
### TEMPLATE ###
|
|
||||||
Local identity : ./PATH_TO_GHOST/ghost key inspect-node-key --bin --file PATH_TO_NODE_KEY
|
|
||||||
Public key (hex) wallet : ./PATH_TO_GHOST/ghost key inspect $(cat PATH_TO_WALLET_KEY)
|
|
||||||
==================================================================================================================
|
|
||||||
Public key (hex) for stash : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 $(cat PATH_TO_STASH_KEY)
|
|
||||||
Public key (hex) for audi : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 "$(cat PATH_TO_SESSION_KEY)//audi"
|
|
||||||
Public key (hex) for babe : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 "$(cat PATH_TO_SESSION_KEY)//babe"
|
|
||||||
Public key (hex) for slow : ./PATH_TO_GHOST/ghost key inspect --scheme=sr25519 "$(cat PATH_TO_SESSION_KEY)//slow"
|
|
||||||
Public key (hex) for gran : ./PATH_TO_GHOST/ghost key inspect --scheme=ed25519 "$(cat PATH_TO_SESSION_KEY)//gran"
|
|
||||||
|
|
||||||
### str3tch aka Pierre ###
|
|
||||||
Local identity : 12D3KooWFMiBom4mrJ57CaJZBxKWD1eDLYUyWLZzcjTaQW5crcNQ
|
|
||||||
Public key (hex) wallet : 0x328d3b7c3046ef7700937d99fb2e98ce2591682c2b5dcf3f562e4da157650237
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x507045c82be367f95408466cd054ca39bfa52697a3ef22809af14cf9de304f02
|
|
||||||
Public key (hex) for audi : 0x12c14850562021eb99f58f90ab624fb6cfaf3ac9228a92f8b60115fe6a6af15a
|
|
||||||
Public key (hex) for babe : 0xdaaaaab6a6e574099e24ae9bb75b543610edef9d374fa85a378edb573b47615f
|
|
||||||
Public key (hex) for slow : 0x0e9e698c7b2bf5ce3861cb4bc4ddf9e200237c282025b093ada850d764d12a35
|
|
||||||
Public key (hex) for gran : 0x55446f9a7aa99ced06b317c80ce90d56b84e56526775683af2525969e8da0b64
|
|
||||||
|
|
||||||
### ghost_7 ###
|
|
||||||
Local identity : 12D3KooWNZYbA3Ty1h8BqfMjzKVeJ83UTJxKUXj9zqnSirJZ51KR
|
|
||||||
Public key (hex) wallet : 0x3666e4e19f87bb8680495f31864ce1f1c69d4178002cc01911aef2cc7313f203
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xa0ba0196e6ee7e6b5b0553035c5cb5c04e9725001b5732839d0529cbc00c9600
|
|
||||||
Public key (hex) for audi : 0x90db5ed339a559ed157995a48d781f44c7df972dfba4bc855e4b59fa46438e17
|
|
||||||
Public key (hex) for babe : 0x6c4dd88b43e2011cf9a6a73d53446336ac9e04cdd4ca23587df63187ac455e49
|
|
||||||
Public key (hex) for slow : 0x3481cdcbcf37a4669c29a78cf9ceb39383a10ef0a18b36b92d149fdd0c24ae00
|
|
||||||
Public key (hex) for gran : 0x8f9ea20bf4a807a8e710f7559dece86e94672b5b361de157bdaa5c1f37849f8d
|
|
||||||
|
|
||||||
### Neptune ###
|
|
||||||
Local identity : 12D3KooWF9SWxz9dmy6vfndQhoxqCa7PESaoFWEiF8Jkqh4xKDRf
|
|
||||||
Public key (hex) wallet : 0xac871e8bab00dd56ba3a1c0bd289357203dcaf10010b0b04ad7472870cd22a3c
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x8a0d0b66e827bf20e79f9a499317e73925ce4f422371067edfab690e43857f13
|
|
||||||
Public key (hex) for audi : 0x2cf69452e9f2a8457119139408884941ed50f590c0fc0f2b044c4d82c69e4245
|
|
||||||
Public key (hex) for babe : 0xe0f0a776ecc9fa5e1f22e2fa001fe3fba5aea52b9444bc894b45589d42132475
|
|
||||||
Public key (hex) for slow : 0x0e6fa6934f9e99fa84874f2ed9318825a0d5443a0ced984acfbd24ece72ba55e
|
|
||||||
Public key (hex) for gran : 0xb63c5a0cf342b9b04931bc8ed74d7d0165ab99ab5f8a4514797d4b299a4501fe
|
|
||||||
|
|
||||||
### Neptune 2 ###
|
|
||||||
Local identity : 12D3KooWPQXpz8UM9uBsB7pcv12pLCLbYdk8W3SHrZBgiju2fbAs
|
|
||||||
Public key (hex) wallet : 0x425ccd7bda4f5c76788ba23bc0381d7a2e496179c93301208c57501c80a4232a
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x6c0283f4c688f0e75ad546c790bbd5961c1a6931543aa589f368f8272c44b758
|
|
||||||
Public key (hex) for audi : 0x00946618c353e4c6546b87f9ca1089b846b0ea4658ee8e6d9d1200c24cb5ee27
|
|
||||||
Public key (hex) for babe : 0x74fa7381a7a74b316afb6793a00387eed9d95d46a69866cbb316b5d9c918af0e
|
|
||||||
Public key (hex) for slow : 0x520e74f8c5853ec8577932327ad3247656db25b74c79ad09adb431b271002401
|
|
||||||
Public key (hex) for gran : 0x236d2fa03f4ed8cb65de7e514d7540159b328f1c170dd402b094ad7fbf547218
|
|
||||||
|
|
||||||
### Doctor K ###
|
|
||||||
Local identity : 12D3KooWP3h5dSdqcpvsCr7fp1jyfqDj291QDZ68a4gY6VQ8T1nW
|
|
||||||
Public key (hex) wallet : 0x927a98dcf8f721103005f168476c24b91d7d10d580f457006a908e10e62c7729
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xb24feb55b2cac4b365a9245c2a97525b01bd1a594d2d42b91f6bc38c9c2e6517
|
|
||||||
Public key (hex) for audi : 0xa8e828d10cf7b74481b6e746e5532d4740ea8014a0d3d856540a59847f8a6b76
|
|
||||||
Public key (hex) for babe : 0x3c944c704cae203619b9e7a5a4b6742736da6a8e76c762291bebdc7652cfec2f
|
|
||||||
Public key (hex) for slow : 0x2645f1f6820dd3a917eebbdab033088d8862477c1c14759b218685f9a0893377
|
|
||||||
Public key (hex) for gran : 0x0aa3a88f6b777c95c3dfe7e997b76798413f16aa325f34824cae0c9102b281d5
|
|
||||||
|
|
||||||
### starman ###
|
|
||||||
Local identity : 12D3KooWMikWyNweALKadEN8KMEhLs5JnNqCBecydAtP8d5UzVgs
|
|
||||||
Public key (hex) wallet : 0xac9e227e30a63ce6eeb55cfbb1fb832aa7e1d3fad2bcb3f663de4a91d744fd50
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x44376f8fa786be1f16fcb45232cfb07300cea845b2fc6e30dde61952de3e5e33
|
|
||||||
Public key (hex) for audi : 0x3271915dc67eba8ad2759a30c2537702f4fbf45647cba565e3a464ab75b91f05
|
|
||||||
Public key (hex) for babe : 0xec981eb1ef1ddbc8ded2db16198cb03667b4b39a8ea58f28ad469ddfaf256161
|
|
||||||
Public key (hex) for slow : 0x6e9426dc78fba9eeb264dcab98be86daf3d8cf510ecfb2acddec370295ff8176
|
|
||||||
Public key (hex) for gran : 0x15b9a867891cf449584b108e512d60b945b1a065bec1703c4c5709ee5093c03d
|
|
||||||
|
|
||||||
### IBN ###
|
|
||||||
Local identity : 12D3KooWQtgCKVcoSkbAcxXdXQFQBpHkriaeXkdMeLUyddjVugwD
|
|
||||||
Public key (hex) wallet : 0x5ebcc2d213e482d00e2a27e2031abda6ecbe49eb30709113c6142aa4d7395134
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x42dbb785808c7b22eb3a57605b4676e370620c79d768a9e8f1f93ad3137b751c
|
|
||||||
Public key (hex) for audi : 0xe28dd330cc0daee36806b6b9209547fd65a6916f6e3cc3c2647417ff67bcb065
|
|
||||||
Public key (hex) for babe : 0x56bde237ae958813482ec69ac5734f64c271c7c5b3d1af45daa4d4d43c051e34
|
|
||||||
Public key (hex) for slow : 0x5eff55ed5111e7430d0acb23aee45e04d389f4d3f72019cda302bb2176485578
|
|
||||||
Public key (hex) for gran : 0x03562f5fa0b39c4f85b8692be4aa2447203b8ba5a95f9ba3d1e43d52ba8d1254
|
|
||||||
|
|
||||||
### My Submission for Genesis Code - youaresparta ###
|
|
||||||
Local identity : 12D3KooWSHS1YCJvxck3Dcpk92ZiEW5ZrhTDrGQMHhjEErTxCxzZ
|
|
||||||
Public key (hex) wallet : 0xea1c01ff56725c6fdd62efaa119b704a2f467fd21d20a3c2117668bfeba02e76
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x909ab2271d3fc8df9e8556232a29eea7cf1cfdf8c89603a602779daa6484f011
|
|
||||||
Public key (hex) for audi : 0x0eef8f5d5d3bf5b5986bdd76ee6feba013171ab6c76bd38b3aa556e7fad4ea6c
|
|
||||||
Public key (hex) for babe : 0x00623f9d2ca673af3ec6d5c0077a7314c0fa92ec5fa853015b189daa12a2e02a
|
|
||||||
Public key (hex) for slow : 0x9ef7278866ed6015bd3055e3ef2cc77c62e796667f250a42d832846534a16743
|
|
||||||
Public key (hex) for gran : 0x47acf609aefff57c8b3680d862df19f11a9d5970e0e9be3606781f430790e94c
|
|
||||||
|
|
||||||
### Kitsune1 ###
|
|
||||||
Local identity : 12D3KooWR5JJQ9mALPpnSxfZm5M23AByitSfxpei9ZDghU1NLNeW
|
|
||||||
Public key (hex) wallet : 0x46c78fcacffd80abc9cca4917ef8369a37e21a1691ca11e7a3b53f80be745313
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x4a5596e97c602e7846d54fae81dcdc5a553b7422231e32f9567ac30a6b7c743a
|
|
||||||
Public key (hex) for audi : 0x241bfc05caa2d3e53e671df7261599c13f069a37f6cc4be10b5d49502c3a1e1c
|
|
||||||
Public key (hex) for babe : 0xceb63298b1b7a1277fddf6eee735dbbf9921fd5ebaac0132eee1963e22cf5935
|
|
||||||
Public key (hex) for slow : 0x7ce0c80ee65fb00e229d8c8fa5484144eca3d45d733165fbffcdb4de24c14951
|
|
||||||
Public key (hex) for gran : 0x95f73a6271b517f2016fa91411bdeeb990158066c95f106a79697446ba9f78b4
|
|
||||||
|
|
||||||
### mridkwya ###
|
|
||||||
Local identity : 12D3KooWQHiwqRokC3BmDrZ9LszxwFj7vjJ2adJDZPVQvRJXSA42
|
|
||||||
Public key (hex) wallet : 0xaaba173e1cd257c1ba67afbed0fbf2c4aadbfac329f129f12c4941b8b6bc5865
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x56bbe4fddb35ccdfbc59fad45f011c0bd0869fe42b34396804c060dc963bf866
|
|
||||||
Public key (hex) for audi : 0x5ce0221a8ee8b7e093ef9ca48f08b890d65c6ef98185010c5013d7a0e108452d
|
|
||||||
Public key (hex) for babe : 0x50fd46be1d746a5d355018615bacef98ac280dbed490ef2a26c1aefd06ec4f1c
|
|
||||||
Public key (hex) for slow : 0x46735b00d80e2e32c4eb652729c791d32f83f5f423a3d963c3c226ab0d131129
|
|
||||||
Public key (hex) for gran : 0x210a4b979e39c3136be105df1974fc036f4fe9b035936c149bdb94a3f4820487
|
|
||||||
|
|
||||||
### ajruecker (scientio) ###
|
|
||||||
Local identity : 12D3KooWEiC9wp3rHF8JcDiadqtwdWvtUXLBbZhKuao1SwPy2m52
|
|
||||||
Public key (hex) wallet : 0xfa5e5a295ec74c3dda81118d9240db1552b28f831838465ae0712e97e78a6728
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x2021a16182e3af39a79d20021a1b8755d589c04292d361d6b387411f7e975602
|
|
||||||
Public key (hex) for audi : 0x9eb1063afcaf568e7a62458ef33237a41ca500c89e084f7a5dd75bf5d89b105a
|
|
||||||
Public key (hex) for babe : 0x64e9968f3af2e1a86ee8d4be9ad77a1d66f50138527988bf93ede25baaf2e671
|
|
||||||
Public key (hex) for slow : 0x2e77fde21162d1f21ca371846d70c3b75931329074101ee668e614336d25c120
|
|
||||||
Public key (hex) for gran : 0x45e28f333bf0d4a9956ae20341cd07db8d471c4b482ed15d5cf7edd70201670d
|
|
||||||
|
|
||||||
### Kitsune_2 ###
|
|
||||||
Local identity : 12D3KooWDs4i6VoK4dpwGSUVtZENzSmsbQk3tF63gYT745x7eAb2
|
|
||||||
Public key (hex) wallet : 0x4078ddb1ba1388f768fe6aa40ba9124a72692ecbcc83dc088fa86c735e4dc128
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xb624cb291f7464773f3b449ee2252165f3934ace08b1e10611a53e174766fc73
|
|
||||||
Public key (hex) for audi : 0xc2403683be24a92ae8489e28fb502e2bab16d815c4f6c865c50ffb34430a8d7c
|
|
||||||
Public key (hex) for babe : 0xca72b6ea2c83f9e429479bf51c324ea90cbf01e08d2850ced2590c8796cfe222
|
|
||||||
Public key (hex) for slow : 0xeabb3463e300f357b9886683d5a240a395f6bd41182057f03b0e9697a8b3465e
|
|
||||||
Public key (hex) for gran : 0x4ec8584ca9da16d8c60e1770e98fbca8bec648e13c69601e3dfdc1330bf1f999
|
|
||||||
|
|
||||||
### Proxmio ###
|
|
||||||
Local identity : 12D3KooWHZDmyvNFF31PCVVrwDSmUPyC7kgvfpC6wTTDevFcX4dH
|
|
||||||
Public key (hex) wallet : 0x5e1456904c40192cd3a18183df7dffea90d97739830a902cabb702ecdae4f649
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xda6875e9df9a7894e065ef5befcde567dec4dc2c0b73a6ad5514dcca26a90702
|
|
||||||
Public key (hex) for audi : 0x1496150847d512e0491899eba72ee36f76b882ae29fccf18201fd9fbd5bfd300
|
|
||||||
Public key (hex) for babe : 0x8006e3f6e3d92c4c5f2e2f001452e4993e6d5c2b1136f2ae6060c6e9c9523b4a
|
|
||||||
Public key (hex) for slow : 0xaaa41b6ade4c30b5792aa6e5604c444e424900ddf649b23eed4bd0d7f5d3a34f
|
|
||||||
Public key (hex) for gran : 0x86ee138c9e7e67c1c2e157c0ba888761a122d8b9aa6a8653e886ac329e34255d
|
|
||||||
|
|
||||||
### Zoom ###
|
|
||||||
Local identity : 12D3KooWLxCLSGuDVHePoXEuyBVFfRPzYXiSVngpYSTVDEwxX49S
|
|
||||||
Public key (hex) wallet : 0xfc00ebab85e7271d8436b9258a4b80700f655810af632b3647109965f8b8e639
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x1040c71fc62c08d520f04bff23814cf9a19673e385142f7ea910c7fbaa910e06
|
|
||||||
Public key (hex) for audi : 0x60a07df1236d676011eb5a49c2e01a04f734a05599e0df51208899bfd746a23e
|
|
||||||
Public key (hex) for babe : 0xf425e0965fc1b6593288a5d100396028217f5931f1bdebaf491358485dfa7f29
|
|
||||||
Public key (hex) for slow : 0x10559a32c870d6087db5367f31c6828d5615effa8f0334362ec444666908ba59
|
|
||||||
Public key (hex) for gran : 0x489b5c32c26dbb04ebaa41695d043934120cdb5794ecb9c51748a9e0edfb9286
|
|
||||||
|
|
||||||
### Tyrone-Overit ###
|
|
||||||
Local identity : 12D3KooWReS7ezsKuuttK4FuGqCJycH9bJEccsBhKb4YuDMhaVZ
|
|
||||||
Public key (hex) wallet : 0x50c8a6b85ae6c3aebf402dbc98f0f09dad4758d37d63f3e39e4d9127eece9360
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xfa6bad513351346342177594080c851e5ac91ebebe708cf368a1044972582f53
|
|
||||||
Public key (hex) for audi : 0x528860f091ca1634af2919472880b93f1788532c2d6779ef940a900c5abc1a26
|
|
||||||
Public key (hex) for babe : 0xc2ee8058909f4880a068190a9cff3b9fa570cdec110334f174b16d9e7d720056
|
|
||||||
Public key (hex) for slow : 0x1ee11e06d7a61e49d61636d1be7c2a58ba26dd87110806ce8573b973f5f6892a
|
|
||||||
Public key (hex) for gran : 0x635308cf5fae9b94271b09a4987064319d57c93abea88671841a84e41be5a83f
|
|
||||||
|
|
||||||
### My Submission for Genesis Code - Satoshi ###
|
|
||||||
Local identity : 12D3KooWPvdyWvTrTpkBKoGZ8KBMjEumrSwWHThoTNg416mVakWJ
|
|
||||||
Public key (hex) wallet : 0x80932904b805be74fa163be7474390633c96f319163f7466adf9844e9b4fa038
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x7291cffd9a948e4a8f7ea9015faae5c9f2384821c34e831d5afaec3284a7c563
|
|
||||||
Public key (hex) for audi : 0x9a4a2cfc28b9196eea423b6177252f7598e93c5e40396a91d214e0bc6c4aca73
|
|
||||||
Public key (hex) for babe : 0xfa517486ef74d8cedbabc8fe4470b3e79c9afd44fca7e5c639e1612c026d2c3d
|
|
||||||
Public key (hex) for slow : 0x58a9b312e847a5bdd1d92d603c07fc3fb5af8d241c482c41e5a30db6240a4779
|
|
||||||
Public key (hex) for gran : 0xffd30acb4b7b4563585618fa0e35f0d64a512387fabe6db931e726e44d0e6726
|
|
||||||
|
|
||||||
### Youconnect ###
|
|
||||||
Local identity : 12D3KooWJXBYA7cUQLLenEfT7hmCjBJ6fyikDy8YhNz4aLfwbBC8
|
|
||||||
Public key (hex) wallet : 0x6e4429a8fa85cfe2a60488af446d57e719207831b2579b937325645e110bb666
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x3a6626211a2dd35683fd7cb5f2f343d75f2b698d6c48c2d6eb1cdbe116e32315
|
|
||||||
Public key (hex) for audi : 0x86676ad3cd2d970b86dee2f25d4318f9bba40455111f16300e114e7f00c58706
|
|
||||||
Public key (hex) for babe : 0x6c0aec49974aaff08ff962a2d8d7857227d027ed27a272cbc4acaa1ee937db0f
|
|
||||||
Public key (hex) for slow : 0x009712519ba7dad1c682c871b94573ccaba8b7d530f7194fb16bf553fd7ae67d
|
|
||||||
Public key (hex) for gran : 0x935becdfb2e0d4fcd46ba82e680cfc447180de6b85ec42d17f1396a520b0c04f
|
|
||||||
|
|
||||||
### pietro0hz ###
|
|
||||||
Local identity : 12D3KooWEcJAQHs59gD3hDWU5UXxc9nNQcS6dPe3cnFtL8bBuEnw
|
|
||||||
Public key (hex) wallet : 0x3aed46c45d1db596ba68c171f58cd0c34178c410ec2485dc9ecaa52f1af75320
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0x445208ab2cd2f9169f1a011bc9d53dd6bc11b139b27caef3bbb1342609931738
|
|
||||||
Public key (hex) for audi : 0x9a12223615fe9cb2967c2b19eb2a4571dcb38a6e059b746c68d58cd00d408b17
|
|
||||||
Public key (hex) for babe : 0x90be1b9c74b38458219433533456b85100727a7f7d5718f0f5aa2145583d4e09
|
|
||||||
Public key (hex) for slow : 0xc051db0753ad038264d823a71e5c5552e456231b9a1c4e1e7584c6d1c854d44b
|
|
||||||
Public key (hex) for gran : 0x6453e432623c915705afc09e0da19b05b58005d4269838b643f11f5df7524b02
|
|
||||||
|
|
||||||
### Fujisan-1 ###
|
|
||||||
Local identity : 12D3KooWDWU21S6yxDapSnKAS3JnhaQBkT4iNTNQ8NpB4QgNUzxr
|
|
||||||
Public key (hex) wallet : 0xe0a13fb6efe591216ca3f2c5a495b9653a5255d0344b17cf02584c40b5b57043
|
|
||||||
===============================================================================================
|
|
||||||
Public key (hex) for stash : 0xa00bd3284a6824ad7f757d98a2646c055126c5dd6450be383760b4f6c0193e40
|
|
||||||
Public key (hex) for audi : 0x3680593818dfa5ed287de4320f730ae22f2a9c05ebebfad931322411ec508961
|
|
||||||
Public key (hex) for babe : 0x3477d5cb7f3dffb8d76a33f32bcbcb5669f992d56ab222cfa0ab496b5b8bff12
|
|
||||||
Public key (hex) for slow : 0x1cf9b6843abd08eee9f99c5db2c9546fa72ef603a5db0e3c9372e63ec6bb6a06
|
|
||||||
Public key (hex) for gran : 0x3a539da581ced44fe567f9dee8a037fbd6cbe5027afe0c1099e3df0a621f030a
|
|
Loading…
Reference in New Issue
Block a user