All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
encryption-manager.hpp
Go to the documentation of this file.
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
8 #ifndef NDN_SECURITY_ENCRYPTION_MANAGER_HPP
9 #define NDN_SECURITY_ENCRYPTION_MANAGER_HPP
10 
11 #include "../../name.hpp"
12 #include "../security-common.hpp"
13 
14 namespace ndn {
15 
17 {
18 public:
20  {
21  }
22 
23  virtual void
24  createSymmetricKey(const Name& keyName, KeyType keyType,
25  const Name& signkeyName = Name(), bool isSymmetric = true) = 0;
26 
27  virtual ConstBufferPtr
28  encrypt(const Name& keyName, const uint8_t* data, size_t dataLength, bool useSymmetric = false,
29  EncryptMode encryptMode = ENCRYPT_MODE_DEFAULT) = 0;
30 
31  virtual ConstBufferPtr
32  decrypt(const Name& keyName, const uint8_t* data, size_t dataLength, bool useSymmetric = false,
33  EncryptMode encryptMode = ENCRYPT_MODE_DEFAULT) = 0;
34 };
35 
36 } // namespace ndn
37 
38 #endif // NDN_SECURITY_ENCRYPTION_MANAGER_HPP
virtual ConstBufferPtr decrypt(const Name &keyName, const uint8_t *data, size_t dataLength, bool useSymmetric=false, EncryptMode encryptMode=ENCRYPT_MODE_DEFAULT)=0
virtual void createSymmetricKey(const Name &keyName, KeyType keyType, const Name &signkeyName=Name(), bool isSymmetric=true)=0
virtual ConstBufferPtr encrypt(const Name &keyName, const uint8_t *data, size_t dataLength, bool useSymmetric=false, EncryptMode encryptMode=ENCRYPT_MODE_DEFAULT)=0
ptr_lib::shared_ptr< const Buffer > ConstBufferPtr
Definition: buffer.hpp:17
A Name holds an array of Name::Component and represents an NDN name.
Definition: name.hpp:26