In contrast to base64 RFC3548, the 62nd character ('+') is replaced with '-', the 63rd character ('/') is replaced with '_'. Furthermore, the encoder does not fill the string with trailing '='. The resulting encoded strings comply to the regular expression pattern '[A-Za-z0-9_-]' and thus are safe to use in URLs or for file names.
For a small benchmark, see the vignette.
As of version 1.1, this package also ships with a simple base32 encoder/decoder suited to mangle file names on case insensitive file systems.