본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

속성 기반 암호(Attribute-Based Encryption, ABE)는 사용자 키와 암호문에 속성이나 접근 정책을 넣어, 사용자의 속성이 암호문의 정책을 만족할 때만 복호화되게 하는 공개키 암호 방식이다.

일반 공개키 암호로 여러 사람에게 같은 데이터를 주려면 사람마다 따로 암호화하거나, 누군가에게 개인키를 넘겨야 한다. 제3자 서버에 저장한 데이터를 '인사팀 이면서 과장 이상' 같은 조건으로 세밀하게 나누기 어렵다. 속성 기반 암호는 "누구에게"가 아니라 "어떤 조건을 갖춘 사람에게" 암호화한다.

출발점은 2005년 사하이(Amit Sahai)와 워터스(Brent Waters)의 퍼지 ID 기반 암호이다. 신원을 속성들의 집합으로 보고, 개인키의 속성 집합과 암호문의 속성 집합이 충분히 겹칠 때 복호화되게 했으며, 이것을 '속성 기반 암호'라는 응용으로 이름 붙였다.[1] 이어 고얄(Goyal) 등은 제3자 사이트에 저장되는 암호화 데이터를 세밀하게 공유하는 방식으로 키 정책 속성 기반 암호(KP-ABE)를 제시했다.[2]

두 가지 방식

편집 원본 편집
구분 암호문에 들어가는 것 사용자 키에 들어가는 것 쓰임
키 정책 ABE (KP-ABE) 속성 집합 (예: 로그 종류=인증, 부서=재무) 접근 정책 (예: 인증 로그 AND 재무) 감사 로그를 열람 권한별로 나눠 주기
암호문 정책 ABE (CP-ABE) 접근 정책 (예: (인사팀 AND 과장 이상) OR 감사인) 사용자 속성 집합 데이터 주인이 직접 조건을 정하는 클라우드 공유
  • KP-ABE 는 고얄 등(2006), CP-ABE 는 베텐코트(Bethencourt)·사하이·워터스(2007)가 제시했다.[2]
  • 키는 속성 권한 기관이 사용자 속성을 확인하고 발급한다. ID 기반 암호의 개인키 생성자와 같은 역할이다 → ID 기반 암호
  • 일대다 암호화 - 한 번 암호화하면 정책을 만족하는 사람 모두가 복호화한다. 받을 사람의 목록을 미리 몰라도 된다
  • 결탁 저항 - 속성이 모자란 두 사용자가 키를 합쳐도 정책을 만족하지 못하면 복호화하지 못한다
  • 저장소를 믿지 않아도 된다 - 접근 통제가 암호문 자체에 들어 있어 서버가 뚫려도 평문이 새지 않는다
  • 속성 철회(퇴사·전보 때 권한 회수)가 어렵다. 키 갱신이나 재암호화가 필요하다
  • 페어링 연산이 많아 일반 공개키 암호보다 느리고, 정책이 커질수록 암호문과 키가 커진다

접근통제와 구별하기

편집 원본 편집

속성 기반 접근통제(ABAC)도 속성으로 허용 여부를 정하지만, 판단을 정책 결정 지점(서버)이 한다. 서버가 뚫리면 데이터가 그대로 나간다. 속성 기반 암호는 그 판단을 수학적으로 암호문에 넣어, 정책을 만족하지 못하는 사람은 데이터를 손에 넣어도 읽지 못한다.

방식 무엇으로 복호화 대상을 정하는가
ID 기반 암호 신원 문자열 하나
속성 기반 암호 속성 집합과 정책의 일치
프록시 재암호화 데이터 주인이 만든 재암호화 키
동형 암호 복호화 대상이 아니라 암호문 연산이 핵심
  1. ↑ Amit Sahai, Brent Waters, 「Fuzzy Identity Based Encryption」, IACR ePrint 2004/086(EUROCRYPT 2005), https://eprint.iacr.org/2004/086, 확인일: 2026-11-04.
  2. ↑ 2.0 2.1 Vipul Goyal, Omkant Pandey, Amit Sahai, Brent Waters, 「Attribute-Based Encryption for Fine-Grained Access Control of Encrypted Data」, IACR ePrint 2006/309(ACM CCS 2006), https://eprint.iacr.org/2006/309, 확인일: 2026-11-04.