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
67
2
Share
Go(5)分で! ECC暗号を動かして理解する BuriKaigi 2026
この資料は、2026年 BuriKaigi LT資料です。
Senoue
January 11, 2026
More Decks by Senoue
See All by Senoue
Goカードゲームを 作ってみた!
senoue
0
220
App_RunnerとRDSを活用したスケーラブルなWebAPI構築とインフラの自動化.pdf
senoue
1
140
チャンネルを完全に理解する
senoue
0
86
Real-time Communication in Go with Melody and WebSockets
senoue
0
180
Adobeの生成AIのこと を調べてみた
senoue
0
220
ソフトウェア開発におけるAI :CopilotとGenie
senoue
0
220
Sendai.go x GDG Cloud 仙台 ハンズオン
senoue
0
81
GoでMecab
senoue
0
400
GKEとGoでエフェメラルなサービス
senoue
0
410
Other Decks in Technology
See All in Technology
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
16k
ハーネスエンジニアリングの概要と設計思想
sergicalsix
3
520
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.2k
サイバーフィジカル社会とは何か / What Is a Cyber-Physical Society?
ks91
PRO
0
190
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
78k
え!?初参加で 300冊以上 も頒布!? これは大成功!そのはずなのに わいの財布は 赤字 の件
hellohazime
0
150
Proxmox超入門
devops_vtj
0
220
建設的な現実逃避のしかた / How to practice constructive escapism
pauli
4
340
NgRx SignalStore: The Power of Extensibility
rainerhahnekamp
0
230
2026年、知っておくべき最新 サーバレスTips10選/serverless-10-tips
slsops
12
4.9k
幾億の壁を超えて/Beyond Countless Walls(JP)
ikuodanaka
0
130
AI時代に新卒採用、はじめました/junior-engineer-never-die
dmnlk
0
280
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
sira's awesome portfolio website redesign presentation
elsirapls
0
210
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Design in an AI World
tapps
0
190
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.1k
For a Future-Friendly Web
brad_frost
183
10k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.7k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Code Review Best Practice
trishagee
74
20k
Ruling the World: When Life Gets Gamed
codingconduct
0
190
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
100
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