Because of the decentralized nature of Blockchains, all transactions on Binance Smart Chain can be transparently viewed by using a blockchain explorer such as BscScan.
For example; when Alice sends Bob 1 BNB, a transaction ID is generated by Binance Smart Chain. This transaction ID has all the information about this transfer; publicly exposing the wallet addresses of Alice and Bob, 1 BNB amount being sent, time of transfer, etc.
Morphose breaks the link between source and destination addresses on Blockchain. She "mixes" the transactions by letting the users deposit and withdraw only in denominations such as 0.1, 1, 10 or 100 BNB and with new wallets every time.
For example; Alice and Bob deposit Morphose 1 BNB. Bob withdraws his 1 BNB with a new wallet. When we look at the transactions on BscScan, we can't prove depositor and withdrawer is actually Bob. Because the withdrawer may well be Alice with a new wallet. This is how Morphose “mixes” the transactions to break the link between source and destination addresses.
Let’s go over a step-by-step example of how Alice can use Morphose to transact privately on Binance Smart Chain.
Alice connects her Metamask Wallet to Morphose app on app.morphose.cash
Metamask will ask for your confirmation before connecting to Morphose. If you miss it or if it doesn’t, please refresh your page.
Alice clicks “Deposit” tab, and deposits 1 BNB to Morphose.
The deposit gas fee is currently a maximum of 0.0058 BNB (5 gwei). If you are sending your wallet the exact BNB (e.g. from Binance) don't forget to add the gas cost. For example, if you will deposit 1 BNB, you will need 1.0058 in your wallet to deposit (actual usage will be less). This gas cost is adjusted automatically to BSC standard gas cost.
"Denomination" is the fixed amount you deposit. You can select 0.1, 1, 10, 100 BNB to deposit. We recommend you to deposit no more than 10 BNB at once.
"Multiplier" is the multiples of the denomination you can deposit. For example; you can deposit 3 BNB at once, paying the same deposit transaction fee as 1 BNB. However, you will withdraw them one by one (in 1 BNBs) for privacy purposes.
Alice confirms the Metamask (Blockchain) transaction.
Do not refresh the page after you confirm the transaction.
Wait for Metamask transaction to complete after confirming.
In extreme cases such as network errors on Binance Smart Chain itself, you may not receive the note but the deposit may still happen. -Do not- clean your browser history in this case. You can easily recover your note, please refer to FAQ section below.
Morphose gives Alice a secret key (Note) to withdraw her funds.
Morphose is fully decentralized. Note is shown only to the withdrawer and not stored in any server or on Blockchain. Nobody except the withdrawer can know the note. So do not lose this note to withdraw your funds.
Your note is also saved as a text file in your computer, logged to your browser’s console and stored in your browser’s cookie storage to expire in 48 hours.
Tip: You can also use morphose.eth.link on IPFS to connect Morphose. IPFS enables Morphose UI to be decentralized and ownerless. In case the server that runs the UI on app.morphose.cash doesn’t work, IPFS link will always work.
Alice connects to Morphose app with a new wallet
Make sure you are not using the wallet you deposited your funds. Morphose won’t let you withdraw with the wallet you deposited.
Alice enters the note and loads the withdrawal
By default, Morphose will withdraw to the wallet that is connected. You can also send the funds to a destination wallet. In this case, turn on the switch “Withdraw To This Wallet“ and enter the destination address.
Alice receives withdrawal gas fee by pressing “Send Me Gas Fee” button
For every 1 BNB deposited, Morphose gives back 0.0035 BNB to enable withdrawals to an empty wallet and to reduce protocol commission of 1% to ~0.75%.
If you are depositing less than 1 BNB; you won’t receive a gas fee so you won’t be able to withdraw to an empty wallet and you will pay a 1% commission.
Alice checks the privacy checklist
Morphose doesn’t log IP addresses. Using a new wallet to withdraw is enough to keep your privacy. However, it is a good practice to use a different IP than the IP address you deposited your funds. You can use a free Proton VPN for this purpose.
Seeing subsequent deposits or waiting for a time to pass won’t matter since you are using a new wallet to withdraw your funds from a pool of multiple 1 BNBs. These are good practices as IP addresses, and you can still privately withdraw your funds if they are not checked.
Alice presses the "Withdraw" button and confirms the transaction to withdraw her funds
If you are withdrawing multiple denominations such as 2 BNB, you will withdraw 1 BNB and then you will have to click withdraw button again and confirm the transaction to withdraw the second one. This is done for privacy purposes.
Tip 1: You can also watch a video tutorial of how to use Morphose on https://www.youtube.com/watch?v=-Bhn0gX7vsQ
Morphose does not collect any user data, blockchain data, server data, or browser data. Data Morphose generates are stored in your computer as the note file saved and cookie stored in your browser.
By decrypting the "Note" that is only given to the user it is possible to link deposit and withdrawal. Morphose only lets withdrawal to or by an address that is different than the deposit address. Unless you give your Note to someone else, there is no way to fully link deposit and withdrawal through your "public" wallet address. However, your IP address can also be considered public information because it is known by your ISP. So even though withdrawal to or by a new wallet address is enough to break the link, using a VPN to get a new IP while making a withdrawal will improve privacy.
Morphose denomination smart contract takes 1% fee from withdrawals. However, for every 1 BNB deposit, Morphose pays back ~0.25% to the withdrawer as a gas fee to withdraw the funds. So, in total Morphose takes ~0.75% commission for more than 1 BNB deposits, %1 for less than 1 BNB deposits..
Your note is only shown to you once and saved on your computer as a text file and in your browser as a cookie to expire in 2 days. It is not stored anywhere else such as server or Blockchain for your privacy and decentralized nature of Morphose. If you lose your note you won’t be able to withdraw your funds. Also, if you refresh the page after your deposit or if you lose your Internet connection, your Blockchain transaction may succeed but you may not receive the note (since you interrupted the reply from Blockchain). In these cases do not clean the history of your browser. Once you click Deposit button, a part of the note to be generated is saved in your browser’s cookie store as “prenote” which is also private to you as the actual note. Contact Morphose community through email with your “prenote” in this case. A community member may help you to regenerate your note on your client-side according to the status of the Blockchain transaction.
No, Morphose is fully decentralized. That means no one owns her, no one has control over her and no one can stop her service. Her backend code fully lies on Binance Smart Chain and her frontend code lies on IPFS — both ownerless and can't be manipulated. Her smart contracts are immutable, have no admins or owners, and the proofs are based on proven zk-SNARK cryptography. Only the user possessing the Note can link deposit and withdrawal and that note is only shown/saved on the client-side to be fully owned by the user.