JCaosLib
V1.4.4.0

com.dreamsecurity.jcaos.x509
Class X509Certificate

java.lang.Object
  extended bycom.dreamsecurity.jcaos.x509.X509Certificate

public class X509Certificate
extends java.lang.Object

X.509 ÀÎÁõ¼­¸¦ ó¸®Çϱâ À§ÇÑ Å¬·¡½ºÀÌ´Ù.

ÀÎÁõ¼­´Â »ç¿ëÀڽźаú °ø°³Å°¸¦ ¿¬°áÇØÁÖ´Â ¹®¼­·Î ÀÎÁõ±â°üÀÇ ÀüÀÚ ¼­¸í »ý¼ºÅ°(°³ÀÎŰ)·Î ÀüÀÚ ¼­¸íÇÏ¿© »ý¼ºÀÌ µÇ¸ç »ç¿ëÀÚÀÇ °ø°³Å°°¡ »ç¿ëÀÚÀÇ °ÍÀÓÀ» Áõ¸íÇÏ´Â ¹®¼­ÀÌ´Ù.

X.509 ÀÎÁõ¼­¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ Á¤º¸´Â Ç¥Áع®¼­ RFC3280¿¡¼­ È®ÀÎÇÒ ¼ö ÀÖ´Ù.

ÀÎÁõ¼­(Certificate)ÀÇ ASN.1 Æ÷¸ËÀº ´ÙÀ½°ú °°´Ù.

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

 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 ÀÎÁõ¼­ °´Ã¼ »ý¼º ¿¹Á¦ :
 
 byte[] certData = <ÀÎÁõ¼­ Àбâ>
 X509Certificate cert = X509Certificate.getInstance(certData);
 

Since:
1.0.0.0

Method Summary
 void checkValidity()
          ÀÎÁõ¼­°¡ ÇöÀç(½Ã½ºÅÛ ÇöÀç ½Ã°£À» ±âÁØ) À¯È¿ÇÑÁö È®ÀÎÇÑ´Ù.
 void checkValidity(java.util.Date date)
          ÀÔ·ÂÇÑ ½Ã°£À» ±âÁØÀ¸·Î ÀÎÁõ¼­°¡ À¯È¿ÇÑÁö È®ÀÎÇÑ´Ù.
 X509InformationAccess getAuthorityInformationAccess()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "±â°ü Á¤º¸ ¾×¼¼½º(authorityInformationAccess)"¸¦ ȹµæÇÑ´Ù.
 X509AuthorityKeyIdentifier getAuthorityKeyIdentifier()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "±â°ü Ű ½Äº°ÀÚ(authorityKeyIdentifier)"¸¦ ȹµæÇÑ´Ù.
 int getBasicConstraints()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ ±âº» Á¦ÇÑ Çʵå(basicConstraints)ÀÇ "±æÀÌ Á¦ÇÑ(pathLenConstaint)" °ªÀ» ȹµæÇÑ´Ù.
 X509CertificatePolicies getCertificatePolicies()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "ÀÎÁõ¼­ Á¤Ã¥(certificatePolicies)"¸¦ ȹµæÇÑ´Ù.
 X509CRLDistributionPoints getCRLDistributionPoints()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "CRL ¹èÆ÷ÁöÁ¡(cRLDistributionPoints)"À» ȹµæÇÑ´Ù.
 byte[] getEncoded()
          DER ÀÎÄÚµùÇÑ´Ù.
 java.util.ArrayList getExtendedKeyUsage()
          ÀÎÁõ¼­¿¡ Æ÷ÇÔµÈ °ø°³Å°ÀÇ Ãß°¡ÀûÀÎ ¿ëµµ¸¦ Á¤ÀÇÇÏ´Â ÀÎÁõ¼­ÀÇ È®ÀåÇʵåÀÎ "È®Àå Ű ¿ëµµ(extendedKeyUsage)" °ªÀ» ȹµæÇÑ´Ù.
static X509Certificate getInstance(byte[] data)
          X.509 Çü½ÄÀÇ ÀÎÁõ¼­¸¦ ÀÔ·ÂÇÏ¿© X509Certificate °´Ã¼·Î º¯È¯ÇÑ´Ù.
static X509Certificate getInstance(java.lang.Object o)
          X.509 Çü½ÄÀÇ ÀÎÁõ¼­¸¦ ÀÔ·ÂÇÏ¿© X509Certificate °´Ã¼·Î º¯È¯ÇÑ´Ù.
 java.util.ArrayList getIssuerAlternativeNames()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "¹ß±ÞÀÚ ´ëü À̸§ Çʵå(issuerAlternativeName)"¸¦ ȹµæÇÑ´Ù.
 X500Principal getIssuerDN()
          ÀÎÁõ¼­ÀÇ ¹ß±ÞÀÚ À̸§À» ȹµæÇÑ´Ù.
 boolean[] getKeyUsage()
          ÀÎÁõ¼­¿¡ Æ÷ÇÔµÈ °ø°³Å°ÀÇ ¿ëµµ¸¦ Á¤ÀÇÇÏ´Â ÀÎÁõ¼­ÀÇ È®ÀåÇʵåÀÎ "Ű ¿ëµµ(keyUsage)" °ªÀ» ȹµæÇÑ´Ù.
 X509NameConstraints getNameConstraints()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "À̸§ Á¦ÇÑ(NameConstraints)"À» ȹµæÇÑ´Ù.
 java.util.Date getNotAfter()
          ÀÎÁõ¼­ À¯È¿±â°£ÀÇ ¸¸·á ÀÏÀÚ¸¦ È®ÀÎÇÑ´Ù.
 java.util.Date getNotBefore()
          ÀÎÁõ¼­ À¯È¿±â°£ÀÇ ½ÃÀÛ ÀÏÀÚ¸¦ ȹµæÇÑ´Ù.
 int[] getPolicyConstraints()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "Á¤Ã¥ Á¦ÇÑ(policyConstraints)"À» ȹµæÇÑ´Ù.
 java.security.PublicKey getPublicKey()
          °ø°³Å°¸¦ ȹµæÇÑ´Ù.
 java.math.BigInteger getSerialNumber()
          ÀÎÁõ¼­ÀÇ ÀϷùøÈ£¸¦ ȹµæÇÑ´Ù.
 java.lang.String getSigAlgName()
          ÀÎÁõ±â°ü¿¡¼­ ÀÎÁõ¼­ ¹ß±Þ ½Ã »ç¿ëÇÑ ¼­¸í ¾Ë°í¸®ÁòÀ» ȹµæÇÑ´Ù.
 byte[] getSignature()
          ÀÎÁõ¼­ÀÇ ¼­¸í°ªÀ» ȹµæÇÑ´Ù.
 java.util.ArrayList getSubjectAlternativeName()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "ÁÖü ´ëü À̸§ Çʵå(subjectAlternativeName)"¸¦ ȹµæÇÑ´Ù.
 X500Principal getSubjectDN()
          ÀÎÁõ¼­ ¼ÒÀ¯ÀÚÀÇ À̸§À» ȹµæÇÑ´Ù.
 byte[] getSubjectKeyIdentifier()
          ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "ÁÖü Ű ½Äº°ÀÚ(subjectKeyIdentifier)"¸¦ ȹµæÇÑ´Ù.
 X509SubjectPublicKeyInfo getSubjectPublicKeyInfo()
          °ø°³Å° Á¤º¸¸¦ ȹµæÇÑ´Ù.
 byte[] getTBSCertificate()
          ÀÎÁõ¼­ÀÇ tbsCertificate ºÎºÐÀ» ȹµæÇÑ´Ù.
 int getVersion()
          ÀÎÁõ¼­ÀÇ ¹öÀü °ªÀ» ȹµæÇÑ´Ù.
 com.dreamsecurity.jcaos.asn1.x509.Certificate toASN1Object()
          ASN.1 ÇüÅÂÀÇ Certificate¸¦ ȹµæÇÑ´Ù.
 boolean verify(java.security.PublicKey publicKey)
          ÀÎÁõ¼­ÀÇ ¼­¸í°ªÀ» °ËÁõÇÑ´Ù.
 void verifyVID(java.lang.String idn, byte[] random)
          ÀÎÁõ¼­ È®ÀåÇʵå ÁÖü ´ëüÀ̸§¿¡ Æ÷ÇԵǾîÀÖ´Â °¡»ó ID(VID) Á¤º¸¿Í ½Äº°¹øÈ£¸¦ ÀÌ¿ëÇÏ¿© ÀÎÁõ¼­ ¼ÒÀ¯ÀÚ¸¦ È®ÀÎÇÑ´Ù.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static X509Certificate getInstance(java.lang.Object o)
                                   throws java.io.IOException
X.509 Çü½ÄÀÇ ÀÎÁõ¼­¸¦ ÀÔ·ÂÇÏ¿© X509Certificate °´Ã¼·Î º¯È¯ÇÑ´Ù.

Parameters:
o - X.509 Çü½ÄÀÇ ÀÎÁõ¼­ (DER ÀÎÄÚµùµÈ °ª ¶Ç´Â ASN.1 ÇüÅÂ)
Throws:
java.io.IOException - µðÄÚµù ½ÇÆÐ½Ã ¹ß»ý

getInstance

public static X509Certificate getInstance(byte[] data)
                                   throws java.io.IOException
X.509 Çü½ÄÀÇ ÀÎÁõ¼­¸¦ ÀÔ·ÂÇÏ¿© X509Certificate °´Ã¼·Î º¯È¯ÇÑ´Ù.

Parameters:
data - DER ÀÎÄÚµùµÈ X.509 Çü½ÄÀÇ ÀÎÁõ¼­
Throws:
java.io.IOException - µðÄÚµù ½ÇÆÐ½Ã ¹ß»ý

getEncoded

public byte[] getEncoded()
DER ÀÎÄÚµùÇÑ´Ù.

Returns:
DER ÀÎÄÚµùÇÑ °ª

toASN1Object

public com.dreamsecurity.jcaos.asn1.x509.Certificate toASN1Object()
ASN.1 ÇüÅÂÀÇ Certificate¸¦ ȹµæÇÑ´Ù.

Returns:
ASN.1 ÇüÅÂÀÇ Certificate

getVersion

public int getVersion()
ÀÎÁõ¼­ÀÇ ¹öÀü °ªÀ» ȹµæÇÑ´Ù.

Returns:
¹öÀü 1, 2 ¶Ç´Â 3

getSerialNumber

public java.math.BigInteger getSerialNumber()
ÀÎÁõ¼­ÀÇ ÀϷùøÈ£¸¦ ȹµæÇÑ´Ù. ÀϷùøÈ£´Â ÀÎÁõ±â°ü¿¡¼­ ¹ß±ÞÇÏ´Â ÀÎÁõ¼­¿¡ ºÎ¿©ÇÏ´Â °ªÀ¸·Î ÇØ´ç ÀÎÁõ±â°ü¿¡¼­ À¯ÀÏÇÑ °ªÀÌ´Ù.

Returns:
ÀϷùøÈ£

getIssuerDN

public X500Principal getIssuerDN()
                          throws java.io.IOException,
                                 ParsingException
ÀÎÁõ¼­ÀÇ ¹ß±ÞÀÚ À̸§À» ȹµæÇÑ´Ù. ¹ß±ÞÀÚ´Â ÀÎÁõ¼­¸¦ ¼­¸íÇÑ ÁÖü¸¦ ³ªÅ¸³½´Ù.

Returns:
¹ß±ÞÀÚ À̸§
Throws:
java.io.IOException - ¹ß±ÞÀÚ À̸§ µðÄÚµù ½ÇÆÐ½Ã ¹ß»ý
ParsingException - Áö¿øÇÏÁö ¾Ê´Â Á¾·ùÀÇ À̸§ Çü½ÄÀÌ ÀÖÀ» °æ¿ì¿¡ ¹ß»ý

getSubjectDN

public X500Principal getSubjectDN()
                           throws java.io.IOException,
                                  ParsingException
ÀÎÁõ¼­ ¼ÒÀ¯ÀÚÀÇ À̸§À» ȹµæÇÑ´Ù.

Returns:
¼ÒÀ¯ÀÚ À̸§
Throws:
java.io.IOException - ¼ÒÀ¯ÀÚ À̸§ µðÄÚµù ½ÇÆÐ½Ã ¹ß»ý
ParsingException - Áö¿øÇÏÁö ¾Ê´Â Á¾·ùÀÇ À̸§ Çü½ÄÀÌ ÀÖÀ» °æ¿ì¿¡ ¹ß»ý

getNotBefore

public java.util.Date getNotBefore()
                            throws java.text.ParseException
ÀÎÁõ¼­ À¯È¿±â°£ÀÇ ½ÃÀÛ ÀÏÀÚ¸¦ ȹµæÇÑ´Ù.

Returns:
½ÃÀÛ ÀÏÀÚ
Throws:
java.text.ParseException - ½Ã°£ Á¤º¸ ó¸® ½ÇÆÐ½Ã ¹ß»ý

getNotAfter

public java.util.Date getNotAfter()
                           throws java.text.ParseException
ÀÎÁõ¼­ À¯È¿±â°£ÀÇ ¸¸·á ÀÏÀÚ¸¦ È®ÀÎÇÑ´Ù.

Returns:
¸¸·á ÀÏÀÚ
Throws:
java.text.ParseException - ½Ã°£ Á¤º¸ ó¸® ½ÇÆÐ½Ã ¹ß»ý

getTBSCertificate

public byte[] getTBSCertificate()
ÀÎÁõ¼­ÀÇ tbsCertificate ºÎºÐÀ» ȹµæÇÑ´Ù. ÇØ´ç °ªÀº ÀÎÁõ¼­ÀÇ ¼­¸í °ËÁõÀ» À§ÇØ »ç¿ëµÉ ¼ö ÀÖ´Ù.

Returns:
tbsCertificateÀÇ DER ÀÎÄÚµùµÈ °ª

getSignature

public byte[] getSignature()
ÀÎÁõ¼­ÀÇ ¼­¸í°ªÀ» ȹµæÇÑ´Ù.

Returns:
¼­¸í°ª

getSigAlgName

public java.lang.String getSigAlgName()
ÀÎÁõ±â°ü¿¡¼­ ÀÎÁõ¼­ ¹ß±Þ ½Ã »ç¿ëÇÑ ¼­¸í ¾Ë°í¸®ÁòÀ» ȹµæÇÑ´Ù.

ex.) SHA1withRSA, SHA1withKCDSA

Returns:
¼­¸í ¾Ë°í¸®Áò

getKeyUsage

public boolean[] getKeyUsage()
                      throws java.io.IOException
ÀÎÁõ¼­¿¡ Æ÷ÇÔµÈ °ø°³Å°ÀÇ ¿ëµµ¸¦ Á¤ÀÇÇÏ´Â ÀÎÁõ¼­ÀÇ È®ÀåÇʵåÀÎ "Ű ¿ëµµ(keyUsage)" °ªÀ» ȹµæÇÑ´Ù.

¹è¿­ÀÇ °¢ index °ªÀº ´ÙÀ½À» ÀǹÌÇÑ´Ù.

index ÀǹÌ
0 digitalSignature
1 nonRepudiation
2 keyEncipherment
3 dataEncipherment
4 keyAgreement
5 keyCertSign
6 cRLSign
7 encipherOnly
8 decipherOnly

Returns:
boolean ¹è¿­ ÇüÅÂÀÇ Å° ¿ëµµ°ª. ÇØ´ç Çʵ尡 ¾øÀ¸¸é nullÀÌ ¸®ÅÏ
Throws:
java.io.IOException - Ű ¿ëµµ °ª µðÄÚµù ½ÇÆÐ½Ã ¹ß»ý

getExtendedKeyUsage

public java.util.ArrayList getExtendedKeyUsage()
                                        throws java.io.IOException
ÀÎÁõ¼­¿¡ Æ÷ÇÔµÈ °ø°³Å°ÀÇ Ãß°¡ÀûÀÎ ¿ëµµ¸¦ Á¤ÀÇÇÏ´Â ÀÎÁõ¼­ÀÇ È®ÀåÇʵåÀÎ "È®Àå Ű ¿ëµµ(extendedKeyUsage)" °ªÀ» ȹµæÇÑ´Ù.

¸®Åϰª ÀǹÌ
serverAuth ¼­¹ö ÀÎÁõ¿ë
clientAuth Ŭ¶óÀÌ¾ðÆ® ÀÎÁõ¿ë
condeSigning ÄÚµå»çÀ̴׿ë
emailProtection E-Mail º¸È£¿ë
timeStamping ½ÃÁ¡È®ÀÎ ¼­¹ö¿ë
ocspSigning OCSP ¼­¹ö¿ë
kisaHSM º¸¾ÈÅäÅ« ±â¹ÝÀÇ °øÀÎÀÎÁõ¼­

Returns:
ArrayList ÇüÅÂÀÇ È®Àå Ű ¿ëµµ (String Çü). ÇØ´ç Çʵ尡 ¾øÀ¸¸é nullÀÌ ¸®ÅϵÊ
Throws:
java.io.IOException - È®Àå Ű ¿ëµµ°ª µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getBasicConstraints

public int getBasicConstraints()
                        throws java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ ±âº» Á¦ÇÑ Çʵå(basicConstraints)ÀÇ "±æÀÌ Á¦ÇÑ(pathLenConstaint)" °ªÀ» ȹµæÇÑ´Ù.

±âº» Á¦ÇÑ Çʵå´Â ÇØ´ç ÀÎÁõ¼­°¡ ÀÎÁõ±â°ü¿ë ÀÎÁõ¼­ÀÎÁö ¶ÇÇÑ ÇØ´ç ÀÎÁõ¼­ ¹ØÀ¸·Î ¸î°³ÀÇ ÀÎÁõ±â°ü ÀÎÁõ¼­°¡ ¿Ã ¼ö ÀÖ´Â Áö¸¦ ³ªÅ¸³½´Ù. ÀÌ ÇÔ¼ö´Â ÇØ´ç ÀÎÁõ¼­°¡ ÀÎÁõ±â°ü¿ë ÀÏ ¶§, ÇÏÀ§ ¿Ã ¼ö ÀÖ´Â ÀÎÁõ¼­ÀÇ °³¼ö¸¦ ¸®ÅÏÇÑ´Ù.

Returns:
ÀÎÁõ±â°ü ÀÎÁõ¼­ À϶§ °ªÀÌ ¸®ÅϵǸç ÀÎÁõ±â°ü ÀÎÁõ¼­°¡ ¾Æ´Ï¸é -1ÀÌ ¸®ÅϵȴÙ. ¸¸¾à ÇÏÀ§¿¡ ¿Ã ¼ö ÀÖ´Â ÀÎÁõ±â°üÀÇ °³¼ö¸¦ Á¦ÇÑÇÏÁö ¾Ê´Â´Ù¸é Integer.MAX_VALUE°¡ ¸®ÅϵÊ
Throws:
java.io.IOException - ±âº» Á¦ÇѰª µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getNameConstraints

public X509NameConstraints getNameConstraints()
                                       throws java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "À̸§ Á¦ÇÑ(NameConstraints)"À» ȹµæÇÑ´Ù. À̸§ Á¦ÇÑ Çʵå´Â ÀÎÁõ±â°ü ÀÎÁõ¼­¿¡¸¸ Á¸ÀçÇÒ ¼ö ÀÖ´Ù.

ÀÎÁõ±â°ü ÀÎÁõ¼­´Â À̸§Á¦ÇÑ Çʵ带 »ç¿ëÇÔÀ¸·Î¼­ ¹ß±ÞÇÏ´Â ÀÎÁõ¼­ÀÇ À̸§ Çü½ÄÀ» Á¦ÇÑÇÒ ¼ö ÀÖ´Ù.

Returns:
X509NameConstraints ÇüÅÂÀÇ À̸§ Á¦ÇÑ Á¤º¸
Throws:
java.io.IOException - À̸§ Á¦ÇÑ Á¤º¸ µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getSubjectAlternativeName

public java.util.ArrayList getSubjectAlternativeName()
                                              throws ParsingException,
                                                     java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "ÁÖü ´ëü À̸§ Çʵå(subjectAlternativeName)"¸¦ ȹµæÇÑ´Ù. ÁÖü ´ëü À̸§Àº ÁÖü À̸§ ÀÌ¿ÜÀÇ ÀÎÁõ¼­ ¼ÒÀ¯ÀÚ¸¦ ½Äº°ÇÒ ¼ö ÀÖ´Â Ãß°¡ Á¤º¸µéÀ» Æ÷ÇÔÇÑ´Ù.

±¹³» ÀÎÁõü°è(°øÀÎÀÎÁõü°è, ÇàÁ¤ÀÎÁõü°è)¿¡¼­´Â ÇØ´ç Çʵ忡 "½Äº°¹øÈ£¸¦ ÀÌ¿ëÇÑ º»ÀÎÈ®ÀÎ"À» À§ÇÑ °¡»ó ID(VID)°¡ Æ÷ÇԵǾîÀÖ´Ù.

Returns:
ArrayList ÇüÅÂÀÇ ÁÖü ´ëü À̸§ÀÌ ¸®ÅÏµÇ¸ç °¢°¢ÀÇ °ªÀº X509GeneralName ÇüÅÂÀÌ´Ù. ÇØ´ç Çʵ尡 Á¸ÀçÇÏÁö ¾ÊÀ»¶§´Â nullÀÌ ¸®ÅϵÊ
Throws:
ParsingException - Áö¿øÇÏÁö ¾Ê´Â ´ëü À̸§ ÇüŰ¡ Á¸ÀçÇÏ´Â °æ¿ì¿¡ ¹ß»ý
java.io.IOException - ÁÖü ´ëü À̸§ µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getIssuerAlternativeNames

public java.util.ArrayList getIssuerAlternativeNames()
                                              throws ParsingException,
                                                     java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "¹ß±ÞÀÚ ´ëü À̸§ Çʵå(issuerAlternativeName)"¸¦ ȹµæÇÑ´Ù. ¹ß±ÞÀÚ ´ëü À̸§Àº ¹ß±ÞÀÚ À̸§ ÀÌ¿ÜÀÇ ÀÎÁõ¼­ ¹ß±ÞÀÚ¸¦ ½Äº°ÇÒ ¼ö ÀÖ´Â Ãß°¡ Á¤º¸µéÀ» Æ÷ÇÔÇÑ´Ù.

Returns:
ArrayList ÇüÅÂÀÇ ¹ß±ÞÀÚ ´ëü À̸§ÀÌ ¸®ÅÏµÇ¸ç °¢°¢ÀÇ °ªÀº X509GeneralName ÇüÅÂÀÌ´Ù. ÇØ´ç Çʵ尡 Á¸ÀçÇÏÁö ¾ÊÀ»¶§´Â nullÀÌ ¸®ÅϵÊ
Throws:
ParsingException - Áö¿øÇÏÁö ¾Ê´Â ´ëü À̸§ ÇüŰ¡ Á¸ÀçÇÏ´Â °æ¿ì¿¡ ¹ß»ý
java.io.IOException - ¹ß±ÞÀÚ ´ëü À̸§ µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getAuthorityKeyIdentifier

public X509AuthorityKeyIdentifier getAuthorityKeyIdentifier()
                                                     throws java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "±â°ü Ű ½Äº°ÀÚ(authorityKeyIdentifier)"¸¦ ȹµæÇÑ´Ù. ±â°ü Ű ½Äº°ÀÚ´Â ¹ß±Þ±â°ü¿¡¼­ ÀÎÁõ¼­ ¹ß±Þ½Ã »ç¿ëÇÑ °³ÀÎŰ¿Í ½ÖÀ» ÀÌ·ç´Â °ø°³Å°¸¦ ½Äº°ÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. ½Äº° Á¤º¸·Î´Â °ø°³Å° ½Äº°ÀÚ, ÀÎÁõ¼­ÀÇ ¹ß±ÞÀÚ À̸§°ú ÀϷùøÈ£¸¦ »ç¿ëÇÑ´Ù.

Returns:
X509AuthorityKeyIdentifier ÇüÅÂÀÇ ±â°ü Ű ½Äº°ÀÚ°¡ ¸®ÅϵǸç, ÇØ´ç Çʵ尡 Á¸ÀçÇÏÁö ¾ÊÀ»¶§´Â nullÀÌ ¸®ÅϵÊ
Throws:
java.io.IOException - ±â°ü Ű ½Äº°ÀÚ Á¤º¸ µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getSubjectKeyIdentifier

public byte[] getSubjectKeyIdentifier()
                               throws java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "ÁÖü Ű ½Äº°ÀÚ(subjectKeyIdentifier)"¸¦ ȹµæÇÑ´Ù. ÀÎÁõ¼­¿¡ Æ÷ÇԵǾîÀÖ´Â °ø°³Å°¸¦ ½Äº°ÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù.

Returns:
°ø°³Å° ½Äº°ÀÚ
Throws:
java.io.IOException - °ø°³Å° ½Äº°ÀÚ Á¤º¸ µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getCertificatePolicies

public X509CertificatePolicies getCertificatePolicies()
                                               throws java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "ÀÎÁõ¼­ Á¤Ã¥(certificatePolicies)"¸¦ ȹµæÇÑ´Ù.

»ç¿ëÀÚ ÀÎÁõ¼­ÀÇ ÀÎÁõ¼­ Á¤Ã¥ Çʵå´Â ÀÎÁõ¼­°¡ ¾î¶² Á¤Ã¥À» ÁöÄÑ ¹ß±ÞµÇ¾úÀ¸¸ç, ÀÎÁõ¼­ »ç¿ë ¸ñÀûÀ» ³ªÅ¸³½´Ù. ÀÎÁõ±â°ü ÀÎÁõ¼­ÀÇ ÀÎÁõ¼­ Á¤Ã¥ Çʵå´Â ÀÎÁõ¼­ °æ·ÎÀÇ Á¤Ã¥ ÁýÇÕÀ» Á¦ÇÑÇÑ´Ù. ¸¸¾à Á¦ÇÑÇÏÁö ¾Ê°íÀÚ ÇÑ´Ù¸é "anyPolicy(2.5.29.32.0)"¸¦ »ç¿ëÇÑ´Ù.

Returns:
X509CertificatePolicies ÇüÅÂÀÇ ÀÎÁõ¼­ Á¤Ã¥ÀÌ ¸®ÅϵǸç, ¸¸¾à ÇØ´ç Çʵ尡 ¾ø´Ù¸é nullÀÌ ¸®ÅÏ
Throws:
java.io.IOException - ÀÎÁõ¼­ Á¤Ã¥ Á¤º¸ µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getPolicyConstraints

public int[] getPolicyConstraints()
                           throws java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "Á¤Ã¥ Á¦ÇÑ(policyConstraints)"À» ȹµæÇÑ´Ù. Á¤Ã¥ Á¦ÇÑ Çʵå´Â ÀÎÁõ±â°ü¿ë ÀÎÁõ¼­¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç, ÀÎÁõ¼­ °ËÁõ ½Ã µÎ°¡Áö »çÇ×À» Á¦ÇÑÇÑ´Ù. Çϳª´Â Á¤Ã¥ ¸ÅÇÎÀ» ±ÝÁö(inhibitPolicyMapping) Çϵµ·Ï Çϰí, ¶Ç Çϳª´Â ÀÎÁõ¼­¿¡ Çã¿ëÇÏ´Â Á¤Ã¥À» Æ÷ÇÔ (requireExplicitPolicy) Çϵµ·Ï ÇÑ´Ù.

¸®ÅϵǴ ¹è¿­ÀÇ °¢ index °ªÀº ´ÙÀ½À» ÀǹÌÇÑ´Ù. ÇØ´ç À妽º¿¡ ´ëÇÑ °ªÀÌ -1 À̸é ÇØ´ç Çʵ尡 Á¸ÀçÇÏÁö ¾ÊÀ½À» ÀǹÌÇϸç, ÇØ´ç Ç׸ñ¿¡ ´ëÇØ¼­ Á¦ÇÑÇÏÁö ¾ÊÀ½À» ÀǹÌÇÑ´Ù.

index ÀǹÌ
0 requireExplicitPolicy
1 inhibitPolicyMapping

Returns:
int ¹è¿­ ÇüÅÂÀÇ Á¤Ã¥Á¦ÇÑ °ª. ÇØ´ç Çʵ尡 ¾øÀ¸¸é nullÀÌ ¸®ÅÏ
Throws:
java.io.IOException - Á¤Ã¥ Á¦ÇÑ Á¤º¸ µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getCRLDistributionPoints

public X509CRLDistributionPoints getCRLDistributionPoints()
                                                   throws java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "CRL ¹èÆ÷ÁöÁ¡(cRLDistributionPoints)"À» ȹµæÇÑ´Ù. CRL ¹èÆ÷ÁöÁ¡Àº ÇØ´ç Çʵ带 Æ÷ÇÔÇϰí ÀÖ´Â ÀÎÁõ¼­ÀÇ ÆóÁö ¿©ºÎ È®ÀÎÀ» À§Çؼ­ »ç¿ëÇÒ CRLÀÌ ¹èÆ÷µÇ¾î ÀÖ´Â À§Ä¡ Á¤º¸¸¦ ³ªÅ¸³½´Ù.

Returns:
X509CRLDistributionPoints ÇüÅÂÀÇ CRL ¹èÆ÷ ÁöÁ¡ÀÌ ¸®ÅϵǸç, ÇØ´ç Çʵ尡 ¾øÀ» °æ¿ì¿¡´Â nullÀÌ ¸®ÅÏ
Throws:
java.io.IOException - CRL ¹èÆ÷ ÁöÁ¡ µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

getAuthorityInformationAccess

public X509InformationAccess getAuthorityInformationAccess()
                                                    throws java.io.IOException
ÀÎÁõ¼­ È®ÀåÇʵåÀÎ "±â°ü Á¤º¸ ¾×¼¼½º(authorityInformationAccess)"¸¦ ȹµæÇÑ´Ù. ±â°ü Á¤º¸ ¾×¼¼½º´Â ÀÎÁõ±â°ü Á¤º¸¸¦ ȹµæÇÏ´Â ¹æ¹ý°ú ÀÎÁõ±â°ü¿¡ Á¦°øÇÏ´Â ¼­ºñ½º(OCSP) Á¤º¸°¡ Æ÷Ç﵃ ¼ö ÀÖ´Ù.

Returns:
X509InformationAccess ÇüÅÂÀÇ ±â°ü Á¤º¸ ¾×¼¼½º Á¤º¸°¡ ¸®ÅϵǸç, ÇØ´ç Çʵ尡 ¾øÀ» °æ¿ì¿¡´Â nullÀÌ ¸®ÅÏ
Throws:
java.io.IOException - ±â°ü Á¤º¸ ¾×¼¼½º µðÄÚµù ½ÇÆÐ ½Ã ¹ß»ý

verifyVID

public void verifyVID(java.lang.String idn,
                      byte[] random)
               throws java.io.IOException,
                      ParsingException,
                      IdentifyException,
                      java.security.NoSuchAlgorithmException,
                      java.security.NoSuchProviderException
ÀÎÁõ¼­ È®ÀåÇʵå ÁÖü ´ëüÀ̸§¿¡ Æ÷ÇԵǾîÀÖ´Â °¡»ó ID(VID) Á¤º¸¿Í ½Äº°¹øÈ£¸¦ ÀÌ¿ëÇÏ¿© ÀÎÁõ¼­ ¼ÒÀ¯ÀÚ¸¦ È®ÀÎÇÑ´Ù.

Parameters:
idn - ÀÎÁõ¼­ ¼ÒÀ¯ÀÚ ½Äº°¹øÈ£
random - ÀÎÁõ¼­ ¼ÒÀ¯ÀÚÀÇ °³ÀÎŰ¿¡ Æ÷ÇԵǾîÀÖ´Â º»ÀÎÈ®ÀÎÀ» À§ÇÑ ·£´ý°ª
Throws:
java.io.IOException - ÁÖü ´ëüÀ̸§ ÇÊµå µðÄÚµù ½ÇÆÐ½Ã ¹ß»ý
ParsingException - º»ÀÎÈ®ÀÎÀ» À§ÇÑ Á¤º¸°¡ ¾ø´Â °æ¿ì¿¡ ¹ß»ý
IdentifyExcepion - º»ÀÎÈ®ÀÎ ½ÇÆÐ½Ã ¹ß»ý
java.security.NoSuchProviderException - Áö¿øÇÏÁö ¾Ê´Â ¾ÏÈ£ ¸ðµâ Á¦°øÀÚÀÏ °æ¿ì¿¡ ¹ß»ý
java.security.NoSuchAlgorithmException - Áö¿øÇÏÁö ¾Ê´Â ¾Ë°í¸®ÁòÀÏ °æ¿ì¿¡ ¹ß»ý
IdentifyException

getSubjectPublicKeyInfo

public X509SubjectPublicKeyInfo getSubjectPublicKeyInfo()
                                                 throws java.io.IOException,
                                                        java.security.NoSuchProviderException,
                                                        java.security.NoSuchAlgorithmException,
                                                        java.security.spec.InvalidKeySpecException
°ø°³Å° Á¤º¸¸¦ ȹµæÇÑ´Ù.

Returns:
X509SubjectPublicKeyInfo Çü½ÄÀÇ °ø°³Å° Á¤º¸
Throws:
java.io.IOException - °ø°³Å° Á¤º¸ µðÄÚµù ½ÇÆÐ½Ã ¹ß»ý
java.security.NoSuchAlgorithmException - Áö¿øÇÏÁö ¾Ê´Â ¾Ë°í¸®ÁòÀÏ °æ¿ì¿¡ ¹ß»ý
java.security.NoSuchProviderException - Áö¿øÇÏÁö ¾Ê´Â ¾ÏÈ£ ¸ðµâ Á¦°øÀÚÀÏ °æ¿ì¿¡ ¹ß»ý
java.security.spec.InvalidKeySpecException - ÀûÇÕÇÏÁö ¾ÊÀº Ű Á¤º¸ÀÎ °æ¿ì¿¡ ¹ß»ý
Since:
1.4.1.0

getPublicKey

public java.security.PublicKey getPublicKey()
                                     throws java.io.IOException,
                                            java.security.NoSuchProviderException,
                                            java.security.NoSuchAlgorithmException,
                                            java.security.spec.InvalidKeySpecException
°ø°³Å°¸¦ ȹµæÇÑ´Ù.

Returns:
PublicKey Çü½ÄÀÇ °ø°³Å°
Throws:
java.io.IOException - °ø°³Å° Á¤º¸ µðÄÚµù ½ÇÆÐ½Ã ¹ß»ý
java.security.NoSuchAlgorithmException - Áö¿øÇÏÁö ¾Ê´Â ¾Ë°í¸®ÁòÀÏ °æ¿ì¿¡ ¹ß»ý
java.security.NoSuchProviderException - Áö¿øÇÏÁö ¾Ê´Â ¾ÏÈ£ ¸ðµâ Á¦°øÀÚÀÏ °æ¿ì¿¡ ¹ß»ý
java.security.spec.InvalidKeySpecException - ÀûÇÕÇÏÁö ¾ÊÀº Ű Á¤º¸ÀÎ °æ¿ì¿¡ ¹ß»ý

verify

public boolean verify(java.security.PublicKey publicKey)
               throws java.security.NoSuchAlgorithmException,
                      java.security.NoSuchProviderException,
                      java.security.InvalidKeyException,
                      java.security.SignatureException,
                      java.io.IOException
ÀÎÁõ¼­ÀÇ ¼­¸í°ªÀ» °ËÁõÇÑ´Ù.

Parameters:
publicKey - ÀÎÁõ¼­ ¹ß±Þ ±â°ü ÀÎÁõ¼­ÀÇ °ø°³Å°
Throws:
java.security.NoSuchAlgorithmException - Áö¿øÇÏÁö ¾Ê´Â ¾Ë°í¸®ÁòÀÏ °æ¿ì¿¡ ¹ß»ý
java.security.NoSuchProviderException - Áö¿øÇÏÁö ¾Ê´Â ¾ÏÈ£ ¸ðµâ Á¦°øÀÚÀÏ °æ¿ì¿¡ ¹ß»ý
java.security.InvalidKeyException - ¾Ë°í¸®Áò¿¡ ´ëÇÑ ÀûÇÕÇÑ Å°(À߸øµÈ ÀÎÄÚµù, À߸øµÈ ±æÀÌ, ÃʱâÈ­ µÇÁö ¾ÊÀ½ µî)°¡ ¾Æ´Ñ °æ¿ì¿¡ ¹ß»ý
java.security.SignatureException - ÀϹÝÀûÀÎ ¼­¸í°ú °ü·ÃÇÑ ¿¹¿Ü »çÇ× ¹ß»ýÇÑ °æ¿ì ¹ß»ý
java.io.IOException - °ø°³Å° Á¤º¸ µðÄÚµù ½ÇÆÐ½Ã ¹ß»ý

checkValidity

public void checkValidity()
                   throws java.security.cert.CertificateExpiredException,
                          java.security.cert.CertificateNotYetValidException,
                          java.text.ParseException
ÀÎÁõ¼­°¡ ÇöÀç(½Ã½ºÅÛ ÇöÀç ½Ã°£À» ±âÁØ) À¯È¿ÇÑÁö È®ÀÎÇÑ´Ù.

Throws:
java.security.cert.CertificateExpiredException - ¸¸·áµÈ ÀÎÁõ¼­ÀÎ °æ¿ì¿¡ ¹ß»ý
java.security.cert.CertificateNotYetValidException - ÀÎÁõ¼­°¡ ¾ÆÁ÷ À¯È¿ÇÏÁö ¾ÊÀº °æ¿ì¿¡ ¹ß»ý
java.text.ParseException - ÀÎÁõ¼­ÀÇ À¯È¿±â°£ Á¤º¸ ó¸® ½ÇÆÐ½Ã ¹ß»ý

checkValidity

public void checkValidity(java.util.Date date)
                   throws java.security.cert.CertificateExpiredException,
                          java.security.cert.CertificateNotYetValidException,
                          java.text.ParseException
ÀÔ·ÂÇÑ ½Ã°£À» ±âÁØÀ¸·Î ÀÎÁõ¼­°¡ À¯È¿ÇÑÁö È®ÀÎÇÑ´Ù.

Parameters:
date - ±âÁØ ½Ã°£
Throws:
java.security.cert.CertificateExpiredException - ¸¸·áµÈ ÀÎÁõ¼­ÀÎ °æ¿ì¿¡ ¹ß»ý
java.security.cert.CertificateNotYetValidException - ÀÎÁõ¼­°¡ ¾ÆÁ÷ À¯È¿ÇÏÁö ¾ÊÀº °æ¿ì¿¡ ¹ß»ý
java.text.ParseException - ÀÎÁõ¼­ÀÇ À¯È¿±â°£ Á¤º¸ ó¸® ½ÇÆÐ½Ã ¹ß»ý

JCaosLib
V1.4.4.0


Copyright ¨Ï2007-2011 DreamSecurity Co.,Ltd . All rights reserved