All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
tpm-key-handle-osx.hpp
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
23 #ifndef NDN_TPM_KEY_HANDLE_OSX_HPP
24 #define NDN_TPM_KEY_HANDLE_OSX_HPP
25 
26 // Only compile if ndn-cpp-config.h defines NDN_CPP_HAVE_OSX_SECURITY 1.
27 #include "../../ndn-cpp-config.h"
28 #if NDN_CPP_HAVE_OSX_SECURITY
29 
30 #include "helper-osx.hpp"
31 #include "tpm-key-handle.hpp"
32 
33 namespace ndn {
34 
39 class TpmKeyHandleOsx : public TpmKeyHandle
40 {
41 public:
42  TpmKeyHandleOsx(const KeyRefOsx& key);
43 
44 private:
45  virtual Blob
46  doSign
47  (DigestAlgorithm digestAlgorithm, const uint8_t* data, size_t dataLength) const;
48 
49  virtual Blob
50  doDecrypt(const uint8_t* cipherText, size_t cipherTextLength) const;
51 
52  virtual Blob
53  doDerivePublicKey() const;
54 
55  KeyRefOsx key_;
56 };
57 
58 }
59 
60 #endif // NDN_CPP_HAVE_OSX_SECURITY
61 
62 #endif