투케이2K

205. (kotlin/코틀린) [유틸 파일] get_Sha256_EncodeString : String 문자열 값을 SHA256 인코딩 수행 실시 본문

Kotlin

205. (kotlin/코틀린) [유틸 파일] get_Sha256_EncodeString : String 문자열 값을 SHA256 인코딩 수행 실시

투케이2K 2023. 1. 23. 19:57

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Kotlin

 

[소스 코드]

 

        // TODO [SEARCH FAST] : [get_Sha256_EncodeString] : String 문자열 값을 SHA256 인코딩 수행 실시
        fun get_Sha256_EncodeString(data: String): String {

            /**
             * // -----------------------------------------
             * [get_Sha256_EncodeString 메소드 설명]
             * // -----------------------------------------
             * 1. String 문자열 값을 SHA256 인코딩 수행 실시
             * // -----------------------------------------
             * 2. 호출 방식 : C_Encryption.get_Sha256_EncodeString("hello")
             * // -----------------------------------------
             * 3. 리턴 데이터 : (HEX 값) 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
             * // -----------------------------------------
             * */


            // [리턴 반환 변수 선언 실시]
            var returnData = ""


            // [로직 처리 실시]
            try {

                if (C_Util.stringNotNull(data) == true){

                    // [MessageDigest 선언]
                    val md = MessageDigest.getInstance("SHA-256")
                    md.update(data.toByteArray())
                    val byteData = md.digest()

                    // [리턴 변수에 삽입]
                    returnData = C_Encryption.byteToHex(byteData)
                    returnData = returnData.toLowerCase()
                    returnData = returnData.replace(" ", "")
                    returnData = returnData.replace("0x", "")
                }

            } catch (e: Exception) {
                e.printStackTrace()
            }


            // [로그 출력 실시]
            ///*
            S_Log.ltd("================================================")
            S_Log.cnt("[" + ACTIVITY_NAME + " >> " + C_Util.getNowMethod(1) + " :: String 문자열 값을 SHA256 인코딩 수행 실시]")
            S_Log.cnt("-----------------------------------------")
            S_Log.cnt("[INPUT :: $data]")
            S_Log.cnt("-----------------------------------------")
            S_Log.cnt("[RETURN :: $returnData]")
            S_Log.lbd("================================================")
            // */


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

 

반응형
Comments