add name assignment templates

Change-Id: Ia42d4431011b9eae1b5f888b07774cd170719008
diff --git a/src/name-assignments/assignment-random.cpp b/src/name-assignments/assignment-random.cpp
new file mode 100644
index 0000000..b713665
--- /dev/null
+++ b/src/name-assignments/assignment-random.cpp
@@ -0,0 +1,29 @@
+//
+// Created by Tyler on 10/6/20.
+//
+
+#include "assignment-random.hpp"
+#include <ndn-cxx/util/random.hpp>
+
+namespace ndn {
+namespace ndncert {
+
+_LOG_INIT(ndncert.assignment.random);
+NDNCERT_REGISTER_FUNCFACTORY(AssignmentRandom, "random");
+
+AssignmentRandom::AssignmentRandom()
+    : NameAssignmentFuncFactory("random")
+{
+}
+
+NameAssignmentFunc
+AssignmentRandom::getFunction(const std::string &factoryParam) {
+  return [](const std::vector<std::tuple<std::string, std::string>>){
+        std::vector<PartialName> names;
+        names.emplace_back(to_string(random::generateSecureWord64()));
+        return names;
+  };
+}
+
+}
+}