Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Shorのアルゴリズム
Search
shigeyuki azuchi
December 09, 2025
Technology
0
3
Shorのアルゴリズム
GBECの解説動画のスライドです。
https://goblockchain.network/2025/12/shor_algorithm/
shigeyuki azuchi
December 09, 2025
Tweet
Share
More Decks by shigeyuki azuchi
See All by shigeyuki azuchi
DahLIAS: Discrete Logarithm-Based Interactive Aggregate Signatures
azuchi
0
7
Fiat-Shamir変換と注意点
azuchi
0
88
AssumeUTXOを利用したブロックチェーンの同期
azuchi
0
19
BIP-374 離散対数の等価性証明
azuchi
0
34
BIP-353 DNS Payment Instructions
azuchi
0
53
OP_CAT and Schnorr Trick
azuchi
0
52
Pay to Anchorと1P1Cリレー
azuchi
0
49
プロアクティブ秘密分散法
azuchi
0
69
v3トランザクションリレー
azuchi
0
67
Other Decks in Technology
See All in Technology
pmconf2025 - 他社事例を"自社仕様化"する技術_iRAFT法
daichi_yamashita
0
680
32のキーワードで学ぶ はじめての耐量子暗号(PQC) / Getting Started with Post-Quantum Cryptography in 32 keywords
quiver
0
280
日本Rubyの会の構造と実行とあと何か / hokurikurk01
takahashim
4
780
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
【CEDEC+KYUSHU2025】学生・若手必見!テクニカルアーティスト 大全 ~仕事・スキル・キャリアパス、TAの「わからない」を徹底解剖~
cygames
PRO
0
100
Ryzen NPUにおけるAI Engineプログラミング
anjn
0
240
eBPFとwaruiBPF
sat
PRO
4
2.3k
手動から自動へ、そしてその先へ
moritamasami
0
250
Playwright x GitHub Actionsで実現する「レビューしやすい」E2Eテストレポート
kinosuke01
0
110
最近のLinux普段づかいWaylandデスクトップ元年
penguin2716
1
540
GitLab Duo Agent Platformで実現する“AI駆動・継続的サービス開発”と最新情報のアップデート
jeffi7
0
190
AI駆動開発によるDDDの実践
dip_tech
PRO
0
360
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
380
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Embracing the Ebb and Flow
colly
88
4.9k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Done Done
chrislema
186
16k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Transcript
Shorのアルゴリズム
1 量子コンピューター 量子力学(ミクロの物理学)の性質を利用して、高速に計算を行うコンピューター • 重ね合わせ:量子ビットは0と1の状態を同時にとることができる すべての可能性に対して演算を一度に適用できる。測定する際に得られる答えは1つだけ • 干渉:アルゴリズムによって正解を導出するための確率を上げる • 量子もつれ:ある量子ビットの状態が別の量子ビットの状態に影響する(量子ビット間の相関)
物質 原子 原子核 電子 陽子 中性子 量子力学に従う粒子 • 周期性がある問題(素因数分解、離散対数問題) • 構造的な探索問題(√Nの探索で答えを見つける) • ランダムで構造がない問題 • 逐次処理が必要な問題 • 全数探索が本質的に必要な問題 高速に解ける問題 高速に解けない問題
2 Bitcoinの安全性 楕円曲線上の離散対数問題の困難性 楕円曲線上のベースポイント:G 秘密鍵:スカラー値x 公開鍵:P = xG(Gをx回加算した点) Pからxを計算するのは困難 •
効率的なアルゴリズムはなく • 基本的に総当りに近い • 256 bitの場合、2128の計算
3 Shorのアルゴリズム(1994) 素因数分解(N = p × q)を効率的に解くことができる量子アルゴリズム 1. 1 <
x < Nで、Nと互いに素なxを選択し、 2. xの冪乗を使って周期を発見する a. x1 % N = 4 b. x2 % N = 13 c. … d. xr % N = 1 ← rが周期 3. xr ≡ 1 (mod N)ということは、xr - 1 ≡ 0 (mod N)でNの倍数 4. rが偶数の場合、xr - 1 = (xr/2)2 - 12 = (xr/2 - 1)(xr/2 + 1)の積がNの倍数 つまり、2つの値はpおよびqの倍数 5. 2つの値とNの最大公約数を求めると素因数が判明する a. gcd(xr/2 - 1, N) → p b. gcd(xr/2 + 1, N) → q • 重ね合わせ(すべての可能な周期を重ね合わせで作成) • 干渉(正解を導出する確率を上げ) • 量子フーリエ変換で周期を高速に発見
4 Shorのアルゴリズム(1994) 楕円曲線上の離散対数問題の場合 Gを何回加算したらP(= xG)になる?→順番に数える問題 aG + bP = (a
+ bx)G? → f(a, b)の組み合わせを使って周期性を導入する • f(1, 0) = 1G + 0P = 1G • f(0, 1) = 0G + 1P = xG • f(3, 2) = 3G + 2P = (3 + 2x)G • … • f(10, 1) = 10G + 1P = (10 + x)G 周期構造=同じ点になる (a, b)のパターンを見つける パターンが抽出できると xが逆算できる
5 Bitcoinにおける影響 • 公開鍵が既知のUTXOにロックされているコインが侵害される可能性がある ◦ P2PK、Taproot(key-path) ※NUMSポイントのコインが奪われると量子コンピューターの存在が証明される ◦ Bare multisig
◦ 再利用により公開鍵が既知である P2PKH、P2WPKH、P2SH、P2WSH ◦ 「Bitcoin and Quantum Computing: Current Status and Future Directions」では 2025年1月時点で400万〜1,000万BTCがリスクに • P2PKHやP2WPKH ◦ 別途ハッシュからプリイメージとなる公開鍵を導出する必要がある ◦ Groverのアルゴリズムにより、セキュリティレベルが 2256から2128まで削減されるが 破れるレベルではない ◦ ※ 超高速な量子コンピューターが登場するとまた別だが、可能か?