bitcoin script "OP_3 OP_ADD OP_6 OP_EQUAL"

前提知識では、ロック、アンロックのスクリプトがあったと思います。
では実際にロックスクリプトを入れて、アンロックスクリプトを送ってみましょう。

これは知ってる人は知っている界隈で活躍されている方の教育?商材がありますのでそれを見てください。
検証込みで30円程度で揃います。動画が20円くらい、サンプルスクリプトが10円くらい。
こんなん流行りだしたら丁寧な日本語解説付けて数百円で販売しても沢山の人が買いそう。
streamanity.com

こちら解像度は低いですが、動画説明のリファレンスやサンプルなどを併用すれば分からないことはないと思います。

In the video I show how we can create an output that has a nonstandard script and how we can spend it again.

Here is an example of a successfully spend output:
https://whatsonchain.com/tx/36b8f60a3306e7a49a2d828bb4d262515065735efc8b32acabcf0fb78fbdc7a2

The link shown in the video to the page for creating the nonstandard output scripts:
https://sym.re/SrFMT9v

The source code is available on bit.sv (not yet available to all):
https://sym.re/4EU7ENr

streamanityは視聴分だけbsvを支払う動画サイトですが、結局このサンプルは全部見るし、何度か見ることがあると思う。
moneybuttonはBSVブロックチェーンサービスにおいて根幹を構築されている方々です。
私は_unwriter氏のライブラリから入りましたが、これもmoneybuttonをより用途向けや、簡単に使うためのライブラリで根幹にはmoneybuttonが存在します。

本題です。
bico.mediaはhtmlソースを見てもらうと分かりますが、moneyButton jsでロックスクリプトの入れ方が分かります。
自分は入れることが出来ても、それをどう試すか分からなかったので、本動画は非常にためになりました。

動画では
"OP_TRUE"
のパターンと
"OP_3 OP_ADD OP_6 OP_EQUAL"
をテストしてくれています。テストというか正解パターンのみ見れます。

OP_TRUEはOP_1と同じでtrueです。つまりなにもしなくてもアンロックされるという事です。
次は、3+x=6にならないとアンロックされないスクリプトです。答えは3なのでOP_3を入れると解除されます。
動画では解除したパターンしか見れないので、試しにワザと外してみました。OP_4です。

で、ブロードキャストというのをwhatsonchainのサービスで実行しています。これを行うことで、はじめて世の中のパブリックブロックチェーンに刻まれます。このときunlocking scriptがエラーの場合、公開されず400ステータスコードのエラーが返ってきます。datapayだとこの辺が意識しなくても公開処理までしてくれるので、やはり便利ですね。

qiita.com

locking scriptが簡単すぎると、すぐに取られてしまう恐れがあります。
例えば「OP_2 OP_EQUAL」で生成したアドレスなどです。
これらは悪意ある自動ボットから、容易に所有権を奪われる可能性が高いです。
そのため、少しは難易度の高いパズルにしましょう。

しかし難易度が高すぎるのも問題です。
なぜなら正しいスクリプトが分からなくなると、一生解除できなくなるからです。
それはビットコインの所有権を放棄したと同義で、セルフGOXに値します。

ビットコインの所有権については、必ずしも秘密鍵や署名が必要ではないことを知れたと思います。
これがビットコインの面白い仕様であり、難しいところでもあると思います。

これを応用すると、例えばある人の誕生日を知っている人や、秘密のフレーズを知っている人だけがビットコインの所有権を得ることができる、という仕組みも実現できます。

これはもう少し出来る人の動向を見守った方がいいかな。動作確認しただけで、いまいち活用の仕方が分からない。
複雑なlocking scriptに対して複雑なunlocking scriptで返す意味があるのかとか気になる。