holgern/beem

Critical issue | missing required active authority:Missing Active Authority username

Closed this issue · 5 comments

While working with Beem, we have encountered a critical issue: Errors occur when trying to submit transactions.
The posting and upvote function is plagued by the same problem.

Code:
`from beem.account import Account
from beem import Hive

#not a real working key
hive = Hive(nobroadcast=False, keys=["5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3"])
account = Account("username", blockchain_instance=hive)
print(account.transfer("username2", "100", "HIVE", "hello")) `

Error:
Traceback (most recent call last): File "C:\Users\username\AppData\Local\Programs\Python\Python38\lib\site-packages\beemapi\noderpc.py", line 62, in rpcexec reply = super(NodeRPC, self).rpcexec(payload) File "C:\Users\username\AppData\Local\Programs\Python\Python38\lib\site-packages\beemapi\graphenerpc.py", line 457, in rpcexec raise RPCError(ret['error']['message']) beemapi.exceptions.RPCError: missing required active authority:Missing Active Authority username

We have already tested it on several systems with multiple accounts.
Unfortunately, different authentication methods did not help either.
[Beem V0.24.23 | Python 3.6/3.8.8]

E-D-A commented

You are saying upvoting/posting doesn’t work but here you try to transfer. They require different keys, as the error indicates. Active authority missing… You need the active key for a transfer and posting key for voting/posting.

I have said "The posting and upvote function is plagued by the same problem."
Perhaps I did not express myself correctly.
For upvoting/posting we have of course used other code. XD

Please try to execute the above code yourself, then you will realize that it is currently not possible to make a transaction with beem.

Try upgrading to beem v0.24.26. This issue cropped up when API nodes started upgrading to HF25.

@hiveuprss
Shit they are right, then I guess I have to apologize....

I am currently having the same problem when trying to create an account.

The code I am using is the following

  b_account = Blurt(node=cfg.nodelist,keys = Creator_active_key, custom_chains =cfg.custom_chains)
a = Account(account=creator,blockchain_instance=b_account)
a.transfer(to="juan1912",amount= 0.001, memo="memo test", active="BLURT")
password = b_account.create_account(account_name=account_name, creator=creator, password=p)

The transfer is going through, but creating the account throws me the following exception.

Traceback (most recent call last):
File \"C:\\Users\\MICHAELDAVID\\.virtualenvs\\Bot_de_discord_-_BLURT-7HIjnIOi\\lib\\site-packages\\beemapi\\noderpc.py\", line 62, in rpcexec
reply = super(NodeRPC, self).rpcexec(payload)
File \"C:\\Users\\MICHAELDAVID\\.virtualenvs\\Bot_de_discord_-_BLURT-7HIjnIOi\\lib\\site-packages\\beemapi\\graphenerpc.py\", line 479, in rpcexec
raise RPCError(ret['error']['message'])
beemapi.exceptions.RPCError: missing required active authority:Missing Active Authority damurq

If the active key was not present, then the transfer would not be carried out

[Beem V0.24.26 | Python 3.9.1]