密鑰集不存在

轉帖:“0x80090016錯誤,密鑰集不存在”的解決

 
PS:今天發現服務器上的任務計劃沒執行,一檢查報錯了。藉助網絡問題搞定,順便把解決方法轉過來。原文出自:http://blog.gx.vnet.cn/6/viewspace-9957.html#xspace-tracks
----------------------分割線下方,正文開始-----------------------------
 
  任務計劃創建失敗,顯示密鑰集不存在錯誤:
 
  無法安排任何任務或修改現有任務的帳戶憑據。當您嘗試創建新計劃任務, 可能會收到以下錯誤信息:
 
  新任務已創建, 但可能不運行因爲尚未設置帳戶信息。 鍵集不存在。
如果您嘗試修改的現有任務, 帳戶憑據可能會收到以下錯誤信息:
常規頁面初始化失敗: 賬戶密鑰集不存在  錯誤是: 0x80090016。
 
  這個就影響正常使用了,因爲已經無法創建任務計劃了,即使創建成功了,也無法啓動。這個問題是什麼原因引起的?在微軟網站上找到這麼一句話:This issue can occur if a registry key exists which modifies the default behavīor of the Cryptography APIs. In this case, the Cryptography APIs cannot create the public and private encryption keysets that are necessary to continue the installation.“這個問題產生於如果一個現存的註冊表鍵它修改了加密的api的默認行爲,在這種情形下,加密的api將不能創建公鑰和私鑰來繼續完成安裝。”(翻譯得不好,但大致就這意思啦)
 
  由此追查原因,是由於某種行爲導致這冊表改動了默認的密鑰,而protected storage服務可能又失靈了,沒能起到存儲本地密碼信息的作用,結果使原有密鑰集內容丟失,所以纔有之前報錯所說的“尚未設置帳戶信息”。那麼是什麼舉動到這這一問題?結合計劃任務的日誌,得知在很早以前就有這個問題了,只是我一直沒發現,該死。現在想去探究那時到底發生了什麼也不大可能了。所以乾脆把這問題解決了,日後多注意也就是了。
 
  解決的辦法倒很簡單,先 net start “protected storage” 開啓這個服務(其實就是lsass.exe),再將現有這個不完整的密鑰刪除掉,先備份再刪除掉下面的項:
HKEY_USERS\Default\Software\Microsoft\Cryptography\Providers\Type 001
如果找不到這項,直接去刪除掉  x:\documents and settings\all users\application data\microsoft\crypto\rsa\s-1-5-18\ 中的所有密鑰文件,然後重啓電腦以新建密鑰,到此問題應該得以解決了。(記住,在做這些事情之前,一定要對相應的文件和註冊表項進行備份!)
 
  註釋: “rsa加密算法”是一種不對稱性加密算法,rsa是1977年發明該算法的三個人的名字的開頭字母。“crypto”是國際密碼研討年會,也被指爲密碼算法的統稱。“s-1-5-18"是NT AUTHORITYSYSTEM賬戶的SID的標誌。限於篇幅,關於sid不再詳述。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章