與Outlook的集成 目錄支持 Outlook 2000的“Internet惟一郵件”方式和Outlook Express 5.0都支持LDAP。郵件客戶可以連接到任何與LDAP協議兼容的目錄,從而可以把賬戶信息(包括證書)下載到用戶的個人地址薄中。如果在Outlook的界面增加LDAP目錄服務,Outlook 2000的“團體/工作組”方式會支持LDAP協議。然而,與Outlook 2000的“Internet惟一郵件”方式和Outlook Express 5.0的LDAP 服務不同,Outlook 2000的“團體/工作組”方式不支持從Exchange目錄下載證書,但支持用MAPI從Exchange目錄下載證書。 Windows 2000自動為以下郵件客戶發布證書,這些用戶具有Windows 2000的企業認證證書CA,並且把CA作為Windows 2000的主動目錄(Active Directory,AD)的客戶賬戶進行登錄。相比之下,Windows NT 4.0只在Exchange目錄中為在高級安全服務上登錄過的客戶發布證書。為使Outlook 2000的“Internet惟一郵件”方式能浏覽AD,需用要創建一個通過3268口(通用目錄口)連接到Windows 2000局部控制器的新目錄服務賬戶。在信道擁擠時,Outlook 2000的“團體/工作組”方式只能和AD連接,Outlook Express 5.0把浏覽AD作為一種默認方式。 Windows 2000自動地把已登錄用戶的證書添加到用戶個人證書存儲區,如圖1所示。證書存儲區中的用戶詳細描述部分是用戶屬性的一部分。在默認情況下,用戶屬性存放在本地用戶的工作站上。如果用戶所屬的組織支持漫游功能,還是可以把用戶屬性存儲到一個中心服務器上。在Windows 2000平台上,所有運行CryptoAPI 2.0的應用程序都能共享證書。事實上,Outlook 2000和Outlook Express 5.0都支持CryptoAPI 2.0。 Outlook和私人密鑰保護 Outlook 2000和Outlook Express 5.0均使用了微軟的保護存儲功能,保護存儲是Windows 2000系統提供的服務功能的一部分,它通過先進的軟件方式保護私有密鑰的存儲。先進的軟件安全保護措施有助於保護用戶存放在系統硬盤上的密鑰。但是,筆者認為,更好的解決方案是把密鑰存放在硬件安全模塊(Hardware Security Module,HSM)上或智能卡上。例如Compaq公司的Atalla Internet安全處理器的HSM是一個計算機插卡,當入侵者竄改上面的數據時,它可以自動刪除所存儲的數據。考慮到HSM的價格比較昂貴,較便宜的基於智能卡(大約50美元)的解決方案更受歡迎,像Gemplus公司的GemSAFE User 2.0,對於客戶端的私人密鑰保護,是一種更加可行的方案。 當用戶通過認證登錄之後,可以使用口令保護性地訪問有關的私人密鑰,然後使用Windows 2000提供的具有128位加密能力的Syskey工具進一步保護硬盤口令存儲。要查看Syskey的配置設置情況,在命令行鍵入“syskey”即可。用戶可以在系統啟動時手工輸入Syskey密鑰,將它存放到軟盤上,或使用一個復合的亂碼算法加密後把密鑰存放在硬盤上。Windows 2000的默認方式是通過Syskey把密鑰存放在硬盤上。 S/MIME證書 S/MIME在X.509和國際電信聯盟電信技術部(ITU-T)的基礎上建立了定義數字證書格式的開放標准。所有最新的微軟產品都支持X.509版本3證書。為了兼容Outlook 97和 Exchange Server 4.0/5.0,Exchange 2000也支持X.509版本1(X.509版本3的子集)證書。Windows 2000證書服務器只發行X.509版本3證書,但是系統管理員可以配置Exchange 2000的KMS,使它發行X.509版本1或X.509版本3證書。 要想查看S/MIME證書的內容和格式,用戶可以加載用戶賬戶的MMC證書插件。操作方法是:打開個人證書容器,雙擊S/MIME證書,在把證書輸出到一個.cer文件後,在命令行狀態下,使用Certutil工具便可查看證書的內容(如圖2所示)。注意,只有在Windows 2000中運行了Windows 2000 CA之後,Certutil工具才有效。 Outlook 2000和Outlook Express 5.0都能夠從目錄上下載證書或接收簽名郵件的證書附件。在用戶使用證書前,必須先使它生效。Outlook 2000和Outlook Express 5.0以不同的標准確定用戶是否可以使用證書的公鑰,並進行S/MIME的加密操作。 S/MIME的互操作性 有一次,筆者作為一個在Exchange 2000高級安全上登錄的用戶,給Netscape Messenger和Outlook Express 5.0 用戶發送簽名郵件,但出現了問題。原因在於RFC 822名字的檢查。使用KMS發布的證書不包含證書主題的RFC 822名字,只包含一個X.500識別名字(Distinguished Name,DN),比如CN=Jan、CN=Recipients、CN=AMTG 管理組和0=Compaq等。而且,證書不包含主題的選擇名字域。要解決這個問題,Windows 2000證書服務器應該發布包含主題選擇名字和RFC 822名字的S/MIME證書。 在Windows NT 4.0平台上,如果用戶針對包含一個若干連接在一起的證書服務器的證書體系創建一個S/MIME的互操作方案時,可能會遇到一些問題。微軟正在對有關問題進行解決。據悉,Internet Explorer 5.0、Outlook Express 5.0、Outlook 2000和Windows 2000 專業版都增強了在CA層對證書確認支持。 從互操作性的角度來看,最重要的非微軟S/MIME客戶是Netscape Messenger。 Messenger是作為Netscape Communicator的一部分發布的。Messenger的強項之一就是它支持一系列的非微軟平台,其中包括Unix和Linux。目前,Communicator 4.7還不支持證書撤除表的分布指針。據了解,Netscape計劃在發行下一個Communicator版本時,,嵌入這一重要的擴展。Netscape的最新證書服務器的證書管理系統CMS 4.1已經具有在證書管理系統發布的所有證書中嵌入分布指針的能力。Netscape還計劃支持雙密鑰和數據恢復。CMS 4.1有一個叫做數據恢復管理器的新組件,它負責私有密鑰的存檔和恢復。北美版的CMS 4.1有一個Communicator 4.5雙密鑰測試插件,它使得Communicator能處理雙密鑰。另一個有關Netscape郵件客戶的有趣的細節是,用戶不可以選擇透明或不透明簽名。Netscape Messenger默認發送透明簽名郵件。
Netscape和微軟電子郵件系統的客戶端可以使用公共密鑰加密標准交換證書和私有密鑰。為了保證密鑰只能以Outlook 2000的“Internet惟一郵件”方式或Outlook Express 5.0的方式輸出,需要選擇“Mark keys as exportable”選擇框(如圖3所示)。但是,需要注意的是,當密鑰過期時會對郵件系統的安全造成威脅。 總之,在客戶端的Outlook 2000和Outlook Express 5.0與在服務器端的Exchange 2000相互結合,構成了比較成熟的S/MIME安全平台。這一平台得益於Windows 2000的PKI,提供了更加強大的S/MIME安全功能,還擴充了和非微軟郵件客戶端在S/MIME方面的互操作功能。