How can we lock ETH in user wallet without escrow contract?

by Pobosa A   Last Updated June 30, 2020 03:28 AM

I know the logic of using an escrow contract in which 2 or more users send their wagered ETH to a smart contract acting as escrow proxy, and then after some decision contract executes we release the funds according to that decision logic.

But what I want to know is if there's any way of not transferring any ETH to the escrow contract, but to actually lock the particular amount directly inside the user's wallet? Let's say user A bids 1 ETH so then the smart contract gains access to their wallet only over said amount and locks it without any transfer of the bid amount.

For example, user A could execute this smart contract by sending a tremendously small amount of WEI to it only to send a message stating the bid amount. Then the smart contract gains access to lock the bid amount from the user's message, directly inside the user's wallet. Is this possible?



Answers 1


No, I don't know how you imagined this, but as long as a user has

  • the private key
  • the ETH still on the account

Nothing can stop him from spending his ETH. So whatever you do, locking ETH can only happen if ETH is transferred, be it to an escrow contract or maybe an off-chain multisig EOA.

Markus - soliditydeveloper.com
Markus - soliditydeveloper.com
June 30, 2020 03:10 AM

Related Questions


I don´t know where a have sent my ethers

Updated June 25, 2017 18:28 PM


First Time Ethereum Wallet User Setup Questions

Updated August 20, 2018 21:28 PM

ETH stuck in MIST (MAC)

Updated April 05, 2018 13:28 PM

How to create a own ethereum wallet

Updated March 30, 2018 11:28 AM