투케이2K

208. (kotlin/코틀린) [유틸 파일] certificate_X509_To_Base64 : X.509 Certificate 인증서 정보를 base64 문자열로 변경 실시 본문

Kotlin

208. (kotlin/코틀린) [유틸 파일] certificate_X509_To_Base64 : X.509 Certificate 인증서 정보를 base64 문자열로 변경 실시

투케이2K 2023. 1. 29. 13:06

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Kotlin

 

[소스 코드]

        // ----------------------------------------------------------------------------------
        // TODO [SEARCH FAST] : [RETURN] certificate_X509_To_Base64 : X509 인증서를 base64 문자열로 변경
        // ----------------------------------------------------------------------------------
        fun certificate_X509_To_Base64(certificate: Certificate?): String {

            /**
             * // -----------------------------------------
             * [certificate_X509_To_Base64 메소드 설명]
             * // -----------------------------------------
             * 1. certificate_X509_To_Base64 : X509 인증서를 base64 문자열로 변경
             * // -----------------------------------------
             * 2. 호출 방식 :
             *
             * C_App.certificate_X509_To_Base64(originCertificate)
             *
             * // -----------------------------------------
             * 3. 리턴 데이터 :
             * -----BEGIN CERTIFICATE-----
             * MIIB2zCCAcWgAwIBAgIBATANBgkqhkiG9w0BAQsFADAoMSYwJAYDVQQDEx1Qcml2YXRlS2V5VHdv
             * ayBDQSBDZXJ0aWZpY2F0ZTAeFw0yMzAxMjYyMzEzNDVaFw00MzAxMjYyMzEzNDVaMCgxJjAkBgNV
             * BAMTHVByaXZhdGVLZXlUd29rIENBIENlcnRpZmljYXRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
             * BAMCBDAwDQYJKoZIhvcNAQELBQADAQA=
             * -----END CERTIFICATE-----
             * // -----------------------------------------
             */


            // [리턴 값 선언]
            var returnData = ""
            var certType = ""


            // [로직 처리 실시]
            try {
                if (certificate != null && certificate.type.trim().equals("X.509") == true) {

                    // [타입 저장]
                    certType = certificate.type.toString()

                    // [base64 문자열로 변경]
                    val base64Encode = StringBuffer()
                    base64Encode.append("-----BEGIN CERTIFICATE-----\n")
                    base64Encode.append(Base64.encodeToString(certificate.encoded, Base64.DEFAULT).trim())
                    base64Encode.append("\n-----END CERTIFICATE-----")

                    // [리턴 변수에 삽입]
                    returnData = base64Encode.toString()
                }
            } catch (e: Exception) {
                e.printStackTrace()
            }


            // [로그 출력 실시]
            ///*
            S_Log.ltd("================================================")
            S_Log.cnt("[" + ACTIVITY_NAME + " >> " + C_Util.getNowMethod(1) + " :: X509 인증서를 base64 문자열로 변경]")
            S_Log.cnt("-----------------------------------------")
            S_Log.cnt("[INPUT [Certificate] :: " + certificate.toString() + "]")
            S_Log.cnt("-----------------------------------------")
            S_Log.cnt("[TYPE [Certificate] :: $certType]")
            S_Log.cnt("-----------------------------------------")
            S_Log.cnt("[RETURN :: $returnData]")
            S_Log.lbd("================================================")
            // */


            // [리턴 반환 실시]
            return returnData
        }
 

[결과 출력]

 

 
반응형
Comments