diff --git a/core/api/src/main/java/org/onosproject/store/service/Serializer.java b/core/api/src/main/java/org/onosproject/store/service/Serializer.java
index 466943e..32ae585 100644
--- a/core/api/src/main/java/org/onosproject/store/service/Serializer.java
+++ b/core/api/src/main/java/org/onosproject/store/service/Serializer.java
@@ -16,6 +16,8 @@
 
 package org.onosproject.store.service;
 
+import org.onlab.util.KryoNamespace;
+
 /**
  * Interface for serialization for store artifacts.
  */
@@ -35,4 +37,24 @@
      * @param <T> decoded type
      */
     <T> T decode(byte[] bytes);
+
+    /**
+     * Creates a new Serializer instance from a KryoNamespace.
+     *
+     * @param kryo kryo namespace
+     * @return Serializer instance
+     */
+    public static Serializer using(KryoNamespace kryo) {
+        return new Serializer() {
+            @Override
+            public <T> byte[] encode(T object) {
+                return kryo.serialize(object);
+            }
+
+            @Override
+            public <T> T decode(byte[] bytes) {
+                return kryo.deserialize(bytes);
+            }
+        };
+    }
 }
\ No newline at end of file
