aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/cryptography/hazmat/backends/commoncrypto/backend.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/cryptography/hazmat/backends/commoncrypto/backend.py b/src/cryptography/hazmat/backends/commoncrypto/backend.py
index 315d67d8..1205b6a6 100644
--- a/src/cryptography/hazmat/backends/commoncrypto/backend.py
+++ b/src/cryptography/hazmat/backends/commoncrypto/backend.py
@@ -104,7 +104,12 @@ class Backend(object):
return _HMACContext(self, key, algorithm)
def cipher_supported(self, cipher, mode):
- return (type(cipher), type(mode)) in self._cipher_registry
+ # In OS X 10.11.2-5 (as of this writing) CommonCrypto has a bug with
+ # Blowfish key lengths less than 64-bit. Filed as radar://26636600
+ if isinstance(cipher, Blowfish) and len(cipher.key) < 8:
+ return False
+ else:
+ return (type(cipher), type(mode)) in self._cipher_registry
def create_symmetric_encryption_ctx(self, cipher, mode):
if isinstance(mode, GCM):