Subject: [bitcoin-dev] Fwd: Wallet Lock, Unlock BIP idea

From: Scott Morgan <[email-masked]>
Date: Wed, 13 Jan 2016 17:47:50 -0600

Hi All,

   Here is a suggestion which is similar to bip-0065, but slightly
different.
In a nutshell I under stand bip-0065 to do this;
Create a transaction adding a lock time, that the recipient user must wait
before they can spend the coins.

My proposal is to do this;
Create an entry in the blocks to lock entire wallet addresses indefinitely,
with a specified unlock period.
Later on create / modify an entry in the blocks to acknowledge the wallet
is being unlocked.
Remove the lock on the wallet after the unlock period has transpired.

  I think it is technically feasible since many wallet addresses are in
each block at the transaction level.  However, it would have huge
implications to the entire Bitcion ecosystem, so it would probably need a
start date at least a year in the future after it was developed.

bip-0065 would not allow the following;
  This would allow users holding coins for long periods to monitor the
blockchain to see if someone else is unlocking their wallets (which may
have been stolen/copied etc), giving them some time to react to a
intrusion.  Perhaps there should also be a re-lock (during unlock) feature.

My original message is attached.

Cheers,
Scott

---------- Forwarded message ----------
From: Scott Morgan <[email-masked]>
Date: Tue, Jan 12, 2016 at 3:35 PM
Subject: Wallet Lock, Unlock BIP idea
To: [email-masked]

Hi All,

   It seems to me that one of the large issues with bitcoin is that they
can be stolen like cash.   This issue also culminates with the fact that
most miners probably need to hold their coins for some time to be
profitable due to the large interest in mining.
   I think it may be possible to reduce some of this theft by adding a BIP
to lock and unlock wallets.  Here is the basic idea (probably with some
holes);

   1) Users could 'lock' their wallet specifying a unlock period (i.e. 15
days)
       The information that a particular wallet is locked would get added
to the blocks and confirmed like other transactions.
    2) During transaction creation and mining (to be sure a locked wallet
isn't drained) the top blocks would be checked to see if the wallet is
locked.  Locked wallet transactions would not be confirmed.
    3)  Users would eventually 'unlock' their wallet.
        This would put a unlocking as of date time in the blocks to specify
a wallet is unlocking.  Eventually the wallet would not have any lock or
unlocking entries in the blocks.
    4) The users would wait the unlock period (i.e. 15 days)
    5) The Users could then spend their coins.

   This would also have some other consequences on the bitcoin system,
since anyone could check the transactions to locked wallets to see how many
BTC are being held, or are being unlocked soon.   This could effect the
price of BTC in fiat as supply would change similar to the way mining
changes it.  Also it will slow transaction creation a little and mining a
fair amount.
   Also locking a wallet might incur a fee.

  What are your thoughts, does this idea qualify for a BIP?
  If so, I would appreciate it if someone takes it and runs with it.

Cheers,
Scott

PS A bit about me, I am a Privacy and Java evangelist, so I will not be
doing any work on the main bitcoin core.  I have been doing a little mining
to attempt to help fund my companies (Adligo Inc) open source Java projects
Tests4j and Fabricate and hopefully in the future Taxi, Sanctum and
Intelligence4j.

Donations are always welcome;

http://www.plumfund.com/crowdfunding/adligoorg