溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Error 309003中提供的密鑰、權(quán)限和延遲不滿足聲明的授權(quán)該怎么解決

發(fā)布時(shí)間:2021-12-24 10:02:26 來(lái)源:億速云 閱讀:214 作者:柒染 欄目:互聯(lián)網(wǎng)科技

Error 309003中提供的密鑰、權(quán)限和延遲不滿足聲明的授權(quán)該怎么解決,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

當(dāng)EOS應(yīng)用開(kāi)發(fā)者在自己新搭建的開(kāi)發(fā)環(huán)境中嘗試提交第一個(gè)交易時(shí),經(jīng)常會(huì) 碰到3090003錯(cuò)誤,提示交易授權(quán)所需密鑰、權(quán)限或延遲不滿足要求:

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.

這是因?yàn)槊恳粋€(gè)新的EOSIO區(qū)塊鏈都有一個(gè)默認(rèn)的系統(tǒng)賬號(hào)eosio,該賬戶將被 用來(lái)初始化區(qū)塊鏈的設(shè)置,例如載入管理EOSIO區(qū)塊鏈以及共識(shí)計(jì)算的系統(tǒng)合約。 每一個(gè)新的EOSIO鏈都內(nèi)置一個(gè)相同的開(kāi)發(fā)密鑰,需要載入這個(gè)密鑰才能以系統(tǒng) 賬號(hào)eosio的名義對(duì)交易進(jìn)行簽名。

如果要快速高效地學(xué)習(xí)EOS應(yīng)用開(kāi)發(fā),推薦匯智網(wǎng)的EOS智能合約與DApp開(kāi)發(fā)入門(mén)

執(zhí)行下面的命令載入賬號(hào)eosio對(duì)應(yīng)的密鑰:

~$ cleos wallet import 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3

注意:不要在生產(chǎn)環(huán)境中使用開(kāi)發(fā)密鑰,因?yàn)檫@個(gè)私鑰是公開(kāi)的!

那么,應(yīng)該如何修改eosio的默認(rèn)私鑰?

在nodeos的配置文件(ubuntu默認(rèn)路徑:~/.local/share/eosio/nodeos/config/config.ini) 中,有一個(gè)參數(shù)signature-provider用來(lái)定義eosio賬號(hào)對(duì)應(yīng)的密鑰對(duì)。如果你 沒(méi)有修改過(guò)的話,看起來(lái)就是這樣:

signature-provider = EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV=KEY:5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3

signature-provider參數(shù)的值是一個(gè)密鑰對(duì),形式為:

<public-key>=<provider-spec>

<public-key>是一個(gè)有效的EOSIO公鑰字符串,例如:

OS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV

<provider-spec>由兩部分組成:<provider-type>:<data>。其中<provider-type> 的值可以是KEY或KEOSD,根據(jù)這部分的不同,<data>也有所不同。

當(dāng)<provider-type>的值設(shè)置為KEY時(shí),<data>的內(nèi)容應(yīng)當(dāng)是與公鑰對(duì)應(yīng)的私鑰字符串; 當(dāng)<provider-type>的值設(shè)置為KEOSD時(shí),<data>的內(nèi)容則應(yīng)當(dāng)是keosd錢(qián)包的URL,注意這時(shí) 對(duì)應(yīng)的錢(qián)包還需要解鎖。

因此,你可以使用cleos生成一對(duì)密鑰,然后修改signature-provider就可以 改變eosio的默認(rèn)私鑰了。

看完上述內(nèi)容,你們掌握Error 309003中提供的密鑰、權(quán)限和延遲不滿足聲明的授權(quán)該怎么解決的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI