# [ABE] Fuzzy Identity-Based Encryption ###### tags: `節點` ###### [Fuzzy Identity-Based Encryption 論文連結](https://eprint.iacr.org/2004/086.pdf) ###### [Key Policy Attribute-Based Encryption 論文連結](https://eprint.iacr.org/2006/309.pdf) ###### [Ciphertext-Policy Attribute-Based Encryption 論文連結](https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4223236) ## 名稱: Fuzzy Identity-Based Encryption ### 介紹 1. 欲解決的問題: - 提高加密系統的容錯能力,系統允許接收者身份標籤相似超過某個閾值即可解密 - IBE在向PKG註冊ID取得private key的階段時提供的證明文件也有可能造假 2. 角色 2.1. Sender 2.2. Receiver 2.3. KGC 3. 演算法 3.1. *Setup(d)* 3.2. *Key Generation* 3.3. *Encryption* 3.4. *Decryption* 4. 圖 [ABE 圖解](https://docs.google.com/presentation/d/1NAA1oVDKsio9Q7Wb2pYPtZpWpblDyZ6Kn1dBDSah6H0/edit?usp=sharing) 5. 應用及未來展望 1. 用於生物認證的加密系統上 2. ABE * implemented in the cloud computing environment to build a fine-grained access control encrypting sysytem. 6. 缺點 1. 難以追蹤惡意使用者 : 2. 無法做撤銷使用者 : 這裡的撤銷(revoke)是指將某個使用者停權或禁用此系統 * Liu proposed a traceable-then revocable ciphertext-policy attributed-based encryption scheme [Traceable-then-revocable ciphertext-policy attribute-based encryption scheme](https://www.sciencedirect.com/science/article/abs/pii/S0167739X17320964) * ## ## ### 難題假設 :::info ::: ## ### 常見安全模型 :::info **Fuzzy Selective-ID** 與IBE中的 Selective-ID 差別在於 adversary 在詢問 ID 對應的 private key 時,詢問的 identity 與目標攻擊的 identity 的屬性交集需小於 $d$ **Init** Adversary 選擇要攻擊的目標 identity $\alpha$ (例如: {'海大', '資工', '碩一', '女生'}) **Setup** Challenger 執行 Setup algorithm(此時會設定$d$,假設$d=3$),並提供公開參數給 adversary **Phase 1** Adversary 可以詢問多組 identity ($\gamma_j$) 對應的 private key,而且對所有的$j$ $|\gamma_j \cap \alpha|<d$ (例如: $\gamma_1=\{'海大','資工'\}$, $\gamma_1=\{'資工','女生'\}$, ...) **Challenge** Adversary 挑選兩篇明文 $M_0,M_1$ 給 challenger,challenger 拋硬幣決定 $b$,然後用 $\alpha$ 加密 $M_b$ 回傳給 adversary **Phase 2** 重複 phase 1 **Guess** Adversary 猜 $b'$ Adversary 的優勢 = $Pr[b'=b]-{1 \over 2}$ ::: ## 問題集 :::info 1. 如何取得加密用的生物特徵? > [name=丁哥] 論文強調的是 physical presentation,也就是要當面取得生物特徵,可能跟朋友見面的時候就順便跟他要一下指紋,以後都用這個指紋加密給他 2. 使用生物特徵作為加密鑰匙的應用場景是什麼? > [name=丁哥] 不是用在一般的遠距通訊情境 > [name=育靜] 用來保護某些敏感資料 3. [name=元瑾] 解密為什麼最後不管是誰都能解出y? > [name=育靜] (這個問題本來得到的結論是解密工作由系統負責做),但是加密的時候挑的亂數s系統不知道,因為有s,所以即使算完之後會出現y但不知道s別人也無法解密 4. 使用者的identity *w* 是怎麼決定的? >[name=育靜]也是通過註冊來的 :::