Namuyang

Namuyang

@1244

趣味でプログラム書く人。 Kumacoin2.0開発が難航中。Python Rust好きJSは苦手。

PoSで本当にいいのか?

Ethereumのマージが迫っています。PoSへの移行を見る前に、最後にPoSは今までの懸念を払拭できているか?このままPoSを主流にして良いのか冷静に考えてみましょう。PoSには元々多くの懸念がありました。多くの理論的なアップグレードがされ、残された論点はビザンチン将軍問題や二重支払いに関するシステマティックな話よりも、公平性や一般的に言う非中央集権性の議論に移っているように思われます。まず、第一に「PoSとPoWの比較」について考える時、重要なのはパラメータ(=実際の数字)です。実際の値について考えなければPoWとPoSの比較議論は、「女性に生まれる方が男に生まれるより幸せだと思う」くらいの解像度の議論になってしまい、最高級のお世辞を言っても「完全に世界最悪の時間の無駄ではない議論」程度の内容でしょう。例えば、極端な例で「年間100%以上インフレでスパコンを持ってないと参加不可能なPoW」と「インフレ率が0.1%で100億ノードが自由に参加でき、アドレスはDIDで1個人が複数ノードを持てないPoS」があれば当然PoSの方が圧倒的に公平です。神は細部とパラメータに宿ります。Q1~Q6でお好きなトピックを読んでみてください。目次:Q1: PoSは長期的に非中央集権ですか?Q2: プレマイン/ICOされたトークンでPoSをやって不公平だと本当に思わないのか?Q3: PoSは格差拡大のシステムでしょうか?Q4: PoSはPoWにある自由な競争がありません。Q5: PoSにはPoWのように大きなコストと代償がないのでコインに価値がないQ6: PoSは環境保護にかこつけたPumpでは?Q1: PoSは長期的に非中央集権ですか?A: PoSはステークが分散していれば非中央集権です。もちろんPoWもWorkが分散していれば非中央集権です。どちらでもステーキングプールLidoへの集権化(30%以上)や、マイニングプールの集権化(3つのプールで51%以上 https://btc.com/stats/pool)が問題となっています。ステーキングプールによる51%(33%)攻撃に備える場合、ステーキング

モナカードの情報を変更不可能にする方法

モナカードはメタデータや画像を後から変更することが出来ます。これはメリットでもありますがデメリットにもなります。 今のところは発行者の意思により画像が見えなくなったモナカードは3700枚中1枚だけです。基本的には発行者が悪意を持って画像やメタデータを書き換える可能性はかなり低いと考えてよいと思いますが、仕組み上は可能です。 Monacard2.0を策定するにあたりこの問題も解決すべきではないかと考えました。トークンのオーナー権限をバーンアドレスに移せば永遠にDescriptionを編集できないので情報を完全にロックできます。これをMonacard2.0のカードロック仕様にするか悩みましたが、今までカードロックしなくても問題にならなかったことと、安易にカードロックすることにより新しいバージョンに対応できないなど様々な問題が発生するデメリットを考えてやめました。 Monacard2.0の仕様ではありませんが、どうしてもカード情報をロックしたい場合は上記の方法で行うことができます。ただし安易にカードロックすることは全くおすすめできません。基本的にはカードロックしないことをおすすめします。 以上、仕組み上はカードの情報を変更不可能にする方法があるよというお話でした。

Witness EncryptionによるトラストレスなWBTC発行(の備忘録)

ちょっと面白そうな記事が公開されたのでざっと読んでみた。こういう記事が日本からでると嬉しいので、もっと出してほしい笑 記事の内容は、カストディアンを必要としないWBTCの発行についてです。以下に自分のメモ用に記事の趣旨を書きだしてみました(間違っている可能性大)。 入金用ビットコインアドレスの生成 入金用ビットコインアドレスの秘密鍵はジェネレーターによって生成される。ジェネレーターが不正をすればWBTC返済前に勝手に出金できてしまうので、複数人でのN-of-Nマルチシグを生成することでセキュリティを高めることができる。この秘密鍵はWitness Encryptionとよばれる方法で暗号化され、そのwitnessで復号できる。 入金 上記で生成されたアドレスへ入金し、そのProofをコントラクトへ提出することでWBTCを受け取ることができる。正当なProofかの判断として、最長チェーン判定等が必要。 Witness Encryption あるinstance xに対するwitnessがあると復号できるものなので、このxは「WBTCを返済したか」の判定プログラムで、そのwitnessをもって秘密鍵の復号ができる(のかな?)。 WE.Enc(1λ,x,m): It takes a security parameter λ, an instance x, and a message m &is

SIGHASHタイプとそのユースケース

昨年末Taprootのアクティベイトが完了し、ほっと一息ついたのも束の間、界隈では次期ソフトフォークへ含めるBIPについて盛んにディスカッションがされています。BIP118やBIP119が比較的アクティブに討論されているといった感じでしょうか(提唱者が頑張っている感じ)。BIP118はライトニングネットワークのプロトコルを簡素化できるEltooでも必要な改善案で、SIGHASH_ANYPREVOUTと呼ばれる新しいSIGHASHタイプを規定したものです。 SIGHASHは署名をするデータ領域を指定するためのものですが、今までこのSIGHASHについて深く考えることがなかったのでそのユースケースについて調べてみました。以下のサイトでは各SIGHASHタイプとその応用やユースケースについて解説されていてわかりやすかったです。 Bitcoin's Signature Types - SIGHASH | Raghav Sood | It's a blog オンチェーン上でのアセット販売 例えば、SIGHASH_SINGLE | SIGHASH_ANYONECANPAYを使うことで、オンチェーン上でのアセット販売をトラストレスにすることができます。例えば、アリスはあるNFTを持っていて、それを1BTCで販売することを考えます。アリスはインプットに自身が保有するNFTを、アウトプットに自身のアドレスへ1BTCを、というTxを作り、SIGHASHタイプにSINGLE | ANYONECANPAYを指定して署名をします。現時点では1BTCに相当するインプットがないので不正なTxです。このTxをWebサイト等へ掲載します。NFTを1BTCで購入したいボブがWebサイトでこのTxを見つけました。ボブは、このTxに対して自身が保有する1BTCをインプットに、NFTを受け取るアドレスをアウトプットに追加して署名をし、このTxをブロードキャストすることで、アセットの販売が完了します。 クラウドファンディング この他にクラウドファンディングにもSIGHASHタイプを活用することができます。基本的な仕組みは上記のアセット販売と同じで、クラファンを募る募集者は目標金額を

Purchased this article 9hbcxftqd

-500

Sent a payment

-1616

Purchased this article gpahtacsx

-100

ずいずい purchased this article joauma3ks

3000

Purchased this article nzsdtz972

-100

Purchased this article k2n1jku8a

-300

21 purchased this article joauma3ks

3000

Purchased this article ja4bybb75

-1000

Purchased this article kq3jg0w6e

-100

Purchased this article 9lap0gwvz

-100

Purchased this article utrpumbpv

-100

話せばわかるご先祖様 purchased this article joauma3ks

3000

Purchased this article vkc3tjp87

-500

Purchased this article i24zm127o

-100

culizusi purchased this article qra0bhm48

100

Anonymous purchased this article qra0bhm48

100

高井 purchased this article qra0bhm48

100

ロクヨウ purchased this article qra0bhm48

100

れいれい purchased this article qra0bhm48

100

Mogamin purchased this article qra0bhm48

100

Popular stories

悟りコインの開封率を調べてみた

983

Python、例外処理の落とし穴

478

クリーンベンチを自作2(部品選定)

393

Archives

2021-12
1posts
2020-09
1posts
2020-08
1posts
2020-07
11posts