base32
Base32 encoding/decoding library
Loading...
Searching...
No Matches
base32 Namespace Reference

namespace that contains base32 encoding and decoding functions More...

Typedefs

using Bytes = std::vector< uint8_t >
 bytes alias
 

Enumerations

enum class  Error : uint8_t { NoError = 0 , InvalidB32Input , MaxLengthExceeded , EmptyString }
 The error enum.
 

Functions

Error validateEncodeInput (const Bytes &userData)
 validateEncodeInput
 
uint8_t getPaddingBytesCount (const base32::Bytes &userData)
 getPaddingBytesCount
 
std::string encode (const Bytes &userData, Error &errCode)
 Encode bytes as base 32 string.
 
Error validateDecodeInput (const std::string_view &userData)
 validateDencodeInput
 
size_t getPayloadSize (const std::string_view &userData)
 getPayloadSize
 
Error decodePayload (const std::string_view &userData, size_t userDataChars, Bytes &decodedData)
 decodePayload
 
Bytes decode (std::string_view userData, Error &errCode)
 Decode bytes as base 32 string.
 

Detailed Description

namespace that contains base32 encoding and decoding functions

Function Documentation

◆ decode()

Bytes base32::decode ( std::string_view  userData,
Error errCode 
)

Decode bytes as base 32 string.

Parameters
userDataencoded base 32 string
errCode
Returns
base32 encoded string
Here is the call graph for this function:

◆ decodePayload()

Error base32::decodePayload ( const std::string_view &  userData,
size_t  userDataChars,
Bytes decodedData 
)

decodePayload

Parameters
userData
userDataChars- payload size
decodedDataBytes out parameter
Returns
error code
Here is the caller graph for this function:

◆ encode()

std::string base32::encode ( const Bytes userData,
Error errCode 
)

Encode bytes as base 32 string.

The encoding process represents 40-bit groups of input bits as output strings of 8 encoded characters.

Parameters
userDatamax size is 64 MB
errCode
Returns
base32 encoded string
Here is the call graph for this function:

◆ getPaddingBytesCount()

uint8_t base32::getPaddingBytesCount ( const base32::Bytes userData)

getPaddingBytesCount

Calculate base 32 padding to fill base 32 block (40 bits) if necessary

Parameters
userData
Returns

◆ getPayloadSize()

size_t base32::getPayloadSize ( const std::string_view &  userData)

getPayloadSize

Base 32 string consist of 40 bits blocks padded with '='. This function calculates payload size to allocate buffer for decoded data.

Parameters
userData
Returns
payload size

◆ validateDecodeInput()

Error base32::validateDecodeInput ( const std::string_view &  userData)

validateDencodeInput

Parameters
userData
Returns

◆ validateEncodeInput()

Error base32::validateEncodeInput ( const Bytes userData)

validateEncodeInput

Parameters
userData
Returns