diff --git a/src/data.cpp b/src/data.cpp
index 649eb7a..e982700 100644
--- a/src/data.cpp
+++ b/src/data.cpp
@@ -21,7 +21,7 @@
 
 #include "data.hpp"
 #include "encoding/block-helpers.hpp"
-#include "util/digest.hpp"
+#include "util/sha256.hpp"
 
 namespace ndn {
 
diff --git a/src/name-component.cpp b/src/name-component.cpp
index 34a3470..045d5f2 100644
--- a/src/name-component.cpp
+++ b/src/name-component.cpp
@@ -27,7 +27,7 @@
 
 #include "encoding/block-helpers.hpp"
 #include "encoding/encoding-buffer.hpp"
-#include "util/digest.hpp"
+#include "util/sha256.hpp"
 #include "util/string-helper.hpp"
 
 #include <boost/algorithm/string/trim.hpp>
diff --git a/src/security/v1/key-chain.cpp b/src/security/v1/key-chain.cpp
index 9efcb4a..8c9a56a 100644
--- a/src/security/v1/key-chain.cpp
+++ b/src/security/v1/key-chain.cpp
@@ -25,7 +25,7 @@
 #include "../signing-helpers.hpp"
 
 #include "../../util/config-file.hpp"
-#include "../../util/digest.hpp"
+#include "../../util/sha256.hpp"
 
 #include "sec-public-info-sqlite3.hpp"
 
diff --git a/src/security/v1/public-key.cpp b/src/security/v1/public-key.cpp
index 7ada249..9e245e9 100644
--- a/src/security/v1/public-key.cpp
+++ b/src/security/v1/public-key.cpp
@@ -25,7 +25,7 @@
 #include "public-key.hpp"
 
 #include "../../encoding/oid.hpp"
-#include "../../util/digest.hpp"
+#include "../../util/sha256.hpp"
 #include "cryptopp.hpp"
 
 namespace ndn {
diff --git a/src/security/v2/key-chain.cpp b/src/security/v2/key-chain.cpp
index c6e044c..2e5e4ad 100644
--- a/src/security/v2/key-chain.cpp
+++ b/src/security/v2/key-chain.cpp
@@ -22,8 +22,8 @@
 #include "key-chain.hpp"
 
 #include "../../util/config-file.hpp"
-#include "../../util/digest.hpp"
 #include "../../util/logger.hpp"
+#include "../../util/sha256.hpp"
 
 #include "../pib/pib-sqlite3.hpp"
 #include "../pib/pib-memory.hpp"
diff --git a/src/security/validator.cpp b/src/security/validator.cpp
index 4862d76..bb8ffda 100644
--- a/src/security/validator.cpp
+++ b/src/security/validator.cpp
@@ -20,8 +20,8 @@
  */
 
 #include "validator.hpp"
-#include "../util/digest.hpp"
 #include "../lp/tags.hpp"
+#include "../util/sha256.hpp"
 
 #include "v1/cryptopp.hpp"
 
diff --git a/src/util/crypto.hpp b/src/util/crypto.hpp
deleted file mode 100644
index 281e2f2..0000000
--- a/src/util/crypto.hpp
+++ /dev/null
@@ -1,60 +0,0 @@
-/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2013-2017 Regents of the University of California.
- *
- * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
- *
- * ndn-cxx library is free software: you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free Software
- * Foundation, either version 3 of the License, or (at your option) any later version.
- *
- * ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- *
- * You should have received copies of the GNU General Public License and GNU Lesser
- * General Public License along with ndn-cxx, e.g., in COPYING.md file.  If not, see
- * <http://www.gnu.org/licenses/>.
- *
- * See AUTHORS.md for complete list of ndn-cxx authors and contributors.
- */
-
-#ifndef NDN_UTIL_CRYPTO_HPP
-#define NDN_UTIL_CRYPTO_HPP
-
-/**
- * @file
- * @deprecated use <ndn-cxx/util/digest.hpp>
- */
-
-#include "digest.hpp"
-
-namespace ndn {
-namespace crypto {
-
-/**
- * @brief number of octets in a SHA256 digest
- * @deprecated use ndn::util::Sha256::DIGEST_SIZE
- */
-DEPRECATED(const size_t SHA256_DIGEST_SIZE) = util::Sha256::DIGEST_SIZE;
-
-/**
- * @brief Compute the SHA-256 digest of data.
- *
- * @param data Pointer to the input byte array.
- * @param dataLength The length of data.
- * @return A pointer to a buffer of SHA256_DIGEST_SIZE bytes.
- *
- * @deprecated use ndn::util::Sha256::computeDigest()
- */
-DEPRECATED()
-inline ConstBufferPtr
-computeSha256Digest(const uint8_t* data, size_t dataLength)
-{
-  return util::Sha256::computeDigest(data, dataLength);
-}
-
-} // namespace crypto
-} // namespace ndn
-
-#endif // NDN_UTIL_CRYPTO_HPP
diff --git a/src/util/digest.cpp b/src/util/sha256.cpp
similarity index 99%
rename from src/util/digest.cpp
rename to src/util/sha256.cpp
index 8053fdb..7aeea64 100644
--- a/src/util/digest.cpp
+++ b/src/util/sha256.cpp
@@ -19,7 +19,7 @@
  * See AUTHORS.md for complete list of ndn-cxx authors and contributors.
  */
 
-#include "digest.hpp"
+#include "sha256.hpp"
 #include "string-helper.hpp"
 #include "../security/detail/openssl.hpp"
 #include "../security/transform/digest-filter.hpp"
diff --git a/src/util/digest.hpp b/src/util/sha256.hpp
similarity index 97%
rename from src/util/digest.hpp
rename to src/util/sha256.hpp
index 12dbd96..d729e90 100644
--- a/src/util/digest.hpp
+++ b/src/util/sha256.hpp
@@ -19,8 +19,8 @@
  * See AUTHORS.md for complete list of ndn-cxx authors and contributors.
  */
 
-#ifndef NDN_UTIL_DIGEST_HPP
-#define NDN_UTIL_DIGEST_HPP
+#ifndef NDN_UTIL_SHA256_HPP
+#define NDN_UTIL_SHA256_HPP
 
 #include "../encoding/block.hpp"
 #include "../encoding/buffer-stream.hpp"
@@ -181,4 +181,4 @@
 } // namespace util
 } // namespace ndn
 
-#endif // NDN_UTIL_DIGEST_HPP
+#endif // NDN_UTIL_SHA256_HPP
diff --git a/tests/unit-tests/data.t.cpp b/tests/unit-tests/data.t.cpp
index e38cd98..48f4f82 100644
--- a/tests/unit-tests/data.t.cpp
+++ b/tests/unit-tests/data.t.cpp
@@ -27,7 +27,7 @@
 #include "security/transform/step-source.hpp"
 #include "security/transform/stream-sink.hpp"
 #include "security/verification-helpers.hpp"
-#include "util/digest.hpp"
+#include "util/sha256.hpp"
 
 #include "boost-test.hpp"
 #include "identity-management-fixture.hpp"
diff --git a/tests/unit-tests/exclude.t.cpp b/tests/unit-tests/exclude.t.cpp
index a6823c6..715f747 100644
--- a/tests/unit-tests/exclude.t.cpp
+++ b/tests/unit-tests/exclude.t.cpp
@@ -20,7 +20,7 @@
  */
 
 #include "exclude.hpp"
-#include "util/digest.hpp"
+#include "util/sha256.hpp"
 
 #include "boost-test.hpp"
 
diff --git a/tests/unit-tests/ims/in-memory-storage.t.cpp b/tests/unit-tests/ims/in-memory-storage.t.cpp
index 691321a..41082c6 100644
--- a/tests/unit-tests/ims/in-memory-storage.t.cpp
+++ b/tests/unit-tests/ims/in-memory-storage.t.cpp
@@ -25,7 +25,7 @@
 #include "ims/in-memory-storage-lru.hpp"
 #include "ims/in-memory-storage-persistent.hpp"
 #include "security/signature-sha256-with-rsa.hpp"
-#include "util/digest.hpp"
+#include "util/sha256.hpp"
 
 #include "boost-test.hpp"
 #include "../make-interest-data.hpp"
diff --git a/tests/unit-tests/security/digest-sha256.t.cpp b/tests/unit-tests/security/digest-sha256.t.cpp
index 6facb98..d49b5b4 100644
--- a/tests/unit-tests/security/digest-sha256.t.cpp
+++ b/tests/unit-tests/security/digest-sha256.t.cpp
@@ -21,7 +21,7 @@
 
 #include "security/digest-sha256.hpp"
 #include "security/validator.hpp"
-#include "util/digest.hpp"
+#include "util/sha256.hpp"
 #include "util/string-helper.hpp"
 
 #include "identity-management-fixture.hpp"
diff --git a/tests/unit-tests/util/digest.t.cpp b/tests/unit-tests/util/sha256.t.cpp
similarity index 99%
rename from tests/unit-tests/util/digest.t.cpp
rename to tests/unit-tests/util/sha256.t.cpp
index d8614c1..6e42201 100644
--- a/tests/unit-tests/util/digest.t.cpp
+++ b/tests/unit-tests/util/sha256.t.cpp
@@ -19,7 +19,7 @@
  * See AUTHORS.md for complete list of ndn-cxx authors and contributors.
  */
 
-#include "util/digest.hpp"
+#include "util/sha256.hpp"
 #include "util/string-helper.hpp"
 #include "encoding/endian.hpp"
 
