Algokey import mnemonic

I followed the instructions and have a node running. I have Algos in a wallet on my iphone that I’d like to “store” on the node instead of leaving them on the iphone.

It looks like algokey import is what I need to do, but I wanted to make sure before moving them.

Here are my assumptions:

  1. If I import the private key with mnemonic, then no transaction takes place, the account from my phone now lives on my phone and the node.

  2. The node would have stake and I could take it online.

  3. I could delete the app from my phone and the “account” would not be affected.

Thanks for any help.

You probably want to use goal to import the key as you will need to use goal to take the account online.
https://developer.algorand.org/docs/goal-account#goal-account-import

In this sense you are not really moving anything you will just have your account information in two places and you can take the account online with the node.

You could also create a new account on the node and then send the tokens to the new account from the mobile account.

The fact that I’m not really moving anything confirms what I thought, so that helps.

I want to avoid creating a new account, since the account on my phone is registered for the super rewards, so if I transfer the funds out of it I will be disqualified.

Thanks for the response.

I am confused about the goal account import description.

From the description, “the imported account will be listed alongside your wallet-generated accounts, but will not be tied to your wallet.”

With no wallets in my node currently, if I just import the mnemonic from the wallet on my phone, this will be an account on the node, not associated with a wallet? Do I have to have a wallet first before this import, or can I just import this account?

I assume a wallet holds accounts (keys), but I’m confused when it says it won’t be tied to your wallet.

Take a look at this page, specifically wallets and accounts
https://developer.algorand.org/docs/accounts-wallets-and-keys

Each node function like a wallet manager with containing one or more wallets containing one or more accounts. The accounts can be generated with the wallet or imported . (like what you want to do). Generated accounts can be recovered later on any machine with with just the wallet mnemonic. This is not true for imported accounts. You must save the account mnemonic to recover these types of accounts. Does this make sense?

I think I understand.

I was able to import the account into a wallet on the node. I’m trying to take it online, but

goal account listpartkeys

displays this error

Error processing command: open /var/lib/algorand/mainnet-v1.0: permission denied

What OS are you running on? What install instructions did you use?

Is there any chance you attempted to previously start the algod as root ?
(either directly or by calling “sudo goal…” )

I followed the ubuntu instructions but its on debian.

The user for the algod daemon is ‘algorand’

Im logged in as user ‘phil’

I’m not sure if this would help, but does

sudo -u algorand goal account listpartkeys

work ?

Ill try it.

Im trying to understand the process. The user on the node ‘phil’ isn’t running the daemon ‘algod’ so i cant generate a participation key with user ‘phil’?

I was, however, able to import my account under user ‘phil’. As far as the permissions on the node that store my algos , user ‘phil’ can access those, but to participate, i would need permissions of user ‘algorand’? Is this a bug or is this the way its intended?

I’m not sure if it’s a bug or not. I will try to poke around to see if anyone else ran into this issue and might have any ideas.

regardless, it would be helpful if you could run the above and see if it resolves your immediate issue.

The solution might be having to add the user phil to the security group which the folder mainnet-v1.0 is associated with.

Tsachi

That worked, here’s the output:

Filename Parent address First round Last round First key