Eos: Error on deploying bios contract (update)

Created on 18 Jun 2018  路  3Comments  路  Source: EOSIO/eos

Please help me to solve a problem.
I have an unsolved but closed issue #4125, and cannot re-open it, so I just duplicate it here.

I recently updated eosio to v1.0.5 and got an error while deploying bios contract. I had no such problems neither with version v1.0.2 nor with v1.0.1.
I followed the "getting started" manual and got stuck on the line below:

cleos set contract eosio build/contracts/eosio.bios -p eosio.

with 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.

I don't know if it could help you, but I also struggled with creating a wallet:
cleos wallet create
but solved it (thanks to #3879) by explicitly passing the port number to keosd:

keosd --http-server-address localhost:8900

I have also tried to explicitly provide url to cleos:

cleos --wallet-url http://localhost:8900 set contract eosio ${EOSIO_SOURCE}/build/contracts/eosio.bios -p eosio

But I got the same error:

Reading WAST/WASM from /home/src/eos//build/contracts/eosio.bios/eosio.bios.wasm...
Using already assembled WASM...
Publishing contract...
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.

So I use localhost:8900 for launching keosd and http://localhost:8900 for cleos.
Note, that I have imported the private key and unlocked the wallet.:

 cleos --wallet-url http://localhost:8900 wallet list keys
Wallets:
[
  "default *"
]
[
  "EOS68qW7HnQYhMtvy58Jx2jdeoHyc8quymYU7tA4xLWQAgpiQM4vW"
]

Please, tell me what should I do? Or how can I provide more of useful information to help solving the problem?

Most helpful comment

I apparently solved it by myself:
First, open config.ini - the configuration file of the nodeos, you may find it here: /root/.local/share/eosio/nodeos/config.
Here you will find something like this:
signature-provider = EOS${PUBLIC_KEY}=KEY:${PRIVATE_KEY}
Copy the ${PRIVATE_KEY} into a clipboard.
Now, unlock your wallet:
cleos wallet unlock (you will have to enter a password you have got after creating a default wallet)
And, finally, import the ${PRIVATE_KEY} into your wallet:
cleos wallet import ${PRIVATE_KEY}
Now you can sign transactions with eosio permissions!

All 3 comments

same here.

A little more additional information: nodeos is launched with the following command:
nodeos -e -p eosio --plugin eosio::chain_api_plugin --plugin eosio::history_api_plugin --replay-blockchain --contracts-console

I apparently solved it by myself:
First, open config.ini - the configuration file of the nodeos, you may find it here: /root/.local/share/eosio/nodeos/config.
Here you will find something like this:
signature-provider = EOS${PUBLIC_KEY}=KEY:${PRIVATE_KEY}
Copy the ${PRIVATE_KEY} into a clipboard.
Now, unlock your wallet:
cleos wallet unlock (you will have to enter a password you have got after creating a default wallet)
And, finally, import the ${PRIVATE_KEY} into your wallet:
cleos wallet import ${PRIVATE_KEY}
Now you can sign transactions with eosio permissions!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

yashbhavsar007 picture yashbhavsar007  路  3Comments

sim31 picture sim31  路  3Comments

guaiguaihw picture guaiguaihw  路  3Comments

dimakomar picture dimakomar  路  3Comments

christola picture christola  路  3Comments