Share via


X509Certificate 클래스

정의

X에 대한 추상 클래스입니다.

[Android.Runtime.Register("java/security/cert/X509Certificate", DoNotGenerateAcw=true)]
public abstract class X509Certificate : Java.Security.Cert.Certificate, IDisposable, Java.Interop.IJavaPeerable, Java.Security.Cert.IX509Extension
[<Android.Runtime.Register("java/security/cert/X509Certificate", DoNotGenerateAcw=true)>]
type X509Certificate = class
    inherit Certificate
    interface IX509Extension
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
상속
X509Certificate
특성
구현

설명

X.509 인증서에 대한 추상 클래스입니다. 이렇게 하면 X.509 인증서의 모든 특성에 액세스하는 표준 방법이 제공됩니다.

1996년 6월, 기본 X.509 v3 형식은 ISO/IEC 및 ANSI X9에 의해 완료되었으며, ASN.1에서 아래에 설명되어 있습니다.

Certificate  ::=  SEQUENCE  {
                tbsCertificate       TBSCertificate,
                signatureAlgorithm   AlgorithmIdentifier,
                signature            BIT STRING  }

이러한 인증서는 인터넷 보안 시스템에서 인증 및 기타 기능을 지원하는 데 널리 사용됩니다. 일반적인 애플리케이션에는 PEM(개인 정보 보호 강화 메일), SSL(전송 계층 보안), 신뢰할 수 있는 소프트웨어 배포를 위한 코드 서명 및 SET(Secure Electronic Transactions)가 포함됩니다.

이러한 인증서는 CA(인증 기관</em>)에서>관리 및 보증<합니다. CA는 X.509 표준 형식으로 데이터를 배치한 다음 해당 데이터에 디지털 서명하여 인증서를 만드는 서비스입니다. CA는 신뢰할 수 있는 제3자 역할을 하며, 서로에 대한 직접적인 지식이 없는 보안 주체 간에 소개합니다. CA 인증서는 자체 서명되거나 "루트" CA와 같은 다른 CA에서 서명됩니다.

자세한 내용은 RFC 3280: Internet X.509 공개 키 인프라 인증서 및 CRL 프로필에서 찾을 수 있습니다.

의 ASN.1 정의 tbsCertificate 는 다음과 같습니다.

TBSCertificate  ::=  SEQUENCE  {
                version         [0]  EXPLICIT Version DEFAULT v1,
                serialNumber         CertificateSerialNumber,
                signature            AlgorithmIdentifier,
                issuer               Name,
                validity             Validity,
                subject              Name,
                subjectPublicKeyInfo SubjectPublicKeyInfo,
                issuerUniqueID  [1]  IMPLICIT UniqueIdentifier OPTIONAL,
                                     -- If present, version must be v2 or v3
                subjectUniqueID [2]  IMPLICIT UniqueIdentifier OPTIONAL,
                                     -- If present, version must be v2 or v3
                extensions      [3]  EXPLICIT Extensions OPTIONAL
                                     -- If present, version must be v3
                }

인증서는 인증서 팩터리를 사용하여 인스턴스화됩니다. 다음은 X.509 인증서를 인스턴스화하는 방법의 예입니다.

try (InputStream inStream = new FileInputStream("fileName-of-cert")) {
                CertificateFactory cf = CertificateFactory.getInstance("X.509");
                X509Certificate cert = (X509Certificate)cf.generateCertificate(inStream);
            }

에 대한 Java 설명서입니다 java.security.cert.X509Certificate.

이 페이지의 일부는 만들고 공유하며 에 설명된 조건에 따라 사용되는 작업을 기반으로 수정됩니다.

생성자

X509Certificate()

X용 생성자입니다.

X509Certificate(IntPtr, JniHandleOwnership)

JNI 개체의 관리형 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다.

속성

BasicConstraints

확장에서 인증서 제약 조건의 경로 길이를 BasicContraints 반환합니다.

Class

Object의 런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
CriticalExtensionOIDs

X에 대한 추상 클래스입니다.

ExtendedKeyUsage

확장 키 사용 확장(OID = 2) 필드의 ExtKeyUsageSyntax OBJECT IDENTIFIER을 나타내는 문자열의 수정할 수 없는 목록을 가져옵니다.

Handle

기본 Android instance 대한 핸들입니다.

(다음에서 상속됨 Object)
HasUnsupportedCriticalExtension

X에 대한 추상 클래스입니다.

IssuerAlternativeNames

확장에서 IssuerAltName 발급자 대체 이름의 변경할 수 없는 컬렉션을 가져옵니다(OID = 2).

IssuerDN

issuer 구현 특정 Principal 개체로 (발급자 고유 이름)를 반환합니다.

IssuerX500Principal

인증서의 발급자(발급자 고유 이름) 값을 로 X500Principal반환합니다.

JniIdentityHashCode

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
JniPeerMembers

X에 대한 추상 클래스입니다.

NonCriticalExtensionOIDs

X에 대한 추상 클래스입니다.

NotAfter

notAfter 인증서의 유효 기간 날짜를 반환합니다.

NotBefore

인증서 유효 notBefore 기간의 날짜를 반환합니다.

PeerReference

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
PublicKey

이 인증서에 해당하는 공개 키를 반환합니다.

(다음에서 상속됨 Certificate)
SerialNumber

인증서의 를 serialNumber 반환합니다.

SigAlgName

인증서 서명에 대한 알고리즘의 이름을 반환합니다.

SigAlgOID

인증서에서 서명 알고리즘의 OID를 반환합니다.

SubjectAlternativeNames

확장에서 SubjectAltName 변경할 수 없는 주체 대체 이름 컬렉션을 가져옵니다(OID = 2).

SubjectDN

subject 구현 특정 Principal 개체로 (주체 고유 이름)를 반환합니다.

SubjectX500Principal

인증서의 주체(주체 고유 이름) 값을 로 X500Principal반환합니다.

ThresholdClass

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

ThresholdType

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

Type

이 인증서의 형식을 반환합니다.

(다음에서 상속됨 Certificate)
Version

인증서(버전 번호)를 반환합니다 version .

메서드

CheckValidity()

인증서가 현재 유효한지 확인합니다.

CheckValidity(Date)

지정된 날짜가 인증서의 유효 기간 내에 있는지 확인합니다.

Clone()

이 개체의 복사본을 만들고 반환합니다.

(다음에서 상속됨 Object)
Dispose()

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
Dispose(Boolean)

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
Equals(Object)

다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다.

(다음에서 상속됨 Object)
GetEncoded()

이 인증서의 인코딩된 형식을 반환합니다.

(다음에서 상속됨 Certificate)
GetExtensionValue(String)

전달된 문자열로 식별된 확장 값(<em>extnValue</em>)에 대한 DER로 인코딩된 OCTET 문자열을 oid 가져옵니다.

GetHashCode()

개체의 해시 코드 값을 반환합니다.

(다음에서 상속됨 Object)
GetIssuerUniqueID()

인증서에서 issuerUniqueID 값을 가져옵니다.

GetKeyUsage()

확장의 비트를 나타내는 부울 배열( KeyUsage OID = 2)을 가져옵니다.

GetSigAlgParams()

이 인증서의 서명 알고리즘에서 DER로 인코딩된 서명 알고리즘 매개 변수를 가져옵니다.

GetSignature()

인증서에서 signature 값(원시 서명 비트)을 가져옵니다.

GetSubjectUniqueID()

인증서에서 subjectUniqueID 값을 가져옵니다.

GetTBSCertificate()

이 인증서에서 DER로 인코딩된 인증서 정보를 tbsCertificate 가져옵니다.

JavaFinalize()

가비지 수집에서 개체에 대한 참조가 더 이상 없다고 판단할 때 개체의 가비지 수집기에서 호출됩니다.

(다음에서 상속됨 Object)
Notify()

이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다.

(다음에서 상속됨 Object)
NotifyAll()

이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다.

(다음에서 상속됨 Object)
SetHandle(IntPtr, JniHandleOwnership)

Handle 속성을 설정합니다.

(다음에서 상속됨 Object)
ToArray<T>()

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
ToString()

이 인증서의 문자열 표현을 반환합니다.

(다음에서 상속됨 Certificate)
UnregisterFromRuntime()

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
Verify(IPublicKey)

지정된 공개 키에 해당하는 프라이빗 키를 사용하여 이 인증서가 서명되었는지 확인합니다.

(다음에서 상속됨 Certificate)
Verify(IPublicKey, Provider)

지정된 공개 키에 해당하는 프라이빗 키를 사용하여 이 인증서가 서명되었는지 확인합니다.

Verify(IPublicKey, String)

지정된 공개 키에 해당하는 프라이빗 키를 사용하여 이 인증서가 서명되었는지 확인합니다.

(다음에서 상속됨 Certificate)
Wait()

현재 스레드가 깨어날 때까지 대기하게 합니다( 일반적으로 <알림을 받><거나 <>중단/>em>)합니다<.

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 깨어날 때까지 대기하게 합니다. 일반적으로 <>알림을 받<거나 <중단</>내보내>>거나 일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 깨어날 때까지 대기하게 합니다. 일반적으로 <>알림을 받<거나 <중단</>내보내>>거나 일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)
WriteReplace()

serialize할 인증서를 바꿉다.

(다음에서 상속됨 Certificate)

명시적 인터페이스 구현

IJavaPeerable.Disposed()

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
IJavaPeerable.DisposeUnlessReferenced()

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
IJavaPeerable.Finalized()

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
IJavaPeerable.JniManagedPeerState

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

X에 대한 추상 클래스입니다.

(다음에서 상속됨 Object)

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

X에 대한 추상 클래스입니다.

GetJniTypeName(IJavaPeerable)

X에 대한 추상 클래스입니다.

적용 대상