解決python openssl版本過低的坎坷路程

2021-09-16 22:55:57 字數 880 閱讀 3021

valueerror: could not unserialize key data
問題連線:

為了解決這個問題我從端午節google到今天,一直都沒有完整的解決問題。都是wget openssl的壓縮包然後解壓,然後編譯。雖然最後在命令列下面輸入openssl version 能得到正確的安裝版本號但是python無論如何都是那個舊版本或者新版本但是出現各種問題。我猜測可能是只安裝了openssl新版本但是devel還是舊版本。

我就各種滿世界找openssl-devel rpm安裝的教程最後還是各種錯誤我真的快氣瘋了。

今天,我google的時候看到了ubuntu16.x的版本內建了openssl1.0.2。我感覺這個問題要解決了。最後通過公升級ubuntu完成了python的openssl依賴公升級。但是過程也是比較曲折,因為要重新把舊的檔案恢復(uwsgi + nginx 的相關檔案)。反正最後推送服務終於work了,很開心。幾天的通宵達旦找資料終於有了成果。

最後進入virtulenv裡面

python -c "import ssl; print ssl.openssl_version",
得到了新版本的openssl version,那種感覺你不經歷一次真的無法體會

希望遇到相關問題的人看到這邊文章能讓問題得到解決。其實主要問題就是阿里雲的ubuntu版本沒有及時更新讓內建的openssl公升級到1.0.2導致了這個問題。不過這個問題屬於比較少見的,因為不是每個個人開發者都用阿里雲都用apns。畢竟版本穩定才是乙個商業公司的首要追求目標。

the end.

提示要安裝Python OpenSSL

pyopenssl是openssl的python介面,用於提供加密傳輸支援 ssl 如果沒用該模組,會導致goagent無法生成證書而影響使用。若系統沒有openssl,先安裝openssl,一般系統都已安裝,可以忽略此步 wget tar zxvf openssl 1.0.1c.tar.gz cd...

python openssl對資料進行簽名

4.php簽名版 在資訊傳遞的過程中為了保證資料是由確定的一方傳送的,需要通過某種方式驗證資料傳送方的身份。目前大家比較常用的可能是是用openssl生成乙個私鑰,然後根據私鑰生成對應的公鑰,這個過程可以通過下述兩個命令完成 openssl genrsa out rsa private key.pe...

解決 SVN解決衝突

intelij idea 使用svn,提交 前先更新 此時如果有衝突,就會提示你解決衝突。產生衝突的情況 a 和 b 兩名程式設計師,分別更新了同一版本 version 1 的 同時修改了乙個檔案。a提交 後,伺服器中的 是 version a 即 a 修改後的 b隨後提交 由於伺服器中的 已經不是...