SlideShare una empresa de Scribd logo
1 de 54
Descargar para leer sin conexión
MS Officeファイル暗号化のマスター鍵
を利用したバックドアとその対策
2015/10/28, 29 CODE BLUE
Mitsunari shigeo(@herumi)
• Excelのバグによるパスワードを回避した解読
• 2015/10/13のWindows Updateで改修済み(MS15-110)
• パスワード暗号化フォーマットの強度比較
• バグをみつけたきっかけ
• バックドア対策の信頼できるフォーマットの提案
概略
2/54
• サイボウズ・ラボで
クラウドセキュリティ関連のR&D
• 『クラウドを支えるこれからの暗号技術』(2015)
• 内容 : 前方秘匿性, 楕円曲線暗号,
IDベース暗号, 属性ベース暗号, 関数型暗号,
準同型暗号, ゼロ知識証明など
• http://herumi.github.io/ango/
• @ITで「クラウド時代の暗号化技術論」連載
• ペアリング暗号の世界最速実装(2013)
• https://github.com/herumi/ate-pairing
• Software implementation of an Attribute-Based
Encryption Scheme, IEEE trans on computers, 2014
Mitsunari Shigeo(@herumi)
3/54
• リクルートマーケティングパートナーズ技術フェロー
• 高知工業高等専門学校 客員准教授
• CODE BLUE review board
• OWASP Japan advisory board
• SECCON 実行委員長
• Shibuya Perl Mongers リーダー
• Microsoft MVP Developer Security in 2008
• 山内奨励賞「x86 JITコンパイラ上で任意のコードを実行する方法」
• 完全日本語訳+解説「ECMA-262 Edition 5.1を読む」(2013)
• コンピュータセキュリティシンポジウム2013 CSS×2.0一等星
Takesako Yoshinori (@takesako)
4/54
• パスワード暗号化フォーマットの強度比較
• デモ
• 問題となる状況
• MS Officeファイルフォーマット
• バグを見つけたきっかけ
• バックドア対策の信頼できるフォーマットの提案
目次
5/54
• パスワード暗号化フォーマットの強度比較
• パスワード暗号化の方法紹介
• 解読ツールの紹介
• 解読にかかる時間の比較
• MS Officeファイルフォーマットはとても強い
• デモ
• 問題となる状況
• MS Officeファイルフォーマット
• バグを見つけたきっかけ
• バックドア対策の信頼できるフォーマットの提案
目次
6/54
• 一番単純なもの
• 入力 : 𝑝𝑎𝑠𝑠 : パスワード, 𝑚 : 平文
1. 𝑆 𝐾 = 𝐻𝑎𝑠ℎ 𝑝𝑎𝑠𝑠
2. 𝑐 = 𝐸𝑛𝑐 𝑆 𝐾, 𝑚
3. 出力 : 𝑐
• 問題点
• パスワードが同じなら𝑆 𝐾はいつも同じ
パスワード暗号化
𝑚
𝑝𝑎𝑠𝑠
𝑆 𝐾
𝐻𝑎𝑠ℎ
𝐸𝑛𝑐
𝑚𝑝𝑎𝑠𝑠にのみ依存
7/54
• パスワード探索ツール
• http://hashcat.net/oclhashcat/
• GPGPUベースで非常に高速
hashcat
8/54
• 1秒あたりの試行回数
• SHA1 : 4.2 × 1010回/秒 on 8x NVidia Titan X
• SHA512 : 5.2 × 109回/秒
• 𝐻𝑎𝑠ℎ値から元のパスワードを特定するのにかかる時間
• 𝑝𝑎𝑠𝑠 ∶ 一つの文字を[a-zA-Z0-9]の62文字で8文字とする
• SHA1なら628
4.2 × 1010
= 1時間27分で総当たり可能
hashcatの性能
9/54
• saltを追加する
1. 𝑠𝑎𝑙𝑡をランダムに生成する
2. 𝑆 𝐾 = 𝐻𝑎𝑠ℎ 𝑠𝑎𝑙𝑡, 𝑝𝑎𝑠𝑠
3. 𝑖𝑣 : 初期化ベクトル
4. c = 𝐸𝑛𝑐(𝑖𝑣, 𝑆 𝐾, 𝑚)
• 同じパスワードでも𝑆 𝐾は異なる
• 𝐻𝑎𝑠ℎ 𝑠𝑎𝑙𝑡1 + ′abc′ ≠ 𝐻𝑎𝑠ℎ(𝑠𝑎𝑙𝑡2 + ′abc′)
• レインボーテーブル攻撃に対して耐性が増える
より安全なフォーマット
𝑝𝑎𝑠𝑠
𝐻𝑎𝑠ℎ
𝑠𝑎𝑙𝑡
𝑆 𝐾 𝑚
𝐸𝑛𝑐
𝑚
𝑖𝑣
10/54
• ハッシュをたくさん繰り返す
• 𝑑1 = 𝐻𝑀𝐴𝐶(𝑝𝑎𝑠𝑠, 𝑠𝑎𝑙𝑡)
• 𝑛 is iteration count
• for 𝑖 = 1 to 𝑛 − 1:
• 𝑑𝑖+1 = 𝐻𝑀𝐴𝐶(𝑑𝑖, 𝑠𝑎𝑙𝑡)
• 攻撃能力が1/𝑛になる
• PKCS#5(RFC 2898)
• パスワードベースの暗号仕様
• PBKDF2(password based key
derivation functions)
• ZIPなどで使われている
鍵ストレッチング
𝑝𝑎𝑠𝑠
𝐻𝑀𝐴𝐶
𝑑𝑖
𝑆 𝐾 = 𝑑1 ⊕ 𝑑2 ⊕ ⋯
𝑛
𝑠𝑎𝑙𝑡
𝑝𝑎𝑠𝑠
𝐻𝑀𝐴𝐶
𝑑𝑖+1
11/54
• 別のGPUベースのパスワード探索ツール
• http://passcovery.com/
Passcovery
12/54
• Passcoveryによる8バイトパスワードの全数探索
• on GeForce GTX860M(640SP/ALU)@1019MHz
• Office 2013 docxは強い
• 最近の動向はメモリを酷使するタイプのフォーマット
• Argon2が2015/7/20にパスワードハッシュコンペで優勝
攻撃にかかる時間の比較
File format # of tries/sec hash stretching days
ZIP(96-bit) 230000000 none 10 days
Office2003 doc 11000000 ? 220 days
ZIP(256-bit AES) 370000 1000 x HMAC SHA1 18 years
Office2007 docx 16000 50000 x SHA1 430 years
Office2010 docx 8100 100000 x SHA1 854 years
Office2013 docx 337 100000 x SHA512 20000 years
13/54
• パスワード暗号化フォーマットの強度比較
• デモ
• MS Office暗号化ファイルの概要
• 暗号鍵生成
• 自作ツールの紹介
• デモ
• 問題となる状況
• MS Officeファイルフォーマット
• バグを見つけたきっかけ
• バックドア対策の信頼できるフォーマットの提案
目次
14/54
• [MS-OFFCRYPTO]
• Officeドキュメントの暗号化の構造
• [MS-CFB]
• Compound File Binaryファイルフォーマット
MS Officeドキュメント
15/54
• ハッシュアルゴリズム𝐻(𝑝𝑎𝑠𝑠, 𝑠𝑎𝑙𝑡)
• ℎ0 = 𝐻𝑎𝑠ℎ(𝑠𝑎𝑙𝑡, 𝑝𝑎𝑠𝑠)
• 𝑛 : 繰り返し回数
• for 𝑖 = 1 to 𝑛:
ℎ𝑖 = 𝐻𝑎𝑠ℎ < 𝑖 > +ℎ𝑖−1
• < 𝑖 > : 4バイトリトルエンディアン
MS Officeの暗号鍵生成
𝑝𝑎𝑠𝑠
ℎ 𝑜
𝐻𝑎𝑠ℎ
𝑠𝑎𝑙𝑡
ℎ𝑖−1𝑖
𝐻𝑎𝑠ℎ
ℎ𝑖
𝑛
𝑆 𝐾 ≔ ℎ 𝑛
16/54
• 二段階の秘密鍵を使う
• 𝐻 : 前述のハッシュ関数
1. 𝑝𝑎𝑠𝑠と𝑠𝑎𝑙𝑡から秘密鍵𝑠を生成
2. 秘密鍵𝑆 𝐾を生成し𝑠で暗号化
3. 𝑆 𝐾で本体𝑚を暗号化
• 詳細は後述
• 二段階なのは鍵供託のため
• パスワードを忘れたとき
管理者が復号できる
• 𝑆 𝐾を管理者の公開鍵で暗号化
• デフォルトはオフ
MS Office Agile format
𝑚
𝑝𝑎𝑠𝑠
𝑆 𝐾
Enc by 𝑆 𝐾
𝑆 𝐾
𝑚
Enc by 𝑠
𝑠
𝐻
𝑠𝑎𝑙𝑡
17/54
• https://github.com/herumi/msoffice/
• MS Officeファイルの暗号化・復号ツール
• Windows/Linux両対応
• Office 2007~のOpenXMLに対応
• Office 2010~のAgile formatにも対応
• LibreOfficeはまだAgile formatに対応していない
• Agile formatの秘密鍵を指定できる
• ストレッチングの回数を指定できる
msoffice-crypt
18/54
demo
• パスワード"test"で暗号化
• パスワード"test"で復号
• パスワード無しで解読
使い方
"test"でeasy.xlsxを
復号して𝑆 𝐾を取得
パスワード無しで𝑆 𝐾を使ってcomplex.xlsxを解読
msoffice-crypt -d complex.xlsx -by easy.xlsx -p test
msoffice-crypt -e plain.xlsx encoded.xlsx –p test
msoffice-crypt -d encoded.xlsx decoded.xlsx –p test
20/54
• パスワード暗号化フォーマットの強度比較
• デモ
• 問題となる状況
• 何が起きたのか
• いくつかのシナリオ
• MS Officeファイルフォーマット
• バグを見つけたきっかけ
• バックドア対策の信頼できるフォーマットの提案
目次
21/54
• Excel 2010/2013はパスワードを更新して保存したと
き秘密鍵𝑆 𝐾を変更しない (Bug).
何が起きたのか
一つの秘密鍵𝑆 𝐾でこれらのファイルを解読できる
master file
with pass
with pass1
with pass2
with pass3
save as...
同じ秘密鍵𝑆 𝐾を持ってる
22/54
• 人事部
• 暗号化Excelの定型ファイルを用意する
• そのファイルに個人情報を書き込み、
各自のパスワードで保存して配布する
シナリオ1(給与明細の配信)
暗号化
定型ファイル 人事部
他人のファイルを
解読できる
23/54
• 所有者
• 定型ファイルを簡単なパスワードで保存
• 重要な情報を書いて強いパスワードで保存
• 攻撃者
• 簡単なパスワードを破って強いパスワードファイルを解読
シナリオ2(PCの紛失)
簡単なパスワード
への総当たり攻撃
強いパスワードで保存
社外秘を書く
こちらを解読
PC
24/54
• パスワード暗号化フォーマットの強度比較
• デモ
• 問題となる状況
• MS Officeファイルフォーマット
• 暗号化MS Officeファイルの構造詳細
• パスワードと秘密鍵の関係
• バグを見つけたきっかけ
• 改善案
目次
25/54
• 古いフォーマットと新しいフォーマット
• MS OLE2のヘッダは"D0 CF 11 E0"
MS Office暗号化フォーマットの種類
Office file type Format
doc, ppt, xls (old Office files) MS OLE2
plain docx, pptx, xlsx ZIP file of Open XML files
encrypted docx, pptx, xlsx MS OLE2 including a header
and an encrypted ZIP file
ZIP files (Open XML)
Enc(ZIP files)
AESで暗号化
header
通常のファイル
暗号化
26/54
• 一つのファイルの中にディレクトリ構造がある
暗号化MS Officeファイルの構造
root/
EncryptionPackage
EncryptionInfo
DataSpaces/
Version
DataSpaceMap
Transformation/
StrongEncryption
Transform/
Primary
DataSpaceInfo/
StrongEncryption
DataSpace
not used
暗号化されたZIPファイル本体
暗号化の情報
27/54
• standard暗号化 ~Office 2007
• バイナリフォーマット
• SHA-1のみ, spinCount(=# of iteration)は50000固定
• Agile暗号化 Office 2010~
• XmlEncryptionDescriptorを含む
• SHA-1, SHA256, ...をサポート
• spinCount可変
EncryptionInfoの種類
28/54
XmlEncryptionDescriptor
<encryption>
<keyData saltSize="16" blockSize="16" keyBits="256" hashSize="64"
cipherAlgorithm="AES" cipherChaining="ChainingModeCBC"
hashAlgorithm="SHA512" saltValue="..."/>
<dataIntegrity encryptedHmacKey="..." encryptedHmacValue="..."/>
<keyEncryptors><keyEncryptor
uri="http://schemas.microsoft.com/office/2006/keyEncryptor/password">
<p:encryptedKey spinCount="100000"
saltSize="16" blockSize="16" keyBits="256" hashSize="64" cipherAlgorithm="AES"
cipherChaining="ChainingModeCBC" hashAlgorithm="SHA512" saltValue="..."
encryptedVerifierHashInput="..."
encryptedVerifierHashValue="..."
encryptedKeyValue="..."/>
</keyEncryptor></keyEncryptors>
</encryption>
29/54
暗号化における変数の依存関係
generate
encryptedKey.saltValue
encryptedVerifierHashValue
encryptedVerifierHashInput
encryptedKeyValue
encryptedHmacKey
encryptedHmacValue
password
gen. secretKey
hash
EncryptionPackage
Enc(ZIP file)
ZIP file
gen.
keyData.saltValue
gen. verifierHashInput
verifierHashValue
gen.
HmacKey
hash
30/54
パスワードの正当性確認
generate
encryptedKey.saltValue
encryptedVerifierHashValue
encryptedVerifierHashInput
encryptedKeyValue
encryptedHmacKey
encryptedHmacValue
password
gen. secretKey
hash
EncryptionPackage
Enc(ZIP file)
ZIP file
gen.
keyData.saltValue
gen. verifierHashInput
verifierHashValue
gen.
HmacKey
hash
31/54
データの正当性確認
generate
encryptedKey.saltValue
encryptedVerifierHashValue
encryptedVerifierHashInput
encryptedKeyValue
encryptedHmacKey
encryptedHmacValue
password
gen. secretKey
hash
EncryptionPackage
Enc(ZIP file)
ZIP file
gen.
keyData.saltValue
gen. verifierHashInput
verifierHashValue
gen.
HmacKey
hash
32/54
暗号化に関する変数の依存関係
generate
encryptedKey.saltValue
encryptedVerifierHashValue
encryptedVerifierHashInput
encryptedKeyValue
encryptedHmacKey
encryptedHmacValue
password
gen. secretKey
hash
EncryptionPackage
Enc(ZIP file)
ZIP file
gen.
keyData.saltValue
gen. verifierHashInput
verifierHashValue
gen.
HmacKey
hash
秘密鍵は
パスワードと無関係
𝑐 = 𝐸𝑛𝑐(𝑆 𝐾, 𝑠𝑎𝑙𝑡, 𝑚)
33/54
• パスワード暗号化フォーマットの強度比較
• デモ
• 問題となる状況
• MS Officeファイルフォーマット
• バグを見つけたきっかけ
• 動機
• 暗号学的安全な擬似乱数の紹介
• 既存のバックドアの例
• MS Officeの鍵生成部をフックする
• バックドア対策の信頼できるフォーマットの提案
目次
34/54
• 正規のエンコーダ
• 𝑚の暗号化部
• 𝑆 𝐾がないと誰も(𝑠𝑎𝑙𝑡, 𝑐)を復号できない
• 𝑆 𝐾の生成を制御できればバックドアを作れる?
𝑠𝑎𝑙𝑡をランダム生成
𝑆 𝐾をランダム生成
𝑐 = 𝐸𝑛𝑐 𝑆 𝐾, 𝑠𝑎𝑙𝑡, 𝑚
動機
𝑚 (𝑠𝑎𝑙𝑡, 𝑐)
35/54
• 不正な(バックドアのある)エンコーダ
• 不正者Eveはマスター秘密鍵𝑋を準備する
• Eveは𝑋をエンコーダに埋め込む
• Eveは𝑋を使って𝑆 𝐾 = 𝐻 𝑋, 𝑠𝑎𝑙𝑡 を得て解読できる
• Eve以外はバックドアの存在が分からない
𝑆 𝐾を制御する
𝑚 (𝑠𝑎𝑙𝑡, 𝑐)
𝑠𝑎𝑙𝑡をランダム生成
𝑆 𝐾 = 𝐻 𝑋, 𝑠𝑎𝑙𝑡
𝑐 = 𝐸𝑛𝑐 𝑚 by (𝑠𝑎𝑙𝑡, 𝑆 𝐾)
Eve
𝑋
𝑆 𝐾
36/54
• 金曜、夕方5時
MS Officeで概念実証をやってみよう
光成さん,
MS Officeの秘密鍵生成部を
フックしてみてもらえませんか
やってみます
いつまで?
来週の月曜日
...
37/54
• PRG(Pseudo Random Generator)
• ゲームやシミュレーションでよく使われる
• MT(Mersenne Twister)が有名
• CSPRG(Cryptographically Secure PRG)
• 過去のビット列から次のビットを予測できない
• 秘密鍵の生成にはこれを使わなければならない
• MTはCSPRGではない
• 624x4バイトの出力を見ると内部状態が確定する
暗号論的擬似乱数生成器(CSPRG)
0 1 0 0 1 1 1 0 1 ?
known previous bits
CSPRG
next bit
38/54
• CSPRGを自分で実装するのは難しい
• 既にある実装を使うのがよい
• /dev/urandom on Linux
• CSPRG用ノンブロッキングデバイス
• エントロピーソース
• マウス、キーボード、disk I/O, 割り込み
CSPRGの例
39/54
• IntelのハードウェアによるCSPRG命令
• NIST SP 800-90A標準に適合
• チップ上の非決定的なエントロピーソースを利用
• 使いやすい
• 安全に使うのは難しい
• ビジーループの可能性があるのでリトライ上限を設けるべき
(極めてまれ)
rdrand
// uint64_t getRand();
getRand:
.lp:
rdrand rax // raxに乱数がセットされる
jnc .lp // 失敗すればやりなおし(まれ)
ret
40/54
• rdrandのみを変更することで/dev/urandomの出力を
固定化できた(kernel 3.8.13 by Taylor Hornby)
• rdrand() { return [edx] ^ 0x41414141; }
• 単一障害点回避のため他のエントロピーと混ぜるべき
もしrdrandにバックドアがあったら
41/54
• Microsoft CryptoAPIのCSPRG
• saltや秘密鍵の生成に使われる
• この関数をフックしてみよう
• MS Officeも秘密鍵を作るのにこの関数を使ってるだろう
• CryptGenRandomをいつも同じ値を返すようにすれば、
秘密鍵も固定化されるのでは?
• 自作の (とても古い) DLL injectionライブラリで試す
• ASLRのせいでうまく動かなかった
CryptGenRandom()
42/54
• MS Reserachが提供するWin32 APIフックライブラリ
• http://research.microsoft.com/en-us/projects/detours/
• 64-bit版は1,234,286円 (32-bit版は無料)
• 使い方
• フックしたいdllのソース
Detoursライブラリ (1/2)
BOOL HookCryptGenRandom(HCRYPTPROV, DWORD len, BYTE *p) {
memset(p, 'a', len);
return TRUE;
}
BOOL DllMain(HINSTANCE, DWORD reason, LPVOID) {
if (reason == DLL_PROCESS_ATTACH) {
orgFunc = DetourFindFunction("adapi32.dll", "CryptGenRandom");
DetourAttach(&orgFunc, HookCryptGenRandom);
...
43/54
• test.exe
• Detours付属のwithdll.exeで起動する
• CryptGenRandomをフックできた
• しかしMS Officeはこの関数を呼んでいなかった...
Detoursライブラリ (2/2)
int main() {
RandomGenerator rg; // wrapper of CryptGenRandom()
for (int i = 0; i < 3; i++) printf("%08x¥n", rg.get32());
}
>test.exe
812e1af0 // random
ad990e76
865cb964
>withdll.exe /d:hook.dll test.exe
61616161 // "aaaa"
61616161
61616161
44/54
• Excelをデバッガ上で起動して
読み込まれているDLLを眺めてみる
• rsaenh.dllという名前のDLLがあった
試行錯誤 (1/3)
45/54
• rsaenh.dllのシンボルを見てみる
• dumpbin /exports rsaenh.dll
• CPGenRandomって何?
試行錯誤 (2/3)
ordinal hint RVA name
1 0 0000230C CPAcquireContext
2 1 00003A80 CPCreateHash
3 2 0001CC1C CPDecrypt
4 3 0001DBC8 CPDeriveKey
...
11 A 00009A80 CPGenKey
12 B 00001D3C CPGenRandom
46/54
• CPxxx関数は旧式の関数
• Cryptxxxにリネームされた
• Cryptxxxは内部でCPxxxにジャンプする
• CPxxxをフックすればCryptxxxも自動的にフックされる
• ExcelはCPGenRandomを呼んでいた
• 目論見通り同じ秘密鍵を生成したようにみえる
• しかし
試行錯誤 (3/3)
>msoffice-crypt –psk easy.xlsx –p test
...
secretKey = 8BBE31319EA4CAB9F...33013EB8853F8C6A7F5
>msoffice-crypt –psk complex.xlsx –p testtest
...
secretKey = 8BBE31319EA4CAB9F...33013EB8853F8C6A7F5
47/54
• フックしなくても同じ秘密鍵を生成した
• MS Office Word, PowerPointでは異なる秘密鍵だった
• Excelのみの現象
• CPGenRandomのフック
• これだけでは秘密鍵生成のコントロールには不十分だった
• タイマー関係もフックしてみたがまだ足りない
• 詳細は未調査
Excelのバグだった
48/54
• パスワード暗号化フォーマットの強度比較
• デモ
• 問題となる状況
• MS Officeファイルフォーマット
• バグを見つけたきっかけ
• バックドア対策の信頼できるフォーマットの提案
• 既存ファイルのチェック
• バックドアを入れられないフォーマットの提案
目次
49/54
• このバグは10/13のWindows Updateで修正された
• https://technet.microsoft.com/ja-jp/library/security/ms15-110.aspx
• しかし既に生成されたファイルは修正されない
• msoffice-cryptで同じ秘密鍵を持っていないか確認
• 同じ秘密鍵を見つけたら再暗号化したほうがよい
手元のExcelファイルを調べよう
50/54
• 信頼できるフォーマットとは?
• MS Officeフォーマットは安全だが、
バックドアがないことを証明するのは難しい
• バイナリ提供される暗号化ツール全般にいえる問題
• (再掲) 不正なエンコーダ
• バックドアがないと証明できるフォーマットが欲しい
今後の課題
𝑚 𝑠𝑎𝑙𝑡, 𝑐 , 𝑆 𝐾
blackbox
encoder
𝑠𝑎𝑙𝑡 : 乱数
𝑋 : 不正なエンコーダ内のマスター秘密鍵
𝑆 𝐾 : 𝐻(𝑠𝑎𝑙𝑡, 𝑋)
Eve gets 𝑆 𝐾 by (𝑠𝑎𝑙𝑡, 𝑋)
51/54
• 𝑠𝑎𝑙𝑡もKDF(Key Derivation関数)で生成する
1. 𝑟0, 𝑟1を生成する
2. 𝑠𝑎𝑙𝑡 = 𝐻 𝑝𝑎𝑠𝑠, 𝑟0 , 𝐻 : KDF
3. 𝑆 𝐾 = 𝐻(𝑝𝑎𝑠𝑠, 𝑟1)
4. 𝑐 = 𝐸𝑛𝑐 𝑟0, 𝑟1, 𝑚 by 𝑠𝑎𝑙𝑡, 𝑆 𝐾
5. 出力: 𝑐, 𝑠𝑎𝑙𝑡
• フォーマットの確認
• 上記手順に従っていることを確認する
1. 𝑟0, 𝑟1, 𝑚 ≔ 𝐷𝑒𝑐 𝑐
2. 𝑠𝑎𝑙𝑡 =
?
𝐻(𝑝𝑎𝑠𝑠, 𝑟0)
3. 𝑆 𝐾 =
?
𝐻(𝑝𝑎𝑠𝑠, 𝑟1)
バックドア対策のフォーマット
𝑆 𝐾 𝑚
𝑚
𝑟0 𝑟1𝑝𝑎𝑠𝑠
𝐻 𝐻
𝑠𝑎𝑙𝑡
𝐸𝑛𝑐
52/54
• (𝑐, 𝑠𝑎𝑙𝑡)しか知らない第三者にとって
• 従来と同じ困難さ
• Eveにとって
• 𝑟0が分かっているとき𝑠𝑎𝑙𝑡から𝑝𝑎𝑠𝑠を
求めるのはKDFの困難さと同程度
• 𝑟0が固定だとユーザにすぐばれてしまう
• たとえば1万回エンコードして𝑟0が
みな異なっていれば安心?
• Eveが解読する困難さは1万倍になる
提案フォーマットの困難さ
𝑆 𝐾 𝑚
𝑚
𝑟0 𝑟1𝑝𝑎𝑠𝑠
𝐻 𝐻
𝑠𝑎𝑙𝑡
𝐸𝑛𝑐
53/54
• 秘密鍵を用いてパスワードを回避する解読
• Excelのバグで改修済み
• バックドア対策をした信頼できるフォーマットの提案
• 一般的なパスワードによる暗号化フォーマットに適用可能
まとめ
54/54

Más contenido relacionado

La actualidad más candente

メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろうKota Mizushima
 
初心者向けCTFのWeb分野の強化法
初心者向けCTFのWeb分野の強化法初心者向けCTFのWeb分野の強化法
初心者向けCTFのWeb分野の強化法kazkiti
 
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato KinugawaCODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato KinugawaCODE BLUE
 
Master Canary Forging: 新しいスタックカナリア回避手法の提案 by 小池 悠生 - CODE BLUE 2015
Master Canary Forging: 新しいスタックカナリア回避手法の提案 by 小池 悠生 - CODE BLUE 2015Master Canary Forging: 新しいスタックカナリア回避手法の提案 by 小池 悠生 - CODE BLUE 2015
Master Canary Forging: 新しいスタックカナリア回避手法の提案 by 小池 悠生 - CODE BLUE 2015CODE BLUE
 
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解MITSUNARI Shigeo
 
暗号文のままで計算しよう - 準同型暗号入門 -
暗号文のままで計算しよう - 準同型暗号入門 -暗号文のままで計算しよう - 準同型暗号入門 -
暗号文のままで計算しよう - 準同型暗号入門 -MITSUNARI Shigeo
 
定理証明支援系Coqについて
定理証明支援系Coqについて定理証明支援系Coqについて
定理証明支援系CoqについてYoshihiro Mizoguchi
 
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法Tetsutaro Watanabe
 
Apache tinkerpopとグラフデータベースの世界
Apache tinkerpopとグラフデータベースの世界Apache tinkerpopとグラフデータベースの世界
Apache tinkerpopとグラフデータベースの世界Yuki Morishita
 
Anaconda navigatorのアップデートが終わらないときの対処方法メモ
Anaconda navigatorのアップデートが終わらないときの対処方法メモAnaconda navigatorのアップデートが終わらないときの対処方法メモ
Anaconda navigatorのアップデートが終わらないときの対処方法メモayohe
 
セグメント?クラスタリング? ユーザーを分類し、サービスの改善に活かすポイント
セグメント?クラスタリング? ユーザーを分類し、サービスの改善に活かすポイントセグメント?クラスタリング? ユーザーを分類し、サービスの改善に活かすポイント
セグメント?クラスタリング? ユーザーを分類し、サービスの改善に活かすポイントNaoto Tamiya
 
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxShota Shinogi
 
今なら間に合う分散型IDとEntra Verified ID
今なら間に合う分散型IDとEntra Verified ID今なら間に合う分散型IDとEntra Verified ID
今なら間に合う分散型IDとEntra Verified IDNaohiro Fujie
 
katagaitai CTF勉強会 #5 Crypto
katagaitai CTF勉強会 #5 Cryptokatagaitai CTF勉強会 #5 Crypto
katagaitai CTF勉強会 #5 Cryptotrmr
 
SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介MITSUNARI Shigeo
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Modelscvpaper. challenge
 
ChatGPT 人間のフィードバックから強化学習した対話AI
ChatGPT 人間のフィードバックから強化学習した対話AIChatGPT 人間のフィードバックから強化学習した対話AI
ChatGPT 人間のフィードバックから強化学習した対話AIShota Imai
 
「日本語LaTeX」が多すぎる件について
「日本語LaTeX」が多すぎる件について「日本語LaTeX」が多すぎる件について
「日本語LaTeX」が多すぎる件についてTakayuki Yato
 

La actualidad más candente (20)

メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろう
 
初心者向けCTFのWeb分野の強化法
初心者向けCTFのWeb分野の強化法初心者向けCTFのWeb分野の強化法
初心者向けCTFのWeb分野の強化法
 
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato KinugawaCODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
 
Master Canary Forging: 新しいスタックカナリア回避手法の提案 by 小池 悠生 - CODE BLUE 2015
Master Canary Forging: 新しいスタックカナリア回避手法の提案 by 小池 悠生 - CODE BLUE 2015Master Canary Forging: 新しいスタックカナリア回避手法の提案 by 小池 悠生 - CODE BLUE 2015
Master Canary Forging: 新しいスタックカナリア回避手法の提案 by 小池 悠生 - CODE BLUE 2015
 
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解
 
暗号文のままで計算しよう - 準同型暗号入門 -
暗号文のままで計算しよう - 準同型暗号入門 -暗号文のままで計算しよう - 準同型暗号入門 -
暗号文のままで計算しよう - 準同型暗号入門 -
 
定理証明支援系Coqについて
定理証明支援系Coqについて定理証明支援系Coqについて
定理証明支援系Coqについて
 
私とOSSの25年
私とOSSの25年私とOSSの25年
私とOSSの25年
 
暗号技術入門
暗号技術入門暗号技術入門
暗号技術入門
 
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
 
Apache tinkerpopとグラフデータベースの世界
Apache tinkerpopとグラフデータベースの世界Apache tinkerpopとグラフデータベースの世界
Apache tinkerpopとグラフデータベースの世界
 
Anaconda navigatorのアップデートが終わらないときの対処方法メモ
Anaconda navigatorのアップデートが終わらないときの対処方法メモAnaconda navigatorのアップデートが終わらないときの対処方法メモ
Anaconda navigatorのアップデートが終わらないときの対処方法メモ
 
セグメント?クラスタリング? ユーザーを分類し、サービスの改善に活かすポイント
セグメント?クラスタリング? ユーザーを分類し、サービスの改善に活かすポイントセグメント?クラスタリング? ユーザーを分類し、サービスの改善に活かすポイント
セグメント?クラスタリング? ユーザーを分類し、サービスの改善に活かすポイント
 
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
 
今なら間に合う分散型IDとEntra Verified ID
今なら間に合う分散型IDとEntra Verified ID今なら間に合う分散型IDとEntra Verified ID
今なら間に合う分散型IDとEntra Verified ID
 
katagaitai CTF勉強会 #5 Crypto
katagaitai CTF勉強会 #5 Cryptokatagaitai CTF勉強会 #5 Crypto
katagaitai CTF勉強会 #5 Crypto
 
SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
 
ChatGPT 人間のフィードバックから強化学習した対話AI
ChatGPT 人間のフィードバックから強化学習した対話AIChatGPT 人間のフィードバックから強化学習した対話AI
ChatGPT 人間のフィードバックから強化学習した対話AI
 
「日本語LaTeX」が多すぎる件について
「日本語LaTeX」が多すぎる件について「日本語LaTeX」が多すぎる件について
「日本語LaTeX」が多すぎる件について
 

Similar a MS Officeファイル暗号化のマスター鍵を利用したバックドアとその対策

MSOfficeファイル暗号化のマスター鍵を利用したバックドアとその対策 by 光成滋生&竹迫良範
MSOfficeファイル暗号化のマスター鍵を利用したバックドアとその対策 by 光成滋生&竹迫良範MSOfficeファイル暗号化のマスター鍵を利用したバックドアとその対策 by 光成滋生&竹迫良範
MSOfficeファイル暗号化のマスター鍵を利用したバックドアとその対策 by 光成滋生&竹迫良範CODE BLUE
 
すぐできるWeb制作時のセキュリティTips
すぐできるWeb制作時のセキュリティTipsすぐできるWeb制作時のセキュリティTips
すぐできるWeb制作時のセキュリティTipsyoshinori matsumoto
 
ARMテンプレートでサーバーレスに挑む!
ARMテンプレートでサーバーレスに挑む!ARMテンプレートでサーバーレスに挑む!
ARMテンプレートでサーバーレスに挑む!Kazumi IWANAGA
 
高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたことMITSUNARI Shigeo
 
Azure Container Services and Microservices design pattern
Azure Container Services and Microservices design patternAzure Container Services and Microservices design pattern
Azure Container Services and Microservices design patternYoshio Terada
 
Javascript で暗号化
Javascript で暗号化Javascript で暗号化
Javascript で暗号化suno88
 
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会yoshinori matsumoto
 
[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...
[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...
[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...Insight Technology, Inc.
 
libinjection : SQLi から XSS へ by ニック・ガルブレス
libinjection : SQLi から XSS へ by ニック・ガルブレスlibinjection : SQLi から XSS へ by ニック・ガルブレス
libinjection : SQLi から XSS へ by ニック・ガルブレスCODE BLUE
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Kazumi IWANAGA
 
Azure Cosmos DB を使った高速分散アプリケーションの設計パターン
Azure Cosmos DB を使った高速分散アプリケーションの設計パターンAzure Cosmos DB を使った高速分散アプリケーションの設計パターン
Azure Cosmos DB を使った高速分散アプリケーションの設計パターンKazuyuki Miyake
 
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
『例えば、PHPを避ける』以降PHPはどれだけ安全になったかHiroshi Tokumaru
 
Scala が支える医療系ウェブサービス #jissenscala
Scala が支える医療系ウェブサービス #jissenscalaScala が支える医療系ウェブサービス #jissenscala
Scala が支える医療系ウェブサービス #jissenscalaKazuhiro Sera
 
Software Development with Symfony
Software Development with SymfonySoftware Development with Symfony
Software Development with SymfonyAtsuhiro Kubo
 
Google Cloud Next '18 Recap/報告会 機械学習関連
Google Cloud Next '18 Recap/報告会 機械学習関連Google Cloud Next '18 Recap/報告会 機械学習関連
Google Cloud Next '18 Recap/報告会 機械学習関連Tetsutaro Watanabe
 
クラウドではじめるリアルタイムデータ分析 #seccamp
クラウドではじめるリアルタイムデータ分析 #seccampクラウドではじめるリアルタイムデータ分析 #seccamp
クラウドではじめるリアルタイムデータ分析 #seccampMasahiro NAKAYAMA
 
クラウドを支えるこれからの暗号技術
クラウドを支えるこれからの暗号技術クラウドを支えるこれからの暗号技術
クラウドを支えるこれからの暗号技術MITSUNARI Shigeo
 

Similar a MS Officeファイル暗号化のマスター鍵を利用したバックドアとその対策 (20)

MSOfficeファイル暗号化のマスター鍵を利用したバックドアとその対策 by 光成滋生&竹迫良範
MSOfficeファイル暗号化のマスター鍵を利用したバックドアとその対策 by 光成滋生&竹迫良範MSOfficeファイル暗号化のマスター鍵を利用したバックドアとその対策 by 光成滋生&竹迫良範
MSOfficeファイル暗号化のマスター鍵を利用したバックドアとその対策 by 光成滋生&竹迫良範
 
Xml Security
Xml SecurityXml Security
Xml Security
 
すぐできるWeb制作時のセキュリティTips
すぐできるWeb制作時のセキュリティTipsすぐできるWeb制作時のセキュリティTips
すぐできるWeb制作時のセキュリティTips
 
ARMテンプレートでサーバーレスに挑む!
ARMテンプレートでサーバーレスに挑む!ARMテンプレートでサーバーレスに挑む!
ARMテンプレートでサーバーレスに挑む!
 
高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと
 
Azure Container Services and Microservices design pattern
Azure Container Services and Microservices design patternAzure Container Services and Microservices design pattern
Azure Container Services and Microservices design pattern
 
Javascript で暗号化
Javascript で暗号化Javascript で暗号化
Javascript で暗号化
 
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
これからHTML5を書く人のためのセキュリティ - HTML5など勉強会
 
[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...
[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...
[db tech showcase Tokyo 2015] D23:MySQLはドキュメントデータベースになり、HTTPもしゃべる - MySQL Lab...
 
libinjection : SQLi から XSS へ by ニック・ガルブレス
libinjection : SQLi から XSS へ by ニック・ガルブレスlibinjection : SQLi から XSS へ by ニック・ガルブレス
libinjection : SQLi から XSS へ by ニック・ガルブレス
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
 
Azure Cosmos DB を使った高速分散アプリケーションの設計パターン
Azure Cosmos DB を使った高速分散アプリケーションの設計パターンAzure Cosmos DB を使った高速分散アプリケーションの設計パターン
Azure Cosmos DB を使った高速分散アプリケーションの設計パターン
 
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
 
Scala が支える医療系ウェブサービス #jissenscala
Scala が支える医療系ウェブサービス #jissenscalaScala が支える医療系ウェブサービス #jissenscala
Scala が支える医療系ウェブサービス #jissenscala
 
Software Development with Symfony
Software Development with SymfonySoftware Development with Symfony
Software Development with Symfony
 
Google Cloud Next '18 Recap/報告会 機械学習関連
Google Cloud Next '18 Recap/報告会 機械学習関連Google Cloud Next '18 Recap/報告会 機械学習関連
Google Cloud Next '18 Recap/報告会 機械学習関連
 
[Japan Tech summit 2017] MAI 003
[Japan Tech summit 2017] MAI 003[Japan Tech summit 2017] MAI 003
[Japan Tech summit 2017] MAI 003
 
クラウドではじめるリアルタイムデータ分析 #seccamp
クラウドではじめるリアルタイムデータ分析 #seccampクラウドではじめるリアルタイムデータ分析 #seccamp
クラウドではじめるリアルタイムデータ分析 #seccamp
 
[Japan Tech summit 2017] DAL 005
[Japan Tech summit 2017] DAL 005[Japan Tech summit 2017] DAL 005
[Japan Tech summit 2017] DAL 005
 
クラウドを支えるこれからの暗号技術
クラウドを支えるこれからの暗号技術クラウドを支えるこれからの暗号技術
クラウドを支えるこれからの暗号技術
 

Más de MITSUNARI Shigeo

範囲証明つき準同型暗号とその対話的プロトコル
範囲証明つき準同型暗号とその対話的プロトコル範囲証明つき準同型暗号とその対話的プロトコル
範囲証明つき準同型暗号とその対話的プロトコルMITSUNARI Shigeo
 
暗認本読書会13 advanced
暗認本読書会13 advanced暗認本読書会13 advanced
暗認本読書会13 advancedMITSUNARI Shigeo
 
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgenIntel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgenMITSUNARI Shigeo
 
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法深層学習フレームワークにおけるIntel CPU/富岳向け最適化法
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法MITSUNARI Shigeo
 
WebAssembly向け多倍長演算の実装
WebAssembly向け多倍長演算の実装WebAssembly向け多倍長演算の実装
WebAssembly向け多倍長演算の実装MITSUNARI Shigeo
 
Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化
Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化
Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化MITSUNARI Shigeo
 
BLS署名の実装とその応用
BLS署名の実装とその応用BLS署名の実装とその応用
BLS署名の実装とその応用MITSUNARI Shigeo
 
LazyFP vulnerabilityの紹介
LazyFP vulnerabilityの紹介LazyFP vulnerabilityの紹介
LazyFP vulnerabilityの紹介MITSUNARI Shigeo
 
Intro to SVE 富岳のA64FXを触ってみた
Intro to SVE 富岳のA64FXを触ってみたIntro to SVE 富岳のA64FXを触ってみた
Intro to SVE 富岳のA64FXを触ってみたMITSUNARI Shigeo
 
ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用
ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用
ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用MITSUNARI Shigeo
 

Más de MITSUNARI Shigeo (20)

範囲証明つき準同型暗号とその対話的プロトコル
範囲証明つき準同型暗号とその対話的プロトコル範囲証明つき準同型暗号とその対話的プロトコル
範囲証明つき準同型暗号とその対話的プロトコル
 
暗認本読書会13 advanced
暗認本読書会13 advanced暗認本読書会13 advanced
暗認本読書会13 advanced
 
暗認本読書会12
暗認本読書会12暗認本読書会12
暗認本読書会12
 
暗認本読書会11
暗認本読書会11暗認本読書会11
暗認本読書会11
 
暗認本読書会10
暗認本読書会10暗認本読書会10
暗認本読書会10
 
暗認本読書会9
暗認本読書会9暗認本読書会9
暗認本読書会9
 
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgenIntel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
Intel AVX-512/富岳SVE用SIMDコード生成ライブラリsimdgen
 
暗認本読書会8
暗認本読書会8暗認本読書会8
暗認本読書会8
 
暗認本読書会6
暗認本読書会6暗認本読書会6
暗認本読書会6
 
暗認本読書会5
暗認本読書会5暗認本読書会5
暗認本読書会5
 
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法深層学習フレームワークにおけるIntel CPU/富岳向け最適化法
深層学習フレームワークにおけるIntel CPU/富岳向け最適化法
 
WebAssembly向け多倍長演算の実装
WebAssembly向け多倍長演算の実装WebAssembly向け多倍長演算の実装
WebAssembly向け多倍長演算の実装
 
Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化
Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化
Lifted-ElGamal暗号を用いた任意関数演算の二者間秘密計算プロトコルのmaliciousモデルにおける効率化
 
楕円曲線と暗号
楕円曲線と暗号楕円曲線と暗号
楕円曲線と暗号
 
HPC Phys-20201203
HPC Phys-20201203HPC Phys-20201203
HPC Phys-20201203
 
BLS署名の実装とその応用
BLS署名の実装とその応用BLS署名の実装とその応用
BLS署名の実装とその応用
 
LazyFP vulnerabilityの紹介
LazyFP vulnerabilityの紹介LazyFP vulnerabilityの紹介
LazyFP vulnerabilityの紹介
 
Intro to SVE 富岳のA64FXを触ってみた
Intro to SVE 富岳のA64FXを触ってみたIntro to SVE 富岳のA64FXを触ってみた
Intro to SVE 富岳のA64FXを触ってみた
 
ゆるバグ
ゆるバグゆるバグ
ゆるバグ
 
ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用
ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用
ElGamal型暗号文に対する任意関数演算・再暗号化の二者間秘密計算プロトコルとその応用
 

MS Officeファイル暗号化のマスター鍵を利用したバックドアとその対策