Paramiko/cryptography deprecation warnings: CryptographyDeprecationWarning: encode_point has been deprecated on EllipticCurvePublicNumbers

mbenhalima picture mbenhalima · Mar 4, 2019 · Viewed 10.6k times · Source

I keep getting the following deprecation warnings when doing simple SSH connections:

2019-03-04 02:21:14 [transport] INFO : Connected (version 2.0, client OpenSSH_7.4)
/usr/local/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:39: 
  CryptographyDeprecationWarning: encode_point has been deprecated 
  on EllipticCurvePublicNumbers and will be removed in a future 
  version. Please use EllipticCurvePublicKey.public_bytes to obtain 
  both compressed and uncompressed point encoding.
m.add_string(self.Q_C.public_numbers().encode_point())
/usr/local/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:96: 
  CryptographyDeprecationWarning: Support for unsafe construction of 
  public numbers from encoded data will be removed in a future version. 
  Please use EllipticCurvePublicKey.from_encoded_point
  self.curve, Q_S_bytes
/usr/local/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:111: 
CryptographyDeprecationWarning: encode_point has been deprecated on 
   EllipticCurvePublicNumbers and will be removed in a future version. 
   Please use EllipticCurvePublicKey.public_bytes to obtain both 
   compressed and uncompressed point encoding.
hm.add_string(self.Q_C.public_numbers().encode_point())
2019-03-04 02:21:14 [transport] INFO : 
   Authentication (keyboard-interactive) successful!

This more of an annoyance, as the program runs successfully, any ideas on how to get rid of these messages?

I am using Paramiko 2.4.2 with Python 2.7.9