diff --git a/.gitmodules b/.gitmodules
index acb3f1c878d712c23aebaaa262800a66d2725acf..513216fa884eca8b1a0867097a9d32d4d638955d 100755
--- a/.gitmodules
+++ b/.gitmodules
@@ -2,6 +2,12 @@
 	path = libdap
 	url = https://github.com/kelvinblockchain/libdap
 	branch = master
+
+[submodule "libdap-crypto"]
+	path = libdap-crypto
+	url = https://github.com/kelvinblockchain/libdap-crypto
+	branch = master
+
 [submodule "test/libdap-test"]
 	path = test/libdap-test
 	url = https://github.com/kelvinblockchain/libdap-test
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9b39c3329dca5cdbe0bcef301a301312593ead5f..223f7fda03d4307b77dfeb1a6d143e50c98bcd7f 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -13,6 +13,9 @@ if(NOT (${SUBMODULES_NO_BUILD} MATCHES ON))
     if ( NOT ( TARGET dap_core ) )
         add_subdirectory(libdap)
     endif()
+    if ( NOT ( TARGET dap_crypto ) )
+        add_subdirectory(libdap-crypto)
+    endif()
     enable_testing()
     add_subdirectory(test)
 endif()
@@ -22,5 +25,5 @@ file(GLOB CORE_SERVER_HEADERS *.h)
 
 add_library(${PROJECT_NAME} STATIC ${CORE_SERVER_SOURCES} ${CORE_SERVER_HEADERS})
 
-target_link_libraries(${PROJECT_NAME} pthread ev memcached dap_crypto)
+target_link_libraries(${PROJECT_NAME} pthread ev memcached dap_core dap_crypto)
 target_include_directories(${PROJECT_NAME} INTERFACE .)