Virgil Security Crypto library  2.0.7
VirgilStreamSigner.h
1 
37 #ifndef VIRGIL_STREAM_SIGNER_H
38 #define VIRGIL_STREAM_SIGNER_H
39 
40 #include <virgil/crypto/VirgilByteArray.h>
41 #include <virgil/crypto/VirgilDataSource.h>
42 #include <virgil/crypto/foundation/VirgilHash.h>
43 
44 namespace virgil { namespace crypto {
45 
52 public:
57  explicit VirgilStreamSigner(
59 
65  VirgilDataSource& source, const VirgilByteArray& privateKey,
66  const VirgilByteArray& privateKeyPassword = VirgilByteArray());
67 
72  bool verify(VirgilDataSource& source, const VirgilByteArray& sign, const VirgilByteArray& publicKey);
73 
74 private:
76 };
77 
78 }}
79 
80 #endif /* VIRGIL_STREAM_SIGNER_H */
Algorithm
Enumerates possible Hash algorithms.
Definition: VirgilHash.h:57
VirgilByteArray sign(VirgilDataSource &source, const VirgilByteArray &privateKey, const VirgilByteArray &privateKeyPassword=VirgilByteArray())
Sign data provided by the source with given private key.
bool verify(VirgilDataSource &source, const VirgilByteArray &sign, const VirgilByteArray &publicKey)
Verify sign and data provided by the source to be conformed to the given public key.
Provides hashing (message digest) algorithms.
Definition: VirgilHash.h:52
This class provides high-level interface to sign and verify data using Virgil Security keys...
Definition: VirgilStreamSigner.h:51
Root namespace for all Virgil Security libraries.
Definition: VirgilAsn1Compatible.h:46
std::vector< unsigned char > VirgilByteArray
This type represents a sequence of bytes.
Definition: VirgilByteArray.h:53
This is base class for input streams.
Definition: VirgilDataSource.h:49
VirgilStreamSigner(foundation::VirgilHash::Algorithm hashAlgorithm=foundation::VirgilHash::Algorithm::SHA384)
Create signer with predefined hash function.