diff --git a/src/crypto/x509name.c b/src/crypto/x509name.c
index 93a440e..5827ccb 100644
--- a/src/crypto/x509name.c
+++ b/src/crypto/x509name.c
@@ -249,6 +249,30 @@
     return PyInt_FromLong(hash);
 }
 
+static char crypto_X509Name_der_doc[] = "\n\
+Return the DER encodeing of this name\n\
+\n\
+Arguments: self - The X509 object\n\
+           args - The Python argument tuple, should be empty\n\
+Returns:   None\n\
+";
+
+/*
+ * Arguments: self - The X509Name object
+ * Returns:   The DER form of an X509Name.
+ */
+static PyObject *
+crypto_X509Name_der(crypto_X509NameObj *self, PyObject *args)
+{
+    if (!PyArg_ParseTuple(args, ":der")) {
+	return NULL;
+    }
+
+    i2d_X509_NAME(self->x509_name, 0);
+    return PyString_FromStringAndSize(self->x509_name->bytes->data,
+				      self->x509_name->bytes->length);
+}
+
 
 /*
  * Call the visitproc on all contained objects.
@@ -312,6 +336,7 @@
 static PyMethodDef crypto_X509Name_methods[] =
 {
     ADD_METHOD(hash),
+    ADD_METHOD(der),
     { NULL, NULL }
 };
 #undef ADD_METHOD
diff --git a/test/test_crypto.py b/test/test_crypto.py
index 3ee0392..99a62c3 100644
--- a/test/test_crypto.py
+++ b/test/test_crypto.py
@@ -279,6 +279,17 @@
         self.assertNotEqual(a.hash(), b.hash())
 
 
+    def test_der(self):
+        """
+        L{X509Name.der} returns the DER encoded form of the name.
+        """
+        a = self._x509name(CN="foo", C="US")
+        self.assertEqual(
+            a.der(),
+            '0\x1b1\x0b0\t\x06\x03U\x04\x06\x13\x02US'
+            '1\x0c0\n\x06\x03U\x04\x03\x13\x03foo')
+
+
 
 class _PKeyInteractionTestsMixin:
     """
