diff --git a/bob/bio/base/config/algorithm/distance_hamming.py b/bob/bio/base/config/algorithm/distance_hamming.py
new file mode 100644
index 0000000000000000000000000000000000000000..a163dd4a94a96b7a013dce41eca9e6e927346e8e
--- /dev/null
+++ b/bob/bio/base/config/algorithm/distance_hamming.py
@@ -0,0 +1,9 @@
+""" This script calculates the Hamming distance (proportion of mis-matching corresponding bits) between two binary arrays """
+
+import bob.bio.base
+import scipy.spatial.distance
+
+algorithm = bob.bio.base.algorithm.Distance(
+    distance_function = scipy.spatial.distance.hamming,
+    is_distance_function = True
+)
diff --git a/setup.py b/setup.py
index ca69ef786d52d4959fa331a1a0b83a735202c9a0..5b500cbd01d0d2edd86879c1c8633bb6418149ad 100644
--- a/setup.py
+++ b/setup.py
@@ -106,6 +106,7 @@ setup(
         'dummy             = bob.bio.base.test.dummy.algorithm:algorithm', # for test purposes only
         'distance-euclidean = bob.bio.base.config.algorithm.distance_euclidean:algorithm',
         'distance-cosine   = bob.bio.base.config.algorithm.distance_cosine:algorithm',
+        'distance-hamming   = bob.bio.base.config.algorithm.distance_hamming:algorithm',
         'pca               = bob.bio.base.config.algorithm.pca:algorithm',
         'lda               = bob.bio.base.config.algorithm.lda:algorithm',
         'pca+lda           = bob.bio.base.config.algorithm.pca_lda:algorithm',