You may have heard of OP_CHECKDATASIG because its a proposed change that is slated for the November protocol upgrade for Bitcoin Cash. Technical stuff can be annoying to try to figure out, so I’ll do my best to explain it in the simplest way possible.
Digital signatures are a crucial part of Bitcoin. When you create a transaction, you need to provide a digital signature that’s generated from your private key. The signature is proof you authorized the transaction, or more generally in cryptography, that you signed a message.
In other words, the message is the “what” you’re signing for.
In a normal Bitcoin transaction, the message is essentially composed of the inputs and outputs that make up the transaction; or if you like -- the “from” and “to” addresses of where the Bitcoins are going (this is a simplified explanation).
The actual Bitcoin script that makes up a standard transaction uses an op code called OP_CHECKSIG. This op code helps to ensure that the signature is in fact correct before the bitcoins are allowed to be spent. It prevents others from stealing your coins if they can’t produce a valid signature.
With OP_CHECKDATASIG, almost the same thing happens. The difference is the message itself. Instead of signing for the transaction inputs/outputs, you’re providing a signature for another piece of data that you include in the transaction (technically a piece of data that you “push on the stack”).
One common misunderstanding is that this allows Bitcoin script to make an external call. It does not. The extra data (the message) that is being signed for must be a part of, and included with each transaction that uses this op code.
How is this useful?
Let's say we want to have a decentralized sports betting application and suppose there is a company called Fyookball Sports Oracle (FSO). Alice and Bob can create a peer to peer wager with a Bitcoin script that unlocks bitcoins by either:
Alice Sig + FSO sig on "Philadelphia wins the game"
OR
Bob Sig + FSO sig on "New York wins the game"
So now you know what OP_CHECKDATASIG is all about ,and hopefully that helps you develop a more informed opinion about the upcoming protocol upgrade in November.
If you’re wondering what my personal opinion is about this, I think the risks of adding this to the protocol are little to none. And I think it will help enrich the ecosystem by enabling a specific class of use cases involving oracles.
If you’re looking for more information on this op code, you might want to check out Mengerian’s article here.
 

$9.00
25.0¢

Reviews
10 of 10 reviewers say it's worth paying for

0 of 10 reviewers say it's not worth paying for
Comments
  spent 5.0¢
There's also a misconception that this is specifically about betting: It is not! It can be used for any usecase where the oracle need not know about any details of the transaction between two other persons, or indeed that a transaction is happening at all. All the oracle needs to do is sign statements!
For example:
- A weather station can sign statements about whether it's gonna rain tomorrow. You can have tx to a car rental company that is only payable if it's gonna rain - the transaction does not involve the weather station. - A monitor can sign statements about traffic conditions throughout the city. You can pay for toll roads and route around based on those statements.
These are just crude, off-the-top-of-the-head examples, but the point is CDSV goes whereever it's desirable to not have the oracle sign specifically for the transactions, and instead just provide general information for people/subscribers to grab. It goes far beyond betting, possibilities are endless.
10.0¢
   4wk ago
15.0¢ 10.0¢
  spent 15.0¢
What are the negative implications of this?
0.0¢
   4wk ago
15.0¢
  spent 15.0¢
Thank you Jonald!
0.0¢
   4wk ago
15.0¢
  spent 15.0¢
@-ed-
The negative implications according to Jonald are "little to none"
But it did split the community, I wonder how many actually understood it before picking a side (I still don't understand it)

0.0¢
   4wk ago
15.0¢
  spent 15.0¢
@imkeshav
"little to none" is not an answer... those world don't mean a damn thing... SPECIFICS mate, DEVIL IS IN THE DETAILS.
0.0¢
   4wk ago
15.0¢
  spent 15.0¢
@-ED- You probably won't listen to reason anyway, but for the benefit of readers: to come up with a "negative implication" you'll have to come up with a "negative implication" for checksigverify, which is the bread and butter of bitcoin and identical to this in almost every way. There's no real downside unless you count "somebody is paying fee to use the blockchain for a thing i don't like" as a downside.
0.0¢
   4wk ago
15.0¢
  spent 15.0¢
Technical stuff aside, I've seen no one refute what CSW said, which to me seems a very reasonable point (no ad hominems, please). That
1) oracles would allow unlicensed gambling, which would give governments much bigger excuse to go after and ban BCH. (And no, Satoshi Dice isn't the same thing.) As a friend of Calvin he should know. Calvin had a lot of trouble with the government for operating a gambling site even though it was (supposed to be?) according to the laws.
2) Oracles would allow assassination markets, which would benefit the rich and the powerful the most as they could decide who should die and also could best protect themselves. The targets could be whistleblowers like Snowden. Anyone someone powerful wants to silence. (And also this could be used as a reason for governments to declare BCH illegal.)
Are these risks really worth taking, when we already have a functioning cash system, on top of which so much can be built?
Also if if oracles are really wanted, why not build them on a separate layer/sidechain/altcoin/something instead of the base protocol? This would be less fragile as the whole BCH wouldn't need to be risked.
0.0¢
   3wk ago
15.0¢
  earned 0.0¢
Those things can happen anyway so the objections A) don't make sense, B) are fear mongering, and C) are possibly cover for the real objections, whatever they may be.
Code is code, law is law. We cannot start deciding technical things on the base layer based on law of nations. If a certain use case it outlawed in a certain jurisdiction, that is ok.
0.0¢
   3wk ago
  spent 15.0¢
It is not just law, it's philosophical principles (and law is based on philosophy). Bitcoin protocol is designed based on philosophical principles, economics, etc. Portraying any change to the base protocol as "just technical" is misleading.
0.0¢
   3wk ago
15.0¢