JavaTM 2 Platform
Standard Ed. 5.0

java.security
Ŭ·¡½º KeyFactory

java.lang.Object 
  »óÀ§¸¦ È®Àå java.security.KeyFactory

public class KeyFactory
extends Object

Å° ÆÑÅ丮´Â Key ÇüÀÇ ºÒÅõ¸íÇÑ ¾ÏȣŰÀÎ ¡¸Å°¡¹¶ó°í, ±âº»ÀÇ Å° µ¥ÀÌÅÍÀÇ Åõ¸íÇÑ Ç¥ÇöÀÎ ¡¸Å° »ç¾ç¡¹À̶ó´Â »çÀÌÀÇ º¯È¯À» ½Ç½ÃÇϱâ À§Çؼ­ »ç¿ëÇÕ´Ï´Ù.

Å° ÆÑÅ丮´Â ½Ö¹æÇ⼺ÀÔ´Ï´Ù. Áï, ÁöÁ¤ÇÑ Å° »ç¾ç (Å° µ¥ÀÌÅÍ)À¸·ÎºÎÅÍ ºÒÅõ¸íÇÑ Å° °´Ã¼¸¦ ±¸ÃàÇÏ´Â Àϵµ, ÀûÀýÇÑ Çü½Ä¿¡¼­ Å° °´Ã¼ÀÇ ±âº»ÀÇ Å° µ¥ÀÌŸ¸¦ »Ì±â ½ÃÀÛÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

°°Àº Å°¿¡ ´ëÇؼ­ ȣȯ¼ºÀÌ ÀÖ´Â º¹¼öÀÇ Å° »ç¾çÀÌ Á¸ÀçÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î DSA °ø°³Å°´Â DSAPublicKeySpec ¶Ç´Â X509EncodedKeySpec¸¦ »ç¿ëÇØ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. Å° ÆÑÅ丮¸¦ »ç¿ëÇϸé, ȣȯ¼ºÀÌ ÀÖ´Â Å° »ç¾ç°£ÀÇ º¯È¯À» ½Ç½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù .

ÀÌÇÏ¿¡ Å° ÆÑÅ丮¸¦ »ç¿ëÇØ, DSA °ø°³Å°¸¦ encode ÇÑ »óÅ·κÎÅÍ ÀνºÅϽº¸¦ »ý¼ºÇÏ´Â ¿¹¸¦ ³ªÅ¸³À´Ï´Ù. Alice°¡ Bob ·ÎºÎÅÍ µðÁöÅÐ ¼­¸íÀ» ¹Þ¾Ò´Ù°í ÇÕ´Ï´Ù. Bob´Â ±×ÀÇ ¼­¸íÀ» °ËÁõÇϱâ À§ÇÑ encode Çü½ÄÀÇ °ø°³Å°µµ º¸³Â½À´Ï´Ù. Alice´Â À̰͵éÀ» ´ÙÀ½°ú °°ÀÌ Ã³¸®ÇÕ´Ï´Ù.


 X509EncodedKeySpec bobPubKeySpec = new X509EncodedKeySpec(bobEncodedPubKey);
 KeyFactory keyFactory = KeyFactory.getInstance("DSA");
 PublicKey bobPubKey = keyFactory.generatePublic(bobPubKeySpec);
 Signature sig = Signature.getInstance("DSA");
 sig.initVerify(bobPubKey);
 sig.update(data);
 sig.verify(signature);
 

µµÀÔµÈ ¹öÀü :
1.2
°ü·Ã Ç׸ñ:
Key, PublicKey, PrivateKey, KeySpec, DSAPublicKeySpec, X509EncodedKeySpec

»ý¼ºÀÚ °³¿ä
protected KeyFactory (KeyFactorySpi  keyFacSpi, Provider  provider, String  algorithm)
          KeyFactory °´Ã¼¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
 
¸Þ¼­µå °³¿ä
 PrivateKey generatePrivate (KeySpec  keySpec)
          ÁöÁ¤µÈ Å° »ç¾ç (Å° µ¥ÀÌÅÍ)À¸·ÎºÎÅÍ ºñ°ø°³Å° °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.
 PublicKey generatePublic (KeySpec  keySpec)
          ÁöÁ¤µÈ Å° »ç¾ç (Å° µ¥ÀÌÅÍ)À¸·ÎºÎÅÍ °ø°³Å° °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.
 String getAlgorithm ()
          ÀÌ KeyFactory¿¡ °ü·ÃÇÑ ¾Ë°í¸®ÁòÀÇ À̸§À» ÃëµæÇÕ´Ï´Ù.
static KeyFactory getInstance (String  algorithm)
          ÁöÁ¤µÈ ¾Ë°í¸®ÁòÀ» ±¸ÇöÇÏ´Â KeyFactory °´Ã¼¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
static KeyFactory getInstance (String  algorithm, Provider  provider)
          ÁöÁ¤µÈ ÇÁ·Î¹ÙÀÌ´õ·ÎºÎÅÍ, ÁöÁ¤µÈ ¾Ë°í¸®ÁòÀÇ KeyFactory °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.
static KeyFactory getInstance (String  algorithm, String  provider)
          ÁöÁ¤µÈ ÇÁ·Î¹ÙÀÌ´õ·ÎºÎÅÍ, ÁöÁ¤µÈ ¾Ë°í¸®ÁòÀÇ KeyFactory °´Ã¼¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
<T extends KeySpec >
T
getKeySpec (Key  key, Class <T> keySpec)
          ÁöÁ¤µÈ Å° °´Ã¼ÀÇ »ç¾ç (Å° µ¥ÀÌÅÍ)À» ¸®ÅÏÇÕ´Ï´Ù.
 Provider getProvider ()
          ÀÌ Å° ÆÑÅ丮 °´Ã¼ÀÇ ÇÁ·Î¹ÙÀÌ´õ¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 Key translateKey (Key  key)
          ÇÁ·Î¹ÙÀÌ´õ°¡ ¹ÌÁöÀÎÁö, ½Å·ÚÇÒ ¼ö ¾øÀ» °¡´É¼ºÀÌ ÀÖ´Â Å° °´Ã¼¸¦, ÀÌ Å° ÆÑÅ丮ÀÇ ´ëÀÀÇÏ´Â Å° °´Ã¼·Î º¯È¯ÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

KeyFactory

protected KeyFactory(KeyFactorySpi  keyFacSpi,
                     Provider  provider,
                     String  algorithm)
KeyFactory °´Ã¼¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
keyFacSpi - À§¾çó
provider - ÇÁ·Î¹ÙÀÌ´õ
algorithm - ÀÌ KeyFactory¿¡ °ü·Ã½ÃÅ°´Â ¾Ë°í¸®ÁòÀÇ À̸§
¸Þ¼­µåÀÇ »ó¼¼

getInstance

public static KeyFactory  getInstance(String  algorithm)
                              throws NoSuchAlgorithmException 
ÁöÁ¤µÈ ¾Ë°í¸®ÁòÀ» ±¸ÇöÇÏ´Â KeyFactory °´Ã¼¸¦ ÀÛ¼ºÇÕ´Ï´Ù. ¿ä±¸µÇ´Â ¾Ë°í¸®ÁòÀÇ ±¸ÇöÀ» µðÆúÆ®ÀÇ ÇÁ·Î¹ÙÀÌ´õ ÆÐÅ°Áö°¡ Á¦°øÇÏ´Â °æ¿ì´Â ±× ±¸ÇöÀ» Æ÷ÇÔÇÑ KeyFactory ÀνºÅϽº°¡ ¸®Åϵ˴ϴ٠. µðÆúÆ® ÆÐÅ°Áö¿¡ ¸ñÀûÀÇ ¾Ë°í¸®ÁòÀÌ ¾ø´Â °æ¿ì´Â ´Ù¸¥ ÆÐÅ°Áö¸¦ °Ë»öÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
algorithm - ¿ä±¸µÇ´Â Å° ¾Ë°í¸®ÁòÀÇ À̸§. Ç¥ÁØ ¾Ë°í¸®ÁòÀÇ À̸§¿¡ ´ëÇؼ­´Â ¡¸Java ¾Ïȣȭ ¾ÆÅ°ÅØÃÄ API »ç¾ç & ·¹ÆÛ·±½º¡¹ÀÇ ºÎ·Ï A¸¦ ÂüÁ¶
¹Ýȯ°ª:
ÁöÁ¤µÈ ¾Ë°í¸®ÁòÀÇ KeyFactory °´Ã¼
¿¹¿Ü:
NoSuchAlgorithmException - ¿ä±¸µÇ´Â ¾Ë°í¸®ÁòÀÌ, µðÆúÆ®ÀÇ ÇÁ·Î¹ÙÀÌ´õ ÆÐÅ°Áö¿¡µµ, °Ë»öÇÑ °Í ¿ÜÀÇ ÇÁ·Î¹ÙÀÌ´õ ÆÐÅ°Áö¿¡µµ ¾ø´Â °æ¿ì

getInstance

public static KeyFactory  getInstance(String  algorithm,
                                     String  provider)
                              throws NoSuchAlgorithmException,

                                     NoSuchProviderException 
ÁöÁ¤µÈ ÇÁ·Î¹ÙÀÌ´õ·ÎºÎÅÍ, ÁöÁ¤µÈ ¾Ë°í¸®ÁòÀÇ KeyFactory °´Ã¼¸¦ ÀÛ¼ºÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
algorithm - ¿ä±¸µÇ´Â Å° ¾Ë°í¸®ÁòÀÇ À̸§. Ç¥ÁØ ¾Ë°í¸®ÁòÀÇ À̸§¿¡ ´ëÇؼ­´Â ¡¸Java ¾Ïȣȭ ¾ÆÅ°ÅØÃÄ API »ç¾ç & ·¹ÆÛ·±½º¡¹ÀÇ ºÎ·Ï A¸¦ ÂüÁ¶
provider - ÇÁ·Î¹ÙÀÌ´õ¸í
¹Ýȯ°ª:
ÁöÁ¤µÈ ¾Ë°í¸®ÁòÀÇ KeyFactory °´Ã¼
¿¹¿Ü:
NoSuchAlgorithmException - ÁöÁ¤µÈ ÇÁ·Î¹ÙÀÌ´õ¿¡ ¾Ë°í¸®ÁòÀÌ ¾ø´Â °æ¿ì
NoSuchProviderException - ÇÁ·Î¹ÙÀÌ´õ°¡ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
IllegalArgumentException - ÇÁ·Î¹ÙÀÌ´õÀÇ À̸§ÀÌ null ³ª ºñ¾îÀÖ´Â °æ¿ì
°ü·Ã Ç׸ñ:
Provider

getInstance

public static KeyFactory  getInstance(String  algorithm,
                                     Provider  provider)
                              throws NoSuchAlgorithmException 
ÁöÁ¤µÈ ÇÁ·Î¹ÙÀÌ´õ·ÎºÎÅÍ, ÁöÁ¤µÈ ¾Ë°í¸®ÁòÀÇ KeyFactory °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù. ÁÖ: provider´Â µî·ÏµÇ¾î ÀÖÀ» ÇÊ¿ä´Â ¾ø½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
algorithm - ¿ä±¸µÇ´Â Å° ¾Ë°í¸®ÁòÀÇ À̸§. Ç¥ÁØ ¾Ë°í¸®ÁòÀÇ À̸§¿¡ ´ëÇؼ­´Â ¡¸Java ¾Ïȣȭ ¾ÆÅ°ÅØÃÄ API »ç¾ç & ·¹ÆÛ·±½º¡¹ÀÇ ºÎ·Ï A¸¦ ÂüÁ¶
provider - ÇÁ·Î¹ÙÀÌ´õ
¹Ýȯ°ª:
ÁöÁ¤µÈ ¾Ë°í¸®ÁòÀÇ KeyFactory °´Ã¼
¿¹¿Ü:
NoSuchAlgorithmException - ÁöÁ¤µÈ ÇÁ·Î¹ÙÀÌ´õ¿¡ ¾Ë°í¸®ÁòÀÌ ¾ø´Â °æ¿ì
IllegalArgumentException - provider°¡ nullÀÎ °æ¿ì
µµÀÔµÈ ¹öÀü :
1.4
°ü·Ã Ç׸ñ:
Provider

getProvider

public final Provider  getProvider()
ÀÌ Å° ÆÑÅ丮 °´Ã¼ÀÇ ÇÁ·Î¹ÙÀÌ´õ¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ Å° ÆÑÅ丮 °´Ã¼ÀÇ ÇÁ·Î¹ÙÀÌ´õ

getAlgorithm

public final String  getAlgorithm()
ÀÌ KeyFactory¿¡ °ü·ÃÇÑ ¾Ë°í¸®ÁòÀÇ À̸§À» ÃëµæÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ KeyFactory¿¡ °ü·ÃÇÑ ¾Ë°í¸®ÁòÀÇ À̸§

generatePublic

public final PublicKey  generatePublic(KeySpec  keySpec)
                               throws InvalidKeySpecException 
ÁöÁ¤µÈ Å° »ç¾ç (Å° µ¥ÀÌÅÍ)À¸·ÎºÎÅÍ °ø°³Å° °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
keySpec - °ø°³Å°ÀÇ »ç¾ç (Å° µ¥ÀÌÅÍ)
¹Ýȯ°ª:
°ø°³Å°
¿¹¿Ü:
InvalidKeySpecException - ÁöÁ¤µÈ Å° »ç¾çÀÌ ÀÌ Å° ÆÑÅ丮¿¡ ÇÑ °ø°³Å°ÀÇ »ý¼º¿¡ ºÎÀûÀýÇÑ °æ¿ì

generatePrivate

public final PrivateKey  generatePrivate(KeySpec  keySpec)
                                 throws InvalidKeySpecException 
ÁöÁ¤µÈ Å° »ç¾ç (Å° µ¥ÀÌÅÍ)À¸·ÎºÎÅÍ ºñ°ø°³Å° °´Ã¼¸¦ »ý¼ºÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
keySpec - ºñ°ø°³Å°ÀÇ »ç¾ç (Å° µ¥ÀÌÅÍ)
¹Ýȯ°ª:
ºñ°ø°³Å°
¿¹¿Ü:
InvalidKeySpecException - ÁöÁ¤µÈ Å° »ç¾çÀÌ ÀÌ Å° ÆÑÅ丮¿¡ ÇÑ ºñ°ø°³Å°ÀÇ »ý¼º¿¡ ºÎÀûÀýÇÑ °æ¿ì

getKeySpec

public final <T extends KeySpec > T getKeySpec(Key  key,
                                              Class <T> keySpec)
                                   throws InvalidKeySpecException 
ÁöÁ¤µÈ Å° °´Ã¼ÀÇ »ç¾ç (Å° µ¥ÀÌÅÍ)À» ¸®ÅÏÇÕ´Ï´Ù. keySpec´Â Å° µ¥ÀÌÅÍ°¡ ¸®ÅÏµÈ »ç¾ç Ŭ·¡½º¸¦ ½Äº°ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ±×°ÍÀÌ DSAPublicKeySpec.classÀÎ °æ¿ì´Â Å° µ¥ÀÌÅÍ°¡ DSAPublicKeySpec Ŭ·¡½ºÀÇ ÀνºÅϽº¿¡ ¸®ÅÏµÈ °ÍÀ» ³ªÅ¸³À´Ï´Ù.

ÆĶó¹ÌÅÍ:
key - Å°
keySpec - Å° µ¥ÀÌÅÍ°¡ ¸®ÅÏµÈ »ç¾ç Ŭ·¡½º
¹Ýȯ°ª:
¿ä±¸µÇ´Â »ç¾ç Ŭ·¡½ºÀÇ ÀνºÅϽº¿¡ À־ÀÇ ±âº»ÀÇ Å° »ç¾ç (Å° µ¥ÀÌÅÍ)
¿¹¿Ü:
InvalidKeySpecException - ¿ä±¸µÇ´Â Å° »ç¾çÀÌ ÁöÁ¤µÈ Å°¿¡ ºÎÀûÀýÇÑ °æ¿ì, ȤÀº ÀνĵÇÁö ¾Ê´Â ¾Ë°í¸®ÁòÀ̳ª Çü½ÄÀÇ Å°¸¦ ÁöÁ¤ÇßÀ» °æ¿ì µî, ÁöÁ¤µÈ Å°¸¦ ó¸®ÇÒ ¼ö ¾ø´Â °æ¿ì

translateKey

public final Key  translateKey(Key  key)
                       throws InvalidKeyException 
ÇÁ·Î¹ÙÀÌ´õ°¡ ¹ÌÁöÀÎÁö, ½Å·ÚÇÒ ¼ö ¾øÀ» °¡´É¼ºÀÌ ÀÖ´Â Å° °´Ã¼¸¦, ÀÌ Å° ÆÑÅ丮ÀÇ ´ëÀÀÇÏ´Â Å° °´Ã¼·Î º¯È¯ÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
key - ÇÁ·Î¹ÙÀÌ´õ°¡ ¹ÌÁöÀÎÁö, ½Å·ÚÇÒ ¼ö ¾ø´Â Å°
¹Ýȯ°ª:
º¯È¯ÇÑ Å°
¿¹¿Ü:
InvalidKeyException - ÁöÁ¤µÈ Å°¸¦ ÀÌ Å° ÆÑÅ丮·Î ó¸®ÇÒ ¼ö ¾ø´Â °æ¿ì

JavaTM 2 Platform
Standard Ed. 5.0

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.