AlexaClientSDK
1.26.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
|
Digest implementation based on OpenSSL. More...
#include <OpenSslDigest.h>
Public Member Functions | |
DigestInterface methods. | |
~OpenSslDigest () noexcept override | |
bool | process (const DataBlock &data_in) noexcept override |
Updates digest with a data block. More... | |
bool | process (DataBlock::const_iterator begin, DataBlock::const_iterator end) noexcept override |
Updates digest with a data block range. More... | |
bool | processByte (unsigned char value) noexcept override |
Updates digest with a byte value. More... | |
bool | processUInt8 (uint8_t value) noexcept override |
Updates digest with uint8_t value. More... | |
bool | processUInt16 (uint16_t value) noexcept override |
Updates digest with uint16_t integer value. More... | |
bool | processUInt32 (uint32_t value) noexcept override |
Updates digest with uint32_t integer value. More... | |
bool | processUInt64 (uint64_t value) noexcept override |
Updates digest with uint64_t integer value. More... | |
bool | processString (const std::string &value) noexcept override |
Updates digest with string value. More... | |
bool | finalize (DataBlock &digest) noexcept override |
Finishes digest computation and produces the result. More... | |
bool | reset () noexcept override |
Resets the digest. More... | |
Public Member Functions inherited from alexaClientSDK::acsdkCryptoInterfaces::DigestInterface | |
virtual | ~DigestInterface () noexcept=default |
Default destructor. More... | |
Static Public Member Functions | |
static std::unique_ptr< OpenSslDigest > | create (DigestType type) noexcept |
Creates a new digest instance. More... | |
Additional Inherited Members | |
Public Types inherited from alexaClientSDK::acsdkCryptoInterfaces::DigestInterface | |
typedef std::vector< unsigned char > | DataBlock |
Data block type. This type represents a byte array. More... | |
Digest implementation based on OpenSSL.
|
overridenoexcept |
|
staticnoexcept |
Creates a new digest instance.
[in] | type | Digest type. |
|
overridevirtualnoexcept |
Finishes digest computation and produces the result.
This method finishes digest computation and produces the result. The object is reset if this call succeeds and can be reused for computing new digest.
[out] | dataOut | Computed digest. The size of output depends on the selected digest algorithm. The method appends data to dataOut container. |
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
|
overridevirtualnoexcept |
Updates digest with a data block.
Updates digest value with a data from a data block.
This call is logical equivalent to a following code:
[in] | dataIn | Data for digest. |
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
|
overridevirtualnoexcept |
Updates digest with a data block range.
Updates digest value with a data from a data block range.
This call is logical equivalent to a following code:
[in] | begin | Begin of data block. This parameter must be equal or less than end. If the parameter is greater than dataInEnd the implementation does nothing and returns false. |
[in] | end | Range end. This parameter must be equal or greater than begin. If the parameter is smaller than begin the implementation does nothing and returns false. |
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
|
overridevirtualnoexcept |
Updates digest with a byte value.
Updates digest value with a single byte value.
[in] | value | byte value. |
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
|
overridevirtualnoexcept |
Updates digest with string value.
Updates digest with bytes from a string object. The input is treated as a byte array without terminating null character.
This method is equivalent to the following:
[in] | value | String value. |
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
|
overridevirtualnoexcept |
Updates digest with uint16_t integer value.
Updates digest value with uint16_t data. This method uses big endian (network byte order) encoding for presenting input value as a byte array.
This method is equivalent to the following:
[in] | value | Integer value. |
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
|
overridevirtualnoexcept |
Updates digest with uint32_t integer value.
Updates digest value with uint32_t data. This method uses big endian (network byte order) encoding for presenting input value as a byte array.
This method is equivalent to the following:
[in] | value | Integer value. |
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
|
overridevirtualnoexcept |
Updates digest with uint64_t integer value.
Updates digest value with uint64_t data. This method uses big endian (network byte order) encoding for presenting input value as a byte array.
This method is equivalent to the following:
[in] | value | Integer value. |
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
|
overridevirtualnoexcept |
Updates digest with uint8_t value.
Updates digest value with a 8-bit value.
[in] | value | Integer value. |
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
|
overridevirtualnoexcept |
Resets the digest.
This method resets object state and prepares it for reuse.
Implements alexaClientSDK::acsdkCryptoInterfaces::DigestInterface.
AlexaClientSDK 1.26.0 - Copyright 2016-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0