導航:首頁 > 編程語言 > pythonssl編程

pythonssl編程

發布時間:2023-09-21 03:07:33

❶ 怎麼用python 來實現 SSL登錄FTP python中有ftplib模塊,但它是普通登錄,也有ssl模塊,怎麼來實現呢

從python 2.7開始ftplib模塊就有一個支持ftp ssl的類FTP_TLS了
具體可以看這里
http://docs.python.org/library/ftplib.html#ftplib.FTP_TLS

❷ 如何驗證在Python SSL證書

importos
importglob
fromOpenSSL.SSLimportContext,TLSv1_METHOD,VERIFY_PEER,VERIFY_FAIL_IF_NO_PEER_CERT,OP_NO_SSLv2
fromOpenSSL.cryptoimportload_certificate,FILETYPE_PEM
fromtwisted.python.urlpathimportURLPath
fromtwisted.internet.sslimportContextFactory
fromtwisted.internetimportreactor
fromtwisted.web.clientimportgetPage
certificateAuthorityMap={}
forcertFileNameinglob.glob("/etc/ssl/certs/*.pem"):
#,solet'smakesureit'sreal.
ifos.path.exists(certFileName):
data=open(certFileName).read()
x509=load_certificate(FILETYPE_PEM,data)
digest=x509.digest('sha1')
#Now,de-.
certificateAuthorityMap[digest]=x509
(ContextFactory):
def__init__(self,hostname):
self.hostname=hostname
isClient=True
defgetContext(self):
ctx=Context(TLSv1_METHOD)
store=ctx.get_cert_store()
.values():
store.add_cert(value)
ctx.set_verify(VERIFY_PEER|VERIFY_FAIL_IF_NO_PEER_CERT,self.verifyHostname)
ctx.set_options(OP_NO_SSLv2)
returnctx
defverifyHostname(self,connection,x509,errno,depth,preverifyOK):
ifpreverifyOK:
ifself.hostname!=x509.get_subject().commonName:
returnFalse
returnpreverifyOK
defsecureGet(url):
returngetPage(url,HTTPSVerifyingContextFactory(URLPath.fromString(url).netloc))
defdone(result):
print'Done!',len(result)
secureGet("https://google.com/").addCallback(done)
reactor.run()

這個驗證要安裝Twisted 庫。

當然這樣的庫好多,如:pycurl,requests,M2Crypto

importrequests
requests.get('https://somesite.com',cert='/path/server.crt',verify=True)

❸ python3 代碼怎樣關閉url與ssl屬性校驗

importurllib.request
importssl

url="httpsurl"
header=headers={
"User-Agent":"Mozilla/5.0(Macintosh;IntelMacOSX10_7_0)AppleWebKit/535.11(KHTML,likeGecko)Chrome/17.0.963.56Safari/535.11"
}

request=urllib.request.Request(url,headers=header)
context=ssl._create_unverified_context()#忽略ssl證書驗證
res=urllib.request.urlopen(request,context=context)
print(res.read().decode("utf8"))

閱讀全文

與pythonssl編程相關的資料

熱點內容
單片機代碼跳掉 瀏覽:447
程序員談薪水壓價 瀏覽:861
榮耀10青春版支持方舟編譯啊 瀏覽:158
最優估計pdf 瀏覽:826
androiddrawtext字體 瀏覽:669
c語言源編輯源程序編譯 瀏覽:821
手裡捏東西真的可以解壓嗎 瀏覽:265
編譯原理畫狀態表 瀏覽:28
用echo命令產生下列輸出 瀏覽:358
在內網如何訪問伺服器 瀏覽:961
java導入oracle資料庫 瀏覽:134
堅朗內開內倒鋁條演算法 瀏覽:259
華為閱讀新建文件夾 瀏覽:770
幻塔如何選擇伺服器 瀏覽:221
解壓先把文件壓到系統盤 瀏覽:822
access壓縮和修復資料庫 瀏覽:791
光纖交換機命令 瀏覽:513
白色桌放什麼文件夾 瀏覽:296
分治演算法思想 瀏覽:151
s曲線加減速演算法 瀏覽:403