|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | »ý¼ºÀÚ | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
public interface X509Extension
X. 509 È®Àå ±â´ÉÀ» À§ÇÑ ÀÎÅÍÆäÀ̽ºÀÔ´Ï´Ù.
X. 509 v3 Certificates
¹× v2 CRL
(ÀÎÁõ¼
ÀÇ Ãë¼Ò ¸®½ºÆ®)·Î Á¤ÀǵǴ ȮÀå ±â´ÉÀº Ãß°¡ ¼Ó¼ºÀ» »ç¿ëÀÚ
¶Ç´Â °ø°³Å°¿¡ °ü·ÃÁþ°Å³ª ÀÎÁõÀÇ °èÃþÀ» °ü¸®Çϰųª CRL
¹èÆ÷¸¦ °ü¸®Çϰųª ÇÏ´Â ¹æ¹ýÀ» Á¦°øÇÕ´Ï´Ù. ¶Ç, X. 509 È®Àå ±â´É Çü½Ä¿¡¼´Â Ä¿¹Â´ÏƼ¿¡ °íÀ¯ÀÇ Á¤º¸¸¦ ÀüÇϱâ À§Çؼ
Ä¿¹Â´ÏƼ Àü¿ëÀÇ È®Àå ±â´ÉÀ» Á¤ÀÇÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
ÀÎÁõ¼ ¶Ç´Â CRL °¢ È®Àå ±â´ÉÀº À§±â¶ó°í ÇØµµ ºñÀ§±â¶ó°í ÇØµµ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÎÁõ¼ ¶Ç´Â CRL¸¦ »ç¿ëÇÏ´Â ½Ã½ºÅÛ (ÀÎÁõ¼ ¶Ç´Â CRL Ÿ´ç¼ºÀ» °ËÁõÇÏ´Â ¾îÇø®ÄÉÀ̼Ç)À¸·Î ÀνÄÇÒ ¼ö ¾ø´Â À§±âÀÎ È®Àå ±â´ÉÀÌ °ËÃâµÇ¾úÀ» ¶§¿¡´Â ±× ÀÎÁõ¼ ¶Ç´Â CRL¸¦ °ÅºÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. À§±â°¡ ¾Æ´Ñ È®Àå ±â´ÉÀº ÀνÄÇÒ ¼ö ¾ø´Â °æ¿ì´Â ¹«½ÃÇØµµ ±¦Âú½À´Ï´Ù.
ASN. 1 Á¤ÀÇ´Â ´ÙÀ½°ú °°½À´Ï´Ù.
Extensions ::= SEQUENCE SIZE (1..MAX) OF Extension Extension ::= SEQUENCE { extnId OBJECT IDENTIFIER, critical BOOLEAN DEFAULT FALSE, extnValue OCTET STRING -- contains a DER encoding of a value -- of the type registered for use with -- the extnId object identifier value }¸ðµç È®Àå ±â´ÉÀÌ Àνĵǰí ÀÖ´Â °ÍÀº ¾Æ´Ï±â ¶§¹®¿¡
getExtensionValue
¸Þ¼µå´Â È®ÀåÄ¡ (extnValue
)ÀÇ DER ·Î encode µÈ OCTET STRING¸¦ ¸®ÅÏÇÕ´Ï´Ù. À̰ÍÀº È®Àå ±â´ÉÀ» ÀνÄÇÒ ¼ö ÀÖ´Â Class¿¡ ÀÇÇØ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸Þ¼µå °³¿ä | |
---|---|
Set <String > |
getCriticalExtensionOIDs ()
ÀÌ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â °´Ã¼¿¡ ÀÇÇØ °ü¸®µÇ°í ÀÖ´Â ÀÎÁõ¼ ¶Ç´Â CRL ·Î CRITICAL ·Î¼ ¸¶Å· µÇ°í ÀÖ´Â È®ÀåÀÇ OID ij¸¯ÅÍ ¶óÀÎÀÇ Set¸¦ ÃëµæÇÕ´Ï´Ù. |
byte[] |
getExtensionValue (String oid)
°Ç³×¹ÞÀº oid String ·Î ½Äº°µÇ´Â È®ÀåÄ¡ (extnValue)ÀÇ, DER ·Î encode µÈ OCTET ij¸¯ÅÍ ¶óÀÎÀ» ÃëµæÇÕ´Ï´Ù. |
Set <String > |
getNonCriticalExtensionOIDs ()
ÀÌ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â °´Ã¼¿¡ ÀÇÇØ °ü¸®µÇ°í ÀÖ´Â ÀÎÁõ¼ ¶Ç´Â CRL ·Î NON-CRITICAL ·Î¼ ¸¶Å· µÇ°í ÀÖ´Â È®Àå ±â´ÉÀÇ OID ij¸¯ÅÍ ¶óÀÎÀÇ Set¸¦ ÃëµæÇÕ´Ï´Ù. |
boolean |
hasUnsupportedCriticalExtension ()
Áö¿ø µÇ¾î ÀÖÁö ¾ÊÀº À§±âÀÎ È®Àå ±â´ÉÀÌ ÀÖ´ÂÁö¸¦ üũÇÕ´Ï´Ù. |
¸Þ¼µåÀÇ »ó¼¼ |
---|
boolean hasUnsupportedCriticalExtension()
Set <String > getCriticalExtensionOIDs()
InputStream inStrm = new FileInputStream("DER-encoded-Cert");
CertificateFactory cf = CertificateFactory.getInstance("X. 509");
X509Certificate cert = (X509Certificate) cf.generateCertificate(inStrm);
inStrm.close();
Set critSet = cert.getCriticalExtensionOIDs();
if (critSet ! = null && ! critSet.isEmpty()) {
System.out.println("Set of critical extensions:");
for (Iterator i = critSet.iterator(); i.hasNext();) {
String oid = (String) i.next();
System.out.println(oid);
}
}
Set <String > getNonCriticalExtensionOIDs()
InputStream inStrm = new FileInputStream("DER-encoded-CRL");
CertificateFactory cf = CertificateFactory.getInstance("X. 509");
X509CRL crl = (X509CRL) cf.generateCRL(inStrm);
inStrm.close();
byte[] certData = <DER-encoded certificate data>
ByteArrayInputStream bais = new ByteArrayInputStream(certData);
X509Certificate cert = (X509Certificate) cf.generateCertificate(bais);
bais.close();
X509CRLEntry badCert =
crl.getRevokedCertificate(cert.getSerialNumber());
if (badCert ! = null) {
Set nonCritSet = badCert.getNonCriticalExtensionOIDs();
if (nonCritSet ! = null)
for (Iterator i = nonCritSet.iterator(); i.hasNext();) {
String oid = (String) i.next();
System.out.println(oid);
}
}
byte[] getExtensionValue(String oid)
oid
String ·Î ½Äº°µÇ´Â È®ÀåÄ¡ (extnValue)ÀÇ, DER ·Î encode µÈ OCTET ij¸¯ÅÍ ¶óÀÎÀ» ÃëµæÇÕ´Ï´Ù. oid
ij¸¯ÅÍ ¶óÀÎÀº ÇǸ®¾îµå·Î ´Ü¶ôÁö¾îÁø Á¤ÀÇ Á¤¼ö¼¼Æ®¿¡ ÀÇÇØ ³ªÅ¸³»Áý´Ï´Ù.
·Ê:
OID (°´Ã¼ ½Äº°ÀÚ) | È®Àå ±â´É¸í |
---|---|
2.5. 29.14 | SubjectKeyIdentifier |
2.5. 29.15 | KeyUsage |
2.5. 29.16 | PrivateKeyUsage |
2.5. 29.17 | SubjectAlternativeName |
2.5. 29.18 | IssuerAlternativeName |
2.5. 29.19 | BasicConstraints |
2.5. 29.30 | NameConstraints |
2.5. 29.33 | PolicyMappings |
2.5. 29.35 | AuthorityKeyIdentifier |
2.5. 29.36 | PolicyConstraints |
oid
- È®Àå ±â´ÉÀÇ °´Ã¼ ½Äº°ÀÚÀÇ °ª
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ÀÇ Å¬·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | »ý¼ºÀÚ | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.