Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
MITSUNARI Shigeo
PDF, PPTX
44,756 views
暗号文のままで計算しよう - 準同型暗号入門 -
introduction to homomorphic encryption
Technology
◦
Read more
98
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 39
2
/ 39
Most read
3
/ 39
Most read
4
/ 39
5
/ 39
6
/ 39
7
/ 39
8
/ 39
9
/ 39
10
/ 39
11
/ 39
12
/ 39
13
/ 39
14
/ 39
15
/ 39
16
/ 39
Most read
17
/ 39
18
/ 39
19
/ 39
20
/ 39
21
/ 39
22
/ 39
23
/ 39
24
/ 39
25
/ 39
26
/ 39
27
/ 39
28
/ 39
29
/ 39
30
/ 39
31
/ 39
32
/ 39
33
/ 39
34
/ 39
35
/ 39
36
/ 39
37
/ 39
38
/ 39
39
/ 39
More Related Content
PDF
暗号技術の実装と数学
by
MITSUNARI Shigeo
PDF
RSA暗号運用でやってはいけない n のこと #ssmjp
by
sonickun
PPTX
差分プライバシーとは何か? (定義 & 解釈編)
by
Kentaro Minami
PDF
Bitcoinを技術的に理解する
by
Kenji Urushima
PPTX
zk-SNARKsの仕組みについて
by
Shouki Tsuda
PPTX
劣モジュラ最適化と機械学習 3章
by
Hakky St
PDF
第10回 配信講義 計算科学技術特論A(2021)
by
RCCSRENKEI
PDF
東京大学2021年度深層学習(Deep learning基礎講座2021) 第8回「深層学習と自然言語処理」
by
Hitomi Yanaka
暗号技術の実装と数学
by
MITSUNARI Shigeo
RSA暗号運用でやってはいけない n のこと #ssmjp
by
sonickun
差分プライバシーとは何か? (定義 & 解釈編)
by
Kentaro Minami
Bitcoinを技術的に理解する
by
Kenji Urushima
zk-SNARKsの仕組みについて
by
Shouki Tsuda
劣モジュラ最適化と機械学習 3章
by
Hakky St
第10回 配信講義 計算科学技術特論A(2021)
by
RCCSRENKEI
東京大学2021年度深層学習(Deep learning基礎講座2021) 第8回「深層学習と自然言語処理」
by
Hitomi Yanaka
What's hot
PDF
機械学習による統計的実験計画(ベイズ最適化を中心に)
by
Kota Matsui
PDF
楕円曲線入門トーラスと楕円曲線のつながり
by
MITSUNARI Shigeo
PDF
プログラミングコンテストでのデータ構造 2 ~平衡二分探索木編~
by
Takuya Akiba
PDF
[DL輪読会]Deep Learning 第15章 表現学習
by
Deep Learning JP
PDF
Union find(素集合データ構造)
by
AtCoder Inc.
PDF
基礎線形代数講座
by
SEGADevTech
PDF
プログラミングコンテストでのデータ構造
by
Takuya Akiba
PDF
最大流 (max flow)
by
HCPC: 北海道大学競技プログラミングサークル
PDF
『データ解析におけるプライバシー保護』勉強会 秘密計算
by
MITSUNARI Shigeo
PDF
ブロックチェーン系プロジェクトで着目される暗号技術
by
MITSUNARI Shigeo
PDF
協調フィルタリング入門
by
hoxo_m
PDF
明日使えないすごいビット演算
by
京大 マイコンクラブ
PPTX
SSII2020SS: 微分可能レンダリングの最新動向 〜「見比べる」ことによる3次元理解 〜
by
SSII
PDF
暗号化したまま計算できる暗号技術とOSS開発による広がり
by
MITSUNARI Shigeo
PPTX
DockerコンテナでGitを使う
by
Kazuhiro Suga
PDF
勉強か?趣味か?人生か?―プログラミングコンテストとは
by
Takuya Akiba
PDF
Pythonによる黒魔術入門
by
大樹 小倉
PDF
Word2vecの理論背景
by
Masato Nakai
PDF
プログラムを高速化する話
by
京大 マイコンクラブ
PDF
方策勾配型強化学習の基礎と応用
by
Ryo Iwaki
機械学習による統計的実験計画(ベイズ最適化を中心に)
by
Kota Matsui
楕円曲線入門トーラスと楕円曲線のつながり
by
MITSUNARI Shigeo
プログラミングコンテストでのデータ構造 2 ~平衡二分探索木編~
by
Takuya Akiba
[DL輪読会]Deep Learning 第15章 表現学習
by
Deep Learning JP
Union find(素集合データ構造)
by
AtCoder Inc.
基礎線形代数講座
by
SEGADevTech
プログラミングコンテストでのデータ構造
by
Takuya Akiba
最大流 (max flow)
by
HCPC: 北海道大学競技プログラミングサークル
『データ解析におけるプライバシー保護』勉強会 秘密計算
by
MITSUNARI Shigeo
ブロックチェーン系プロジェクトで着目される暗号技術
by
MITSUNARI Shigeo
協調フィルタリング入門
by
hoxo_m
明日使えないすごいビット演算
by
京大 マイコンクラブ
SSII2020SS: 微分可能レンダリングの最新動向 〜「見比べる」ことによる3次元理解 〜
by
SSII
暗号化したまま計算できる暗号技術とOSS開発による広がり
by
MITSUNARI Shigeo
DockerコンテナでGitを使う
by
Kazuhiro Suga
勉強か?趣味か?人生か?―プログラミングコンテストとは
by
Takuya Akiba
Pythonによる黒魔術入門
by
大樹 小倉
Word2vecの理論背景
by
Masato Nakai
プログラムを高速化する話
by
京大 マイコンクラブ
方策勾配型強化学習の基礎と応用
by
Ryo Iwaki
Viewers also liked
PDF
「ベータ分布の謎に迫る」第6回 プログラマのための数学勉強会 LT資料
by
Ken'ichi Matsui
PPTX
圏論とHaskellは仲良し
by
ohmori
PPTX
Riemann球面に内接する直方体[第四回日曜数学会]
by
Yuto Horikawa
PDF
【展開用】日曜数学会 Sinc関数の積分について
by
和人 桐ケ谷
PDF
nichiyou vol.4
by
tsu nuts
PPTX
Poincare embeddings for Learning Hierarchical Representations
by
Tatsuya Shirakawa
PPTX
かんたんベジェ曲線
by
Yu(u)ki IWABUCHI
PDF
ベルヌーイ数を割る素数 - 第4回 #日曜数学会
by
Junpei Tsuji
PDF
実践Scalaでペアノの公理
by
Yasuki Okumura
PDF
SwiftでRiemann球面を扱う
by
hayato iida
PDF
最大公約数に関するささやかな知見
by
ayatsuka
PPTX
Packing
by
Tatsuki SHIMIZU
PPTX
加法よりも低レベルな演算を考える
by
Yu(u)ki IWABUCHI
PPTX
営業会社の開発組織を成長させるためにやったこと
by
Daisuke Kotaki
PPTX
Enigmaの解説
by
丈 宮本
PDF
第4回日曜数学会スライド by まこぴ~
by
Makoto Kohno
「ベータ分布の謎に迫る」第6回 プログラマのための数学勉強会 LT資料
by
Ken'ichi Matsui
圏論とHaskellは仲良し
by
ohmori
Riemann球面に内接する直方体[第四回日曜数学会]
by
Yuto Horikawa
【展開用】日曜数学会 Sinc関数の積分について
by
和人 桐ケ谷
nichiyou vol.4
by
tsu nuts
Poincare embeddings for Learning Hierarchical Representations
by
Tatsuya Shirakawa
かんたんベジェ曲線
by
Yu(u)ki IWABUCHI
ベルヌーイ数を割る素数 - 第4回 #日曜数学会
by
Junpei Tsuji
実践Scalaでペアノの公理
by
Yasuki Okumura
SwiftでRiemann球面を扱う
by
hayato iida
最大公約数に関するささやかな知見
by
ayatsuka
Packing
by
Tatsuki SHIMIZU
加法よりも低レベルな演算を考える
by
Yu(u)ki IWABUCHI
営業会社の開発組織を成長させるためにやったこと
by
Daisuke Kotaki
Enigmaの解説
by
丈 宮本
第4回日曜数学会スライド by まこぴ~
by
Makoto Kohno
Similar to 暗号文のままで計算しよう - 準同型暗号入門 -
PDF
楕円曲線と暗号
by
MITSUNARI Shigeo
PDF
ペアリングベースの効率的なレベル2準同型暗号(SCIS2018)
by
MITSUNARI Shigeo
PDF
暗号技術入門 秘密の国のアリス 総集編
by
京大 マイコンクラブ
PDF
範囲証明つき準同型暗号とその対話的プロトコル
by
MITSUNARI Shigeo
PDF
新しい暗号技術
by
MITSUNARI Shigeo
PDF
暗認本読書会13 advanced
by
MITSUNARI Shigeo
PDF
FHE in Action
by
文杰 陆
PDF
レベル2準同型暗号の平文バイナリ制約を与えるコンパクトな非対話ゼロ知識証明
by
MITSUNARI Shigeo
PDF
数式をnumpyに落としこむコツ
by
Shuyo Nakatani
PDF
ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用
by
MITSUNARI Shigeo
PDF
[Basic 14] 暗号について / RSA 暗号 / 楕円曲線暗号
by
Yuto Takei
PDF
Proof summit2014mizar
by
Alcor80UMa
PPT
4 Info Theory
by
melvincabatuan
PPT
Provable Security1
by
Satoshi Hada
ODP
Mazekoze2
by
ume doblock
PDF
CRYPT+YOU, UNDERSTAND TODAY!
by
inaz2
PPTX
witchs_key_party.pptx
by
Taikyaki 8926
PPT
Provable Security3
by
Satoshi Hada
KEY
Summer seminar
by
Eita Sugimoto
PPT
3 Info Theory
by
melvincabatuan
楕円曲線と暗号
by
MITSUNARI Shigeo
ペアリングベースの効率的なレベル2準同型暗号(SCIS2018)
by
MITSUNARI Shigeo
暗号技術入門 秘密の国のアリス 総集編
by
京大 マイコンクラブ
範囲証明つき準同型暗号とその対話的プロトコル
by
MITSUNARI Shigeo
新しい暗号技術
by
MITSUNARI Shigeo
暗認本読書会13 advanced
by
MITSUNARI Shigeo
FHE in Action
by
文杰 陆
レベル2準同型暗号の平文バイナリ制約を与えるコンパクトな非対話ゼロ知識証明
by
MITSUNARI Shigeo
数式をnumpyに落としこむコツ
by
Shuyo Nakatani
ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用
by
MITSUNARI Shigeo
[Basic 14] 暗号について / RSA 暗号 / 楕円曲線暗号
by
Yuto Takei
Proof summit2014mizar
by
Alcor80UMa
4 Info Theory
by
melvincabatuan
Provable Security1
by
Satoshi Hada
Mazekoze2
by
ume doblock
CRYPT+YOU, UNDERSTAND TODAY!
by
inaz2
witchs_key_party.pptx
by
Taikyaki 8926
Provable Security3
by
Satoshi Hada
Summer seminar
by
Eita Sugimoto
3 Info Theory
by
melvincabatuan
More from MITSUNARI Shigeo
PDF
BLS署名の実装とその応用
by
MITSUNARI Shigeo
PDF
集約署名
by
MITSUNARI Shigeo
PDF
私とOSSの25年
by
MITSUNARI Shigeo
PDF
暗認本読書会12
by
MITSUNARI Shigeo
PDF
暗認本読書会11
by
MITSUNARI Shigeo
PDF
Intro to SVE 富岳のA64FXを触ってみた
by
MITSUNARI Shigeo
PDF
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法
by
MITSUNARI Shigeo
PDF
暗認本読書会6
by
MITSUNARI Shigeo
PDF
暗認本読書会7
by
MITSUNARI Shigeo
PDF
暗認本読書会9
by
MITSUNARI Shigeo
PDF
暗認本読書会10
by
MITSUNARI Shigeo
PDF
Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化
by
MITSUNARI Shigeo
PDF
暗認本読書会4
by
MITSUNARI Shigeo
PDF
WebAssembly向け多倍長演算の実装
by
MITSUNARI Shigeo
PDF
暗認本読書会5
by
MITSUNARI Shigeo
PDF
HPC Phys-20201203
by
MITSUNARI Shigeo
PDF
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
by
MITSUNARI Shigeo
PDF
暗認本読書会8
by
MITSUNARI Shigeo
PDF
ゆるバグ
by
MITSUNARI Shigeo
PDF
LazyFP vulnerabilityの紹介
by
MITSUNARI Shigeo
BLS署名の実装とその応用
by
MITSUNARI Shigeo
集約署名
by
MITSUNARI Shigeo
私とOSSの25年
by
MITSUNARI Shigeo
暗認本読書会12
by
MITSUNARI Shigeo
暗認本読書会11
by
MITSUNARI Shigeo
Intro to SVE 富岳のA64FXを触ってみた
by
MITSUNARI Shigeo
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法
by
MITSUNARI Shigeo
暗認本読書会6
by
MITSUNARI Shigeo
暗認本読書会7
by
MITSUNARI Shigeo
暗認本読書会9
by
MITSUNARI Shigeo
暗認本読書会10
by
MITSUNARI Shigeo
Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化
by
MITSUNARI Shigeo
暗認本読書会4
by
MITSUNARI Shigeo
WebAssembly向け多倍長演算の実装
by
MITSUNARI Shigeo
暗認本読書会5
by
MITSUNARI Shigeo
HPC Phys-20201203
by
MITSUNARI Shigeo
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
by
MITSUNARI Shigeo
暗認本読書会8
by
MITSUNARI Shigeo
ゆるバグ
by
MITSUNARI Shigeo
LazyFP vulnerabilityの紹介
by
MITSUNARI Shigeo
暗号文のままで計算しよう - 準同型暗号入門 -
1.
暗号文のままで計算しよう 準同型暗号入門 第6回プログラマのための数学勉強会 2016/3/19 光成滋生
2.
• 準同型暗号とは何か • 加法準同型暗号のデモ •
楕円ElGamal暗号 • 完全準同型暗号 • その原理の雰囲気の紹介 • 『クラウドを支えるこれからの暗号技術』 • 公開鍵暗号の最先端応用技術・理論 • 準同型暗号が載ってる和書は現時点で本書のみ • 数学成分高め • https://herumi.github.io/ango/ 概要 2/39
3.
• 光成滋生(@herumi) • @IT連載記事「クラウド時代の暗号化技術論」 •
http://www.atmarkit.co.jp/ait/series/1990/ • CODE BLUE2015 • Excelのパスワード暗号化にあったバグの話 • http://www.slideshare.net/herumi/ms-office-54510219 • 属性ベース暗号の実装でIEEE trans. on Computers 2014採録 • 『パターン認識と機械学習の学習』(PRML副読本) • Toypcryptの解読で経産省の情報化月間推進会議議長表彰 • IPA未踏スーパークリエータ • 午後のこ~だ 自己紹介 3/39
4.
• cybozu.com • グループウェアのクラウドサービス(
1万3000社以上) • 自前インフラ • We are hiring! • アーキテクチャ刷新プロジェクト「Neco」の紹介 • http://blog.cybozu.io/entry/2016/03/11/080000 • チームワークあふれる社会を創る • http://cybozu.co.jp/company/job/recruitment/ • 3/30 第5期サイボウズ・ラボユース成果報告会 • 学生のオープンソースソフトウェアの開発をサポート • https://atnd.org/events/75830 会社の紹介 4/39
5.
• 準同型暗号の動機 • 準同型暗号とは何か •
加法準同型暗号のデモ 目次 5/39
6.
• 暗号文から平文の情報が得られない • ごちゃごちゃにかき混ぜる •
ホワイトノイズと区別できない • 圧縮もできない • 何もできない 暗号化 秘密の文章 暗号化 6/39
7.
• クライアントで暗号化すると • クラウドは単なるデータ置き場 •
検索も計算も何もできない • クラウドのCPUパワーを活かせない • 暗号化したまま処理したい! クラウドにおけるモチベーション 7/39
8.
• 暗号化したまま計算できる暗号方式 • ひっくり返したコップの中のボールが移動する テーブルマジックみたいなの 準同型暗号(Homomorphic
Encryption) 8/39
9.
• 暗号化された身長・体重の平均値をクラウド上で計算 • 暗号化された2個のベクトルの近さ(内積)を計算 •
マッチング, 集合演算, ロジスティック回帰 etc. • 各社・組織注力してるジャンル • http://www.hitachi.co.jp/rd/portal/contents/story/searchable_encryption/ • http://www.nict.go.jp/press/2016/01/14-1.html • http://pr.fujitsu.com/jp/news/2016/02/15.html 準同型暗号があると 9/39
10.
楕円ElGamalを用いた加法準同型暗号の デモ 10/39
11.
• 楕円ElGamalを用いた加法準同型暗号 • ここの「楕円」は「楕円曲線」 言葉の説明 11/39
12.
• 楕円 • 曲線 楕円曲線とは ではない でもない 12/39
13.
• 浮輪の表面(トーラス) • 複素数的な意味で曲線(1次元)なので実数的には2次元 •
この上で計算(足し算)する • どうやって? 楕円曲線とは 13/39
14.
• 長方形になる 楕円曲線を切り開くと 14/39
15.
• 長方形上の2個のベクトルを足す • 𝑂,
𝑃, 𝑄, 𝑃 + 𝑄が平行四辺形になる • 足してはみ出たら反対側に回り込む 楕円曲線上の足し算 𝑃 𝑂 𝑄 𝑃 + 𝑄 𝑃 + 𝑄 15/39
16.
• ベクトルの向きを反対にしたら−𝑃 楕円曲線上の引き算 𝑃 𝑂 −𝑃 −𝑃 16/39
17.
• 一歩が𝑃のベクトルを延ばし続ける • 端に来ても反対側から出て延ばし続ける 点を何倍にもする 𝑃 𝑂 2𝑃 3𝑃 4𝑃5𝑃
10100 𝑃 4𝑃 17/39
18.
• 点𝑃を𝑛倍するのは簡単だが、 𝑛倍された点𝑛𝑃から𝑛を求めるのは難しい • 楕円離散対数問題(ECDLP)が困難であるという 楕円曲線の重要な性質 𝑥,
𝑃 𝑄 = 𝑥𝑃 容易 困難 18/39
19.
• パラメータ設定 • 楕円曲線上の点𝑃と秘密の整数𝑥をとり𝑄
= 𝑥𝑃とする • 秘密鍵 : 𝑥 • 公開鍵 : (𝑃, 𝑄) • 他人は𝑃と𝑄から𝑥は求められない(ECDLPが困難) 楕円ElGamal暗号(1/3) 19/39
20.
• 暗号化 • メッセージ𝑀(楕円曲線の点)に対して乱数𝑟を選ぶ •
公開鍵 𝑃, 𝑄 に対して 𝐸𝑛𝑐 𝑀 = 𝑟𝑃, 𝑀 + 𝑟𝑄 • 他人は𝑟𝑃から𝑟を求められない 楕円ElGamal暗号(2/3) 20/39
21.
• 復号 • 暗号文𝑐
= (𝐶1, 𝐶2)に対して秘密鍵𝑥を使って 𝐷𝑒𝑐 𝑐 = 𝐶2 − 𝑥𝐶1 • 元に戻ることの確認 • 𝑄 = 𝑥𝑃 • 𝐸𝑛𝑐 𝑀 = 𝐶1, 𝐶2 = (𝑟𝑃, 𝑀 + 𝑟𝑄)なので 𝐷𝑒𝑐 𝐸𝑛𝑐 𝑀 = 𝑀 + 𝑟𝑄 − 𝑥 𝑟𝑃 = 𝑀 + 𝑟𝑥𝑃 − 𝑥𝑟𝑃 = 𝑀 楕円ElGamal暗号(3/3) 21/39
22.
• 楕円曲線って「𝑦2 =
𝑥3 + 𝑎𝑥 + 𝑏」じゃないの? • トーラスと𝑦2 = 𝑥3 + 𝑎𝑥 + 𝑏には深遠な関係がある • 楕円曲線入門「トーラスと楕円曲線のつながり」 • http://www.slideshare.net/herumi/ss-58815597 • https://twitter.com/herumi/status/703839001107533824 補足 𝑃 𝑄 𝑃 + 𝑄 22/39
23.
• 楕円ElGamal暗号を用いた加法準同型暗号 • 残りは「加法準同型暗号」 •
暗号化したまま足し算ができる暗号 • どうやって? ここまで 23/39
24.
• 二つの暗号文を用意する • 𝐸𝑛𝑐
𝑀1 = 𝑟1 𝑃, 𝑀1 + 𝑟1 𝑄 • 𝐸𝑛𝑐 𝑀2 = (𝑟2 𝑃, 𝑀2 + 𝑟2 𝑄) • 成分ごとに足してみる • 𝐸𝑛𝑐 𝑀1 + 𝐸𝑛𝑐 𝑀2 = ( 𝑟1 + 𝑟2 𝑃, 𝑀1 + 𝑀2 + 𝑟1 + 𝑟2 𝑄) • 𝑟′ = 𝑟1 + 𝑟2とすると • 𝐸𝑛𝑐 𝑀1 + 𝐸𝑛𝑐 𝑀2 = (𝑟′ 𝑃, 𝑀1 + 𝑀2 + 𝑟′ 𝑄) • 𝑀1 + 𝑀2を暗号化したものと同じ形! • 𝐸𝑛𝑐 𝑀1 + 𝐸𝑛𝑐 𝑀2 = 𝐸𝑛𝑐(𝑀1 + 𝑀2) • この性質を加法準同型という 暗号文を足してみる 24/39
25.
• 楕円曲線ライブラリ(開発中) • https://github.com/herumi/mcl •
先ほどのデモのコード • https://github.com/herumi/add_he 実装 25/39
26.
• かなり頑張ってます(for Win/Linux/Mac) •
Xbyak(C++による自作x86/x64 JITアセンブラ)による最適化 • https://github.com/herumi/xbyak • 注意)C++のコードであってinlineアセンブラではない • ペアリング暗号の世界最速実装 • https://github.com/herumi/ate-pairing 実装 26/39
27.
• x64以外はLLVM IR(LLVMのアセンブラ)で記述 •
32/64ビットARMでも動く(はず) • 単純なコードは手書きアセンブラの速度に匹敵 • 複雑なcarry演算を伴うものはまだ手書きが強い LLVM 27/39
28.
• 完全準同型暗号とは何か • 完全準同型暗号の原理の雰囲気 •
ブートストラップ 目次 28/39
29.
• 何が完全? • 数学には同型という言葉があるがそれとは違う •
「準同型」は数学用語 • 「完全」は暗号?用語 • 数学用語なら環準同型 • 足し算だけ、掛け算だけができる暗号は 2000年までに構成されていた • 足し算と掛け算の両方ができる暗号が長年の夢 • 2009年Gentryが達成 • ただし当初は1bitの平文の暗号文が1GBぐらい • 現在さかんに改良されている 完全準同型暗号(Fully HE) 29/39
30.
• 0と1の世界で足し算はxor, 掛け算はandに相当 •
足し算(xor) • 掛け算(and) • 両方できると任意の関数を構成できる(完全) • 関数𝑓に対して𝑓 𝐸𝑛𝑐 𝑚 = 𝐸𝑛𝑐(𝑓 𝑚 ) 0と1 + 0 1 0 0 1 1 1 0 × 0 1 0 0 0 1 0 1 30/39
31.
• 𝑛 ×
𝑚行列𝐴, 𝑚次元ベクトル𝑏が与えられたときに 𝐴𝑠 = 𝑏となる𝑛次元ベクトル𝑠を求めよ • これは容易 ざっくりとした原理の説明 𝑛 𝐴𝑚 𝑠 = 𝑏𝑛 𝑚 31/39
32.
• 小さい値のノイズ𝑒が入ると • 𝐴,
𝑏が与えられたときに𝐴𝑠 + 𝑒 = 𝑏となる𝑠, 𝑒を求めよ • とても難しい • 秘密の値を知ってる人は𝑒を除去できるが 他人はできない LWE(Learning with Errors)問題 𝑛 𝐴𝑚 𝑠 = 𝑏𝑛 𝑚+ 𝑒 32/39
33.
• 暗号文は「平文𝑚の情報」+「小さいノイズ」の形 • 「平文𝑚の情報」は𝑚そのものではないが詳細は略 •
楕円曲線は使わない • 秘密鍵を知っている人は𝑚を取り出せるが他人は無理 • LWE問題が根拠 • ノイズを除去する方法も今回は省略 • 2個の暗号文を考える • 𝑐1 = 𝑚1 + 𝑒1, 𝑐2 = 𝑚2 + 𝑒2 準同型の雰囲気(注意:原理ではない) 𝑚1 𝑒1 𝑚2 𝑒2 33/39
34.
• 2個の暗号文を足してみる • 𝑐1
= 𝑚1 + 𝑒1, 𝑐2 = 𝑚2 + 𝑒2 • 足すと: 𝑐1 + 𝑐2 = 𝑚1 + 𝑚2 + (𝑒1 + 𝑒2) • これは「𝑚1 + 𝑚2の情報」+「ノイズ」の形 • 暗号文から𝑚1 + 𝑚2を取り出せる • 加法準同型! 加法準同型 𝑚1 𝑚2 𝑒1 + 𝑒2 34/39
35.
• 2個の暗号文を掛けてみる • 𝑐1
= 𝑚1 + 𝑒1, 𝑐2 = 𝑚2 + 𝑒2 • 𝑐1 𝑐2 = 𝑚1 + 𝑒1 𝑚2 + 𝑒2 = 𝑚1 𝑚2 + 𝑚1 𝑒2 + 𝑚2 𝑒1 + 𝑒1 𝑒2 = 𝑚1 𝑚2 + 𝑒′ • 𝑒1, 𝑒2が𝑚1, 𝑚2に比べて十分小さければ 𝑒′ = 𝑚1 𝑒2 + 𝑚2 𝑒1 + 𝑒1 𝑒2は𝑚1 𝑚2に比べて小さい • 𝑐1 𝑐2は「𝑚1 𝑚2の情報」+「ノイズ」の形 • 暗号文から𝑚1 𝑚2を取り出せる • 乗法準同型! • 加法と乗法の両方ができるので完全準同型暗号 乗法準同型 35/39
36.
• これって何度もやってるとノイズが増えない? • yes •
「小さいノイズ」ではなくなって復号に失敗する • 演算回数に上限がある • 特に掛け算が辛い • Somewhat HE(ちょっとだけ完全準同型?)と言う • ただしSHEでも十分役に立つケースは多い • 例:ベクトルの内積𝑎1 𝑏1 + 𝑎2 𝑏2 + ⋯ + 𝑎 𝑛 𝑏 𝑛 • 掛け算一度だけの後、足すだけなのでノイズは増えにくい 疑問 36/39 𝑒 範囲を越えると 復号できない 𝑚
37.
• SHEからFHEへ • 回数制限のないHEの構成手法 •
ノイズのある暗号文を 「暗号化したまま復号する回路」に入れて きれいな暗号文にする • おまえは何を言っているんだ • http://people.csail.mit.edu/shaih/pubs/3.FHE.pdf p.7より引用 ブートストラップ(1/2) 𝐸𝑛𝑐 𝑚 + 𝑒 𝐸𝑛𝑐 𝑚 37/39
38.
• ノイズが増えてきた暗号文をc =
𝐸𝑛𝑐 𝑚 + 𝑒とする • 秘密鍵𝑠を使って復号すると𝐷𝑒𝑐 𝑠, 𝑐 = 𝑚 • ここで𝑓𝑐 𝑥 = 𝐷𝑒𝑐(𝑥, 𝑐)としてみる • 𝑓𝑐は𝑠を入れると𝑚がでる関数 : 𝑓𝑐 𝑠 = 𝐷𝑒𝑐 𝑠, 𝑐 = 𝑚 • 𝑓𝑐をSHEを使って実装する:𝑓𝑐 • 𝑓𝑐は「暗号化したまま復号する」関数 • 𝑓𝑐に「秘密鍵𝑠の暗号文」𝐸𝑛𝑐(𝑠)を入れると 𝑓𝑐 𝐸𝑛𝑐 𝑠 = 𝐸𝑛𝑐 𝑓𝑐 𝑠 = 𝐸𝑛𝑐(𝑚) • ノイズが無くなった! • ブートストラップで回数制限を取り除ける→完全準同型へ • 暗号化したままAESを計算する実装もある • おまえは何を(略 ブートストラップ(2/2) 38/39
39.
• 準同型暗号を使うと暗号化したまま計算できる • 加法準同型暗号の一つに楕円ElGamal暗号があり 十分実用的 •
完全準同型は現在活発に研究されている • 一部制限のあるSHEの様々な応用が提案されている まとめ 39/39
Download