2010-12-20 54 views
1

在我的應用程序中,客戶端必須簽名(使用證書)並將數據發送到服務器。 我的疑問是我應該怎麼做?在客戶端的ASPX中籤名數據

要在客戶端登錄,我應該使用ActiveX的權利?我的問題是,Firefox不支持它。 簽名在服務器端我有兩個選擇:

  1. 保存私鑰的服務器上,並用它在必要時(如果數據是在交易過程中修改了它會簽署虛假數據)
  2. 發送私關鍵在必要的時候(可以包括鍵)

儘管使用SSL,我不是很舒適與任何兩個選項簽署在服務器端... 使用ActiveX可能會導致我的應用程序更容易,對?

希望你能幫助我:)

回答

1

有一個在所有瀏覽器爲客戶端的簽名沒有單一的解決方案,很遺憾。我們目前正在爲我們的SecureBlackbox產品開發分佈式簽名組件,並且我們已經創建了Java applet,ActiveX控件和Flex腳本來執行簽名。但是,所有變體都有缺點。例如,只有ActiveX控件可以訪問Windows證書存儲。對於其他模塊類型,用戶需要從PFX(PKCS#12)文件中加載證書。

在服務器上上傳和簽名將不起作用,因爲私鑰在客戶端上並不總是可導出的(它可以駐留在cryptotoken或智能卡上,或者僅僅是不可導出的),並且這種方法也使得整個過程無用,因爲它會顯着降低安全性。

更新:SecureBlackbox 9現在處於公共測試版,支持客戶端簽名(我們爲此提供了ActiveX,Java和Flash模塊)。