base64decode 함수

base64decode 함수

base64decode 함수는 Base64 문자 시퀀스가 담긴 문자열을 받아서 원래 문자열로 되돌려줘요. Terraform 언어의 문자열은 바이트가 아니라 유니코드 문자 시퀀스이므로, 이 함수는 디코딩한 바이트를 UTF-8로 해석해요. 대용량 바이너리 데이터를 직접 다루는 것을 권장하지는 않지만, Base64 인코딩이 임의의 바이트 시퀀스를 표현하는 표준 방식이에요.

출처: 문서

본문

base64decode는 Base64 문자 시퀀스가 담긴 문자열을 받아서 원래 문자열을 돌려줘요.

Terraform은 RFC 4648 section 4에 정의된 "표준" Base64 알파벳을 사용해요. Terraform 언어의 문자열은 바이트가 아니라 유니코드 문자 시퀀스이므로, 이 함수는 결과로 나온 바이트를 UTF-8로도 해석해요. Base64 디코딩 후의 바이트가 유효한 UTF-8이 아니면 이 함수는 오류를 발생시켜요.

Terraform 언어에서 크고 원시적인 바이너리 데이터를 직접 다루는 것은 권장하지 않지만, Base64 인코딩은 임의의 바이트 시퀀스를 표현하는 표준 방식이므로 바이너리 데이터를 받거나 반환하는 리소스 타입은 대부분 Base64를 직접 사용해요. 그 덕분에 대부분의 경우 직접 인코딩하거나 디코딩할 필요가 없어져요. 이름에 "base64"가 들어간 여러 다른 함수들이 Base64 데이터를 직접 생성하거나 조작할 수 있어요.

base64decode는 사실상 인코딩 이름을 UTF-8로 설정해 textdecodebase64를 호출하는 것의 줄임 표현이에요.

예시

> base64decode("SGVsbG8gV29ybGQ=")
Hello World

관련 함수

  • base64encode - 반대 작업을 수행해요. 문자열의 UTF-8 바이트를 Base64로 인코딩해요.
  • textdecodebase64 - UTF-8 이외의 문자 인코딩을 지원하는 더 일반적인 함수예요.
  • base64gzip - 문자열에 gzip 압축을 적용하고 결과를 Base64로 인코딩해 돌려줘요.
  • filebase64 - 로컬 파일시스템에서 파일을 읽어 원시 바이트를 Base64로 인코딩해 돌려줘요.

더 알아보기 (Learn more)