客戶證書是答案。大多數/所有瀏覽器都將這些客戶端證書導入爲PKCS#12(.p12,.pfk)。
您可以使用公鑰(.crt),私鑰(.key)和CA證書(.crt)將現有的x509證書轉換爲PKCS#12文件。您可以使用下面的命令與OpenSSL的做到這一點:
openssl pkcs12 -export -out client.p12 -inkey client.key -in client.crt -certfile ca.crt
如果自簽名證書,它以確保證書的序列比其他證書的不同是很重要的。如果它們相同,則可能會嘗試導入.p12文件時遇到錯誤(因此請注意openssl示例中的-set_serial)。
不幸的是,證書移動/可移動唯一的跨平臺方式是使用智能卡(使用PKCS#11)。
在Mac OS X上,Safari和Chrome從鑰匙串中訪問其證書。您實際上可以在USB閃存驅動器上創建自定義鑰匙串(文件 - >新鑰匙串)。創建鑰匙串後,您只需將.p12文件拖入您的鑰匙串即可。有關這方面的好處是,您可以控制對訪問證書的應用程序的訪問權限,並且您可以在發生一定的不活動狀態後鎖定鑰匙串本身。
用Safari瀏覽器可以很好地工作。如果拔下閃存驅動器,它會在幾秒鐘後停止發送該證書。如果你重新插入它,它會馬上拿起它。如果您使用「鑰匙串訪問」鎖定證書,它將要求輸入密碼。它可以防止您在使用過程中正確彈出閃存驅動器,但一分鐘後Safari釋放它的鎖定。
鉻是finicky。它將證書緩存幾分鐘。如果鎖定鑰匙串,它將繼續使用緩存版本。如果您嘗試正確卸載閃存驅動器,它會告訴您Chrome正在使用它,直到您關閉它。如果您在Chrome運行時插入閃存驅動器,則無法啓動。
因此,看來Safari是唯一支持此功能的瀏覽器。 Firefox和Opera都有自己的密鑰存儲區。
如果你想隱藏你的閃存驅動器上的自定義鑰匙串,你可以創建一個不可見的文件夾前加一段時間(如「./.keys」)。創建鑰匙串時,您可以通過按Command + Shift +「。」查看對話窗口中的不可見文件夾。
這是可能的,但有時挑剔。 Google提供「SSL客戶端證書」。 –
我將如何使證書便攜/可移動(存儲在USB棒上)? – Luke
通常,證書將安裝到特定的瀏覽器配置文件中。脫機證書功能必須由瀏覽器支持。或者,您可以使用Firefox的「便攜式」安裝,或者將整個瀏覽器及其所有配置文件信息(包括客戶端證書)存儲在USB存儲棒中的東西。 –