9c4fe6
diff --git a/setup.py b/setup.py
9c4fe6
index 7267529..098a6bb 100644
9c4fe6
--- a/setup.py
9c4fe6
+++ b/setup.py
9c4fe6
@@ -37,7 +37,7 @@ requirements = [
9c4fe6
     "idna>=2.0",
9c4fe6
     "pyasn1>=0.1.8",
9c4fe6
     "six>=1.4.1",
9c4fe6
-    "setuptools>=11.3",
9c4fe6
+    "setuptools",
9c4fe6
 ]
9c4fe6
 setup_requirements = []
9c4fe6
 
9c4fe6
diff --git a/src/cryptography/hazmat/backends/__init__.py b/src/cryptography/hazmat/backends/__init__.py
9c4fe6
index 96a431d..256fee3 100644
9c4fe6
--- a/src/cryptography/hazmat/backends/__init__.py
9c4fe6
+++ b/src/cryptography/hazmat/backends/__init__.py
9c4fe6
@@ -17,7 +17,12 @@ def _available_backends():
9c4fe6
 
9c4fe6
     if _available_backends_list is None:
9c4fe6
         _available_backends_list = [
9c4fe6
-            ep.resolve()
9c4fe6
+            # setuptools 11.3 deprecated support for the require parameter to
9c4fe6
+            # load(), and introduced the new resolve() method instead.
9c4fe6
+            # This can be removed if/when we can assume setuptools>=11.3. At
9c4fe6
+            # some point we may wish to add a warning, to push people along,
9c4fe6
+            # but at present this would result in too many warnings.
9c4fe6
+            ep.resolve() if hasattr(ep, "resolve") else ep.load(require=False)
9c4fe6
             for ep in pkg_resources.iter_entry_points(
9c4fe6
                 "cryptography.backends"
9c4fe6
             )