HTTPS簡單說明:
HTTPS(全稱Hyper?Text?Transfer?Protocol?over?Secure?Socket?Layer),是以安全為目標的HTTP通道,簡單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎是SSL(安全套接字層),因此加密的詳細內容就需要SSL。?它是一個URI?scheme(抽象標識符體系),句法類同http:體系。用于安全的HTTP數據傳輸。HTTPS:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默認端口及一個加密/身份驗證層(在HTTP與TCP之間)。
HTTPS和HTTP的區別主要為以下四點:
1.https協議需要到ca申請證書,一般免費證書很少,需要交費。2.http是超文本傳輸協議,信息是明文傳輸,https?則是具有安全性的ssl加密傳輸協議。3.http和https使用的是完全不同的連接方式,用的端口也不一樣,前者是80,后者是443。4.http的連接很簡單,是無狀態的;HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,比http協議安全。
簡單說明:
HTTPS的主要思想是在不安全的網絡上創建一安全信道,并可在使用適當的加密包和服務器證書可被驗證且可被信任時,對竊聽和中間人攻擊提供合理的保護。HTTPS的信任繼承基于預先安裝在瀏覽器中的證書頒發機構(如VeriSign、Microsoft等)(意即“我信任證書頒發機構告訴我應該信任的”)。因此,一個到某網站的HTTPS連接可被信任,如果服務器搭建自己的https?也就是說采用自認證的方式來建立https信道,這樣一般在客戶端是不被信任的。所以我們一般在瀏覽器訪問一些https站點的時候會有一個提示,問你是否繼續。
使用NSURLSession示例代碼:
如果是使用AFN框架,那么我們不需要做任何額外的操作,AFN內部已經做了處理,示例代碼如下:
如果是使用ASI框架,那么我們不需要做任何額外的操作,ASI內部已經做了處理,示例代碼如下:
設置request 的ValidatesSecureCertificate屬性為NO即可
就這么多吧,分享給大家,謝謝。