diff --git a/tools/ndnsec-cert-dump.hpp b/tools/ndnsec/cert-dump.hpp
similarity index 97%
rename from tools/ndnsec-cert-dump.hpp
rename to tools/ndnsec/cert-dump.hpp
index 95b1320..fd1313a 100644
--- a/tools/ndnsec-cert-dump.hpp
+++ b/tools/ndnsec/cert-dump.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_CERT_DUMP_HPP
-#define NDNSEC_CERT_DUMP_HPP
+#ifndef NDN_TOOLS_NDNSEC_CERT_DUMP_HPP
+#define NDN_TOOLS_NDNSEC_CERT_DUMP_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_cert_dump(int argc, char** argv)
@@ -203,4 +203,4 @@
   return 0;
 }
 
-#endif //NDNSEC_CERT_DUMP_HPP
+#endif // NDN_TOOLS_NDNSEC_CERT_DUMP_HPP
diff --git a/tools/ndnsec-cert-gen.hpp b/tools/ndnsec/cert-gen.hpp
similarity index 97%
rename from tools/ndnsec-cert-gen.hpp
rename to tools/ndnsec/cert-gen.hpp
index 212b7b5..64e7469 100644
--- a/tools/ndnsec-cert-gen.hpp
+++ b/tools/ndnsec/cert-gen.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_CERT_GEN_HPP
-#define NDNSEC_CERT_GEN_HPP
+#ifndef NDN_TOOLS_NDNSEC_CERT_GEN_HPP
+#define NDN_TOOLS_NDNSEC_CERT_GEN_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_cert_gen(int argc, char** argv)
@@ -232,4 +232,4 @@
   return 0;
 }
 
-#endif //NDNSEC_CERT_GEN_HPP
+#endif // NDN_TOOLS_NDNSEC_CERT_GEN_HPP
diff --git a/tools/ndnsec-cert-install.hpp b/tools/ndnsec/cert-install.hpp
similarity index 97%
rename from tools/ndnsec-cert-install.hpp
rename to tools/ndnsec/cert-install.hpp
index 626dc62..94a73a7 100644
--- a/tools/ndnsec-cert-install.hpp
+++ b/tools/ndnsec/cert-install.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_CERT_INSTALL_HPP
-#define NDNSEC_CERT_INSTALL_HPP
+#ifndef NDN_TOOLS_NDNSEC_CERT_INSTALL_HPP
+#define NDN_TOOLS_NDNSEC_CERT_INSTALL_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 
 class HttpException : public std::runtime_error
@@ -232,4 +232,4 @@
   return 0;
 }
 
-#endif //NDNSEC_CERT_INSTALL_HPP
+#endif // NDN_TOOLS_NDNSEC_CERT_INSTALL_HPP
diff --git a/tools/ndnsec-cert-revoke.hpp b/tools/ndnsec/cert-revoke.hpp
similarity index 96%
rename from tools/ndnsec-cert-revoke.hpp
rename to tools/ndnsec/cert-revoke.hpp
index 29b73c3..7056ca6 100644
--- a/tools/ndnsec-cert-revoke.hpp
+++ b/tools/ndnsec/cert-revoke.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_CERT_REVOKE_HPP
-#define NDNSEC_CERT_REVOKE_HPP
+#ifndef NDN_TOOLS_NDNSEC_CERT_REVOKE_HPP
+#define NDN_TOOLS_NDNSEC_CERT_REVOKE_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_cert_revoke(int argc, char** argv)
@@ -188,4 +188,4 @@
   return 0;
 }
 
-#endif //NDNSEC_CERT_REVOKE_HPP
+#endif // NDN_TOOLS_NDNSEC_CERT_REVOKE_HPP
diff --git a/tools/ndnsec-delete.hpp b/tools/ndnsec/delete.hpp
similarity index 95%
rename from tools/ndnsec-delete.hpp
rename to tools/ndnsec/delete.hpp
index a79ac63..629440f 100644
--- a/tools/ndnsec-delete.hpp
+++ b/tools/ndnsec/delete.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_DELETE_HPP
-#define NDNSEC_DELETE_HPP
+#ifndef NDN_TOOLS_NDNSEC_DELETE_HPP
+#define NDN_TOOLS_NDNSEC_DELETE_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_delete(int argc, char** argv)
@@ -108,4 +108,4 @@
   return 0;
 }
 
-#endif //NDNSEC_DELETE_HPP
+#endif // NDN_TOOLS_NDNSEC_DELETE_HPP
diff --git a/tools/ndnsec-dsk-gen.hpp b/tools/ndnsec/dsk-gen.hpp
similarity index 97%
rename from tools/ndnsec-dsk-gen.hpp
rename to tools/ndnsec/dsk-gen.hpp
index 5c4f7f0..c07afab 100644
--- a/tools/ndnsec-dsk-gen.hpp
+++ b/tools/ndnsec/dsk-gen.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_DSK_GEN_HPP
-#define NDNSEC_DSK_GEN_HPP
+#ifndef NDN_TOOLS_NDNSEC_DSK_GEN_HPP
+#define NDN_TOOLS_NDNSEC_DSK_GEN_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_dsk_gen(int argc, char** argv)
@@ -181,4 +181,4 @@
   }
 }
 
-#endif //NDNSEC_DSK_GEN_HPP
+#endif // NDN_TOOLS_NDNSEC_DSK_GEN_HPP
diff --git a/tools/ndnsec-export.hpp b/tools/ndnsec/export.hpp
similarity index 96%
rename from tools/ndnsec-export.hpp
rename to tools/ndnsec/export.hpp
index 82ca1aa..aab60ae 100644
--- a/tools/ndnsec-export.hpp
+++ b/tools/ndnsec/export.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_EXPORT_HPP
-#define NDNSEC_EXPORT_HPP
+#ifndef NDN_TOOLS_NDNSEC_EXPORT_HPP
+#define NDN_TOOLS_NDNSEC_EXPORT_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_export(int argc, char** argv)
@@ -132,4 +132,4 @@
     }
 }
 
-#endif //NDNSEC_EXPORT_HPP
+#endif // NDN_TOOLS_NDNSEC_EXPORT_HPP
diff --git a/tools/ndnsec-get-default.hpp b/tools/ndnsec/get-default.hpp
similarity index 95%
rename from tools/ndnsec-get-default.hpp
rename to tools/ndnsec/get-default.hpp
index 594c106..9af33cb 100644
--- a/tools/ndnsec-get-default.hpp
+++ b/tools/ndnsec/get-default.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_GET_DEFAULT_HPP
-#define NDNSEC_GET_DEFAULT_HPP
+#ifndef NDN_TOOLS_NDNSEC_GET_DEFAULT_HPP
+#define NDN_TOOLS_NDNSEC_GET_DEFAULT_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 
 int
@@ -145,4 +145,4 @@
     }
 }
 
-#endif //NDNSEC_GET_DEFAULT_HPP
+#endif // NDN_TOOLS_NDNSEC_GET_DEFAULT_HPP
diff --git a/tools/ndnsec-import.hpp b/tools/ndnsec/import.hpp
similarity index 95%
rename from tools/ndnsec-import.hpp
rename to tools/ndnsec/import.hpp
index 48296dd..f8bfedf 100644
--- a/tools/ndnsec-import.hpp
+++ b/tools/ndnsec/import.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_IMPORT_HPP
-#define NDNSEC_IMPORT_HPP
+#ifndef NDN_TOOLS_NDNSEC_IMPORT_HPP
+#define NDN_TOOLS_NDNSEC_IMPORT_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_import(int argc, char** argv)
@@ -112,4 +112,4 @@
     }
 }
 
-#endif //NDNSEC_IMPORT_HPP
+#endif // NDN_TOOLS_NDNSEC_IMPORT_HPP
diff --git a/tools/ndnsec-key-gen.hpp b/tools/ndnsec/key-gen.hpp
similarity index 96%
rename from tools/ndnsec-key-gen.hpp
rename to tools/ndnsec/key-gen.hpp
index efc63f0..1633855 100644
--- a/tools/ndnsec-key-gen.hpp
+++ b/tools/ndnsec/key-gen.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_KEY_GEN_HPP
-#define NDNSEC_KEY_GEN_HPP
+#ifndef NDN_TOOLS_NDNSEC_KEY_GEN_HPP
+#define NDN_TOOLS_NDNSEC_KEY_GEN_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_key_gen(int argc, char** argv)
@@ -123,4 +123,4 @@
   return 0;
 }
 
-#endif // NDNSEC_KEY_GEN_HPP
+#endif // NDN_TOOLS_NDNSEC_KEY_GEN_HPP
diff --git a/tools/ndnsec-list.hpp b/tools/ndnsec/list.hpp
similarity index 97%
rename from tools/ndnsec-list.hpp
rename to tools/ndnsec/list.hpp
index 4194cd3..f40ab5e 100644
--- a/tools/ndnsec-list.hpp
+++ b/tools/ndnsec/list.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_LIST_HPP
-#define NDNSEC_LIST_HPP
+#ifndef NDN_TOOLS_NDNSEC_LIST_HPP
+#define NDN_TOOLS_NDNSEC_LIST_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 void
 printCertificate(ndn::KeyChain& keyChain,
@@ -171,4 +171,4 @@
   return 0;
 }
 
-#endif // NDNSEC_LIST_HPP
+#endif // NDN_TOOLS_NDNSEC_LIST_HPP
diff --git a/tools/ndnsec.cpp b/tools/ndnsec/main.cpp
similarity index 87%
rename from tools/ndnsec.cpp
rename to tools/ndnsec/main.cpp
index 25aee99..ae81752 100644
--- a/tools/ndnsec.cpp
+++ b/tools/ndnsec/main.cpp
@@ -22,24 +22,25 @@
  */
 
 #include "version.hpp"
-#include "ndnsec-util.hpp"
-#include "ndnsec-list.hpp"
-#include "ndnsec-get-default.hpp"
-#include "ndnsec-set-default.hpp"
-#include "ndnsec-key-gen.hpp"
-#include "ndnsec-dsk-gen.hpp"
-#include "ndnsec-sign-req.hpp"
-#include "ndnsec-cert-gen.hpp"
-#include "ndnsec-cert-revoke.hpp"
-#include "ndnsec-cert-dump.hpp"
-#include "ndnsec-cert-install.hpp"
-#include "ndnsec-export.hpp"
-#include "ndnsec-import.hpp"
-#include "ndnsec-delete.hpp"
-#include "ndnsec-sig-verify.hpp"
-#include "ndnsec-set-acl.hpp"
-#include "ndnsec-unlock-tpm.hpp"
-#include "ndnsec-op-tool.hpp"
+
+#include "util.hpp"
+#include "list.hpp"
+#include "get-default.hpp"
+#include "set-default.hpp"
+#include "key-gen.hpp"
+#include "dsk-gen.hpp"
+#include "sign-req.hpp"
+#include "cert-gen.hpp"
+#include "cert-revoke.hpp"
+#include "cert-dump.hpp"
+#include "cert-install.hpp"
+#include "export.hpp"
+#include "import.hpp"
+#include "delete.hpp"
+#include "sig-verify.hpp"
+#include "set-acl.hpp"
+#include "unlock-tpm.hpp"
+#include "op-tool.hpp"
 
 using namespace ndn;
 
diff --git a/tools/ndnsec-op-tool.hpp b/tools/ndnsec/op-tool.hpp
similarity index 94%
rename from tools/ndnsec-op-tool.hpp
rename to tools/ndnsec/op-tool.hpp
index f401909..d04d886 100644
--- a/tools/ndnsec-op-tool.hpp
+++ b/tools/ndnsec/op-tool.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_OP_TOOL_HPP
-#define NDNSEC_OP_TOOL_HPP
+#ifndef NDN_TOOLS_NDNSEC_OP_TOOL_HPP
+#define NDN_TOOLS_NDNSEC_OP_TOOL_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 using namespace std;
 
@@ -94,4 +94,4 @@
   return 0;
 }
 
-#endif //NDNSEC_OP_TOOL_HPP
+#endif // NDN_TOOLS_NDNSEC_OP_TOOL_HPP
diff --git a/tools/ndnsec-set-acl.hpp b/tools/ndnsec/set-acl.hpp
similarity index 94%
rename from tools/ndnsec-set-acl.hpp
rename to tools/ndnsec/set-acl.hpp
index 4b9b1c8..d373223 100644
--- a/tools/ndnsec-set-acl.hpp
+++ b/tools/ndnsec/set-acl.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_SET_ACL_HPP
-#define NDNSEC_SET_ACL_HPP
+#ifndef NDN_TOOLS_NDNSEC_SET_ACL_HPP
+#define NDN_TOOLS_NDNSEC_SET_ACL_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_set_acl(int argc, char** argv)
@@ -85,4 +85,4 @@
   return 0;
 }
 
-#endif //NDNSEC_SET_ACL_HPP
+#endif // NDN_TOOLS_NDNSEC_SET_ACL_HPP
diff --git a/tools/ndnsec-set-default.hpp b/tools/ndnsec/set-default.hpp
similarity index 95%
rename from tools/ndnsec-set-default.hpp
rename to tools/ndnsec/set-default.hpp
index 15a9530..765471d 100644
--- a/tools/ndnsec-set-default.hpp
+++ b/tools/ndnsec/set-default.hpp
@@ -21,8 +21,8 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_SET_DEFAULT_HPP
-#define NDNSEC_SET_DEFAULT_HPP
+#ifndef NDN_TOOLS_NDNSEC_SET_DEFAULT_HPP
+#define NDN_TOOLS_NDNSEC_SET_DEFAULT_HPP
 
 int
 ndnsec_set_default(int argc, char** argv)
@@ -107,4 +107,4 @@
 
   return 1;
 }
-#endif //NDNSEC_SET_DEFAULT_HPP
+#endif // NDN_TOOLS_NDNSEC_SET_DEFAULT_HPP
diff --git a/tools/ndnsec-sig-verify.hpp b/tools/ndnsec/sig-verify.hpp
similarity index 96%
rename from tools/ndnsec-sig-verify.hpp
rename to tools/ndnsec/sig-verify.hpp
index 21436e7..e49387a 100644
--- a/tools/ndnsec-sig-verify.hpp
+++ b/tools/ndnsec/sig-verify.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_SIG_VERIFY_HPP
-#define NDNSEC_SIG_VERIFY_HPP
+#ifndef NDN_TOOLS_NDNSEC_SIG_VERIFY_HPP
+#define NDN_TOOLS_NDNSEC_SIG_VERIFY_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 // using namespace ndn;
 // namespace po = boost::program_options;
@@ -125,4 +125,4 @@
   //   }
 }
 
-#endif //NDNSEC_SIG_VERIFY_HPP
+#endif // NDN_TOOLS_NDNSEC_SIG_VERIFY_HPP
diff --git a/tools/ndnsec-sign-req.hpp b/tools/ndnsec/sign-req.hpp
similarity index 94%
rename from tools/ndnsec-sign-req.hpp
rename to tools/ndnsec/sign-req.hpp
index 55ad4b1..e0db0f3 100644
--- a/tools/ndnsec-sign-req.hpp
+++ b/tools/ndnsec/sign-req.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_SIGN_REQ_HPP
-#define NDNSEC_SIGN_REQ_HPP
+#ifndef NDN_TOOLS_NDNSEC_SIGN_REQ_HPP
+#define NDN_TOOLS_NDNSEC_SIGN_REQ_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_sign_req(int argc, char** argv)
@@ -96,4 +96,4 @@
   }
 }
 
-#endif // NDNSEC_SIGN_REQ_HPP
+#endif // NDN_TOOLS_NDNSEC_SIGN_REQ_HPP
diff --git a/tools/ndnsec-unlock-tpm.hpp b/tools/ndnsec/unlock-tpm.hpp
similarity index 93%
rename from tools/ndnsec-unlock-tpm.hpp
rename to tools/ndnsec/unlock-tpm.hpp
index 3104f86..7d2043b 100644
--- a/tools/ndnsec-unlock-tpm.hpp
+++ b/tools/ndnsec/unlock-tpm.hpp
@@ -21,10 +21,10 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_UNLOCK_TPM_HPP
-#define NDNSEC_UNLOCK_TPM_HPP
+#ifndef NDN_TOOLS_NDNSEC_UNLOCK_TPM_HPP
+#define NDN_TOOLS_NDNSEC_UNLOCK_TPM_HPP
 
-#include "ndnsec-util.hpp"
+#include "util.hpp"
 
 int
 ndnsec_unlock_tpm(int argc, char** argv)
@@ -80,4 +80,4 @@
     }
 }
 
-#endif //NDNSEC_UNLOCK_TPM_HPP
+#endif // NDN_TOOLS_NDNSEC_UNLOCK_TPM_HPP
diff --git a/tools/ndnsec-util.hpp b/tools/ndnsec/util.hpp
similarity index 97%
rename from tools/ndnsec-util.hpp
rename to tools/ndnsec/util.hpp
index 14ddf48..56cbaa6 100644
--- a/tools/ndnsec-util.hpp
+++ b/tools/ndnsec/util.hpp
@@ -21,8 +21,8 @@
  * @author Yingdi Yu <http://irl.cs.ucla.edu/~yingdi/>
  */
 
-#ifndef NDNSEC_UTIL_HPP
-#define NDNSEC_UTIL_HPP
+#ifndef NDN_TOOLS_NDNSEC_UTIL_HPP
+#define NDN_TOOLS_NDNSEC_UTIL_HPP
 
 #include <iostream>
 #include <fstream>
@@ -222,4 +222,4 @@
   return new AccumulatorType<T>(store);
 }
 
-#endif // NDNSEC_UTIL_HPP
+#endif // NDN_TOOLS_NDNSEC_UTIL_HPP
