Kotlin에서 SHA-256 암호화

PanaxW·3일 전
0

Kotlin

목록 보기
6/6

로그인 기능을 구현할 때, 비밀번호나 민감한 데이터를 서버에 평문으로 전송하면 보안상 위험

이를 방지하기 위해 클라이언트에서 SHA-256 해시 함수를 이용한 암호화를 적용할 수 있음

🔧 SHA-256 암호화 함수

/**
 * SHA256 암호화
 */
fun encryptSha256(keyword: String): String {
    return try {
        val md = MessageDigest.getInstance("SHA-256")
        md.update(keyword.toByteArray())
        bytesToHex(md.digest())
    } catch (e: NoSuchAlgorithmException) {
        e.printStackTrace()
        ""
    }
}

🔄 바이트 배열을 16진수 문자열로 변환

/**
 * 바이트 배열을 문자열로
 *
 * @param bytes 바이트 배열
 * @return 문자열
 */
private fun bytesToHex(bytes: ByteArray): String {
    val builder = StringBuilder()
    for (b in bytes) {
        builder.append(String.format("%02x", b))
    }
    return builder.toString()
}

🛡️ 사용 예

val encryptedPassword = encryptSha256("myPassword123")
println("Encrypted: $encryptedPassword")
profile
Android Developer

0개의 댓글