Trouble Importing Transparent Private Key: Any Suggestions?

Hello everyone,

I have an old transparent address that I used to use back in the early days. I have a paper backup of the private key, which I have successfully imported via zcashd years ago.

Zecwallet appears to be no longer supported and zcashd is being deprecated. I know I could run zebrad. but is there an easier solution to restore an old transparent address?

I have tried importing the key into Ywallet, but it tells me to use “Sweep”. However, when I try to use sweep I get the following error:

Failed to validate transaction did not pass consensus validation: transaction uses an incorrect consensus branch id

I wanted to use Zashi, but it appears you can only restore with a seed phrase.

Any help would be greatly appreciated.

1 Like

You can also try zkool which is the successor to Ywallet. you can find it on github and on the app stores as well.

1 Like

The replacement for zcashd’s wallet will be Zallet, and it has initial support (at alpha phase) for importing zcashd wallet files. It doesn’t yet have support for importing arbitrary transparent private keys.

NU 6.1 just activated; my guess is that either your Ywallet is out-of-date, or Ywallet has not been updated with NU 6.1 support.

Indeed, Zashi does not support standalone transparent keys, or migrating from old zcashd-based wallets. Zallet will be the pathway for that.

1 Like

Indeed it hasn’t

2 Likes

Is Zkool up to date?

Thanks for the suggestions @Autotunafish @str4d @hanh You guys rock!

@hanh Does Zkool have the “Sweep” feature like Ywallet does? And will Ywallet receive an update for the consensus branch ID?

1 Like

Yes and yes (1.13.8)

zkool will get upgraded too.

4 Likes

Thanks @hanh

I really appreciate your dedication to providing a quick update.

You get my vote for ZCG! :+1:

1 Like

I’ve been trying to get my Sprout-era WIF transparent private key to get swept into a more up-to-date wallet. This key is a raw private key (non-HD, generated directly via random processes in early Zcash tools). I’m running zcashd v6.10.0 with complete chain sync, I have the old wallet.dat file, and I have the T-address public key. Blockchain explorer shows the expected ZEC at the T-address. I have the WIF key from zcash-cli dumpprivkey “T_ADDRESS” .

I tried the WIF key sweep function in Coinomi desktop wallet, but that attempt returned 0.0000, saying “Error: The private key does not contain any funds.” (This error occured after about 15-30 seconds.)

I tried Zingo-pc 2.02 desktop wallet but for some reason didn’t connect to the network. It acted dead, so I moved on.

Are you saying that in alpha release of Zallet that my wallet.dat file could be imported. If not, are there any remaining options that I can try, either with wallet.dat or the raw private key?

I have also tried: zcashd -allowdeprecated=getnewaddress -disablewalletbackupwarning=1 -dbcache=16000 -maxconnections=80

followed by:

zcash-cli z_getnewaddress sapling

with error message:

“z_getnewaddress is DISABLED: error code: -1
error message:
z_getnewaddress ( type )

z_getnewaddress is DISABLED and will be removed in a future release.
Please use z_getnewaccount and z_getaddressforaccount instead.
You can restart the node with -allowdeprecated=z_getnewaddress
to re-enable this method during its deprecation period.”

Would an earlier version of zcashd be helpful in getting a Sapling address? (My plan was to xfer the coins to a Sapling address, and from there subsequently transfer to a Universal address)

Can you verify that this is not the case? Transparent addresses serve as their own view keys. The balance it holds is recorded in all of the nodes on the network in plaintext and you can see it by simply pasting your address into a block explorer.

(Note: As a new user, forum rules block me from posting URLs and also blocks me from more than 3 responses in a single thread - this is my second response in this thread - I can only respond once more after this).

I did what you recommended on the other thread (but I was blocked from responding to you) - I entered my public key into 3xpl,com/zcash/address/t1************************ and this does show the balance that I expect.

1 Like

Try adding the ‘z_’ prefix to the flag ‘-allowdeprecated=getnewaddress’
'-allowdeprecated=z_getnewaddress`

image

Otherwise yeah have you considered just transacting with zcash-cli to another wallet? It seems that if you possess the spend key inside zcashd, then you should be able to.

Bumped your trust level so this shouldn’t be a problem

1 Like

Thank you!

1 Like

OK, thanks for your help. So, I transferred the Sprout coins into a shielded Sapling address. Now I want to move the coins into a Unified address. I’m running zcashd v6.10.0 on an Intel Mac OS Ventura 13.7.8.

First, I generated a Universal address by: % ./zcash-cli z_getaddressforaccount 0 ‘[“orchard”]’ (with output:)

{

“account”: 0,

“address”: “u1XXXXXXXXXXXXXXX…….XXXXXXXXXX”,

“diversifier_index”: 0,

“receiver_types”: [

"orchard"

]

}
Next, I tried to sent the coins to this u1 address by:

% ./zcash-cli z_sendmany “ANY” \

‘[{“address”:“u1XXXXXXXXXXXXXXX…….XXXXXXXXXX”,“amount”:YYYYY.YYYY}]’ \

1 0.0001

error code: -5

error message:

Invalid from address: should be a taddr, zaddr, UA, or the string ‘ANY_TADDR’.

How do I fix this error? Can I substitute for “ANY” the “shielded Sapling z_address”?

try this format:

./zcash-cli z_sendmany "fromaddress" '[{"address": "destinationUA", "amount": 0.0001}]' 1 null 'AllowRevealedAmounts'

source.

To list addresses:

zcash-cli z_listaccounts | jq .[].addresses
1 Like