From c71b45fd4c98f388ef5fb37add138a9d4ad3a28b Mon Sep 17 00:00:00 2001 From: Shahin Safaraliyev Date: Tue, 6 Oct 2026 14:43:46 +0400 Subject: [PATCH] refactor: update PoP to include registrantAddress and chainId Bind the validator BLS proof of possession to the registering account and the configured network so it can't be replayed by another sender or on another chain. - DST is now MAINSAIL_BLS_POP_BLS12381G2_XMD:SHA-256_SSWU_RO_POP_ - message = abi.encodePacked(uint256 chainId, address registrantAddress, bytes pk) - chainId is read from Network.get() - registrantAddress must pass EIP-55 checksum validation, otherwise InvalidProofOfPossessionException is thrown - validatorPassphrase(passphrase) is renamed to validatorProof(passphrase, registrantAddress) on the registration and update builders; TransactionEncoder.validatorRegistration/validatorUpdate take registrantAddress too - tests cover Mainsail's reference vector (chainId 10_000), binding, address validation, and the regenerated bls-keys.json dataset; builder fixtures are regenerated Co-Authored-By: Claude Opus 5.5 --- .../InvalidProofOfPossessionException.java | 8 + .../builder/ValidatorRegistrationBuilder.java | 6 +- .../builder/ValidatorUpdateBuilder.java | 6 +- .../crypto/utils/ProofOfPossession.java | 34 +- .../crypto/utils/TransactionEncoder.java | 11 +- .../ValidatorRegistrationBuilderTest.java | 4 +- .../builder/ValidatorUpdateBuilderTest.java | 4 +- .../crypto/utils/ProofOfPossessionTest.java | 155 ++++-- .../crypto/utils/TransactionEncoderTest.java | 8 +- src/test/resources/bls-keys.json | 516 +++++++++++------- .../transactions/validator-registration.json | 10 +- .../transactions/validator-update.json | 10 +- 12 files changed, 495 insertions(+), 277 deletions(-) create mode 100644 src/main/java/org/arkecosystem/crypto/exceptions/InvalidProofOfPossessionException.java diff --git a/src/main/java/org/arkecosystem/crypto/exceptions/InvalidProofOfPossessionException.java b/src/main/java/org/arkecosystem/crypto/exceptions/InvalidProofOfPossessionException.java new file mode 100644 index 0000000..ac9b834 --- /dev/null +++ b/src/main/java/org/arkecosystem/crypto/exceptions/InvalidProofOfPossessionException.java @@ -0,0 +1,8 @@ +package org.arkecosystem.crypto.exceptions; + +public class InvalidProofOfPossessionException extends IllegalArgumentException { + + public InvalidProofOfPossessionException(String message) { + super(message); + } +} diff --git a/src/main/java/org/arkecosystem/crypto/transactions/builder/ValidatorRegistrationBuilder.java b/src/main/java/org/arkecosystem/crypto/transactions/builder/ValidatorRegistrationBuilder.java index 62a01a6..908fa39 100644 --- a/src/main/java/org/arkecosystem/crypto/transactions/builder/ValidatorRegistrationBuilder.java +++ b/src/main/java/org/arkecosystem/crypto/transactions/builder/ValidatorRegistrationBuilder.java @@ -8,8 +8,10 @@ public class ValidatorRegistrationBuilder extends AbstractTransactionBuilder { - public ValidatorRegistrationBuilder validatorPassphrase(String passphrase) { - ProofOfPossession.Result pop = ProofOfPossession.fromMnemonic(passphrase); + public ValidatorRegistrationBuilder validatorProof( + String passphrase, String registrantAddress) { + ProofOfPossession.Result pop = + ProofOfPossession.fromMnemonic(passphrase, registrantAddress); this.transaction.validatorPublicKey = Hex.encode(pop.pk); this.transaction.validatorProof = Hex.encode(pop.pop); diff --git a/src/main/java/org/arkecosystem/crypto/transactions/builder/ValidatorUpdateBuilder.java b/src/main/java/org/arkecosystem/crypto/transactions/builder/ValidatorUpdateBuilder.java index 3095d2e..0a7c3a2 100644 --- a/src/main/java/org/arkecosystem/crypto/transactions/builder/ValidatorUpdateBuilder.java +++ b/src/main/java/org/arkecosystem/crypto/transactions/builder/ValidatorUpdateBuilder.java @@ -7,8 +7,9 @@ public class ValidatorUpdateBuilder extends AbstractTransactionBuilder { - public ValidatorUpdateBuilder validatorPassphrase(String passphrase) { - ProofOfPossession.Result pop = ProofOfPossession.fromMnemonic(passphrase); + public ValidatorUpdateBuilder validatorProof(String passphrase, String registrantAddress) { + ProofOfPossession.Result pop = + ProofOfPossession.fromMnemonic(passphrase, registrantAddress); this.transaction.validatorPublicKey = Hex.encode(pop.pk); this.transaction.validatorProof = Hex.encode(pop.pop); @@ -26,5 +27,4 @@ protected AbstractTransaction getTransactionInstance() { protected ValidatorUpdateBuilder instance() { return this; } - } diff --git a/src/main/java/org/arkecosystem/crypto/utils/ProofOfPossession.java b/src/main/java/org/arkecosystem/crypto/utils/ProofOfPossession.java index 482c5e1..8b1f1a7 100644 --- a/src/main/java/org/arkecosystem/crypto/utils/ProofOfPossession.java +++ b/src/main/java/org/arkecosystem/crypto/utils/ProofOfPossession.java @@ -2,17 +2,22 @@ import java.nio.charset.StandardCharsets; import java.text.Normalizer; +import org.arkecosystem.crypto.configuration.Network; import org.arkecosystem.crypto.encoding.Hex; +import org.arkecosystem.crypto.exceptions.InvalidProofOfPossessionException; import org.bouncycastle.crypto.digests.SHA512Digest; import org.bouncycastle.crypto.generators.PKCS5S2ParametersGenerator; import org.bouncycastle.crypto.params.KeyParameter; +import org.web3j.abi.TypeEncoder; +import org.web3j.abi.datatypes.DynamicBytes; +import org.web3j.abi.datatypes.generated.Uint256; import supranational.blst.P1; import supranational.blst.P2; import supranational.blst.SecretKey; public class ProofOfPossession { - private static final String POP_DST = "BLS_POP_BLS12381G2_XMD:SHA-256_SSWU_RO_POP_"; + private static final String POP_DST = "MAINSAIL_BLS_POP_BLS12381G2_XMD:SHA-256_SSWU_RO_POP_"; public static final class Result { public final byte[] pk; @@ -32,16 +37,33 @@ public static String deriveBlsPublicKey(String passphrase) { return Hex.encode(new P1(deriveChildSk(passphrase)).compress()); } - public static Result buildProofOfPossession(byte[] secretKeyBytes) { + public static Result buildProofOfPossession(byte[] secretKeyBytes, String registrantAddress) { + if (!Address.validate(registrantAddress)) { + throw new InvalidProofOfPossessionException( + "registrantAddress must be a valid address. Got " + registrantAddress + "."); + } + SecretKey sk = new SecretKey(); sk.from_bendian(secretKeyBytes); + + // 1. Derive the compressed public key (48-byte G1). byte[] pk = new P1(sk).compress(); - P2 sig = new P2().hash_to(pk, POP_DST).sign_with(sk); + + // 2. Hash chainId ‖ registrantAddress ‖ pk to a G2 point under POP_DST, binding + // the proof to the registrant and chain. + String packedChainId = TypeEncoder.encodePacked(new Uint256(Network.get().chainId())); + String packedAddress = + TypeEncoder.encodePacked(new org.web3j.abi.datatypes.Address(registrantAddress)); + String packedPk = TypeEncoder.encodePacked(new DynamicBytes(pk)); + byte[] message = Hex.decode(packedChainId + packedAddress + packedPk); + + // 3. Sign the hashed G2 point with the secret key. + P2 sig = new P2().hash_to(message, POP_DST).sign_with(sk); return new Result(pk, sig.compress()); } - public static Result fromMnemonic(String passphrase) { - return buildProofOfPossession(deriveBlsPrivateKey(passphrase)); + public static Result fromMnemonic(String passphrase, String registrantAddress) { + return buildProofOfPossession(deriveBlsPrivateKey(passphrase), registrantAddress); } private static SecretKey deriveChildSk(String passphrase) { @@ -62,6 +84,4 @@ private static byte[] passphraseToSeed(String passphrase) { gen.init(pass, salt, 2048); return ((KeyParameter) gen.generateDerivedParameters(512)).getKey(); } - - } diff --git a/src/main/java/org/arkecosystem/crypto/utils/TransactionEncoder.java b/src/main/java/org/arkecosystem/crypto/utils/TransactionEncoder.java index 4cf30ad..7458cd8 100644 --- a/src/main/java/org/arkecosystem/crypto/utils/TransactionEncoder.java +++ b/src/main/java/org/arkecosystem/crypto/utils/TransactionEncoder.java @@ -7,7 +7,6 @@ import org.arkecosystem.crypto.encoding.Hex; import org.arkecosystem.crypto.enums.AbiFunction; import org.arkecosystem.crypto.enums.ContractAbiType; -import org.arkecosystem.crypto.utils.ProofOfPossession; public final class TransactionEncoder { @@ -41,8 +40,9 @@ public static String usernameResignation() { Collections.emptyList()); } - public static String validatorRegistration(String passphrase) { - ProofOfPossession.Result pop = ProofOfPossession.fromMnemonic(passphrase); + public static String validatorRegistration(String passphrase, String registrantAddress) { + ProofOfPossession.Result pop = + ProofOfPossession.fromMnemonic(passphrase, registrantAddress); return encode( ContractAbiType.CONSENSUS, AbiFunction.VALIDATOR_REGISTRATION, @@ -56,8 +56,9 @@ public static String validatorResignation() { Collections.emptyList()); } - public static String validatorUpdate(String passphrase) { - ProofOfPossession.Result pop = ProofOfPossession.fromMnemonic(passphrase); + public static String validatorUpdate(String passphrase, String registrantAddress) { + ProofOfPossession.Result pop = + ProofOfPossession.fromMnemonic(passphrase, registrantAddress); return encode( ContractAbiType.CONSENSUS, AbiFunction.UPDATE_VALIDATOR, diff --git a/src/test/java/org/arkecosystem/crypto/transactions/builder/ValidatorRegistrationBuilderTest.java b/src/test/java/org/arkecosystem/crypto/transactions/builder/ValidatorRegistrationBuilderTest.java index 7914820..35bcc91 100644 --- a/src/test/java/org/arkecosystem/crypto/transactions/builder/ValidatorRegistrationBuilderTest.java +++ b/src/test/java/org/arkecosystem/crypto/transactions/builder/ValidatorRegistrationBuilderTest.java @@ -5,6 +5,7 @@ import java.util.Map; import org.arkecosystem.crypto.AbstractTest; import org.arkecosystem.crypto.encoding.Hex; +import org.arkecosystem.crypto.identities.Address; import org.junit.jupiter.api.Test; public class ValidatorRegistrationBuilderTest extends AbstractTest { @@ -25,7 +26,8 @@ public void it_should_sign_it_with_a_passphrase() throws Exception { .nonce(Long.parseLong(data.get("nonce").toString())) .network(((Number) data.get("network")).intValue()) .gasLimit(((Number) data.get("gasLimit")).longValue()) - .validatorPassphrase(VALIDATOR_PASSPHRASE) + .validatorProof( + VALIDATOR_PASSPHRASE, Address.fromPassphrase(this.passphrase)) .recipientAddress((String) data.get("recipientAddress")) .sign(this.passphrase); diff --git a/src/test/java/org/arkecosystem/crypto/transactions/builder/ValidatorUpdateBuilderTest.java b/src/test/java/org/arkecosystem/crypto/transactions/builder/ValidatorUpdateBuilderTest.java index d02dd11..832f510 100644 --- a/src/test/java/org/arkecosystem/crypto/transactions/builder/ValidatorUpdateBuilderTest.java +++ b/src/test/java/org/arkecosystem/crypto/transactions/builder/ValidatorUpdateBuilderTest.java @@ -5,6 +5,7 @@ import java.util.Map; import org.arkecosystem.crypto.AbstractTest; import org.arkecosystem.crypto.encoding.Hex; +import org.arkecosystem.crypto.identities.Address; import org.junit.jupiter.api.Test; public class ValidatorUpdateBuilderTest extends AbstractTest { @@ -25,7 +26,8 @@ public void it_should_sign_it_with_a_passphrase() throws Exception { .nonce(Long.parseLong(data.get("nonce").toString())) .network(((Number) data.get("network")).intValue()) .gasLimit(((Number) data.get("gasLimit")).longValue()) - .validatorPassphrase(VALIDATOR_PASSPHRASE) + .validatorProof( + VALIDATOR_PASSPHRASE, Address.fromPassphrase(this.passphrase)) .recipientAddress((String) data.get("recipientAddress")) .sign(this.passphrase); diff --git a/src/test/java/org/arkecosystem/crypto/utils/ProofOfPossessionTest.java b/src/test/java/org/arkecosystem/crypto/utils/ProofOfPossessionTest.java index 50123ff..170a86c 100644 --- a/src/test/java/org/arkecosystem/crypto/utils/ProofOfPossessionTest.java +++ b/src/test/java/org/arkecosystem/crypto/utils/ProofOfPossessionTest.java @@ -1,29 +1,46 @@ package org.arkecosystem.crypto.utils; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import java.io.InputStreamReader; import java.lang.reflect.Type; +import java.math.BigInteger; +import java.nio.ByteBuffer; +import java.util.ArrayList; import java.util.List; import java.util.Map; -import java.util.ArrayList; +import java.util.function.Supplier; import java.util.stream.Stream; +import org.arkecosystem.crypto.configuration.Network; import org.arkecosystem.crypto.encoding.Hex; +import org.arkecosystem.crypto.exceptions.InvalidProofOfPossessionException; +import org.arkecosystem.crypto.networks.INetwork; +import org.arkecosystem.crypto.networks.Testnet; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.MethodSource; +import supranational.blst.BLST_ERROR; +import supranational.blst.P1_Affine; +import supranational.blst.P2_Affine; public class ProofOfPossessionTest { - // Pinned vectors from typescript-crypto/tests/unit/utils/ProofOfPossession.test.ts + private static final String POP_DST = "MAINSAIL_BLS_POP_BLS12381G2_XMD:SHA-256_SSWU_RO_POP_"; + private static final String SK_A_HEX = "67d53f170b908cabb9eb326c3c337762d59289a8fec79f7bc9254b584b73265c"; private static final String SK_A_PK = "a7e75af9dd4d868a41ad2f5a5b021d653e31084261724fb40ae2f1b1c31c778d3b9464502d599cf6720723ec5c68b59d"; - private static final String SK_A_POP = - "878ad02e1f215d40722bd77a0148adb8dfaad4514157600a0a926cfc58589fa4e79d3d4d579cc4149237b8100efdcff110dd2a251c52543539d499c8f24b142da66d1dc19ec44b3d9c3f71112b2705e5557f932a36bd9cd9b3544ab0d9e6a677"; + + private static final String REGISTRANT_ADDRESS = "0x75545540230d5c3BEf023202d23CB74cFA723376"; + + // Mainsail's reference vector (packages/crypto-key-pair-bls12-381), bound to chainId 10_000. + private static final int MAINSAIL_CHAIN_ID = 10_000; + private static final String SK_A_MAINSAIL_POP = + "a892e94d8ed6d0fe8792dcb31b7c5116a7d138ad4bbbd044780a7c314e86673e783850121dc34d0edfa2a2560c2f30a402f4fa5106ff71d5c69bc3027210ef90b3d3ae0a19ffc9f554b37aca72f3bb25788c3177514d94e041441ba9d029b3ba"; private static final String PASSPHRASE_A = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about"; @@ -31,33 +48,87 @@ public class ProofOfPossessionTest { "b7e5e1ea87f5be0ac7d97402a73002d302a3672f58aacb443cc5456190eac50f439f61b73556209de7624dfb535459e8"; private static final String PASSPHRASE_ZH = - "逻 砖 浇 动 牌 霞 扎 团 柴 年 虽 类" - + " 因 什 电 骂 后 什 帽 玻 缩 像" - + " 壮 摘"; + "逻 砖 浇 动 牌 霞 扎 团 柴 年 虽 类" + " 因 什 电 骂 后 什 帽 玻 缩 像" + " 壮 摘"; private static final String PASSPHRASE_ZH_SK = "3c91a0142bdb0c777b64c74ae2a76cb110b1cdd56f2781aeb5ba7f1eac983b91"; private static final String PASSPHRASE_ZH_PK = "a6fab215d09829188d9fe753ae0162cb0aacfc875a2246550585205cd95e062b79585402b3ef853a8afc73a13e09065b"; - private static final String PASSPHRASE_ZH_POP = - "b2333783b03f6b0c095391c48b874a1d4e6beac5c840a5a89ef3954f94bf5519210578aa734ecbe90e90a7417eed001a01e3402e3c899183ffee6fe636a02833276b0f3bac543312804d2c9908233252e998696d6fd34df847137b48c4548b78"; + + private static byte[] message(long chainId, String registrantAddress, byte[] pk) { + byte[] chainIdBytes = BigInteger.valueOf(chainId).toByteArray(); + ByteBuffer buffer = ByteBuffer.allocate(32 + 20 + pk.length); + buffer.position(32 - chainIdBytes.length); + buffer.put(chainIdBytes); + buffer.put(Hex.decode(registrantAddress.substring(2).toLowerCase())); + buffer.put(pk); + return buffer.array(); + } + + private static boolean verifies(ProofOfPossession.Result result, byte[] message) { + return new P2_Affine(result.pop) + .core_verify(new P1_Affine(result.pk), true, message, POP_DST) + == BLST_ERROR.BLST_SUCCESS; + } @Test - public void buildProofOfPossessionPkMatchesPinnedVector() { - ProofOfPossession.Result result = ProofOfPossession.buildProofOfPossession(Hex.decode(SK_A_HEX)); - assertEquals(SK_A_PK, Hex.encode(result.pk)); + public void bindsThePopToTheConfiguredChainIdAndRegistrantAddress() { + ProofOfPossession.Result result = + ProofOfPossession.buildProofOfPossession(Hex.decode(SK_A_HEX), REGISTRANT_ADDRESS); + int chainId = Network.get().chainId(); + + assertEquals(true, verifies(result, message(chainId, REGISTRANT_ADDRESS, result.pk))); + assertEquals(false, verifies(result, message(chainId + 1, REGISTRANT_ADDRESS, result.pk))); + assertEquals( + false, + verifies( + result, + message(chainId, "0xBd6F65c58A46427AF4B257cBE231D0eD69eD5508", result.pk))); } @Test - public void buildProofOfPossessionPopMatchesPinnedVector() { - ProofOfPossession.Result result = ProofOfPossession.buildProofOfPossession(Hex.decode(SK_A_HEX)); - assertEquals(SK_A_POP, Hex.encode(result.pop)); + public void throwsOnAnInvalidRegistrantAddress() { + byte[] sk = Hex.decode(SK_A_HEX); + + assertThrows( + InvalidProofOfPossessionException.class, + () -> ProofOfPossession.buildProofOfPossession(sk, "0x1234")); + + // A mistyped checksum must not silently bind the PoP to a different address. + assertThrows( + InvalidProofOfPossessionException.class, + () -> + ProofOfPossession.buildProofOfPossession( + sk, "0x75545540230d5c3bEf023202d23CB74cFA723376")); + } + + private static T withChainId(int chainId, Supplier action) { + INetwork previous = Network.get(); + Network.set( + new Testnet() { + @Override + public int chainId() { + return chainId; + } + }); + + try { + return action.get(); + } finally { + Network.set(previous); + } } @Test - public void fromMnemonicChineseMnemonicPkAndPop() { - ProofOfPossession.Result result = ProofOfPossession.fromMnemonic(PASSPHRASE_ZH); - assertEquals(PASSPHRASE_ZH_PK, Hex.encode(result.pk)); - assertEquals(PASSPHRASE_ZH_POP, Hex.encode(result.pop)); + public void matchesMainsailPinnedTestVectorForSkA() { + ProofOfPossession.Result result = + withChainId( + MAINSAIL_CHAIN_ID, + () -> + ProofOfPossession.buildProofOfPossession( + Hex.decode(SK_A_HEX), REGISTRANT_ADDRESS)); + + assertEquals(SK_A_PK, Hex.encode(result.pk)); + assertEquals(SK_A_MAINSAIL_POP, Hex.encode(result.pop)); } @Test @@ -67,7 +138,8 @@ public void deriveBlsPublicKeyMatchesPinnedVector() { @Test public void deriveBlsPrivateKeyChineseMnemonic() { - assertEquals(PASSPHRASE_ZH_SK, Hex.encode(ProofOfPossession.deriveBlsPrivateKey(PASSPHRASE_ZH))); + assertEquals( + PASSPHRASE_ZH_SK, Hex.encode(ProofOfPossession.deriveBlsPrivateKey(PASSPHRASE_ZH))); } @Test @@ -75,15 +147,15 @@ public void deriveBlsPublicKeyChineseMnemonic() { assertEquals(PASSPHRASE_ZH_PK, ProofOfPossession.deriveBlsPublicKey(PASSPHRASE_ZH)); } - @Test - public void buildProofOfPossessionChineseMnemonicPkAndPop() { - byte[] sk = ProofOfPossession.deriveBlsPrivateKey(PASSPHRASE_ZH); - ProofOfPossession.Result result = ProofOfPossession.buildProofOfPossession(sk); - assertEquals(PASSPHRASE_ZH_PK, Hex.encode(result.pk)); - assertEquals(PASSPHRASE_ZH_POP, Hex.encode(result.pop)); - } - - record BlsKeyVector(String language, int index, String mnemonic, String sk, String pk, String pop) { + record BlsKeyVector( + String language, + int index, + String mnemonic, + String sk, + String pk, + int chainId, + String address, + String pop) { @Override public String toString() { return language + "[" + index + "]"; @@ -94,7 +166,12 @@ public String toString() { @MethodSource("blsKeyVectors") public void blsKeyVectorsMatchJsonDataset(BlsKeyVector v) { assertEquals(v.sk(), Hex.encode(ProofOfPossession.deriveBlsPrivateKey(v.mnemonic()))); - ProofOfPossession.Result result = ProofOfPossession.fromMnemonic(v.mnemonic()); + assertEquals(v.pk(), ProofOfPossession.deriveBlsPublicKey(v.mnemonic())); + + ProofOfPossession.Result result = + withChainId( + v.chainId(), + () -> ProofOfPossession.fromMnemonic(v.mnemonic(), v.address())); assertEquals(v.pk(), Hex.encode(result.pk)); assertEquals(v.pop(), Hex.encode(result.pop)); } @@ -111,16 +188,18 @@ static Stream blsKeyVectors() throws Exception { for (var entry : data.entrySet()) { int i = 1; for (var v : entry.getValue()) { - vectors.add(new BlsKeyVector( - entry.getKey(), - i++, - v.get("mnemonic"), - v.get("validatorPrivateKey"), - v.get("validatorPublicKey").substring(2), - v.get("validatorPop").substring(2))); + vectors.add( + new BlsKeyVector( + entry.getKey(), + i++, + v.get("mnemonic"), + v.get("validatorPrivateKey"), + v.get("validatorPublicKey").substring(2), + Integer.parseInt(v.get("chainId")), + v.get("address"), + v.get("validatorPop").substring(2))); } } return vectors.stream(); } - } diff --git a/src/test/java/org/arkecosystem/crypto/utils/TransactionEncoderTest.java b/src/test/java/org/arkecosystem/crypto/utils/TransactionEncoderTest.java index f171182..4797387 100644 --- a/src/test/java/org/arkecosystem/crypto/utils/TransactionEncoderTest.java +++ b/src/test/java/org/arkecosystem/crypto/utils/TransactionEncoderTest.java @@ -16,6 +16,8 @@ public class TransactionEncoderTest { + " connect misery update episode invite salute barely garbage exclude winner" + " visa cruise"; + private static final String REGISTRANT_ADDRESS = "0xb0FF9213f7226bBB72b84dE16af86e56f1f38B01"; + @Test public void it_should_encode_a_vote_payload() throws Exception { String address = "0xC3bBE9B1CeE1ff85Ad72b87414B0E9B7F2366763"; @@ -37,7 +39,8 @@ public void it_should_encode_an_unvote_payload() throws Exception { @Test public void it_should_encode_a_validator_registration_payload() throws Exception { - String payload = TransactionEncoder.validatorRegistration(VALIDATOR_PASSPHRASE); + String payload = + TransactionEncoder.validatorRegistration(VALIDATOR_PASSPHRASE, REGISTRANT_ADDRESS); Map decoded = new AbiDecoder().decodeFunctionData(payload); assertEquals("registerValidator", decoded.get("functionName")); @@ -53,7 +56,8 @@ public void it_should_encode_a_validator_resignation_payload() throws Exception @Test public void it_should_encode_a_validator_update_payload() throws Exception { - String payload = TransactionEncoder.validatorUpdate(VALIDATOR_PASSPHRASE); + String payload = + TransactionEncoder.validatorUpdate(VALIDATOR_PASSPHRASE, REGISTRANT_ADDRESS); Map decoded = new AbiDecoder().decodeFunctionData(payload); assertEquals("updateValidator", decoded.get("functionName")); diff --git a/src/test/resources/bls-keys.json b/src/test/resources/bls-keys.json index 8518da3..f38df36 100644 --- a/src/test/resources/bls-keys.json +++ b/src/test/resources/bls-keys.json @@ -1,322 +1,422 @@ { "czech": [ { - "mnemonic": "krutost soumrak trhlina ruchadlo obloha traverza gotika seshora poloha sliznice skanzen mohyla hodovat bojovat lomcovat navzdory zalepit ucho pyramida ponechat odhodit fialka sodovka vymizet", - "validatorPrivateKey": "05c738639663e7007caf9c7fd05a35fd094a9bdc0f4df5c44fdf6b1010ecd83b", - "validatorPublicKey": "0x887d6ee1fd5b81fb842be07cc92c458f3b1466c83d9d4437ba8ae711461915f7670627120c9122ef70992a71d18e58cf", - "validatorPop": "0xa94b3d6af373fcc267b1e0d64dd4e04af441a20c537e4611eab2304175ee087b3b044c9dd793ae3bab76a22a2e5fdceb124757a607a8553d3c8ed5dd10993c806089fdef1194e5e3664880364430fd8b82579aaf947340c3c367ebbd97e123fa" - }, - { - "mnemonic": "cvaknout hejkal gril vitalita husita vzdychat obyvatel skladba husita muzeum provaz zajistit obohatit podoba trojice pytel filtr velryba expedice nadobro vymazat deficit odluka stupnice", - "validatorPrivateKey": "33122311763a233177912d8310ed79e3fb5db75a1477809cc38442a50dc23d59", - "validatorPublicKey": "0xac254fdfe31889767359090ad9ad2bd68770d0384debf775ba6844b9057e0671b02ca1f16052d450b8874930633c68ce", - "validatorPop": "0xb2f6cdef1f344cb8501c31ed71f1c4647ce367195e3e35f77d8c820f4ec7e935551b4b90b017d17d7d9304aa23e4bf60103dfb11d270e2ce66ba668a055eede53a1a0d31654d228e0ddee8305e3dbf4d4f74552e949ff090ec4c9f95617e71c2" - }, - { - "mnemonic": "tahoun doma linka nerost vyhradit zhluboka paruka roubenka vyhledat smrtka uplynout hodovat slon baletka uzdravit imunita zhltnout zvesela lichotka nahodile investor ikona lucerna katalog", - "validatorPrivateKey": "4f85e107d5dec8af96854b6afb492121be87eeccfc38384db50fd434a25a711d", - "validatorPublicKey": "0xb69c23db033f54e1acb7ef42e98f643986eaf6335eccc11cafd4b94b05c661f6b073df93fdd6d692abce91d4ff63b6da", - "validatorPop": "0xb85282490de9fa8ab158559a5877444b2e366f95e55de4f920c4f552b3ed3b405cdabe0635131718b5de042f6e9a348b131c9e2fe81e1e2c37cb8dbf8a3202e1bed9cc03267cfbd8aa5f98a2bd6cd5624d50ea252511dd7e191cb767ebb8f1f4" - }, - { - "mnemonic": "pyramida fialka odkaz frakce hezky doufat burza vidle foton mandle patrona klesnout nakonec pochod detektiv chochol sponzor kapr odpykat brzy biograf groteska mihnout otvor", - "validatorPrivateKey": "122e17048e149339525a82c7142664974ca42203ac6c7414418e32cd8fc82f64", - "validatorPublicKey": "0xa14df06f4bb8226a9c579cf643228cfac334d15010a9b274bcbe58576358c77d8c3ebce0679833bbda0399531cebd66f", - "validatorPop": "0x8a27e6375e1d07bc838dd14056bf501c955a2bc5264ca7c828950f416ec1879af732ff861342ebcf5afb161442614f890b9cffe228e997eeb0efdf944d15fd665b625c4cae67b83aeb23b6c2f6112baad57c9a470d6d759d4f399d94019dda4b" - }, - { - "mnemonic": "milost blokovat uniforma secese biograf princip idylka bilance velmoc jevit logika empatie loudal tiskopis mandle doplnit rejnok vjezd kormidlo linie internet vlasec karton pochod", - "validatorPrivateKey": "2b2dbab558963ca5938f2cf787a70502a127e3d321712fcedbf68d0e4665885b", - "validatorPublicKey": "0x9989f97279d009615299b6b14ce2b67ac24853ef02f78a466e785d7e1af9bcdc7f23533e8adf42a4e15e7f9c2b5647a0", - "validatorPop": "0x879e5c3d608f814921bba9a4cf53f35e6fcb2a098aae66e4185664f2343b02465c2c8f6aa868041af84b90aadc9c57b702158dd599283bf8d689fde926f0e9375dd90fccd14f052d12d5f9fcd4545690034db64fba4bb6d89e26de072bdf6b7d" + "mnemonic": "omeleta sekta kopnout stvol pecka penalta okrasa balonek obvinit ulita trest terapie pevnina zeptat expedice periskop majitel pianista sazenice letokruh zmodrat holka riskovat roztok", + "address": "0x434e5F0795A77f3221373560e69dFE5D8BEA8146", + "chainId": 11812, + "validatorPrivateKey": "11fab985bb334a4310e980a61aa88a6d57373a6f46bfb9fe3042d1c0689ddcf2", + "validatorPublicKey": "0x8000f9c50c86215314916a65c058eef2512e05d1e681f303d2a00b145c781f9b68209228a45b9acfc01738b6373f567c", + "validatorPop": "0xb35e4b5ddc82d7cec81ff553ffc9396385363a4686d46dd7aaca919a518aa51a443a29b5d0f8adb9b05cf9cb652d72a311e127e59ba5a28ea758fc7fb756d8965fb2b23791134b61397517ea7966dcd862daac38ab0063465f2fec2850772668" + }, + { + "mnemonic": "losos modelka kravata novota jiskra sekera zlehka chirurg samota obloha naprosto konina pudl jinak vzadu zrnitost etiketa kujnost bedna mosaz pacient kozoroh kauza obrazec", + "address": "0x1f9F84ecCb6E34FBB79f9F2b66F9849cad5603A9", + "chainId": 11812, + "validatorPrivateKey": "0877bf628f04c94b8f5116c21c88d15ec4c2867d9b6cb4d312fead5e7209df5e", + "validatorPublicKey": "0xa824e8e7f73b7d67981d8ff96a0efa5fb0b526504a3884f1b31a9979bbf31ce5ea5d6ea167426dd8dfe3a29ec0ef3c6c", + "validatorPop": "0xae3e27db77b96e3a5b8543fd9f0793db055ca9c5e26f35e1380b4acf4a4e61683ea2e2c5a7173ede8124c97f3a8bf57d0cd7bfb0d911ed5acaa18da4902be3f308d19fbc23b548d64796ab3a9a4961601c68562d043a9a6807864a76b701bced" + }, + { + "mnemonic": "krmelec agrese raft zlost napevno krasopis bufet leckdy postava malina sesuv hoblina koncept panika teplota prosba letokruh sokol utonout truhlice fukar zkoumat zrzavost vymizet", + "address": "0x5a88A434b0322D15bB0647c64ADa9E37039E44bF", + "chainId": 11812, + "validatorPrivateKey": "71bfbbe92be0e67bd4ea5058a2286b85fde1729c71b7320b316ff7cf87e5dc5b", + "validatorPublicKey": "0x89116d49fa0eef7efd12a88f610c28f839889e38c8231543371e909845d57c60444dcb38aca418978865fdc8cb482197", + "validatorPop": "0x91dda4ba6c525761fb126109c926ece89179255ebb4fb5919aee9f47a7cd7c9e9e3d127d62c9abf3430b23af0a17d31210fa16a0a2cc999052692e17909ba6214cc819a6d335a707b27b8c48fe997f7cec834668709aad127906f138601b6155" + }, + { + "mnemonic": "sesadit nasekat zlato riskovat burza servis iluze vymezit nuda hrubost baletka decibel povrch tramp bizon kytice mravenec smrtka exkurze hmyz lomcovat mahagon sluch tiskopis", + "address": "0xf483E2780318F3f4C46C0e4044a886dd2527d8aA", + "chainId": 11812, + "validatorPrivateKey": "4461af9bce9d7260ccafcf57c1a2e6a0b6a916b5e00281be441da220d674e9a3", + "validatorPublicKey": "0xa863abfae4bb6b00a8709abd0ff17998036c6066556cf1ac61afee1e4bb3f7a5092050e67b4c3ec5b39955bea761de12", + "validatorPop": "0x990ce291d6fdc3f2b3ea76bb9f98bf87f6e964d2a89151d33e2225b64eecc6442084d50a674b021651fed6d095231720059b9708dfddd83c0dc58d95129d66bc77eee0695a3b0c699a52d03abd0569abca1c4607af5ed6171f2220476e3be0b1" + }, + { + "mnemonic": "mzda vyjasnit odplout vypadat cyklista figurant doklad buchta smrtka vandal odvolat truchlit korzet mandle vypustit bubnovat mazlit minibar dojnice sasanka majorita upoutat podcenit pobyt", + "address": "0xb5989b010Bc46E60De927f2271d83bbdE0d80479", + "chainId": 11812, + "validatorPrivateKey": "12968d26e3dcca50d96634440e05931eeef5d45749ea96da674bb27f84f4abd9", + "validatorPublicKey": "0x92018f5c2add62894d6c99ab57150b0d7a66522be61a9300b579c5d297133ad300e3e5113407abf299824c27a501c685", + "validatorPop": "0xa730d7f39738839ba28883b28255b689e624e71364b5037c3da9dc2699d14e38e341ba1323c9e647e1f70b023f5f13e7085ee2c14ad0a5ca50d143026bab7ed43dca169f631c0ea23129524439353c2a6a137018ba8e3179076f8e11cb0272cf" } ], "chinese_simplified": [ { - "mnemonic": "菜 流 税 救 您 猛 糖 岸 丽 征 辞 择 石 幼 机 牙 往 荡 念 乙 贮 投 辉 堵", - "validatorPrivateKey": "631add6d0fbb16afe392e979c6b624e603e7e055818d9da0874071c89cab6621", - "validatorPublicKey": "0xa2592a3863c9e87c16df307755a3145fe29f3fea0286318f98a7f154560c7f4925593f419cc41db417a918ddac1febb6", - "validatorPop": "0x95f89451f6632363b444dfd273b1ca0c1462fbfe409b8c5df48acf675fe781e2a3da2bb60adc6d3cdcb84b52c23a240c03cbdb1982208efa91f981d8a8e79be2bcdb6fae8510f3fdc2d55f9a30cc83385a3bce5e7022aeac1e645c3601d4a79b" + "mnemonic": "循 熔 存 块 伸 牛 课 铃 孩 涨 户 驻 达 专 荣 校 候 英 提 论 羽 块 寄 溶", + "address": "0xFE5b8Da4762566982673219D64e535798B1E0bc4", + "chainId": 11812, + "validatorPrivateKey": "124fe71b40ee0b44b0371480f3da63520ddc66f9d1925c128ddd62d4871911d8", + "validatorPublicKey": "0xa882b16b04573e22eba614fdb368b11cbcb7a73c78116b89442f5accb9c42357e2ebb90b436f52c8e0a80cca0729b8aa", + "validatorPop": "0xb1ff989d49cef9da2f07d0e2e0c38cead2182fd2f5ac7214a1d005cf759d6984984413bee8ad1b3dd513259fa8e90eb50202c79121085bdd9f84d18a9190700ae84108e31251491f1eeeec14262ce35ef4f0d0e2815e321e97e1e2d05102a86a" }, { - "mnemonic": "衰 轨 创 社 辉 塘 落 都 毒 栏 准 歪 相 多 众 吨 帐 健 含 劲 袁 从 洋 完", - "validatorPrivateKey": "668ffaf41d63f8f46f1362adcb5f29662c2aa51cf7b7671574cb8bbd81e186fd", - "validatorPublicKey": "0xaa89a80828a154559a59144da0a6d3fe7cf61a7c7fcc9acc0033b0cefdc83dd866a2adfc9883d74276fe4c3c8577790a", - "validatorPop": "0x80baf32a0024b39fffb05d434472ed83cffbcd540b1e21882345459e7814558ff99b374b7330231b853d06e6e26c5f3311851e755d501bea16d147dbe28ba78dbdef10c32dca37de13a1f2c6604f282ceb00527a84e91c239108fe8ee653011a" + "mnemonic": "死 斥 更 允 误 宽 奋 损 相 买 者 母 默 唱 障 绝 断 宋 杯 歪 吗 件 舍 雨", + "address": "0x07fc6db21443564D64028311DCbE40a0B754b692", + "chainId": 11812, + "validatorPrivateKey": "5ef18ba3a547f1e14b4050a6b28e64a41e9488184b3ae71b2127bfdd0db5bfc5", + "validatorPublicKey": "0xb049f63ea6d69eb02c2829d5e63f25dbdabc1cb9ceb1ea4f9831cdfd76418a25b756584cd7ee935311701457d4a8c655", + "validatorPop": "0xac5c4dd8a939ec582752049bf61a2484feceb4d4361f03d309636f7c0d30f98347f570b51eb71e0b4abc353ab0cb72dd17107b4445209a208e0d12af7b18ace34bbb5c61898a3c2a510a9edbc8c23d8cf22a44081cf0791178929331aec9032f" }, { - "mnemonic": "钠 灌 丙 浇 八 把 厘 弄 扰 纷 均 莲 并 伙 干 苦 文 炎 留 插 宾 蛋 硬 拜", - "validatorPrivateKey": "2d24632f085198597ec5864dcca5e7b11ee36561c2a05ea2eb6bd7c8a64bd793", - "validatorPublicKey": "0x99c3016c65b78a0144c2a05feee1705e4e55713b907a9bbd017cd37ccdae9206062a4198d00b8cda1acecb8edcef3fe4", - "validatorPop": "0x8c9dd70ad8ae1fd0ee5ddc6c82c3aad472f74282dbcfb846a40ba9d44536cda965a61d045bfbbb161a31721746548e980f0b4752b9348f8a45d049b211165db857157bde860490294c1a1b38969be85c5f1bb5f86f643cb077ee00a585809d06" + "mnemonic": "弄 章 雕 端 本 种 摆 产 炭 仪 味 米 径 习 轴 熙 腹 遗 统 纹 血 彼 竹 矿", + "address": "0xa1448B9D92733f1CC8C6056215E83B6CC4470B3F", + "chainId": 11812, + "validatorPrivateKey": "58c8b0b142dd88b388f4845ecfdc1f29249a2b7bce3e1989c31aa56454ed3d30", + "validatorPublicKey": "0x8ac5ba4236c6223fece6c8b02bb22328b7c65d11046a28a07ff3d416de352decc547faa0fdd3e6262caed4b98de0b34b", + "validatorPop": "0xacba24b2d42022b95b093ec8c64b812d9b48fd01f87297eb02e561c3d09737ded906f74050e9468db0f67bcfefd2637519ba8f2b75082f3d33387f04ed798a615248d87fbd3015dd2e89ae62201195db214e6f57d62be625edcf64b05611d25d" }, { - "mnemonic": "像 署 摄 繁 箭 润 般 户 王 坦 凝 涉 腰 蒋 疗 奏 腔 脸 母 卿 衣 季 抛 找", - "validatorPrivateKey": "38d85857446300db50d9d5ec25559fdba4213c9d7c06be4093af0d8821d9a0ba", - "validatorPublicKey": "0xa5f9d3951767134bd611a442dbd6d9ce489c7902ff2d8a333bdcb4c90a40a3f758d3eda6d1f5b01eac1b98ce7a027726", - "validatorPop": "0xb98a53485a719226b5a7cc51f0c2f32609c5df005fc398bde6fe4dde61553a0dded382cabf736dd18c0e01fca402de75022a46941efb4e908406f6ccdfb90dfc6f19a0f3f6bdafc145a56741c4cc213b71ca859d49cc9ac43010d8902525877e" + "mnemonic": "液 钠 形 资 埃 林 灭 座 塑 冬 醒 签 继 剂 勾 罢 过 乏 秩 似 辨 悉 接 一", + "address": "0x723a8d8691ED350e1859B42ba9dD0deF00e3Cf35", + "chainId": 11812, + "validatorPrivateKey": "564baabce0dfdbd46a3635e26fdf5ec3836345467aea3d462f82b64a1fb0b9bb", + "validatorPublicKey": "0xb897d3aa7a96576fe535a88df4e70ef5ed8621e22a052d95f20a90719f936d9a8f330e1250ad7c1b388965281da0e204", + "validatorPop": "0x8bda0f2951546e7e2c2ab7a37479959d82853aa952a17b255e73bf99d55bbc50ba69fe3d783123da5736eac62e3a860a177f8baf38512a6edbcd2eaab363abbc8850d50713ad3755e09224f04241cf0f859becde88bed403f001b989b72fa5f1" }, { - "mnemonic": "序 轧 侧 蛋 二 仍 恰 招 钾 概 映 除 替 疑 壤 产 捕 恐 谈 练 馆 象 氮 虾", - "validatorPrivateKey": "0341bb011bd7697244471e811eaebe341ff57865c5ec0f14d12133432f595f3d", - "validatorPublicKey": "0x8504e255155b8c2276cc59a67dedc30abd024b83e248db643faf502ee4661f49dcb1d55517bdf291e45f297efeab3ea2", - "validatorPop": "0x9272d5134eb47c1cc7e7aca3db9e75b1c0237c5a8ab822b358e00f3183a5d0c1b58e79baccae7482b5eb88eeda8bbde91076946d90e6e10f67dd3f0a06ed1dd173215b9cf40f1b30df6f037e2f96ec88b9157b6aa4141b3db39f6ae8f2d3d9ab" + "mnemonic": "安 变 优 软 残 拨 舰 丘 呈 咨 薄 柯 总 您 办 泪 如 泽 三 碧 伯 译 轮 减", + "address": "0xCa3A12B2B4872385E3afA5e08db8AD3f5ae00626", + "chainId": 11812, + "validatorPrivateKey": "53b9bbcf29f94c43725b1c4db9d1b4cd28e634abae0edd136fffeeebf2bdd387", + "validatorPublicKey": "0x97ca5f55a404b34a60acc1e37fd8e1d3b9ef6b9248591f44aa44856f9e5f8b13eb330c119d128a326607ceb06bcf7bf8", + "validatorPop": "0xb176b81dc1041a92d80a8e89e2d06fda7d204520c39aa13ecc071d690861d8093a720cf8eee9d4756577dc8c6525d7e31741beb2b049571e592ec0f41bc8a04186940ac7adb8d2c87284ea26ce0460584fd5c06e67783171386502102ed6005b" } ], "chinese_traditional": [ { - "mnemonic": "仁 作 杜 女 剪 輸 百 背 卿 練 多 棉 勒 法 旬 宋 考 飾 它 緊 婚 頓 表 錠", - "validatorPrivateKey": "0e7afde79d5cfb6c3595c20f7a375ab89a09aa86fa9223016045d3be7406ca82", - "validatorPublicKey": "0x8719511e638fc14df4bffaa7c46523f6a010a55c27e24152bdb8bdb8f45aa59477f6e3d6574aa160bfe07d295a1a0497", - "validatorPop": "0x8adea1a9d442d06fef7d3f4c901dd6b536a2f82aab0435af3012383812f2cdd9a3f659a15902bed6dd5e5bdb3dddf35c11772b7341571d536ad0baafec38d5f411112b85f995ab879590878c13137f5e48a56ed3c4f8db9066701312ff188e76" + "mnemonic": "藏 排 袋 尋 街 級 鬥 炮 掘 放 絡 盈 籠 造 奮 擬 飄 原 創 江 告 船 傷 遭", + "address": "0xB803964F74BD4c07B138B06B1029144632C47C44", + "chainId": 11812, + "validatorPrivateKey": "14d2360d01cf4e3c3453664c9eed7c6750560627bc7c2a6bb50ac55dbeace6c7", + "validatorPublicKey": "0xb68e488c76167b80675650776a548782fa73cf4cb10cec6a00acb86c1eb5df9de1281baf4b18ec0b0860fa37674256d2", + "validatorPop": "0x8e6b6b419b7b70faafaae0133e768c04eb0874bbe62c4e50cf55ba0489c1558daeb384b6447cc59bd04966f255831f511868d75a13fa1dd0dcbc054248d8cd0782c20ebede1b212da46adc6bf7effd1b6c620c52539dfe3e6fce74cbd3c40ea0" }, { - "mnemonic": "桑 黴 飄 療 驅 釘 完 刮 當 補 窮 搬 罐 蔥 喝 臟 禁 伊 航 管 丘 強 勘 售", - "validatorPrivateKey": "3cff2fe0a9ef0065cb57f6df6396404214853d6e1d97d627ec90921f266a6b3f", - "validatorPublicKey": "0x9343ce3d653cce03d84dde1601d4f973d795005e51fc0616c79274050b36157cbd2215a8b1ca32f134f6246ed77274d8", - "validatorPop": "0x85b86c671a56be8a1f7153b0858a26f8ff458c999fb398647f62dbc36df1b575d1060307f9314eb70061b2738ba5d6d001ad87944b69b037efe9c6779c435dcc0129d37c1b6a86626b1fdcd5279740abfcad95f909f3290b6f5cd992f52b7076" + "mnemonic": "住 祖 洪 秘 徹 途 賴 固 始 睡 倡 托 璃 祥 盜 播 腐 雜 催 弧 味 結 操 倆", + "address": "0xC8127d2a1d5aEF6aa26C3479ba6d50C73ACdF1Fa", + "chainId": 11812, + "validatorPrivateKey": "704b87a479940945b34c19c182f1509d75e6d37233a585ea27e4e519c38dc21b", + "validatorPublicKey": "0xa9d6d9f638c49d2dedc0f429e32b30fa988f5610b05594bd4d116aa8e32a4e34b54c34f9d2b0e04fb1b876a462955c28", + "validatorPop": "0xa4556e2e222f77c3beaafd372d5a46660e3e706adbddaad616095043d56a937e3ba8c456e8849215e0307025ab80bc9213165b321f14b7685ebbadb610434ec21eca57c9205645698bdfcf3093d71c5e4539cb1a453b486b324138d6fba4f80d" }, { - "mnemonic": "宇 鐵 築 郵 盧 返 洛 端 宴 埃 遭 洞 謝 塑 砂 賢 凡 躍 暖 昨 而 殘 建 坡", - "validatorPrivateKey": "4855a39c26a6fd3792e3e00a92bc06b0da96e254ef39571adea18a8db2f5de2c", - "validatorPublicKey": "0xa26875f9858f18a5e5c46b655483a43a5f925fe4b4b5baa2577d3113842106c2f421f35da442eb44a9dd03e30a41e504", - "validatorPop": "0x871ae73b487d8d99818b9ee37539f32ecd67a92b19370b6734dfdfc2b16a1a179e3707c7330a255b3c21dc1968b104d40b14b0b89cacf777fbdf81e9306d9f18531892822cea02b602144320ed11b3abeacb49102c590344902cd21d9dfc5df7" + "mnemonic": "肌 飄 鈴 例 狀 夠 直 際 勘 酷 遠 灰 健 熟 及 共 非 靠 牲 職 指 建 奪 園", + "address": "0x8B449491FC9cF851636A9E1311b775D203eB226E", + "chainId": 11812, + "validatorPrivateKey": "0ae3fc67b307f9c807a360b69259a1f0862935bdf89ca7f3bcd8b5bbcd23ffec", + "validatorPublicKey": "0xb11841578f8c235cc4b7777668005ca327827ee06c8570ffea0ede629d1b7558852f6f311d79589dc67c4ee3ca4e810b", + "validatorPop": "0xa95f4abd8d60d59fd30a5373b3ef9de81badecea68f2fa579f1acf7886b39bea49362f2d1871c76e61fba06de651f72a07d52f26f12a18aa3f8c35baafeabaa6a92bbf1934aad4fea281d62dfbeecd65abd209ebeacafc60d00ad2afec0903b1" }, { - "mnemonic": "阿 植 節 勞 島 埔 盜 鍋 南 津 阻 忍 秘 旬 旺 旱 聽 歇 拔 抹 教 灘 基 死", - "validatorPrivateKey": "39c63f59d606ebc84d6c422423a2e6ddf14bf2770cb4e4a1311509222aeaa689", - "validatorPublicKey": "0xa5dc865f6da1b1b85b96b403e7f39b09dc6c89e71c907fda6f64d22961b5687e8da295ed08bbb8faa6c883627163b433", - "validatorPop": "0x92641b1b2b1c482ea05664f61399460f408f30f159d07974a26e090e27b38d5e5b45fa38744962dd331252c16dfdffca1317cda4769ebbf920401157642e3249974bda03efc12dc960c2db74293326f81e2b37aedf53c17a9acdb714fc58f773" + "mnemonic": "道 變 泥 低 於 撐 憑 嫂 脅 偽 湧 縮 廣 湖 實 版 召 籠 哥 彭 悄 覺 知 賓", + "address": "0x29ca5Db7c277f8Be1AB42E09997301378EbfBc0D", + "chainId": 11812, + "validatorPrivateKey": "5a6c321b88dee2a8bf52b3a9a18de35cf9d6edfba1c6513e0a2b51714aebc16d", + "validatorPublicKey": "0xb38c05873ad5b526f9e8b7031c3a1e132c6580a7ce5f5f5a49ced563e92b7c3ae3b5f6984ac6dac880b07e9f368ce18a", + "validatorPop": "0xa3fd466e93ccfe3e146a7c6e93e6706f23e4a256daedfda69f9911ecdfcaafd19a3ad4a42abc3573967908fc0fbb3ec806bcacfa06cee469e21bbfcf7ad4bbff4e425f16b7cc8d7cc6d3ba270ec52a71badb538358b87ee8833b423aef7d7a0c" }, { - "mnemonic": "肌 聖 紫 偷 土 命 補 錫 機 窮 型 衛 否 善 僅 敗 亡 蟲 李 鹽 炮 去 情 洲", - "validatorPrivateKey": "27947e35e9e426535fa13f68eaedcaec677cd9149e1187daef5abf294782d272", - "validatorPublicKey": "0x968636756c1508713f7ef32fc80ab24b62e2f1153d3417d6c32b5ccd04157a2a47e10423277585c7870c17cc9dea39d4", - "validatorPop": "0x945351c26e250e3b7d334b4a167c14a9e363357acedf285312e66460224db27d637adbb570c17467954595b0774e39210542396f943c47fa330691eea9d4779e5bea0f95c6a262a3ee8381b5f2ab4b7bb90930dfcaf15121017a2cdb0c7636d9" + "mnemonic": "敲 血 派 戰 輥 杭 熙 閱 鈣 蒼 很 親 恩 眉 眉 找 婆 肅 學 噴 棱 廷 患 晉", + "address": "0xD4f6A0718A901F44dA5983DFeD7f6A8f7793c53F", + "chainId": 11812, + "validatorPrivateKey": "467b0c124c1b49f63826e796dc5b1ecba60454561b6e983b5170386a8571d8f0", + "validatorPublicKey": "0xa393e4c33eb5f50968abdfb2ed7e5d1e46941b5c7869096d97bccead74076a621033c3a4859a280f0461faaf6aa3f87f", + "validatorPop": "0xa396b7f56548b44838bc1664a729dd6d58d82fcf60b6629697aa5a3a8001cb0276a8f96df81dc627e897b1f11629c28a07fcb3f5a0bd32ff6e30f414469f11b05581b4ae6e1b60860e9a2bad16071079e8c74dc56a84d770ecdca4d169ef50bb" } ], "korean": [ { - "mnemonic": "종업원 밥그릇 도심 순위 여직원 바탕 야간 이름 전문 별명 핑계 비빔밥 도대체 일부 영남 인물 의논 하늘 적용 할인 찬물 창가 사탕 공휴일", - "validatorPrivateKey": "0f5c33e6ab421f07081207fbca19e5822f9c4b66641a457a78412807e292064a", - "validatorPublicKey": "0xa0139b8f5252df3421a31196b1028ff54caff72e58c7f0f284c306e5a803cdbd0e3777c1809439448d95d417d35f0b85", - "validatorPop": "0xaf6438a1cd074d7309a9170c845820e64cd4e7c393c47ff985a93a5501d7de3eb3a425e3077207acb0dcd6ce75d0da020e2bdaf5778fbef0b8e77486274139e47219ce28c0bc6c3813100114363e12623ce69b0b43fffca4b1abac50ba16ae47" + "mnemonic": "냉방 실내 장소 김밥 부근 언덕 시선 올해 백색 명예 웃어른 강수량 심사 평가 대출 고장 구름 본부 법칙 가상 의논 나침반 지름길 공항", + "address": "0xEB55bCC89cB56333a8fa7b85DC00fcA9AD12010b", + "chainId": 11812, + "validatorPrivateKey": "48679df2e607fb5881e409a27ba7b9c02b233c0b041f6e0d7657e65766cbfa4e", + "validatorPublicKey": "0xb91a84761cdfda2b736f8406e2ceabbadf690d3eadc4d8f60cc2f8090ce942759e574f67bf87794a3d4684270a5d22aa", + "validatorPop": "0x968991245624f62f03fb62eefe116f65376abd846736b0330e557e3b8c65cd65110d508a1ce6db635e88bb0f4fc916d912aefa6291528eed0d66ae2447a210291dcb2b6d20a289eeedb7e42b87256d38272b860f301a20d2488a1d942e867593" }, { - "mnemonic": "칫솔 공포 진행 먼저 별일 달걀 문학 식생활 행위 중세 근본 순수 거짓 육체 시중 개구리 가족 택시 콤플렉스 필수 장애인 불행 바닷가 연장", - "validatorPrivateKey": "5b0a6583db206a87402571c99d3068843df0a985535381833383eaf4c57d77ec", - "validatorPublicKey": "0x85f0bf98954b90e5776859aaec6c7b59ece420034b9be9996f882d49607359f811748eaed4305b3aa69d065f6c07d343", - "validatorPop": "0x812ee0cb2cdb4e4021d62fb17b139f437496973d81b72d271eaab3cd7236887fba764a2eb5e8e57a688035cb8445393805080e37be6c8038a13069938ffc79868b2163458095ece3c637b34322e48d4eaad587e55704742ffda659fbe02c380d" + "mnemonic": "당장 안동 평균 생활 쾌감 연애 손해 공업 책상 고춧가루 백화점 줄거리 중국 출판 콘서트 교과서 현실 활짝 올가을 불행 도덕 신용 학용품 노력", + "address": "0xeAC8F2eBfEBEE325ca0F0F4C3B9B0ab2a4e66884", + "chainId": 11812, + "validatorPrivateKey": "540c86653b9931f2cc761dd11e25a3f0a90a44bdd57c19fbc140091e19a78b8e", + "validatorPublicKey": "0x957bbad99767e0cd42146926525267cd19a06fb180e4a2ca10c06021409f9aa8d5e80542ae793422d1cd1bfda3b8a353", + "validatorPop": "0x924d66a21dcd8d608220388a4c31e4f8a9a32a0378e2593cb940b1219945d3b7ec2a26d1db4a19af7cc3925130b27ac50d466480b3a656381bde727434a6e756b08401844e1e51e438eafec3fa7d545d56142434333eb3fee42d0bf6dfecf929" }, { - "mnemonic": "대문 국민 착각 목사 소망 엊그제 참기름 시집 창고 화요일 의외로 나침반 목소리 운동 수상 재활용 해군 창작 항공 전부 배드민턴 전공 열정 감정", - "validatorPrivateKey": "43ad99d8112660dc4e7dac643f11c8e931f0caa52ab063a4e5ac7b6036462376", - "validatorPublicKey": "0xa78d727dd7c87749bf267ce52abd8cf79eaebf606e918cb73a107733d9594d4e7874d25a14c0a100b7dc54ee281bc2c8", - "validatorPop": "0xa356032b5a4ae7eaa1131b5311a454381836f026380c1cb0b73e88395cc51c79ede13e61eece0efbd2185066944b010d1011ebe2fb217131e0beb59f2cf1d80f4dec13b28bbc12f9e880f321b0d2425695a92113925d141bf73dce7e375463f1" + "mnemonic": "모금 실태 각자 무지개 특히 탁구 밥상 우체국 야옹 어쨌든 홍수 친구 일치 양주 집단 장마 눈물 단독 행동 환영 규칙 팩스 경치 서클", + "address": "0xd8478d9aaAbD8D2Ae16F98599b4522d1B4630AdB", + "chainId": 11812, + "validatorPrivateKey": "3ee011287dd7c3e7d95ee18ad01f6b2abbcf70bce43e4579c1912fc0d42c011c", + "validatorPublicKey": "0x8cc6cdd043143e80651fc8e961750a9d0abd7a9786bc15ffa0f675104d7d52608f8523ef33171ef3c6254d4180af3184", + "validatorPop": "0x9834785b3921230f9ccdb591d5142246266812b552710af24ce06b6fd7ed06730a4e227214ae725e3949aa8c2e2538060ea723f56554bed2d3448fb2861b75900d5b2c9edc985eb4ede051b61f6fb3a56b513d12436ec02d6269d7bd75f137b7" }, { - "mnemonic": "전철 소득 테스트 표현 나들이 바람 공원 자판 화분 이민 탄생 먼지 연장 각오 손녀 미술 태양 타자기 정도 플라스틱 컨디션 막내 지원 공급", - "validatorPrivateKey": "0fb306926e026a263a8ed512656b6e5c1425e74cb5da7e16a642f2767b0483f6", - "validatorPublicKey": "0x944dd58f066e0ffe4a304eec83f98ce98b3b832207271b6fbb0bb3ec78ffda48e1397616058a5fb2fb557f8ad6cedc2f", - "validatorPop": "0xb8e222bbd52147a67ae589325e23d1cdb1a59cb1cf884731a2329f836bf976201327d3d162b3a90c8f61c31a10920ef51096628d82bf557b64bf411ab2f46b5e448492fef2b5607a3c22e73ef6f01fbf2edf1c9223473e0800efba27fb9e866e" + "mnemonic": "전주 후춧가루 보안 양주 원인 많이 경찰 변신 안동 협력 소속 자동 시장 당연히 우산 차라리 지방 냇물 장래 간접 미용실 비용 해수욕장 차남", + "address": "0x816F7F14ED6747E9d8aB2Ea95D91911784B30292", + "chainId": 11812, + "validatorPrivateKey": "67fdedc7e695dc51e94a24d447d187e96fe24f236b5b16f9c64ea83c25fe4311", + "validatorPublicKey": "0x82005bb6cef43bb58680e70a34798e786db4b844b2f38fe0185540cc6e8017d5ddd2465f75109a5680e34bceadda6124", + "validatorPop": "0x944d2c913c64c2a2d62faa3af244ebc7c419fd6cecce8ec07925b9aac142200c33aeedbe8d91198ae94808214066bbdf006499b6daa69b9fde29bb1120113ffe78a334b346bb102527669ef63bf589ae4312183f574f31135d317daa7d905e5c" }, { - "mnemonic": "염려 공업 보험 임금 문화 비만 마약 시점 접근 행사 반대 본래 나란히 사계절 여름 근래 차림 육상 가족 휴식 골짜기 포인트 미인 텔레비전", - "validatorPrivateKey": "1ff861e32207193114a92f6652fc35e2d20a8feefbffa5b11dd7a06581107e8b", - "validatorPublicKey": "0x8456910e8ac70a3a5c76271f1a96a5f18d728db1878c23de617cef5bfbad7e13181b0a25eceafe95f0c489beb35df72c", - "validatorPop": "0xb3c5706fd393ea541502788793f24c423dcf1650b0c13b84d60842209683992621a72ca47ffd4723f735eeb2a574141a0ee9d1306cfae4243bf2434ba0175a4094e5bc544b05c2f15641653afbee7b0271d2668a783f1d03c8e70b34ce8ec69d" + "mnemonic": "초청 간접 경상도 양파 책임 피망 주머니 예전 초콜릿 준비 자정 항구 방법 대학 병아리 졸음 마누라 잠옷 명의 농민 예산 엉망 쾌감 온통", + "address": "0xcA4682c2D5392dC51EA94c3444C67e4D182a6b2E", + "chainId": 11812, + "validatorPrivateKey": "6c304e3417a2bfbd7b8b710a01a3ed1a374cf2548e97e9765d24f048e1fb193f", + "validatorPublicKey": "0xa478f0591bc482cfb5e0d87adc090d3b2413bbffa0ef47badcd628190323073e5aaebdd1dc0cfe6ef0da5583faf2f886", + "validatorPop": "0x93ac5aafd969b91c263773b576d22e8c4c1729280ca6bcbce64ca2d21e74f27438471a5803023284cdd10e7fd9d550cc0717a9bca930d7aeac93132cfef8170d95732d2991c85fae279f04c890a6c9be9468a69c351dab686db0af45df786c5a" } ], "french": [ { - "mnemonic": "dribbler larme taureau plexus erreur claquer féroce frotter friction départ cosmique négliger frotter burin tonique fouiller univers humour toucher réglage hiver défiler poussin mixte", - "validatorPrivateKey": "3343a4c7f778e1ffb7c2164f7b98160baa38d6ebe8af86729f08945b8e23bbfd", - "validatorPublicKey": "0xb5f4c7d873ca7c67145a29486fe62b31666c3c02713fedcb9fd83dda040ee2d460784a9f6edf6fcfdf0b592b5b8a310d", - "validatorPop": "0x8421878abca4537b3af374aa88ce8c4bcabc0284fde740a528cedcfb7d59fe97d5f34cf953cdc0ca652e5f89f4f900dc176e4a6e2ff11c43692dabe73aa13e43208fab695ba3e85c21b7744140b1e653534d8ddb0c1f952dc3e95e87c4537fb9" + "mnemonic": "orageux racine décembre aéronef capuche précieux scandale peigne poisson torche différer oisillon lucide rigoler abaisser immuable insolite cendrier lecture chaise purifier période asservir poney", + "address": "0xC573c329e51Ef0b1B0b5A4A1DB037ee23bc185A5", + "chainId": 11812, + "validatorPrivateKey": "61830a901e72e72fe0ebb84f7af8707b53b88aa160088703cdbc9d382b8ea3a7", + "validatorPublicKey": "0x9431da3deebb57bfad8c3c182f0fd3c2e0ac33cfacefc9139fd112d048c915ba2d700f76ee345850bd0c7e394c1d34f7", + "validatorPop": "0xa57edac3bf0caa28fa03819b276fe11294836857c1e5cf4de8cc57c867e78c8262d7cdb49be4e38bdc8e19c0131325250e99273bfbcc3c40bdc4ab516cbb26a6d82ebc18b3244041b1f2c566a268521042fdd2a26d049510498ae05c1fee3539" }, { - "mnemonic": "obtenir pipette axiome maudire torrent litige bavarder écouter hanneton syntaxe tortue clivage parsemer fossile tumulte bonbon sacoche bidule coton admettre liasse visuel filetage amorcer", - "validatorPrivateKey": "6c4c397096a186a2827f27e33ec6f56b0978d8bf1e1215c005370b8122f3d4b8", - "validatorPublicKey": "0x80ac1c5353e172c0a976478659831adcf44f9bdcb159aa7d1b2b99f51c9fee9b875afb064c593239d0fae3a1b60aaa1c", - "validatorPop": "0xb898877f760544e6c71ca4da641c8bdeb12520261eb01f3a4422ff2dd97d7b149f76908a0d2be6447242100f5ab6e7820ed57c407bba251e841bbf79b5bb8d38eedb246b9dc9fe7f234e44ce2b80cf29a73ef3a65ea99e77ad0d89721936ab9c" + "mnemonic": "optique surface nappe pénétrer chaton défensif facette évidence thorax bourse apéritif tatouage boxeur alarmer mérite éolien risible sabler ratisser débattre exaucer véloce joyeux grogner", + "address": "0x2fb647927859c278896bdc1389504039D24A8ae3", + "chainId": 11812, + "validatorPrivateKey": "147feb3a4ad78f74b86ace018bae81349404f928c7414b822deb8764217e4d84", + "validatorPublicKey": "0x89e261e68067836675ef6bd75ab0a81ba430caf4a70bd17035bfdee202ff2fee44a9e22246848130b98d1408965e0319", + "validatorPop": "0x96d5911326d7fdfd40536cfc9272767b31713e0c25dc323209f74a617033ee555c41216121ab655cdc345fe8edc0370f0052308a70296b7a3a48677ded9c2602f2ff42ff276989936b89d0f6ac2e1d32b111f4b2e282dcd2ea501306dd6c28d5" }, { - "mnemonic": "décider cloche tenaille aiguille vagabond vacarme hanneton cimenter infusion sosie évidence gendarme adhésif rompre dédale unitaire maritime ruiner vidéo prévoir fédérer boueux farfelu exhaler", - "validatorPrivateKey": "669a2662f700d71a160661d587e3dd8c06a0b0998ecb16c7cd175ff6d1502fbd", - "validatorPublicKey": "0x818e9020dda548505b21995824bdd1d7b14819d79cb471d9673635e13ae9c0ad2d4e3be93cb9409d36f5ee95b9b619fc", - "validatorPop": "0xb6fdbed5448a146890b060da99e88becb01b11db633b8fd0de2227da2ffee36b4bc8f3181b83af386ddea26f7236281c0301aeda9f347aa24f0527935371bbe7abdba335822c963dc868a244259af270dd8a81b6ab28c5dab0313786f0b37975" + "mnemonic": "majorer ingérer pollen outrager hanneton spatial suspect gloire associer paradoxe lanceur moteur nutritif injure apaiser trilogie graffiti frisson outil horde blond voter audible adéquat", + "address": "0x0537932Cc1fC63BDA3767C889d46f95A2b9Ab784", + "chainId": 11812, + "validatorPrivateKey": "1a6ed8888c48fbd08aa25666cf9222a7c7fa2648cb83968fc227fcb7253e4b76", + "validatorPublicKey": "0xb1b326c17acc896a0a77f9044334d64c93e1429129e6d83cac5a923ff5f152a37f24fd117445fa0df91ac47a99ecbf39", + "validatorPop": "0x8441cbcdfbef8cf25d4788555f75d7cf5f5119f49c6b332819685f0cb7dde307199d86e80eaa2c810475974bc86373920784d9689ed3e04d40aa6c6745f4c83e4a85a7bca94f83e4a3b54b6e46db1878c81c3ba7f9a796c2dd298bfe38cc6c0f" }, { - "mnemonic": "poète dynastie littoral groupe digne zeste ronce punitif chavirer cassure neurone capsule esprit désigner tabac fiasco pluie cravate exact varier tatami alourdir réagir distance", - "validatorPrivateKey": "6570ebbcb99dbe8d81ac3410243ab29dab6e79c8aa7ccefcb8607d5337d4f864", - "validatorPublicKey": "0x980f74a682945a3ed34dd55cc2789275c4cfb3644103d7ba11b2f55fbdf6c3df1d600f96b4167c8adc2041ac5fe35fc1", - "validatorPop": "0x9914ad0e5c743b708b32bf41f700d9dd2062050d409ede8ac85cc091888fe354924d1cef589c95975a56d5c12f26380f14921c9a8267ad20773db2ca7007a79d033cab1425aa769e887f5343afd6fc155d424208dc2a146e9b74dad4cc0434a9" + "mnemonic": "cueillir obtenir chaleur voyelle adjuger muraille orque déborder étirer épicerie combat étaler attentif dissiper merle causer dissiper cylindre métal essence hilarant encoche sérum capsule", + "address": "0x4D07466b4499b672D536D12d19d6c80B439e01Bd", + "chainId": 11812, + "validatorPrivateKey": "3aaebadc6b809922762a0487f6382dc982752360f5c862a523dc6768f05a9b5e", + "validatorPublicKey": "0x8c24b65a3d2bb1315c6cc94742bd7eb3576eee956b31ed76686f66e01eeffba90bb8db0416caed1db4be57edb80079ae", + "validatorPop": "0xaf34593f85f4ed5d1f84178177247ef7fa07e63c4fd6c9ea08b1a7da9a8a3e7184aa0423d568261d68f7bf6f834621ee04bb5a587c5cc1c7ecea0a5362bdadf40d1ce9bc66dc1f58fc0c99f7697da4d97e7efc58262345409d81748fac23ed1c" }, { - "mnemonic": "matériel euphorie heureux pinceau stimulus raisin triomphe risible dégivrer viticole scalpel sécréter jeudi ultime muraille éclipse médaille forcer joyau suiveur passion tablier nébuleux omettre", - "validatorPrivateKey": "2d03ce03a5b89ef489c2461571d7f72c4ce9727c95ab5e077fb40f788ae2e060", - "validatorPublicKey": "0x92e4b62246dd3e4fcde6fcffc714ccce2e490fa937b8e7971aea9068ec462d23bb4e56ad20d07eab714951061f5ed449", - "validatorPop": "0x907041b9009b68a92ba7d03d9ed98d4035efe543e857597bce46559afc9668260af63f859a5a0f96565dfdf5af8e4c4b0922be745511fd7bdf5c305ff252f68fbea4d12f212d118921943198f0fe99057c0c178358171ea0f2b9328333b4c506" + "mnemonic": "soupape opaque sénateur féconder prélude magenta épitaphe cuillère divertir poivre armoire carnage position flairer sphère ingérer entendre fameux superbe abusif marathon ovation prétexte saluer", + "address": "0xA03E03fc68ded839b61b5b1A45E50F99281E38d8", + "chainId": 11812, + "validatorPrivateKey": "4b81b60d6bfc03f23b43364ee915c8ec74704d36680c02a8a8b1a9458ea8e18c", + "validatorPublicKey": "0x9054220309471610975b2ef75cfc1e109a0aeeb0ac5816fb67d69d835c9045543c7a897bd94a10f841c1b584f8b756a0", + "validatorPop": "0xb3695aa3d2ec7d24a8b65a84b03d339cd15a7dd44e247b1ab60621a0bf9b38ece5e056c4537791f5b08615291006d4ca018cd849e3e378c6b2fd055ddfdb3349fec685621819427db22a2338cc05adabddac1766595fbc4228782c0b897182f7" } ], "italian": [ { - "mnemonic": "zelante utilizzo prima asepsi gallina sospiro camerata motivato druido stampato cornice parziale favoloso omaggio padrone anagrafe fronde appetito gregge acrilico speranza sigla edile nanometro", - "validatorPrivateKey": "452e6ea0978f003597d870c8ac9cb9331ff787654a8d89a84a75f16bb5cb2dd0", - "validatorPublicKey": "0x8b8d5a520899efeacd63b59b635223bd2247eb170ac0ea8fbfc3fffe1ed915784e6245058367d76ce38d458029b24f25", - "validatorPop": "0x8791fb929a38d45bd2755555cb81da57a4085988836b8235989ac51de8c35d23b8ee7e8f9b8d2be296be193b647cac7b16768ec037b726ab22e177ab546192650703af27a68b2e3a788b7bd609d2187b9e1013b983df733d3e3c69cbb925c573" + "mnemonic": "pineta orizzonte monco pomodoro cane progetto dubbio somatico chicca quota pirite sfinge picozza asfalto raffica temuto sodale strutto cenone appetito ducale europa persuaso isolato", + "address": "0x3DD8916a2b9163e5Fafd10d075EEf870A4AcdD05", + "chainId": 11812, + "validatorPrivateKey": "2b46e221597c9daf633742c8a50e1415e916d1d1fee7ebded5f425e9a34cd8b0", + "validatorPublicKey": "0xb924b28d8136fa3f602d392aa239ade4d3ce617c22588d61be3d4d43fcbcfde724f03db728ce27b48aee19a599da6385", + "validatorPop": "0x88cfb455d34539c63cd8369294b681d6e5f83fe6808fe9ebfc5c344418d7af5117edca8bff71f48215da9cb2d5e49aac0c0e3af410b2bc5ee4ee3a8b34693f309aa3a6adf759f3f21d3cb77a1801453ed594167b2e454f9f331cbecf81d460ea" }, { - "mnemonic": "emblema ignorato puntare velina sdebitare ciottolo tasto pugno luminoso agente pioggia fondente deserto frollino oliato prelievo popoloso plasma catasta identico digitale sciarpa aspirato igiene", - "validatorPrivateKey": "4da993a7bd114aed3b78d62336fcbe9c6a222ac92385ff3146b3e5d43f442f2b", - "validatorPublicKey": "0xb749a56fac3c29aaf5b9f341ea9e5bb43e19d4ee1843314d9b76cb78cb3c667f01395c398ea1150803cc0e1643ef8dc0", - "validatorPop": "0x8243d3ea43c4e5aaa7261d63ae6ad8eeaa69a0d9966d0c85b26a2d00b2870738d5ea6195ca9a9c059018855fc914c7f00f75b718ccc38423d9aecbec8ca304a4ca642edac1cdf9cd58dd4b5d32fbf6f35a168eee63533930e9886965bea00742" + "mnemonic": "vero grado basilico brezza caserma domenica retina mummia girato esaudire veduto sonnifero comune matricola rastrello ghiaccio stabile uncinetto cometa ruga dividere cardo altrove mutevole", + "address": "0x0ca83feB1E3a1dbE273Ae1573Fa118bBAaC01608", + "chainId": 11812, + "validatorPrivateKey": "6328b0b012592bda9901b72ce30e8735e1dd8260fe7cf780f99d0fdfdf420fe0", + "validatorPublicKey": "0x81b165e69359185e64d5541b9a5a799f61b1ed1643989c4f649722f09a2eaa47d61a1626551ea4e6df05a50a9bf24b90", + "validatorPop": "0x863dc2c0f496cd10701542e3dafd496283ff525bcc061246544660ec82b9427d01b26648bd2b8d6a07acf026274d76e012d174a8e771db1eb52247d3db0da0126b3efbe67268320666874d94fc53d61825c07c503f3c38aaa08b9358b30ee294" }, { - "mnemonic": "rastrello daino discreto buono smentito cucire vivido achille silenzio pollice origine cratere roccia oviparo agire esercito cerume multiplo feudo utilizzo spargere biscotto endemico eroe", - "validatorPrivateKey": "5adb2bdd1f69bbf10e2201a0ce7e61cef0b02ed6738ab30b15c6469e5b7bc278", - "validatorPublicKey": "0xa7222e417a89dfc932c726a566cccbe54c9655a89a6485fb74b77adde2a03e015c959fbf3134277b6a58708cc0a0e38e", - "validatorPop": "0x8d9670a3e8bd106dbe333db0ccceaff18125340b3d20b19aff58b0836771d828f0127cf82f2e19b86cc3f29e3df7dfa811923d7ea397706379318561ea5192f76d4e8807c03777b1f49398719936bf3e1e926c95bfb8f0d69a68132bc96986f3" + "mnemonic": "celebre fosso argento simulato grifone autista convegno tannino guardare inglese gilda segnalato savana smentito medesimo macero amanita astice michele monotono upupa burlone ricreduto rogito", + "address": "0x035aD027C3DcdE446d4815Ce7EFb3F69Eb70e873", + "chainId": 11812, + "validatorPrivateKey": "71980cd911fbd1d6447e238f6164038b1e37998fc728eb77bc91f8ab5bffd52c", + "validatorPublicKey": "0xad14bc1d97552e932c4c3cdb8a34864db85369ff2a6567eaa549e6d18d2bed96e5139cc98e4a1eaedf05fe3d34b8c3ca", + "validatorPop": "0x8fed2d4953ae52785482f8f572b96bfe661470f2afeaf80685b5418c609e1628e314c73c9f549615f2949314c06146180c064252df786aab38b48b04ba5210814771daf7bcb0fb213715fd198a0e7d072c8e552f4ce6eb91e9ea7ab5f33e08b0" }, { - "mnemonic": "prelievo ginepro codice radunato dalmata lilla scapola tecnico ammenda balcone lenza rastrello midollo meschino mattone ignorato estimare avviso sgonfiare insonnia munto regresso diffuso criceto", - "validatorPrivateKey": "396fa5f1d3e82cd2c8e097da388165cb4f4e47ba7bfbbc57995ed15f7a260cc8", - "validatorPublicKey": "0xa7d0162225bce452e35381dec2c788d01fd80ed6d1e938719b7e6830a678fd750ef00494f72a33542678d964ad18bd1e", - "validatorPop": "0xa5470dd36911571d3628b002cb7c6b3e256ff244be9c137eb0e488e76e13d672244682fbd2c51ec4df3b597fb16686d30943b7409cb74c553a77cb46cb9bc62ad85395bd9c76661710278dbf53599e6fe8f70a141e2903227d1ffd6bc37c476e" + "mnemonic": "amanita limpido sveglio essenza rete simbolo posa sutura gasolio rodaggio valanga enzima cellulare fulmine evaso torba lenza oltre fisico emulo ciao evviva lardoso sonnifero", + "address": "0x75913f8020A9E2ce02ACB50dA56aaD9BDB3F9cE0", + "chainId": 11812, + "validatorPrivateKey": "09fab0676191ecad40eeb5a6c88cf9d6298b0a63867e7ff2f2797900ebd7b1f7", + "validatorPublicKey": "0x82c3d8560556c3e18d1354f5c86df6cdde1b8152538b5c0ebf95e44b0c407ce4178f7ba0a752c4c9357ff068864f69ef", + "validatorPop": "0xad73408c121173b8b3bb7cffab0f9f37bfa53fe7a2247b81f4a12470c1e2692c7702c6ac48c00648b0fd03101605e56816bab487a42bb010ee2cf0e7c30f07494ff1b1745cda3e2acbbf2934242c89c16a9082a38580eb2f7c62bad9e9efecb9" }, { - "mnemonic": "indagine tromba soccorso ologramma sedano garbo apertura marcire superbo sfuso azzimo inglese modello movimento criceto becco alticcio novella dividere sbloccato retorica palazzina cottura riunione", - "validatorPrivateKey": "2ad5cca2dc7706fc1654fd9ea84a20b686be4e56850bb70defd08c870510a4d6", - "validatorPublicKey": "0x8ba6325e21fc2ad645e4d8267165b7a6f3e14ba9d1fb944bd72ed8a2c044e0fd792f091e9a32071dbb9022efb8654e09", - "validatorPop": "0xb1097d6cbb9a1c0eab00d6f13b3fe2b703168d89e93594a996a50f09a3bc6987714d1d8f6dfc5356ef3b844335c0214008cd5833edf936d1f2cb520bdfc20d2f033d9cf15dc4f6b025d88dbf252017a454ea0b3ec7bc9746f8c42e67f18e7d02" + "mnemonic": "brillante caduco gonna persuaso castello brama ritmico aderire setola esagono alberato sorteggio avvenire orecchino rassegna calamaro tinto movenza candela fascia crostata succoso domato lentezza", + "address": "0x22eEeA7cF5Adf31D7C9EE4Ae42eC8dCB8f3064f0", + "chainId": 11812, + "validatorPrivateKey": "163dd8ebd8a17ce8921a0c4c7fa1edbae74ce463b60f06f0543a49a4fbe70834", + "validatorPublicKey": "0x8041c7b226156e65ba217723a5f49cd289e8b907cbae948dc01abfb30e56776688d05664ca2296539e8c034a273806e1", + "validatorPop": "0xac5622782e3deb2ad9e78771b302e61b07f1218b7be92c1f96ebcd218450111e47a09349f0ff596705bac049cfd88851193a4c62651e821ab640368cd94a849edf09892fb010a85772a4c6a45c89fb4173c071ff8b78201ce5753b993c9a9672" } ], "spanish": [ { - "mnemonic": "martes señal seguir porción goloso paquete flujo válido nadar oficio acoso hora cuadro gota asistir colcha lana exceso brote saque lindo asumir morir leal", - "validatorPrivateKey": "25c44d00d29dbab24f28dd00a229ddb0803ef53ccd42eaef6de351cef82d0f4f", - "validatorPublicKey": "0x97fd4fdbdebab7fa2fb8872d30e5b036a5028912dd4f39e21f6ff8a460bbcab68c8c13bcca162c1ae8cdf263b0cd654f", - "validatorPop": "0xa297a13e00bfa7dd6742711bced755f645e6745ae46772b23ee6df6e7e405d6c6786a55cd95e8d1ad48a449b5a5e800002ceac6b484c2055fe9fa31f2cdba113a3f3c21f9df3c5a6e14a536e3a447a41ae96003472bada189ed364fd929305ca" + "mnemonic": "herir magia aroma chacal buitre sufrir morro pegar batir ámbito laurel oído iglesia moño avellana botín umbral cuarto tejado vereda cubrir promesa cien aseo", + "address": "0x3dbF0BE2f667B944A0De244CdDf6Ffd07212D1F1", + "chainId": 11812, + "validatorPrivateKey": "5b4d3e3c9c28081c6ddc9f48fc727e1bca8d7654d4cbd7d6e61c23c435e6ed0d", + "validatorPublicKey": "0xab7318bda3896b5f431aef4b6d58d870caa8acc99e39825cb962ce736de7a4a6bfb24128553bb4ef6c0994cd54b135e5", + "validatorPop": "0xab32a57964c6ca75bb9f2943ffb6885b457cc8e17d3e5bedcc74d8653d0271e11a5dc68e1af78a6d30ebdbf918eac2d10470beb3710f2be56ed22290dd82dd5164d9f69b24cde6ab4912ef7a26b408d231a02560b1ea30a852ef42a81352d143" }, { - "mnemonic": "cima feria órgano tío sur fuga negar divino turno ducha equipo fachada breve mérito núcleo futuro alerta hoja todo pupa cumbre himno cara cripta", - "validatorPrivateKey": "4ccee835aa496e5e9614d0e877fbb6176536d913a33e74c765e28524a659d271", - "validatorPublicKey": "0x90d3390be6c7553ad3e5ecfd3b3fc821af70dca3c91c6ed1d3c0555e63577da9a47a821c6e10e9b7ab08e001f7822662", - "validatorPop": "0x9734e38ede82b538c033a8cb3b01f095125e323e6bd3a98dba249fbd844760393eedb81c4452721e452db937734e9cda083c7b60ed889285f987c6dfae77c4d5cd28409b9fa01c3dceaefcab349b9d8b311958516f0f0e96e4a6a198aa0026f5" + "mnemonic": "acoso bambú asegurar iglesia paquete liga urgente bebé obeso cueva brecha enchufe alambre código emitir babor norma esposa testigo tejido fondo quemar ducha este", + "address": "0x8b8E98a816b7A0100F02e2eC0EAE5e9D718074Dd", + "chainId": 11812, + "validatorPrivateKey": "070659bb2ddabf24d29cabe658d61704b84028652b8950fac1c34febddcaf411", + "validatorPublicKey": "0x899eaceaa72d2b3f71242a7138595fcc0ff4d85882ed3652eaafb83dd6326cfe9782dc197d63d61724419279d90c90cf", + "validatorPop": "0xaa6b1adf995a5c9a5e24eb4b2e9b7b7c6b12d8eb8021cd52d3da3f4651470be781d0bbef81901899b2b4c9c65025f80317d31a628990d9eadc3e85c87fb6a62487c29c31fe79412443c01ab84c5cf85e74bd0edb5544b786769def67b1d4bbe7" }, { - "mnemonic": "típico malla anís apoyo trozo ladrón sondeo iglesia leyenda aroma pleito crisis pelea burro aduana secreto sed cien doce junio octavo perla bahía método", - "validatorPrivateKey": "34f393136b47e2171fb6c5ca7d2fd51f4a42c5472e9b3afde2307bd224a1a68b", - "validatorPublicKey": "0xa80bcdfeb4107779800f8d7137c1c2f84c1a47e80e5ad8aecfc3ab93d41cbba07a86a2ea1fd49798441a2328f023dcd2", - "validatorPop": "0x96d4009ca22f2db92adaf6e201503f11c89de206a030569b027b39bd5cd5b371054953a0cad26191998c377d090afafa13595fabb4c66053eaeb6db425bcfaa8b42714f43152a4350b95cdc712e8e65f3ce874276e8524f671da78e28afe4d09" + "mnemonic": "sistema foto bingo basura gajo gozar ogro durar burbuja disco oro evadir mil cajón acto nómina honra monarca cien tirón ayer esposa azote nadar", + "address": "0x8549447d7E48AC2e2188d64898c43235268dadd7", + "chainId": 11812, + "validatorPrivateKey": "4734ef4f5b5cb70378e7e4cd8098c219b17b1165c2e6a2e605008bc2e5772d87", + "validatorPublicKey": "0x8ab2796a06e73c3332ea4652d42cf1e328744996746425842ddc5614e3dc8eda4fed5b7bab78e95f9e3ffc4c480097f0", + "validatorPop": "0xb30663aba3976c25e3e2b901f269f6b579194bbcc1c27f19bd18ebe82e51a6fdde89c49c5cc2021f1f493595540cc53709900978e7f4eabddd096c23232260d44c9f3fbae733497598ee7167f26cf4882cf8795cb158570f34c94229de26476f" }, { - "mnemonic": "chico lata juez defensa eje urbe ave oración basura mortal rígido pluma cordón rechazo surgir tonto alto estilo cuesta clave viudo bien capucha isla", - "validatorPrivateKey": "117b0c75dec31f1e9cd282d0e133665f2fa02504b1d97be6a0e7d98eeb4db9f7", - "validatorPublicKey": "0x89894e4a6f7eec8cec7137d62269d48c236cd78fded994cefcdc0e3737464b233d379773dc1de28042fd58d3935e46a9", - "validatorPop": "0x913050903b418fd18c4c146de8763c2a4cf073803faad4df439964f108539f61e1606cc0c128991266115ba2d200ec0710c6b73ed9819478aeca466bac904337a8e95c03ef2f6745dadde3808332e6e4e40926671442d6039392cf2d71fd20ed" + "mnemonic": "bobo aceite vacío cuneta lustro sufrir átomo ataque alejar lector febrero tambor afinar vitamina sardina vampiro mínimo taco sorteo azufre cara fiebre mazorca bosque", + "address": "0xFAc6e1A518F38d2d8eD3F3bc0d0EAFd98735E401", + "chainId": 11812, + "validatorPrivateKey": "60703f8ea71f30684a5a0369179c924e4c89ada58f8f9832c5423e866d80c0ef", + "validatorPublicKey": "0xb1c557576d41125f6d660e482f35010ce769b4a2defa30e266fe616d264d3b764628c62fcd1d939c2ccb5353c64cad4a", + "validatorPop": "0xa204dc60d8a50636f11a7758ccf0506da3a7fad641acf63fe5c491cde4527e1d1f481c8550456f8a19abafd33ef607120f85159dffdf3fe68c90ab948e9e1300847aab2101b5c56da5529f0035baa233b391d59f2c2a7155798694713f23be5c" }, { - "mnemonic": "cero válvula tejido apodo margen goloso chuleta tapa observar afinar meter zorro simio yoga calcio superar rábano delfín octubre combate novela hecho aislar legión", - "validatorPrivateKey": "2c2b0e5932a2bd2ecfe552a897bfc353e0facb1c3d5aa7af4bd674cb2f421c4d", - "validatorPublicKey": "0x8275a6b35f3c48a65729d86533f1988cf9b52899dc13b90cca5bcfb5bd8e8d8edfd83634a758ff5b2b57d5c1d64639fb", - "validatorPop": "0x81d5e27dd793ea5a48610240e43dc0cc6bbb625c9b9bf4e5d0ffde1f175030eda8ed85a859cb0eec5f614139a205654b154fda30dda80c1828c03df178f78a8de14c96e5441ed21a40ed89675bbf44011c7b70247adacac18bf1a10a55a86715" + "mnemonic": "pelea taquilla fácil viaje demora monto feliz chupar carga grano marrón romero copia títere sonido agregar timo peligro lobo lupa libertad faraón álbum altar", + "address": "0x7dB8ED1343bc2d3e59A03AF2c5A4b8D31FcEbedA", + "chainId": 11812, + "validatorPrivateKey": "087b195eed0945ed90a6a631c389ebd45393e070b6b9a549ca649b9da04a04b5", + "validatorPublicKey": "0xb57dbc9105f2e4dcd2952b9931ad38fdbb5fdb526fdd3880f88dd2178d76cea6c597fffe1f0546217fd5e0d8b35df8df", + "validatorPop": "0xa12c1da65995c3159fc3bab0e1554d78791a2cac5748e513446c966db85a41c82595926d0737493043ff5cf54f759b440c0f0d3d7b50a422b69244dccea501c1489e99d08860f934f17319338b9b1a5957f290e4da79cc4cb35e0381eb01a312" } ], "japanese": [ { - "mnemonic": "しあわせ せっこつ いみん そめる とさか つねづね くれる とくべつ かかえる ずひょう やおや そんぞく こんだて やさしい ふうとう りそく しちょう へいせつ けつろん きんようび すあな たぬき たもつ だいすき", - "validatorPrivateKey": "142008b4f59fc2fdd18e606939d5d9e9b30bb0e43417104466d13a62193891d4", - "validatorPublicKey": "0xa8452d79e71b776f879d17092898f91ea6a11b9e8c528da94c21e498cee7816edf536ce1066399456d9cb721f77b6f27", - "validatorPop": "0x857d0da58bdf3b6d40113ffa98ee0e035d794716cec3358f7dadc69bcaee02000c2c1b075229ed67a17f7ca77fa5db041968bbbe21e7188bb5bd9c46db2f2c21e54b2283ade08a5ff17fcb75d55572e5a596cab6707f8688bc863734edd5c4fd" + "mnemonic": "すける おやつ しめる したて たりる たちばな ほうりつ ことば ちけん ねぐせ けんみん はみがき になう ちみどろ はらう みえる はんこ ばいか むらさき せたけ ようか ためる うえき かゆい", + "address": "0x5145BDBd42675EE3Da1ecD1A6f5AA0f17C5cc779", + "chainId": 11812, + "validatorPrivateKey": "3bfc978bca8cea5c005493bfea939621854061d2bcfead8c118e0e5a85f3bd82", + "validatorPublicKey": "0x8781c8bd4f1ed3f834bb98be07ae5316cbad4b33a05573c487412541a06c6618a1eb4e6a4be587d836d6bfe656896cf4", + "validatorPop": "0xa811b720a0cfbc3678f2f3d1d2951e2fa01d28e9525601460d64ab7ec28dbccb0defbabf0c009461c07222a4c69d331511666e44bd57c0fcbda7419f173c078293d8ee3a7e891a00390f302e248c80319877e616feb7af605372a36940fcd967" }, { - "mnemonic": "こゆう つながる こくはく りくつ ろうじん のこす ときおり かえる いろえんぴつ すろっと さゆう おとしもの ないそう ゆうめい てんいん かんそう はんめい てちょう いばる かいぜん ぞんび せりふ にきび うくらいな", - "validatorPrivateKey": "4461918903d0fb568149b421f004e88c529b512fd48059b1d7284141886ba34f", - "validatorPublicKey": "0x8abf9c3196085d79c6ca455e2471cbc011170d5b74e58ee3655b66aa4d09ddd93ac3e51bdf75dbbf230e7e7dbad52a50", - "validatorPop": "0x9922dd5a662d3ee980ebe7eaa150b1553fe6b46199742547972f43116c50c7b7fd99fab309522cbddd38dbb62a37351802fbaeb213de3ccec2b672722e2c29bd0e43b7c1eb17ca59dfa2f71368c54c27dc3c002f7e23285cf4068396d4f4412e" + "mnemonic": "ひなまつり しはん すうせん ひんこん こいぬ まわす えいが ほたて しえい くうぼ にっか しゃざい らせん まわり さめる るりがわら きれい くきょう しむける にんたい にんち さとおや ちきん さいてき", + "address": "0xBe53ce9a06358070ca439071E7c7ceCA9e3A5423", + "chainId": 11812, + "validatorPrivateKey": "0bcf664866a4894b1dd9a8388595c8fe87232ddbb48cd948de7878298c3e18be", + "validatorPublicKey": "0x9745023bf806fc3783bfa36344fa5a41d2d47911c375baafd7dc6394a4acdf067137b352a50d56ff4ac9273967b82aff", + "validatorPop": "0x98d2e6adc9a14e02464c172f903674acce2e4922ed34a17d5b3147c399028c42fc6dbc86dd59303a297bccb50bc324090275ccd1714cc423cb27d0f3b2819c4dc8a4145a7dc816259a1c679f53dff1594a8606f437cf1f55379768ca400a5041" }, { - "mnemonic": "のたまう ぐたいてき ねぶそく うつる けってい ふんいき すいえい えつらん がいへき すごい ねみみ さとる さむけ たんさん えいきょう へいあん くたびれる しいん やさい くのう かんこう むさぼる しっかり のちほど", - "validatorPrivateKey": "253f91fce0a5cdc74197647606f169dd138b90bfaae722ad41716bc57e80d41e", - "validatorPublicKey": "0xb1485e689a9ad2f1470a6fa30dcc84388b4e4a606a0b6ea1c81f6ab735dc34b3b8893f426e170a9526a1390de48e53c1", - "validatorPop": "0x846e2a15d313cfaf552765695a1d7425c6af57bc34fbb4976ec1eee326e0db329497683b636b74beb89472acdd7a28b601a1d98445f7baf9293392db7568a112abe058f8a1de8c44c6d34cc88c98f50604d3112debc35737daedb0871395ad3a" + "mnemonic": "ねそべる ぎんいろ したみ ぜんら せあぶら せんぬき いぜん なこうど ふおん たたく ふるい おうさま めいうん すらすら くるま たいはん あみもの けさき けんい ちぬり はんのう あんぜん ととのえる ほうそう", + "address": "0xFE6144C35aEA9B95AA8db59b1390954fC5999F03", + "chainId": 11812, + "validatorPrivateKey": "4ff226389f26c025fcf49ab638ad0a378aaa1f1ab1e8b15fdd934cff92e0c397", + "validatorPublicKey": "0x807d253f834f4f7bfcd2b00b11c29a631b562bd8fe05da9f55a8f0cd7f5c88348c12d1e6e2753c6c45ba56c8e0945804", + "validatorPop": "0xaca0e4da113cdf58eafc43c365c69c225d7d6154990b34e7358b08bf76cea29d670be7c66fabbe9e6b3200cfd33a38400dc49168cfa59d59a67b4ad533be0f4d309acb38a86188f3b99229194338d68a8a80c96884952209f4ba1b40a48fba8e" }, { - "mnemonic": "ねんれい いがい やさい のこる たれんと きれつ れいとう ちょうし りりく へいたく くうこう ないせん でっぱ そせん けんえつ よろこぶ れいぞうこ こむぎこ すくう げぼく さっきょく とそう りそく こいぬ", - "validatorPrivateKey": "27e282f80a80d652c1a53817c479251f7230a814f1055510531418cdd30d32a8", - "validatorPublicKey": "0x99ef3bddfe31f487b33d4a81271bd40a67409e6ec117cdf8c6f67935a5d440b929287ae0863e0985218e417f00ab6c6f", - "validatorPop": "0xb4f09e9022dc69c9ee48326b669a9e2b730e7a5c1383969630d04068281aa452443382fc628c35c77b143b476754a8160dc257c98253617d3052cd7cf19c064d5a184f1032b623bcde237f251f3d40f118f8656a8a09f3a2582704261855c427" + "mnemonic": "まける べんり てんとう おくれる のらねこ がっきゅう のたまう かのう はらう こつぶ そとがわ ふひょう さつえい せけん ぬかす たんてい ねくら けんめい がっこう しらせる とつにゅう ぎじゅつしゃ こんれい はつおん", + "address": "0xB88f7d4637BE0F504c7dCE61758895c2ad681Dc6", + "chainId": 11812, + "validatorPrivateKey": "26f00d3558f7ffa4a5c9c6517f7ae0b47f7f58bb45735a4b868b7172f5c289c8", + "validatorPublicKey": "0xb65551a8aa25c8266ecb44672236282357a291842af0908c80b64a583c855f1c93d37bf4f779df3a65e903bbda38e75d", + "validatorPop": "0x93617f729a59b7ac56e34100c9ff41ff29b4f293dabaec64c5cc011d15faf69651bd7be537843c5ea2310395c646311307f3006c90997bbe03e5b347be5c1c7fe1638d07913dbc75f4ae453a693e3d7625ddf55b7790cb529d289d4b2a64044b" }, { - "mnemonic": "うれしい きつつき そいとげる ちきゅう てみやげ きかんしゃ めだつ ひやす めだつ うなじ たいわん ぶんぽう ただしい なにもの いばる きゃく あてはまる いれい じゃま きない いっぽう おうふく さんいん なさけ", - "validatorPrivateKey": "15082ce06a66431b7a03f25537827bc5cc73acd9007243a9e696c374920075dd", - "validatorPublicKey": "0x8124d478ad9cc14f8ccde96023944c358e58e8006a6cd7319942fec56d25d9507c96f47ef69a2e1e0e84e46653d367ab", - "validatorPop": "0x88d10a676d665555a88c6224f913c13ccda838a405314bc1430548b5b9e2687fafadafa7310a1dbe1dc0314fb1ff998e157152e3f8b2af486e7e8dfa9604ef09699f8d29a080414eecd51ffdd62ec9bc012b5bf2fcc3b503fb17c446c697aa41" + "mnemonic": "はんぼうき ひいき ねあげ ためる ついか まなぶ こあくま わらう めんせき げきちん みけん うぶげ せんろ ちたい いんよう かいすいよく ろれつ かいしゃ たいき たかね そんざい あつめる きつえん きくばり", + "address": "0xBE88606fb9b002f898E066380A56f314502Cc01E", + "chainId": 11812, + "validatorPrivateKey": "3c49518e65e2170ea02a5a6d851fec0a80034331ead88e3764a1f48c1c08cc7f", + "validatorPublicKey": "0x99c23bc0f897897fc07064d7b721facfed205a37b1aa2265d8d11dc678e72fd1360969a3921c00dbfb1b4c9be27c99e9", + "validatorPop": "0x9165d4d17c316ac50e337864f09214d4d0965bd44faa254f1928a03b256f7fd3c85198dbd9ec38fd744c1c219010e24517fec9d499c89699a087822e20fb535d634dfc34f595acbba882cfd9ed72b19565d4a08fb37a277b8b1824895071b8fb" } ], "portuguese": [ { - "mnemonic": "esgrima vertente patamar resenha voltagem semanal patente alcatra gordura bule saibro torrada careca ajustar biosfera musical meteoro piada glacial resolver soberano rabanada futebol ilha", - "validatorPrivateKey": "3f2a50540b649232f027e8a277c3a444c19e922a2a97971bf440df984b931593", - "validatorPublicKey": "0xb3d174587f5befdf7b5934b7ad8ce05757398db9be55bec884ad4b19b17f6e7db70eaeb7321b8f6ea3b9f8ef37f96565", - "validatorPop": "0xb61e4ce63305baceda40d9efe786013b78d70e5876c9c36aa95b19759773d4e39372f27e8419c970947502502d9c9a06111a5d8a524742419d9e2b6268fbfde5d9e153b596cee3d05a41e40b037f8406f9141b0e5e95a356591db9ee898ecb04" + "mnemonic": "girino moeda minoria aliviar enrugar decalque toupeira berimbau duplo roupa apego separado pancada piedade massagem exato canudo sotaque hibernar possuir cozinha jornal vibrador gralha", + "address": "0x701a7d6a5bD108fD7aCA7C706fFD6d8931966F25", + "chainId": 11812, + "validatorPrivateKey": "72fdc62a31d8a17db238d181e3cf1256dde5749fc13df010d9478f176ea650b3", + "validatorPublicKey": "0x973d61f17ee8efd6c70bba737d2e5a14c308f1898f1f2431e0a2d9fd149213b822f5bac9e5e44fb88c478884ffe73380", + "validatorPop": "0x91eb0cb15604a9759a1f57cd553512a9b1534f989e27ca5dac70398564ace49e094c08e0c894147573c6f82abab8a1c50ecdcde910a785460b49ed90883cb2fc46e187621cee0d54c61481313dd9ec84d7a9a35fd31bb1c3769d47cf1bf375fb" }, { - "mnemonic": "dosagem taxativo cabelo sediado atingir mesada toupeira pele soja cevada asilado oriental frango rabisco lontra moqueca bule seleto azarar clero bobagem europeu lactante focinho", - "validatorPrivateKey": "46f4c4e9cb0ab5dbf2e2dcc526b2d0001bccd72261862421e8642c13004264c6", - "validatorPublicKey": "0x928acc27de87f1f58d9ab40a7e98bbd6418b6b507dfde0c5f548d8a293d921f56000b7c11bb76bc24382fd0a492c40ad", - "validatorPop": "0xa79e465de3424e1631170325144af08147784eb57cf3ec8c2e5c0add9a809293d1e4e0a4b90babda696d88edc72e187e135597cfdfb9a842839207aaa97a5112133faf3ea1e3133fe6c92ed0c4daf1bee53dadc574a74bad7e6297777d99e9bf" + "mnemonic": "risada valores nadador mirtilo imenso enviado eleger laboral maxilar favorita hino fandango desbotar batedor beldade granada roseira beber mastigar haver derramar grampo pairar acetona", + "address": "0x311e37f7fff6A5aBda898bCEFe5BFC399A112D3f", + "chainId": 11812, + "validatorPrivateKey": "6937f1fa57aa359e9f10246317d2efc7a826b5fac22e70681dff94a11d4e87bc", + "validatorPublicKey": "0xb470bcfd5d5a020978cc690edc9805108eea9950fdac261c090855c08f55c9d070afdba44fefea5e06a67fcc1b6331b8", + "validatorPop": "0x973e3ac10de57b854ba9628228203084d8bf7999ac14f4715d62b4270a7e586c82856f30f83a9f9e7c3ce59a09eb667d06e8963d5452dd23003a92eb741167fbf163b103111d7c83c8037bbcb5b8dce636738829932701d275b60d976624f201" }, { - "mnemonic": "papagaio vertente fungo magreza chegada gracejo jasmim madeira unha caneta benzer cinza rigoroso tese atracar adeus teimar amaciar ameixa ossada sinopse pergunta esgrima joelhada", - "validatorPrivateKey": "1749d423eae74ad8c4576067f9ad81d92f6e36f987308f9dc62fe83361dfd9f5", - "validatorPublicKey": "0x8d22647a9332444ea4d84e00648e60558c6d2386112aad3c262de74ff5223d890c8177c71d2c7c2615a8101ad61a32fa", - "validatorPop": "0xa3012c4fbacafe86f2288afb6eec2b35d010f55d09a839cfa2890538da49619d9a6384d0b06a6a55368b9cbd80a6b20316468ca94f41ad6cc789370e56b79d5cc28cee8c05e06554798dd67c854b5058b982cd7cf01690650930620c882a1074" + "mnemonic": "dormente conhecer gengiva surtir reanimar cheque biombo fechado auditor criminal crer serra aliviar frustrar fardado curativo legado assunto idoso fruteira adequar albergue dobrador opcional", + "address": "0x72790c30d323d27716041a34e4f0a9fd993DdDFf", + "chainId": 11812, + "validatorPrivateKey": "00f2973b2dc35330eb854737958960852d9fef7be8739d8e6b4885d903cbf2ef", + "validatorPublicKey": "0x951c7dbd04866c7e20791d9f7052fcda108baeeec138bbcc006067e03bfa9b5d102f83ab82d2431563e54072dfed75b5", + "validatorPop": "0x83882abb827f4dfbb91682ad45ee65460e202cb6a07e82cee704d17d647e254577f9469a943e67afab80d739730c284713b38d3aead30e1c49838359dca3e6629634b7a3f00608cc6a3e9c52648f042c8a27a247a15895e7ef83f0f06a0185c5" }, { - "mnemonic": "exclamar pendurar moqueca falta calafrio apelido imunizar secar vinco nebuloso aura lasanha partida elevador rodovia flacidez lamber rigoroso ficheiro separado rajada aquecer pasmo auditor", - "validatorPrivateKey": "2f75417cd8b2e8efd39e8dcef6e1a850c5f8c9719ca7b86392f994c82cac35e5", - "validatorPublicKey": "0xa58269b98777c26c3b5bf6abb7d379bed61bd67ca4b081adf83b40e9647679b65ff7e7bcdaa5da7adfc4a46767206a40", - "validatorPop": "0xb02b3fd7469b1dbadab14a3d04780fe8f527e73e8a0024de1302741fc8110b2081ea30100e79526d8a9e28a4a23a815d14da2d1109725fb20e490ca0686673adc213197515f7eb01d234e7b57029daa37a1e3ca4982122d3309bdc9dc819390f" + "mnemonic": "tremer empatia acomodar cachorro demolido engajado cabana tapar ilustrar filme vala afivelar tentar bezerro dorsal sedutor exclamar berlinda patamar suposto gordura talher policiar ramal", + "address": "0xD6643F6459Ef761d60E5b8ba376bA702eb26B57a", + "chainId": 11812, + "validatorPrivateKey": "66847392efb1784efced6d584512ba58619bad17e55a28da4b938f2c4578cdad", + "validatorPublicKey": "0x901ff1d332e78ab76e4f87a8bde22c3e4a843fbda95cfecdd1cc99544fec337e96eed34d9936953cfbc5edcc16d4f801", + "validatorPop": "0xb288bf88b05c7dae19c85ceef07b56ea22a041c1d2639fc13baf3aee673c2fbbb7262ffbece400424636328fffb0a1280268552ca45d09b93e071da953b2c1080ef53f13d1376cb4b2f9bace47eb66cd66e40e6a9d85d6ad206c01d90f3eab0b" }, { - "mnemonic": "cordial respeito granada enquanto moto crioulo erva mapeado levar escola bimotor ensino demanda auditor surtir tomilho plaqueta castelo rainha praxe educado resgatar submerso planta", - "validatorPrivateKey": "484c6232215ead7fe319fad15769559f7f5644f0fe166cc767009122440569ad", - "validatorPublicKey": "0xaf4dd4a6079edd643a0fdc40eea642c3b15783feb1ec8f97bc8ec1bae320d8ca4752d347244f601eb531eff3428c54b5", - "validatorPop": "0xafbc875a04d7c555e19ba56acd2e6f8a31a048f73eedd42315cb16bcde021b408d3f3a675f98baa0edc23f2be576892d000c37af1adcc29457a2cc52d5ab14ef96faad465b640ddbcc05b1395019be84ce1bc3141bdb39575baf5653b9d09897" + "mnemonic": "farofa nordeste sintonia educado legista esquerda joia velhice engraxar vogal vuvuzela sacudir operador pneu agiota muda espreita sarjeta empurrar iraniano apelido chamado pacote robalo", + "address": "0x1A57d2cf7DC28138A7D93B079D7F17e91A40BEE7", + "chainId": 11812, + "validatorPrivateKey": "07a391bc72c2ae7cef0df728819ebc24867b6dca64fe8e82a387265519dade2d", + "validatorPublicKey": "0xa9c523cf93936605db296344b003ae42d2060bc7fe4f86ee0ada9ebaa96d01cc20ef59b8f8db835c1a88de60d5da14e0", + "validatorPop": "0xb0bf0b2892aaece2e0ad81365b2a44c3975bb554b60d0639591116a9fa791fecdb094bbc4af4acde4498fc0d918888ee0b4b2a5d40e61394f46dd9a2404843bbd50ff162c3c19aaed4a46a719c7042e9be44df0bb05a2af88bbf762791df9fa5" } ], "english": [ { - "mnemonic": "tilt solid main night swallow mixture witness undo resemble dinner abuse lucky lens price debris close session rotate giggle spin behave bulb volcano school", - "validatorPrivateKey": "1a0a19222804265d899b7b9a577a14e303d2bce9a2edd9613b66b7f85d0cf085", - "validatorPublicKey": "0x93e2bfe845711f4c87373c6c3be6993f74d0902c0e153bc4a56331e6e6c0ed0ee31f0ba551950e23aa0e13add3af51f2", - "validatorPop": "0x84989fa01fc8402b3c9e622ef1f19c2697d1f8d6491dae52b8f832b9c63da678b12761538a91745c75febee6c92b9fe60e1e186bfbcb6de3454e81f54260d9964804640b7dff4a64cfd8235fe4bd449180cdde0ff03b9b7e676ca6bb0bba885b" + "mnemonic": "jealous flee math risk vacuum attack borrow merge suggest unique ankle amount section they secret symbol salon afford luxury mass adapt key impulse want", + "address": "0x4A42E44770e9AeBC34E6Fa4a792877fAA763db43", + "chainId": 11812, + "validatorPrivateKey": "3d351c7899a1f4b8d139e8adaef636c66de9f3cf54ed54bd9850327ca463f1f5", + "validatorPublicKey": "0x87c4f4ed39e8246ac0c51ea780740a26afc60d5981d07b3aaa06d4fa4a787099f40dc7c3da327bcf03af63e08dba6ccc", + "validatorPop": "0xb4531c727fd279155b610d3e869e660061fa438a45f2d52862a14b43bd70953541a53ac82539c22820d44cfbbd49d229099aeff28591b2f26bf94bcec4c115ef0558b0591515fa0458064fd8effdad8d21848e93d2e5b136f5da57c8b2d574a4" }, { - "mnemonic": "bachelor any crew spell clap misery later glow flush gain stem puzzle opera body junior base circle brick fantasy token hybrid aim live year", - "validatorPrivateKey": "672dc293ed7944ab6bab48b9cf094c0330e86e187d1b7c1806052844a619cf87", - "validatorPublicKey": "0xa00ff3c4d8fd674e8203d83c2e3875d8766a984b06470752598d99a857aef0a7098a395866598bf996a4a767b3a9701a", - "validatorPop": "0x863b1e51a2a5beb8be5fd5ba200a01c768e092d054a7ba7feee3e04b6f9746f9ee2324bc4bd6b481f9c5f24bde54af31053dbdd5dfa802ff2ac1bb1ad0e22fd58d03168a871b6ba3734647b084c2efcafe360dfa13e0a3128d58b5c4b649002b" + "mnemonic": "half fabric screen husband razor shock wise gold goddess grain fence doctor two exercise school garage bone early example basket scale street nephew fold", + "address": "0x4C14d773B0416a4eE0E9f3cbB35F9C2155272970", + "chainId": 11812, + "validatorPrivateKey": "1359ccc2424a2b4e394f88ee8987c878bdf8b89dada2278d58e01ce06171485a", + "validatorPublicKey": "0xa4ac111ac569b2e1c17bdd7735b8887d6fb2a610c48576c27202238610fea48ecdb534b4a878542f06079be5cce0ea3e", + "validatorPop": "0x848aa21ad170ea280454eb207bf8add008e44711a418777c4f6972242b9c7a90213a01fceb5e0bdaa5dcbda8c020b686176b1fdc4ea1d2eb8b83c91ae8f02477b6db144bf78dbed3af8823673e6b9b70e9c2c0008c1e6fed9791ea2f929d8e45" }, { - "mnemonic": "track dumb fantasy slide surprise ramp inherit erode fat staff potato night pill catch cabbage book exotic upset wing winner satisfy total vessel rubber", - "validatorPrivateKey": "0fb965e7eb47440e3fb5e5399ace682888cd209363c5550195cce16dcf92fab1", - "validatorPublicKey": "0x8c9700f630f514d10319abe35192b169c733d4ff3534bcf6a148f42d8a475fde2e2adcb72ed5af13587b851fb8ff4e0e", - "validatorPop": "0x98c172d81fcb44cc2650bd2be8ff2024017c348545c4014d6936ef335d845817f0eab56c9d26f5a36de9a627831ff869141ec3957bc09e1d4d9f3136e21a671577b95f0dff6f38a1c3a776961fbed254f509067d410e3118b5da8e192237f065" + "mnemonic": "result culture regret fever dismiss trend diamond aware cage friend space swarm element obtain excess sight excite erosion pulp drill song fee review require", + "address": "0xC15cb4a38811f9951F989bB9c6D5f6C582979766", + "chainId": 11812, + "validatorPrivateKey": "6c62f6aa481a0daf69487778bf65ca0a1eece994f4157b2b8e9e8ca1fc85c6f6", + "validatorPublicKey": "0x96310e9e06b9ea9abe55178411590413989d45aad09a45d275c5c6ed3fff800f1ddcb5bdf1fb14f92caad7d807d701cf", + "validatorPop": "0x8f10c64c66da4f3db3d79606876760780be6cde5236cf2812e841fe2c94142ef6e3ad0f35e7c3f38d7adebfcfc28805117c3ecbdc1b60e3e23450432cdcf58bcf48edf5919f7b4582638278896045d4066888e5d40effb767060539425818a16" }, { - "mnemonic": "attitude endorse witness engine hole employ keen obey equip empty street region opera liar labor path middle stadium pony switch pass spring version ordinary", - "validatorPrivateKey": "49ba61ad4384dd022595834faf12023d14a0ff55ef18ddef9092ff446c17dc23", - "validatorPublicKey": "0xa5e9860f389b3975b837045373988c6654faf3cc48f32c8eda2cdbe0c25c336ad9d31fb8e7fb5a00e8528141361b4972", - "validatorPop": "0x8c41fb0687b6d94c8c7eac339df24c96ef705b79f47f974d53d97aa7abc0a5f3b08269311bf681f1d76ac9b271be7d44005675482e5439bd5d9fb91f64b45ba05cfe62bc7f8e6e716d87e2fc0b223a29256e49556a9b8e07dab4af949d09b420" + "mnemonic": "exact relax wife school joke net delay arrange juice elephant lumber rebuild tip system govern price lawsuit bright infant pill design beyond lazy extend", + "address": "0xd0D85Ae3A7f2b33eb2a3C1BBD9c4dB672F011214", + "chainId": 11812, + "validatorPrivateKey": "597f1bd80e8727e9a18affa2e6c0ba21edbd3a9b35b175b723db908e85fa8e74", + "validatorPublicKey": "0x8be09c472df2f193b842e3047d233bfdeec64a0f8a29b5cb11fc9ea1be2fa1086303010819a11a0ef324fbca149e7ea6", + "validatorPop": "0x89e410b092b5396d557930ba4cad7d57d19bbe9f6cc309a39f921261b7122783be0c1d95dda5f53b9329331f8df945730ffe0994c2d0858a8e728cb141b7433adf2b79cab3065ec8fe617e6473ff2e56a81d241bf6ad07a10ed8153149b7ba62" }, { - "mnemonic": "gather gold embrace walnut hover evolve wedding they radar turn drink rail decade general smooth magnet perfect scale jar topic current fury struggle inject", - "validatorPrivateKey": "07021bacbcaa0ddd099fbd31a17084708783c0248a9b065fe39876c2d6dddfd7", - "validatorPublicKey": "0xac2ede580bdc2482a5d302bc96d66318c46c0bb14926460eec49881fb545af20e6da0a06ace7d5b0ada6d2f4e93528e6", - "validatorPop": "0x843c2459ce6e5c855d0432187f5a8256d64a2d88482c8aa33fb4b400eb56815108b937e238a86769f2cbcd5e43d06a1206f63833fe00c5a95b2933a129c4d739d49b85daae714371fd68d9c5762c687b59c385cb410c9871edcddb3508066c66" + "mnemonic": "cry onion vapor witness able child cute alter audit warm easy charge siege day warrior reveal quit ski jump tent crucial awake weasel plug", + "address": "0x96f4d918A88E0eefc6c7948d013E55e1010978Cc", + "chainId": 11812, + "validatorPrivateKey": "2c000bb38572ef853e3216957d8bc5ff4acb4747607c04d1417c7703300ba087", + "validatorPublicKey": "0x80b223965be2165442c8c3a8c4dd0ef6aafd4518cd2bfe68923069d37dd5724b7e314576d5c4d8a16e5ff6830c3b84a8", + "validatorPop": "0xac915643c43e001d4e604c788f413b4647e5fac51f8db42e5283d440c4e38770a04487a00945a86302ab77b7cd082dc5015d0e1f03a74b4d337effda25cbee4321e1a7388d564fd07fa55fef323370345b2495fa7f34c677964abbe26cee844d" } ] } diff --git a/src/test/resources/transactions/validator-registration.json b/src/test/resources/transactions/validator-registration.json index 617f0c9..801f198 100644 --- a/src/test/resources/transactions/validator-registration.json +++ b/src/test/resources/transactions/validator-registration.json @@ -5,12 +5,12 @@ "gasLimit": 200000, "recipientAddress": "0x535B3D7A252fa034Ed71F0C53ec0C6F784cB64E1", "value": "0", - "data": "0x226f2645000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000030a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be496000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060a124539f9d469919eb57224cc003d9d5b086a27c6de244abf60b74b35fb749fceab7f4c24b983475cddab7d0876de49c000b5c362f5e3ce18d964f5c2d20d4eadcf7cb77a73d8ee4cd87bad10f7ba0824cea6715d1c045b4f93865a2758b7bfe", + "data": "0x226f2645000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000030a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be4960000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000608dff1b303bfacacb2eb716892b79123b256314d8fc91635aae307f0fd7faf58019bba25c494b38eb1adccd91f49923ef00e39947932d7edffe710c48b9ab61ad4a9bd48f41f9babcfdd5c88bf3ad74c4d70d091a407310297b1dc4bc84ec6d5f", "network": 11812, "validatorPublicKey": "a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be496", - "validatorProof": "a124539f9d469919eb57224cc003d9d5b086a27c6de244abf60b74b35fb749fceab7f4c24b983475cddab7d0876de49c000b5c362f5e3ce18d964f5c2d20d4eadcf7cb77a73d8ee4cd87bad10f7ba0824cea6715d1c045b4f93865a2758b7bfe", - "signature": "2ac3550cae0c7749e131b482ea3c5a5d4ca66f4b84e54861ab86cd68340f50a117101f0c0b91c713db6f79c1aa95c83a2cf7a6c81085692af8526b7b755d569201", - "id": "cc4331ec856b588436e8ba3de8b04175b4537fbe1cc4dd6a6e8a1f92788b206b" + "validatorProof": "8dff1b303bfacacb2eb716892b79123b256314d8fc91635aae307f0fd7faf58019bba25c494b38eb1adccd91f49923ef00e39947932d7edffe710c48b9ab61ad4a9bd48f41f9babcfdd5c88bf3ad74c4d70d091a407310297b1dc4bc84ec6d5f", + "signature": "ea221e5359e4c2dc58d5ae94663596f57d36b4de48588b68866014605382bfcc79cdc46c61665218d9d8320cd863f697ddf98676c49393ef9ca104b154d8cc0d01", + "id": "70cb48df84bc18a9c83f56cd013ae4179af24ed77aca00c3530bb3b5e790cc6d" }, - "serialized": "f9018d0185012a05f20083030d4094535b3d7a252fa034ed71f0c53ec0c6f784cb64e180b90124226f2645000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000030a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be496000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060a124539f9d469919eb57224cc003d9d5b086a27c6de244abf60b74b35fb749fceab7f4c24b983475cddab7d0876de49c000b5c362f5e3ce18d964f5c2d20d4eadcf7cb77a73d8ee4cd87bad10f7ba0824cea6715d1c045b4f93865a2758b7bfe825c6ca02ac3550cae0c7749e131b482ea3c5a5d4ca66f4b84e54861ab86cd68340f50a1a017101f0c0b91c713db6f79c1aa95c83a2cf7a6c81085692af8526b7b755d5692" + "serialized": "f9018d0185012a05f20083030d4094535b3d7a252fa034ed71f0c53ec0c6f784cb64e180b90124226f2645000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000030a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be4960000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000608dff1b303bfacacb2eb716892b79123b256314d8fc91635aae307f0fd7faf58019bba25c494b38eb1adccd91f49923ef00e39947932d7edffe710c48b9ab61ad4a9bd48f41f9babcfdd5c88bf3ad74c4d70d091a407310297b1dc4bc84ec6d5f825c6ca0ea221e5359e4c2dc58d5ae94663596f57d36b4de48588b68866014605382bfcca079cdc46c61665218d9d8320cd863f697ddf98676c49393ef9ca104b154d8cc0d" } diff --git a/src/test/resources/transactions/validator-update.json b/src/test/resources/transactions/validator-update.json index e1259dc..022d7ff 100644 --- a/src/test/resources/transactions/validator-update.json +++ b/src/test/resources/transactions/validator-update.json @@ -5,12 +5,12 @@ "gasLimit": 200000, "recipientAddress": "0x535B3D7A252fa034Ed71F0C53ec0C6F784cB64E1", "value": "0", - "data": "0x8f062626000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000030a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be496000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060a124539f9d469919eb57224cc003d9d5b086a27c6de244abf60b74b35fb749fceab7f4c24b983475cddab7d0876de49c000b5c362f5e3ce18d964f5c2d20d4eadcf7cb77a73d8ee4cd87bad10f7ba0824cea6715d1c045b4f93865a2758b7bfe", + "data": "0x8f062626000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000030a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be4960000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000608dff1b303bfacacb2eb716892b79123b256314d8fc91635aae307f0fd7faf58019bba25c494b38eb1adccd91f49923ef00e39947932d7edffe710c48b9ab61ad4a9bd48f41f9babcfdd5c88bf3ad74c4d70d091a407310297b1dc4bc84ec6d5f", "network": 11812, "validatorPublicKey": "a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be496", - "validatorProof": "a124539f9d469919eb57224cc003d9d5b086a27c6de244abf60b74b35fb749fceab7f4c24b983475cddab7d0876de49c000b5c362f5e3ce18d964f5c2d20d4eadcf7cb77a73d8ee4cd87bad10f7ba0824cea6715d1c045b4f93865a2758b7bfe", - "signature": "5500089b0b0afbf2a638d7fab985d8def9e44c0087859f6e5e0561e37dccc487219b047c62e0d94b3e834085dc0cd6b5f12c6f27ab058e949dec82f24f29b4fd00", - "id": "142c471a038d69b7ae7d18c83efa767a16915dc750a380966f50959beec9f9ea" + "validatorProof": "8dff1b303bfacacb2eb716892b79123b256314d8fc91635aae307f0fd7faf58019bba25c494b38eb1adccd91f49923ef00e39947932d7edffe710c48b9ab61ad4a9bd48f41f9babcfdd5c88bf3ad74c4d70d091a407310297b1dc4bc84ec6d5f", + "signature": "65d33208546683e1b15a5838e75d6e918d6a0b6a6af249479b1364a3de1c1c1677180f51d14a00eb92c7296aaf31d70ca82ec961f0a0e9c34069ce1d0a27862200", + "id": "7e84d174ead70741b92adfc3427dd612b70ecd57e8ffe69462f96670f5607be1" }, - "serialized": "f9018d0185012a05f20083030d4094535b3d7a252fa034ed71f0c53ec0c6f784cb64e180b901248f062626000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000030a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be496000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060a124539f9d469919eb57224cc003d9d5b086a27c6de244abf60b74b35fb749fceab7f4c24b983475cddab7d0876de49c000b5c362f5e3ce18d964f5c2d20d4eadcf7cb77a73d8ee4cd87bad10f7ba0824cea6715d1c045b4f93865a2758b7bfe825c6ba05500089b0b0afbf2a638d7fab985d8def9e44c0087859f6e5e0561e37dccc487a0219b047c62e0d94b3e834085dc0cd6b5f12c6f27ab058e949dec82f24f29b4fd" + "serialized": "f9018d0185012a05f20083030d4094535b3d7a252fa034ed71f0c53ec0c6f784cb64e180b901248f062626000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000030a18dba7811b212bbb2f080d7c69935998ffbe7b38586e2d3e9e12079ea789996d1c69feb158c002aed327f69865be4960000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000608dff1b303bfacacb2eb716892b79123b256314d8fc91635aae307f0fd7faf58019bba25c494b38eb1adccd91f49923ef00e39947932d7edffe710c48b9ab61ad4a9bd48f41f9babcfdd5c88bf3ad74c4d70d091a407310297b1dc4bc84ec6d5f825c6ba065d33208546683e1b15a5838e75d6e918d6a0b6a6af249479b1364a3de1c1c16a077180f51d14a00eb92c7296aaf31d70ca82ec961f0a0e9c34069ce1d0a278622" }