1. 程式人生 > >搭建https服務--獲取https證書(1)

搭建https服務--獲取https證書(1)

HTTP是明文的,很容易通過抓包等方式,獲取到請求資訊。導致資訊被洩露,串改。HTTPS相對於HTTP,多了安全加密。客戶端採用公匙加密,服務端採用私匙解密。採用HTTPS能夠很大程度地提升服務安全性,而且升級到HTTPS並不複雜。

HTTPS證書的獲取方式有許多:

1.可以jd的keytool工具自己製作

命令如下:

     keytool -genkey -keyalg RSA -keysize 2048 -validity 3650 -alias SEC_TEST -keypass w123456 -keystore test.keystore -storepassw123456 -dname "CN=localhost,OU=DEP,O=CN,L=BJ,ST=BJ,C=CN"

     其中,-keyalg 指定演算法,

              -keysize指定金鑰大小,

              -validity指定有效期,單位為天,

              -alias  別名

              -keypass 指定私鑰使用密碼,

              -keystore指定金鑰庫名稱,

              -storepass 證書庫的使用密碼,從裡面提取公鑰時需要密碼

              -dname :CN擁有者名字,一般為網站名或IP+埠,如,OU組織機構名 O組織名 L城市 ST州或省 C國家程式碼

   以上命令執行後將在當前目錄下產生一個keystore檔案,裡面儲存著金鑰和證書資訊;

      匯出公鑰:

       keytool -export -alias SEC_TEST -file test_pub_cer.cer -keystore test.keystore -storepass w123456

在當前目錄下會產生一個test_pub_cer.cer的證書,包含了公鑰資訊及證書相關資訊;

自己生成的證書是可以使用,但是不被各大瀏覽器、系統等公司認可,可以作為個人聯絡,伺服器間通訊。

2.通過證書服務商購買,一般從幾十到上萬不等。

靠譜、免費的證書服務商很少,包括一些以前提供的,現在都不支援了。

這裡介紹一個免費(3個月有效期)DV的證書:www.startssl.com,除了有效期之外,個人使用問題不大。雖然是英文網站,但按步驟申請對於程式設計師來說,不是難事。只是國外網站速度較慢需要耐心。