javaweb學習總結十八(軟件密碼學、配置tomcat的https鏈接器以及tomcat管理平臺)

一:軟件密碼學java

1:對稱加密算法

對稱加密是最快速、最簡單的一種加密方式,加密(encryption)與解密(decryption)用的是一樣的密鑰(secret key)。對稱加密有不少種算法,因爲它效率很高,因此被普遍使用在不少加密協議的核心當中。apache

對稱加密一般使用的是相對較小的密鑰,通常小於256 bit。由於密鑰越大,加密越強,但加密與解密的過程越慢。若是你只用1 bit來作這個密鑰,那黑客們能夠先試着用0來解密,不行的話就再用1解;但若是你的密鑰有1 MB大,黑客們可能永遠也沒法破解,但加密和解密的過程要花費很長的時間。密鑰的大小既要照顧到安全性,也要照顧到效率,是一個trade-off。瀏覽器

缺點:tomcat

對稱加密的一大缺點是密鑰的管理與分配,換句話說,如何把密鑰發送到須要解密你的消息的人的手裏是一個問題。在發送密鑰的過程當中,密鑰有很大的風險會被黑客們攔截。現實中一般的作法是將對稱加密的密鑰進行非對稱加密,而後傳送給須要它的人。安全

2:非對稱加密服務器

非對稱加密爲數據的加密與解密提供了一個很是安全的方法,它使用了一對密鑰,公鑰(public key)和私鑰(private key)。私鑰只能由一方安全保管,不能外泄,而公鑰則能夠發給任何請求它的人。非對稱加密使用這對密鑰中的一個進行加密,而解密則須要另外一個密鑰。好比,你向銀行請求公鑰,銀行將公鑰發給你,你使用公鑰對消息加密,那麼只有私鑰的持有人--銀行才能對你的消息解密。與對稱加密不一樣的是,銀行不須要將私鑰經過網絡發送出去,所以安全性大大提升。網絡

目前最經常使用的非對稱加密算法是RSA算法,是Rivest, Shamir, 和Adleman於1978年發明,他們那時都是在MIT。網站

 

二:配置tomcat的https鏈接器加密

1:生成數字證書

使用java自帶的命令keytool ,$JAVA_HOME$/bin/keytool.exe ,在cmd命令行執行命令生成數字證書:

2:將生成的數字證書拷貝到tomcat服務器的conf目錄下

3:配置https鏈接器

在server.xml文件中配置https安全鏈接,能夠首先查看配置的參數,進入tomcat導航頁面:http://localhost:8080

下一步

下一步

下一步

 

在server.xml文件中配置https安全鏈接器

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="conf/.keystore" keystorePass="123456"/>

keystoreFile:是數字證書的存放位置

keystorePass:是進入數字證書的密碼

這裏須要注意一個問題,就是protocol協議,tomcat版本問題,若是使用默認的protocol="HTTP/1.1"啓動報錯,能夠將

協議修改成protocol="org.apache.coyote.http11.Http11Protocol",便可。

 

4:瀏覽器訪問https://localhost:8443,服務器會給瀏覽器發送數字證書(公鑰),來加密須要發送的數據,可是這個數字證書

是經過sun公司命令生成的,並無在CA註冊,因此瀏覽器會有以下提示:

這裏繼續安裝證書。

5:安裝數字證書

單擊「繼續瀏覽網站」

 

 

而後一直「下一步」,一直到「導入證書」結束,安裝成功。

關閉瀏覽器,再次打開輸入url地址https://localhost:8443

就能夠安全訪問了。

 

6:刪除數字證書

ie瀏覽器設置

 

 

刪除證書成功,關閉瀏覽器,再次訪問時,又會提示有危險信息!!!

 

三:tomcat管理平臺

1:首先配置tomcat用戶的管理員權限

打開conf目錄下tomcat-users.xml,

2:登陸tomcat管理平臺,http://localhost:8080

 

3:tomcat管理平臺

 

相關文章
相關標籤/搜索