Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
base64.hpp
Go to the documentation of this file.
1//
2// base64 encoding and decoding with C++.
3// Version: 2.rc.08 (release candidate)
4//
5// Copyright (C) 2004-2017, 2020, 2021 René Nyffenegger
6// https://renenyffenegger.ch/notes/development/Base64/Encoding-and-decoding-base-64-with-cpp
7//
8
9#pragma once
10
11#include <string>
12
13#if __cplusplus >= 201703L
14#include <string_view>
15#endif // __cplusplus >= 201703L
16
17std::string base64_encode(std::string const& s, bool url = false);
18std::string base64_encode_pem(std::string const& s);
19std::string base64_encode_mime(std::string const& s);
20
21std::string base64_decode(std::string const& s, bool remove_linebreaks = false);
22std::string base64_encode(unsigned char const*, size_t len, bool url = false);
23
24#if __cplusplus >= 201703L
25//
26// Interface with std::string_view rather than const std::string&
27// Requires C++17
28// Provided by Yannic Bonenberger (https://github.com/Yannic)
29//
30std::string base64_encode(std::string_view s, bool url = false);
31std::string base64_encode_pem(std::string_view s);
32std::string base64_encode_mime(std::string_view s);
33
34std::string base64_decode(std::string_view s, bool remove_linebreaks = false);
35#endif // __cplusplus >= 201703L
std::string base64_encode_mime(std::string const &s)
Definition base64.cpp:264
std::string base64_encode_pem(std::string const &s)
Definition base64.cpp:259
std::string base64_decode(std::string const &s, bool remove_linebreaks=false)
Definition base64.cpp:249
std::string base64_encode(std::string const &s, bool url=false)
Definition base64.cpp:254
uint8_t len