X509EncodedKeySpec

X509EncodedKeySpec (X.509 인코딩 키 명세)

ASN.1 타입 SubjectPublicKeyInfo에 따라 인코딩된 공개 키의 ASN.1 인코딩을 나타내는 클래스예요. SubjectPublicKeyInfo 문법은 X.509 표준에 다음과 같이 정의돼 있어요.

출처: Java API Reference

본문

SubjectPublicKeyInfo ::= SEQUENCE {
    algorithm         AlgorithmIdentifier,
    subjectPublicKey  BIT STRING
}

X.509 형식으로 인코딩된 공개 키는 이 클래스로 표현돼요. EncodedKeySpec의 구체 하위 클래스이며, 바이트 배열로 된 키 인코딩을 담아요.

public class X509EncodedKeySpec
    extends EncodedKeySpec
public X509EncodedKeySpec(byte[] encodedKey)
public X509EncodedKeySpec(byte[] encodedKey, String algorithm)
  • encodedKey — 공개 키의 인코딩된 바이트
  • algorithm — 키의 알고리즘 이름(선택)

getEncoded()로 인코딩된 키 바이트를 얻고, getFormat()"X.509"를 반환해요. KeyFactory로 이 명세를 사용해 공개 키 객체를 만들 수 있어요:

KeyFactory kf = KeyFactory.getInstance("RSA");
PublicKey pubKey = kf.generatePublic(new X509EncodedKeySpec(encoded));

더 알아보기 (Learn more)

Java 공식 API