JavaTM 2
Platform
Std.  Ed.  v1. 4.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 ¿ÀºêÁ§Æ®¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
 KeySpec getKeySpec (Key  key, Class  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 - delegateó
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 KeySpec  getKeySpec(Key  key,
                                Class  keySpec)
                         throws InvalidKeySpecException 
ÁöÁ¤µÈ ¿­¼è ¿ÀºêÁ§Æ®ÀÇ »ç¾ç (¿­¼è µ¥ÀÌÅÍ)À» µ¹·ÁÁÝ´Ï´Ù. keySpec ´Â ¿­¼è µ¥ÀÌÅͰ¡ µ¹·ÁÁÖ¾îÁö´Â »ç¾ç Ŭ·¡½º¸¦ ½Äº°ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ±×°ÍÀÌ DSAPublicKeySpec.class ÀÇ °æ¿ì´Â ¿­¼è µ¥ÀÌÅͰ¡ DSAPublicKeySpec Ŭ·¡½ºÀÇ ÀνºÅϽº¿¡ µ¹·ÁÁÖ¾îÁö´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù.

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

translateKey

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

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

JavaTM 2
Platform
Std.  Ed.  v1. 4.0

¹ö±×ÀÇ º¸°í¿Í ±â´ÉÀÇ ¸®Äù½ºÆ®
ÀÌ¿ÜÀÇ API ·¹ÆÛ·±½º ¹× °³¹ßÀÚ¿ë ¹®¼­¿¡ ´ëÇØ¼­´Â Java 2 SDK SE °³¹ßÀÚ¿ë ¹®¼­¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä. °³¹ßÀÚÀü¿ëÀÇ »ó¼¼ÇÑ ÇØ¼³, °³³äÀÇ °³¿ä, ¿ë¾îÀÇ Á¤ÀÇ, ¹ö±×ÀÇ È¸ÇÇÃ¥, ¹× ÄÚµå ½Ç·Ê°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.

Java, Java 2 D, ¹× JDBC ´Â ¹Ì±¹ ¹× ±× ¿ÜÀÇ ³ª¶ó¿¡ À־ÀÇ ¹Ì±¹ Sun Microsystems, Inc. ÀÇ »óÇ¥ ȤÀº µî·Ï»óÇ¥ÀÔ´Ï´Ù.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.