Ky

Ky

@175

ビットガールズで気づいたこと

2016年から2017年にかけて、ビットガールズというテレビ番組が放送されていた。アイドルのトークンをICOしたり、トークンを使ってアイドルに投票したり、アイドルがビットコインの歌を歌ったり、簡単に言うとアイドルとビットコイン(とトークン)をかけ合わせた番組だった。 その頃の僕は、多くのエンジョイ勢と同じようにCounterparteyのトークンを作っては、配ったりもらったりして遊んでいた。そんな感じで暗号通貨に興味を持ち、面白そうなことにはとりあえず手を出していた僕は、当然のようにビットガールズのICOや投票に参加していた。 しばらくして番組は終わってしまった。番組が終わってしばらくしても、なぜかTelegramのビットガールズグループには時々新しい参加者が増えていた。 ある日、彼女と一緒に僕のスマホを見ていたら、ビットガールズグループに新しい参加者が増えたという通知が表示された。おそらく彼女の目にも入ったはずだった。別にやましいことはないのだけど、「ビットガールズ」という怪しい単語を見てどう思うだろうと考えつつ、特に通知に触れることなくやり過ごした。 少しして、今度は彼女のスマホを二人で見ていた。Googleで検索しようとしたそのとき、検索の履歴に「ビットガールズ」と表示された。 やっぱりあの通知は見られていた。あの通知を見た彼女はビットガールズを検索したのだろう。ビットガールズという単語を見てどう思っただろう。ゲームの名前か、アイドルグループか、エロコンテンツだと思ったかもしれない。そしてそれがアイドルとビットコインの番組だと分かった時、どう思ったのだろう。 これは僕の偏見かもしれないけれど、「アイドル」と「仮想通貨」は彼氏にやめてほしいランキングで上位にくる趣味じゃないだろうか。この2つを組み合わせた番組を見ておいて、やましくないという感覚を持ってしまっているのは、異常なのかもしれない。そこまで考えてそれ以上考えるのをやめた。

Swap-in-Potentiam 備忘録

LNへのオンボードにはチャネル開設が必要であったり、チャネルマネジメントのためにオンチェーンとオフチェーンの資金交換をしたりと、L2技術とは言え、なにかとオンチェーン送金が必要になる場合があります。オンチェーン送金をする場合、0承認TXを許容することも可能ですが、基本的にはブロック承認を待つことが望ましいとされています。Diamond Swapでもある一定の条件を満たすことで0承認を許容していますが、できることなら避けて通りたい道です。 この問題を解決し得るある提案がLNメーリスで紹介されていました。本提案では、0承認でもトラストレスにSwap-inができるというものです。 ユーザーのシナリオとしては、まずウォレットからアドレスを生成して、そこへBTCを送金します。これは取引所からの出金であったり、第三者からの支払いであったりなんでも構いません。そして後日、ユーザーはLN決済でコーヒーを買おうとします。この時、ウォレットにチャネルがない場合はチャネル開設が必要で、チャネルがあってもアウトバウンドキャパシティがない場合はSwap-inをしてウォレットへBTCをチャージしたりする必要があります。この際、オンチェーン送金が発生するので、ブロック承認を待つ必要があります。 ここで、ウォレットから生成するアドレスをある特別なアドレスへ少し変換してあげます。そうすることで、チャネル開設やSwap-inをする際にブロック承認を待たずしてトラストレスにウォレットへBTCを送金することが可能になります。 その特別なアドレスは、2つのブランチによる消費条件で構成されています。1つはAとBのマルチシグを必要とするブランチで、もう1つはAの署名と相対的なタイムロック(OP_CSV)が掛けられているブランチです。このアドレスへ送金された資金であれば、Swap-inを0承認で安全に行うことができます。 通常のSwap-inの場合、AがBが生成したロックアップアドレスへオンチェーン送金をして、その送金が承認されるとBがSwap-inを開始します(AへLN送金をする)。そしてAがプリイメジを公開することで、Bがそのプリイメジを使いロックアップアドレスから資金を回収してSwap-inが完了します。もしここで、AがRBFによるロックアップアドレスへのオンチェーン送金TXをキャンセルしてしまうと、Bはロックアップアドレスからの資金回収ができなくなります。そのため、BはそのTXが含まれるブロック承認を待つ必要があるわけです。 Swap-in-Potentiamの場合、ロックアップアドレスへ送金す

mempoolfullrbf、その論点と結末

現在、Bitcoin Coreにmempoolfullrbfという機能を追加する話題でちょっとした論議が繰り広げられています。 このmempoolfullrbf(以下fullrbfと称す)の説明には、まずはRBF(Replace by Fee)について理解する必要があります。基本的にビットコインの送金は取り消しやキャンセルができません。しかし、RBFという仕組みはブロック承認前(言い換えるとmempoolに存在する場合)であれば、送信した取引データを手数料を高くした取引データで置換できるというものです。このRBFという仕組みはBIP125に準じて実装されていて、送信する取引データに「この取引データはRBFを許容するものですよ」というシグナリングをする必要があります。このシグナルがない取引データに対してはRBFは使えません。 fullrbfは、取引データにシグナルがなくてもRBFを許容する機能で、デフォルトではオフになっています。そもそもシグナルを付与すればRBFできるのに、なぜfullrbfが必要なのか、その動機とはなんでしょうか。シグナリングによるRBFではLNやDLCなど1つのUTXOを共有するコントラクトの場合に問題が発生する可能性があります。2者間によるコントラクトの場合、悪意ある相手がシグナリングせずに取引データをブロードキャストすることができてしまいます。これはPinning攻撃と呼ばれる攻撃手法の一種で、最悪の場合資産を失う危険性があります。fullrbfが導入されればシグナリングがなくてもRBFが可能となり、不正なデータを正しいデータへ置換でき、上記の攻撃を回避することができます。 一方、fullrbfは0承認をサポートしているサービスに問題が生じるかもしれません。例えば、店頭で商品を購入し、店を出てから支払い先のアドレスを自身のアドレスへ変更する、という不正ができてしまいます(店頭なので顔がバレてしまいますが笑)。現状はシグナリングされていない送金であれば、RBFされることはないので0承認を許容してもさほど問題はありません。しかしfullrbfが導入されるとシグナリングがなくても支払いがキャンセルできてしまうので、小売店が抱えるリスクが上がってしまいます。 このようにRBFにはメリットデメリットがありますが、mempoolfullrbfの実装はすでに終わっており、Bitcoin Coreにマージされました。 しかし、このマージ後に再度fullrbfの賛否を問う議論がはじまり、この機能を削除しようという<a href="https://github.com/bi

Purchased this article uvud65i73

-500

Ky tipped you

500

Purchased this article rxho0cjty

-300

Purchased this article ihkrhir72

-100

Purchased this article 5jvfane3y

-100

Purchased this article e43plnh95

-390

Purchased this article 6n3j6c0vz

-1000

Ky tipped you

1700

Purchased this article 81wx4hoft

-100

Purchased this article xmcrmejna

-100

Purchased this article 8lr4dnla4

-100

Anonymous purchased this article 34mlduok1

100

Yuya purchased this article 34mlduok1

100

Marimox purchased this article 34mlduok1

100

ロクヨウ purchased this article 34mlduok1

100

Purchased this article 00sflkilq

-100

Purchased this article 1erl9gh67

-100

Purchased this article 3lm6r8fhn

-100

Purchased this article 7uxo0y3cs

-100

Purchased this article s90m55ltt

-100

Popular stories

Wallet of Satoshi(リカバリー方法、手数料)

285

ビットガールズで気づいたこと

85

Muun(リカバリー方法、手数料)

84

Archives

2022-11
1posts
2022-08
1posts
2022-05
1posts
2022-04
3posts
2021-04
1posts