Bitcoin Forum

Bitcoin => Bitcoin Discussion => Topic started by: BlindMayorBitcorn on June 27, 2015, 05:58:02 AM



Title: OP_HODL
Post by: BlindMayorBitcorn on June 27, 2015, 05:58:02 AM
I'd like to start a thread about this. So sue me. :-X

https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki


Abstract

This BIP describes a new opcode (OP_CHECKLOCKTIMEVERIFY) for the Bitcoin scripting system that allows a transaction output to be made unspendable until some point in the future.


Freezing Funds

In addition to using cold storage, hardware wallets, and P2SH multisig outputs to control funds, now funds can be frozen in UTXOs directly on the blockchain. With the following scriptPubKey, nobody will be able to spend the encumbered output until the provided expiry time. This ability to freeze funds reliably may be useful in scenarios where reducing duress or confiscation risk is desired.




Title: Re: BIP 0065
Post by: gjhiggins on June 27, 2015, 10:16:43 AM
^Has anyone here done this yet? Or know of anyone who has? And why and how?

supcoin - https://github.com/supcoin/supcoin/commit/81e19c1b93da202479dfcb9eb84d7fd89c9db599

viacoin - https://github.com/viacoin/viacoin/pull/23

ziftrcoin - https://github.com/ZiftrCOIN/ziftrcoin/commit/42c932f50313a59cb1791e186417116fd71516d6

see also https://github.com/ElementsProject/elements/tree/checklocktimeverify

“how” is embodied in the source; I'm not in a position to comment on “why”.


Cheers

Graham


Title: Re: BIP 0065
Post by: NorrisK on June 27, 2015, 12:11:00 PM
U would like to have some sort of safeguard key to unfreeze my funds.. Imagine locking the coins for 100 years instead of 10 years... :p


Title: Re: BIP 0065
Post by: RustyNomad on June 27, 2015, 01:24:02 PM
U would like to have some sort of safeguard key to unfreeze my funds.. Imagine locking the coins for 100 years instead of 10 years... :p

Thought the same thing. Have not read any of the technical details yet so not sure whether such an option is available or not. If not then this can be a very risky thing to do. Not just for fat finger problems like you describe but also if things change i.e. you might want to lock in some coins for your kids but things can change over time resulting in you having to unlock said coins.


Title: Re: BIP 0065
Post by: BillyBobZorton on June 27, 2015, 04:32:20 PM
U would like to have some sort of safeguard key to unfreeze my funds.. Imagine locking the coins for 100 years instead of 10 years... :p

Thought the same thing. Have not read any of the technical details yet so not sure whether such an option is available or not. If not then this can be a very risky thing to do. Not just for fat finger problems like you describe but also if things change i.e. you might want to lock in some coins for your kids but things can change over time resulting in you having to unlock said coins.

I think a good ol password is better. With the password you can take the decision to spend them or not. Even with the benefit of forcing you to hold long term so you can become rich, i still don't like the idea of not having the option to hold with my own will. I don't like this feeling of "being forced to hold" so to speak.


Title: Re: BIP 0065
Post by: Amph on June 27, 2015, 04:53:06 PM
U would like to have some sort of safeguard key to unfreeze my funds.. Imagine locking the coins for 100 years instead of 10 years... :p

it could be better if it was time based and you just need your private key that are holding the funds and nothing else

let's say that you want your fund to be available in one year at most, because you have a desease that will kill you in a short time


Title: Re: BIP 0065
Post by: unamis76 on June 27, 2015, 05:06:06 PM
U would like to have some sort of safeguard key to unfreeze my funds.. Imagine locking the coins for 100 years instead of 10 years... :p

Imagine sending 50BTC with a 0.001BTC fee, and you end up sending 0.001BTC and a 50BTC fee... ;)

I don't know if it is possible to have a safeguard, but something like that would invalidate/wouldn't be more secure than a password in what concerns fund security, theft could still occur, and the fear of having funds confiscated would still be present.

Imagine you're taking a one month trip, and you want to make sure nobody touches your funds... If the safeguard key was found, funds could be spent anyways.


Title: Re: BIP 0065
Post by: Muhammed Zakir on June 28, 2015, 07:52:28 AM
I don't even know how it's done. Are there special wallets to pull this kind of trick off?

You can use http://coinb.in/#newTransaction.

GreenAddress online wallet use this nLockTime feature to secure users' funds.


Title: Re: BIP 0065
Post by: RealBitcoin on June 28, 2015, 09:37:50 AM
I don't even know how it's done. Are there special wallets to pull this kind of trick off?

You can use http://coinb.in/#newTransaction.

GreenAddress online wallet use this nLockTime feature to secure users' funds.

Yea but thats a poor version of it, With that you can only make it so that the TX is stored on that website and they will broadcast it later, but the TX is already made.

So perhaps you can delay it, but if you send another TX before that, it will be invalid after. Because you need all outputs/inputs to make a new TX.


Title: Re: BIP 0065
Post by: Muhammed Zakir on June 28, 2015, 10:22:56 AM
I don't even know how it's done. Are there special wallets to pull this kind of trick off?

You can use http://coinb.in/#newTransaction.

GreenAddress online wallet use this nLockTime feature to secure users' funds.

Thank you.

Sorry. Both GreenAddress and Coinb.in uses nLockTime not OP_CHECKLOCKTIMEVERIFY.

I don't even know how it's done. Are there special wallets to pull this kind of trick off?

You can use http://coinb.in/#newTransaction.

GreenAddress online wallet use this nLockTime feature to secure users' funds.

Yea but thats a poor version of it, With that you can only make it so that the TX is stored on that website and they will broadcast it later, but the TX is already made.

You are wrong. You can get the time locked transaction(s) both to your email or from the transactions details and you can broadcast it yourself if you want. For making broadcasting easy, they have made a website -- http://greenaddress.github.io/gentle/. You can download that website from Github so that you can redeem even when the website is down. https://github.com/greenaddress/gentle

So perhaps you can delay it, but if you send another TX before that, it will be invalid after. Because you need all outputs/inputs to make a new TX.

No. OP_CHECKLOCKTIMEVERIFY will make other transaction(s) which spend the same input invalid.

P.S. If you are wondering the difference between nLockTime and OP_CHECKLOCKTIMEVERIFY, see

-snip-
BIP65's OP_CHECKLOCKTIMEVERIFY is about a script instruction to create a transaction whose outputs are unspendable until some particular block (or time).  nLockTime is a transaction that cannot be put into the block chain in the first place until some particular block (or time).  Both of these are of the "not yet" variety rather than the "not any more" variety.
 -snip-


Title: Re: BIP 0065
Post by: SebastianJu on June 29, 2015, 01:03:11 PM
Wow... so what happens when this OPCODE is implemented and you receive coins you cant spend? I guess not all wallets will be updated to show that.

And what happens when a miner doesnt know this opcode and implements the transaction in a block? Would the block become invalid by the nodes?

Sounds risky and without matching advantage.


Title: Re: BIP 0065
Post by: Muhammed Zakir on June 29, 2015, 01:11:30 PM
Wow... so what happens when this OPCODE is implemented and you receive coins you cant spend?

You won't receive locked coins. ::)

-snip-
And what happens when a miner doesnt know this opcode and implements the transaction in a block? Would the block become invalid by the nodes?
 -snip-

Transaction is invalid, so the block will be invalid.


Title: Re: BIP 0065
Post by: SebastianJu on July 01, 2015, 12:56:56 PM
Wow... so what happens when this OPCODE is implemented and you receive coins you cant spend?

You won't receive locked coins. ::)

Then when is that opcode implemented? I think opcodes can only be implemented in a transaction. Which means you actually have to send a transaction. Or is there some failsafe that only allows to send to the same address? Would still sound exploitable.

-snip-
And what happens when a miner doesnt know this opcode and implements the transaction in a block? Would the block become invalid by the nodes?
 -snip-

Transaction is invalid, so the block will be invalid.

Sounds like a risk to miners. I believe there are not few miners that dont follow the latest updates so close that it could not be a problem.


Title: Re: BIP 0065
Post by: Muhammed Zakir on July 01, 2015, 02:42:42 PM
Wow... so what happens when this OPCODE is implemented and you receive coins you cant spend?

You won't receive locked coins. ::)

Then when is that opcode implemented? I think opcodes can only be implemented in a transaction. Which means you actually have to send a transaction. Or is there some failsafe that only allows to send to the same address? Would still sound exploitable.

Opcodes are added in transaction script (https://en.bitcoin.it/wiki/Script).  Script decides how the next person wanting to spend the Bitcoins being transferred can gain access to them.*

I think I misunderstood your question. I thought you asked what if a user receives locked Bitcoin. No person would receive locked coins. To answer your question: the coins will be locked until preset time has reached. After that, the person will be able to spend those coins.

* Line from Bitcoin wiki.

-snip-
And what happens when a miner doesnt know this opcode and implements the transaction in a block? Would the block become invalid by the nodes?
 -snip-

Transaction is invalid, so the block will be invalid.

Sounds like a risk to miners. I believe there are not few miners that dont follow the latest updates so close that it could not be a problem.

Majority of miners need to use version that supports this opcode for acceptance and enforcement. If majority uses new version, obviously, others will (eventually) update their clients for incentive. CMIIW.

Useful links:

 • http://bitcoin.stackexchange.com/questions/30817/what-is-a-soft-fork
 • https://bitcoin.org/en/developer-guide#term-soft-fork
 • https://en.bitcoin.it/wiki/Softfork
 • https://en.bitcoin.it/wiki/Script
 • https://bitcoin.org/en/developer-guide#consensus-rule-changes
 • https://bitcointalk.org/index.php?topic=945977.0


Title: Re: BIP 0065
Post by: SebastianJu on July 01, 2015, 06:27:19 PM
Thanks for your help. You have a habit in this. ;)

So you say its really part of a transaction and can bind the coins that might be owned by a seller then.

What i would like to know, cant this be used to scam someone? Its not like a chargeback would be possible. But it sounds dangerous. I mean i surely dont want to receive coins that i find out, cant spend till 2017 or so.

Wow... so what happens when this OPCODE is implemented and you receive coins you cant spend?

You won't receive locked coins. ::)

Then when is that opcode implemented? I think opcodes can only be implemented in a transaction. Which means you actually have to send a transaction. Or is there some failsafe that only allows to send to the same address? Would still sound exploitable.

Opcodes are added in transaction script (https://en.bitcoin.it/wiki/Script).  Script decides how the next person wanting to spend the Bitcoins being transferred can gain access to them.*

I think I misunderstood your question. I thought you asked what if a user receives locked Bitcoin. No person would receive locked coins. To answer your question: the coins will be locked until preset time has reached. After that, the person will be able to spend those coins.

* Line from Bitcoin wiki.

-snip-
And what happens when a miner doesnt know this opcode and implements the transaction in a block? Would the block become invalid by the nodes?
 -snip-

Transaction is invalid, so the block will be invalid.

Sounds like a risk to miners. I believe there are not few miners that dont follow the latest updates so close that it could not be a problem.

Majority of miners need to use version that supports this opcode for acceptance and enforcement. If majority uses new version, obviously, others will (eventually) update their clients for incentive. CMIIW.

Useful links:

 • http://bitcoin.stackexchange.com/questions/30817/what-is-a-soft-fork
 • https://bitcoin.org/en/developer-guide#term-soft-fork
 • https://en.bitcoin.it/wiki/Softfork
 • https://en.bitcoin.it/wiki/Script
 • https://bitcoin.org/en/developer-guide#consensus-rule-changes
 • https://bitcointalk.org/index.php?topic=945977.0


Title: Re: BIP 0065
Post by: jl2012 on July 02, 2015, 06:18:07 AM
Thanks for your help. You have a habit in this. ;)

So you say its really part of a transaction and can bind the coins that might be owned by a seller then.

What i would like to know, cant this be used to scam someone? Its not like a chargeback would be possible. But it sounds dangerous. I mean i surely dont want to receive coins that i find out, cant spend till 2017 or so.


You should have told the payer not to do so. If the payer insisted to do so without your consent, he breached the contract and you (as merchant) should not deliver the product.

With P2SH, a CLTV address will look like an ordinary bitcoin address (starting with 3). Therefore, in your example, the payer actually deliberately sent the bitcoin to a different address.


Title: Re: BIP 0065
Post by: jl2012 on July 02, 2015, 06:23:03 AM
U would like to have some sort of safeguard key to unfreeze my funds.. Imagine locking the coins for 100 years instead of 10 years... :p

Imagine sending 50BTC with a 0.001BTC fee, and you end up sending 0.001BTC and a 50BTC fee... ;)

I don't know if it is possible to have a safeguard, but something like that would invalidate/wouldn't be more secure than a password in what concerns fund security, theft could still occur, and the fear of having funds confiscated would still be present.

Imagine you're taking a one month trip, and you want to make sure nobody touches your funds... If the safeguard key was found, funds could be spent anyways.

Fat-finger trading is not uncommon even in traditional stock market and cost millions or billions dollar of loss. However, safeguarding should be done in UI (wallet) level, not in the underlying protocol.


Title: Re: BIP 0065
Post by: SebastianJu on July 02, 2015, 09:55:45 AM
Thanks for your help. You have a habit in this. ;)

So you say its really part of a transaction and can bind the coins that might be owned by a seller then.

What i would like to know, cant this be used to scam someone? Its not like a chargeback would be possible. But it sounds dangerous. I mean i surely dont want to receive coins that i find out, cant spend till 2017 or so.


You should have told the payer not to do so. If the payer insisted to do so without your consent, he breached the contract and you (as merchant) should not deliver the product.

With P2SH, a CLTV address will look like an ordinary bitcoin address (starting with 3). Therefore, in your example, the payer actually deliberately sent the bitcoin to a different address.

Normally the addresses with 3 are multisig addresses. Do you say that the opcode is solving itself at one point in time because the time is somehow delivering the second key to spend the address? Then locking coins with the opcode only works when sending them to special bitcoin addresses that were created that way? A merchant does not have to fear anything then?


Title: Re: BIP 0065
Post by: jl2012 on July 02, 2015, 10:43:18 AM
Thanks for your help. You have a habit in this. ;)

So you say its really part of a transaction and can bind the coins that might be owned by a seller then.

What i would like to know, cant this be used to scam someone? Its not like a chargeback would be possible. But it sounds dangerous. I mean i surely dont want to receive coins that i find out, cant spend till 2017 or so.


You should have told the payer not to do so. If the payer insisted to do so without your consent, he breached the contract and you (as merchant) should not deliver the product.

With P2SH, a CLTV address will look like an ordinary bitcoin address (starting with 3). Therefore, in your example, the payer actually deliberately sent the bitcoin to a different address.

Normally the addresses with 3 are multisig addresses. Do you say that the opcode is solving itself at one point in time because the time is somehow delivering the second key to spend the address? Then locking coins with the opcode only works when sending them to special bitcoin addresses that were created that way? A merchant does not have to fear anything then?

There is no restriction with the content of those "3" addresses. Multisig is the most common use case but it's simply common and we can do many fancy things with "3" addresses. CLTV is an example.

If the payer tries to manipulate the CLTV settings, it will become a different "3" address so the merchant is not mandated to honor the payment. Consider the following conversation:

Quote
Merchant: Please send 1BTC to 3xxxxxx and I will deliver the product
Customer: I have sent you 1BTC
M: No, I don't see any bitcoin in 3xxxxxx
C: Oh, I sent it to 3yyyyyy. This is also your address, but with different CLTV parameter
M: I'm sorry but 3yyyyyy is not my address. The only address I told you was 3xxxxxx. I'm not going to deliver the product until I see 1BTC in 3xxxxxx

So yes, the merchant has nothing to fear.


Title: Re: BIP 0065
Post by: SebastianJu on July 02, 2015, 11:53:35 AM
*lol* Ok. Then i think i understood it correctly and there is no risk involved at all. The usecase is only for someone who owns the private key of the receiving address. No possible risk involved.

Thanks for explaining!

Thanks for your help. You have a habit in this. ;)

So you say its really part of a transaction and can bind the coins that might be owned by a seller then.

What i would like to know, cant this be used to scam someone? Its not like a chargeback would be possible. But it sounds dangerous. I mean i surely dont want to receive coins that i find out, cant spend till 2017 or so.


You should have told the payer not to do so. If the payer insisted to do so without your consent, he breached the contract and you (as merchant) should not deliver the product.

With P2SH, a CLTV address will look like an ordinary bitcoin address (starting with 3). Therefore, in your example, the payer actually deliberately sent the bitcoin to a different address.

Normally the addresses with 3 are multisig addresses. Do you say that the opcode is solving itself at one point in time because the time is somehow delivering the second key to spend the address? Then locking coins with the opcode only works when sending them to special bitcoin addresses that were created that way? A merchant does not have to fear anything then?

There is no restriction with the content those "3" addresses. Multisig is the most common use case but it's simply common and we can do many fancy things with "3" addresses. CLTV is an example.

If the payer tries to manipulate the CLTV settings, it will become a different "3" address so the merchant is not mandated to honor the payment. Consider the following conversation:

Quote
Merchant: Please send 1BTC to 3xxxxxx and I will deliver the product
Customer: I have sent you 1BTC
M: No, I don't see any bitcoin in 3xxxxxx
C: Oh, I sent it to 3yyyyyy. This is also your address, but with different CLTV parameter
M: I'm sorry but 3yyyyyy is not my address. The only address I told you was 3xxxxxx. I'm not going to deliver the product until I see 1BTC in 3xxxxxx

So yes, the merchant has nothing to fear.


Title: Re: BIP 0065
Post by: jl2012 on July 03, 2015, 03:52:20 AM
I'm still curious to know how many people have used this and to what purpose.  It could make for some interesting stories.

No one can use this with bitcoin right now, until 95% of miners support it.

An example from https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki#Escrow

If Alice and Bob jointly operate a business they may want to ensure that all funds are kept in 2-of-2 multisig transaction outputs that require the co-operation of both parties to spend. However, they recognise that in exceptional circumstances such as either party getting "hit by a bus" they need a backup plan to retrieve the funds. So they appoint their lawyer, Lenny, to act as a third-party.

With a standard 2-of-3 CHECKMULTISIG at any time Lenny could conspire with either Alice or Bob to steal the funds illegitimately. Equally Lenny may prefer not to have immediate access to the funds to discourage bad actors from attempting to get the secret keys from him by force.

With CLTV, they may set the following rules for spending the funds:

  • At any time the funds can be spent by Alice's and Bob's signature
  • 3 months (or other specified time) later, the funds can be spent by Lenny's signature and one of Alice's or Bob's signature

If Alice is hit by a bus, Bob can get the money back 3 months later with Lenny's help.



Title: Re: BIP 0065
Post by: jl2012 on July 03, 2015, 04:25:51 AM
^Has anyone here done this yet? Or know of anyone who has? And why and how?

supcoin - https://github.com/supcoin/supcoin/commit/81e19c1b93da202479dfcb9eb84d7fd89c9db599

viacoin - https://github.com/viacoin/viacoin/pull/23

ziftrcoin - https://github.com/ZiftrCOIN/ziftrcoin/commit/42c932f50313a59cb1791e186417116fd71516d6

see also https://github.com/ElementsProject/elements/tree/checklocktimeverify

“how” is embodied in the source; I'm not in a position to comment on “why”.


Cheers

Graham


I see Elements Project on that list. Is this a sidechain in the works?

I'm still curious to know how many people have used this and to what purpose.  It could make for some interesting stories.

No one can use this with bitcoin right now, until 95% of miners support it.

-snip-


Is it still only in draft stage, or complete?

It is almost ready to start the miner voting, but it will still take a few months until we have enough miner support


Title: Re: BIP 0065
Post by: goosoodude on July 03, 2015, 11:37:33 AM
I'm still curious to know how many people have used this and to what purpose.  It could make for some interesting stories.

No one can use this with bitcoin right now, until 95% of miners support it.

An example from https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki#Escrow

If Alice and Bob jointly operate a business they may want to ensure that all funds are kept in 2-of-2 multisig transaction outputs that require the co-operation of both parties to spend. However, they recognise that in exceptional circumstances such as either party getting "hit by a bus" they need a backup plan to retrieve the funds. So they appoint their lawyer, Lenny, to act as a third-party.

With a standard 2-of-3 CHECKMULTISIG at any time Lenny could conspire with either Alice or Bob to steal the funds illegitimately. Equally Lenny may prefer not to have immediate access to the funds to discourage bad actors from attempting to get the secret keys from him by force.

With CLTV, they may set the following rules for spending the funds:

  • At any time the funds can be spent by Alice's and Bob's signature
  • 3 months (or other specified time) later, the funds can be spent by Lenny's signature and one of Alice's or Bob's signature

If Alice is hit by a bus, Bob can get the money back 3 months later with Lenny's help.

Nice! I didn't know bitcoin can do something like that. Things like that should be propagated more. Only when bitcoiners know about these things they can solve problems and show that bitcoin is attractive.


Title: Re: BIP 0065
Post by: HeadsOrTails on July 07, 2015, 05:34:53 AM
Does anyone know if there's testnet functionality to try this out? Or even just a single TxID on testnet I can refer to (EDIT: or if not Bitcoin testnet, what about an altcoin?)


Title: Re: BIP 0065
Post by: belcher on July 07, 2015, 12:00:06 PM
Does anyone know if there's testnet functionality to try this out? Or even just a single TxID on testnet I can refer to (EDIT: or if not Bitcoin testnet, what about an altcoin?)

It should be possible by running the latest bitcoin core from github under regtest.


Title: Re: BIP 0065
Post by: gjhiggins on July 07, 2015, 02:10:14 PM
Does anyone know if there's testnet functionality to try this out ... if not Bitcoin testnet, what about an altcoin?)

https://github.com/viacoin/viacoin/pull/23

https://github.com/ElementsProject/elements/commits/checklocktimeverify


Cheers

Graham


Title: Re: BIP 0065
Post by: BlindMayorBitcorn on November 08, 2015, 04:56:03 PM
CheckLockTimeVerify (CLTV) has been merged into Bitcoin Core.

https://bitcoinmagazine.com/articles/checklocktimeverify-or-how-a-time-lock-patch-will-boost-bitcoin-s-potential-1446658530

Quote
On a final note, it should be mentioned that the CLTV concept is actually not new at all; it has existed in Bitcoin since the early days. With the previous incarnation of the time-locked concept, however, locked transactions were not actually included in the blockchain until a certain point in time. Rather, they were kept by Alice and (more importantly) Bob, to transmit over the Bitcoin network once the time-lock expired.

By actually baking it into the protocol as CLTV does, the payment channel process is better streamlined and more robust. Perhaps most importantly, it disables payment channel failures caused by transaction malleability.


Title: Re: BIP 0065
Post by: gmaxwell on November 08, 2015, 07:29:03 PM
Perhaps would have been more useful to hold off commenting on the merge until the release, which will be in a couple days.


Title: Re: BIP 0065
Post by: gmaxwell on November 08, 2015, 07:57:05 PM
The merge is news, the release will be news. It's a darned interesting feature!
Old news, and there is nothing for people to do about it yet. Making noise about it now will only slow deployment, because you'll expend people's attention when there is no action for them to take. :)


Title: Re: BIP 0065
Post by: TooDumbForBitcoin on November 09, 2015, 11:40:40 AM
The merge is news, the release will be news. It's a darned interesting feature!
Old news, and there is nothing for people to do about it yet. Making noise about it now will only slow deployment, because you'll expend people's attention when there is no action for them to take. :)

Does "expending people's attention" amount to "violence"?


Title: Re: BIP 0065
Post by: BlindMayorBitcorn on November 13, 2015, 05:00:06 PM
It's official. It's released. Huzzah!

https://np.reddit.com/r/Bitcoin/comments/3snpg9/bitcoin_core_version_0112_released_bringing_the/

https://bitcoin.org/en/release/v0.11.2


Title: Re: BIP 0065
Post by: StarsSkySolutions on November 15, 2015, 12:55:42 PM
This is a nice feature!
good work!


Title: Re: BIP 0065
Post by: BlindMayorBitcorn on November 15, 2015, 09:12:48 PM
Deployment Status:

https://www.reddit.com/r/Bitcoin/comments/3sx4wd/bip65_deployment_status_at_26_remind_your_mining/


Title: Re: BIP 0065
Post by: -ck on December 08, 2015, 12:10:23 PM
It's now been activated at >75% penetration so now for someone to send the first transaction using it...


Title: Re: BIP 0065
Post by: DooMAD on December 08, 2015, 12:40:37 PM
It's now been activated at >75% penetration so now for someone to send the first transaction using it...

I'm eagerly awaiting the use of this for the first cross-blockchain transaction between bitcoin and an altcoin.  Should be pretty momentous if it sets the standard for decentralised trade without using exchanges. 


Title: Re: BIP 0065
Post by: cr1776 on December 08, 2015, 03:12:15 PM
It's now been activated at >75% penetration so now for someone to send the first transaction using it...

I'm eagerly awaiting the use of this for the first cross-blockchain transaction between bitcoin and an altcoin.  Should be pretty momentous if it sets the standard for decentralised trade without using exchanges. 

This is a good step forward.  With this and a few other BIPs in progress, the number of use cases will increase dramatically. 


Title: Re: BIP 0065
Post by: amaclin on February 10, 2016, 05:39:09 AM
This is a good step forward.
Why are you so sure? Nobody on network uses this feature today. No-bo-dy.


Title: OP_HODL
Post by: BlindMayorBitcorn on February 10, 2016, 09:06:15 AM
The merge is news, the release will be news. It's a darned interesting feature!
Old news, and there is nothing for people to do about it yet. Making noise about it now will only slow deployment, because you'll expend people's attention when there is no action for them to take. :)

Does "expending people's attention" amount to "violence"?

Here's what's funny about all this. I started this thread in Beginners and Help; then a moderator moved it to Bitcoin Discussion; then another moderator moved it to Technical Development; then Gmax told me to stop talking about it.  :-X


This is a good step forward.
Why are you so sure? Nobody on network uses this feature today. No-bo-dy.

I think it's a necessary feature for future payment channels?


Title: Re: OP_HODL
Post by: SebastianJu on February 10, 2016, 10:50:30 AM
I think it's a necessary feature for future payment channels?

I think it is. As far as i read it is one of the steps needed for every deposit in a payment channel. Just in case the other party vanishes.

Though it's interesting to hear that it is not ready yet. I guess that means that the lightning network can't come online as long as it isn't available.

Maybe the devs work on segwit, which in fact would be the more important step for now.


Title: Re: BIP 0065
Post by: alani123 on February 10, 2016, 11:05:18 PM
This is a good step forward.
Why are you so sure? Nobody on network uses this feature today. No-bo-dy.

How would you know? It's a new feature but it has some use cases. I think it's good to have it around for whoever feels like there's need to.


Title: Re: BIP 0065
Post by: amaclin on February 11, 2016, 03:58:23 AM
This is a good step forward.
Why are you so sure? Nobody on network uses this feature today. No-bo-dy.

How would you know? It's a new feature but it has some use cases. I think it's good to have it around for whoever feels like there's need to.
Isn't is difficult to count the number of OP_CLTV operations in blocks for the day or for the week?


Title: Re: BIP 0065
Post by: belcher on February 11, 2016, 12:46:02 PM
This is a good step forward.
Why are you so sure? Nobody on network uses this feature today. No-bo-dy.

How would you know? It's a new feature but it has some use cases. I think it's good to have it around for whoever feels like there's need to.
Isn't is difficult to count the number of OP_CLTV operations in blocks for the day or for the week?

The public does not know whether the redeemScript involves OP_CLTV until they're redeemed. If somebody locked up funds for 10 years you wont know until 2026 when they spend them.

more than 10% (http://p2sh.info/dashboard/db/p2sh-statistics) of all bitcoins are held in p2sh addresses, so the upper bound of OP_CLTV usage is quite large.


Title: Re: BIP 0065
Post by: amaclin on February 11, 2016, 06:46:25 PM
The public does not know whether the redeemScript involves OP_CLTV until they're redeemed. If somebody locked up funds for 10 years you wont know until 2026 when they spend them.
Excelent.

Quote
more than 10% (http://p2sh.info/dashboard/db/p2sh-statistics) of all bitcoins are held in p2sh addresses, so the upper bound of OP_CLTV usage is quite large.
redeemScript is known for most of them. Yes, there are addresses without spending transactions. But it is possible to hodl funds on such address till 2026 without OP_CLTV - just not spend funds :)


Title: Re: OP_HODL
Post by: BlindMayorBitcorn on February 13, 2016, 12:20:44 PM
The Darkleaks protocol has three major shortcomings/vulnerabilities that appear to stem from fundamental functional limitations of Bitcoin’s scripting language when constructing contracts without direct communication between parties. That these limitations are fundamental is evidenced by calls for new, time-dependent opcodes. One example is CHECKLOCKTIMEVERIFY; apart from its many legitimate applications, proponents note that it can facilitate secret leakage.*


Fixed. Thanks Core. ;)




*Source: Using Smart Contracts for Crime
Ari Juels
Jacobs Institute, Cornell Tech
juels@cornell.edu
et al.


Title: Re: OP_HODL
Post by: JayJuanGee on February 14, 2016, 09:00:27 PM
I'm not sure if I understand much of the technical gobbledy gook of this thread;however, I do find this to be a very interesting concept that could potentially turn western common law practices on it's head in a variety of ways.

Well, yeah, bitcoin already does that; however, in this thread we seem to be referring to the possibility of creating a contract that initially may be within the control of the creator(s), but could be written in such a way that it falls out of the control of the creator(s), and thereby becomes executable upon the meeting of various conditions at some point in the future.

If I understand correctly, in western common law, no contract controlling the disposition of property (or assets) (frequently applicable in the area of wills and trusts) can be valid if it violates the rule against perpetuities.

https://en.wikipedia.org/wiki/Rule_against_perpetuities


In summary, a contract needs to be created and under the control of human beings and no longer than a measuring life plus 21 years in order to free up the title.. blah blah blah.  The idea is that there is a societal value that property and assets remain controllable by living persons (rather than potentially completely controlled by someone who has been dead more than a measuring life plus 21 years (which may last 100 or more years).

If contracts are able to be created to tie up such property for longer periods of time, and neither the state nor any person has control of such tied up property, that could lead to very interesting difficulties and changes in the way we view certain kinds of property.. and ability of dead people to control property from their earlier execution of a contract that no longer can be controlled by anyone, including the state.

I do recognize that there are a lot of valid uses, and even that this whole technology could be very innovative and good, if the contracts are written well and people do not realize later that they fucked up the language of the contract and tied up the assets for a longer period than they had originally intended. 

I would only argue that it could be a bad thing in the sense that it does have the potential to tie up property for very long periods of time and beyond any kind of reasonable period that any living people could want, when the contract may have been created by someone who either loses control over it because of death or wrote in a mistaken way that causes the property to be tied up and therefore outside of the control of people (which ultimately, in my view, should be the beneficiaries and able to control actual assets in the real world within reasonable periods of time after the creation of such contracts)


Title: Re: OP_HODL
Post by: BlindMayorBitcorn on February 14, 2016, 09:13:58 PM
Welcome to the thread, JJG! It'll be a brave new world, with such smart contracts (https://bitcointalk.org/index.php?topic=1362964.msg13884001;topicseen#msg13884001) in it. That's for sure. I'm excited. :)

Suggested reading: Cryptocurrencies, Smart Contracts, and Artificial Intelligence (https://steveomohundro.com/2014/10/22/cryptocurrencies-smart-contracts-and-artificial-intelligence/)

The legal codes of many countries have become quite complex. Several AI projects are trying to create formal digital versions of legal codes (CodeX, 2014). These systems will eventually be used to resolve legal issues and perhaps even act as arbitrators or judges. Sophisticated AI systems with knowledge of the legal system will be used to help craft and simplify new legislation.



 :o