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
準同型暗号による バーチャルセキュアプラットフォーム の開発
Search
nindanaoto
February 08, 2020
Research
1
340
準同型暗号による バーチャルセキュアプラットフォーム の開発
Just Do it.
https://github.com/virtualsecureplatform/kvsp
nindanaoto
February 08, 2020
Tweet
Share
More Decks by nindanaoto
See All by nindanaoto
準同型暗号による バーチャルセキュアプラットフォーム の開発/Development of Virtual Secure Platform
nindanaoto
3
1.9k
TFHEのための多項式乗算入門
nindanaoto
2
1.1k
Other Decks in Research
See All in Research
機械学習と数理最適化の融合 (MOAI) による革新
mickey_kubo
0
270
Vision and LanguageからのEmbodied AIとAI for Science
yushiku
PRO
1
520
【輪講資料】Moshi: a speech-text foundation model for real-time dialogue
hpprc
3
640
在庫管理のための機械学習と最適化の融合
mickey_kubo
3
1.1k
Generative Models 2025
takahashihiroshi
24
13k
20250624_熊本経済同友会6月例会講演
trafficbrain
1
600
[論文紹介] Intuitive Fine-Tuning
ryou0634
0
110
生成的推薦の人気バイアスの分析:暗記の観点から / JSAI2025
upura
0
260
不確実性下における目的と手段の統合的探索に向けた連続腕バンディットの応用 / iot70_gp_rff_mab
monochromegane
2
150
Adaptive Experimental Design for Efficient Average Treatment Effect Estimation and Treatment Choice
masakat0
0
160
Language Models Are Implicitly Continuous
eumesy
PRO
0
210
Delta Airlines® Customer Care in the U.S.: How to Reach Them Now
bookingcomcustomersupportusa
0
110
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.8k
Why Our Code Smells
bkeepers
PRO
339
57k
A Modern Web Designer's Workflow
chriscoyier
696
190k
RailsConf 2023
tenderlove
30
1.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Visualization
eitanlees
148
16k
Six Lessons from altMBA
skipperchong
28
4k
Documentation Writing (for coders)
carmenintech
74
5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Facilitating Awesome Meetings
lara
55
6.5k
Transcript
準同型暗号による バーチャルセキュアプラットフォーム の開発 2020/02/08 カーネル/VM探検隊@関西 10回目 松岡 航太郎 松本 直樹 伴野 良太郎
アジェンダ 1. VSPの紹介 2. TFHEのための多項式乗算入門(松岡) 3. VSP専用プロセッサ設計と 実行エンジンについて(松本) 4. 魚類でもわかるLLVM&ISA設計(伴野)
通常のクラウドコンピューティング プログラムは平文で実行される
悪意ある第三者によって盗聴される恐れ (HWのバス信号を読むなど) 通常手法の問題点
本プロジェクトの提案手法 プログラムを含めすべて暗号化した状態で実行 →盗聴自体を無効化する
本プロジェクトの特徴 • プログラム・データすべてを暗号化 した状態で実行可能 • 数学的安全性の保障 • C言語による記述が可能
None
平文 暗号化済み
暗号化されたプログラムを どうやって実行するか?
コンピュータの頭脳:CPU
プログラムの実行までの流れ 実行バイナリ CPU 結果 コンパイラ によって生成 実行バイナリ を読み込み実行 結果を出力 101011100....
0100110100....
CPU内部の物理論理回路(一部) 1 1 1 1 0 0 1
ANDゲートについて a\b 0 1 0 0 0 1 0 1
CPU内部の物理論理回路(一部) 1 1 1 1 0 0 1
ソフトウェアエミュレーションによって回路を模倣 1 1 1 1 1 0 0
入力に 論理ゲートの処理を行う ↓ プログラムに対する CPUの動作を模倣できる
暗号化された入力に 論理ゲートの処理を行う ↓ 暗号化されたプログラムに対する CPUの動作を模倣できる
準同型暗号
ソフトウェアエミュレーションによって回路を模倣 1 1 1 1 1 0 0
準同型暗号で入力が暗号化された状態で 論理回路を模倣 ① ① ① ① ①
暗号化された入力に 論理ゲートの処理を行う ↓ 暗号化されたプログラムに対する CPUの動作を模倣できる
None
VSP; Virtual Secure Platform VSP = 盗聴を無意味にする仕組み
VSP; Virtual Secure Platform VSP = 盗聴を無意味にする仕組み
VSP; Virtual Secure Platform VSP = 盗聴を無意味にする仕組み 世界初
None
世界初
KVSP (Kyoto Virtual Secure Platform) • VSPを使うためのインタフェース。 • kvspをビルドすれば必要な全てのサブプ ロジェクトがビルドされる。
https://github.com/virtualsecureplatform/kvsp
KVSPデモ
None
CAHPv3 Diamond Iyokan LLVM TFHE
CAHPv3 Diamond Iyokan LLVM TFHE
TFHE; Torus Fully Homomorphic Encryption • 使用している準同型暗号 • CPU向けはフルスクラッチ(TFHE++) •
GPUは微修正版(cuFHE)
CAHPv3 Diamond Iyokan LLVM TFHE
CAHPv3 • CPUの上で動く独自命令セット • 16bitアーキテクチャ • 16/24bit可変長命令 • 実行バイナリサイズが小さい
CPU実装 VSP (Diamond) ARM Cortex M0+ • 独自開発のCPU • CAHPv3準拠
• 約 3,500 ゲート • IoT向けCPU • ARMv6-M準拠 • 約 12,000 ゲート
CAHPv3 Diamond Iyokan LLVM TFHE
Cコンパイラ実装 • LLVMをベースにCAHPv3に対応 • LLVMの最適化フェーズを利用 ◦ 実行バイナリの効率化 ◦ 実行バイナリサイズの低減
CAHPv3 Diamond Iyokan LLVM TFHE
Iyokan • 準同型暗号ゲートの並列実行基盤 • 回路情報を読み込み実行する • CPU(TFHEpp)/GPU(cuFHE)に対応 • 回路情報変換部(L1)・並列実行部 ※回路の合成はyosysを利用
VSPの現状性能 約6秒/クロック on V100 約2.5~5秒/クロック on c5.metal • 準同型暗号の演算自体が遅い •
ROM・RAMが約 20,000 ゲート • ROM・RAM 512Byteずつ
Fully Open Source! • 成果物は全てGitHubで公開中 • ライセンスはApache v2.0など https://github.com/virtualsecureplatform
謝辞 GPU 版の開発にあたって さくらインターネット株式会社様より 高火力コンピューティング をお貸しいただきました。