JavaTM 2
Platform
Std.  Ed.  v1. 4.0

org.ietf.jgss
ÀÎÅÍÆäÀ̽º GSSContext


public interface GSSContext

ÀÌ ÀÎÅÍÆäÀ̽º¿¡¼­´Â GSS-API ÀÇ ½ÃÅ¥·¯Æ¼ ¹®¸ÆÀ» ĸ½¶È­ÇØ, ±× ¹®¸ÆÀ¸·Î ÀÌ¿ëÇÒ ¼ö ÀÖ´Â ½ÃÅ¥·¯Æ¼ ¼­ºñ½º¸¦ Á¦°øÇÕ´Ï´Ù. ½ÃÅ¥·¯Æ¼ ¹®¸ÆÀº ÇǾî·Î ÃëµæÇÑ ÀÚ°ÝÀ» »ç¿ëÇØ ÇǾ¿¡ È®¸³µË´Ï´Ù. 1 Á¶ÀÇ ÇǾ¿¡´Â °°Àº ÀÚ°Ý ¶Ç´Â ´Ù¸¥ ÀÚ°ÝÀ» »ç¿ëÇÏ´Â º¹¼öÀÇ ¹®¸ÆÀÌ µ¿½Ã¿¡ Á¸ÀçÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. GSS-API ´Â ÇǾÀÇ ½ÃÅ¥·¯Æ¼ ¹®¸Æ¿¡ ÀÇÇØ »ý¼ºµÇ´Â ÅäÅ«À» Àü¼Û ÇÒ °æ¿ì¿¡, ºÎÇÏÀÇ Àü¼Û ÇÁ·ÎÅäÄÝ¿¡´Â ÀÇÁ¸ÇÏÁö ¾Ê°í , ±× È£ÃâÃø ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÁ¸ÇÕ´Ï´Ù.

È£ÃâÃøÀÌ µðÆúÆ®ÀÇ GSSManager ÀνºÅϽº¸¦ »ç¿ëÇØ ¹®¸ÆÀ» ÀνºÅϽºÈ­ÇÏ´Â °æ¿ì´Â Kerberos v5 GSS-API ±â±¸¸¦ »ç¿ëÇØ ¹®¸ÆÀÌ È®¸³µË´Ï´Ù. ÀÌ ±â±¸´Â OID "1.2. 840.113554. 1.2. 2" ·Î¼­ ½Äº°µÇ¾î RFC 1964 ¿¡ Á¤Àǵǰí ÀÖ½À´Ï´Ù.

¹®¸ÆÀÇ È®¸³ÀÌ °³½ÃµÇ±â Àü¿¡, ¹®¸ÆÀÇ È®¸³µÇ´Â ¹®¸ÆÀÇ Æ¯¼ºÀ» ±âµ¿ÃøÀÌ ¿ä±¸ÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. È£ÃâÃøÀÌ ¿ä±¸ÇÑ Æ¯¼ºÀÌ, ºÎÇÏÀÇ ±â±¸¿¡ ÀÇÇØ ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº °ÍÀÌ ÀÖ½À´Ï´Ù. ¹®¸ÆÀÌ È®¸³Çϸé(ÀÚ), È£ÃâÃøÀº ´Ù¾çÇÑ Äí¿¡¸® ¸Þ¼Òµå¸¦ »ç¿ëÇØ, ±× ¹®¸ÆÀ¸·ÎºÎÅÍ Á¦°øµÈ ½ÇÁ¦ÀÇ Æ¯¼ºÀ̳ª ¼­ºñ½º¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. µðÆúÆ®ÀÇ GSSManager ÀνºÅϽº·ÎºÎÅÍ Á¦°øµÇ´Â Kerberos v5 GSS-API ±â±¸¸¦ »ç¿ëÇϰí ÀÖÀ» ¶§´Â ¸ðµç ¿É¼Ç ¼­ºñ½º¸¦ ·ÎÄÿ¡ ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, »óÈ£ ÀÎÁõ, ÀÚ°ÝÀÇ delegate, ±â¹Ð¼º°ú ¿ÏÀü¼ºÀÇ º¸È£, ¸Þ¼¼Áö¸¶´ÙÀÇ ¸®Ç÷¹ÀÌ °ËÃâÀ̳ª ¼ø¼­ºÎµîÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. GSS-API ¿¡¼­´Â ¸Þ¼¼ÁöÀÇ ¿ÏÀü¼ºÀ» º¸È£ÇÏ·Á¸é , ¸Þ¼¼ÁöÀÇ ±â¹Ð¼ºÀ» º¸È£ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

¹®¸ÆÀÌ È®¸³ÇÒ ¶§±îÁö ±âµ¿ Ãø¿¡ ÀÇÇÑ initSecContext È£Ãâ°ú ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ ÀÇÇÑ acceptSecContext È£ÃâÀÌ ¹Ýº¹ÇØÁý´Ï´Ù. ÀÌ ·çÇÁ´Â ¹®¸ÆÀÌ È®¸³Çϸé(ÀÚ) Á¾·áÇÕ´Ï´Ù. ÀÌ ·çÇÁÀÇ Ã³¸®Áß¿¡,initSecContext ¹× acceptSecContext ¸Þ¼Òµå´Â ÅäÅ«À» »ý¼ºÇÕ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ±× ÅäÅ«À» ÇǾ ¼Û½ÅÇÕ´Ï´Ù. ÇǾî´Â acceptSecContext ¶Ç´Â initSecContext ¿¡ ´ëÇØ¼­ ÀûÀýÇÑ ÅäÅ«À» ÀÔ·ÂÀ¸·Î¼­ °Ç³×ÁÝ´Ï´Ù.

¹®¸ÆÀÌ È®¸³Çϱâ Àü¿¡,isProtReady ¸Þ¼Òµå¸¦ È£ÃâÇØ,wrap ¹× getMIC ÀÇ ¸Þ¼¼Áö¸¶´ÙÀÇ Á¶ÀÛ¿¡ ÀÌ ¹®¸ÆÀ» »ç¿ëÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼Òµå¸¦ »ç¿ëÇϸé, ¿ÏÀüÇÏ°Ô È®¸³µÇ±â ÀüÀÇ ¹®¸Æ¿¡ ´ëÇØ¼­ ¸Þ¼¼Áö¸¶´ÙÀÇ Á¶ÀÛÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇÏ´ÂÁö isProtReady ¸Þ¼Òµå·ÎºÎÅÍ true °¡ µ¹·ÁÁÖ¾îÁö¸é(ÀÚ), Äí¿¡¸® routine¸¦ È£ÃâÇØ, È®¸³µÈ ¹®¸ÆÀÇ ½ÇÁ¦ÀÇ Æ¯¼ºÀ̳ª ¼­ºñ½º¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç,wrap ¹× getMIC ÀÇ ¸Þ¼¼Áö¸¶´ÙÀÇ ¸Þ¼Òµå¸¦ »ç¿ëÇØ, ¾îÇø®ÄÉÀ̼ÇÀÌ Á¦°øÇÏ´Â µ¥ÀÌÅÍ¿¡ ´ëÇØ¼­ ¾Ïȣȭ Á¶ÀÛÀ» ½Ç½ÃÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

¹®¸ÆÀÌ ºÒÇÊ¿äÇÏ°Ô µÇ¸é(ÀÚ),dispose ¸¦ È£ÃâÇØ, ±× ¹®¸ÆÀÌ »ç¿ëÇϰí ÀÖ´Â ½Ã½ºÅÛ ÀÚ¿øÀ» ¸ðµÎ ÇØ¹æÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¹®¸ÆÀº Åë»ó, ó¸®ÇÏ´Â ÅäÅ«¿¡ °üÇÑ ¼ø¼­ºÎ¿Í ¸®Ç÷¹ÀÌ °ËÃâ Á¤º¸¸¦ º¸°ü À¯ÁöÇϰí ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡, ÅäÅ«ÀÌ ÀÌ ¹®¸Æ¿¡°Ô °Ç³×Á® 󸮵Ǵ ¼ø¼­°¡ Áß¿äÇÏ°Ô µË´Ï´Ù. ¶Ç, ÀÌ ÀÎÅÍÆäÀ̽º³»ÀÇ ¸Þ¼Òµå´Â µ¿±âÈ­ µÇÁö ¾Ê½À´Ï´Ù. º¹¼öÀÇ thread°£¿¡ GSSContext ¸¦ °øÀ¯ÇÒ ¶§´Â ÇϵîÀÇ ¾îÇø®ÄÉÀÌ¼Ç ·¹º§ÀÇ µ¿±âÈ­¸¦ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

GSS-API ¹®¸ÆÀ» »ç¿ëÇÒ ¶§ÀÇ ½ÃÅ¥·¯Æ¼ Á¦ÇÑÀº GSS-API ±â±¸ ÇÁ·Î¹ÙÀÌ´õ¿¡ µû¶ó¼­ ´Ù¸¨´Ï´Ù. ÀÌ·¯ÇÑ Á¦ÇÑ¿¡ ´ëÇØ¼­´Â °¢ ±â±¸ ÇÁ·Î¹ÙÀÌ´õÀÇ ¹®¼­¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä. ÀÌ·¯ÇÑ ½ÃÅ¥·¯Æ¼ Á¦ÇÑÀ» ±â±¸Ãþ¿¡¼­ °Ë»çÇÏ´Â °æ¿ì´Â ¾îÇø®ÄÉÀ̼ǿ¡ ÀûÀýÇÑ ±ÇÇÑÀÌ ºÎ¿©µÇ°í ÀÖÀ» Çʿ䰡 ÀÖ½À´Ï´Ù.

´ÙÀ½¿¡ ³ªÅ¸³»´Â Äڵ忹´Â ±âµ¿Ãø ÇǾîÀÇ GSSContext ÀÎÅÍÆäÀ̽ºÀÇ »ç¿ë¹ýÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù. GSSContext ¿ÀºêÁ§Æ®¿¡ ´ëÇØ¼­, ¿ÀºêÁ§Æ®ÀÇ ÀνºÅϽºÈ­, ¸ñÇ¥ Ç÷¡±×ÀÇ ¼³Á¤, ¹®¸ÆÀÇ È®¸³, ½ÇÁ¦ÀÇ ¹®¸Æ Ç÷¡±×ÀÇ Á¶È¸, ¾îÇø®ÄÉÀÌ¼Ç µ¥ÀÌÅÍ¿¡ ´ëÇÑ ¸Þ¼¼Áö¸¶´ÙÀÇ Á¶ÀÛ, ¹®¸ÆÀÇ ÃÖÁ¾ °ËÃâµîÀ» ½Ç½ÃÇϰí ÀÖ½À´Ï´Ù.

    // Create a context using default credentials
    // and the implementation specific default mechanism
    GSSManager manager ...
    GSSName targetName ...
    GSSContext context = manager.createContext(targetName, null, null,
                                           GSSContext.INDEFINITE_LIFETIME);

    // set desired context options prior to context establishment
    context.requestConf(true);
    context.requestMutualAuth(true);
    context.requestReplayDet(true);
    context.requestSequenceDet(true);

    // establish a context between peers

    byte []inToken = new byte[0];

    // Loop while there still is a token to be processed

    while (! context.isEstablished()) {

        byte[] outToken
            = context.initSecContext(inToken, 0, inToken.length);

        // send the output token if generated
        if (outToken ! = null)
            sendToken(outToken);

        if (! context.isEstablished()) {
            inToken = readToken();
    }

     // display context information
     System.out.println("Remaining lifetime in seconds = "
                                          + context.getLifetime());
     System.out.println("Context mechanism = " + context.getMech());
     System.out.println("Initiator = " + context.getSrcName());
     System.out.println("Acceptor = " + context.getTargName());

     if (context.getConfState())
             System.out.println("Confidentiality (i.e., privacy) is available");

     if (context.getIntegState())
             System.out.println("Integrity is available");

     // perform wrap on an application supplied message, appMsg,
     // using QOP = 0, and requesting privacy service
     byte [] appMsg ...

     MessageProp mProp = new MessageProp(0, true);

     byte []tok = context.wrap(appMsg, 0, appMsg.length, mProp);

     sendToken(tok);

     // release the local-end of the context
     context.dispose();

µµÀÔµÈ ¹öÁ¯:
1.4

ÇʵåÀÇ °³¿ä
static int DEFAULT_LIFETIME
          ¹®¸ÆÀÇ µðÆúÆ®ÀÇ ¼ö¸íÀ» ³ªÅ¸³»´Â ¼ö¸í Á¤¼öÀÔ´Ï´Ù.
static int INDEFINITE_LIFETIME
          ¹®¸ÆÀÇ ¼ö¸íÀÌ ¹«±âÇÑÀÎ °ÍÀ» ³ªÅ¸³»´Â ¼ö¸í Á¤¼öÀÔ´Ï´Ù.
 
¸Þ¼ÒµåÀÇ °³¿ä
 byte[] acceptSecContext (byte[] inToken, int offset, int len)
          ÇǾî·ÎºÎÅÍ ÅäÅ«ÀÌ Âø½ÅÇßÀ» ¶§¿¡, ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ ÀÇÇØ ºÒ·Á °©´Ï´Ù.
 void acceptSecContext (InputStream  inStream, OutputStream  outStream)
          ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ ÀÇÇØ ºÒ·Á °¡´Â ¸Þ¼ÒµåÀÔ´Ï´Ù.
 void dispose ()
          ¹®¸Æ ¿ÀºêÁ§Æ®¿¡ ÀúÀåµÇ°í ÀÖ´Â ½Ã½ºÅÛ ÀÚ¿ø°ú ¾Ïȣȭ Á¤º¸¸¦ ¸ðµÎ ÇØ¹æÇØ, ±× ¹®¸ÆÀ» ¹«È¿·Î ÇÕ´Ï´Ù.
 byte[] export ()
          ÀÌ ¹®¸ÆÀ» export ÇØ, ´Ù¸¥ ÇÁ·Î¼¼½º¸¦ ÀÓÆ÷Æ® ÇÒ ¼ö ÀÖ°Ô ÇÕ´Ï´Ù.
 boolean getAnonymityState ()
          ¹®¸ÆÀÇ ±âµ¿ÃøÀÌ ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ À͸íÀ¸·Î¼­ ÀÎÁõµÇ°í ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
 boolean getConfState ()
          ÀÌ ¹®¸ÆÀ¸·Î µ¥ÀÌÅÍÀÇ ±â¹Ð¼ºÀ» ÀÌ¿ëÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù.
 boolean getCredDelegState ()
          ÀÌ ¹®¸ÆÀ¸·Î ÀÚ°ÝÀÇ delegateÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
 GSSCredential getDelegCred ()
          ¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ delegate µÈ ÀÚ°ÝÀ» ÃëµæÇÕ´Ï´Ù.
 boolean getIntegState ()
          ÀÌ ¹®¸ÆÀ¸·Î µ¥ÀÌÅÍÀÇ ¿ÏÀü¼ºÀ» ÀÌ¿ëÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù.
 int getLifetime ()
          ÀÌ ¹®¸ÆÀÇ ³ª¸ÓÁöÀÇ ¼ö¸íÀ» °Ë»çÇÕ´Ï´Ù.
 Oid getMech ()
          ÀÌ ¹®¸Æ¿¡ »ç¿ëµÇ°í ÀÖ´Â ±â±¸¸¦ °Ë»çÇÕ´Ï´Ù.
 byte[] getMIC (byte[] inMsg, int offset, int len, MessageProp  msgProp)
          ÁöÁ¤µÈ ¸Þ¼¼ÁöÀÇ ¾Ïȣȭ MIC (¸Þ¼¼Áö ¿ÏÀü¼º ÄÚµå)¸¦ Æ÷ÇÔÇÑ ÅäÅ«À» µ¹·ÁÁÝ´Ï´Ù.
 void getMIC (InputStream  inStream, OutputStream  outStream, MessageProp  msgProp)
          ½ºÆ®¸²À» »ç¿ëÇØ, ÁöÁ¤µÈ ¸Þ¼¼ÁöÀÇ ¾Ïȣȭ MIC ¸¦ Æ÷ÇÔÇÑ ÅäÅ«À» µ¹·ÁÁÝ´Ï´Ù.
 boolean getMutualAuthState ()
          ÀÌ ¹®¸ÆÀ¸·Î »óÈ£ ÀÎÁõÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
 boolean getReplayDetState ()
          ÀÌ ¹®¸ÆÀÇ ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½º·Î ¸®Ç÷¹ÀÌ °ËÃâÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
 boolean getSequenceDetState ()
          ÀÌ ¹®¸ÆÀÇ ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½º·Î sequence check°¡ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
 GSSName getSrcName ()
          ¹®¸ÆÀÇ ±âµ¿ÃøÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù.
 GSSName getTargName ()
          ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù.
 int getWrapSizeLimit (int qop, boolean confReq, int maxTokenSize)
          wrap ¿¡ °Ç³×ÁÙ ¼ö°¡ ÀÖ´Â ¸Þ¼¼Áö »çÀÌÁîÀÇ Á¦ÇÑÀ» °áÁ¤ÇÒ ¶§ »ç¿ëÇÕ´Ï´Ù.
 byte[] initSecContext (byte[] inputBuf, int offset, int len)
          ¹®¸ÆÀÇ ±âµ¿ Ãø¿¡¾ß´Â ºÒ·Á °¡´Â ¸Þ¼ÒµåÀÔ´Ï´Ù.
 int initSecContext (InputStream  inStream, OutputStream  outStream)
          ¹®¸ÆÀÇ ±âµ¿ Ãø¿¡¾ß´Â ºÒ·Á °¡´Â ¸Þ¼ÒµåÀÔ´Ï´Ù.
 boolean isEstablished ()
          ¹®¸ÆÀ» È®¸³Çϱâ Àü¿¡, ¹®¸Æ »óŸ¦ È®ÀÎÇÒ °æ¿ì¿¡ »ç¿ëÇÕ´Ï´Ù.
 boolean isInitiator ()
          ÀÌ ÇǾ ¹®¸ÆÀÇ ±âµ¿ÃøÀÏÁö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù.
 boolean isProtReady ()
          ÀÌ ¹®¸ÆÀ¸·Î ¸Þ¼¼Áö¸¶´ÙÀÇ Á¶ÀÛÀ» °ð¹Ù·Î °³½ÃÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù.
 boolean isTransferable ()
          export ¸Þ¼Òµå¸¦ »ç¿ëÇØ, ÀÌ ¹®¸ÆÀ» ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ Àü¼Û ÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù.
 void requestAnonymity (boolean state)
          ±âµ¿ÃøÀÇ ID °¡ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ °ø°³µÇÁö ¾Ê°Ô ¿ä±¸ÇÕ´Ï´Ù.
 void requestConf (boolean state)
          wrap ¸Þ¼Òµå¿¡ ´ëÇØ¼­ µ¥ÀÌÅÍÀÇ ±â¹Ð¼ºÀÌ À¯È¿ÇÏ°Ô µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù.
 void requestCredDeleg (boolean state)
          ¹®¸ÆÀÌ È®¸³ÇØ ÀÖÀ» ¶§, ±âµ¿ÃøÀÇ ÀÚ°ÝÀÌ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ delegate µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù.
 void requestInteg (boolean state)
          wrap ¹× getMIC ¸Þ¼Òµå¿¡ ´ëÇØ¼­ µ¥ÀÌÅÍÀÇ ¿ÏÀü¼ºÀÌ À¯È¿ÇÏ°Ô µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù.
 void requestLifetime (int lifetime)
          ¹®¸ÆÀÇ ¼ö¸íÀ» ÃÊ´ÜÀ§·Î ¿ä±¸ÇÕ´Ï´Ù.
 void requestMutualAuth (boolean state)
          ¹®¸ÆÀÌ È®¸³ÇØ ÀÖÀ» ¶§, »óÈ£ ÀÎÁõÀ» Çϵµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù.
 void requestReplayDet (boolean state)
          ¹®¸ÆÀÌ È®¸³ÇÑ ÈÄ¿¡, ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½ºÀÇ ¸®Ç÷¹ÀÌ °ËÃâÀÌ À¯È¿ÇÏ°Ô µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù.
 void requestSequenceDet (boolean state)
          ¹®¸ÆÀÌ È®¸³ÇÑ ÈÄ¿¡, ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½ºÀÇ sequence check°¡ À¯È¿ÇÏ°Ô µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù.
 void setChannelBinding (ChannelBinding  cb)
          ¹®¸ÆÀÌ È®¸³ÇØ ÀÖÀ» ¶§ ä³Î ¹ÙÀεùÀÌ »ç¿ëµÇµµ·Ï(µíÀÌ) ¼³Á¤ÇÕ´Ï´Ù.
 byte[] unwrap (byte[] inBuf, int offset, int len, MessageProp  msgProp)
          ¹®¸ÆÀÇ »ó´ëÃøÀÇ ÇǾî·Î wrap ¸Þ¼Òµå¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» ó¸®Çϱâ À§Çؼ­ »ç¿ëÇÕ´Ï´Ù.
 void unwrap (InputStream  inStream, OutputStream  outStream, MessageProp  msgProp)
          ½ºÆ®¸²À» »ç¿ëÇØ, ¹®¸ÆÀÇ »ó´ëÃøÀÇ ÇǾî·Î wrap ¸Þ¼Òµå¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» ó¸®ÇÕ´Ï´Ù.
 void verifyMIC (byte[] inToken, int tokOffset, int tokLen, byte[] inMsg, int msgOffset, int msgLen, MessageProp  msgProp)
          ÅäÅ« ÆÄ¶ó¹ÌÅÍ¿¡ Æ÷ÇԵǴ ¾Ïȣȭ MIC ¸¦, ÁöÁ¤µÈ ¸Þ¼¼Áö¿¡ ´ëÇØ¼­ °Ë»çÇÕ´Ï´Ù.
 void verifyMIC (InputStream  tokStream, InputStream  msgStream, MessageProp  msgProp)
          ½ºÆ®¸²À» »ç¿ëÇØ, ÅäÅ« ÆÄ¶ó¹ÌÅÍ¿¡ Æ÷ÇԵǴ ¾Ïȣȭ MIC ¸¦, ÁöÁ¤µÈ ¸Þ¼¼Áö¿¡ ´ëÇØ¼­ °Ë»çÇÕ´Ï´Ù.
 byte[] wrap (byte[] inBuf, int offset, int len, MessageProp  msgProp)
          È®¸³µÈ ½ÃÅ¥·¯Æ¼ ¹®¸Æ¿¡ ´ëÇØ¼­ ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½º¸¦ Àû¿ëÇÕ´Ï´Ù.
 void wrap (InputStream  inStream, OutputStream  outStream, MessageProp  msgProp)
          ½ºÆ®¸²À» »ç¿ëÇØ, È®¸³µÈ ½ÃÅ¥·¯Æ¼ ¹®¸Æ¿¡ ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½º¸¦ Àû¿ëÇÕ´Ï´Ù.
 

ÇʵåÀÇ »ó¼¼

DEFAULT_LIFETIME

public static final int DEFAULT_LIFETIME
¹®¸ÆÀÇ µðÆúÆ®ÀÇ ¼ö¸íÀ» ³ªÅ¸³»´Â ¼ö¸í Á¤¼öÀÔ´Ï´Ù. ÀÌ °ªÀº 0 À¸·Î ¼³Á¤µË´Ï´Ù.

°ü·Ã Ç׸ñ:
Á¤¼ö ÇʵåÄ¡

INDEFINITE_LIFETIME

public static final int INDEFINITE_LIFETIME
¹®¸ÆÀÇ ¼ö¸íÀÌ ¹«±âÇÑÀÎ °ÍÀ» ³ªÅ¸³»´Â ¼ö¸í Á¤¼öÀÔ´Ï´Ù. ÀÌ °ªÀº Java ÀÇ ÃÖ´ë Á¤¼öÄ¡ Integer.MAX_VALUE ·Î ¼³Á¤ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

°ü·Ã Ç׸ñ:
Á¤¼ö ÇʵåÄ¡
¸Þ¼ÒµåÀÇ »ó¼¼

initSecContext

public byte[] initSecContext(byte[] inputBuf,
                             int offset,
                             int len)
                      throws GSSException 
¹®¸ÆÀÇ ±âµ¿ Ãø¿¡¾ß´Â ºÒ·Á °¡´Â ¸Þ¼ÒµåÀÔ´Ï´Ù. ¹®¸ÆÀÇ ÀÛ¼ºÀ» °³½ÃÇØ, ÇǾîÀÇ acceptSecContext ¸Þ¼Òµå¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» ó¸®ÇÕ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ µ¹·ÁÁÖ¾îÁø Ãâ·Â ÅäÅ«À» ó¸®Çϱâ À§Çؼ­, ÇǾîÀÇ acceptSecContext ¸Þ¼Òµå¿¡ ¼Û½ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº isEstablished ¸¦ È£ÃâÇØ, ¹®¸ÆÀÇ ¼öÃëÇÏ´Â ÃøÀ¸·Î ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇß´ÂÁö ¾î¶°Çß´ÂÁö¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. isEstablished ·ÎºÎÅÍ ¹Ýȯ°ª false °¡ µ¹·ÁÁÖ¾îÁ³À» °æ¿ì´Â initSecContext ·ÎºÎÅÍ ´Ù¸¥ ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁú °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇϸé(ÀÚ), get ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÌ¿ë °¡´ÉÇÑ ¹®¸Æ ¿É¼ÇÀ» Á¶È¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

initSecContext ¸Þ¼Òµå·ÎºÎÅÍ ÇǾîÀÇ ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁ®isEstablished ·ÎºÎÅ͵µ true °¡ µ¹·ÁÁÖ¾îÁö´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì, ÅäÅ«Àº ÇǾ ¼Û½ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù¸¸, ¹®¸ÆÀÇ »ó´ëÃøÀº ±× ½ÃÁ¡¿¡¼­ ¿ÏÀüÇÏ°Ô È®¸³µÇ¾î ÀÖ½À´Ï´Ù.

ÀϺÎÀÇ ±â±¸ ÇÁ·Î¹ÙÀÌ´õ¿¡¼­´Â ½ÃÅ¥·¯Æ¼ ¹®¸ÆÀ» ±âµ¿ÇÏ´Â ¾×¼¼½º±ÇÀÌ È£ÃâÇØ Ãø¿¡ ºÎ¿©µÇ°í ÀÖÀ» Çʿ䰡 ÀÖ½À´Ï´Ù. ¾×¼¼½º±ÇÀÇ È®Àο¡ ½ÇÆÐÇßÀ» °æ¿ì, ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ SecurityException °¡ ½½·Î¿ì µË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
inputBuf - ÇǾ ÀÇÇØ »ý¼ºµÈ ÅäÅ«. ÃÖÃÊÀÇ È£Ãâ¿¡¼­´Â ÇǾî·ÎºÎÅÍ ÅäÅ«À» ¼ö½ÅÇÏÁö ¾Ê±â ¶§¹®¿¡, ÀÌ ÆÄ¶ó¹ÌÅÍ´Â ¹«½ÃµÇ´Â
offset - inputBuf ³»ÀÇ ¿ÀÇÁ¼Â(offset). ÀÌ Á¤µµÄ¡·ÎºÎÅÍ ÅäÅ«ÀÌ °³½ÃÇÏ´Â
len - ÅäÅ«ÀÇ ±æÀÌ
¹Ýȯ°ª:
ÇǾ ¼Û½ÅÇÏ´Â ÅäÅ«À» Æ÷ÇÔÇÑ byte[]. null ÀÇ °æ¿ì´Â ÅäÅ«ÀÌ »ý¼ºµÇÁö ¾Ê´Â °ÍÀ» ³ªÅ¸³½´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.DEFECTIVE_TOKEN ,GSSException.BAD_MIC ,GSSException.NO_CRED ,GSSException.CREDENTIALS_EXPIRED ,GSSException.BAD_BINDINGS ,GSSException.OLD_TOKEN ,GSSException.DUPLICATE_TOKEN ,GSSException.BAD_NAMETYPE ,GSSException.BAD_MECH ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

initSecContext

public int initSecContext(InputStream  inStream,
                          OutputStream  outStream)
                   throws GSSException 
¹®¸ÆÀÇ ±âµ¿ Ãø¿¡¾ß´Â ºÒ·Á °¡´Â ¸Þ¼ÒµåÀÔ´Ï´Ù. ¹®¸ÆÀÇ ÀÛ¼ºÀ» °³½ÃÇØ, ÇǾîÀÇ acceptSecContext ¸Þ¼Òµå¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» ½ºÆ®¸²À» »ç¿ëÇØ ó¸®ÇÕ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ OutpuStream ¿¡ ½á³»Áø Ãâ·Â ÅäÅ«À» ó¸®Çϱâ À§Çؼ­, ÇǾîÀÇ acceptSecContext È£ÃâÇØ¿¡ ¼Û½ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. Åë»óÀº ÀÌ Ã³¸®¸¦ È®½ÇÈ÷ ½Ç½ÃÇϱâ À§Çؼ­(¶§¹®¿¡),OutputStream »ó¿¡¼­ flush ¸Þ¼Òµå¸¦ È£ÃâÇØ, 2 °³ÀÇ ÇǾÀÇ Á¢¼ÓÀ» ĸ½¶È­ÇÕ´Ï´Ù. ÅäÅ«ÀÌ OutputStream ¿¡ ½á³»Á³´ÂÁö ¾î¶°Çß´ÂÁö´Â ÀÌ ¸Þ¼ÒµåÀÇ ¹Ýȯ°ªÀ¸·ÎºÎÅÍ ÆÇ´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù. ¹Ýȯ°ª 0 Àº ÅäÅ«ÀÌ ½á³»ÁöÁö ¾Ê¾Ò´ø °ÍÀ» ³ªÅ¸³À´Ï´Ù. ¹®¸ÆÀÇ ¼öÃëÇÏ´Â ÃøÀ¸·Î ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇß´ÂÁö ¾î¶°Çß´ÂÁö´Â isEstablished ¸¦ È£ÃâÇØ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. isEstablished ·ÎºÎÅÍ ¹Ýȯ°ª false °¡ µ¹·ÁÁÖ¾îÁ³À» °æ¿ì´Â ´Ù¸¥ ÅäÅ«ÀÌ initSecContext ·ÎºÎÅÍ µ¹·ÁÁÖ¾îÁú °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇϸé(ÀÚ), get ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÌ¿ë °¡´ÉÇÑ ¹®¸Æ ¿É¼ÇÀ» Á¶È¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

initSecContext ¸Þ¼Òµå·ÎºÎÅÍ ÇǾîÀÇ ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁ®isEstablished ·ÎºÎÅ͵µ true °¡ µ¹·ÁÁÖ¾îÁö´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì, ÅäÅ«Àº ÇǾ ¼Û½ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù¸¸, ¹®¸ÆÀÇ »ó´ëÃøÀº ±× ½ÃÁ¡¿¡¼­ ¿ÏÀüÇÏ°Ô È®¸³µÇ¾î ÀÖ½À´Ï´Ù.

GSS-API ÀÇ ÀÎÁõ ÅäÅ«¿¡´Â °³½Ã ÅäÅ«°ú Á¾·á ÅäÅ«ÀÌ Á¤Àǵǰí ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼Òµå°¡ ºÒ·Á °¥ ¶§¸¶´Ù, ÀÌ·¯ÇÑ ÅäÅ«ÀÌ 1 °³¾¿ ÀÐÈü´Ï´Ù. ÀϺÎÀÇ ÅäÅ«ÀÌ ÀÐÈ÷Áö ¾Ê¾Ò´ø °æ¿ì, ±× ½ºÆ®¸²Àº ºí·Ï µË´Ï´Ù. ´Ù¸¥ ¸ðµç Á¡¿¡¼­´Â ÀÌ ¸Þ¼Òµå´Â byte ¹è¿­¿¡ ±Ù°ÅÇÑ initSecContext ¿Í µî°¡ÀÔ´Ï´Ù.

ÀϺÎÀÇ ±â±¸ ÇÁ·Î¹ÙÀÌ´õ¿¡¼­´Â ½ÃÅ¥·¯Æ¼ ¹®¸ÆÀ» ±âµ¿ÇÏ´Â ¾×¼¼½º±ÇÀÌ È£ÃâÇØ Ãø¿¡ ºÎ¿©µÇ°í ÀÖÀ» Çʿ䰡 ÀÖ½À´Ï´Ù. ¾×¼¼½º±ÇÀÇ È®Àο¡ ½ÇÆÐÇßÀ» °æ¿ì, ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ SecurityException °¡ ½½·Î¿ì µË´Ï´Ù.

´ÙÀ½ÀÇ Äڵ忹´Â ÀÌ ¸Þ¼ÒµåÀÇ »ç¿ë ¹æ¹ýÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

     InputStream is ...
     OutputStream os ...
     GSSContext context ...

     // Loop while there is still a token to be processed

     while (! context.isEstablished()) {

         context.initSecContext(is, os);

         // send output token if generated
         os.flush();
     }

ÆÄ¶ó¹ÌÅÍ:
inStream - ÇǾ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» Æ÷ÇÔÇÑ InputStream. ÃÖÃÊÀÇ È£Ãâ¿¡¼­´Â ÇǾî·ÎºÎÅÍ ¼ö½ÅÇÏ´Â ÅäÅ«ÀÌ ¾ø±â ¶§¹®¿¡, ÀÌ ÆÄ¶ó¹ÌÅÍ´Â ¹«½ÃµÇ´Â
outStream - Ãâ·Â ÅäÅ«ÀÌ ½á³»Áö´Â OutputStream. ¹®¸Æ È®¸³ÀÇ ÃÖÁ¾ ´Ü°è¿¡¼­´Â ½á³»Áö´Â ¹ÙÀÌÆ®°¡ ¾ø´Â °Íµµ ÀÖ´Ù
¹Ýȯ°ª:
ÇǾ ¼Û½ÅÇÏ´Â ÅäÅ«ÀÇ ÀϺημ­ OutputStream ¿¡ ½á³»Áö´Â ¹ÙÀÌÆ®¼ö. °ª 0 Àº ÅäÅ«À» ¼Û½ÅÇÒ Çʿ䰡 ¾ø´Â °ÍÀ» ³ªÅ¸³½´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.DEFECTIVE_TOKEN ,GSSException.BAD_MIC ,GSSException.NO_CRED ,GSSException.CREDENTIALS_EXPIRED ,GSSException.BAD_BINDINGS ,GSSException.OLD_TOKEN ,GSSException.DUPLICATE_TOKEN ,GSSException.BAD_NAMETYPE ,GSSException.BAD_MECH ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

acceptSecContext

public byte[] acceptSecContext(byte[] inToken,
                               int offset,
                               int len)
                        throws GSSException 
ÇǾî·ÎºÎÅÍ ÅäÅ«ÀÌ Âø½ÅÇßÀ» ¶§¿¡, ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ ÀÇÇØ ºÒ·Á °©´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ µ¹·ÁÁÖ¾îÁø Ãâ·Â ÅäÅ«À» ó¸®Çϱâ À§Çؼ­, ÇǾîÀÇ initSecContext ¸Þ¼Òµå¿¡ ¼Û½ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀº isEstablished ¸¦ È£ÃâÇØ, ÀÌ ÇǾî·Î ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇß´ÂÁö ¾î¶°Çß´ÂÁö¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. isEstablished ·ÎºÎÅÍ ¹Ýȯ°ª false °¡ µ¹·ÁÁÖ¾îÁ³À» °æ¿ì´Â ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ ´Ù¸¥ ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁú °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇϸé(ÀÚ), get ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÌ¿ë °¡´ÉÇÑ ¹®¸Æ ¿É¼ÇÀ» Á¶È¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

acceptSecContext ¸Þ¼Òµå·ÎºÎÅÍ ÇǾîÀÇ ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁ®isEstablished ·ÎºÎÅ͵µ true °¡ µ¹·ÁÁÖ¾îÁö´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì, ÅäÅ«Àº ÇǾ ¼Û½ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù¸¸, ¹®¸ÆÀÇ »ó´ëÃøÀº ±× ½ÃÁ¡¿¡¼­ ¿ÏÀüÇÏ°Ô È®¸³µÇ¾î ÀÖ½À´Ï´Ù.

ÀϺÎÀÇ ±â±¸ ÇÁ·Î¹ÙÀÌ´õ¿¡¼­´Â ½ÃÅ¥·¯Æ¼ ¹®¸ÆÀ» ¹Þ´Â ¾×¼¼½º±ÇÀÌ È£ÃâÇØ Ãø¿¡ ºÎ¿©µÇ°í ÀÖÀ» Çʿ䰡 ÀÖ½À´Ï´Ù. ¾×¼¼½º±ÇÀÇ È®Àο¡ ½ÇÆÐÇßÀ» °æ¿ì, ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ SecurityException °¡ ½½·Î¿ì µË´Ï´Ù.

´ÙÀ½ÀÇ Äڵ忹´Â ÀÌ ¸Þ¼ÒµåÀÇ »ç¿ë ¹æ¹ýÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

     byte[] inToken;
     byte[] outToken;
     GSSContext context ...

     // Loop while there is still a token to be processed

     while (! context.isEstablished()) {
         inToken = readToken();
         outToken = context.acceptSecContext(inToken, 0,
                                             inToken.length);
         // send output token if generated
         if (outToken ! = null)
             sendToken(outToken);
     }

ÆÄ¶ó¹ÌÅÍ:
inToken - ÇǾ ÀÇÇØ »ý¼ºµÈ ÅäÅ«
offset - inToken ³»ÀÇ ¿ÀÇÁ¼Â(offset). ÀÌ Á¤µµÄ¡·ÎºÎÅÍ ÅäÅ«ÀÌ °³½ÃÇÏ´Â
len - ÅäÅ«ÀÇ ±æÀÌ
¹Ýȯ°ª:
ÇǾ ¼Û½ÅÇÏ´Â ÅäÅ«À» Æ÷ÇÔÇÑ byte[]. null ÀÇ °æ¿ì´Â ÅäÅ«ÀÌ »ý¼ºµÇÁö ¾Ê´Â °ÍÀ» ³ªÅ¸³½´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.DEFECTIVE_TOKEN ,GSSException.BAD_MIC ,GSSException.NO_CRED ,GSSException.CREDENTIALS_EXPIRED ,GSSException.BAD_BINDINGS ,GSSException.OLD_TOKEN ,GSSException.DUPLICATE_TOKEN ,GSSException.BAD_MECH ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

acceptSecContext

public void acceptSecContext(InputStream  inStream,
                             OutputStream  outStream)
                      throws GSSException 
¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ ÀÇÇØ ºÒ·Á °¡´Â ¸Þ¼ÒµåÀÔ´Ï´Ù. ½ºÆ®¸²À» »ç¿ëÇØ ÇǾî·ÎºÎÅÍ ¼ö½ÅÇÑ ÅäÅ«À» ó¸®ÇÕ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ OutpuStream ¿¡ ½á³»Áø Ãâ·Â ÅäÅ«À» ó¸®Çϱâ À§Çؼ­, ÇǾîÀÇ initSecContext ¸Þ¼Òµå¿¡ ¼Û½ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. Åë»óÀº ÀÌ Ã³¸®¸¦ È®½ÇÈ÷ ½Ç½ÃÇϱâ À§Çؼ­(¶§¹®¿¡),OutputStream »ó¿¡¼­ flush ¸Þ¼Òµå¸¦ È£ÃâÇØ, 2 °³ÀÇ ÇǾÀÇ Á¢¼ÓÀ» ĸ½¶È­ÇÕ´Ï´Ù. ¹®¸ÆÀÇ ±âµ¿Ãø¿¡¼­ ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇß´ÂÁö ¾î¶°Çß´ÂÁö´Â isEstablished ¸¦ È£ÃâÇØ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. isEstablished ·ÎºÎÅÍ ¹Ýȯ°ª false °¡ µ¹·ÁÁÖ¾îÁ³À» °æ¿ì´Â ´Ù¸¥ ÅäÅ«ÀÌ acceptSecContext ·ÎºÎÅÍ µ¹·ÁÁÖ¾îÁú °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇϸé(ÀÚ), get ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÌ¿ë °¡´ÉÇÑ ¹®¸Æ ¿É¼ÇÀ» Á¶È¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

acceptSecContext ¸Þ¼Òµå·ÎºÎÅÍ ÇǾîÀÇ ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁ®isEstablished ·ÎºÎÅ͵µ true °¡ µ¹·ÁÁÖ¾îÁö´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì, ÅäÅ«Àº ÇǾ ¼Û½ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù¸¸, ¹®¸ÆÀÇ »ó´ëÃøÀº ±× ½ÃÁ¡¿¡¼­ ¿ÏÀüÇÏ°Ô È®¸³µÇ¾î ÀÖ½À´Ï´Ù.

GSS-API ÀÇ ÀÎÁõ ÅäÅ«¿¡´Â °³½Ã ÅäÅ«°ú Á¾·á ÅäÅ«ÀÌ Á¤Àǵǰí ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼Òµå°¡ ºÒ·Á °¥ ¶§¸¶´Ù, ÀÌ·¯ÇÑ ÅäÅ«ÀÌ 1 °³¾¿ ÀÐÈü´Ï´Ù. ÀϺÎÀÇ ÅäÅ«ÀÌ ÀÐÈ÷Áö ¾Ê¾Ò´ø °æ¿ì, ±× ½ºÆ®¸²Àº ºí·Ï µË´Ï´Ù. ´Ù¸¥ ¸ðµç Á¡¿¡¼­´Â ÀÌ ¸Þ¼Òµå´Â byte ¹è¿­¿¡ ±Ù°ÅÇÑ acceptSecContext ¿Í µî°¡ÀÔ´Ï´Ù.

ÀϺÎÀÇ ±â±¸ ÇÁ·Î¹ÙÀÌ´õ¿¡¼­´Â ½ÃÅ¥·¯Æ¼ ¹®¸ÆÀ» ¹Þ´Â ¾×¼¼½º±ÇÀÌ È£ÃâÇØ Ãø¿¡ ºÎ¿©µÇ°í ÀÖÀ» Çʿ䰡 ÀÖ½À´Ï´Ù. ¾×¼¼½º±ÇÀÇ È®Àο¡ ½ÇÆÐÇßÀ» °æ¿ì, ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ SecurityException °¡ ½½·Î¿ì µË´Ï´Ù.

´ÙÀ½ÀÇ Äڵ忹´Â ÀÌ ¸Þ¼ÒµåÀÇ »ç¿ë ¹æ¹ýÀ» ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

     InputStream is ...
     OutputStream os ...
     GSSContext context ...

     // Loop while there is still a token to be processed

     while (! context.isEstablished()) {

         context.acceptSecContext(is, os);

         // send output token if generated
         os.flush();
     }

ÆÄ¶ó¹ÌÅÍ:
inStream - ÇǾ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» Æ÷ÇÔÇÑ InputStream
outStream - Ãâ·Â ÅäÅ«ÀÌ ½á³»Áö´Â OutputStream. ¹®¸Æ È®¸³ÀÇ ÃÖÁ¾ ´Ü°è¿¡¼­´Â ½á³»Áö´Â ¹ÙÀÌÆ®°¡ ¾ø´Â °Íµµ ÀÖ´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.DEFECTIVE_TOKEN ,GSSException.BAD_MIC ,GSSException.NO_CRED ,GSSException.CREDENTIALS_EXPIRED ,GSSException.BAD_BINDINGS ,GSSException.OLD_TOKEN ,GSSException.DUPLICATE_TOKEN ,GSSException.BAD_MECH ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

isEstablished

public boolean isEstablished()
¹®¸ÆÀ» È®¸³Çϱâ Àü¿¡, ¹®¸Æ »óŸ¦ È®ÀÎÇÒ °æ¿ì¿¡ »ç¿ëÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¹®¸ÆÀÌ È£ÃâÇØ ¿·¿¡¼­ ¿ÏÀüÇÏ°Ô È®¸³µÇ¾î ÇǾî·ÎºÎÅÍ ÅäÅ«À» ¼ö½ÅÇÒ Çʿ䰡 ¾ø´Â °æ¿ì´Â true.

dispose

public void dispose()
             throws GSSException 
¹®¸Æ ¿ÀºêÁ§Æ®¿¡ ÀúÀåµÇ°í ÀÖ´Â ½Ã½ºÅÛ ÀÚ¿ø°ú ¾Ïȣȭ Á¤º¸¸¦ ¸ðµÎ ÇØ¹æÇØ, ±× ¹®¸ÆÀ» ¹«È¿·Î ÇÕ´Ï´Ù.

¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

getWrapSizeLimit

public int getWrapSizeLimit(int qop,
                            boolean confReq,
                            int maxTokenSize)
                     throws GSSException 
wrap ¿¡ °Ç³×ÁÙ ¼ö°¡ ÀÖ´Â ¸Þ¼¼Áö »çÀÌÁîÀÇ Á¦ÇÑÀ» °áÁ¤ÇÒ ¶§ »ç¿ëÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ÃÖ´ë ¸Þ¼¼Áö »çÀÌÁ µ¹·ÁÁÝ´Ï´Ù. confReq ¹× qop ÆÄ¶ó¹ÌÅͰ¡ °°Àº wrap ¸Þ¼Òµå¿¡ ÀÌ »çÀÌÁîÀÇ ¸Þ¼¼Áö¸¦ °Ç³×ÁÖ¸é(ÀÚ),maxTokenSize ¹ÙÀÌÆ® ÀÌÇÏÀÇ Ãâ·Â ÅäÅ«ÀÌ »ý¼ºµË´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀ¸·Î ÀÌ ¸Þ¼Òµå¸¦ »ç¿ëÇÏ´Â °æ¿ì´Â ÃÖ´ë ¸Þ¼¼Áö »çÀÌÁ »ç¿ëÇÏ´Â ÇÁ·ÎÅäÄÝÀ» °³ÀÔ½ÃÄÑ Åë½ÅÇÏ´Â °ÍÀ» ÀüÁ¦·Î Çϰí ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼Òµå¸¦ »ç¿ëÇϸé, ¸Þ¼¼Áö¸¦ ´ÜÆíÈ­ÇÏ°í ³ª¼­ º¸È£¸¦ Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

GSS-API ±¸Çö¿¡¼­´Â getWrapSizeLimit ¸¦ È£ÃâÇßÀ» ¶§¿¡, QOP Ä¡°¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ °ËÃâÇϵµ·Ï(µíÀÌ) Ãßõ Çϰí ÀÖ½À´Ï´Ù. ´Ù¸¸, Çʼö°¡ ¾Æ´Õ´Ï´Ù. ÀÌ routine¿¡¼­´Â ÃÖ´ë ¸Þ¼¼Áö »çÀÌÁÀÌ ÇÁ·ÎÅØ¼ÇµÇ¾î ¸Þ¼¼Áö º¸È£·Î ÁöÁ¤ÇÑ QOP Ä¡¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â Á¦¹ß¿¡ ´ëÇØ¼­´Â ÇÁ·ÎÅØ¼ÇµÇÁö ¾Ê½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
qop - ·¦¿¡ ¿ä±¸ÇÏ´Â º¸È£ ·¹º§
confReq - ·¦¿¡ ÇÁ¶óÀ̹ö½Ã¸¦ ¿ä±¸ÇÏ´Â °æ¿ì´Â true. ¿ä±¸ÇÏÁö ¾Ê´Â °æ¿ì´Â false
maxTokenSize - ·¦¿¡ ÀÇÇØ »ý¼ºµÇ´Â ÅäÅ«ÀÇ ÃÖ´ë »çÀÌÁî (¸ñÇ¥)
¹Ýȯ°ª:
ÁöÁ¤µÈ Ãâ·Â ÅäÅ« »çÀÌÁî¿¡ ´ëÇÑ, ÀÔ·Â ÅäÅ«ÀÇ ÃÖ´ë »çÀÌÁî
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.CONTEXT_EXPIRED ,GSSException.BAD_QOP ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

wrap

public byte[] wrap(byte[] inBuf,
                   int offset,
                   int len,
                   MessageProp  msgProp)
            throws GSSException 
È®¸³µÈ ½ÃÅ¥·¯Æ¼ ¹®¸Æ¿¡ ´ëÇØ¼­ ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½º¸¦ Àû¿ëÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¾îÇø®ÄÉÀ̼ÇÀÌ Á¦°øÇÏ´Â µ¥ÀÌÅÍ¿Í ±×¿¡ ´ëÇÑ ¾Ïȣȭ MIC ¸¦ Æ÷ÇÔÇÑ ÅäÅ«À» µ¹·ÁÁÝ´Ï´Ù. ÀÌ µ¥ÀÌÅÍ´Â ±â¹Ð¼º (ÇÁ¶óÀ̹ö½Ã)ÀÌ ¿ä±¸µÇ¾úÀ» °æ¿ì, ¾ÏȣȭµË´Ï´Ù.

MessageProp ¿ÀºêÁ§Æ®´Â ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÇØ ÀνºÅϽºÈ­ µË´Ï´Ù. ÀÌ ¿ÀºêÁ§Æ®¸¦ »ç¿ëÇØ, ¾Ïȣȭ ¾Ë°í¸®ÁòÀ» ¼±ÅÃÇϱâ À§ÇÑ QOP Ä¡³ª, ÀÓÀÇ ÁöÁ¤À¸·Î ¸Þ¼¼Áö¸¦ ¾ÏȣȭÇϱâ À§ÇÑ ÇÁ¶óÀ̹ö½Ã ¼­ºñ½º¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ È£Ãâ¿¡ »ç¿ëµÇ´Â ºÎÇÏÀÇ ±â±¸¿¡¼­´Â ÀÌ ÇÁ¶óÀ̹ö½Ã ¼­ºñ½º¸¦ Á¦°øÇÒ ¼ö ¾ø´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±× °æ¿ì´Â ºÎÇÏÀÇ ±â±¸°¡ Á¦°øÇÏ´Â ½ÇÁ¦ÀÇ ÇÁ¶óÀ̹ö½Ã ¼­ºñ½º°¡, ÀÌ MessageProp ¿ÀºêÁ§Æ®·Î ¼³Á¤µË´Ï´Ù. È£ÃâÃøÀº º¹±ÍÇÏÀÚ ¸¶ÀÚ ÇÁ¶óÀ̹ö½Ã ¼­ºñ½º¸¦ Á¶È¸ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ºÎÇÏÀÇ ±â±¸°¡ ¿ä±¸µÈ QOP ¸¦ Á¦°øÇÒ ¼ö ¾ø´Â °æ¿ì´Â BAD_QOP Äڵ尡 ¼³Á¤µÈ GSSException °¡ ½½·Î¿ì µË´Ï´Ù.

¾îÇø®ÄÉÀÌ¼Ç ·¹º§ÀÇ ÇÁ·ÎÅäÄÝ¿¡´Â ·¦¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» »ç¿ëÇØ ¡¸¼¼Å¥¾ÆÈÄ·¹À̹֡¹À» Á¦°øÇÏ´Â °ÍÀÌ ÀÖ±â (À§ÇØ)¶§¹®¿¡, ±¸Çö¿¡¼­´Â ±æÀÌ 0 ÀÇ ¸Þ¼¼ÁöÀÇ ·¦À» ¼­Æ÷Æ®ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀº ÀÌ ÅäÅ«À» ÇǾ ¼Û½ÅÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
inBuf - º¸È£µÇ´Â ¾îÇø®ÄÉÀÌ¼Ç µ¥ÀÌÅÍ
offset - inBuf ³»ÀÇ ¿ÀÇÁ¼Â(offset). ÀÌ Á¤µµÄ¡·ÎºÎÅÍ µ¥ÀÌÅͰ¡ °³½ÃÇÏ´Â
len - µ¥ÀÌÅÍÀÇ ±æÀÌ
msgProp - MessageProp ÀÇ ÀνºÅϽº. ¸ñÇ¥ QOP ¿Í ÇÁ¶óÀ̹ö½Ã »óŸ¦ ¼³Á¤Çϱâ À§Çؼ­ ¾îÇø®ÄÉÀ̼ÇÀÌ »ç¿ëÇÑ´Ù. µðÆúÆ®ÀÇ QOP ¸¦ ¿ä±¸ÇÏ´Â °æ¿ì´Â ¸ñÇ¥ QOP ¸¦ 0 À¸·Î ¼³Á¤ÇÑ´Ù. ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ º¹±ÍÇϸé(ÀÚ), ÀÌ ¿ÀºêÁ§Æ®¿¡´Â ºÎÇÏÀÇ ±â±¸¿¡ ÀÇÇØ ¸Þ¼¼Áö¿¡ Àû¿ëµÈ ½ÇÁ¦ÀÇ ÇÁ¶óÀ̹ö½Ã »óŰ¡ ÀúÀåµÈ´Ù
¹Ýȯ°ª:
ÇǾ ¼Û½ÅµÇ´Â ÅäÅ«À» Æ÷ÇÔÇÑ byte[]
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.CONTEXT_EXPIRED ,GSSException.BAD_QOP ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

wrap

public void wrap(InputStream  inStream,
                 OutputStream  outStream,
                 MessageProp  msgProp)
          throws GSSException 
½ºÆ®¸²À» »ç¿ëÇØ, È®¸³µÈ ½ÃÅ¥·¯Æ¼ ¹®¸Æ¿¡ ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½º¸¦ Àû¿ëÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¾îÇø®ÄÉÀ̼ÇÀÌ Á¦°øÇÏ´Â µ¥ÀÌÅÍ¿Í ±×¿¡ ´ëÇÑ ¾Ïȣȭ MIC ¸¦ Æ÷ÇÔÇÑ ÅäÅ«À» µ¹·ÁÁÝ´Ï´Ù. ÀÌ µ¥ÀÌÅÍ´Â ±â¹Ð¼º (ÇÁ¶óÀ̹ö½Ã)ÀÌ ¿ä±¸µÇ¾úÀ» °æ¿ì, ¾ÏȣȭµË´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â byte ¹è¿­¿¡ ±Ù°ÅÇÑ wrap ¸Þ¼Òµå¿Í µî°¡ÀÔ´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀº ÀÌ ÅäÅ«À» ÇǾ ¼Û½ÅÇÕ´Ï´Ù. Åë»óÀº ÀÌ Ã³¸®¸¦ È®½ÇÈ÷ ½Ç½ÃÇϱâ À§Çؼ­(¶§¹®¿¡),OutputStream »ó¿¡¼­ flush ¸Þ¼Òµå¸¦ È£ÃâÇØ, 2 °³ÀÇ ÇǾÀÇ Á¢¼ÓÀ» ĸ½¶È­ÇÕ´Ï´Ù.

MessageProp ¿ÀºêÁ§Æ®´Â ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÇØ ÀνºÅϽºÈ­ µË´Ï´Ù. ÀÌ ¿ÀºêÁ§Æ®¸¦ »ç¿ëÇØ, ¾Ïȣȭ ¾Ë°í¸®ÁòÀ» ¼±ÅÃÇϱâ À§ÇÑ QOP Ä¡³ª, ÀÓÀÇ ÁöÁ¤À¸·Î ¸Þ¼¼Áö¸¦ ¾ÏȣȭÇϱâ À§ÇÑ ÇÁ¶óÀ̹ö½Ã ¼­ºñ½º¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ È£Ãâ¿¡ »ç¿ëµÇ´Â ºÎÇÏÀÇ ±â±¸¿¡¼­´Â ÀÌ ÇÁ¶óÀ̹ö½Ã ¼­ºñ½º¸¦ Á¦°øÇÒ ¼ö ¾ø´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±× °æ¿ì´Â ºÎÇÏÀÇ ±â±¸°¡ Á¦°øÇÏ´Â ½ÇÁ¦ÀÇ ÇÁ¶óÀ̹ö½Ã ¼­ºñ½º°¡, ÀÌ MessageProp ¿ÀºêÁ§Æ®·Î ¼³Á¤µË´Ï´Ù. È£ÃâÃøÀº º¹±ÍÇÏÀÚ ¸¶ÀÚ ÇÁ¶óÀ̹ö½Ã ¼­ºñ½º¸¦ Á¶È¸ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ºÎÇÏÀÇ ±â±¸°¡ ¿ä±¸µÈ QOP ¸¦ Á¦°øÇÒ ¼ö ¾ø´Â °æ¿ì´Â BAD_QOP Äڵ尡 ¼³Á¤µÈ GSSException °¡ ½½·Î¿ì µË´Ï´Ù.

¾îÇø®ÄÉÀÌ¼Ç ·¹º§ÀÇ ÇÁ·ÎÅäÄÝ¿¡´Â ·¦¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» »ç¿ëÇØ ¡¸¼¼Å¥¾ÆÈÄ·¹À̹֡¹À» Á¦°øÇÏ´Â °ÍÀÌ ÀÖ±â (À§ÇØ)¶§¹®¿¡, ±¸Çö¿¡¼­´Â ±æÀÌ 0 ÀÇ ¸Þ¼¼ÁöÀÇ ·¦À» ¼­Æ÷Æ®ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
inStream - º¸È£µÇ´Â ¾îÇø®ÄÉÀÌ¼Ç µ¥ÀÌÅ͸¦ Æ÷ÇÔÇÑ InputStream. InStream ³»ÀÇ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â µ¥ÀÌÅͰ¡ ¸ðµÎ »ç¿ëµÇ´Â
outStream - º¸È£µÈ ¸Þ¼¼Áö¸¦ ½á³»´Â OutputStream
msgProp - MessageProp ÀÇ ÀνºÅϽº. ¸ñÇ¥ QOP ¿Í ÇÁ¶óÀ̹ö½Ã »óŸ¦ ¼³Á¤Çϱâ À§Çؼ­ ¾îÇø®ÄÉÀ̼ÇÀÌ »ç¿ëÇÑ´Ù. µðÆúÆ®ÀÇ QOP ¸¦ ¿ä±¸ÇÏ´Â °æ¿ì´Â ¸ñÇ¥ QOP ¸¦ 0 À¸·Î ¼³Á¤ÇÑ´Ù. ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ º¹±ÍÇϸé(ÀÚ), ÀÌ ¿ÀºêÁ§Æ®¿¡´Â ºÎÇÏÀÇ ±â±¸¿¡ ÀÇÇØ ¸Þ¼¼Áö¿¡ Àû¿ëµÈ ½ÇÁ¦ÀÇ ÇÁ¶óÀ̹ö½Ã »óŰ¡ ÀúÀåµÈ´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.CONTEXT_EXPIRED ,GSSException.BAD_QOP ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

unwrap

public byte[] unwrap(byte[] inBuf,
                     int offset,
                     int len,
                     MessageProp  msgProp)
              throws GSSException 
¹®¸ÆÀÇ »ó´ëÃøÀÇ ÇǾî·Î wrap ¸Þ¼Òµå¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» ó¸®Çϱâ À§Çؼ­ »ç¿ëÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ÇÇ¾î ¾îÇø®ÄÉÀ̼ÇÀ¸·ÎºÎÅÍ ±× ·¦ È£Ãâ¿¡°Ô °Ç³×Áø ¸Þ¼¼Áö¸¦ µ¹·ÁÁÖ¾î, µ¿½Ã¿¡ ±× ¸Þ¼¼Áö¿¡ ÆÄ¹¯Èù MIC ¸¦ °Ë»çÇÕ´Ï´Ù.

MessageProp ¿ÀºêÁ§Æ®´Â ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÇØ ÀνºÅϽºÈ­ µË´Ï´Ù. ÀÌ ¿ÀºêÁ§Æ®´Â QOP, ¸Þ¼¼Áö¿¡ ±â¹Ð¼ºÀÌ Àû¿ëµÇ°í ÀÖ´ÂÁö ¾î¶²Áö ¹× ¸Þ¼¼Áö »óÅ¿¡ °üÇÑ ±× ¿ÜÀÇ º¸Ãæ Á¤º¸¸¦ È£ÃâÇØ Ãø¿¡ µ¹·ÁÁÖ±â À§Çؼ­(¶§¹®¿¡), ºÎÇÏÀÇ ±â±¸¿¡ ÀÇÇØ »ç¿ëµË´Ï´Ù.

¾îÇø®ÄÉÀÌ¼Ç ·¹º§ÀÇ ÇÁ·ÎÅäÄÝ¿¡´Â ·¦¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» »ç¿ëÇØ ¡¸¼¼Å¥¾ÆÈÄ·¹À̹֡¹À» Á¦°øÇÏ´Â °ÍÀÌ ÀÖ±â (À§ÇØ)¶§¹®¿¡, ±¸Çö¿¡¼­´Â ±æÀÌ 0 ÀÇ ¸Þ¼¼ÁöÀÇ ·¦ ¹× ·¦ ÇØÁ¦¸¦ ¼­Æ÷Æ®ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
inBuf - ÇǾî·ÎºÎÅÍ ¼ö½ÅÇÑ ·¦ ÅäÅ«À» Æ÷ÇÔÇÑ byte ¹è¿­
offset - ÅäÅ«ÀÌ °³½ÃÇÏ´Â ¿ÀÇÁ¼Â(offset)
len - ÅäÅ«ÀÇ ±æÀÌ
msgProp - ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ º¹±ÍÇϸé(ÀÚ), ÀÌ ¿ÀºêÁ§Æ®¿¡´Â Àû¿ëµÈ QOP, ¸Þ¼¼ÁöÀÇ ÇÁ¶óÀ̹ö½Ã »óÅÂ, ¹× ÅäÅ«ÀÇ º¸Ãæ Á¤º¸ (Áߺ¹ Çϰí ÀÖ´Â ³°Àº ¼ø¼­°¡ ¿Ã¹Ù¸£Áö ¾ÊÀº °¸ÀÇ ÈÄ¿¡ Âø½ÅÇß´ÂÁö ¾î¶°Çß´ÂÁö)°¡ ÀúÀåµÈ´Ù
¹Ýȯ°ª:
ÀÔ·Â ÅäÅ«À¸·ÎºÎÅÍ ·¦ ÇØÁ¦µÈ ¸Þ¼¼Áö¸¦ Æ÷ÇÔÇÑ byte[]
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.DEFECTIVE_TOKEN ,GSSException.BAD_MIC ,GSSException.CONTEXT_EXPIRED ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

unwrap

public void unwrap(InputStream  inStream,
                   OutputStream  outStream,
                   MessageProp  msgProp)
            throws GSSException 
½ºÆ®¸²À» »ç¿ëÇØ, ¹®¸ÆÀÇ »ó´ëÃøÀÇ ÇǾî·Î wrap ¸Þ¼Òµå¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» ó¸®ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ÇÇ¾î ¾îÇø®ÄÉÀ̼ÇÀ¸·ÎºÎÅÍ ±× ·¦ È£Ãâ¿¡°Ô °Ç³×Áø ¸Þ¼¼Áö¸¦ µ¹·ÁÁÖ¾î, µ¿½Ã¿¡ ±× ¸Þ¼¼Áö¿¡ ÆÄ¹¯Èù MIC ¸¦ °Ë»çÇÕ´Ï´Ù.

MessageProp ¿ÀºêÁ§Æ®´Â ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÇØ ÀνºÅϽºÈ­ µË´Ï´Ù. ÀÌ ¿ÀºêÁ§Æ®´Â QOP, ¸Þ¼¼Áö¿¡ ±â¹Ð¼ºÀÌ Àû¿ëµÇ°í ÀÖ´ÂÁö ¾î¶²Áö ¹× ¸Þ¼¼Áö »óÅ¿¡ °üÇÑ ±× ¿ÜÀÇ º¸Ãæ Á¤º¸¸¦ È£ÃâÇØ Ãø¿¡ µ¹·ÁÁÖ±â À§Çؼ­(¶§¹®¿¡), ºÎÇÏÀÇ ±â±¸¿¡ ÀÇÇØ »ç¿ëµË´Ï´Ù.

¾îÇø®ÄÉÀÌ¼Ç ·¹º§ÀÇ ÇÁ·ÎÅäÄÝ¿¡´Â ·¦¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» »ç¿ëÇØ ¡¸¼¼Å¥¾ÆÈÄ·¹À̹֡¹À» Á¦°øÇÏ´Â °ÍÀÌ ÀÖ±â (À§ÇØ)¶§¹®¿¡, ±¸Çö¿¡¼­´Â ±æÀÌ 0 ÀÇ ¸Þ¼¼ÁöÀÇ ·¦ ¹× ·¦ ÇØÁ¦¸¦ ¼­Æ÷Æ®ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÀÌ ¸Þ¼Òµå°¡ Àо´Â ÀÔ·Â ÅäÅ«ÀÇ Çü½ÄÀº »ç¿ëÇÏ´Â ºÎÇÏÀÇ ±â±¸ÀÇ »ç¾ç¿¡ Á¤Àǵǰí ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼Òµå°¡ ºÒ·Á °¥ ¶§¸¶´Ù, ÀÌ·¯ÇÑ ÅäÅ«ÀÌ 1 °³¾¿ ÀÐÈü´Ï´Ù. ÀÌ ±â±¸ÀÇ ÅäÅ«¿¡ °³½Ã ÅäÅ«°ú Á¾·á ÅäÅ«ÀÌ Á¤Àǵǰí ÀÖ´Â °æ¿ì, ÀϺÎÀÇ ÅäÅ«ÀÌ ÀÐÈ÷Áö ¾Ê¾ÒÀ» ¶§´Â InputStream ´Â ºí·Ï µË´Ï´Ù. °³½Ã ÅäÅ«°ú Á¾·á ÅäÅ«ÀÌ Á¤ÀǵǾî ÀÖÁö ¾ÊÀº °æ¿ì´Â »ç¿ëÇÒ ¼ö ÀÖ´Â ¸ðµç ¹ÙÀÌÆ®°¡ ±× ÅäÅ«ÀÇ ÀϺηΠ°£ÁÖÇØÁý´Ï´Ù.

ÀÔ·Â ½ºÆ®¸²ÀÇ ºí·ÏÀÌ ¹ß»ýÇÏ´Â Á¡À» Á¦¿ÜÇϸé, ÀÌ ¸Þ¼Òµå´Â byte ¹è¿­¿¡ ±Ù°ÅÇÑ unwrap ¸Þ¼Òµå¿Í µî°¡ÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
inStream - ÇǾ ÀÇÇØ »ý¼ºµÈ ·¦ ÅäÅ«À» Æ÷ÇÔÇÑ InputStream
outStream - ¾îÇø®ÄÉÀÌ¼Ç ¸Þ¼¼Áö¸¦ ½á³»´Â OutputStream
msgProp - ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ º¹±ÍÇϸé(ÀÚ), ÀÌ ¿ÀºêÁ§Æ®¿¡´Â Àû¿ëµÈ QOP, ¸Þ¼¼ÁöÀÇ ÇÁ¶óÀ̹ö½Ã »óÅÂ, ¹× ÅäÅ«ÀÇ º¸Ãæ Á¤º¸ (Áߺ¹ Çϰí ÀÖ´Â ³°Àº ¼ø¼­°¡ ¿Ã¹Ù¸£Áö ¾ÊÀº °¸ÀÇ ÈÄ¿¡ Âø½ÅÇß´ÂÁö ¾î¶°Çß´ÂÁö)°¡ ÀúÀåµÈ´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.DEFECTIVE_TOKEN ,GSSException.BAD_MIC ,GSSException.CONTEXT_EXPIRED ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

getMIC

public byte[] getMIC(byte[] inMsg,
                     int offset,
                     int len,
                     MessageProp  msgProp)
              throws GSSException 
ÁöÁ¤µÈ ¸Þ¼¼ÁöÀÇ ¾Ïȣȭ MIC (¸Þ¼¼Áö ¿ÏÀü¼º ÄÚµå)¸¦ Æ÷ÇÔÇÑ ÅäÅ«À» µ¹·ÁÁÝ´Ï´Ù. ÀÌ ÅäÅ«Àº ÇÇ¾î ¾îÇø®ÄÉÀ̼ǿ¡ Àü¼Û µË´Ï´Ù. ·¦À» »ç¿ëÇßÀ» °æ¿ì´Â À¯Àú ¸Þ¼¼Áö¸¦ ĸ½¶È­ÇÑ ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁý´Ï´Ù¸¸, ÀÌ ¸Þ¼Òµå¿¡¼­´Â ¸Þ¼¼ÁöÀÇ MIC ¸¸À» Æ÷ÇÔÇÑ Ãâ·Â ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁý´Ï´Ù.

ÇÁ¶óÀ̹ö½Ã´Â ·¦À» È£ÃâÇßÀ» ¶§¿¡¸¸ Àû¿ëµË´Ï´Ù.

¾îÇø®ÄÉÀÌ¼Ç ·¹º§ÀÇ ÇÁ·ÎÅäÄÝ¿¡´Â getMIC ¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» »ç¿ëÇØ ¡¸¼¼Å¥¾ÆÈÄ·¹À̹֡¹À» Á¦°øÇÏ´Â °ÍÀÌ ÀÖ±â (À§ÇØ)¶§¹®¿¡, ±¸Çö¿¡¼­´Â ±æÀÌ 0 ÀÇ ¸Þ¼¼Áö·ÎºÎÅÍ ÆÄ»ýÇÑ MIC ¸¦ ¼­Æ÷Æ®ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
inMsg - MIC ÀÇ »ý¼ºÀÇ ´ë»óÀÌ µÇ´Â ¸Þ¼¼Áö
offset - inMsg ³»ÀÇ ¿ÀÇÁ¼Â(offset). ÀÌ Á¤µµÄ¡·ÎºÎÅÍ ¸Þ¼¼Áö°¡ °³½ÃÇÏ´Â
len - ¸Þ¼¼ÁöÀÇ ±æÀÌ
msgProp - MessageProp ÀÇ ÀνºÅϽº. ¸ñÇ¥ QOP ¸¦ ¼³Á¤Çϱâ À§Çؼ­ ¾îÇø®ÄÉÀ̼ÇÀÌ »ç¿ëÇÑ´Ù. µðÆúÆ®ÀÇ QOP ¸¦ ¿ä±¸ÇÏ´Â °æ¿ì´Â msgProp ÀÇ ¸ñÇ¥ QOP ¸¦ 0 À¸·Î ¼³Á¤ÇÏ´ÂÁö msgProp ¿¡ null ¸¦ °Ç³×ÁØ´Ù
¹Ýȯ°ª:
ÇǾ ¼Û½ÅµÇ´Â ÅäÅ«À» Æ÷ÇÔÇÑ byte[]
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.CONTEXT_EXPIRED ,GSSException.BAD_QOP ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

getMIC

public void getMIC(InputStream  inStream,
                   OutputStream  outStream,
                   MessageProp  msgProp)
            throws GSSException 
½ºÆ®¸²À» »ç¿ëÇØ, ÁöÁ¤µÈ ¸Þ¼¼ÁöÀÇ ¾Ïȣȭ MIC ¸¦ Æ÷ÇÔÇÑ ÅäÅ«À» µ¹·ÁÁÝ´Ï´Ù. ÀÌ ÅäÅ«Àº ÇÇ¾î ¾îÇø®ÄÉÀ̼ǿ¡ Àü¼Û µË´Ï´Ù. ·¦À» »ç¿ëÇßÀ» °æ¿ì´Â À¯Àú ¸Þ¼¼Áö¸¦ ĸ½¶È­ÇÑ ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁý´Ï´Ù¸¸, ÀÌ ¸Þ¼Òµå¿¡¼­´Â ¸Þ¼¼ÁöÀÇ MIC ¸¸À» Æ÷ÇÔÇÑ Ãâ·Â ÅäÅ«ÀÌ µ¹·ÁÁÖ¾îÁý´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â byte ¹è¿­¿¡ ±Ù°ÅÇÑ getMIC ¸Þ¼Òµå¿Í µî°¡ÀÔ´Ï´Ù. ÇÁ¶óÀ̹ö½Ã´Â ·¦À» È£ÃâÇßÀ» ¶§¿¡¸¸ Àû¿ëµË´Ï´Ù.

¾îÇø®ÄÉÀÌ¼Ç ·¹º§ÀÇ ÇÁ·ÎÅäÄÝ¿¡´Â getMIC ¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» »ç¿ëÇØ ¡¸¼¼Å¥¾ÆÈÄ·¹À̹֡¹À» Á¦°øÇÏ´Â °ÍÀÌ ÀÖ±â (À§ÇØ)¶§¹®¿¡, ±¸Çö¿¡¼­´Â ±æÀÌ 0 ÀÇ ¸Þ¼¼Áö·ÎºÎÅÍ ÆÄ»ýÇÑ MIC ¸¦ ¼­Æ÷Æ®ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
inStream - MIC ÀÇ »ý¼ºÀÇ ´ë»óÀÌ µÇ´Â ¸Þ¼¼Áö¸¦ Æ÷ÇÔÇÑ InputStream. InStream ³»¿¡¼­ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â µ¥ÀÌÅͰ¡ ¸ðµÎ »ç¿ëµÇ´Â
outStream - Ãâ·Â ÅäÅ«À» ½á³»´Â OutputStream
msgProp - MessageProp ÀÇ ÀνºÅϽº. ¸ñÇ¥ QOP ¸¦ ¼³Á¤Çϱâ À§Çؼ­ ¾îÇø®ÄÉÀ̼ÇÀÌ »ç¿ëÇÑ´Ù. µðÆúÆ®ÀÇ QOP ¸¦ ¿ä±¸ÇÏ´Â °æ¿ì´Â msgProp ÀÇ ¸ñÇ¥ QOP ¸¦ 0 À¸·Î ¼³Á¤ÇÏ´ÂÁö msgProp ¿¡ null ¸¦ °Ç³×ÁØ´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.CONTEXT_EXPIRED ,GSSException.BAD_QOP ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

verifyMIC

public void verifyMIC(byte[] inToken,
                      int tokOffset,
                      int tokLen,
                      byte[] inMsg,
                      int msgOffset,
                      int msgLen,
                      MessageProp  msgProp)
               throws GSSException 
ÅäÅ« ÆÄ¶ó¹ÌÅÍ¿¡ Æ÷ÇԵǴ ¾Ïȣȭ MIC ¸¦, ÁöÁ¤µÈ ¸Þ¼¼Áö¿¡ ´ëÇØ¼­ °Ë»çÇÕ´Ï´Ù.

MessageProp ¿ÀºêÁ§Æ®´Â ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÇØ ÀνºÅϽºÈ­ µË´Ï´Ù. ÀÌ ¿ÀºêÁ§Æ®´Â ¸Þ¼¼Áö¿¡ Àû¿ëµÈ º¸È£ÀÇ °­ÇÔÀ» ³ªÅ¸³»´Â QOP, ¹× ¸Þ¼¼Áö »óÅ¿¡ °üÇÑ ±× ¿ÜÀÇ º¸Ãæ Á¤º¸¸¦ È£ÃâÇØ Ãø¿¡ µ¹·ÁÁÖ±â À§Çؼ­(¶§¹®¿¡), ºÎÇÏÀÇ ±â±¸¿¡ ÀÇÇØ »ç¿ëµË´Ï´Ù.

¾îÇø®ÄÉÀÌ¼Ç ·¹º§ÀÇ ÇÁ·ÎÅäÄÝ¿¡´Â getMIC ¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» »ç¿ëÇØ ¡¸¼¼Å¥¾ÆÈÄ·¹À̹֡¹À» Á¦°øÇÏ´Â °ÍÀÌ ÀÖ±â (À§ÇØ)¶§¹®¿¡, ±¸Çö¿¡¼­´Â ±æÀÌ 0 ÀÇ ¸Þ¼¼Áö¿¡ ´ëÇÑ MIC ¸¦ °è»ê ¹× °Ë»çÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
inToken - ÇǾîÀÇ getMIC ¸Þ¼Òµå¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«
tokOffset - inMsg ³»ÀÇ ¿ÀÇÁ¼Â(offset). ÀÌ Á¤µµÄ¡·ÎºÎÅÍ ÅäÅ«ÀÌ °³½ÃÇÏ´Â
tokLen - ÅäÅ«ÀÇ ±æÀÌ
inMsg - ¾Ïȣȭ MIC ÀÇ °Ë»çÀÇ ´ë»óÀÌ µÇ´Â ¾îÇø®ÄÉÀÌ¼Ç ¸Þ¼¼Áö
msgOffset - inMsg ³»ÀÇ ¿ÀÇÁ¼Â(offset). ÀÌ Á¤µµÄ¡·ÎºÎÅÍ ¸Þ¼¼Áö°¡ °³½ÃÇÏ´Â
msgLen - ¸Þ¼¼ÁöÀÇ ±æÀÌ
msgProp - ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ º¹±ÍÇϸé(ÀÚ), ÀÌ ¿ÀºêÁ§Æ®¿¡´Â Àû¿ëµÈ QOP, ¹× ÅäÅ«ÀÇ º¸Ãæ Á¤º¸ (Áߺ¹ Çϰí ÀÖ´Â ³°Àº ¼ø¼­°¡ ¿Ã¹Ù¸£Áö ¾ÊÀº °¸ÀÇ ÈÄ¿¡ Âø½ÅÇß´ÂÁö ¾î¶°Çß´ÂÁö)°¡ ÀúÀåµÈ´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.DEFECTIVE_TOKEN ,GSSException.BAD_MIC ,GSSException.CONTEXT_EXPIRED ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

verifyMIC

public void verifyMIC(InputStream  tokStream,
                      InputStream  msgStream,
                      MessageProp  msgProp)
               throws GSSException 
½ºÆ®¸²À» »ç¿ëÇØ, ÅäÅ« ÆÄ¶ó¹ÌÅÍ¿¡ Æ÷ÇԵǴ ¾Ïȣȭ MIC ¸¦, ÁöÁ¤µÈ ¸Þ¼¼Áö¿¡ ´ëÇØ¼­ °Ë»çÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â byte ¹è¿­¿¡ ±Ù°ÅÇÑ verifyMIC ¸Þ¼Òµå¿Í µî°¡ÀÔ´Ï´Ù. MessageProp ¿ÀºêÁ§Æ®´Â ¾îÇø®ÄÉÀ̼ǿ¡ ÀÇÇØ ÀνºÅϽºÈ­ µË´Ï´Ù. ÀÌ ¿ÀºêÁ§Æ®´Â ¸Þ¼¼Áö¿¡ Àû¿ëµÈ º¸È£ÀÇ °­ÇÔÀ» ³ªÅ¸³»´Â QOP, ¹× ¸Þ¼¼Áö »óÅ¿¡ °üÇÑ ±× ¿ÜÀÇ º¸Ãæ Á¤º¸¸¦ È£ÃâÇØ Ãø¿¡ µ¹·ÁÁÖ±â À§Çؼ­(¶§¹®¿¡), ºÎÇÏÀÇ ±â±¸¿¡ ÀÇÇØ »ç¿ëµË´Ï´Ù.

¾îÇø®ÄÉÀÌ¼Ç ·¹º§ÀÇ ÇÁ·ÎÅäÄÝ¿¡´Â getMIC ¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» »ç¿ëÇØ ¡¸¼¼Å¥¾ÆÈÄ·¹À̹֡¹À» Á¦°øÇÏ´Â °ÍÀÌ ÀÖ±â (À§ÇØ)¶§¹®¿¡, ±¸Çö¿¡¼­´Â ±æÀÌ 0 ÀÇ ¸Þ¼¼Áö¿¡ ´ëÇÑ MIC ¸¦ °è»ê ¹× °Ë»çÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÀÌ ¸Þ¼Òµå°¡ Àо´Â ÀÔ·Â ÅäÅ«ÀÇ Çü½ÄÀº »ç¿ëÇÏ´Â ºÎÇÏÀÇ ±â±¸ÀÇ »ç¾ç¿¡ Á¤Àǵǰí ÀÖ½À´Ï´Ù. ÀÌ ¸Þ¼Òµå°¡ ºÒ·Á °¥ ¶§¸¶´Ù, ÀÌ·¯ÇÑ ÅäÅ«ÀÌ 1 °³¾¿ ÀÐÈü´Ï´Ù. ÀÌ ±â±¸ÀÇ ÅäÅ«¿¡ °³½Ã ÅäÅ«°ú Á¾·á ÅäÅ«ÀÌ Á¤Àǵǰí ÀÖ´Â °æ¿ì, ÀϺÎÀÇ ÅäÅ«ÀÌ ÀÐÈ÷Áö ¾Ê¾ÒÀ» ¶§´Â InputStream ´Â ºí·Ï µË´Ï´Ù. °³½Ã ÅäÅ«°ú Á¾·á ÅäÅ«ÀÌ Á¤ÀǵǾî ÀÖÁö ¾ÊÀº °æ¿ì´Â »ç¿ëÇÒ ¼ö ÀÖ´Â ¸ðµç ¹ÙÀÌÆ®°¡ ±× ÅäÅ«ÀÇ ÀϺηΠ°£ÁÖÇØÁý´Ï´Ù.

ÀÔ·Â ½ºÆ®¸²ÀÇ ºí·ÏÀÌ ¹ß»ýÇÏ´Â Á¡À» Á¦¿ÜÇϸé, ÀÌ ¸Þ¼Òµå´Â byte ¹è¿­¿¡ ±Ù°ÅÇÑ verifyMIC ¸Þ¼Òµå¿Í µî°¡ÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
tokStream - ÇǾîÀÇ getMIC ¸Þ¼Òµå¿¡ ÀÇÇØ »ý¼ºµÈ ÅäÅ«À» Æ÷ÇÔÇÑ InputStream
msgStream - ¾Ïȣȭ MIC ÀÇ °Ë»çÀÇ ´ë»óÀÌ µÇ´Â ¾îÇø®ÄÉÀÌ¼Ç ¸Þ¼¼Áö¸¦ Æ÷ÇÔÇÑ InputStream. msgStream ³»¿¡¼­ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â µ¥ÀÌÅͰ¡ ¸ðµÎ »ç¿ëµÇ´Â
msgProp - ÀÌ ¸Þ¼Òµå·ÎºÎÅÍ º¹±ÍÇϸé(ÀÚ), ÀÌ ¿ÀºêÁ§Æ®¿¡´Â Àû¿ëµÈ QOP, ¹× ÅäÅ«ÀÇ º¸Ãæ Á¤º¸ (Áߺ¹ Çϰí ÀÖ´Â ³°Àº ¼ø¼­°¡ ¿Ã¹Ù¸£Áö ¾ÊÀº °¸ÀÇ ÈÄ¿¡ Âø½ÅÇß´ÂÁö ¾î¶°Çß´ÂÁö)°¡ ÀúÀåµÈ´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.DEFECTIVE_TOKEN ,GSSException.BAD_MIC ,GSSException.CONTEXT_EXPIRED ,GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

export

public byte[] export()
              throws GSSException 
ÀÌ ¹®¸ÆÀ» export ÇØ, ´Ù¸¥ ÇÁ·Î¼¼½º¸¦ ÀÓÆ÷Æ® ÇÒ ¼ö ÀÖ°Ô ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå¸¦ »ç¿ëÇϸé, º¹¼öÀÇ ÇÁ·Î¼¼½º°£¿¡ ¹®¸ÆÀ» °øÀ¯ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ routine´Â Åë»ó, ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·Î »ç¿ëµË´Ï´Ù. ´ÜÀÏ ÇÁ·Î¼¼½º°¡ Âø½Å Á¢¼Ó ¿ä±¸¸¦ ¼ö½ÅÇØ, ±×·¯ÇÑ ¿ä±¸¿¡ ´ëÇÑ ½ÃÅ¥·¯Æ¼ ¹®¸ÆÀ» ¹Þ¾ÆµéÀÔ´Ï´Ù. ´ÙÀ½¿¡, È®¸³µÈ ¹®¸ÆÀ» ´Ù¸¥ ¸î°³ÀÇ ÇÁ·Î¼¼½º¿¡ °Ç³×ÁÖ¾î, ¸Þ¼¼Áö¸¦ ±³È¯ÇÕ´Ï´Ù.

ÀÌ ¸Þ¼Òµå´Â ½ÃÅ¥·¯Æ¼ ¹®¸ÆÀ» Á¾·áÇØ, ÇÁ·Î¼¼½º°£ ÅäÅ«À» ÀÛ¼ºÇÕ´Ï´Ù. ÀÌ ÅäÅ«ÀÌ ´Ù¸¥ ÇÁ·Î¼¼½ºÀÇ GSSManager.createContext ¿¡°Ô °Ç³×Áö¸é(ÀÚ), ±× ÇÁ·Î¼¼½º·Î ±× ¹®¸ÆÀÌ Àç±âµ¿ÇÕ´Ï´Ù. ƯÁ¤ÀÇ ¹®¸ÆÀÇ ÀνºÅϽº´Â 1 ¹ø¿¡ 1 °³ ¹Û¿¡ ±âµ¿ÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ ¶§¹®¿¡, ¹®¸ÆÀÇ exportÃø¿¡¼­ export µÈ ½ÃÅ¥·¯Æ¼ ¹®¸Æ¿¡ ¾×¼¼½º ÇÏ·Á°í Çϸé(ÀÚ), ½ÇÆÐÇÕ´Ï´Ù.

ÀÌ ±¸Çö¿¡¼­´Â ÇÁ·Î¼¼½º°£ ÅäÅ«À» ÀÓÆ÷Æ® ÇÏ´Â ÇÁ·Î¼¼½º°¡, ·ÎÄà ½ÃÅ¥·¯Æ¼ Æú¸®½Ã ¶Ç´Â ±¸ÇöÀÇ ¼³Á¤¿¡ ÀÇÇØ Á¦ÇѵǴ ÀÏÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, °°Àº ¾îÄ«¿îÆ®·Î µ¿ÀÛÇÏ´Â ÇÁ·Î¼¼½º°£¿¡¸¸ ¹®¸ÆÀÌ °Ç³×¹Þ°Å³ª °°Àº ÇÁ·Î¼¼½º ±×·ìÀÇ ÇÁ·Î¼¼½º°£¿¡¸¸ °Ç³×¹Þ°Å³ª ÇÕ´Ï´Ù.

ÇÁ·Î¼¼½º°£ ÅäÅ«¿¡´Â ±â¹Ð Á¤º¸ (¾Ïȣȭ¿­¼èµî)°¡ Æ÷ÇԵǾî ÀÖ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ±â¹Ð Á¤º¸´Â °¡´ÉÇÑ ÇÑ ÇÁ·Î¼¼½º°£ ÅäÅ«¿¡ Æ÷ÇÔÇÏÁö ¾Ê°Ô ÇÏ´ÂÁö ÅäÅ«À» ¾ÏȣȭÇÏ°í ³ª¼­ ¾îÇø®ÄÉÀ̼ǿ¡ µ¹·ÁÁÖ¼¼¿ä. ´Ù¸¸, Ç¥ÁØÀûÀÎ GSS-API ÀÇ ±¸Çö¿¡¼­´Â ÀÌ·¯ÇÑ ´ëÀÀÀ» Àû¿ëÇÒ ¼ö ¾ø´Â °ÍÀÌ ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ÇÁ·Î¼¼½º°£ ÅäÅ«À» »ç¿ëÇÏ´Â °æ¿ì´Â ½ÃÅ¥·¯Æ¼¿¡ ÃæºÐÈ÷ ¹è·ÁÇØ, ½Å·ÚÇÒ ¼ö ÀÖ´Â ÇÁ·Î¼¼½º¿¡ Àü¼Û ÇØ ÁÖ¼¼¿ä.

½ÃÅ¥·¯Æ¼ ¹®¸ÆÀÇ ÇÁ·Î¼¼½º°£ Àü¼ÛÀº ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº °ÍÀÌ ÀÖ½À´Ï´Ù. isTransferable ¸Þ¼Òµå¸¦ È£ÃâÇϸé, ¹®¸Æ ¿ÀºêÁ§Æ®¸¦ Àü¼Û ÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.

export ÇÒ ¼ö ¾ø´Â ¹®¸Æ¿¡ ´ëÇØ¼­ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇϸé(ÀÚ), ¿¡·¯ ÄÚµå GSSException.UNAVAILABLE ¸¦ Æ÷ÇÔÇÑ GSSException °¡ ½½·Î¿ì µË´Ï´Ù.

¹Ýȯ°ª:
export µÈ ¹®¸ÆÀ» Æ÷ÇÔÇÑ byte[]
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.UNAVAILABLE ,GSSException.CONTEXT_EXPIRED ,GSSException.NO_CONTEXT ,GSSException.FAILURE À» Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSManager.createContext(byte[])

requestMutualAuth

public void requestMutualAuth(boolean state)
                       throws GSSException 
¹®¸ÆÀÌ È®¸³ÇØ ÀÖÀ» ¶§, »óÈ£ ÀÎÁõÀ» Çϵµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù. ÀÌ ¿ä±¸´Â ¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ,initSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

GSS-API ±â±¸¿¡ µû¶ó¼­´Â »óÈ£ ÀÎÁõÀÌ ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº °ÍÀÌ ÀÖ½À´Ï´Ù. ¶Ç, GSS-API ±â±¸´Â »óÈ£ ÀÎÁõÀ» ÇÊ¿ä·Î ÇÏÁö ¾ÊÁö¸¸, ¾îÇø®ÄÉÀ̼ÇÀÌ ÇÊ¿ä·Î ÇÏ´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡, ÀÌ ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ¾ú´ÂÁö ¾î¶°Çß´ÂÁö¸¦, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î getMutualAuthState ¸Þ¼Òµå¸¦ »ç¿ëÇØ È®ÀÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
state - »óÈ£ ÀÎÁõÀ» »ç¿ëÇÒÁö ¾î¶³Áö¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
getMutualAuthState()

requestReplayDet

public void requestReplayDet(boolean state)
                      throws GSSException 
¹®¸ÆÀÌ È®¸³ÇÑ ÈÄ¿¡, ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½ºÀÇ ¸®Ç÷¹ÀÌ °ËÃâÀÌ À¯È¿ÇÏ°Ô µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù. ÀÌ ¿ä±¸´Â ¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ,initSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ¹®¸ÆÀÌ È®¸³ÇØ ÀÖ´Â µ¿¾ÈÀº ¸®Ç÷¹ÀÌ °ËÃâÀº ¿É¼ÇÀº ¾Æ´Ï°í, ºÎÇÏÀÇ ±â±¸ÀÇ ±â´ÉÀÌ µË´Ï´Ù.

GSS-API ±â±¸¿¡ µû¶ó¼­´Â ¸®Ç÷¹ÀÌ °ËÃâÀÌ ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº °ÍÀÌ ÀÖ½À´Ï´Ù. ¶Ç, GSS-API ±â±¸´Â ¸®Ç÷¹ÀÌ °ËÃâÀ» ÇÊ¿ä·Î ÇÏÁö ¾ÊÁö¸¸, ¾îÇø®ÄÉÀ̼ÇÀÌ ÇÊ¿ä·Î ÇÏ´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡, ÀÌ ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ¾ú´ÂÁö ¾î¶°Çß´ÂÁö¸¦, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î getReplayDetState ¸Þ¼Òµå¸¦ »ç¿ëÇØ È®ÀÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ¸®Ç÷¹ÀÌ °ËÃâÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´Â °æ¿ì,MessageProp.isDuplicateToken ¹× MessageProp.isOldToken ¸Þ¼Òµå´Â unwrap ¶Ç´Â verifyMIC ¸Þ¼Òµå¿¡°Ô °Ç³×Áö´Â MessageProp ¿ÀºêÁ§Æ®¿¡ ´ëÇØ¼­ À¯È¿ÇÑ °á°ú¸¦ µ¹·ÁÁÝ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
state - È®¸³ÇÑ ¹®¸Æ¿¡ ´ëÇØ¼­ ¸®Ç÷¹ÀÌ °ËÃâÀ» À¯È¿ÇÏ°Ô ÇÒÁö ¾î¶³Áö¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
getReplayDetState()

requestSequenceDet

public void requestSequenceDet(boolean state)
                        throws GSSException 
¹®¸ÆÀÌ È®¸³ÇÑ ÈÄ¿¡, ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½ºÀÇ sequence check°¡ À¯È¿ÇÏ°Ô µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù. ÀÌ ¿ä±¸´Â ¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ,initSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ¹®¸ÆÀÌ È®¸³ÇØ ÀÖ´Â µ¿¾ÈÀº sequence check´Â ¿É¼ÇÀº ¾Æ´Ï°í, ºÎÇÏÀÇ ±â±¸ÀÇ ±â´ÉÀÌ µË´Ï´Ù.

GSS-API ±â±¸¿¡ µû¶ó¼­´Â sequence check°¡ ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº °ÍÀÌ ÀÖ½À´Ï´Ù. ¶Ç, GSS-API ±â±¸´Â sequence check¸¦ ÇÊ¿ä·Î ÇÏÁö ¾ÊÁö¸¸, ¾îÇø®ÄÉÀ̼ÇÀÌ ÇÊ¿ä·Î ÇÏ´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡, ÀÌ ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ¾ú´ÂÁö ¾î¶°Çß´ÂÁö¸¦, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î getSequenceDetState ¸Þ¼Òµå¸¦ »ç¿ëÇØ È®ÀÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. sequence check°¡ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´Â °æ¿ì,MessageProp.isDuplicateToken ,MessageProp.isOldToken ,MessageProp.isUnseqToken , ¹× MessageProp.isGapToken ¸Þ¼Òµå´Â unwrap ¶Ç´Â verifyMIC ¸Þ¼Òµå¿¡°Ô °Ç³×Áö´Â MessageProp ¿ÀºêÁ§Æ®¿¡ ´ëÇØ¼­ À¯È¿ÇÑ °á°ú¸¦ µ¹·ÁÁÝ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
state - È®¸³µÈ ¹®¸Æ¿¡ ´ëÇØ¼­ sequence check¸¦ À¯È¿ÇÏ°Ô ÇÒÁö ¾î¶³Áö¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
getSequenceDetState()

requestCredDeleg

public void requestCredDeleg(boolean state)
                      throws GSSException 
¹®¸ÆÀÌ È®¸³ÇØ ÀÖÀ» ¶§, ±âµ¿ÃøÀÇ ÀÚ°ÝÀÌ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ delegate µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù. ÀÌ ¿ä±¸´Â ¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ,initSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. GSS-API ±â±¸¿¡ µû¶ó¼­´Â ÀÚ°ÝÀÇ delegateÀÌ ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº °ÍÀÌ ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡, ÀÌ ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ¾ú´ÂÁö ¾î¶°Çß´ÂÁö¸¦, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î getCredDelegState ¸Þ¼Òµå¸¦ »ç¿ëÇØ È®ÀÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ÀÚ°ÝÀÇ delegateÀ» »ç¿ëÇÒ ¼ö ¾ø´Â °æ¿ì, GSS-API ±â±¸°¡ ±× ¿ä±¸¸¦ ¹Þ¾Æµé¿© delegateÀº ÇàÇØÁöÁö ¾Ê½À´Ï´Ù. Åë»óÀº ¼­ºñ½º°¡ ¿ä±¸µÇÁö ¾Ê¾Ò´ø °æ¿ì¿¡¼­µµ, ±× ¼­ºñ½º´Â À¯È¿ÇÏ°Ô µË´Ï´Ù¸¸, ÀÌ °æ¿ì´Â ¿¹¿ÜÀÔ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
state - ÀÚ°ÝÀ» delegate ÇÒÁö ¾î¶³Áö¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
getCredDelegState()

requestAnonymity

public void requestAnonymity(boolean state)
                      throws GSSException 
±âµ¿ÃøÀÇ ID °¡ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ °ø°³µÇÁö ¾Ê°Ô ¿ä±¸ÇÕ´Ï´Ù. ÀÌ ¿ä±¸´Â ¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ,initSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. GSS-API ±â±¸¿¡ µû¶ó¼­´Â ±âµ¿ÃøÀÇ À͸íÀÌ ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº °ÍÀÌ ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î getAnonymityState ¸Þ¼Òµå¸¦ »ç¿ëÇØ ÀÌ ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ¾ú´ÂÁö ¾î¶°Çß´ÂÁö¸¦ üũÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡, ÀÌ ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ¾ú´ÂÁö ¾î¶°Çß´ÂÁö¸¦, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î getAnonymityState ¸Þ¼Òµå¸¦ »ç¿ëÇØ È®ÀÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù..

ÆÄ¶ó¹ÌÅÍ:
state - ±âµ¿ÃøÀÌ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ À͸í ÁÖü·Î¼­ ÀÎÁõµÉÁö ¾î¶³Áö¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
getAnonymityState()

requestConf

public void requestConf(boolean state)
                 throws GSSException 
wrap ¸Þ¼Òµå¿¡ ´ëÇØ¼­ µ¥ÀÌÅÍÀÇ ±â¹Ð¼ºÀÌ À¯È¿ÇÏ°Ô µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù. ÀÌ ¿ä±¸´Â ¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ,initSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. GSS-API ±â±¸¿¡ µû¶ó¼­´Â ±â¹Ð¼ºÀÌ ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº °ÍÀÌ ÀÖ½À´Ï´Ù. ¶Ç, GSS-API ±â±¸¿¡¼­´Â ±â¹Ð¼ºÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖÁö¸¸, ¾îÇø®ÄÉÀ̼ÇÀÌ ±â¹Ð¼ºÀ» ¿ä±¸ÇÏÁö ¾Ê´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. ÀÌ ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ¾ú´ÂÁö ¾î¶°Çß´ÂÁö´Â ¾îÇø®ÄÉÀ̼ÇÀ¸·Î getConfState ¸Þ¼Òµå¸¦ »ç¿ëÇØ È®ÀÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ±â¹Ð¼ºÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´Â °æ¿ì, GSS-API ±â±¸´Â wrap ¸Þ¼Òµå¿¡°Ô °Ç³×Áø MessageProp ¿ÀºêÁ§Æ®ÀÇ ÇÁ¶óÀ̹ö½ÃÀÇ ¿ä±¸¸¦ ¹Þ¾ÆµéÀÔ´Ï´Ù.

±â¹Ð¼ºÀ» À¯È¿ÇÏ°Ô Çϸé(ÀÚ), ¿ÏÀü¼ºµµ ÀÚµ¿ÀûÀ¸·Î À¯È¿ÇÏ°Ô µË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
state - ±â¹Ð¼ºÀ» À¯È¿ÇÏ°Ô ÇÒÁö ¾î¶³Áö¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
getConfState() , getIntegState() , requestInteg(boolean) , MessageProp

requestInteg

public void requestInteg(boolean state)
                  throws GSSException 
wrap ¹× getMIC ¸Þ¼Òµå¿¡ ´ëÇØ¼­ µ¥ÀÌÅÍÀÇ ¿ÏÀü¼ºÀÌ À¯È¿ÇÏ°Ô µÇµµ·Ï(µíÀÌ) ¿ä±¸ÇÕ´Ï´Ù. ÀÌ ¿ä±¸´Â ¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ,initSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. GSS-API ±â±¸¿¡ µû¶ó¼­´Â ¿ÏÀü¼ºÀÌ ¼­Æ÷Æ®µÇ¾î ÀÖÁö ¾ÊÀº °ÍÀÌ ÀÖ½À´Ï´Ù. ¶Ç, GSS-API ±â±¸¿¡¼­´Â ¿ÏÀü¼ºÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖÁö¸¸, ¾îÇø®ÄÉÀ̼ÇÀÌ ¿ÏÀü¼ºÀ» ¿ä±¸ÇÏÁö ¾Ê´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. ÀÌ ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ÀÖ¾ú´ÂÁö ¾î¶°Çß´ÂÁö´Â ¾îÇø®ÄÉÀ̼ÇÀ¸·Î getIntegState ¸Þ¼Òµå¸¦ »ç¿ëÇØ È®ÀÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

¿ÏÀü¼ºÀ» ¹«È¿·Î Çϸé(ÀÚ), ±â¹Ð¼ºµµ ÀÚµ¿ÀûÀ¸·Î ¹«È¿°¡ µË´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
state - ¿ÏÀü¼ºÀ» À¯È¿ÇÏ°Ô ÇÒÁö ¾î¶³Áö¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
getIntegState()

requestLifetime

public void requestLifetime(int lifetime)
                     throws GSSException 
¹®¸ÆÀÇ ¼ö¸íÀ» ÃÊ´ÜÀ§·Î ¿ä±¸ÇÕ´Ï´Ù. ÀÌ ¸Þ¼ÒµåÀÇ È£ÃâÀº ¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ,initSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

¹®¸ÆÀÇ ½ÇÁ¦ÀÇ ¼ö¸íÀº ºÎÇÏÀÇ ±â±¸ÀÇ ¼º´É¿¡ ÀÇÇØ ¹Ù²î±â (À§ÇØ)¶§¹®¿¡, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î getLifetime ¸Þ¼Òµå¸¦ È£ÃâÇØ È®ÀÎÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
lifetime - ¹®¸ÆÀÇ ¸ñÇ¥ ¼ö¸í (ÃÊ´ÜÀ§). ¹«±âÇÑÀÇ ¼ö¸íÀ» ¿ä±¸ÇÏ´Â °æ¿ì´Â INDEFINITE_LIFETIME ¸¦ »ç¿ëÇØ, µðÆúÆ®ÀÇ ¼ö¸íÀ» ¿ä±¸ÇÏ´Â °æ¿ì´Â DEFAULT_LIFETIME ¸¦ »ç¿ëÇÑ´Ù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
getLifetime()

setChannelBinding

public void setChannelBinding(ChannelBinding  cb)
                       throws GSSException 
¹®¸ÆÀÌ È®¸³ÇØ ÀÖÀ» ¶§ ä³Î ¹ÙÀεùÀÌ »ç¿ëµÇµµ·Ï(µíÀÌ) ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·ÎºÎÅÍ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, ¹®¸ÆÀÇ È®¸³À» °³½ÃÇϱâ Àü¿¡ È£ÃâÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. Áï, ±âµ¿Ãø¿¡¼­ È£ÃâÇÒ ¶§´Â initSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·ÎºÎÅÍ È£ÃâÇÒ ¶§´Â acceptSecContext ¸¦ ÃÖÃʷΠȣÃâÇϱâ Àü¿¡ ½Ç½ÃÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
cb - »ç¿ëÇϴ ä³Î ¹ÙÀεù
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

getCredDelegState

public boolean getCredDelegState()
ÀÌ ¹®¸ÆÀ¸·Î ÀÚ°ÝÀÇ delegateÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× È£ÃâÇØ ¿·À¸·ÎºÎÅÍ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇÏ°í ³ª¼­ È£ÃâÇØ ÁÖ¼¼¿ä. ±âµ¿ÃøÀÌ ÀÚ°ÝÀÇ delegateÀ» ¹«È¿·Î Çϵµ·Ï(µíÀÌ) ¿ä±¸ÇßÀ» °æ¿ì,requestCredDeleg ¸Þ¼Òµå´Â ±× ¿ä±¸¸¦ ¹Þ¾Æµé¿© ±× ½ÃÁ¡À¸·ÎºÎÅÍ ±âµ¿ Ãø¿¡ ´ëÇØ false ¸¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
delegateÀÌ À¯È¿ÇÑ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
°ü·Ã Ç׸ñ:
requestCredDeleg(boolean)

getMutualAuthState

public boolean getMutualAuthState()
ÀÌ ¹®¸ÆÀ¸·Î »óÈ£ ÀÎÁõÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× È£ÃâÇØ ¿·À¸·ÎºÎÅÍ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇÏ°í ³ª¼­ È£ÃâÇØ ÁÖ¼¼¿ä. »óÈ£ ÀÎÁõÀ» ¿ä±¸ÇÑ ±âµ¿ÃøÀº ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇÑ ÈÄ¿¡ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇØ, ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ¾ø¾ú´ø °æ¿ì´Â ±× ¹®¸ÆÀ» ÆÄ±âÇÒ ¼ö ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
»óÈ£ ÀÎÁõÀÌ À¯È¿ÇÑ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
°ü·Ã Ç׸ñ:
requestMutualAuth(boolean)

getReplayDetState

public boolean getReplayDetState()
ÀÌ ¹®¸ÆÀÇ ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½º·Î ¸®Ç÷¹ÀÌ °ËÃâÀÌ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× È£ÃâÇØ ¿·À¸·ÎºÎÅÍ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇÏ°í ³ª¼­ È£ÃâÇØ ÁÖ¼¼¿ä. ¸®Ç÷¹ÀÌ °ËÃâÀ» ¿ä±¸ÇÑ ±âµ¿ÃøÀº ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇÑ ÈÄ¿¡ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇØ, ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ¾ø¾ú´ø °æ¿ì´Â ±× ¹®¸ÆÀ» ÆÄ±âÇÒ ¼ö ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
¸®Ç÷¹ÀÌ °ËÃâÀÌ À¯È¿ÇÑ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
°ü·Ã Ç׸ñ:
requestReplayDet(boolean)

getSequenceDetState

public boolean getSequenceDetState()
ÀÌ ¹®¸ÆÀÇ ¸Þ¼¼Áö¸¶´ÙÀÇ ½ÃÅ¥·¯Æ¼ ¼­ºñ½º·Î sequence check°¡ À¯È¿ÇÏ°Ô µÇ¾î ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× È£ÃâÇØ ¿·À¸·ÎºÎÅÍ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇÏ°í ³ª¼­ È£ÃâÇØ ÁÖ¼¼¿ä. sequence check¸¦ ¿ä±¸ÇÑ ±âµ¿ÃøÀº ¹®¸ÆÀÇ È®¸³ÀÌ ¿Ï·áÇÑ ÈÄ¿¡ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇØ, ¿ä±¸¸¦ ¹Þ¾ÆµéÀÏ ¼ö ¾ø¾ú´ø °æ¿ì´Â ±× ¹®¸ÆÀ» ÆÄ±âÇÒ ¼ö ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
sequence check°¡ À¯È¿ÇÑ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
°ü·Ã Ç׸ñ:
requestSequenceDet(boolean)

getAnonymityState

public boolean getAnonymityState()
¹®¸ÆÀÇ ±âµ¿ÃøÀÌ ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ À͸íÀ¸·Î¼­ ÀÎÁõµÇ°í ÀÖ´ÂÁö ¾î¶²Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× È£ÃâÇØ ¿·À¸·ÎºÎÅÍ, ÀÓÀÇÀÇ Å¸Àֿ̹¡ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ±âµ¿ÃøÀ¸·ÎºÎÅÍ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇßÀ» °æ¿ì´Â initSecContext ¿¡ ÀÇÇØ ±× ½ÃÁ¡±îÁö »ý¼ºµÈ ¹®¸Æ È®¸³ ÅäÅ«ÀÇ ¾î´À ÂÊÀΰ¡¿¡, ±âµ¿ÃøÀÇ ID °¡ °ø°³µÇ°í ÀÖ´ÂÁö ¾î¶²Áö°¡ °Ë»çµË´Ï´Ù. À͸íÀ¸·Î¼­ÀÇ ÀÎÁõÀÌ ÇÊ¿äÇÑ °æ¿ì´Â initSecContext ¸¦ È£ÃâÇÏ°í ³ª¼­ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇØ, »ý¼ºµÈ ÅäÅ«À» ÇǾ ¼Û½ÅÇÏ´ÂÁö ±× ¹®¸ÆÀ» ÁßÁöÇұ °áÁ¤ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·ÎºÎÅÍ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇßÀ» °æ¿ì´Â acceptSecContext ¿¡ ÀÇÇØ ±× ½ÃÁ¡±îÁö ó¸®µÈ ÅäÅ«ÀÇ ¾î´À ÂÊÀΰ¡¿¡, ±âµ¿ÃøÀÇ ID °¡ °ø°³µÇ°í ÀÖ´ÂÁö ¾î¶²Áö°¡ °Ë»çµË´Ï´Ù.

¹Ýȯ°ª:
¹®¸ÆÀÇ ±âµ¿ÃøÀÌ À͸íÀ¸·Î¼­ ÀÎÁõµÇ°í ÀÖ´Â °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
°ü·Ã Ç׸ñ:
requestAnonymity(boolean)

isTransferable

public boolean isTransferable()
                       throws GSSException 
export ¸Þ¼Òµå¸¦ »ç¿ëÇØ, ÀÌ ¹®¸ÆÀ» ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ Àü¼Û ÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù. ÀÌ È£ÃâÀº ¿ÏÀüÇÏ°Ô È®¸³µÈ ¹®¸ÆÀ¸·Î¸¸ À¯È¿ÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¹®¸ÆÀ» export ÇÒ ¼ö ÀÖ´Â °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

isProtReady

public boolean isProtReady()
ÀÌ ¹®¸ÆÀ¸·Î ¸Þ¼¼Áö¸¶´ÙÀÇ Á¶ÀÛÀ» °ð¹Ù·Î °³½ÃÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù. ÀϺÎÀÇ ±â±¸¿¡¼­´Â ¹®¸ÆÀÌ ¿ÏÀüÇÏ°Ô È®¸³µÇ±â Àü¿¡, ¸Þ¼¼Áö¸¶´ÙÀÇ Á¶ÀÛÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
ÇöÀçÀÇ ¹®¸Æ È®¸³ ´Ü°è¿¡¼­ wrap,unwrap,getMIC,verifyMIC µîÀÇ ¸Þ¼Òµå¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Â °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false

getConfState

public boolean getConfState()
ÀÌ ¹®¸ÆÀ¸·Î µ¥ÀÌÅÍÀÇ ±â¹Ð¼ºÀ» ÀÌ¿ëÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·ÎºÎÅÍ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸,isProtReady ¶Ç´Â isEstablished ·ÎºÎÅÍ true °¡ µ¹·ÁÁÖ¾îÁø ÈÄ¿¡ ¾øÀ¸¸é ¾ÈµË´Ï´Ù. ÀÌ ¸Þ¼Òµå°¡ true ¸¦ µ¹·ÁÁÖ¾úÀ» °æ¿ì´Â getIntegState µµ true ¸¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
±â¹Ð¼º ¼­ºñ½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
°ü·Ã Ç׸ñ:
requestConf(boolean)

getIntegState

public boolean getIntegState()
ÀÌ ¹®¸ÆÀ¸·Î µ¥ÀÌÅÍÀÇ ¿ÏÀü¼ºÀ» ÀÌ¿ëÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·ÎºÎÅÍ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸,isProtReady ¶Ç´Â isEstablished ·ÎºÎÅÍ true °¡ µ¹·ÁÁÖ¾îÁø ÈÄ¿¡ ¾øÀ¸¸é ¾ÈµË´Ï´Ù. getConfState °¡ true ¸¦ µ¹·ÁÁÖ¾úÀ» °æ¿ì´Â ÀÌ ¸Þ¼Òµåµµ true ¸¦ µ¹·ÁÁÝ´Ï´Ù.

¹Ýȯ°ª:
¿ÏÀü¼º ¼­ºñ½º¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
°ü·Ã Ç׸ñ:
requestInteg(boolean)

getLifetime

public int getLifetime()
ÀÌ ¹®¸ÆÀÇ ³ª¸ÓÁöÀÇ ¼ö¸íÀ» °Ë»çÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·ÎºÎÅÍ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸,isEstablished ·ÎºÎÅÍ true °¡ µ¹·ÁÁÖ¾îÁø ÈÄ¿¡ ¾øÀ¸¸é ¾ÈµË´Ï´Ù.

¹Ýȯ°ª:
³ª¸ÓÁöÀÇ ¼ö¸í (ÃÊ´ÜÀ§)
°ü·Ã Ç׸ñ:
requestLifetime(int)

getSrcName

public GSSName  getSrcName()
                   throws GSSException 
¹®¸ÆÀÇ ±âµ¿ÃøÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù. ÀÌ È£ÃâÀº isProtReady ¶Ç´Â isEstablished ·ÎºÎÅÍ true °¡ µ¹·ÁÁÖ¾îÁø ÈÄ¿¡ ¸¶¼Å À¯È¿ÇÏ°Ô µË´Ï´Ù.

¹Ýȯ°ª:
GSSName. ¹®¸ÆÀÇ ±âµ¿ÃøÀÇ À̸§À» Æ÷ÇÔÇÑ MN
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ
°ü·Ã Ç׸ñ:
GSSName

getTargName

public GSSName  getTargName()
                    throws GSSException 
¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊÀÇ À̸§À» µ¹·ÁÁÝ´Ï´Ù. ÀÌ È£ÃâÀº isProtReady ¶Ç´Â isEstablished ·ÎºÎÅÍ true °¡ µ¹·ÁÁÖ¾îÁø ÈÄ¿¡ ¸¶¼Å À¯È¿ÇÏ°Ô µË´Ï´Ù.

¹Ýȯ°ª:
GSSName. ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊÀÇ À̸§À» Æ÷ÇÔÇÑ MN
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

getMech

public Oid  getMech()
            throws GSSException 
ÀÌ ¹®¸Æ¿¡ »ç¿ëµÇ°í ÀÖ´Â ±â±¸¸¦ °Ë»çÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÌ ¿ÏÀüÇÏ°Ô È®¸³µÇ±â Àü¿¡ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ´Ù¸¸, GSS-API ±â±¸ÀÇ ³×°í½Ã¿¡À̼ÇÀÌ ¿Ï·áÇÑ ÈÄ¿¡ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇϸé(ÀÚ), µ¹·ÁÁÖ¾îÁö´Â ±â±¸°¡ ¹Ù²î´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
»ç¿ëµÇ°í ÀÖ´Â ±â±¸ÀÇ OID
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

getDelegCred

public GSSCredential  getDelegCred()
                           throws GSSException 
¹®¸ÆÀÇ ±âµ¿ÃøÀ¸·ÎºÎÅÍ ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊ¿¡ delegate µÈ ÀÚ°ÝÀ» ÃëµæÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·ÎºÎÅÍ, ¹®¸ÆÀÌ ¿ÏÀüÇÏ°Ô È®¸³µÈ ÈÄ¿¡ È£ÃâÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. È£ÃâÃø¿¡¼­ delegate µÈ ÀÚ°ÝÀÌ ÀÖÀ»Áö ¾î¶³Áö¸¦ È®ÀÎÇÏ·Á¸é , ¸Þ¼Òµå getCredDelegState ¸¦ »ç¿ëÇÕ´Ï´Ù.

¹Ýȯ°ª:
±âµ¿ÃøÀ¸·ÎºÎÅÍ delegate µÈ ÀÚ°ÝÀÌ Æ÷ÇԵǴ GSSCredential. delegate µÈ ÀÚ°ÝÀÌ ¾ø´Â °æ¿ì´Â null
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

isInitiator

public boolean isInitiator()
                    throws GSSException 
ÀÌ ÇǾ ¹®¸ÆÀÇ ±âµ¿ÃøÀÏÁö ¾î¶³Áö¸¦ °Ë»çÇÕ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ¹®¸ÆÀÇ ±âµ¿Ãø ¹× ¹Þ¾Æ µéÀÌ´Â ÂÊÀ¸·ÎºÎÅÍ È£ÃâÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
¹®¸ÆÀÇ ±âµ¿ÃøÀÎ °æ¿ì´Â true, ¹®¸ÆÀÇ ¹Þ¾Æ µéÀÌ´Â ÂÊÀÎ °æ¿ì´Â false
¿¹¿Ü:
GSSException - ¸ÞÀÌÀú ¿¡·¯ ÄÚµå GSSException.FAILURE ¸¦ Æ÷ÇÔÇÑ´Ù

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.