㈠ https是如何加密的
HTTPS其實是有兩部分組成:HTTP + SSL / TLS,也就是在HTTP上又加了一層處理加密信息的模塊。服務端和客戶端的信息傳輸都會通過TLS進行加密,所以傳輸的數據都是加密後的數據。具體是如何進行加密,解密,驗證的,且看下圖。
1. 客戶端發起HTTPS請求
這個沒什麼好說的,就是用戶在瀏覽器里輸入一個https網址,然後連接到server的443埠。
2. 服務端的配置
採用HTTPS協議的伺服器必須要有一套數字證書,可以自己製作,也可以向組織申請。區別就是自己頒發的證書需要客戶端驗證通過,才可以繼續訪問,而使用受信任的公司申請的證書則不會彈出提示頁面(startssl就是個不錯的選擇,有1年的免費服務)。這套證書其實就是一對公鑰和私鑰。如果對公鑰和私鑰不太理解,可以想像成一把鑰匙和一個鎖頭,只是全世界只有你一個人有這把鑰匙,你可以把鎖頭給別人,別人可以用這個鎖把重要的東西鎖起來,然後發給你,因為只有你一個人有這把鑰匙,所以只有你才能看到被這把鎖鎖起來的東西。
3. 傳送證書
這個證書其實就是公鑰,只是包含了很多信息,如證書的頒發機構,過期時間等等。
4. 客戶端解析證書
這部分工作是有客戶端的TLS來完成的,首先會驗證公鑰是否有效,比如頒發機構,過期時間等等,如果發現異常,則會彈出一個警告框,提示證書存在問題。如果證書沒有問題,那麼就生成一個隨機值。然後用證書對該隨機值進行加密。就好像上面說的,把隨機值用鎖頭鎖起來,這樣除非有鑰匙,不然看不到被鎖住的內容。
5. 傳送加密信息
這部分傳送的是用證書加密後的隨機值,目的就是讓服務端得到這個隨機值,以後客戶端和服務端的通信就可以通過這個隨機值來進行加密解密了。
6. 服務段解密信息
服務端用私鑰解密後,得到了客戶端傳過來的隨機值(私鑰),然後把內容通過該值進行對稱加密。所謂對稱加密就是,將信息和私鑰通過某種演算法混合在一起,這樣除非知道私鑰,不然無法獲取內容,而正好客戶端和服務端都知道這個私鑰,所以只要加密演算法夠彪悍,私鑰夠復雜,數據就夠安全。
7. 傳輸加密後的信息
這部分信息是服務段用私鑰加密後的信息,可以在客戶端被還原。
8. 客戶端解密信息
客戶端用之前生成的私鑰解密服務段傳過來的信息,於是獲取了解密後的內容。整個過程第三方即使監聽到了數據,也束手無策。
㈡ SSL HTTPS會對哪些傳輸的數據加密
只要是數據就都會加密的,可以保障各個數據的安全性。美國主機偵探提供專業的ssl證書
㈢ 什麼是HTTPS加密傳輸
傳統的http是超文本傳輸協議,信息是明文傳輸,而HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網路協議,比http協議安全。HTTPS為用戶客戶端和伺服器之間建立了一個信息安全通道,來保證數據傳輸的安全。防止數據在中途被竊取,維護數據的完整性,確保數據在傳輸過程中不被改變。保存在酷盤伺服器端的文件都進行了嚴格的加密,只有您本人通過賬戶密碼才可以訪問,任何其他人都無法訪問。
㈣ 如何指定 https的加密演算法
https默認埠是443,http默認埠是80,所有加一個s就不一樣。也不是所有網站加s就可以加密,需要WEB伺服器端進行相應的配置。以下配置步驟僅供參考:
HTTPS_SSL配置的步驟:
伺服器端單向認證:
第一步:進入jdk的安裝文件路徑下面的bin目錄;
第二步:在bin目錄下輸入以下命令
keytool -genkey -v -alias mykey -keyalg RSA -validity 3650 -keystore c:\sst.keystore
-dname "CN=你的ip,OU=cn,O=cn,L=cn,ST=cn,c=cn" -storepass 123456 -keypass 123456
說明:
keytool 是JDK提供的證書生成工具,所有參數的用法參見keytool –help
-genkey 創建新證書
-v詳細信息
-alias以」mykey」作為該證書的別名。這里可以根據需要修改
-keyalgRSA 指定演算法
-keysize 指定演算法加密後密鑰長度
-keystorec:\sst.keystore保存路徑及文件名
-validity3650證書有效期,單位為天
CN=你的ip,OU=cn,O=cn,L=cn,ST=cn,c=cn 基本信息的配置
CN=你的ip 這個配置務必注意
-storepass 123456789 -keypass 123456789 密碼設置
第三步:生成的文件如下圖所示
第四步:配置tomcat的server.xml文件[1]redirectPort埠號改為:443
<Connector connectionTimeout="20000" port="80" protocol="HTTP/1.1" redirectPort="443" useBodyEncodingForURI="true"/>
[2]SSL HTTP/1.1 Connector定義的地方,修改埠號為:443
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
minSpareThreads="5" maxSpareThreads="75"
enableLookups="true" disableUploadTimeout="true"
acceptCount="100" maxThreads="200" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="C:/sst.keystore" keystorePass="123456"
clientAuth="false" sslProtocol="TLS" />
屬性說明:clientAuth:設置是否雙向驗證,默認為false,設置為true代表雙向驗證keystoreFile:伺服器證書文件路徑keystorePass:伺服器證書密碼truststoreFile:用來驗證客戶端證書的根證書,此例中就是伺服器證書truststorePass:根證書密碼
[3] AJP 1.3 Connector定義的地方,修改redirectPort為443
<Connector port="8009" protocol="AJP/1.3" redirectPort="443"/>
第五步:重新啟動Tomcat就可以了。
附加內容:若要使得應用只能通過https的方式訪問,在該項目的web.xml文件中加入如下代碼:
<login-config><!-- Authorization setting for SSL --><auth-method>CLIENT-CERT</auth-method><realm-name>Client Cert Users-only Area</realm-name></login-config><security-constraint><!-- Authorization setting for SSL --><web-resource-collection><web-resource-name>SSL</web-resource-name><url-pattern>/*</url-pattern></web-resource-collection><user-data-constraint><transport-guarantee>CONFIDENTIAL</transport-guarantee></user-data-constraint></security-constraint><!--Require HTTPS for everything except /img (favicon) and /css.--><security-constraint><web-resource-collection><web-resource-name>HTTPSOrHTTP</web-resource-name><url-pattern>*.ico</url-pattern><url-pattern>/img/*</url-pattern><url-pattern>/css/*</url-pattern></web-resource-collection><user-data-constraint><transport-guarantee>NONE</transport-guarantee></user-data-constraint></security-constraint>測試 :在瀏覽器中輸入:https://localhost:8443/,會彈出選擇客戶端證書界面,點擊「確定」,會進入tomcat主頁,地址欄後會有「鎖」圖標,表示本次會話已經通過HTTPS雙向驗證,接下來的會話過程中所傳輸的信息都已經過SSL信息加密。
可能存在的問題:
Eclipse中啟動tomcat7.0,本地tomcat配置文件被eclipse恢復。
問題是這樣的,在eclipse的servers配置項里,將tomcat的啟動配置為了use tomcat location,但是每次在eclipse里publish項目都會把本地G:\tomcate7.0\apache-tomcat-7.0.29\conf下的配置文件(如:tomcat-user.xml添加了用戶等信息)給重置,也就是裡面添加的內容被清空了,回復到原來的樣子:
問題解決方案:
你eclipse工程列表中應該 還有個 Servers工程,下面會有Tomcat7的配置文件,你把裡面的對應配置文件改了。每次是用這個文件來覆蓋,tomcat下面的文件的。
特定的目錄實現https訪問
解決方案:
在web.xml文件中配置相應的路徑
<security-constraint><!-- Authorization setting for SSL --><web-resource-collection><web-resource-name>SSL</web-resource-name><url-pattern>/login.html</url-pattern></web-resource-collection><user-data-constraint><transport-guarantee>CONFIDENTIAL</transport-guarantee></user-data-constraint></security-constraint>
㈤ https協議中,網頁和資料庫傳輸的數據是加密的嗎
是加密的。
HTTPS ,是以安全為目標的 HTTP 通道,在HTTP的基礎上通過傳輸加密和身份認證保證了傳輸過程的安全性。HTTPS 在HTTP 的基礎下加入SSL,HTTPS 的安全基礎是 SSL,因此加密的詳細內容就需要 SSL。
HTTPS 存在不同於 HTTP 的默認埠及一個加密/身份驗證層(在 HTTP與TCP之間)。這個系統提供了身份驗證與加密通訊方法。它被廣泛用於萬維網上安全敏感的通訊,例如交易支付等方面。
關於 HTTP的明文數據傳輸, 攻擊者最常用的攻擊手法就是網路嗅探, 試圖從傳輸過程當中分析出敏感的數據, 例如管理員對Web程序後台的登錄過程等等, 從而獲取網站管理許可權, 進而滲透到整個伺服器的許可權。即使無法獲取到後台登錄信息, 攻擊者也可以從網路中獲取普通用戶的隱秘信息, 包括手機號碼, 身份證號碼, 信用卡號等重要資料, 導致嚴重的安全事故。
㈥ 如何為網站啟用HTTPS加密傳輸協議
1、注冊域名,域名可以正常解析或注冊時預留郵箱可以正常聯系。
2、准備一台獨立伺服器(雲伺服器);虛擬主機不支持HTTPS,如果提供商告訴您支持,那麼就可以使用,不過通常都不支持!
3、淘寶:Gworg ,獲取SSL信任證書,辦理驗證。
4、根據Gworg教程把證書部署到伺服器,如果遇到困難不會部署,可以請求技術安裝。
5、訪問域名確定瀏覽器地址欄是否有綠色小鎖圖標,如果沒有需要查看網站源碼,刪除調用的HTTP協議數據即可,HTTPS情況下需要全站源碼HTTPS協議交換。
㈦ https 在傳輸層加密的只是數據嗎
https會加密客戶端到伺服器端傳輸的所有數據,每一個從客戶端到伺服器端的請求都會被加密傳輸。詳細參考:網頁鏈接
㈧ 如何實現https加密傳輸
1、生成證書請求文件CSR
用戶進行https證書申請的第一步就是要生成CSR證書請求文件,系統會產生2個密鑰,一個是公鑰就是這個CSR文件,另外一個是私鑰,存放在伺服器上。要生成CSR文件,站長可以參考WEB SERVER的文檔,一般APACHE等,使用OPENSSL命令行來生成KEY+CSR2個文件,Tomcat,JBoss,Resin等使用KEYTOOL來生成JKS和CSR文件,IIS通過向導建立一個掛起的請求和一個CSR文件。
溫馨提醒:如果是在沃通申請https證書,其數字證書商店(https://buy.wosign.com)已經支持CSR文件由系統自動生成,用戶無需事先在Web伺服器上生成CSR文件。請參考:SSL證書請求文件(CSR)生成指南網頁鏈接
2、將CSR提交給CA機構認證
CA機構一般有2種認證方式:
(1)域名認證,一般通過對管理員郵箱認證的方式,這種方式認證速度快,但是簽發的證書中沒有企業的名稱,只顯示網站域名,也就是我們經常說的域名型https證書。
(2)企業文檔認證,需要提供企業的營業執照。國外https證書申請CA認證一般一小時之內,緊急時5分鍾。
同時認證以上2種方式的證書,叫EV https證書,EV https證書可以使瀏覽器地址欄變成綠色,所以認證也最嚴格。EV https證書多應用於金融、電商、證券等對信息安全保護要求較高的領域。
3、獲取https證書並安裝
在收到CA機構簽發的https證書後,將https證書部署到伺服器上,一般APACHE文件直接將KEY+CER復制到文件上,然後修改HTTPD.CONF文件;TOMCAT等需要將CA簽發的證書CER文件導入JKS文件後,復制到伺服器,然後修改SERVER.XML;IIS需要處理掛起的請求,將CER文件導入。
㈨ https對通訊數據的加密是自動的還是需要開發人員手動加密之後在傳輸
自動的。所謂的https加密其實是SSL證書加密,https只是SSL證書加密的直觀表現形式,https=http+ssl。
SSL 是一個安全協議,它提供使用 TCP/IP 的通信應用程序間的隱私與完整性。網際網路的 超文本傳輸協議(HTTP)使用 SSL 來實現安全的通信。
在客戶端與伺服器間傳輸的數據是通過使用對稱演算法(如 DES 或 RC4)進行加密的。公用密鑰演算法(通常為 RSA)是用來獲得加密密鑰交換和數字簽名的,此演算法使用伺服器的SSL數字證書中的公用密鑰。有了伺服器SSL數字證書,客戶端也可以驗證伺服器的身份。
SSL證書需要到合法CA機構去申請,比如沃通CA等等,經過嚴格的身份審查認證才可以簽發的,SSL證書有付費和免費的,沃通免費SSL證書只驗證域名所有權,只能起到加密作用,無法認證伺服器真實身份,EV或者OV SSL證書是高級SSL證書,可以認證伺服器真實身份和數據高強度加密。銀行,電商網站一般使用EV和OV SSL證書,個人網站使用免費SSL證書。