LayerXcom / zero-chain

A privacy-preserving blockchain on Substrate
https://layerxcom.github.io/zerochain-book/
GNU General Public License v3.0
260 stars 42 forks source link

Add transfer_from function to encrypted_balances module #133

Open osuketh opened 5 years ago

osuketh commented 5 years ago

depending: #134

Add transfer_from and approve function like erc20 in encrypted_balances module.

When you call approve function, you just prove the allowed amount is not over his balance like usual proving in transfer . When you call transfer_from function, you need to prove the transferred_amount is not over allowed value instead of balance value.

The caller of transfer_from function will need the allowed user's proof generation key because the caller will decrease the allowed user's balance.