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的區別主要為以下四點:
https協議需要到ca申請證書,一般免費證書很少,需要交費。
http是超文字傳輸協議,資訊是明文傳輸,https 則是具有安全性的ssl加密傳輸協議。
http和https使用的是完全不同的連線方式,用的埠也不一樣,前者是80,後者是443。
http的連線很簡單,是無狀態的;https協議是由ssl+http協議構建的可進行加密傳輸、身份認證的網路協議,比http協議安全。
簡單說明:
https的主要思想是在不安全的網路上建立一安全通道,並可在使用適當的加密包和伺服器證書可被驗證且可被信任時,對竊聽和中間人攻擊提供合理的保護。
https的信任繼承基於預先安裝在瀏覽器中的證書頒發機構(如verisign、microsoft等)(意即「我信任證書頒發機構告訴我應該信任的」)。
因此,乙個到某**的https連線可被信任,如果伺服器搭建自己的https 也就是說採用自認證的方式來建立https通道,這樣一般在客戶端是不被信任的。
所以我們一般在瀏覽器訪問一些https站點的時候會有乙個提示,問你是否繼續。
使用nsurlsession示例**:
-(void)session
];
//4.執行task
[datatask resume];
}#pragma mark - nsurlsessiondatadelegate
//只要請求的位址是https的, 就會呼叫這個**方法
//challenge:質詢
//nsurlauthenticationmethodservertrust:伺服器信任
-(void)urlsession:(nsurlsession *)session task:(nsurlsessiontask *)task didreceivechallenge:(nsurlauthenticationchallenge *)challenge completionhandler:(void (^)(nsurlsessionauthchallengedisposition, nsurlcredential *_nullable))completionhandler
如果是使用afn框架,那麼我們不需要做任何額外的操作,afn內部已經做了處理
,示例**如下:
-(void)afn
];
//4.執行任務
[datatask resume];
}
iOS中發起https的網路請求
https https secure hypertext transfer protocol 安全超文字傳輸協議 它是乙個安全通訊通道,它基於http開發,用於在客戶計算機和伺服器之間交換資訊。它使用安全套接字層 ssl 進行資訊交換,簡單來說它是http的安全版。http與https的比較 比較h...
iOS中https的網路請求的配置
https https secure hypertext transfer protocol 安全超文字傳輸協議 它是乙個安全通訊通道,https經由 超文字傳輸協議 http 進行通訊,但利用ssl tls來加密封包。https開發的主要目的,是提供對網路伺服器的身分認證,保護交換資料的隱私與完整...
iOS開發之HTTP與HTTPS網路請求
http是網際網路中應用最為廣泛的一種網路協議,在進入正文之前,先解釋什麼是網路協議?網路協議為計算機網路中進行資料交換而建立的規則 標準或約定的集合。網路協議是由以下三個要素組成 語義 語法 時序。國際標準化組織 iso 在1978年提出了 開放系統互聯參考模型 即著名的osi rm模型 open...