속성기반암호화 (Attribute-Based Encryption)
쉽게 풀면
일반적인 암호화는 특정 사람 한 명에게만 열쇠를 주는 것과 같지만, 속성기반암호화는 "인사팀이면서 부장급 이상"과 같은 조건을 만족하는 모든 사람에게 열리는 자물쇠를 만드는 것과 비슷합니다. 조건을 만족하는 사람이 누구인지 미리 알 필요 없이, 조건 자체를 자물쇠에 새겨 넣는 방식입니다. 그래서 조직 규모가 크고 접근 권한이 자주 바뀌는 환경에서 유용합니다.
왜 중요한가
클라우드 저장소나 대규모 조직에서는 사용자별로 개별 암호화 키를 관리하기가 비효율적이기 때문에, 정보보안학 분야에서는 세밀한 접근 제어를 암호학적으로 강제할 수 있는 속성기반암호화를 클라우드 데이터 공유, 전자의료기록 접근 제어 등의 연구에 활발히 적용합니다.
논문에서는 이렇게 쓰입니다
의료 데이터 접근 제어에 속성기반암호화를 적용한 사례를 설명하는 문맥입니다.
속성 변경이나 철회를 지원하는 방식을 다루는 문맥입니다.
조금 더 깊게 보면
속성기반암호화는 크게 정책이 암호문에 내장되는 CP-ABE(Ciphertext-Policy ABE)와 정책이 사용자 키에 내장되는 KP-ABE(Key-Policy ABE)로 나뉩니다. 대부분 페어링(pairing) 기반 타원곡선 연산을 이용해 구현되며, 함수암호화(Functional Encryption)라는 더 넓은 개념의 특수한 형태로 분류되기도 합니다. CP-ABE는 데이터를 암호화하는 쪽이 접근 정책을 정하고, KP-ABE는 키를 발급하는 쪽이 정책을 정한다는 점에서 정책 결정 주체가 서로 다릅니다. 사용자의 속성이 여러 개 조합된 복잡한 정책일수록 암복호화 연산 비용이 커지는 경향이 있습니다. 속성기반암호는 암호문 정책(CP-ABE)과 키 정책(KP-ABE) 두 방식으로 나뉘며, 전자는 암호문에 접근정책을 부여하고 후자는 사용자 키에 접근정책을 부여한다는 점에서 구조가 다릅니다. 클라우드 환경에서 세밀한 접근제어가 필요한 의료정보나 기업 문서 공유 시스템에 적용 사례가 많습니다.
주의할 점
속성 조합이 복잡해질수록 암호화 및 복호화 연산 비용이 커질 수 있어, 실제 시스템 적용 시 성능과 세밀한 접근 제어 사이의 균형을 고려해야 합니다.
속성을 관리하는 기관이 여러 곳으로 나뉘는 다중기관 ABE 구조에서는 기관 간 신뢰와 키 발급 절차의 일관성도 추가로 고려해야 합니다. 속성기반암호는 일반 공개키암호에 비해 연산량이 많아 대용량 데이터를 직접 암호화하기보다 대칭키를 암호화하는 하이브리드 방식으로 함께 쓰이는 경우가 일반적입니다.