"EOS Error 3090003: provided keys, permissions, and delays do not satisfy declared authoriz

在EOS开发环境中遇到3090003错误通常是由于交易授权所需的密钥、权限或延迟不满足条件。默认EOSIO链使用公开的开发密钥,需通过修改nodeos配置文件中的eosio账户密钥对来解决。可以使用cleos生成新密钥并更新config.ini文件,确保在生产环境中使用安全的私钥。
摘要由CSDN通过智能技术生成

当EOS应用开发者在自己新搭建的开发环境中尝试提交第一个交易时,经常会碰到3090003错误,提示交易授权所需密钥、权限或延迟不满足要求:

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.

这是因为每一个新的EOSIO区块链都有一个默认的系统账号eosio,该账户将被用来初始化区块链的设置,例如载入管理EOSIO区块链以及共识计算的系统合约。每一个新的EOSIO链都内置一个相同的开发密钥,需要载入这个密钥才能以系统账号eosio的名义对交易进行签名。

执行下面的命令载入账号eosio对应的密钥:

~$ cleos wallet import 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3

注意:不要在生产环境中使用开发密钥,因为这个私钥是公开的!

那么,应该如何修改eosio的默认私钥?

在nodeos的配置文件(ubuntu默认路径:~/.local/share/eosio/nodeos/config/config.ini)中,有一个参数signature-provider用来定义eosio账号对应的密钥对。如果你没有修改过的话,看起来就是这样:

signature-provider = EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值