security: Export/Import Identity from/into KeyChain

Change-Id: I757f51f1408cf08b9fb1b1927834889fd29c0231
diff --git a/src/security/sec-tpm-osx.hpp b/src/security/sec-tpm-osx.hpp
index c4a4972..251df24 100644
--- a/src/security/sec-tpm-osx.hpp
+++ b/src/security/sec-tpm-osx.hpp
@@ -107,18 +107,20 @@
   bool 
   setACL(const Name& keyName, KeyClass keyClass, int acl, const std::string& appPath);
 
-  // /**
-  //  * verify data (test only)
-  //  * @param keyName the name of key
-  //  * @param pData the data to be verified
-  //  * @param pSig the signature associated with the data
-  //  * @param digestAlgo digest algorithm
-  //  * @return true if signature can be verified, otherwise false
-  //  */
-  // bool 
-  // verifyData(const Name & keyName, const Blob & pData, const Blob & pSig, DigestAlgorithm digestAlgo = DIGEST_ALGORITHM_SHA256);
+protected:
+  /******************************
+   * From TrustedPlatformModule *
+   ******************************/
+  virtual ConstBufferPtr
+  exportPrivateKeyPkcs1FromTpm(const Name& keyName);
 
- private:
+  virtual bool
+  importPrivateKeyPkcs1IntoTpm(const Name& keyName, const uint8_t* buf, size_t size);
+
+  virtual bool
+  importPublicKeyPkcs1IntoTpm(const Name& keyName, const uint8_t* buf, size_t size);
+  
+private:
   class Impl;
   shared_ptr<Impl> m_impl;
 };