Comment on page
📚
Tutorial
ZKSAFE is an open source, free, protocol-level security product that uses on-chain password + private key multiple signing to protect assets:
- Private key is hacked, password is safe, and your assets are safe
- Password is cracked, private key is safe, and your assets are safe
- Password is cracked, private key is hacked, your assets are not safe
You need to install the ZKSAFE Dapp and MetaMask Dapp, one for the password and the other for the private key
There are three core functions:
- 1.Set password
- 2.Deposit/withdraw tokens
- 3.Social Recovery
ZKSAFE is protocol level products with no backend, no private key hosting, and no administrator
ZKSAFE is a security partner of your wallet and your personal bank. You can save your exchanges in Wallet, large funds in ZKSAFE, and transfer them from ZKSAFE to wallet because safety first
In one word: with ZKSAFE, even if the private key is stolen, the asset remains safe
Open Dapp https://app.zksafe.pro/
- Click on
Download
button to download ZKSAFE Extension in google chrome APP store,Connected
will replace theDownload
button after connecting ZKSAFE Dapp - Click on
Connect Wallet
to connect MetaMask

New users will need to Activate safebox first, click the
Activate
button, and the confirm
button when MetaMask confirmation box popped up, to deploy your proprietary Safebox smart contracts. And then Safebox Address
will appear, which is the deployed contract address by ZKSAFE, You can transfer Token and NFT to this address, only you can transfer them out

You must have on-chain password to withdraw the asset. Click the
SET
button and create your on-chain password in the ZKSAFE Extension pop-up. Wait a few seconds (depending on your computer performance), then click the Confirm
button in the MetaMask confirmation box that popped up


Owner Address
is your wallet address and you can transfer out your safebox assets from this address after depoyed on-chainOne wallet can only create one safebox, and vice versaThe on-chain password s not the safebox’s password, but the wallet's. The safebox can be transferred to another wallet through social recovery, to transfer all the assets in the safebox (see Social Recovery for details)
You can transfer assets between the safebox and wallet after safebox is active and password is set
Click the
green arrow
button, enter the tokens amount
in the pop-up box, click Confirm
button after MetaMask confirmation box popped up, then waiting for on-chain processYou can also transfer your tokens to your
Safebox Address
from another wallet

Click the
orange arrow
button, enter the token amount
in the pop-up box, click Confirm
button, then enter the password
when ZKSAFE confirmation box popped up, click Confirm
after MetaMask confirmation box popped up wait for on chain dataDue to security restrictions, you cannot transfer your assets to any address but only
Owner address
, to avoid wrong operations

ZKSAFE supports the transfer of NFT(ERC721)besides tokens (ERC20), other asset types (such as ERC1155) are not supported for now
If you forget the password or private key, you can transfer ownership of the safebox to your other new wallet, so you can use the new wallet's on-chain password + private key to withdraw the assets


There are 2 ways for transferring the ownership of the safebox:
- 1.Set multi-signing wallet ahead, which can be your cold wallet or your friend’s wallet, to initiate multi-signing
- 2.Use your on-chain password and your private key
The original wallet will be invalid after your transferring the ownership of the safebox to new wallet
Reminding:ZK-SNARK is still need time for testing, and we could exclude the possibility of assets loss caused by password issues, so it’s strongly suggested that each user can set the multi-signing
Last modified 1yr ago