Base64 encode and validated decode helpers
Kotlin
import java.util.Base64
fun encode(value: String): String =
Base64.getEncoder().encodeToString(value.toByteArray(Charsets.UTF_8))
fun decode(encoded: String): String? =
try {
String(Base64.getDecoder().decode(encoded), Charsets.UTF_8)
} catch (e: IllegalArgumentException) {
null
}
check(decode(encode("héllo BITS")) == "héllo BITS")
check(decode("not base64!") == null)