属性ベース暗号
属性ベース暗号 とは何ですか?
属性ベース暗号Sahai と Waters が 2005 年に提案した公開鍵暗号で、暗号文と鍵を属性と方針に紐付け、方針が満たされた場合だけ復号できる。
属性ベース暗号(ABE)は、Amit Sahai と Brent Waters が 2005 年に発表した論文 「Fuzzy Identity-Based Encryption」(IACR ePrint 2004/086)に端を発します。この論文は ID を記述的な属性の集合として扱い、2 つの属性集合の重なりがしきい値を超えたときに復号を許すものでした。生体認証 ID のために設計されたこの誤り耐性が一般化して ABE となり、固定 ID の代わりに方針(ポリシー)を用います。
ABE には 2 種類あります。**鍵方針型 ABE(KP-ABE)**では暗号文が属性を持ち、利用者の鍵がアクセス方針を表現します。暗号文方針型 ABE(CP-ABE)——Bethencourt・Sahai・Waters が 2007 年の IEEE Symposium on Security and Privacy で提案——では暗号文が属性に対するブール方針を持ち、各鍵は保有者の属性を持ちます。したがって暗号化側が誰に復号を許すかを決められ、あたかもロールベースのアクセス制御を暗号文に直接埋め込むかのようです。復号は、鍵の属性が暗号文の方針ツリーを満たすときのみ成功します。
ABE は BN254 や BLS12-381 などの曲線上の双線形ペアリングに基づき、ネイティブな結託耐性を備えます。各鍵は利用者ごとにランダム化されるため、単独では方針を満たせない利用者同士が鍵を持ち寄って満たすことはできません。参考実装には OpenABE や Charm-Crypto があります。属性の失効、認可局による鍵預託(キーエスクロー)、ペアリングのコストといった実務的課題は残っており、マルチ認可・復号外部委託方式が解決を目指しています。
flowchart TD
subgraph セットアップ
A[属性認可局] -->|マスター鍵| A
A -->|属性用の鍵を発行:<br/>医師・循環器科| U[利用者鍵]
end
E[暗号化者] -->|方針:<br/>医師 かつ 循環器科| C[暗号文 + 方針ツリー]
C --> D{利用者の属性は<br/>方針を満たすか?}
U --> D
D -- はい --> P[平文を復元]
D -- いいえ --> X[復号に失敗]用途には、共有クラウドストレージのきめ細かなアクセス制御、電子カルテ、暗号化データレイク、そして 1 つの暗号文で多数の受信者を扱い、利用者ごとに再暗号化しない DRM などがあります。
● 例
- 01
病院が記録を「医師」かつ「循環器科」または「研究者」の方針で一度だけ暗号化する。
- 02
OpenABE や Charm-Crypto などのライブラリが KP-ABE/CP-ABE を実装している。
● よくある質問
属性ベース暗号 とは何ですか?
Sahai と Waters が 2005 年に提案した公開鍵暗号で、暗号文と鍵を属性と方針に紐付け、方針が満たされた場合だけ復号できる。 サイバーセキュリティの 暗号 カテゴリに属します。
属性ベース暗号 とはどういう意味ですか?
Sahai と Waters が 2005 年に提案した公開鍵暗号で、暗号文と鍵を属性と方針に紐付け、方針が満たされた場合だけ復号できる。
属性ベース暗号 からどのように防御しますか?
属性ベース暗号 に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
属性ベース暗号 の別名は何ですか?
一般的な別名: ABE, KP-ABE, CP-ABE。