clsid

clsid

CLSID是指windows系統對於不同的應用程式,檔案類型,OLE對象,特殊資料夾以及各種系統組件分配一個唯一表示它的ID代碼,用於對其身份的標識和與其他對象進行區分。

程式介紹

CLSID是指windows系統對於不同的應用程式,檔案類型,OLE對象,特殊資料夾以及各種系統組件分配的一個唯一表示它的ID代碼,用於對其身份的標識和與其他對象進行區分。

先得說下GUID,它是Globally Unique Identifier的簡稱,中文翻譯為“全局唯一標識符”,在Windows系統中也稱之為Class Identifier,縮寫為CLSID。

構成分析

CLSID像人身份證一樣,是個類的唯一標識:

ID是英文IDentity的縮寫,是身份標識號碼的意思,就是一個序列號,也叫帳號,是一個編碼,而且是唯一的。

class是對某種類型的對象定義變數和方法的原型,是ID的樣式或屬性的補充。

在註冊表中展開HKEY_CLASSES_ROOT\CLSID\,在CLSID分支下面就可以看到很多的ID,這些ID對應的都是系統裡面不同的程式,檔案,系統組件等。

運作基礎

CLSID是一個128位的隨機數,為了確保它的隨機性,避免重複,它的算法主要是從兩個方面入手:

1. 一部分數字來自於系統網卡的序列號,由於每一個網卡的MAC地址都不一樣,因此產生的ID也就會有差異。

2. 另外一部分數字來自於系統的當前時間。

有人計算過按照上面兩種方式得到ID的隨機性,得出的結論是:即使一台電腦每秒產生10000000個CLSID,也可以保證3240年不會重複。

為了避免衝突,微軟使用GUID作為CLSID,有專門生成GUID的函式,主要是根據當時的時間、機器地址等信息動態生成,理論上可保證全球代碼永不重複。

常見CLSID

我的文檔:450D8FBA-AD25-11D0-98A8-0800361B1103

我的電腦:20D04FE0-3AEA-1069-A2D8-08002B30309D

網上鄰居:208D2C60-3AEA-1069-A2D7-08002B30309D

資源回收筒:645FF040-5081-101B-9F08-00AA002F954E

Internet Explorer:871C5380-42A0-1069-A2EA-08002B30309D

控制臺:21EC2020-3AEA-1069-A2DD-08002B30309D

撥號網路/網路連線:992CFFA0-F557-101A-88EC-00DD010CCC48

任務計畫:D6277990-4C6A-11CF-8D87-00AA0060F5BF

印表機(和傳真):2227A280-3AEA-1069-A2DE-08002B30309D

歷史資料夾:7BD29E00-76C1-11CF-9DD0-00A0C9034933

公文包:85BBD920-42A0-1069-A2E4-08002B30309D

Web資料夾:BDEADF00-C265-11d0-BCED-00A0C90AB50F

網頁:25336920-03F9-11CF-8FD0-00AA00686F13

惡意廣告外掛程式

上面說到電腦上所有的的軟體都有CLSID,那么惡意外掛程式也有他自己的CLSID。比如下面的:

偽造IE瀏覽器:871C5380-42A0-1069-A2EA-08002B303099

如果你懷疑自己的電腦是否中了偽造IE瀏覽器惡意廣告外掛程式,進入註冊表,發現有這段CLSID,那么就肯定中了。

CLSID的生成

生成GUID的C++代碼

相關詞條

相關搜尋

熱門詞條

聯絡我們