賽孚耐ikey1000整合到web的方案1_第1頁
賽孚耐ikey1000整合到web的方案1_第2頁
賽孚耐ikey1000整合到web的方案1_第3頁
賽孚耐ikey1000整合到web的方案1_第4頁
賽孚耐ikey1000整合到web的方案1_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、賽孚耐iKey 1000網(wǎng)站登錄方案說明1. 使用iKey 1000進(jìn)行網(wǎng)站登錄iKey 1000是全球市場占有率最高的身份認(rèn)證令牌產(chǎn)品。將iKey 1000與各種應(yīng)用相結(jié)合,將為用戶提供安全、可靠、簡單、方便的身份認(rèn)證和登錄體驗(yàn)。2. 方案的過程客戶端控件口令密鑰文件用戶名文件iKey 1000用戶數(shù)據(jù)庫服務(wù)端控件服務(wù)器1發(fā)送挑戰(zhàn)數(shù)據(jù)2返回簽名結(jié)果和用戶名首先,認(rèn)證網(wǎng)頁生成一個(gè)挑戰(zhàn)數(shù)據(jù)(隨機(jī)數(shù))并傳給客戶端。客戶端控件會(huì)尋找客戶的計(jì)算機(jī)上是否有iKey 1000硬件,并試圖打開用戶名文件和用戶口令密鑰文件。當(dāng)這些操作都成功后,客戶端控件會(huì)使用用戶口令密鑰文件對(duì)挑戰(zhàn)數(shù)據(jù)簽名,并將簽名結(jié)果連同用

2、戶名一起發(fā)還給認(rèn)證服務(wù)器。當(dāng)認(rèn)證服務(wù)器收到返回?cái)?shù)據(jù),首先會(huì)在用戶數(shù)據(jù)庫中尋找是否有相同用戶名的用戶存在,如果存在則取出對(duì)應(yīng)的用戶口令,以它為密鑰,調(diào)用服務(wù)端控件的HMAC-MD5簽名算法對(duì)原始的挑戰(zhàn)數(shù)據(jù)進(jìn)行簽名。最后,服務(wù)器將比較由客戶處傳回的簽名數(shù)據(jù)與服務(wù)器自己產(chǎn)生的簽名數(shù)據(jù)是否相同。如果相同則意味著用戶數(shù)據(jù)庫中存儲(chǔ)的用戶口令與iKey 1000硬件內(nèi)存儲(chǔ)的用戶口令完全相同,該用戶是合法用戶;否則無法通過認(rèn)證。3. 方案的組成在新的認(rèn)證方式中,開發(fā)商需要用到iKey 1000初始化工具、客戶端控件、服務(wù)端控件以及iKey 1000的客戶端安裝包。以下進(jìn)行分別的說明。a) iKey 1000初

3、始化工具在方案附帶的InitTool目錄下,包含了一個(gè)VC6的工程源文件。并且在Release子目錄下包含一個(gè)編譯好的InitTool.Exe可執(zhí)行文件。這個(gè)工程可以實(shí)現(xiàn)對(duì)iKey 1000的初始化。b) iKey 1000客戶端控件iKey 1000的客戶端控件是一個(gè)經(jīng)過簽名的ActiveX形式的COM控件,它的文件名是iKeyClient.dl。客戶端控件與初始化工具相對(duì)應(yīng),向網(wǎng)頁開發(fā)者提供了一組可以利用iKey 1000內(nèi)部的用戶名文件和用戶口令文件進(jìn)行身份認(rèn)證的函數(shù)接口。iKey 1000客戶端控件的CLSID為“2669C745-AF54-4B50-B97C-7683123FEBA2

4、”,并能夠響應(yīng)iKey 1000的硬件插撥消息。下面對(duì)iKey 1000客戶端控件的所有的接口函數(shù)進(jìn)行說明:l HRESULT Open()說明:打開目前系統(tǒng)中的第一個(gè)iKey 1000設(shè)備。iKey 1000不支持多個(gè)設(shè)備共存,在這種情況下,只有第一個(gè)找到的設(shè)備會(huì)被打開。JavsScript調(diào)用示例:iKeyClient.Open();注:這里的iKeyClient是網(wǎng)頁內(nèi)定義的iKey 1000客戶端控件的名稱(ID),開發(fā)中應(yīng)根據(jù)實(shí)際命名進(jìn)行改變。下同。l HRESULT Close()說明:關(guān)閉打開的iKey 1000設(shè)備。并不要求必須調(diào)用此函數(shù)來并閉設(shè)備。在iKey 1000客戶端控

5、件關(guān)閉時(shí),打開的設(shè)備會(huì)自動(dòng)關(guān)閉。JavsScript調(diào)用示例:iKeyClient.Close();l HRESULT VerifyPin(inBSTR strPin)說明:校驗(yàn)iKey 1000的用戶PIN碼。輸入數(shù)據(jù):strPin:用戶PIN字符串JavsScript調(diào)用示例:iKeyClient.VerifyPin (PIN);l HRESULT ChangeDirByName(inBSTR strDirName)說明:改變iKey 1000文件系統(tǒng)的當(dāng)前目錄。iKey 1000內(nèi)部存在著一個(gè)簡單的文件系統(tǒng),默認(rèn)地,在iKey 1000剛剛插入計(jì)算機(jī)時(shí),其當(dāng)前目錄指向根目錄。使用本函數(shù)可

6、以改變當(dāng)前目錄至所需的目錄。使用InitTool初始化的iKey 1000,文件存儲(chǔ)在“Web Office”目錄下。輸入數(shù)據(jù):strDirName:要改變的目標(biāo)目錄名字符串JavsScript調(diào)用示例:iKeyClient.ChangeDirByName (NEWDIRNAME);l HRESULT GetUsername(inULONG ulFileID, out, retvalBSTR * pUsername)說明:獲取iKey 1000硬件內(nèi)的對(duì)應(yīng)數(shù)據(jù)文件所存儲(chǔ)的用戶名字符串。使用InitTool初始化的用戶名數(shù)據(jù)文件的文件ID為2。注意,如果開發(fā)商將用戶名文件存儲(chǔ)在特殊的目錄下,調(diào)用

7、這個(gè)函數(shù)前必須首先調(diào)用ChangeDirByName函數(shù)改變當(dāng)前目錄至文件存儲(chǔ)目錄。輸入數(shù)據(jù):ulFileID:存儲(chǔ)用戶名的數(shù)據(jù)文件的文件ID返回?cái)?shù)據(jù):取得的用戶名字符串JavsScript調(diào)用示例:USERNAME = iKeyClient.GetUsername(2);l HRESULT Authenticate(inULONG ulFID1, inULONG ulFID2, inBSTR pDigest, out, retvalBSTR * pResult)說明:對(duì)打開的iKey 1000進(jìn)行認(rèn)證,即使用用戶口令密鑰文件對(duì)輸入字符串進(jìn)行簽名。要注意的是,用戶口令經(jīng)過轉(zhuǎn)換后將會(huì)存儲(chǔ)在兩個(gè)密

8、鑰文件中,本函數(shù)必須同時(shí)輸入這兩個(gè)文件的ID。使用InitTool初始化的用戶口令密鑰文件的文件ID分別為3和4。注意,如果開發(fā)商將用戶口令文件存儲(chǔ)在特殊的目錄下,調(diào)用這個(gè)函數(shù)前必須首先調(diào)用ChangeDirByName函數(shù)改變當(dāng)前目錄至文件存儲(chǔ)目錄。輸入數(shù)據(jù):ulFID1:存儲(chǔ)用戶口令密鑰文件第一部分的文件IDulFID2:存儲(chǔ)用戶口令密鑰文件第二部分的文件IDpDigest:要進(jìn)行簽名的數(shù)據(jù)字符串。即從服務(wù)器端發(fā)出的挑戰(zhàn)數(shù)據(jù)返回?cái)?shù)據(jù):產(chǎn)生的簽名結(jié)果串JavsScript調(diào)用示例:RESULT = iKeyClient.Authenticate(3, 4, CHALLENGE);l HRES

9、ULT CheckToken(out, retval VARIANT_BOOL * haveToken)說明:判斷當(dāng)前系統(tǒng)中是否插有iKey 1000硬件。返回?cái)?shù)據(jù):如果找到硬件,返回true;否則返回falseJavsScript調(diào)用示例:RESULT = iKeyClient.CheckToken();c) iKey 1000客戶端檢查控件要在客戶的計(jì)算機(jī)上操作iKey 1000硬件,需要首先安裝硬件驅(qū)動(dòng)程序及基礎(chǔ)運(yùn)行庫。因此一個(gè)網(wǎng)頁要使用iKey 1000進(jìn)行身份認(rèn)證之前,首先要做的應(yīng)該是檢查客戶端是否安裝了驅(qū)動(dòng)及基礎(chǔ)運(yùn)行庫。進(jìn)行這個(gè)檢查工作的是客戶端檢查控件。iKey 1000的客戶端

10、檢查控件同樣是一個(gè)經(jīng)過簽名的ActiveX形式的COM控件,其文件名是ikChkClient.dll。客戶端檢查控件的CLSID為“0C9D30AB-1840-463F-BD45-E4BB5AAD4342”。iKey 1000客戶端檢查控件只包含一個(gè)用于檢查客戶端是否存在的接口。其說明如下:l HRESULT CheckClient(out, retval VARIANT_BOOL * haveClient)說明:判斷當(dāng)前系統(tǒng)是否安裝過iKey 1000硬件驅(qū)動(dòng)及其它基礎(chǔ)運(yùn)行庫。返回?cái)?shù)據(jù):如果發(fā)現(xiàn)已經(jīng)安裝,返回true;否則返回falseJavsScript調(diào)用示例:RESULT = iKey

11、Client.CheckClient();d) iKey 1000服務(wù)端控件iKey 1000的服務(wù)端控件運(yùn)行在認(rèn)證服務(wù)器上,是一個(gè)COM控件,用于完成服務(wù)器端的MD5簽名運(yùn)算。其文件名是iKeyMd5.dll。服務(wù)端控件的ProgID是iKeyMd5.crypt,在網(wǎng)頁上,可以這樣對(duì)它進(jìn)行定義:set iKeyServer = Server.CreateObject( "iKeyMd5.crypt" )服務(wù)端控件也只有一個(gè)函數(shù),下面給出使用VB Script的調(diào)用示例:RESULT = iKeyServer.Md5HMAC(CHALLENGE, PASSWORD, &qu

12、ot;", "" )4. 方案的實(shí)施過程a) 參照演示網(wǎng)頁,修改開發(fā)商網(wǎng)站針對(duì)自己的實(shí)際情況,在自己的網(wǎng)站中添加iKey 1000認(rèn)證支持。b) 安裝認(rèn)證網(wǎng)站將修改后的認(rèn)證網(wǎng)頁上傳至認(rèn)證服務(wù)器中。關(guān)鍵地,必須注冊服務(wù)端控件。服務(wù)端控件是一個(gè)COM控件,可以在服務(wù)器上使用“regsvr32 目錄名控件名”命令完成注冊。注意:正常情況下iKeyClient.dll可以自動(dòng)注冊,但當(dāng)某種情況下注冊不成功的時(shí)候,可以手工注冊iKeyClient.dll和ikChkClient.dll,手工注冊方法是:點(diǎn)擊Strat->run,輸入 regsvr32 “文件路徑”,比

13、如:regsvr32 "E:product ASP sampleSample ComponentsiKeyClient.dll"regsvr32 "E:product ASP sampleSample ComponentsikChkClient.dll"c) 初始化用戶iKey 1000使用InitTool(可以根據(jù)需要進(jìn)行修改),和現(xiàn)有的用戶數(shù)據(jù)庫,開發(fā)商可以初始化所有用于登錄的iKey 1000硬件。并將它們發(fā)送給相應(yīng)的最終用戶。由于初始化工具只是一個(gè)簡單的示例,示例中固定iKey的用戶口令是“12345678”,如果口令改變,初始化會(huì)失敗。另外初始化的用戶名和口令,要和用戶名/口令數(shù)據(jù)庫中的用戶名口令相同,才能夠認(rèn)證

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論