textencodebase64 Function

textencodebase64 encodes the unicode characters in a given string using a specified character encoding, returning the result base64 encoded because OpenTofu language strings are always sequences of unicode characters.

substr(string, encoding_name)

OpenTofu uses the "standard" Base64 alphabet as defined in RFC 4648 section 4 (opens in a new tab).

The encoding_name argument must contain one of the encoding names or aliases recorded in the IANA character encoding registry (opens in a new tab). OpenTofu supports only a subset of the registered encodings, and the encoding support may vary between OpenTofu versions. In particular OpenTofu supports UTF-16LE, which is the native character encoding for the Windows API and therefore sometimes expected by Windows-originated software such as PowerShell.

OpenTofu also accepts the encoding name UTF-8, which will produce the same result as base64encode.


> textencodebase64("Hello World", "UTF-16LE")

Related Functions

  • textdecodebase64 performs the opposite operation, decoding Base64 data and interpreting it as a particular character encoding.
  • base64encode applies Base64 encoding of the UTF-8 encoding of a string.
  • filebase64 reads a file from the local filesystem and returns its raw bytes with Base64 encoding, without creating an intermediate Unicode string.