Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Go(5)分で! ECC暗号を動かして理解する BuriKaigi 2026
Search
Senoue
January 11, 2026
Technology
90
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Go(5)分で! ECC暗号を動かして理解する BuriKaigi 2026
この資料は、2026年 BuriKaigi LT資料です。
Senoue
January 11, 2026
More Decks by Senoue
See All by Senoue
Goカードゲームを 作ってみた!
senoue
0
290
App_RunnerとRDSを活用したスケーラブルなWebAPI構築とインフラの自動化.pdf
senoue
1
160
チャンネルを完全に理解する
senoue
0
100
Real-time Communication in Go with Melody and WebSockets
senoue
0
200
Adobeの生成AIのこと を調べてみた
senoue
0
250
ソフトウェア開発におけるAI :CopilotとGenie
senoue
0
240
Sendai.go x GDG Cloud 仙台 ハンズオン
senoue
0
90
GoでMecab
senoue
0
410
GKEとGoでエフェメラルなサービス
senoue
0
420
Other Decks in Technology
See All in Technology
QAエンジニア起点で進める、SmartHRにおける信頼性向上について
kaomi_wombat
1
130
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
オートロックマンションなのに、各部屋は施錠なし!? 攻撃者が組織内ネットワークで大暴れする理由 / The Front Door Is Locked, but the Rooms Are Wide Open: Why Attackers Move Freely Inside Enterprise Networks
nttcom
1
1.6k
OSPN.JPバージョンアップ作業進捗のご報告 / 20260801-osc26kyoto
akkiesoft
0
450
ガバメントクラウドでのランサムウェア対策
techniczna
2
1.1k
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
790
ラジオの科学
frievea
0
290
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
220
老害フォレンジッカーはAI羊の夢を見るか?
tadmaddad
0
310
Genie Codeハンズオン基礎編
taka_aki
1
100
Issue設計から始める仕様駆動開発 / 20260731 Mizuki Hirata
shift_evolve
PRO
1
150
モダンフロントエンド 開発研修
recruitengineers
PRO
4
590
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
9.6k
The Curse of the Amulet
leimatthew05
2
14k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
480
4 Signs Your Business is Dying
shpigford
187
22k
Marketing to machines
jonoalderson
1
5.7k
The SEO Collaboration Effect
kristinabergwall1
1
520
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
480
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.4k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
490
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
66
57k
Building AI with AI
inesmontani
PRO
1
1.1k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Transcript
Go(5)分で! ECC暗号を動かして理解する Burikaigi 2026 瀬上祐匡 2026/1/9
瀬上 祐匡(せのうえ ひろまさ) • AWS,GCP, Go, Python等,BI,データ分析 • @senoue,@hiromasa.senoue •
モノノフです。 • 好きなものは、Cloudrun • Sendai.go やってます • TinyGo keeb・Go Conference実行委員など 自己紹介 Sendai.goについて 宮城県仙台市近辺の GoLangのコミュニティを運営しています。 毎月第1水曜19時より、コードリーディング、 LT会、Go Conference miniの運営などを行っています。 昨日は TinyGo Keebをやらせていただいてました。
実はECCは「暗号化」ではな い
- ECCは暗号文を復号する技術ではない - 署名(ECDSA)と鍵交換(ECDH)の基盤 - 「同じ秘密に辿り着く」ための数学 ECCって何? G:スタート地点(全員が知っている) d:自分だけが知っている「秘密の回数」 dG:d回進んだ結果(公開してよい)
秘密鍵 d × 基準点 G = 公開鍵 dG dG から d を逆算することはできません
RSAより軽い、 ECCをGoで 動かしてみよう
- ECC(楕円曲線暗号)=RSAより少ないビッ ト数で同等の安全性 - 軽量・高速で、IoTやTLSにも使われてる - Go標準ライブラリでサクッと扱える 「Goなら crypto/elliptic を叩くだけで楕円曲
線の世界に入れる!」 ECCって何?
ECCって何? 特徴 RSA 楕円曲線暗号(ECC) セキュリティと鍵長 安全性を高めるには長い鍵 長が必要。例: RSA-2048 RSAと同等の安全性を短い鍵長で 実現できる。例:
ECDSA-256 処理速度 処理に時間がかかり、特に大 量のデータには不向き。 RSAよりも処理が速い。 メリット 長年使われてきた実績があ る。 鍵長が短く、リソースが限られたデ バイスでの利用に適している。 デメリット 鍵長が長く、処理に時間がか かる。 比較的新しい技術であり、RSAに 比べると実績が少ない。
鍵生成
- この一行で公開鍵と秘密鍵が生成できる - P256() は業界標準の楕円曲線 . - RSAのような大きな鍵管理が不要 鍵生成 priv,
x, y, _ := elliptic.GenerateKey(elliptic.P256(), rand.Reader) fmt.Printf("PublicKey: (%x, %x)\n", x, y)
- 鍵生成速度の比較 : - ECC P-256 は RSA-2048 より 8733.09x
速い - ECC P-256 は RSA-4096 より 81747.89x 速い - ECC P-384 は RSA-2048 より 942.16x 速い 鍵生成
署名と検証
- ecdsa.Sign と ecdsa.Verify の2行で電子署名の基本が 動く - 実際のTLS証明書やJWTの裏側でも使われている - 「Goは暗号化に強い言語」の理由がここに!
署名と検証 r,s, _ := ecdsa.Sign(rand.Reader, privKey, hash) ok := ecdsa.Verify(&pubKey, hash, r, s) fmt.Println("Verify:", ok)
- 署名生成速度の比較 : - ECC P-256 は RSA-2048 より 40.51x
速い - ECC P-256 は RSA-4096 より 255.65x 速い - ECC P-384 は RSA-2048 より 5.47x 速い 鍵生成 https://github.com/Senoue/ecc-sample
Go 1.26での変更点に注意!
- Go 1.26からECC周りが少し変わります。 Go 1.26での変更点に注意! 変更点 内容 crypto/ecdsa X, Y,
D フィールドが非推奨(deprecated) crypto/elliptic 古いBigIntベース実装が将来的にラップ扱い crypto/ecdh 新しい鍵交換APIとして登場(より安全) crypto/hpke 1.26で標準ライブラリに導入されます 参考:https://go.dev/doc/go1.26
- 公開鍵暗号方式と共通鍵暗号方式を組み合わせて (ハイブリッド )任意の平文を暗号化する方式 - HPKE の詳しい背景は - RFC 9180
準拠のこの解説記事 がとてもわかりやすいです 。 (https://blog.jxck.io/entries/2022-08-25/hpke.html) HPKE(Hybrid Public Key Encryption:ハイブリッド公開鍵暗号化)
まとめ
“ECCは今最適、未来は PQC” 量子でRSAもECCも破られる だから今から PQCへの移行戦略が必要 ECCが弱いんじゃない 量子がずるいんです まとめ
暗号が破られるタイミングを恐れるのではなく、 移行を前提とした設計に切り替えることが本質。 - RSA / ECC は「いつか破られる」ことが数学的に確定している - しかし “今すぐ危険”
ではない - だから「慌てて変更」ではなく「アップグレード計画」が最適解 👉 暗号は「捨てる」のではなく 上書きし続ける技術領域 👉 PQC も “将来の常識” として扱い、今のうちに触れておく 技術者の価値は「未来の変化に備える姿勢」で決まる。 量子時代に備える ─ 技術者としてどう動くべきか
Thank You