Class IssacWebServer

  • Direct Known Subclasses:
    IssacWebJNIServer

    public abstract class IssacWebServer
    extends java.lang.Object
    서버측에서 IssacWeb관련 복호화를 수행하는 클래스들의 base class
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int AES256  
      static int ARIA  
      static int HAS160  
      static int MD5  
      static int SEED  
      static int SHA1  
      static int SHA256  
      static int SHA384  
      static int SHA512  
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      abstract byte[] d2b_get_certificate​(java.lang.String src)
      d2b 전용 (특수 사이트 전용 기능)
      abstract byte[] d2b_hybrid_decrypt​(byte[] src, byte[] sessionKey, java.lang.String priKey)
      d2b 전용 (특수 사이트 전용 기능)
      abstract java.lang.String d2b_hybrid_decrypt​(java.lang.String src, byte[] sessionKey, java.lang.String priKey)
      d2b 전용 (특수 사이트 전용 기능)
      abstract byte[] d2b_hybrid_decrypt_with_priKeyPath​(byte[] src, byte[] sessionKey, java.lang.String priKeyPath)
      d2b 전용 (특수 사이트 전용 기능)
      abstract java.lang.String d2b_hybrid_decrypt_with_priKeyPath​(java.lang.String src, byte[] sessionKey, java.lang.String priKeyPath)
      d2b 전용 (특수 사이트 전용 기능)
      abstract byte[] d2b_hybrid_decrypt2​(byte[] src, java.lang.String priKey)
      d2b 전용 (특수 사이트 전용 기능)
      abstract java.lang.String d2b_hybrid_decrypt2​(java.lang.String src, java.lang.String priKey)
      d2b 전용 (특수 사이트 전용 기능)
      java.lang.String getParameter​(java.lang.String name)
      init 호출 시 복호화 된 데이터로부터 name에 해당되는 parameter를 리턴한다.
      java.util.Enumeration<java.lang.String> getParameterNames()
      init 호출 시 복호화 된 데이터들의 이름에 대한 Enumeration을 리턴한다.
      java.lang.String[] getParameterValues​(java.lang.String name)
      init 호출 시 복호화 된 데이터로부터 name에 해당되는 parameter를 리턴한다.
      void init​(java.lang.String issacweb_data)
      issacweb_hybrid_encrypt_s 로 암호화 된 "key=value" 형식의 데이터를 분석한다.
      void init_ex​(java.lang.String issacweb_data, int symmAlgId, int hashAlgId)
      issacweb_hybrid_encrypt_s 로 암호화 된 "key=value" 형식의 데이터를 분석한다.
      void init_session​(java.lang.String issacweb_data)
      TODO(jyha) : not documented yet
      void init2​(java.lang.String issacweb_data)
      issacweb_encrypt_s 로 암호화 된 "key=value" 형식의 데이터를 분석한다.
      void init2_ex​(java.lang.String issacweb_data, int symmAlgId)
      issacweb_encrypt_s 로 암호화 된 "key=value" 형식의 데이터를 분석한다.
      void init3​(java.lang.String strdata)
      TODO(jyha) : not documented yet
      abstract byte[] issacweb_base64_decode​(java.lang.String str)
      Base64 문자열을 디코딩한다.
      abstract java.lang.String issacweb_base64_encode​(byte[] byteAr)
      데이터를 Base64로 인코딩한다.
      abstract byte[] issacweb_decrypt​(byte[] src)
      issacweb_encrypt로 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_decrypt​(byte[] src, int offset, int len)
      암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_decrypt_ex​(byte[] src, int symmAlgId)
      issacweb_encrypt로 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_decrypt_ex​(byte[] src, int offset, int len, int symmAlgId)
      암호화 된 메시지를 복호화한다.
      abstract java.lang.String issacweb_decrypt_ex_s​(java.lang.String src, int symmAlgId)
      issacweb_encrypt_s로 암호화 된 메시지를 복호화한다.
      abstract java.lang.String issacweb_decrypt_ex_s_charset​(java.lang.String src, int symmAlgId, int charset_id)
      issacweb_encrypt_s로 암호화 된 메시지를 복호화한다.
      abstract int issacweb_decrypt_file​(byte[] infilepath, byte[] sessionkey)
      Deprecated.
      입력을 String 에서 byte[] 로 단순 변경한 것으로, 데이터는 사실상 String 이다.
      abstract int issacweb_decrypt_file_s​(java.lang.String infilepath, java.lang.String sessionkey)
      입력된 파일을 복호화하여 [infilepath].dec 파일을 생성한다.
      abstract java.lang.String issacweb_decrypt_s​(java.lang.String src)
      issacweb_encrypt_s로 암호화 된 메시지를 복호화한다.
      abstract java.lang.String issacweb_decrypt_s_charset​(java.lang.String src, int charset_id)
      issacweb_encrypt_s로 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_encrypt​(byte[] src)
      메시지를 암호화 한다.
      abstract byte[] issacweb_encrypt​(byte[] src, int offset, int len)
      메시지를 암호화 한다.
      abstract byte[] issacweb_encrypt_ex​(byte[] src, int symmAlgId)
      메시지를 암호화 한다.
      abstract byte[] issacweb_encrypt_ex​(byte[] src, int offset, int len, int symmAlgId)
      메시지를 암호화 한다.
      abstract java.lang.String issacweb_encrypt_ex_s​(java.lang.String src, int symmAlgId)
      메시지를 암호화 한다.
      abstract java.lang.String issacweb_encrypt_ex_s_charset​(java.lang.String src, int symmAlgId, int charset_id)
      메시지를 암호화 한다.
      abstract int issacweb_encrypt_file​(byte[] infilepath, byte[] sessionkey)
      Deprecated.
      입력을 String 에서 byte[] 로 단순 변경한 것으로, 데이터는 사실상 String 이다.
      abstract int issacweb_encrypt_file_s​(java.lang.String infilepath, java.lang.String sessionkey)
      입력된 파일을 암호화하여 [infilepath].enc 파일을 생성한다.
      abstract java.lang.String issacweb_encrypt_s​(java.lang.String src)
      메시지를 암호화 한다.
      abstract java.lang.String issacweb_encrypt_s_charset​(java.lang.String src, int charset_id)
      메시지를 암호화 한다.
      abstract int issacweb_finalize_cis()
      Deprecated.
      기존 API 유지를 위해 존재하는 것으로 새로 구현 시 IssacInitialize의 finalizeModule()을 사용하도록 한다.
      boolean issacweb_generate_keypair​(int bitSize)
      구간암호화를 위한 RSA 키쌍을 생성한다.
      abstract int issacweb_get_hash_algorithm()
      현재 설정된 해시 알고리즘을 가져온다.
      java.lang.String issacweb_get_pubkey()
      공개키를 가져온다.
      byte[] issacweb_get_session_key()
      대칭키 암복호화시에 필요한 세션키를 얻는다.
      abstract java.lang.String issacweb_get_session_key_base64()
      세션키를 가져온다.
      java.lang.String issacweb_get_session_key_s()
      Deprecated.
      세션키가 반드시 문자열로만 구성되어 있어야 한다.
      abstract int issacweb_get_symmetric_algorithm()
      현재 설정된 대칭키 암복호화 알고리즘을 가져온다.
      abstract java.lang.String issacweb_getLicenseInfo()
      라이선스의 이름을 가져온다.
      abstract byte[] issacweb_hybrid_decrypt​(byte[] src)
      하이브리드 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_hybrid_decrypt​(byte[] src, byte[] sessionKey, java.lang.String priKey)
      하이브리드 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_hybrid_decrypt​(byte[] src, int offset, int len)
      하이브리드 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_hybrid_decrypt​(byte[] src, java.lang.String priKey)
      하이브리드 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_hybrid_decrypt_ex​(byte[] src, byte[] sessionKey, java.lang.String priKey, int symmAlgId, int hashAlgId)
      하이브리드 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_hybrid_decrypt_ex​(byte[] src, int symmAlgId, int hashAlgId)
      하이브리드 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_hybrid_decrypt_ex​(byte[] src, int offset, int len, int symmAlgId, int hashAlgId)
      하이브리드 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_hybrid_decrypt_ex​(byte[] src, java.lang.String priKey, int symmAlgId, int hashAlgId)
      하이브리드 암호화 된 메시지를 복호화한다.
      abstract java.lang.String issacweb_hybrid_decrypt_ex_s​(java.lang.String src, byte[] sessionKey, java.lang.String priKey, int symmAlgId, int hashAlgId)
      문자열을 암호화 한 암호문을 복호화한다.
      abstract java.lang.String issacweb_hybrid_decrypt_ex_s​(java.lang.String src, int symmAlgId, int hashAlgId)
      문자열을 암호화 한 암호문을 복호화한다.
      abstract java.lang.String issacweb_hybrid_decrypt_ex_s​(java.lang.String src, java.lang.String priKey, int symmAlgId, int hashAlgId)
      문자열을 암호화 한 암호문을 복호화한다.
      abstract byte[] issacweb_hybrid_decrypt_file​(byte[] infilepath, java.lang.String prikey)
      Deprecated.
      입출력을 모두 String 에서 byte[] 로 단순 변경한 것으로, 데이터는 사실상 String 이다.
      abstract java.lang.String issacweb_hybrid_decrypt_file_s​(java.lang.String infilepath, java.lang.String prikey)
      입력된 파일을 하이브리드 복호화한다.
      abstract java.lang.String issacweb_hybrid_decrypt_s​(java.lang.String src)
      문자열을 암호화 한 암호문을 복호화한다.
      abstract java.lang.String issacweb_hybrid_decrypt_s​(java.lang.String src, byte[] sessionKey, java.lang.String priKey)
      문자열을 암호화 한 암호문을 복호화한다.
      abstract java.lang.String issacweb_hybrid_decrypt_s​(java.lang.String src, java.lang.String priKey)
      문자열을 암호화 한 암호문을 복호화한다.
      abstract java.lang.String issacweb_hybrid_decrypt_with_sessionkey_s​(java.lang.String src)
      하이브리드 암호화 된 메시지를 복호화한다.
      abstract byte[] issacweb_hybrid_encrypt​(byte[] src)
      서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
      abstract byte[] issacweb_hybrid_encrypt​(byte[] src, byte[] sessionKey, java.lang.String pubKey)
      서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
      abstract byte[] issacweb_hybrid_encrypt​(byte[] src, java.lang.String pubKey)
      서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
      abstract byte[] issacweb_hybrid_encrypt_ex​(byte[] src, byte[] sessionKey, java.lang.String pubKey, int symmAlgId, int hashAlgId)
      서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
      abstract byte[] issacweb_hybrid_encrypt_ex​(byte[] src, int symmAlgId, int hashAlgId)
      서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
      abstract byte[] issacweb_hybrid_encrypt_ex​(byte[] src, java.lang.String pubKey, int symmAlgId, int hashAlgId)
      서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
      abstract java.lang.String issacweb_hybrid_encrypt_ex_s​(java.lang.String src, byte[] sessionKey, java.lang.String pubKey, int symmAlgId, int hashAlgId)
      문자열을 암호화한다.
      abstract java.lang.String issacweb_hybrid_encrypt_ex_s​(java.lang.String src, int symmAlgId, int hashAlgId)
      문자열을 암호화한다.
      abstract java.lang.String issacweb_hybrid_encrypt_ex_s​(java.lang.String src, java.lang.String pubKey, int symmAlgId, int hashAlgId)
      문자열을 암호화한다.
      abstract byte[] issacweb_hybrid_encrypt_file​(byte[] infilepath, java.lang.String pubkey)
      Deprecated.
      입출력을 모두 String 에서 byte[] 로 단순 변경한 것으로, 데이터는 사실상 String 이다.
      abstract java.lang.String issacweb_hybrid_encrypt_file_s​(java.lang.String infilepath, java.lang.String pubkey)
      입력된 파일을 하이브리드 암호화하여 [infilepath].enc 파일을 생성한다.
      abstract java.lang.String issacweb_hybrid_encrypt_s​(java.lang.String src)
      문자열을 암호화한다.
      abstract java.lang.String issacweb_hybrid_encrypt_s​(java.lang.String src, byte[] sessionKey, java.lang.String pubKey)
      문자열을 암호화한다.
      abstract java.lang.String issacweb_hybrid_encrypt_s​(java.lang.String src, java.lang.String pubKey)
      문자열을 암호화한다.
      abstract int issacweb_initialize_cis()
      Deprecated.
      기존 API 유지를 위해 존재하는 것으로 새로 구현 시 IssacInitialize의 initializeModule()을 사용하도록 한다.
      abstract java.lang.String issacweb_keyprotect_decrypt​(java.lang.String encData)
      키보드 보안모듈에서 암호화된 키보드 입력값을 복호화하는 함수
      abstract java.lang.String issacweb_make_response_s​(java.lang.String challenge, java.lang.String strCert, java.lang.String strPrivInfo)
      challenge에 대한 response를 생성한다.
      abstract byte[] issacweb_message_hash​(byte[] msg)
      Deprecated.
      일반적인 용도의 hash 가 아니다.
      java.lang.String issacweb_print​(java.lang.String msg)
      입력된 메시지을 암호화 한 뒤, 이를 클라이언트에서 복호화 하기 위한 스크립트 문과 함께 String 형태로 리턴한다.
      java.lang.String issacweb_print_flush()
      내부 버퍼에 저장된 메시지를 암호화 한 뒤, 클라이언트에서 복호화하기 위한 스크립트 문과 함께 String 형태로 리턴한다.
      java.lang.String issacweb_print_flush_neat()
      TODO(jyha) : not documented yet
      void issacweb_print_init()
      issacweb_print_to_buffer 함수를 호출하기 전에 필요한 초기화를 수행하는 함수
      java.lang.String issacweb_print_keyname​(java.lang.String msg, java.lang.String keyname)
      TODO(jyha) : not documented yet
      java.lang.String issacweb_print_neat​(java.lang.String msg)
      TODO(jyha) : not documented yet
      java.lang.String issacweb_print_noscript​(java.lang.String msg)
      입력된 메시지을 암호화 한 뒤, 이를 클라이언트에서 복호화 하기 위한 스크립트 문과 함께 String 형태로 리턴하는 issacweb_print와 달리 스크립트 부분을 빼고 String 형태로 리턴한다.
      java.lang.String issacweb_print_noscript_neat​(java.lang.String msg)
      TODO(jyha) : not documented yet
      java.lang.String issacweb_print_slice​(java.lang.String msg)
      TODO(jyha) : not documented yet
      java.lang.String issacweb_print_slice_for_pda​(java.lang.String msg)
      TODO(jyha) : not documented yet
      void issacweb_print_to_buffer​(java.lang.String msg)
      메시지를 내부 버퍼에 저장한다.
      abstract byte[] issacweb_publickey_decrypt​(byte[] src)
      개인키를 이용하여 메시지를 복호화 한다.
      abstract byte[] issacweb_publickey_decrypt​(byte[] src, java.lang.String priKey)
      개인키를 이용하여 메시지를 복호화 한다.
      abstract byte[] issacweb_publickey_decrypt_c​(byte[] src, java.lang.String strPrivInfo)
      PrivateKeyInfo 형식의 개인키를 이용해 복호화한다.
      abstract byte[] issacweb_publickey_decrypt_cs​(java.lang.String strSrc, java.lang.String strPrivInfo)
      PrivateKeyInfo 형식의 개인키를 이용해 문자열을 복호화한다.
      abstract byte[] issacweb_publickey_decrypt_ex​(byte[] src, int hashAlgId)
      개인키를 이용하여 메시지를 복호화 한다.
      abstract byte[] issacweb_publickey_decrypt_ex​(byte[] src, java.lang.String priKey, int hashAlgId)
      개인키를 이용하여 메시지를 복호화 한다.
      abstract byte[] issacweb_publickey_encrypt​(byte[] src)
      공개키를 이용하여 메시지를 암호화 한다.
      abstract byte[] issacweb_publickey_encrypt​(byte[] src, java.lang.String pubKey)
      공개키를 이용하여 메시지를 암호화 한다.
      abstract byte[] issacweb_publickey_encrypt_c​(byte[] src, java.lang.String strCert)
      인증서의 공개키를 이용해 암호화한다.
      abstract byte[] issacweb_publickey_encrypt_cs​(java.lang.String strSrc, java.lang.String strCert)
      인증서의 공개키를 이용해 문자열을 암호화한다.
      abstract byte[] issacweb_publickey_encrypt_ex​(byte[] src, int hashAlgId)
      공개키를 이용하여 메시지를 암호화 한다.
      abstract byte[] issacweb_publickey_encrypt_ex​(byte[] src, java.lang.String pubKey, int hashAlgId)
      공개키를 이용하여 메시지를 암호화 한다.
      java.lang.String issacweb_server_encrypt_end()
      Deprecated.
      TODO(jyha) : not documented yet
      java.lang.String issacweb_server_encrypt_init()
      TODO(jyha) : not documented yet
      abstract int issacweb_set_asymmetric_algorithm​(int algid)
      Deprecated.
      함수 이름이 올바르지 않다.
      abstract int issacweb_set_hash_algorithm​(int algid)
      Deprecated.
      void issacweb_set_private_key​(java.lang.String newPrikey)
      복호화에 사용될 서버의 비공개키를 지정해 준다.
      abstract void issacweb_set_privatekey​(java.lang.String strPrikey)
      외부 개인키를 설정한다.
      abstract void issacweb_set_publickey​(java.lang.String strPubkey)
      외부 공개키를 설정한다.
      void issacweb_set_req​(javax.servlet.http.HttpServletRequest req)
      TODO(jyha) : not documented yet
      void issacweb_set_session_key​(byte[] newKey)
      대칭키 암복호화시에 필요한 세션키를 지정한다..
      abstract void issacweb_set_session_key_base64​(java.lang.String newKey)
      대칭키 암복호화에 필요한 세션키를 설정한다.
      void issacweb_set_session_key_s​(java.lang.String newKey)
      Deprecated.
      세션키가 반드시 문자열로만 구성되어 있어야 한다.
      abstract int issacweb_set_symmetric_algorithm​(int algid)
      Deprecated.
      abstract java.lang.String issacweb_timestamp_get()
      서버의 시간 정보를 암호화한 timestamp 를 얻는다.
      abstract int issacweb_timestamp_verify​(java.lang.String timestamp, int allowedSec)
      타임스탬프로부터 유효한 시간내에 있는지 검증한다.
      static byte[] md5​(java.lang.String message)
      문자열을 md5 알고리즘으로 해쉬한다.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • IssacWebServer

        public IssacWebServer()
        기본 생성자. 비공개키 설정을 따로 해줘야 한다.
      • IssacWebServer

        public IssacWebServer​(IssacWebServerPriKey key)
        클래스의 인스턴스를 생성한 뒤, 서버의 비공개키로 초기화
        Parameters:
        key - 서버의 비공개키
      • IssacWebServer

        public IssacWebServer​(IssacWebServerPriKey key,
                              javax.servlet.http.HttpServletRequest req)
        TODO(jyha) : not documented yet
        Parameters:
        key - [IN] TODO(jyha) : not documented yet
        req - [IN] TODO(jyha) : not documented yet
    • Method Detail

      • issacweb_set_req

        public void issacweb_set_req​(javax.servlet.http.HttpServletRequest req)
        TODO(jyha) : not documented yet
        Parameters:
        req - [IN] TODO(jyha) : not documented yet
      • issacweb_get_pubkey

        public java.lang.String issacweb_get_pubkey()
        공개키를 가져온다.
        Returns:
        공개키
      • md5

        public static byte[] md5​(java.lang.String message)
        문자열을 md5 알고리즘으로 해쉬한다.

        비공개키를 암복호화할 때 비밀번호를 128 bit 로 만들기 위해 MD5 hash 알고리즘을 쓴다.

        Parameters:
        message - [IN] TODO(jyha) : not documented yet
        Returns:
        md5 hashed 128 bit byte array
        Since:
        2004.09.13
      • init

        public void init​(java.lang.String issacweb_data)
        issacweb_hybrid_encrypt_s 로 암호화 된 "key=value" 형식의 데이터를 분석한다.

        클라이언트에서 전송된 값을 분석하여 값을 사용할 수 있도록 한다.

        Parameters:
        issacweb_data - [IN] issacweb_hybrid_encrypt_s 로 암호화 된 "key1=value1&key2=value2" 형식의 데이터
        See Also:
        getParameter(String), getParameterValues(String), getParameterNames()
      • init_ex

        public void init_ex​(java.lang.String issacweb_data,
                            int symmAlgId,
                            int hashAlgId)
        issacweb_hybrid_encrypt_s 로 암호화 된 "key=value" 형식의 데이터를 분석한다.

        클라이언트에서 전송된 값을 분석하여 값을 사용할 수 있도록 한다.

        Parameters:
        issacweb_data - [IN] issacweb_hybrid_encrypt_s 로 암호화 된 "key1=value1&key2=value2" 형식의 데이터
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        See Also:
        getParameter(String), getParameterValues(String), getParameterNames()
      • init2

        public void init2​(java.lang.String issacweb_data)
        issacweb_encrypt_s 로 암호화 된 "key=value" 형식의 데이터를 분석한다.

        클라이언트에서 전송된 값을 분석하여 값을 사용할 수 있도록 한다.

        Parameters:
        issacweb_data - [IN] issacweb_encrypt_s 로 암호화 된 "key1=value1&key2=value2" 형식의 데이터
        See Also:
        getParameter(String), getParameterValues(String), getParameterNames()
      • init2_ex

        public void init2_ex​(java.lang.String issacweb_data,
                             int symmAlgId)
        issacweb_encrypt_s 로 암호화 된 "key=value" 형식의 데이터를 분석한다.

        클라이언트에서 전송된 값을 분석하여 값을 사용할 수 있도록 한다.

        Parameters:
        issacweb_data - [IN] issacweb_encrypt_s 로 암호화 된 "key1=value1&key2=value2" 형식의 데이터
        symmAlgId - [IN] 대칭키 알고리즘
        See Also:
        getParameter(String), getParameterValues(String), getParameterNames()
      • init3

        public void init3​(java.lang.String strdata)
        TODO(jyha) : not documented yet
        Parameters:
        strdata - [IN] TODO(jyha) : not documented yet
      • init_session

        public void init_session​(java.lang.String issacweb_data)
        TODO(jyha) : not documented yet
        Parameters:
        issacweb_data - [IN] TODO(jyha) : not documented yet
      • issacweb_set_private_key

        public void issacweb_set_private_key​(java.lang.String newPrikey)
        복호화에 사용될 서버의 비공개키를 지정해 준다.
        Parameters:
        newPrikey - [IN] 서버의 비공개키
      • getParameter

        public java.lang.String getParameter​(java.lang.String name)
        init 호출 시 복호화 된 데이터로부터 name에 해당되는 parameter를 리턴한다.

        키보드 보안 관련 로직 추가. input tag가 _doubly_encrypted_hexa 로 끝나면 키보드보안 적용된 간주해서 한번더 복호화함.

        Parameters:
        name - [IN] 구하려는 parameter의 이름
        Returns:
        name에 해당되는 parameter, 해당되는 값이 없을 때에는 null을 리턴한다.
      • getParameterValues

        public java.lang.String[] getParameterValues​(java.lang.String name)
        init 호출 시 복호화 된 데이터로부터 name에 해당되는 parameter를 리턴한다.
        Parameters:
        name - [IN] 구하려는 parameter의 이름
        Returns:
        name에 해당되는 parameter들의 배열, 해당되는 값이 없을 때에는 null을 리턴한다.
      • getParameterNames

        public java.util.Enumeration<java.lang.String> getParameterNames()
        init 호출 시 복호화 된 데이터들의 이름에 대한 Enumeration을 리턴한다.
        Returns:
        String에 대한 Enumeration, 각각의 String은 해당되는 데이터의 이름이다.
      • issacweb_get_session_key

        public byte[] issacweb_get_session_key()
        대칭키 암복호화시에 필요한 세션키를 얻는다.
        Returns:
        이 객체의 세션키. 이 세션키는 issacweb_hybrid_decrypt, issacweb_hybrid_decrypt_s, init 호출시 생성된다.
        Throws:
        IssacWebServerException - 세션키가 생성되어 있지 않을 때
      • issacweb_set_session_key

        public void issacweb_set_session_key​(byte[] newKey)
        대칭키 암복호화시에 필요한 세션키를 지정한다..
        Parameters:
        newKey - [IN] 세션키(16 or 32 byte)
        Throws:
        IssacWebServerException - 알맞지 않은 세션키일 때
      • issacweb_get_session_key_s

        @Deprecated
        public java.lang.String issacweb_get_session_key_s()
        Deprecated.
        세션키가 반드시 문자열로만 구성되어 있어야 한다. 이것은 보안상 좋지 않다.
        대칭키 암복호화시에 필요한 세션키를 얻는다.
        Returns:
        이 객체의 세션키를 String으로 리턴함. 이 세션키는 issacweb_hybrid_decrypt, issacweb_hybrid_decrypt_s, init 호출시 생성된다.
        Throws:
        IssacWebServerException - 세션키가 생성되어 있지 않을 때
      • issacweb_set_session_key_s

        @Deprecated
        public void issacweb_set_session_key_s​(java.lang.String newKey)
        Deprecated.
        세션키가 반드시 문자열로만 구성되어 있어야 한다. 이것은 보안상 좋지 않다.
        대칭키 암복호화시에 필요한 세션키를 지정한다.
        Parameters:
        newKey - [IN] 세션키(16byte) String으로 입력합.
        Throws:
        IssacWebServerException - 알맞지 않은 세션키일 때. (2005.6.14 박정현 String2byte 함수를 신뢰하기 힘듬. 사용하지 말 것을 권고. .getBytes() 를 이용하는 것이 나음)
      • issacweb_generate_keypair

        public boolean issacweb_generate_keypair​(int bitSize)
        구간암호화를 위한 RSA 키쌍을 생성한다.

        이 키쌍은 모듈이 로드되어 있는 동안에만 존재하다가 모듈 종료 시 사라진다.

        구간암호화를 위한 키쌍은 저장될 필요가 없기 때문에 보안적인 측면에서 이것이 더 안전하다.

        Parameters:
        bitSize - [IN] 생성할 RSA 키의 bit 크기 [1024, 2048]
        Returns:
        성공 여부
      • issacweb_set_session_key_base64

        public abstract void issacweb_set_session_key_base64​(java.lang.String newKey)
        대칭키 암복호화에 필요한 세션키를 설정한다.
        Parameters:
        newKey - [IN] 세션키 (Base64)
      • issacweb_server_encrypt_init

        public java.lang.String issacweb_server_encrypt_init()
        TODO(jyha) : not documented yet
        Returns:
        TODO(jyha) : not documented yet
      • issacweb_server_encrypt_end

        @Deprecated
        public java.lang.String issacweb_server_encrypt_end()
        Deprecated.
        TODO(jyha) : not documented yet
        클라이언트에서 복호화를 수행한 마친 뒤의 처리 과정을 수행하는 스크립트 문을 String 형태로 리턴한다.

        이 스크립트 문는 홈페이지의 </body>태그를 출력하기 전에 출력되어야 한다.

        Returns:
        클라이언트에서 복호화를 수행한 마친 뒤의 처리 과정을 수행하는 스크립트 문
      • issacweb_print

        public java.lang.String issacweb_print​(java.lang.String msg)
        입력된 메시지을 암호화 한 뒤, 이를 클라이언트에서 복호화 하기 위한 스크립트 문과 함께 String 형태로 리턴한다.
        Parameters:
        msg - [IN] TODO(jyha) : not documented yet
        Returns:
        암호화 된 메시지와 클라이언트에서 이를 복호화 하기 위한 스크립트 문
        Throws:
        IssacWebServerException - 메시지 암호화에 실패했을 때.
      • issacweb_print_slice_for_pda

        public java.lang.String issacweb_print_slice_for_pda​(java.lang.String msg)
        TODO(jyha) : not documented yet
        Parameters:
        msg - [IN] TODO(jyha) : not documented yet
        Returns:
        TODO(jyha) : not documented yet
      • issacweb_print_slice

        public java.lang.String issacweb_print_slice​(java.lang.String msg)
        TODO(jyha) : not documented yet
        Parameters:
        msg - [IN] TODO(jyha) : not documented yet
        Returns:
        TODO(jyha) : not documented yet
      • issacweb_print_keyname

        public java.lang.String issacweb_print_keyname​(java.lang.String msg,
                                                       java.lang.String keyname)
        TODO(jyha) : not documented yet
        Parameters:
        msg - [IN] TODO(jyha) : not documented yet
        keyname - [IN] TODO(jyha) : not documented yet
        Returns:
        TODO(jyha) : not documented yet
      • issacweb_print_neat

        public java.lang.String issacweb_print_neat​(java.lang.String msg)
        TODO(jyha) : not documented yet
        Parameters:
        msg - [IN] TODO(jyha) : not documented yet
        Returns:
        TODO(jyha) : not documented yet
      • issacweb_print_noscript

        public java.lang.String issacweb_print_noscript​(java.lang.String msg)

        입력된 메시지을 암호화 한 뒤, 이를 클라이언트에서 복호화 하기 위한 스크립트 문과 함께 String 형태로 리턴하는 issacweb_print와 달리 스크립트 부분을 빼고 String 형태로 리턴한다. (현대투자신탁 3.27요청에 의해)

        Parameters:
        msg - [IN] TODO(jyha) : not documented yet
        Returns:
        암호화 된 메시지와 클라이언트에서 이를 복호화한 스트링
        Throws:
        IssacWebServerException - 메시지 암호화에 실패했을 때.
      • issacweb_print_noscript_neat

        public java.lang.String issacweb_print_noscript_neat​(java.lang.String msg)
        TODO(jyha) : not documented yet
        Parameters:
        msg - [IN] TODO(jyha) : not documented yet
        Returns:
        TODO(jyha) : not documented yet
      • issacweb_print_init

        public void issacweb_print_init()
        issacweb_print_to_buffer 함수를 호출하기 전에 필요한 초기화를 수행하는 함수

        issacweb_print_to_buffer를 호출하기 전에 반드시 호출되어야 한다.

      • issacweb_print_to_buffer

        public void issacweb_print_to_buffer​(java.lang.String msg)
        메시지를 내부 버퍼에 저장한다. 이 메시지는 issacweb_print_flush호출시 한꺼번에 암호화 된다.
        Parameters:
        msg - [IN] TODO(jyha) : not documented yet
        Throws:
        IssacWebServerException - issacweb_print_init로 버퍼가 초기화 되지 않았을 때
      • issacweb_print_flush

        public java.lang.String issacweb_print_flush()
        내부 버퍼에 저장된 메시지를 암호화 한 뒤, 클라이언트에서 복호화하기 위한 스크립트 문과 함께 String 형태로 리턴한다.
        Returns:
        암호화 된 메시지와 클라이언트에서 이를 복호화 하기 위한 스크립트 문
        Throws:
        IssacWebServerException - 버퍼에 저장된 메시지가 없을 때나 메시지 암호화에 실패했을 때.
      • issacweb_print_flush_neat

        public java.lang.String issacweb_print_flush_neat()
        TODO(jyha) : not documented yet
        Returns:
        TODO(jyha) : not documented yet
      • issacweb_hybrid_decrypt_s

        public abstract java.lang.String issacweb_hybrid_decrypt_s​(java.lang.String src,
                                                                   byte[] sessionKey,
                                                                   java.lang.String priKey)
        문자열을 암호화 한 암호문을 복호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호문
        sessionKey - [OUT] 함수 내부에서 복호화 된 세션키
        priKey - [IN] 개인키
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패 했을 때.
        See Also:
        issacweb_hybrid_encrypt_s(String, byte[], String)
      • issacweb_hybrid_decrypt_s

        public abstract java.lang.String issacweb_hybrid_decrypt_s​(java.lang.String src,
                                                                   java.lang.String priKey)
        문자열을 암호화 한 암호문을 복호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호문
        priKey - [IN] 개인키
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패 했을 때.
        See Also:
        issacweb_hybrid_encrypt_s(String, String)
      • issacweb_hybrid_decrypt_s

        public abstract java.lang.String issacweb_hybrid_decrypt_s​(java.lang.String src)
        문자열을 암호화 한 암호문을 복호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호문
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패 했을 때.
        See Also:
        issacweb_hybrid_encrypt_s(String)
      • issacweb_hybrid_decrypt_ex_s

        public abstract java.lang.String issacweb_hybrid_decrypt_ex_s​(java.lang.String src,
                                                                      byte[] sessionKey,
                                                                      java.lang.String priKey,
                                                                      int symmAlgId,
                                                                      int hashAlgId)
        문자열을 암호화 한 암호문을 복호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호문
        sessionKey - [OUT] 함수 내부에서 복호화 된 세션키
        priKey - [IN] 개인키
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패 했을 때.
        See Also:
        issacweb_hybrid_encrypt_ex_s(String, byte[], String, int, int)
      • issacweb_hybrid_decrypt_ex_s

        public abstract java.lang.String issacweb_hybrid_decrypt_ex_s​(java.lang.String src,
                                                                      java.lang.String priKey,
                                                                      int symmAlgId,
                                                                      int hashAlgId)
        문자열을 암호화 한 암호문을 복호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호문
        priKey - [IN] 개인키
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패 했을 때.
        See Also:
        issacweb_hybrid_encrypt_ex_s(String, String, int, int)
      • issacweb_hybrid_decrypt_ex_s

        public abstract java.lang.String issacweb_hybrid_decrypt_ex_s​(java.lang.String src,
                                                                      int symmAlgId,
                                                                      int hashAlgId)
        문자열을 암호화 한 암호문을 복호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호문
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패 했을 때.
        See Also:
        issacweb_hybrid_encrypt_ex_s(String, int, int)
      • issacweb_hybrid_decrypt_with_sessionkey_s

        public abstract java.lang.String issacweb_hybrid_decrypt_with_sessionkey_s​(java.lang.String src)
        하이브리드 암호화 된 메시지를 복호화한다.

        먼저 이 객체에 설정된 세션키(멤버 변수)로 메세지를 복호화 해보고 실패하면 메시지 안에 포함되어 있는 세션키를 서버의 비공개키로 복호화하여 얻어낸 뒤, 멤버 변수에 저장한다.

        Parameters:
        src - [IN] 하이브리드 암호화 된 메시지
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패 했을 때.
      • issacweb_hybrid_decrypt

        public abstract byte[] issacweb_hybrid_decrypt​(byte[] src,
                                                       byte[] sessionKey,
                                                       java.lang.String priKey)
        하이브리드 암호화 된 메시지를 복호화한다.
        Parameters:
        src - [IN] 하이브리드 암호화 된 메시지
        sessionKey - [OUT] 함수 내부에서 복호화 된 세션키
        priKey - [IN] 개인키
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패했을 때.
        See Also:
        issacweb_hybrid_encrypt(byte[], byte[], String)
      • issacweb_hybrid_decrypt

        public abstract byte[] issacweb_hybrid_decrypt​(byte[] src,
                                                       java.lang.String priKey)
        하이브리드 암호화 된 메시지를 복호화한다.
        Parameters:
        src - [IN] 하이브리드 암호화 된 메시지
        priKey - [IN] 개인키
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패했을 때.
        See Also:
        issacweb_hybrid_encrypt(byte[], String)
      • issacweb_hybrid_decrypt

        public abstract byte[] issacweb_hybrid_decrypt​(byte[] src)
        하이브리드 암호화 된 메시지를 복호화한다.
        Parameters:
        src - [IN] 하이브리드 암호화 된 메시지
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패했을 때.
        See Also:
        issacweb_hybrid_encrypt(byte[])
      • issacweb_hybrid_decrypt_ex

        public abstract byte[] issacweb_hybrid_decrypt_ex​(byte[] src,
                                                          byte[] sessionKey,
                                                          java.lang.String priKey,
                                                          int symmAlgId,
                                                          int hashAlgId)
        하이브리드 암호화 된 메시지를 복호화한다.
        Parameters:
        src - [IN] 하이브리드 암호화 된 메시지
        sessionKey - [OUT] 함수 내부에서 복호화 된 세션키
        priKey - [IN] 개인키
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패했을 때.
        See Also:
        issacweb_hybrid_encrypt_ex(byte[], byte[], String, int, int)
      • issacweb_hybrid_decrypt_ex

        public abstract byte[] issacweb_hybrid_decrypt_ex​(byte[] src,
                                                          java.lang.String priKey,
                                                          int symmAlgId,
                                                          int hashAlgId)
        하이브리드 암호화 된 메시지를 복호화한다.
        Parameters:
        src - [IN] 하이브리드 암호화 된 메시지
        priKey - [IN] 개인키
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패했을 때.
        See Also:
        issacweb_hybrid_encrypt_ex(byte[], String, int, int)
      • issacweb_hybrid_decrypt_ex

        public abstract byte[] issacweb_hybrid_decrypt_ex​(byte[] src,
                                                          int symmAlgId,
                                                          int hashAlgId)
        하이브리드 암호화 된 메시지를 복호화한다.
        Parameters:
        src - [IN] 하이브리드 암호화 된 메시지
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        복호화 된 메시지
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패했을 때.
        See Also:
        issacweb_hybrid_encrypt_ex(byte[], int, int)
      • issacweb_hybrid_decrypt

        public abstract byte[] issacweb_hybrid_decrypt​(byte[] src,
                                                       int offset,
                                                       int len)
        하이브리드 암호화 된 메시지를 복호화한다.
        Parameters:
        src - [IN] 하이브리드 암호화 된 메시지
        offset - [IN] src에서 메시지가 시작하는 offset
        len - [IN] 메시지의 길이
        Returns:
        복호화 된 원문
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        java.lang.ArrayIndexOutOfBoundsException - offset, len이 src의 범위를 벗어날 때
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_hybrid_decrypt_ex

        public abstract byte[] issacweb_hybrid_decrypt_ex​(byte[] src,
                                                          int offset,
                                                          int len,
                                                          int symmAlgId,
                                                          int hashAlgId)
        하이브리드 암호화 된 메시지를 복호화한다.
        Parameters:
        src - [IN] 하이브리드 암호화 된 메시지
        offset - [IN] src에서 메시지가 시작하는 offset
        len - [IN] 메시지의 길이
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        복호화 된 원문
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        java.lang.ArrayIndexOutOfBoundsException - offset, len이 src의 범위를 벗어날 때
        IssacWebServerException - 서버의 비공개키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_decrypt_s

        public abstract java.lang.String issacweb_decrypt_s​(java.lang.String src)
        issacweb_encrypt_s로 암호화 된 메시지를 복호화한다.

        Note: 이전에 세션키가 지정되어 있어야 한다.

        Parameters:
        src - [IN] issacweb_encrypt_s로 암호화 된 메시지
        Returns:
        복호화 된 메시지(대칭키 복호화)
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 세션키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_decrypt_ex_s

        public abstract java.lang.String issacweb_decrypt_ex_s​(java.lang.String src,
                                                               int symmAlgId)
        issacweb_encrypt_s로 암호화 된 메시지를 복호화한다.

        Note: 이전에 세션키가 지정되어 있어야 한다.

        Parameters:
        src - [IN] issacweb_encrypt_s로 암호화 된 메시지
        symmAlgId - [IN] 대칭키 알고리즘
        Returns:
        복호화 된 메시지(대칭키 복호화)
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 세션키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_decrypt_s_charset

        public abstract java.lang.String issacweb_decrypt_s_charset​(java.lang.String src,
                                                                    int charset_id)
        issacweb_encrypt_s로 암호화 된 메시지를 복호화한다. 복호화 후 지정된 문자셋으로 디코딩한다.

        Note: 이전에 세션키가 지정되어 있어야 한다.

        Parameters:
        src - [IN] issacweb_encrypt_s로 암호화 된 메시지
        charset_id - [IN] 디코딩 문자셋
        Returns:
        복호화 된 메시지(대칭키 복호화)
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 세션키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_decrypt_ex_s_charset

        public abstract java.lang.String issacweb_decrypt_ex_s_charset​(java.lang.String src,
                                                                       int symmAlgId,
                                                                       int charset_id)
        issacweb_encrypt_s로 암호화 된 메시지를 복호화한다. 복호화 후 지정된 문자셋으로 디코딩한다.

        Note: 이전에 세션키가 지정되어 있어야 한다.

        Parameters:
        src - [IN] issacweb_encrypt_s로 암호화 된 메시지
        symmAlgId - [IN] 대칭키 알고리즘
        charset_id - [IN] 디코딩 문자셋
        Returns:
        복호화 된 메시지(대칭키 복호화)
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 세션키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_decrypt

        public abstract byte[] issacweb_decrypt​(byte[] src)
        issacweb_encrypt로 암호화 된 메시지를 복호화한다.

        Note: 이전에 세션키가 지정되어 있어야 한다.

        Parameters:
        src - [IN] issacweb_encrypt로 암호화 된 메시지
        Returns:
        복호화 된 메시지(대칭키 복호화)
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 세션키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_decrypt_ex

        public abstract byte[] issacweb_decrypt_ex​(byte[] src,
                                                   int symmAlgId)
        issacweb_encrypt로 암호화 된 메시지를 복호화한다.

        Note: 이전에 세션키가 지정되어 있어야 한다.

        Parameters:
        src - [IN] issacweb_encrypt로 암호화 된 메시지
        symmAlgId - [IN] 대칭키 알고리즘
        Returns:
        복호화 된 메시지(대칭키 복호화)
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        IssacWebServerException - 세션키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_decrypt

        public abstract byte[] issacweb_decrypt​(byte[] src,
                                                int offset,
                                                int len)
        암호화 된 메시지를 복호화한다.

        Note: 이전에 세션키가 지정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 된 메시지
        offset - [IN] src에서 메시지가 시작하는 offset
        len - [IN] 메시지의 길이
        Returns:
        복호화 된 메시지(대칭키 복호화)
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        java.lang.ArrayIndexOutOfBoundsException - offset, len이 src의 범위를 벗어날 때
        IssacWebServerException - 세션키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_decrypt_ex

        public abstract byte[] issacweb_decrypt_ex​(byte[] src,
                                                   int offset,
                                                   int len,
                                                   int symmAlgId)
        암호화 된 메시지를 복호화한다.

        Note: 이전에 세션키가 지정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 된 메시지
        offset - [IN] src에서 메시지가 시작하는 offset
        len - [IN] 메시지의 길이
        symmAlgId - [IN] 대칭키 알고리즘
        Returns:
        복호화 된 메시지(대칭키 복호화)
        Throws:
        java.lang.NullPointerException - 복호화 하려는 데이터가 null일때.
        java.lang.ArrayIndexOutOfBoundsException - offset, len이 src의 범위를 벗어날 때
        IssacWebServerException - 세션키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_hybrid_encrypt_s

        public abstract java.lang.String issacweb_hybrid_encrypt_s​(java.lang.String src,
                                                                   byte[] sessionKey,
                                                                   java.lang.String pubKey)
        문자열을 암호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호화 할 메시지
        sessionKey - [OUT] 함수 내부에서 생성된 세션키
        pubKey - [IN] 공개키
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
        See Also:
        issacweb_hybrid_decrypt_s(String, byte[], String)
      • issacweb_hybrid_encrypt_s

        public abstract java.lang.String issacweb_hybrid_encrypt_s​(java.lang.String src,
                                                                   java.lang.String pubKey)
        문자열을 암호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호화 할 메시지
        pubKey - [IN] 공개키
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
        See Also:
        issacweb_hybrid_decrypt_s(String, String)
      • issacweb_hybrid_encrypt_s

        public abstract java.lang.String issacweb_hybrid_encrypt_s​(java.lang.String src)
        문자열을 암호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호화 할 메시지
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
        See Also:
        issacweb_hybrid_decrypt_s(String)
      • issacweb_hybrid_encrypt_ex_s

        public abstract java.lang.String issacweb_hybrid_encrypt_ex_s​(java.lang.String src,
                                                                      byte[] sessionKey,
                                                                      java.lang.String pubKey,
                                                                      int symmAlgId,
                                                                      int hashAlgId)
        문자열을 암호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호화 할 메시지
        sessionKey - [OUT] 함수 내부에서 생성된 세션키
        pubKey - [IN] 공개키
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
        See Also:
        issacweb_hybrid_decrypt_ex_s(String, byte[], String, int, int)
      • issacweb_hybrid_encrypt_ex_s

        public abstract java.lang.String issacweb_hybrid_encrypt_ex_s​(java.lang.String src,
                                                                      java.lang.String pubKey,
                                                                      int symmAlgId,
                                                                      int hashAlgId)
        문자열을 암호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호화 할 메시지
        pubKey - [IN] 공개키
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
        See Also:
        issacweb_hybrid_decrypt_ex_s(String, String, int, int)
      • issacweb_hybrid_encrypt_ex_s

        public abstract java.lang.String issacweb_hybrid_encrypt_ex_s​(java.lang.String src,
                                                                      int symmAlgId,
                                                                      int hashAlgId)
        문자열을 암호화한다.

        서로 다른 JVM 에서는 문자셋(Character Set)의 문제로 문자열이 깨질 수 있다.

        Parameters:
        src - [IN] 암호화 할 메시지
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
        See Also:
        issacweb_hybrid_decrypt_ex_s(String, int, int)
      • issacweb_hybrid_encrypt

        public abstract byte[] issacweb_hybrid_encrypt​(byte[] src,
                                                       byte[] sessionKey,
                                                       java.lang.String pubKey)
        서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
        Parameters:
        src - [IN] 암호화 할 메시지
        sessionKey - [OUT] 함수 내부에서 생성된 세션키
        pubKey - [IN] 공개키
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
        See Also:
        issacweb_hybrid_decrypt(byte[], byte[], String)
      • issacweb_hybrid_encrypt

        public abstract byte[] issacweb_hybrid_encrypt​(byte[] src,
                                                       java.lang.String pubKey)
        서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
        Parameters:
        src - [IN] 암호화 할 메시지
        pubKey - [IN] 공개키
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
        See Also:
        issacweb_hybrid_decrypt(byte[], String)
      • issacweb_hybrid_encrypt

        public abstract byte[] issacweb_hybrid_encrypt​(byte[] src)
        서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
        Parameters:
        src - [IN] 암호화 할 메시지
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
        See Also:
        issacweb_hybrid_decrypt(byte[])
      • issacweb_hybrid_encrypt_ex

        public abstract byte[] issacweb_hybrid_encrypt_ex​(byte[] src,
                                                          byte[] sessionKey,
                                                          java.lang.String pubKey,
                                                          int symmAlgId,
                                                          int hashAlgId)
        서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
        Parameters:
        src - [IN] 암호화 할 메시지
        sessionKey - [OUT] 함수 내부에서 생성된 세션키
        pubKey - [IN] 공개키
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
      • issacweb_hybrid_encrypt_ex

        public abstract byte[] issacweb_hybrid_encrypt_ex​(byte[] src,
                                                          java.lang.String pubKey,
                                                          int symmAlgId,
                                                          int hashAlgId)
        서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
        Parameters:
        src - [IN] 암호화 할 메시지
        pubKey - [IN] 공개키
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
      • issacweb_hybrid_encrypt_ex

        public abstract byte[] issacweb_hybrid_encrypt_ex​(byte[] src,
                                                          int symmAlgId,
                                                          int hashAlgId)
        서버 간에 통신을 할 때 hybrid 암호화를 하는 함수이다.
        Parameters:
        src - [IN] 암호화 할 메시지
        symmAlgId - [IN] 대칭키 알고리즘
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        암호화 된 메시지
        Throws:
        java.lang.NullPointerException - 암호화 하려는 데이타가 null일때.
        IssacWebServerException - 입력된 공개키가 빈 문자열이거나, 암호화에 실패했을 때.
      • issacweb_encrypt_s

        public abstract java.lang.String issacweb_encrypt_s​(java.lang.String src)
        메시지를 암호화 한다.

        세션키가 이미 설정되어 있어야 한다.

        Note: 문자열의 실제 데이터는 JVM의 문자셋(Character Set)에 따라 다르다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        Returns:
        암호화 된 메시지(대칭키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
        IssacWebServerException - 세션키가 생성되어 있지 않거나, 암호화에 실패했을 때.
      • issacweb_encrypt_ex_s

        public abstract java.lang.String issacweb_encrypt_ex_s​(java.lang.String src,
                                                               int symmAlgId)
        메시지를 암호화 한다.

        세션키가 이미 설정되어 있어야 한다.

        Note: 문자열의 실제 데이터는 JVM의 문자셋(Character Set)에 따라 다르다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        symmAlgId - [IN] 대칭키 알고리즘
        Returns:
        암호화 된 메시지(대칭키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
        IssacWebServerException - 세션키가 생성되어 있지 않거나, 암호화에 실패했을 때.
      • issacweb_encrypt_s_charset

        public abstract java.lang.String issacweb_encrypt_s_charset​(java.lang.String src,
                                                                    int charset_id)
        메시지를 암호화 한다. 암호화하기 전에 지정된 문자셋으로 인코딩한다.

        세션키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        charset_id - [IN] 인코딩 문자셋
        Returns:
        암호화 된 메시지(대칭키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
        IssacWebServerException - 세션키가 생성되어 있지 않거나, 암호화에 실패했을 때.
      • issacweb_encrypt_ex_s_charset

        public abstract java.lang.String issacweb_encrypt_ex_s_charset​(java.lang.String src,
                                                                       int symmAlgId,
                                                                       int charset_id)
        메시지를 암호화 한다. 암호화하기 전에 지정된 문자셋으로 인코딩한다.

        세션키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        symmAlgId - [IN] 대칭키 알고리즘
        charset_id - [IN] 인코딩 문자셋
        Returns:
        암호화 된 메시지(대칭키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
        IssacWebServerException - 세션키가 생성되어 있지 않거나, 암호화에 실패했을 때.
      • issacweb_encrypt

        public abstract byte[] issacweb_encrypt​(byte[] src)
        메시지를 암호화 한다.

        세션키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        Returns:
        암호화 된 메시지(대칭키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
        IssacWebServerException - 세션키가 생성되어 있지 않거나, 암호화에 실패했을 때.
      • issacweb_encrypt_ex

        public abstract byte[] issacweb_encrypt_ex​(byte[] src,
                                                   int symmAlgId)
        메시지를 암호화 한다.

        세션키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        symmAlgId - [IN] 대칭키 알고리즘
        Returns:
        암호화 된 메시지(대칭키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
        IssacWebServerException - 세션키가 생성되어 있지 않거나, 암호화에 실패했을 때.
      • issacweb_encrypt

        public abstract byte[] issacweb_encrypt​(byte[] src,
                                                int offset,
                                                int len)
        메시지를 암호화 한다.

        세션키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        offset - [IN] src에서 메시지가 시작하는 offset
        len - [IN] 메시지의 길이
        Returns:
        암호화 된 메시지(대칭키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
        java.lang.ArrayIndexOutOfBoundsException - offset, len가 src의 범위를 벗어날 때
        IssacWebServerException - 세션키가 생성되어 있지 않거나, 암호화에 실패했을 때.
      • issacweb_encrypt_ex

        public abstract byte[] issacweb_encrypt_ex​(byte[] src,
                                                   int offset,
                                                   int len,
                                                   int symmAlgId)
        메시지를 암호화 한다.

        세션키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        offset - [IN] src에서 메시지가 시작하는 offset
        len - [IN] 메시지의 길이
        symmAlgId - [IN] 대칭키 알고리즘
        Returns:
        암호화 된 메시지(대칭키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
        java.lang.ArrayIndexOutOfBoundsException - offset, len가 src의 범위를 벗어날 때
        IssacWebServerException - 세션키가 생성되어 있지 않거나, 암호화에 실패했을 때.
      • issacweb_publickey_encrypt

        public abstract byte[] issacweb_publickey_encrypt​(byte[] src,
                                                          java.lang.String pubKey)
        공개키를 이용하여 메시지를 암호화 한다.
        Parameters:
        src - [IN] 암호화 하려는 메시지
        pubKey - [IN] 공개키
        Returns:
        암호화 된 메시지(공개키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
      • issacweb_publickey_encrypt

        public abstract byte[] issacweb_publickey_encrypt​(byte[] src)
        공개키를 이용하여 메시지를 암호화 한다.

        공개키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        Returns:
        암호화 된 메시지(공개키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
      • issacweb_publickey_encrypt_ex

        public abstract byte[] issacweb_publickey_encrypt_ex​(byte[] src,
                                                             java.lang.String pubKey,
                                                             int hashAlgId)
        공개키를 이용하여 메시지를 암호화 한다.
        Parameters:
        src - [IN] 암호화 하려는 메시지
        pubKey - [IN] 공개키
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        암호화 된 메시지(공개키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
      • issacweb_publickey_encrypt_ex

        public abstract byte[] issacweb_publickey_encrypt_ex​(byte[] src,
                                                             int hashAlgId)
        공개키를 이용하여 메시지를 암호화 한다.

        공개키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호화 하려는 메시지
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        암호화 된 메시지(공개키 암호화)
        Throws:
        java.lang.NullPointerException - 암호화 하려는 data가 null 일 때
      • issacweb_publickey_decrypt

        public abstract byte[] issacweb_publickey_decrypt​(byte[] src,
                                                          java.lang.String priKey)
        개인키를 이용하여 메시지를 복호화 한다.
        Parameters:
        src - [IN] 암호문
        priKey - [IN] 개인키
        Returns:
        복호화 된 원문
        Throws:
        java.lang.NullPointerException - 복호화 하려는 data가 null 일 때
        IssacWebServerException - Private Key가 생성되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_publickey_decrypt

        public abstract byte[] issacweb_publickey_decrypt​(byte[] src)
        개인키를 이용하여 메시지를 복호화 한다.

        개인키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호문
        Returns:
        복호화 된 원문
        Throws:
        java.lang.NullPointerException - 복호화 하려는 data가 null 일 때
        IssacWebServerException - Private Key가 생성되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_publickey_decrypt_ex

        public abstract byte[] issacweb_publickey_decrypt_ex​(byte[] src,
                                                             java.lang.String priKey,
                                                             int hashAlgId)
        개인키를 이용하여 메시지를 복호화 한다.
        Parameters:
        src - [IN] 암호문
        priKey - [IN] 개인키
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        복호화 된 원문
        Throws:
        java.lang.NullPointerException - 복호화 하려는 data가 null 일 때
        IssacWebServerException - Private Key가 생성되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_publickey_decrypt_ex

        public abstract byte[] issacweb_publickey_decrypt_ex​(byte[] src,
                                                             int hashAlgId)
        개인키를 이용하여 메시지를 복호화 한다.

        개인키가 이미 설정되어 있어야 한다.

        Parameters:
        src - [IN] 암호문
        hashAlgId - [IN] 해시 알고리즘
        Returns:
        복호화 된 원문
        Throws:
        java.lang.NullPointerException - 복호화 하려는 data가 null 일 때
        IssacWebServerException - Private Key가 생성되어 있지 않거나, 복호화에 실패했을 때.
      • issacweb_timestamp_get

        public abstract java.lang.String issacweb_timestamp_get()
        서버의 시간 정보를 암호화한 timestamp 를 얻는다.
        Returns:
        타임스탬프
      • issacweb_timestamp_verify

        public abstract int issacweb_timestamp_verify​(java.lang.String timestamp,
                                                      int allowedSec)
        타임스탬프로부터 유효한 시간내에 있는지 검증한다.
        Parameters:
        timestamp - [IN] 타임스탬프
        allowedSec - [IN] 허용 가능한 시간(초)
        Returns:
        0 검증 성공 -1 복호화 실패 -2 시간 범위 초과
      • issacweb_get_session_key_base64

        public abstract java.lang.String issacweb_get_session_key_base64()
        세션키를 가져온다.
        Returns:
        세션키 (Base64)
      • issacweb_base64_decode

        public abstract byte[] issacweb_base64_decode​(java.lang.String str)
        Base64 문자열을 디코딩한다.
        Parameters:
        str - [IN] Base64 문자열
        Returns:
        디코딩 된 데이터
      • issacweb_base64_encode

        public abstract java.lang.String issacweb_base64_encode​(byte[] byteAr)
        데이터를 Base64로 인코딩한다.
        Parameters:
        byteAr - [IN] 인코딩 할 데이터
        Returns:
        Base64 문자열
      • issacweb_hybrid_encrypt_file_s

        public abstract java.lang.String issacweb_hybrid_encrypt_file_s​(java.lang.String infilepath,
                                                                        java.lang.String pubkey)
        입력된 파일을 하이브리드 암호화하여 [infilepath].enc 파일을 생성한다.
        Parameters:
        infilepath - [IN] 암호화 할 파일 경로
        pubkey - [IN] 공개키
        Returns:
        하이브리드 암호화에 사용된 세션키 (Base64)
        Since:
        2005.09.30
      • issacweb_hybrid_decrypt_file_s

        public abstract java.lang.String issacweb_hybrid_decrypt_file_s​(java.lang.String infilepath,
                                                                        java.lang.String prikey)
        입력된 파일을 하이브리드 복호화한다.
        Parameters:
        infilepath - [IN, OUT] 암호화 된 파일 경로. 성공 시 복호화 된 파일로 변경됨.
        prikey - [IN] 개인키
        Returns:
        하이브리드 복호화로 추출된 세션키 (Base64)
        Since:
        2005.09.30
      • issacweb_encrypt_file_s

        public abstract int issacweb_encrypt_file_s​(java.lang.String infilepath,
                                                    java.lang.String sessionkey)
        입력된 파일을 암호화하여 [infilepath].enc 파일을 생성한다.
        Parameters:
        infilepath - [IN] 암호화 할 파일 경로
        sessionkey - [IN] 세션키
        Returns:
        0 : 암호화 성공, 오류 시 IssacWebServerException
        Since:
        2005.09.30
      • issacweb_decrypt_file_s

        public abstract int issacweb_decrypt_file_s​(java.lang.String infilepath,
                                                    java.lang.String sessionkey)
        입력된 파일을 복호화하여 [infilepath].dec 파일을 생성한다.
        Parameters:
        infilepath - [IN] 암호화 된 파일 경로
        sessionkey - [IN] 세션키
        Returns:
        0 : 복호화 성공, 오류 시 IssacWebServerException
        Since:
        2005.09.30
      • issacweb_hybrid_encrypt_file

        public abstract byte[] issacweb_hybrid_encrypt_file​(byte[] infilepath,
                                                            java.lang.String pubkey)
        Deprecated.
        입출력을 모두 String 에서 byte[] 로 단순 변경한 것으로, 데이터는 사실상 String 이다. 따라서 사용할 이유가 없다.
        입력된 파일을 하이브리드 암호화하여 [infilepath].enc 파일을 생성한다.
        Parameters:
        infilepath - [IN] 암호화 할 파일 경로
        pubkey - [IN] 공개키
        Returns:
        하이브리드 암호화에 사용된 세션키 (Base64)
      • issacweb_hybrid_decrypt_file

        public abstract byte[] issacweb_hybrid_decrypt_file​(byte[] infilepath,
                                                            java.lang.String prikey)
        Deprecated.
        입출력을 모두 String 에서 byte[] 로 단순 변경한 것으로, 데이터는 사실상 String 이다. 따라서 사용할 이유가 없다.
        입력된 파일을 하이브리드 복호화한다.
        Parameters:
        infilepath - [IN, OUT] 암호화 된 파일 경로. 성공 시 복호화 된 파일로 변경됨.
        prikey - [IN] 개인키
        Returns:
        하이브리드 복호화로 추출된 세션키 (Base64)
      • issacweb_encrypt_file

        public abstract int issacweb_encrypt_file​(byte[] infilepath,
                                                  byte[] sessionkey)
        Deprecated.
        입력을 String 에서 byte[] 로 단순 변경한 것으로, 데이터는 사실상 String 이다. 따라서 사용할 이유가 없다.
        입력된 파일을 암호화하여 [infilepath].enc 파일을 생성한다.
        Parameters:
        infilepath - [IN] 암호화 할 파일 경로
        sessionkey - [IN] 세션키
        Returns:
        0 : 암호화 성공, 오류 시 IssacWebServerException
      • issacweb_decrypt_file

        public abstract int issacweb_decrypt_file​(byte[] infilepath,
                                                  byte[] sessionkey)
        Deprecated.
        입력을 String 에서 byte[] 로 단순 변경한 것으로, 데이터는 사실상 String 이다. 따라서 사용할 이유가 없다.
        입력된 파일을 복호화하여 [infilepath].dec 파일을 생성한다.
        Parameters:
        infilepath - [IN] 암호화 된 파일 경로
        sessionkey - [IN] 세션키
        Returns:
        0 : 복호화 성공, 오류 시 IssacWebServerException
      • issacweb_message_hash

        @Deprecated
        public abstract byte[] issacweb_message_hash​(byte[] msg)
        Deprecated.
        일반적인 용도의 hash 가 아니다. 특정 용도로 이미 사용중이던 사이트에서만 사용한다.
        설명 필요없음
        Parameters:
        msg - [IN] 설명 필요없음
        Returns:
        설명 필요없음
      • issacweb_getLicenseInfo

        public abstract java.lang.String issacweb_getLicenseInfo()
        라이선스의 이름을 가져온다.
        Returns:
        라이선스의 이름 (라이선스 인증서의 Subject CN)
      • issacweb_initialize_cis

        @Deprecated
        public abstract int issacweb_initialize_cis()
        Deprecated.
        기존 API 유지를 위해 존재하는 것으로 새로 구현 시 IssacInitialize의 initializeModule()을 사용하도록 한다.
        모듈 초기화

        호환성 유지 차원에서 남겨둠

        Returns:
        0은 성공, 나머지는 오류.
        See Also:
        IssacInitialize.initializeModule()
      • issacweb_finalize_cis

        @Deprecated
        public abstract int issacweb_finalize_cis()
        Deprecated.
        기존 API 유지를 위해 존재하는 것으로 새로 구현 시 IssacInitialize의 finalizeModule()을 사용하도록 한다.
        모듈 사용 종료

        호환성 유지 차원에서 남겨둠

        Returns:
        0은 성공, 나머지는 오류.
        See Also:
        IssacInitialize.finalizeModule()
      • issacweb_set_symmetric_algorithm

        @Deprecated
        public abstract int issacweb_set_symmetric_algorithm​(int algid)
        Deprecated.
        대칭키 암복호화에 사용되는 알고리즘을 설정한다.
        Parameters:
        algid - [IN] SEED(1), ARIA(2), AES256(3)
        Returns:
        0은 성공, 나머지는 오류.
      • issacweb_get_symmetric_algorithm

        public abstract int issacweb_get_symmetric_algorithm()
        현재 설정된 대칭키 암복호화 알고리즘을 가져온다.
        Returns:
        SEED(1), ARIA(2), AES256(3)
      • issacweb_set_hash_algorithm

        @Deprecated
        public abstract int issacweb_set_hash_algorithm​(int algid)
        Deprecated.
        비대칭키 암복호화에 사용되는 해시 알고리즘을 설정한다.
        Parameters:
        algid - [IN] SHA1(1), SHA256(2), SHA384(3), SHA512(4, 1024 bit RSA 는 지원하지 않음)
        Returns:
        0은 성공, 나머지는 오류.
      • issacweb_get_hash_algorithm

        public abstract int issacweb_get_hash_algorithm()
        현재 설정된 해시 알고리즘을 가져온다.
        Returns:
        SHA1(1), SHA256(2), SHA384(3), SHA512(4)
      • issacweb_set_asymmetric_algorithm

        @Deprecated
        public abstract int issacweb_set_asymmetric_algorithm​(int algid)
        Deprecated.
        함수 이름이 올바르지 않다. 구간암호화에는 RSA 만 사용되며, 해시 알고리즘을 설정하는 기능이다.
        비대칭키 암복호화에 사용되는 해시 알고리즘을 설정한다.
        Parameters:
        algid - [IN] SHA1(1), SHA256(2), SHA384(3), SHA512(4, 1024 bit RSA 는 지원하지 않음)
        Returns:
        0은 성공, 나머지는 오류.
        See Also:
        issacweb_set_hash_algorithm(int)
      • issacweb_keyprotect_decrypt

        public abstract java.lang.String issacweb_keyprotect_decrypt​(java.lang.String encData)
        키보드 보안모듈에서 암호화된 키보드 입력값을 복호화하는 함수
        Parameters:
        encData - [IN] 암호화 된 데이터
        Returns:
        복호화 된 키보드 입력값
        Throws:
        IssacWebServerException - 세션키가 지정되어 있지 않거나, 복호화에 실패했을 때.
      • d2b_hybrid_decrypt

        public abstract java.lang.String d2b_hybrid_decrypt​(java.lang.String src,
                                                            byte[] sessionKey,
                                                            java.lang.String priKey)
        d2b 전용 (특수 사이트 전용 기능)
        Parameters:
        src - [IN] -
        sessionKey - [IN] -
        priKey - [IN] -
        Returns:
        -
        Since:
        2004.08.03
      • d2b_hybrid_decrypt

        public abstract byte[] d2b_hybrid_decrypt​(byte[] src,
                                                  byte[] sessionKey,
                                                  java.lang.String priKey)
        d2b 전용 (특수 사이트 전용 기능)
        Parameters:
        src - [IN] -
        sessionKey - [IN] -
        priKey - [IN] -
        Returns:
        -
        Since:
        2004.08.03
      • d2b_hybrid_decrypt2

        public abstract java.lang.String d2b_hybrid_decrypt2​(java.lang.String src,
                                                             java.lang.String priKey)
        d2b 전용 (특수 사이트 전용 기능)
        Parameters:
        src - [IN] -
        priKey - [IN] -
        Returns:
        -
      • d2b_hybrid_decrypt2

        public abstract byte[] d2b_hybrid_decrypt2​(byte[] src,
                                                   java.lang.String priKey)
        d2b 전용 (특수 사이트 전용 기능)
        Parameters:
        src - [IN] -
        priKey - [IN] -
        Returns:
        -
      • d2b_hybrid_decrypt_with_priKeyPath

        public abstract java.lang.String d2b_hybrid_decrypt_with_priKeyPath​(java.lang.String src,
                                                                            byte[] sessionKey,
                                                                            java.lang.String priKeyPath)
        d2b 전용 (특수 사이트 전용 기능)
        Parameters:
        src - [IN] -
        sessionKey - [OUT] -
        priKeyPath - [IN] -
        Returns:
        -
      • d2b_hybrid_decrypt_with_priKeyPath

        public abstract byte[] d2b_hybrid_decrypt_with_priKeyPath​(byte[] src,
                                                                  byte[] sessionKey,
                                                                  java.lang.String priKeyPath)
        d2b 전용 (특수 사이트 전용 기능)
        Parameters:
        src - [IN] -
        sessionKey - [OUT] -
        priKeyPath - [IN] -
        Returns:
        -
      • d2b_get_certificate

        public abstract byte[] d2b_get_certificate​(java.lang.String src)
        d2b 전용 (특수 사이트 전용 기능)
        Parameters:
        src - [IN] -
        Returns:
        -
      • issacweb_publickey_encrypt_c

        public abstract byte[] issacweb_publickey_encrypt_c​(byte[] src,
                                                            java.lang.String strCert)
        인증서의 공개키를 이용해 암호화한다.
        Parameters:
        src - [IN] 원문
        strCert - [IN] 인증서 (RSA)
        Returns:
        암호문
      • issacweb_publickey_decrypt_c

        public abstract byte[] issacweb_publickey_decrypt_c​(byte[] src,
                                                            java.lang.String strPrivInfo)
        PrivateKeyInfo 형식의 개인키를 이용해 복호화한다.
        Parameters:
        src - [IN] 암호문
        strPrivInfo - [IN] PrivateKeyInfo 형식의 개인키 (RSA)
        Returns:
        복호화 된 원문
      • issacweb_publickey_encrypt_cs

        public abstract byte[] issacweb_publickey_encrypt_cs​(java.lang.String strSrc,
                                                             java.lang.String strCert)
        인증서의 공개키를 이용해 문자열을 암호화한다.

        Note: 원문 문자열의 실제 데이터는 JVM의 문자셋(Character Set)에 따라 다르다.

        Parameters:
        strSrc - [IN] 원문 (문자열)
        strCert - [IN] 인증서 (RSA)
        Returns:
        암호문
      • issacweb_publickey_decrypt_cs

        public abstract byte[] issacweb_publickey_decrypt_cs​(java.lang.String strSrc,
                                                             java.lang.String strPrivInfo)
        PrivateKeyInfo 형식의 개인키를 이용해 문자열을 복호화한다.
        Parameters:
        strSrc - [IN] 암호문
        strPrivInfo - [IN] PrivateKeyInfo 형식의 개인키 (RSA)
        Returns:
        복호화 된 원문
      • issacweb_make_response_s

        public abstract java.lang.String issacweb_make_response_s​(java.lang.String challenge,
                                                                  java.lang.String strCert,
                                                                  java.lang.String strPrivInfo)
        challenge에 대한 response를 생성한다.
        Parameters:
        challenge - [IN] 챌린지값
        strCert - [IN] 사용자의 인증서
        strPrivInfo - [IN] 사용자의 개인키
        Returns:
        Response(응답값)
      • issacweb_set_publickey

        public abstract void issacweb_set_publickey​(java.lang.String strPubkey)
        외부 공개키를 설정한다.
        Parameters:
        strPubkey - [IN] RSA 공개키 (Base64)
      • issacweb_set_privatekey

        public abstract void issacweb_set_privatekey​(java.lang.String strPrikey)
        외부 개인키를 설정한다.
        Parameters:
        strPrikey - [IN] RSA 개인키 (Base64)