사용 의의
UTF
UTF-8
UTF-16
Base64
바이너리 데이터를 텍스트 형식으로 표현하기 위해 사용된다.
다음의 예시를 가정하자.
static String encryptAES(String plaintext) {
final key = enc.Key.fromUtf8(aesKey);
final iv = enc.IV.fromUtf8(aesIv);
final encrypter = enc.Encrypter(enc.AES(key, mode: enc.AESMode.cbc, padding: EncryptionModes.AESPADDING));
final encrypted = encrypter.encrypt(plaintext, iv: iv);
return encrypted.base64;
}
encrypted 자체는 바이너리 데이터이기 때문에 base64 인코딩을 적용해 문자열로 변경하도록 한다.
필요성
어떻게 인코딩 되는가?
이름의 유래
패딩 적용
URL 인코딩