SecretKey — 비밀(대칭) 키 인터페이스

SecretKey — 비밀(대칭) 키 인터페이스

SecretKey는 비밀(대칭) 키를 나타내는 인터페이스예요. 이 인터페이스의 목적은 모든 비밀 키 인터페이스를 그룹화하고 타입 안전성을 제공하는 거예요.

출처: Java API Reference

본문

이 인터페이스를 구현하는 제공자는 Object에서 상속받은 equalshashCode 메서드를 오버라이드해야 해요. 그래야 비밀 키가 참조가 아닌 기저 키 자료를 기준으로 비교되요.

구현은 Destroyable 인터페이스의 기본 destroyisDestroyed 메서드를 오버라이드해 민감한 키 정보를 파괴·소거하거나, 정보가 변경 불가능한 경우 참조를 해제할 수 있어야 해요.

또한 SecretKeySerializable이므로, 구현은 파괴된 키가 직렬화되지 않도록 ObjectOutputStream.writeObject도 오버라이드해야 해요.

이 인터페이스를 구현하는 키는 인코딩 형식으로 문자열 RAW를 반환하고(getFormat), getEncoded 호출 결과로 원시 키 바이트를 반환해요. 이 인터페이스는 Java 1.4부터 제공됐어요.

더 알아보기 (Learn more)