diff --git a/cryptography/hazmat/primitives/asymmetric/ec.py b/cryptography/hazmat/primitives/asymmetric/ec.py
index 29ab67d..1e49ad7 100644
--- a/cryptography/hazmat/primitives/asymmetric/ec.py
+++ b/cryptography/hazmat/primitives/asymmetric/ec.py
@@ -47,9 +47,9 @@
 
 
 class EllipticCurvePrivateNumbers(object):
-    def __init__(self, private_key, public_numbers):
-        if not isinstance(private_key, six.integer_types):
-            raise TypeError("private_key must be an integer.")
+    def __init__(self, private_value, public_numbers):
+        if not isinstance(private_value, six.integer_types):
+            raise TypeError("private_value must be an integer.")
 
         if not isinstance(public_numbers, EllipticCurvePublicNumbers):
             raise TypeError(
@@ -57,12 +57,12 @@
                 "instance."
             )
 
-        self._private_key = private_key
+        self._private_value = private_value
         self._public_numbers = public_numbers
 
     @property
-    def private_key(self):
-        return self._private_key
+    def private_value(self):
+        return self._private_value
 
     @property
     def public_numbers(self):
diff --git a/docs/hazmat/primitives/asymmetric/ec.rst b/docs/hazmat/primitives/asymmetric/ec.rst
index 4b0d30c..f88b965 100644
--- a/docs/hazmat/primitives/asymmetric/ec.rst
+++ b/docs/hazmat/primitives/asymmetric/ec.rst
@@ -6,7 +6,7 @@
 .. currentmodule:: cryptography.hazmat.primitives.asymmetric.ec
 
 
-.. class:: EllipticCurvePrivateNumbers(private_key, public_numbers)
+.. class:: EllipticCurvePrivateNumbers(private_value, public_numbers)
 
     .. versionadded:: 0.5
 
@@ -19,11 +19,11 @@
         The :class:`EllipticCurvePublicNumbers` which makes up the EC public
         key associated with this EC private key.
 
-    .. attribute:: private_key
+    .. attribute:: private_value
 
         :type: int
 
-        The private key.
+        The private value.
 
 
 .. class:: EllipticCurvePublicNumbers(x, y, curve)
diff --git a/tests/hazmat/primitives/test_ec.py b/tests/hazmat/primitives/test_ec.py
index 9b31a2a..f61b4a9 100644
--- a/tests/hazmat/primitives/test_ec.py
+++ b/tests/hazmat/primitives/test_ec.py
@@ -35,7 +35,7 @@
             )
         )
 
-        assert numbers.private_key == 1
+        assert numbers.private_value == 1
         assert numbers.public_numbers.x == 2
         assert numbers.public_numbers.y == 3
         assert isinstance(numbers.public_numbers.curve, DummyCurve)
