schnorr

bitcoin

最近、次世代の署名方式として注目されているSchnorr署名。 確かにその仕組みには効率的な側面があり、「集約署名」という特性も持っています。

次の署名方式? Schnorr署名は“ECDSA”です最近、次世代の署名方式として注目されているSchnorr署名。 確かにその仕組みには効率的な側面があり、「集約署名」という特性も持っています。しかし、ここで注意すべき点があります。Sch...
SORA-flowchart

SORA Blockchain – Core: sora1 … transaction v1 flowchart

We created a flowchart for SORA-QAI v1, an independently integrated system that incorporates quantum resistance.
The Voices of SORA Blockchain Users

[The Voices of SORA Blockchain Users] After years of studying, sorachancoin is really amazing in my opinion.

What did you like about SORA?After years of studying, I find SorachanCoin (SORA) genuinely amazing. Its architecture and...
AI-NFT

クリプト時代: GUIを改良中

ロジックが完成したので、次はGUIです。元から反応していない箇所があった(^^;ため、しっかりコードを導入していきます。GUIはおまけ……ではないです。しっかり組み上げます。
AI-NFT

サイドチャネル攻撃をわかりやすく例えます

それでは、サイドチャネル攻撃をわかりやすく例えます。まず、暗号通貨に対するこの攻撃の目的は秘密鍵を奪う事、それだけです。この「サイド」という言葉通り、システムを破壊する等が目的ではありません。ではなぜ、この攻撃で秘密鍵が漏洩してしまうのか。...
AI-NFT

秘密鍵を大量に束ねることができるSchnorr集約署名を用いることで、どんなにサイドチャネル攻撃を試みても全く成功しない環境を構築することなどが重要

ハッキングに対する最も有効な対抗措置は、攻撃者に「これは不可能だ」と認識させることです。それには、秘密鍵を大量に束ねることができるSchnorr集約署名を用いることで、どんなにサイドチャネル攻撃を試みても全く成功しない環境を構築することなど...
English

The encryption system is complete, so we can start now.

Good morning. The encryption system is complete, so we can start now.We have ECDSA, Quantum & AI resistance, and aggrega...
AI-NFT

ウォレット内部にあるECDSA鍵をSchnorr署名集約クラスのXOnlyPubKeysにpushしていくだけで検証できるようになりました。本実装ではY座標偶数の制約はありませんので、ECDSAの代わりにSchnorr署名を使うことができます。

この方向性で、75個のECDSA鍵を集約して実稼働できる見通しが立ちました。Y座標偶数の制約がないため、ウォレット内部から自由に選んでpushして集約することができます。便利です。
AI-NFT

効率的なマルチシグ: 鍵の集約、便利です。お試しの100個の鍵によるECDSA-Schnorr署名マルチシグであっても瞬時に生成です。そこで、マルチシグの集約をサポートするためOP_CHECKSIGADDは不要で、この集約で常に署名するOP_CHECKSIGAGGを新規で投入します。

100個の鍵によるマルチシグ。非線形性のECDSAでは100個の公開鍵と署名が必要になるため、そのサイズは約10KBになります。サイズが大きくなるのに加え、OP_CHECKSIG同等の処理が100回必要となるため、検証側の負担が大きくなりま...
AI-NFT

最終考察(その7)の前に……「Schnorr署名」が完成しました。BIP340にある公開鍵Y座標に対する制約解除(ウォレット内部の鍵を制限なくそのまま利用可能)、nonceは乱数、Verifyは完全一致(X座標だけではなくY座標も一致)、集約により100個のマルチシグであっても公開鍵32バイト固定、署名64バイト固定になります。

OpenSSLとlibsecp256k1で検証を重ねていた「Schnorr署名」が完成しました。テストも、計算上も問題ありません。これで自信を持って実装できます。魅力的なのは、集約により100個のマルチシグであっても公開鍵32バイト固定、署...
AI-NFT

決まった数(定数)に対するnegなので、直接、バイナリで操作することで引くことにしました。

昨日の続きです。libsecp256k1のnegが期待通りに作用しないため、BIGNUMに変換後、OpenSSLの関数で引いて、その結果をbe32でlibsecp256k1のスカラーに戻す手法があります。ただ、これはちょっと厳しいため、直接...
AI-NFT

あと少し。公開鍵の偶奇を問わずSignとVerifyの動作確認が取れたOpenSSLによるschnorr署名を、libsecp256k1で動かせれば完了です。ただ、一部のnegで苦戦中です。

今日もタイトル通りです。OpenSSLで動作の確認が取れたのですが、これをlibsecp256k1で動かせるかどうか、です。ただ一か所、negが思った通りに動かず、引くことができない状況です。OpenSSLでは正常動作しているため、書いた実...
AI-NFT

検証中のschnorr署名で、Rの計算手法を少し変え、X座標とY座標の両方一致(つまり点の一致)で有効とする方法の確認が取れました。

検証中のschnorr署名で、Rの計算手法を少し変え、X座標とY座標の両方一致(つまり点の一致)で有効とする方法の確認が取れました。X座標の一致でも十分な気はしますが、Y座標まで検証可能なら、これで楕円曲線の点を完全に捉えてた形で、署名の有...
AI-NFT

schnorr署名、検証を完了しました。そこで、実装に手を加えて再検証です。Rを利用する計算手法の部分です。

やはりschnorr署名では、署名の際に無作為に決めたRのY座標が偶数で、そのX座標がハッシュから得たX座標と等しくなるという性質でした。そこで、Rを利用する計算手法を少し変えると、X座標とY座標の両方が一致する場合もあり、今、その両方が一...
AI-NFT

ブロックチェーンに最適化されたschnorr署名について、検証を完了しました。まずOpenSSLでschnorrを再現し、署名&検証をじっくり検証しました。そして、公開鍵のY座標が偶数という点が大事でした。

題名の通りで、うまくいきました。OpenSSLでschnorr署名の細部を再現し、検証と同時に内部の構造等も掌握しました。検証プロセスが安定しない症状が出たので、調べていたらBIP-340に当たりました。公開鍵のY座標に、偶数という制限があ...