Secukit NXS

인증서 정보 추출

Request
인증서 정보 추출 Request
Name Type Description
setProcessLogic String 최초 콜백 진입 지점
certType String

인증서 타입

1. 서명용 : SignCert

2. 암호화용 : EncryptCert

certID String

현재 선택된 인증서 ID

certListInfo.getCertID() 함수 사용

isViewVID String

VID 추출 여부

1. '0' : VID 추출X

2. '1' : VID 추출

Response
인증서 정보 추출 Response
Name Type Description
authorityKeyID String 기관 키 식별자
certPEM String 인증서 PEM
detailValidateTo String 자세한 유효 기간(끝)
distributionPoints String CRL 배포 지점
encryptCertPEM String 설명
issueDN String 발행기관 DN
issuer String 발행기관
issuerToString String 발급자
keySize String 설명
policy String 인증서 정책
policyToName String 인증서 정책 이름
policyToString String 인증서 정책 이름
publicKey String 공개키
serial String 일련번호
signatureAlgorithmID String 전자서명 알고리즘
singature String 인증서 전자서명
usage String 용도
userDN String 인증서 DN
userKeyID String 주체 키 식별자
userPublicKeyAlgorithmID String 공개 키 알고리즘
username String 이름
validateFrom String 유효 기간(시작)
validateTo String 유효 기간(끝)
version String 인증서 버전 정보
vidRandom String 본인 식별 랜덤값
Request

function SecuKitNXS_RESULT(cmd, res) {
    var Err = 999;
    try {
        Err = res.ERROR_CODE;
    } catch (e) {
        console.log(e);
    }

    switch (cmd) {
        case 'Get_CertInfo' :
            var cmd = 'Get_CertInfo_Result.viewCertInfomationWithVID';
            var Data = {
                'certType': 'SignCert',
                'certID': certListInfo.getCertID(),
                'isViewVID': '1'
            };
            var param = JSON.stringify(Data);
            secukitnxInterface.SecuKitNXS(cmd, param);
            break;
        case 'Get_CertInfo_Result' :
            var certinfo = JSON.stringify(res, null, 2);
            $('#cert-info-result').html(certinfo);
            break;
        default: break;
    }
}

Response

PKCS1 전자서명

Request
secukitNxs Request
Name Type Description
setProcessLogic String 최초 콜백 진입 시점
sourceString String 전자서명 원문
certType String

인증서 타입

1. 서명용 : SignCert

2. 암호화용 : EncryptCert

algorithm String

전자서명 해시 알고리즘

1. SHA1

2. SHA256

3. SHA384

4. SHA512

certID String

현재 선택된 인증서 ID

certListInfo.getCertID() 함수 사용

Response
secukitNxs Response
Name Type Description
generateSignatureData String PKCS1 전자서명값
Request

function SecuKitNXS_RESULT(cmd, res) {
    var Err = 999;
    try {
        Err = res.ERROR_CODE;
    } catch (e) {
        console.log(e);
    }

    switch (cmd) {
        case 'KICA_USE_Sign':
            var cmd = 'KICA_USE_Sign_Result.generateSignatureData';
            var Data = {
                'sourceString': '원문 메시지',
                'certType': 'SignCert',
                'algorithm': 'SHA256',
                'certID': certListInfo.getCertID()
            };
            var param = JSON.stringify(Data);
            secukitnxInterface.SecuKitNXS(cmd, param);
            break;
        case 'KICA_USE_Sign_Result':
            $('#p1-sign-result').html(JSON.stringify(res, null, 2));
            break;
        default: break;
    }
}

Response

PKCS7 전자서명

Request
PKCS7 전자서명 Request
Name Type Description
setProcessLogic String 최초 콜백 진입 시점
sourceString String 전자서명 원문
certType String

인증서 타입

1. 서명용 : SignCert

2. 암호화용 : EncryptCert

certID String

현재 선택된 인증서 ID

certListInfo.getCertID() 함수 사용

Response
PKCS7 전자서명 Response
Name Type Description
generatePKCS7SignedData String PKCS7 전자서명값
Request

function SecuKitNXS_RESULT(cmd, res) {
    var Err = 999;
    try {
        Err = res.ERROR_CODE;
    } catch (e) {
        console.log(e);
    }

    switch (cmd) {
        case 'KICA_USE_P7Sign':
            var cmd = 'KICA_USE_P7Sign_Result.generatePKCS7SignedData';
            var Data = {
                'sourceString': '원문 메시지',
                'certType': 'SignCert',
                'certID': certListInfo.getCertID()
            };
            var param = JSON.stringify(Data);
            secukitnxInterface.SecuKitNXS(cmd, param);
            break;
        case 'KICA_USE_P7Sign_Result':
            $('#p7-sign-result').html(JSON.stringify(res, null, 2));
            break;
        default: break;
    }
}

Response

PKCS7 추가 전자서명

Request
secukitNxs Request
Name Type Description
setProcessLogic String 최초 콜백 진입 시점
sourceString String PKCS7 전자서명 결과값
certType String

인증서 타입

1. 서명용 : SignCert

2. 암호화용 : EncryptCert

certID String

현재 선택된 인증서 ID

certListInfo.getCertID() 함수 사용

Response
secukitNxs Response
Name Type Description
addPKCS7SignedData String PKCS7 추가 전자서명값
Request

function SecuKitNXS_RESULT(cmd, res) {
    var Err = 999;
    try {
        Err = res.ERROR_CODE;
    } catch (e) {
        console.log(e);
    }

    switch (cmd) {
        case 'KICA_USE_P7AddSign':
            var cmd = 'KICA_USE_P7AddSign_Result.addPKCS7SignedData';
            var sourceString = JSON.parse($('#p7-sign-result').text()).generatePKCS7SignedData;
            var Data = {
                'sourceString': removePEMHeader(removeCRLF(sourceString)),
                'certType': 'SignCert',
                'certID': certListInfo.getCertID()
            };
            var param = JSON.stringify(Data);
            secukitnxInterface.SecuKitNXS(cmd, param);
            break;
        case 'KICA_USE_P7AddSign_Result':
            $('#add-p7-result').html(res);
            break;
        default: break;
    }
}

Response

PKCS7 암호화

Request
secukitNxs Request
Name Type Description
setProcessLogic String 최초 콜백 진입 시점
sourceString String 전자서명 원문
targetCert String 암호화에 사용될 인증서 PEM
Response
secukitNxs Response
Name Type Description
generatePKCS7EnvelopedData String PKCS7 암호화 값
Request

function SecuKitNXS_RESULT(cmd, res) {
    var Err = 999;
    try {
        Err = res.ERROR_CODE;
    } catch (e) {
        console.log(e);
    }

    switch (cmd) {
        case 'KICA_USE_P7Env':
            var cmd = 'KICA_USE_P7Env_Result.generatePKCS7EnvelopedData';
            var Data = {
                'sourceString': '원문 메시지',
                'targetCert': removePEMHeader(removeCRLF($("#server-cert").val()))
            };
            var param = JSON.stringify(Data);
            secukitnxInterface.SecuKitNXS(cmd, param);
            break;
        case 'KICA_USE_P7Env_Result':
            $('#p7-enveloped-result').html(JSON.stringify(res, null, 2));
            break;
        default: break;
    }
}

Response

대칭키 암호화

Request
secukitNxs Request
Name Type Description
setProcessLogic String 최초 콜백 진입 시점
sourceString String 암호화 할 데이터 원문
algorithm String

암호화 알고리즘

1. 대칭키 알고리즘 : 'DES', '3DES', 'SEED', 'AES128', 'AES192', 'AES256', 'ARIA128', 'ARIA192', 'ARIA256', 'RC2', 'RC4'

2. 대칭키 암호화 모드 : 'CBC', 'CFB', 'ECB', 'OFB'

3. 대칭키 암호화 패딩 : 'PADDING', 'NOPADDING'

입력 예: 'SEED/CBC/PADDING'

KeyName String 대칭키 암호화에 사용되는 대칭키의 식별자
Response
대칭키 암호화 Response
Name Type Description
symmetricEncryptData String 대칭키로 암호화된 데이터
Request

function SecuKitNXS_RESULT(cmd, res) {
    var Err = 999;
    try {
        Err = res.ERROR_CODE;
    } catch (e) {
        console.log(e);
    }

    switch (cmd) {
        case 'KICA_USE_SymEncData':
            var cmd = 'KICA_USE_SymEncData_Result.symmetricEncryptData';
            var Data = {
                'sourceString': '원문 메시지',
                'algorithm': 'SEED/CBC/PADDING',
                'keyName': 'test@signgate.com'
            };
            var param = JSON.stringify(Data);
            secukitnxInterface.SecuKitNXS(cmd, param);
        case 'KICA_USE_SymEncData_Result':
            $('#enc-data-result').html(res);
            break;
        default: break;
    }
}

Response

대칭키 추출

Request
대칭키 추출 Request
Name Type Description
setProcessLogic String 최초 콜백 진입 시점
serverCert String RSA 암호화에 사용할 서버 인증서 PEM
rsaVersion String

RSA 암호화에 사용할 RSA 버전

1. 'V15'

2. 'V21'

KeyName String 대칭키 암호화에 사용되는 대칭키의 식별자
Response
대칭키 추출 Response
Name Type Description
getSymmetricKeyIV String 서버인증서를 사용해 RSA 암호화한 대칭키/IV
Request

function SecuKitNXS_RESULT(cmd, res) {
    var Err = 999;
    try {
        Err = res.ERROR_CODE;
    } catch (e) {
        console.log(e);
    }

    switch (cmd) {
        case 'KICA_USE_GetSymKeyIV':
            var serverCert = document.getElementById('ServerKmCert').value;
            var rsaVersion = 'V15';
            var keyName = 'test@signgate.com';

            var cmd = 'KICA_USE_GetSymKeyIV_Result.getSymmetricKeyIV';
            var Data = {
                'serverCert': removePEMHeader(removeCRLF(serverCert)),
                'rsaVersion': rsaVersion,
                'keyName': keyName
            };
            var param = JSON.stringify(Data);
            secukitnxInterface.SecuKitNXS(cmd, param);
            break;
        case 'KICA_USE_GetSymKeyIV_Result':
            $('#key-data-result').html(res);
            break;
        default: break;
    }
}

Response

로그인