| --- |
| page_title: base64decode - Functions - Configuration Language |
| description: The base64decode function decodes a string containing a base64 sequence. |
| --- |
| |
| # `base64decode` Function |
| |
| `base64decode` takes a string containing a Base64 character sequence and |
| returns the original string. |
| |
| Terraform uses the "standard" Base64 alphabet as defined in |
| [RFC 4648 section 4](https://tools.ietf.org/html/rfc4648#section-4). |
| |
| Strings in the Terraform language are sequences of unicode characters rather |
| than bytes, so this function will also interpret the resulting bytes as |
| UTF-8. If the bytes after Base64 decoding are _not_ valid UTF-8, this function |
| produces an error. |
| |
| While we do not recommend manipulating large, raw binary data in the Terraform |
| language, Base64 encoding is the standard way to represent arbitrary byte |
| sequences, and so resource types that accept or return binary data will use |
| Base64 themselves, which avoids the need to encode or decode it directly in |
| most cases. Various other functions with names containing "base64" can generate |
| or manipulate Base64 data directly. |
| |
| `base64decode` is, in effect, a shorthand for calling |
| [`textdecodebase64`](/language/functions/textdecodebase64) with the encoding name set to |
| `UTF-8`. |
| |
| ## Examples |
| |
| ``` |
| > base64decode("SGVsbG8gV29ybGQ=") |
| Hello World |
| ``` |
| |
| ## Related Functions |
| |
| * [`base64encode`](/language/functions/base64encode) performs the opposite operation, |
| encoding the UTF-8 bytes for a string as Base64. |
| * [`textdecodebase64`](/language/functions/textdecodebase64) is a more general function that |
| supports character encodings other than UTF-8. |
| * [`base64gzip`](/language/functions/base64gzip) applies gzip compression to a string |
| and returns the result with Base64 encoding. |
| * [`filebase64`](/language/functions/filebase64) reads a file from the local filesystem |
| and returns its raw bytes with Base64 encoding. |