1

I've just installed an EOS node on my Ubuntu VPS, and it seems be working well. Sync speed is pretty fast also. I ran nodeos like:

nodeos --genesis-json eos_data/config/genesis.json --config-dir eos_data/config/ --data-dir eos_data/data/

I've also created a new wallet, two key pairs and imported them to the wallet. Then I've imported the key pair for eosio account as well. So when I execute cleos -u http://127.0.0.1:5801 wallet keys, all 3 public keys are displaying.

[
"EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV",
"EOS7YnvWfj************************************************************",
"EOS7uBeu8*************************************************************"
]

Then, I've unlocked the wallet. So I thought that is sufficient to create a new account.

Unfortunately, when I tried the following:

cleos -u http://127.0.0.1:5801 create account eosio NEW_ACCOUNT owner_public_key active_public_key

it displayed an error:

Error 3090003: Provided keys, permissions, and delays do not satisfy declared authorizations
Ensure that you have the related private keys inside your wallet and your wallet is unlocked.
Error Details:
transaction declares authority '{"actor":"eosio","permission":"active"}', but does not have signatures for it.

I am not sure what's wrong and how I can fix this problem.

Do I need to finish synchronization before creating new accounts?

  • Have you changed the pair of key of signature-provider option in config.ini? If then, you should add that private key to your wallet. Check what keys are used in eosio@active permission. (cleos -u http://127.0.0.1:5801 get account eosio in your case) – conr2d Jan 17 at 16:45
1

You forgot to indicate the permission after the transaction. You have to add at the end:

-p eosio

So that the full command looks like:

cleos -u http://127.0.0.1:5801 create account eosio NEW_ACCOUNT owner_public_key active_public_key -p eosio

  • Still the same error when I appended "-p eosio". – coding-jewelry Jan 17 at 21:29
  • Is the eosio private key part of your nodeos setup? – Phillip Hamnett - EOS42 Jan 17 at 21:31
  • What's that? How can I add the private key of eosio to my nodeos? – coding-jewelry Jan 17 at 21:33
  • --private-key '[ "PUBLIC KEY", "PRIVATE KEY"]' – Phillip Hamnett - EOS42 Jan 17 at 21:39
  • Did you mean the line in config.ini? signature-provider = EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV=KEY:5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3 – coding-jewelry Jan 17 at 21:40
1

1.From your information, you ran nodeos like:

nodeos --genesis-json eos_data/config/genesis.json --config-dir eos_data/config/ --data-dir eos_data/data/

1.1 this node is not a producer as no -p specified;

1.2 this node have no chain-plugin, so it will not accept you cleos request, and say "Error 3110001: Missing Chain API Plugin";

1.3 the default port is 127.0.0.1:8888.

2. You create account use this command

cleos -u http://127.0.0.1:5801 create account eosio NEW_ACCOUNT owner_public_key active_public_key

so you call other node to create account, not the one you mentioned. You can check the eosio account info by

cleos -u http://127.0.0.1:5801 get account eosio

and see the public_key of eosio, and check whether is in your wallet.

The eosio account key is based on the genesis.json, not the config.ini or --private-key or signature-provider.

Other producers's key is based on that:

  • signature-provider
  • private-key
  • config.ini

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.