37 #ifndef VIRGIL_CRYPTO_VIRGIL_ASN1_READER_H
38 #define VIRGIL_CRYPTO_VIRGIL_ASN1_READER_H
43 #include "../../VirgilByteArray.h"
45 namespace virgil {
namespace crypto {
namespace foundation {
namespace asn1 {
173 const unsigned char* end_;
~VirgilAsn1Reader() noexcept
Dispose internal resources.
This class provides methods for reading ASN.1 data structure.
Definition: VirgilAsn1Reader.h:53
VirgilAsn1Reader & operator=(const VirgilAsn1Reader &rhs)=delete
Delete assignment operator.
bool readBool()
Read ASN.1 type: BOOLEAN.
void reset(const virgil::crypto::VirgilByteArray &data)
Reset all internal states and prepare to new ASN.1 reading operations.
size_t readSequence()
Read ASN.1 type: SEQUENCE.
void readNull()
Read ASN.1 type: NULL.
virgil::crypto::VirgilByteArray readData()
Read preformatted ASN.1 structure.
virgil::crypto::VirgilByteArray readOctetString()
Read ASN.1 type: OCTET STRING.
std::vector< unsigned char > VirgilByteArray
This type represents a sequence of bytes.
Definition: VirgilByteArray.h:50
VirgilAsn1Reader()
Initialize internal state.
std::string readOID()
Read ASN.1 type: OID.
int readInteger()
Read ASN.1 type: INTEGER.
size_t readSet()
Read ASN.1 type: SET.
size_t readContextTag(unsigned char tag)
Read ASN.1 type: TAG.
virgil::crypto::VirgilByteArray readUTF8String()
Read ASN.1 type: UTF8String.