สิ่งนี้เป็นไปได้ด้วย การเข้ารหัสตามแอตทริบิวต์.
ตามคำอธิบายในลิงก์ กำหนดจักรวาลของแอตทริบิวต์ $\{A, B, D\}$ให้อลิซรับกุญแจที่มีคุณสมบัติ $A$, Bob คีย์ที่มีคุณสมบัติ $B$และ David คีย์ที่มีคุณสมบัติ $\{ก, ง\}$.
หากต้องการเข้ารหัสถึง Alice, Bob หรือ David ให้เข้ารหัสข้อความด้วยความเคารพ $A$, $B$, หรือ $D$.
แล้ว:
- สำหรับข้อความที่เข้ารหัสถึง Bob หรือ David พวกเขาเป็นคนเดียวที่มีคีย์ที่มีแอตทริบิวต์ที่สอดคล้องกัน ดังนั้นจึงเป็นคนเดียวที่สามารถถอดรหัสได้ แต่
- David และ Alice มีกุญแจที่มี Attribute $A$ดังนั้นพวกเขา ทั้งสอง สามารถถอดรหัสข้อความใดๆ ถึง อลิซ.
สิ่งนี้ทำให้เกิดปัญหาเล็กน้อย --- อลิซสามารถส่งข้อความถึง Bob ที่ David ไม่สามารถถอดรหัสได้
เราสามารถแก้ไขปัญหานี้ได้โดยแก้ไขการเข้ารหัสเล็กน้อย กล่าวคือ Alice (หรือบุคคลอื่นใดในองค์กรของ David) ควรเข้ารหัสข้อความตามนโยบาย $C\lor D$, ที่ไหน $C$ เป็นผู้รับที่ตั้งใจไว้ และ $D$ เป็นคุณลักษณะที่สอดคล้องกับดาวิด
ในกรณีนี้ Alice เข้ารหัสให้กับ Bob ด้วยแอตทริบิวต์ $B\ลอร์ D$.
โปรดทราบว่าสิ่งนี้ ไม่ ต้องการให้ Bob ร่วมมือกับ David --- ระบบถูกตั้งค่าเพื่อให้ใครก็ตามที่สื่อสาร "ในวง" กับ Alice (เข้ารหัสโดยใช้แอตทริบิวต์ $A$) ส่งข้อความที่ David สามารถถอดรหัสได้เช่นกัน
มีข้อแม้อยู่สองประการ:
อลิซต้องให้ความร่วมมือ (หากเธอเข้ารหัสตามนโยบาย $B$, David ไม่สามารถถอดรหัสได้).
นี่น่าจะง่ายกว่าสำหรับ David ในการบังคับใช้ โดยขู่ว่าจะไล่ออก Alice หากเธอประพฤติตัวไม่เหมาะสม
ABE เป็นรูปแบบที่แข็งแกร่งกว่าของ IBE อยู่ภายใต้การวิพากษ์วิจารณ์ของ Rogaway เกี่ยวกับ IBE (ใน ลักษณะทางศีลธรรมของงานเข้ารหัส). กล่าวคือ บุคคลที่สามที่เชื่อถือได้จะต้องสร้างคีย์ทั้งหมด
โดยเฉพาะอย่างยิ่ง หมายความว่า Bob ไม่สามารถสร้างคีย์ของเขาเองโดยอิสระจาก David ได้ ดังนั้นต้องเชื่อใจ David ว่าคีย์ของเขาถูกสร้างขึ้นมาอย่างซื่อสัตย์ (หรือทั้ง Bob และ David ต้องไว้วางใจบุคคลที่สามที่เป็นอิสระบางราย) มีความเป็นไปได้ที่สามารถแทนที่บุคคลที่สามอิสระนี้ด้วยการคำนวณ MPC แต่ฉันไม่ทราบรายละเอียด