summaryrefslogtreecommitdiff
path: root/paramiko/pkey.py
diff options
context:
space:
mode:
authorJeff Forcier <jeff@bitprophet.org>2017-06-06 17:35:49 -0700
committerJeff Forcier <jeff@bitprophet.org>2017-06-06 17:35:49 -0700
commit86688c1b9d37dd75f99b6eefb00200a1abb4cf51 (patch)
tree5949d4db4e4a4f4070d52c5cc20a83f3d413b152 /paramiko/pkey.py
parentd6e57d34bafb65c6ce62a022d1b509f35cf82d49 (diff)
downloadparamiko-86688c1b9d37dd75f99b6eefb00200a1abb4cf51.tar.gz
Hand-picked backport of #912, fixes #741
Diffstat (limited to 'paramiko/pkey.py')
-rw-r--r--paramiko/pkey.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/paramiko/pkey.py b/paramiko/pkey.py
index f5b0cd18..35a26fc7 100644
--- a/paramiko/pkey.py
+++ b/paramiko/pkey.py
@@ -48,6 +48,12 @@ class PKey(object):
'blocksize': 16,
'mode': modes.CBC
},
+ 'AES-256-CBC': {
+ 'cipher': algorithms.AES,
+ 'keysize': 32,
+ 'blocksize': 16,
+ 'mode': modes.CBC
+ },
'DES-EDE3-CBC': {
'cipher': algorithms.TripleDES,
'keysize': 24,
@@ -344,13 +350,13 @@ class PKey(object):
"""
with open(filename, 'w') as f:
os.chmod(filename, o600)
- self._write_private_key(f, key, format)
+ self._write_private_key(f, key, format, password=password)
def _write_private_key(self, f, key, format, password=None):
if password is None:
encryption = serialization.NoEncryption()
else:
- encryption = serialization.BestEncryption(password)
+ encryption = serialization.BestAvailableEncryption(b(password))
f.write(key.private_bytes(
serialization.Encoding.PEM,