欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

欺騙檢測系統(tǒng)的制作方法

文檔序號:11450660閱讀:245來源:國知局
欺騙檢測系統(tǒng)的制造方法與工藝

本發(fā)明涉及欺騙檢測系統(tǒng)。



背景技術(shù):

目前存在一種系統(tǒng),每當(dāng)認(rèn)證成功時便更新客戶端和服務(wù)器各自中的隨機數(shù)等的種子(seed),在下一次認(rèn)證時,根據(jù)這些種子生成一次性id,在客戶端與服務(wù)器之間相互進行認(rèn)證(例如參照專利文獻1)。

【現(xiàn)有技術(shù)文獻】

【專利文獻】

專利文獻1:日本專利特開2004-282295號公報



技術(shù)實現(xiàn)要素:

但是,在上述系統(tǒng)中,若服務(wù)器側(cè)所保存的認(rèn)證用的客戶端側(cè)的信息(客戶端側(cè)的種子等)發(fā)生內(nèi)部泄露,則有可能通過欺騙以不正當(dāng)?shù)姆绞秸J(rèn)證成功。該情況下,客戶端與服務(wù)器之間進行下一次相互認(rèn)證時,相互認(rèn)證失敗,因而會發(fā)現(xiàn)欺騙,但是,在客戶端與服務(wù)器之間進行下一次相互認(rèn)證的時間間隔長的情況下,短時間內(nèi)很難檢測出欺騙。

本發(fā)明是鑒于上述問題而完成的,其目的在于,得到一種能夠在較短時間內(nèi)檢測出欺騙的欺騙檢測系統(tǒng)。

本發(fā)明涉及的欺騙檢測系統(tǒng)具有認(rèn)證服務(wù)器和終端裝置。認(rèn)證服務(wù)器在登錄規(guī)定服務(wù)時與終端裝置之間執(zhí)行第一階段的相互認(rèn)證,且至少在從退出規(guī)定服務(wù)至下一次登錄規(guī)定服務(wù)為止的期間內(nèi),與終端裝置之間反復(fù)執(zhí)行第二階段的相互認(rèn)證。終端裝置在檢測到第二階段的相互認(rèn)證失敗時立即執(zhí)行第一階段的相互認(rèn)證,且在該第一階段的相互認(rèn)證失敗時判斷為發(fā)生欺騙。

本發(fā)明涉及的計算機程序使終端裝置內(nèi)的計算機作為認(rèn)證處理部進行工作,其中,該認(rèn)證處理部在從終端裝置登錄規(guī)定服務(wù)時與認(rèn)證服務(wù)器之間執(zhí)行第一階段的相互認(rèn)證,且在從退出規(guī)定服務(wù)至下一次登錄規(guī)定服務(wù)為止的期間內(nèi),與認(rèn)證服務(wù)器之間反復(fù)執(zhí)行第二階段的相互認(rèn)證。而且,認(rèn)證處理部在檢測到第二階段的相互認(rèn)證失敗時立即執(zhí)行第一階段的相互認(rèn)證,且在該第一階段的相互認(rèn)證失敗時判斷為發(fā)生欺騙。

(發(fā)明效果)

根據(jù)本發(fā)明,能夠得到一種可在較短時間內(nèi)檢測出欺騙的欺騙檢測系統(tǒng)。

本發(fā)明的上述或者其他目的、特征以及優(yōu)點,在附圖的基礎(chǔ)上結(jié)合以下詳細(xì)說明將更加清楚。

附圖說明

圖1是表示本發(fā)明的實施方式涉及的欺騙檢測系統(tǒng)的構(gòu)成的框圖。

圖2是表示圖1中的終端裝置1的構(gòu)成的框圖。

圖3是表示圖2所示的終端裝置1中實現(xiàn)的處理部的框圖。

圖4是表示圖1中的認(rèn)證服務(wù)器3的構(gòu)成的框圖。

圖5是表示圖2所示的認(rèn)證服務(wù)器3中實現(xiàn)的處理部的框圖。

圖6是對圖1所示的系統(tǒng)中執(zhí)行的第一階段和第二階段的相互認(rèn)證進行說明的時序圖。

圖7是對圖1所示的系統(tǒng)中的欺騙檢測處理進行說明的時序圖。

圖8是對圖6中的第一階段的相互認(rèn)證(步驟s3)進行詳細(xì)說明的時序圖。

圖9是對圖6中的第一次的第二階段的首次相互認(rèn)證(步驟s8a)進行詳細(xì)說明的時序圖。

圖10是對圖6中的第二次及其以后的第二階段的第二次及其以后的相互認(rèn)證(步驟s8)進行詳細(xì)說明的時序圖。

圖11是表示第二實施方式中的種子表71的結(jié)構(gòu)的一例的圖。

圖12是表示第二實施方式中的認(rèn)證碼表72(第一階段表72a、第二階段表72b)的一例的圖。

圖13是說明第二實施方式中的認(rèn)證服務(wù)器3所執(zhí)行的數(shù)據(jù)處理的流程圖(1/2)。

圖14是說明第二實施方式中的認(rèn)證服務(wù)器3所執(zhí)行的數(shù)據(jù)處理的流程圖(2/2)。

具體實施方式

以下,根據(jù)附圖對本發(fā)明的實施方式進行說明。

第一實施方式.

圖1是表示本發(fā)明的實施方式涉及的欺騙檢測系統(tǒng)的構(gòu)成的框圖。在圖1所示的系統(tǒng)中,作為客戶端的終端裝置1與因特網(wǎng)等的網(wǎng)絡(luò)2連接,該網(wǎng)絡(luò)2與認(rèn)證服務(wù)器3和服務(wù)服務(wù)器(serviceserver)4連接。

終端裝置1是經(jīng)由網(wǎng)絡(luò)2享受由服務(wù)服務(wù)器4提供的規(guī)定網(wǎng)絡(luò)服務(wù)的用戶終端裝置。終端裝置1是內(nèi)置有個人計算機等的計算機的裝置。

網(wǎng)絡(luò)2包括有線和/或無線的lan(localareanetwork、局域網(wǎng))、以及/或者互聯(lián)網(wǎng)等的wan(wideareanetwork、廣域網(wǎng))。

認(rèn)證服務(wù)器3是在登錄由服務(wù)服務(wù)器4提供的規(guī)定的網(wǎng)絡(luò)服務(wù)之前執(zhí)行終端裝置1的認(rèn)證的認(rèn)證服務(wù)器。

服務(wù)服務(wù)器4是向通過認(rèn)證服務(wù)器3認(rèn)證成功的終端裝置1提供規(guī)定的網(wǎng)絡(luò)服務(wù)(例如網(wǎng)絡(luò)銀行、電子商務(wù)等)的服務(wù)器。

認(rèn)證服務(wù)器3和終端裝置1在各相互認(rèn)證會話(session)中進行相互認(rèn)證。認(rèn)證服務(wù)器3和終端裝置1分別生成種子,每當(dāng)對方側(cè)裝置的認(rèn)證成功時,便更新自己的種子和密鑰,并將自己的種子加密后相互進行收發(fā),從兩者的種子生成一次性認(rèn)證碼,根據(jù)兩者的種子分別執(zhí)行對方側(cè)裝置的一次性認(rèn)證碼的認(rèn)證。另外,以下將基于一次性認(rèn)證碼的認(rèn)證稱為“一次性認(rèn)證”。

另外,此處的一次性認(rèn)證碼為一次性id,但也可以是一次性密碼。該情況下,與一次性密碼一同使用固定的終端id。

認(rèn)證服務(wù)器3和終端裝置1以相互獨立的方式分別反復(fù)執(zhí)行第一階段的相互認(rèn)證和第二階段的相互認(rèn)證。即,第一階段的相互認(rèn)證用的種子和第二階段的相互認(rèn)證用的種子,作為互不相同的系列而分別進行生成和更新,第一階段的相互認(rèn)證用的一次性認(rèn)證碼和第二階段的相互認(rèn)證用的一次性認(rèn)證碼分別進行生成。

而且,第一階段的相互認(rèn)證的執(zhí)行目的在于:決定可否登錄規(guī)定服務(wù)。第二階段的相互認(rèn)證的執(zhí)行目的在于:檢測未登錄期間的欺騙。即,第一階段的相互認(rèn)證在用戶想登錄規(guī)定服務(wù)時執(zhí)行,而第二階段的相互認(rèn)證在檢測到退出服務(wù)時開始執(zhí)行,且持續(xù)反復(fù)執(zhí)行至下一次登錄為止。即,第二階段的相互認(rèn)證在執(zhí)行第一階段的相互認(rèn)證時結(jié)束。

在第一次執(zhí)行第二階段的相互認(rèn)證時,終端裝置1從第一階段的下次認(rèn)證用種子導(dǎo)出該第二階段的初次認(rèn)證用種子,并根據(jù)初次認(rèn)證用種子生成一次性認(rèn)證碼,在一次性認(rèn)證碼的認(rèn)證成功后,生成第二階段的下次認(rèn)證用種子,并根據(jù)下次認(rèn)證用種子生成一次性認(rèn)證碼。

另一方面,認(rèn)證服務(wù)器3將第一階段的下次認(rèn)證用種子保存至下一次執(zhí)行第一階段的認(rèn)證時為止,并從該下次認(rèn)證用種子導(dǎo)出第二階段的初次認(rèn)證用種子,在一次性認(rèn)證碼的認(rèn)證成功后,生成第二階段的下次認(rèn)證用種子,并根據(jù)下次認(rèn)證用種子生成一次性認(rèn)證碼。

終端裝置1在檢測到從規(guī)定服務(wù)退出后立即開始執(zhí)行第二階段的相互認(rèn)證,并以規(guī)定的時間間隔反復(fù)執(zhí)行第二階段的相互認(rèn)證,并且,在檢測到第二階段的相互認(rèn)證失敗時立即(即,與登錄服務(wù)無關(guān))執(zhí)行第一階段的相互認(rèn)證,且在該第一階段的相互認(rèn)證失敗時判斷為發(fā)生了欺騙。

另外,認(rèn)證服務(wù)器3在第一階段的相互認(rèn)證成功時,將第一階段的相互認(rèn)證的認(rèn)證結(jié)果通知給服務(wù)服務(wù)器4,但不會將第二階段的相互認(rèn)證的認(rèn)證結(jié)果通知給服務(wù)服務(wù)器4。由此,不會因為第二階段的相互認(rèn)證而對服務(wù)服務(wù)器4造成負(fù)擔(dān)。

另外,在圖1中,終端裝置1僅為一臺,但也可以使多臺終端裝置1分別保存不同的種子,分別利用不同的一次性認(rèn)證碼進行認(rèn)證。該情況下,認(rèn)證服務(wù)器3與多臺終端裝置1之間分別獨立地執(zhí)行基于一次性認(rèn)證碼的相互認(rèn)證。

以下,對上述系統(tǒng)中的各裝置的構(gòu)成和動作進行說明。

(1)各裝置的構(gòu)成

圖2是表示圖1中的終端裝置1的構(gòu)成的框圖。

如圖2所示,終端裝置1中內(nèi)置有具有cpu(centralprocessingunit、中央處理器)11、rom(readonlymemory、只讀存儲器)12、ram(randomaccessmemory、隨機存取存儲器)13等的計算機。

cpu11是執(zhí)行程序,從而執(zhí)行程序中所描述的處理的運算處理裝置。另外,rom12是預(yù)先存儲程序和數(shù)據(jù)的非易失性存儲器。另外,ram13是執(zhí)行程序時暫時存儲該程序和數(shù)據(jù)的易失性存儲器。

另外,接口14是能夠連接存儲裝置15的接口電路。另外,存儲裝置15是與接口14連接,且具備存儲未圖示的操作系統(tǒng)、一次性認(rèn)證程序31、用于享受規(guī)定服務(wù)的應(yīng)用程序等的存儲介質(zhì)的裝置。存儲裝置15使用硬盤驅(qū)動器、ssd(solidstatedisk、固態(tài)硬盤)等。

另外,接口16是能夠連接通信裝置17的接口電路。通信裝置17是網(wǎng)絡(luò)接口、調(diào)制解調(diào)器等能夠連接至網(wǎng)絡(luò)2的裝置。

另外,接口18是ieee1394、usb(universalserialbus、通用串行總線)等的外圍設(shè)備接口。另外,接口20是能夠連接輸入裝置21的接口電路。輸入裝置21是鍵盤、鼠標(biāo)等接收用戶操作并輸出與該用戶操作相符的信號的裝置。另外,圖像處理電路22是在寫入圖像數(shù)據(jù)時輸出與該數(shù)據(jù)對應(yīng)的圖像信號的電路。該圖像處理電路22能夠與根據(jù)該圖像信號顯示圖像的顯示裝置23連接。

cpu11、rom12、ram13、接(i/f)14、16、18、20以及圖像處理電路22通過總線或者控制器芯片(controllerchip)以能夠相互進行數(shù)據(jù)通信的方式被連接。

圖3是表示圖2所示的終端裝置1中實現(xiàn)的處理部的框圖。如圖3所示,在終端裝置1中,通過執(zhí)行上述程序而實現(xiàn)通信處理部41、認(rèn)證處理部42以及應(yīng)用43。

通信處理部41使用通信裝置17,并利用規(guī)定的通信協(xié)議經(jīng)由網(wǎng)絡(luò)2與認(rèn)證服務(wù)器3、服務(wù)服務(wù)器4等進行數(shù)據(jù)通信。

認(rèn)證處理部42通過由cpu11執(zhí)行一次性認(rèn)證程序31而實現(xiàn),并使用通信處理部41而與認(rèn)證服務(wù)器3之間執(zhí)行第一階段和第二階段的基于一次性認(rèn)證碼的相互認(rèn)證。此時,認(rèn)證處理部42執(zhí)行相互認(rèn)證中的客戶端側(cè)的處理。

應(yīng)用43使用通信處理部41與服務(wù)服務(wù)器4之間執(zhí)行數(shù)據(jù)通信,從而享受由服務(wù)服務(wù)器4提供的規(guī)定服務(wù)。另外,在第一階段的相互認(rèn)證成功之后,開始對應(yīng)用43提供規(guī)定服務(wù)。

圖4是表示圖1中的認(rèn)證服務(wù)器3的構(gòu)成的框圖。

在圖4中,cpu51是執(zhí)行程序,從而執(zhí)行程序中所描述的處理的運算處理裝置。另外,rom52是預(yù)先存儲程序和數(shù)據(jù)的非易失性存儲器。另外,ram53是執(zhí)行程序時暫時存儲該程序和數(shù)據(jù)的存儲器。

另外,接口54是能夠連接存儲裝置55的接口電路。存儲裝置55是與接口54連接,且具備存儲未圖示的操作系統(tǒng)、一次性認(rèn)證程序61、認(rèn)證中使用的數(shù)據(jù)等的存儲介質(zhì)的裝置。存儲裝置55使用硬盤驅(qū)動器、ssd等。在存儲裝置55中,作為認(rèn)證中使用的數(shù)據(jù)而保存有種子表71、認(rèn)證碼表72以及終端屬性表73。

種子表71具有在最后的相互認(rèn)證時更新的、第一階段和第二階段各自的下次認(rèn)證用種子和下次認(rèn)證用通用密鑰。一臺或多臺終端裝置1(即,客戶端側(cè)裝置)各自的下次認(rèn)證用種子和下次認(rèn)證用通用密鑰分別分開進行保存。

認(rèn)證碼表72具有在最后的相互認(rèn)證時更新的、第一階段和第二階段各自的下次認(rèn)證用的客戶端側(cè)一次性認(rèn)證碼。認(rèn)證碼表72包含第一階段表72a和第二階段表72b。第一階段表72a具有第一階段的下次認(rèn)證用的客戶端側(cè)一次性認(rèn)證碼,第二階段表72b具有第二階段的下次認(rèn)證用的客戶端側(cè)一次性認(rèn)證碼。一臺或多臺終端裝置1各自的下次認(rèn)證用的客戶端側(cè)一次性認(rèn)證碼分開進行保存。

終端屬性表73是具有終端裝置1的終端id、和與該終端id相關(guān)聯(lián)的屬性信息(所有者信息等)的表格。當(dāng)一次性認(rèn)證碼為一次性密碼時,終端屬性表73在判斷與一次性認(rèn)證碼一同從終端裝置1接收的終端id的正確性時進行參照。

另外,接口56是能夠連接通信裝置57的接口電路。通信裝置57是網(wǎng)絡(luò)接口、調(diào)制解調(diào)器等能夠連接至網(wǎng)絡(luò)2的裝置。

cpu51、rom52、ram53以及接口54、56通過總線或者控制器芯片以能夠相互進行數(shù)據(jù)通信的方式被連接。

圖5是表示圖2所示的認(rèn)證服務(wù)器3中實現(xiàn)的處理部的框圖。如圖5所示,在該認(rèn)證服務(wù)器3中,能夠?qū)崿F(xiàn)通信處理部81和服務(wù)器側(cè)認(rèn)證處理部82。

通信處理部81使用通信裝置57,并利用規(guī)定的通信協(xié)議經(jīng)由網(wǎng)絡(luò)2與終端裝置1、服務(wù)服務(wù)器4等進行數(shù)據(jù)通信。

服務(wù)器側(cè)認(rèn)證處理部82通過由cpu51執(zhí)行一次性認(rèn)證程序61而實現(xiàn),并使用通信處理部81而與一臺或多臺終端裝置1之間執(zhí)行第一階段和第二階段的基于一次性認(rèn)證碼的相互認(rèn)證中的服務(wù)器側(cè)的處理。

(2)各裝置的動作

圖6是對圖1所示的系統(tǒng)中執(zhí)行的第一階段和第二階段的相互認(rèn)證進行說明的時序圖。

在終端裝置1中,當(dāng)發(fā)生應(yīng)用43啟動、執(zhí)行規(guī)定的用戶操作等的規(guī)定事件(event)時,認(rèn)證處理部42作為服務(wù)登錄請求而檢測出該事件(步驟s1)。

接著,認(rèn)證處理部42將階段標(biāo)記(phaseflag)p設(shè)定為表示第一階段的值(此處為1)(步驟s2)。階段標(biāo)記p是表示認(rèn)證的階段的數(shù)據(jù)。可以從階段標(biāo)記p的值識別出當(dāng)前的階段。

接著,在終端裝置1的認(rèn)證處理部42與認(rèn)證服務(wù)器3的服務(wù)器側(cè)認(rèn)證處理部82之間執(zhí)行第一階段的一次性認(rèn)證(步驟s3)。此時,認(rèn)證處理部42根據(jù)所保存的客戶端側(cè)和服務(wù)器側(cè)的種子而生成客戶端側(cè)的一次性認(rèn)證碼,另外還生成下次認(rèn)證用種子并進行加密,并將生成的一次性認(rèn)證碼和加密的下次認(rèn)證用種子發(fā)送給認(rèn)證服務(wù)器3。服務(wù)器側(cè)認(rèn)證處理器82接收該一次性認(rèn)證碼和加密的下次認(rèn)證用種子,并判斷該一次性認(rèn)證碼是否正確。在該一次性認(rèn)證碼正確的情況下,服務(wù)器側(cè)認(rèn)證處理器82將客戶端側(cè)的下回認(rèn)證用種子進行解密并加以保存。

另外,在終端裝置1和認(rèn)證服務(wù)器3中預(yù)先設(shè)定第一階段的客戶端側(cè)種子的初始值、服務(wù)器側(cè)種子的初始值以及通用密鑰的初始值。在認(rèn)證服務(wù)器3中,與終端裝置1相關(guān)聯(lián)地設(shè)定這些初始值。

在認(rèn)證服務(wù)器3中,在種子表71中保存有與終端裝置1中的種子相同的種子(即,客戶端側(cè)和服務(wù)器側(cè)的種子),另外,第一階段的下次認(rèn)證用客戶端側(cè)一次性認(rèn)證碼保存在認(rèn)證碼表72中。下次認(rèn)證用客戶端側(cè)一次性認(rèn)證碼在上一次認(rèn)證時生成,并被寫入認(rèn)證碼表72中。該下次認(rèn)證用客戶端側(cè)一次性認(rèn)證碼用于判斷從終端裝置1發(fā)送來的一次性認(rèn)證碼的正確性。即,若從終端裝置1發(fā)送來的一次性認(rèn)證碼與認(rèn)證碼表72中保存的一次性認(rèn)證碼一致,則判斷為該一次性認(rèn)證碼正確。

服務(wù)器側(cè)認(rèn)證處理部82根據(jù)客戶端側(cè)和服務(wù)器側(cè)的種子而生成相對于終端裝置1的服務(wù)器側(cè)的一次性認(rèn)證碼,另外還生成下次認(rèn)證用種子并進行加密,并將生成的一次性認(rèn)證碼和加密的下次認(rèn)證用種子發(fā)送給終端裝置1。認(rèn)證處理部42接收該一次性認(rèn)證碼和加密的下次認(rèn)證用種子,并判斷該一次性認(rèn)證碼是否正確。若該一次性認(rèn)證碼正確,則認(rèn)證處理部42對服務(wù)器側(cè)的下回認(rèn)證用種子進行解密并加以保存。

由此,每當(dāng)?shù)谝浑A段的相互認(rèn)證成功時,便分別更新終端裝置1和認(rèn)證服務(wù)器3各自中的第一階段的種子的值。

在第一階段的一次性認(rèn)證成功后,認(rèn)證服務(wù)器3將表示終端裝置1的認(rèn)證成功的認(rèn)證結(jié)果發(fā)送給服務(wù)服務(wù)器4。服務(wù)服務(wù)器4在接收到該認(rèn)證結(jié)果后允許終端裝置1登錄服務(wù)。

接著,終端裝置1的應(yīng)用43向服務(wù)服務(wù)器4發(fā)送服務(wù)登錄請求并登錄服務(wù)(步驟s5),從而從服務(wù)服務(wù)器4享受規(guī)定的服務(wù)。

例如,認(rèn)證服務(wù)器3使該認(rèn)證結(jié)果中包含終端裝置1的一次性認(rèn)證碼,并且,終端裝置1在登錄服務(wù)時向服務(wù)服務(wù)器4發(fā)送一次性認(rèn)證碼。服務(wù)服務(wù)器4只要允許發(fā)送來的一次性認(rèn)證碼與從認(rèn)證服務(wù)器3接收到的一次性認(rèn)證碼一致的終端裝置1登錄服務(wù)即可。

另外,在第一階段的一次性認(rèn)證成功后,在認(rèn)證服務(wù)器3中,服務(wù)器側(cè)認(rèn)證處理部82根據(jù)下次認(rèn)證用種子而生成客戶端側(cè)一次性認(rèn)證碼,并更新認(rèn)證碼表72中關(guān)于終端裝置1的第一階段的下次認(rèn)證用客戶端側(cè)一次性認(rèn)證碼。

登錄服務(wù)后獲得規(guī)定的服務(wù),并且,認(rèn)證處理部42檢測應(yīng)用43退出服務(wù)的情況(步驟s6)。例如,在從應(yīng)用43向服務(wù)服務(wù)器4明確發(fā)送退出請求時、應(yīng)用43結(jié)束時、以及在規(guī)定期間內(nèi)未檢測到用戶對應(yīng)用43執(zhí)行操作時,判斷為應(yīng)用43已退出服務(wù)。

接著,在檢測到退出服務(wù)時,認(rèn)證處理部42將階段標(biāo)記p設(shè)定為表示第二階段的值(此處為2)(步驟s7)。

接著,在需要認(rèn)證時執(zhí)行第一次的第二階段的相互認(rèn)證(步驟s8a)。

在第一次執(zhí)行第二階段的相互認(rèn)證時,從通過第一階段中的認(rèn)證更新后的種子(即,第一階段的下次認(rèn)證用種子)導(dǎo)出第二階段用的種子的初始值。在第一實施方式中,將通過第一階段中的認(rèn)證更新后的種子的值設(shè)為第二階段用的種子的初始值。

然后,在終端裝置1的認(rèn)證處理部42和認(rèn)證服務(wù)器3的服務(wù)器側(cè)認(rèn)證處理部82之間,反復(fù)執(zhí)行第二階段的一次性認(rèn)證(步驟s8)。

在第一次執(zhí)行第二階段的一次性認(rèn)證(步驟s8a)時,認(rèn)證處理部42根據(jù)具有該初始值的種子生成一次性認(rèn)證碼,另外還生成第二階段的下次認(rèn)證用種子并進行加密,且將一次性認(rèn)證碼和加密的下次認(rèn)證用種子發(fā)送給認(rèn)證服務(wù)器3。

另一方面,服務(wù)器側(cè)認(rèn)證處理部82根據(jù)第一階段的下次認(rèn)證用種子計算出第二階段的種子的初始值,并根據(jù)該初始值計算出第一次的第二階段的一次性認(rèn)證碼。接著,在第一次執(zhí)行第二階段的一次性認(rèn)證(步驟s8a)中,服務(wù)器側(cè)認(rèn)證處理部82在從終端裝置1接收到一次性認(rèn)證碼和加密的下次認(rèn)證用種子后,根據(jù)計算出的一次性認(rèn)證碼判斷接收到的一次性認(rèn)證碼是否正確。當(dāng)該一次性認(rèn)證碼正確時,服務(wù)器側(cè)認(rèn)證處理部82對下次認(rèn)證用種子進行解密并加以保存。

在第一次的第二階段的一次性認(rèn)證成功后,在第二次及其以后的第二階段的一次性認(rèn)證(步驟s8)中,終端裝置1的認(rèn)證處理部42生成客戶端側(cè)的下次認(rèn)證用種子,并將根據(jù)客戶端側(cè)和服務(wù)器側(cè)的種子而生成的一次性認(rèn)證碼和加密的下次認(rèn)證用種子發(fā)送給認(rèn)證服務(wù)器3。

另一方面,在第二次及其以后的第二階段的一次性認(rèn)證(步驟s8)中,服務(wù)器側(cè)認(rèn)證處理部82根據(jù)上一次認(rèn)證時發(fā)送來的下次認(rèn)證用種子而計算出本次客戶端側(cè)的一次性認(rèn)證碼,然后,在從終端裝置1接收到一次性認(rèn)證碼和加密的下次認(rèn)證用種子后,根據(jù)計算出的一次性認(rèn)證碼判斷接收到的一次性認(rèn)證碼是否正確。當(dāng)該一次性認(rèn)證碼正確時,服務(wù)器側(cè)認(rèn)證處理部82對下次認(rèn)證用種子進行解密并加以保存(即,更新第二階段的下次認(rèn)證用種子)。

之后,在下一次執(zhí)行第一階段的相互認(rèn)證之前,以規(guī)定的時間間隔反復(fù)執(zhí)行第二階段的相互認(rèn)證(步驟s8)。在未發(fā)生欺騙的情況下,如圖6所示持續(xù)執(zhí)行處理。

圖7是對圖1所示的系統(tǒng)中的欺騙檢測處理進行說明的時序圖。

在終端裝置1中,在從登錄服務(wù)至退出服務(wù)為止的期間內(nèi),由于若發(fā)生欺騙則會導(dǎo)致重復(fù)登錄,因而可以利用通常方法檢測欺騙。

另一方面,在從退出服務(wù)至下一次登錄服務(wù)為止的期間內(nèi),如下那樣檢測欺騙。

在從退出服務(wù)至下一次登錄服務(wù)為止的期間內(nèi),反復(fù)執(zhí)行第二階段的相互認(rèn)證(步驟s8a、s8)。

在直接接入認(rèn)證服務(wù)器3而以不當(dāng)手段獲得第一階段的種子、密鑰等,并根據(jù)以不當(dāng)手段獲得的種子、密鑰等以欺騙的方式與不當(dāng)?shù)慕K端裝置之間不當(dāng)?shù)爻晒?zhí)行第一階段的相互認(rèn)證,從而執(zhí)行了服務(wù)登錄的情況下(步驟s201),認(rèn)證服務(wù)器3的服務(wù)器側(cè)認(rèn)證處理部82結(jié)束第二階段的相互認(rèn)證(步驟s202),并且執(zhí)行第一階段的更新處理(種子等的更新)(步驟s203)。

因此,正規(guī)的終端裝置1的認(rèn)證處理部42在下一次執(zhí)行第二階段的相互認(rèn)證時,該相互認(rèn)證失敗(步驟s204)。具體而言,由于認(rèn)證服務(wù)器3中的第二階段的相互認(rèn)證已經(jīng)結(jié)束,因而認(rèn)證服務(wù)器3中第二階段的終端裝置1的一次性認(rèn)證失敗,由此,終端裝置1中第二階段的認(rèn)證服務(wù)器3的一次性認(rèn)證也失敗。

終端裝置1的認(rèn)證處理部42在檢測到第二階段的相互認(rèn)證失敗后,將階段標(biāo)記p的值設(shè)為1(步驟s205),并執(zhí)行第一階段的相互認(rèn)證(步驟s206)。此時,由于認(rèn)證服務(wù)器3中關(guān)于終端裝置1的種子等因為發(fā)生欺騙時的更新處理而發(fā)生變更,因此,終端裝置1的認(rèn)證處理部42的第一階段的相互認(rèn)證失敗。具體而言,認(rèn)證服務(wù)器3中第一階段中的終端裝置1的一次性認(rèn)證失敗,由此,終端裝置1中第一階段中的認(rèn)證服務(wù)器3的一次性認(rèn)證也失敗。

由此,在第二階段的相互認(rèn)證失敗后第一階段的相互認(rèn)證失敗的情況下,終端裝置1的認(rèn)證處理部42判斷為發(fā)生欺騙(步驟s207)。

通過如此檢測欺騙,在發(fā)生欺騙之后,能夠在第二階段的相互認(rèn)證的時間間隔以下的時間內(nèi)檢測出欺騙。另外,在因為臨時的通信障礙等而導(dǎo)致第二階段的相互認(rèn)證失敗的情況下,由于其后的第一階段的相互認(rèn)證成功,因而不會發(fā)生誤檢測為欺騙的情況。

在此,對第一階段的相互認(rèn)證(步驟s3)進行詳細(xì)說明。圖8是對圖6中的第一階段的相互認(rèn)證(步驟s3)進行詳細(xì)說明的時序圖。另外,下述第一階段的說明中的n與第二階段的說明中的n沒有關(guān)系。

在終端裝置1中,除了種子之外還保存有第一階段用的通用密鑰。另外,在認(rèn)證服務(wù)器3中,也除了種子之外還保存有相同的通用密鑰作為第一階段用的通用密鑰。即,在終端裝置1和認(rèn)證服務(wù)器3中預(yù)先設(shè)定第一階段的通用密鑰的初始值。而且,如下所述,每當(dāng)?shù)谝浑A段的認(rèn)證成功時,便更新第一階段的通用密鑰的值。

在此,種子r1(n-1)是本次(n-1)的一次性認(rèn)證中的第一階段客戶端側(cè)種子。種子q1(n-1)是本次(n-1)的一次性認(rèn)證中的第一階段服務(wù)器側(cè)種子。通用密鑰k1(n-1)是用于在本次(n-1)的一次性認(rèn)證中向認(rèn)證服務(wù)器3發(fā)送下次認(rèn)證用的第一階段客戶端側(cè)種子r1(n)時,對該r1(n)進行加密的第一階段通用密鑰。

接著,認(rèn)證處理部42首先生成隨機數(shù)r,并將該隨機數(shù)r設(shè)為下次認(rèn)證用的第一階段客戶端側(cè)種子r1(n)(步驟s21)。

接著,認(rèn)證處理部42生成本次一次性認(rèn)證中的第一階段客戶端側(cè)一次性認(rèn)證碼c1(n-1)(步驟s22)。

一次性認(rèn)證碼c1(n-1)利用單向函數(shù)進行計算。該單向函數(shù)是取兩個自變量,且函數(shù)值根據(jù)自變量的順序的不同而不同的函數(shù)。在本實施方式中,該單向函數(shù)為散列函數(shù)hc。

一次性認(rèn)證碼c1(n-1)按照下式進行計算。

c1(n-1)=hc(r1(n-1),q1(n-1))

在此,散列函數(shù)hc的第一自變量使用r1(n-1),第二自變量使用q1(n-1)。

另外,認(rèn)證處理部42利用通用密鑰k1(n-1)按照規(guī)定的加密方式對r1(n)進行加密。另外,將利用通用密鑰k1(n-1)加密后的r1(n)表現(xiàn)為k1(n-1)*r1(n)。

然后,認(rèn)證處理部42使用通信處理部41將一次性認(rèn)證碼c1(n-1)和k1(n-1)*r1(n)發(fā)送給認(rèn)證服務(wù)器3(步驟s23)。此時,通信處理部41將一次性認(rèn)證碼c1(n-1)和k1(n-1)*r1(n)作為一條消息(message)進行發(fā)送。

在認(rèn)證服務(wù)器3中,服務(wù)器側(cè)認(rèn)證處理部82使用通信處理部81接收該消息,并從該消息中提取出一次性認(rèn)證碼c1(n-1)和k1(n-1)*r1(n),并判斷接收到的一次性認(rèn)證碼c1(n-1)是否與其所保存的第一階段客戶端側(cè)一次性認(rèn)證碼一致(步驟s24)。

另外,從終端裝置1向認(rèn)證服務(wù)器3發(fā)送的消息的數(shù)據(jù)格式(一次性認(rèn)證碼的大小和位置、以及加密后的種子的大小和位置),在第一階段和第二階段中是相同的。

另外,由于第一階段客戶端側(cè)一次性認(rèn)證碼和第二階段客戶端側(cè)一次性認(rèn)證碼具有相同的數(shù)據(jù)格式(即,相同的數(shù)據(jù)長度),加密后的第一階段客戶端側(cè)種子和加密后的第二階段客戶端側(cè)種子具有相同的數(shù)據(jù)格式(即,相同的數(shù)據(jù)長度),因此,僅從接收數(shù)據(jù)無法區(qū)分是第一階段的一次性認(rèn)證碼還是第二階段的一次性認(rèn)證碼。因此,服務(wù)器側(cè)認(rèn)證處理部82判斷接收到的一次性認(rèn)證碼是否與第一階段表72a中保存的一次性認(rèn)證碼一致、以及接收到的一次性認(rèn)證碼是否與第二階段表72b中保存的一次性認(rèn)證碼一致,從而判斷接收到的一次性認(rèn)證碼是正確的第一階段的一次性認(rèn)證碼、正確的第二階段的一次性認(rèn)證碼以及不正確的一次性認(rèn)證碼中的哪一種。

因此,當(dāng)判斷為接收到的一次性認(rèn)證碼c1(n-1)是不正確的一次性認(rèn)證碼時,服務(wù)器側(cè)認(rèn)證處理部82判斷為認(rèn)證失敗,并結(jié)束處理。

當(dāng)接收到的一次性認(rèn)證碼c1(n-1)與第一階段表72a中保存的第一階段客戶端側(cè)一次性認(rèn)證碼一致時,服務(wù)器側(cè)認(rèn)證處理部82判斷為認(rèn)證成功,且首先生成隨機數(shù)q,并將該隨機數(shù)q設(shè)為下次認(rèn)證用的第一階段服務(wù)器側(cè)種子q1(n)(步驟s25)。

另外,服務(wù)器側(cè)認(rèn)證處理部82利用種子表71中保存的通用密鑰k1(n-1)將k1(n-1)*r1(n)解密為r1(n)。接著,服務(wù)器側(cè)認(rèn)證處理部82生成本次(n-1)的一次性認(rèn)證用的第一階段服務(wù)器側(cè)一次性認(rèn)證碼s1(n-1)(步驟s26)。

一次性認(rèn)證碼s1(n-1)利用單向函數(shù)進行計算。該單向函數(shù)是取兩個自變量,且函數(shù)值根據(jù)自變量的順序的不同而不同的函數(shù)。在本實施方式中,該單向函數(shù)為散列函數(shù)hs。

一次性認(rèn)證碼s1(n-1)按照下式進行計算。

s1(n-1)=hs(r1(n),q1(n-1))

在此,散列函數(shù)hs的第一自變量使用r1(n),第二自變量使用q1(n-1)。另外,散列函數(shù)hs可以是與散列函數(shù)hc相同的函數(shù),也可以是與散列函數(shù)hc不同的函數(shù)。

另外,服務(wù)器側(cè)認(rèn)證處理部82利用通用密鑰k1(n-1)按照規(guī)定的加密方式對q1(n)進行加密。另外,將利用通用密鑰k1(n-1)加密后的q1(n)表現(xiàn)為k1(n-1)*q1(n)。

然后,服務(wù)器側(cè)認(rèn)證處理部82使用通信處理部81將一次性認(rèn)證碼s1(n-1)和k1(n-1)*q1(n)發(fā)送給終端裝置1(步驟s27)。此時,通信處理部81將一次性認(rèn)證碼s1(n-1)以及k1(n-1)*q1(n)作為一條消息進行發(fā)送。因此,在認(rèn)證服務(wù)器3中,當(dāng)終端裝置1的一次性認(rèn)證失敗時,不會發(fā)送該消息。因此,終端裝置1在未接收到該消息時,判斷為認(rèn)證服務(wù)器3中的終端裝置1的一次性認(rèn)證失敗。

另外,從認(rèn)證服務(wù)器3向終端裝置1發(fā)送的消息的數(shù)據(jù)格式(一次性認(rèn)證碼的大小和位置、以及加密后的種子的大小和位置),在第一階段和第二階段中是相同的。

另外,由于第一階段服務(wù)器側(cè)一次性認(rèn)證碼和第二階段服務(wù)器側(cè)一次性認(rèn)證碼具有相同的數(shù)據(jù)格式(即,相同的數(shù)據(jù)長度),加密后的第一階段服務(wù)器側(cè)種子和加密后的第二階段服務(wù)器側(cè)種子具有相同的數(shù)據(jù)格式(即,相同的數(shù)據(jù)長度),因此,僅從接收數(shù)據(jù)無法區(qū)分是第一階段的一次性認(rèn)證碼還是第二階段的一次性認(rèn)證碼。因此,終端裝置1的認(rèn)證處理部42利用階段標(biāo)記p的值來確定階段,并將接收到的一次性認(rèn)證碼作為所確定的階段的一次性認(rèn)證碼進行處理。

在終端裝置1中,認(rèn)證處理部42使用通信處理部41接收該消息,并提取出一次性認(rèn)證碼s1(n-1)和k1(n-1)*q1(n)。接著,認(rèn)證處理部42根據(jù)階段標(biāo)記p的值而將接收到的一次性認(rèn)證碼確定為第一階段的一次性認(rèn)證碼(步驟s28)。

接著,認(rèn)證處理部42根據(jù)r1(n)和q1(n-1),并按照上式計算出正確的一次性認(rèn)證碼s1(n-1)的值,并判斷接收到的一次性認(rèn)證碼s1(n-1)是否與計算出的值一致(步驟s29)。

此時,當(dāng)接收到的一次性認(rèn)證碼s1(n-1)與計算出的值不一致時,認(rèn)證處理部42判斷為認(rèn)證失敗,且結(jié)束處理。

當(dāng)接收到的一次性認(rèn)證碼s1(n-1)與計算出的值一致時,認(rèn)證處理部42判斷為認(rèn)證成功,首先利用所保存的通用密鑰k1(n-1)將k1(n-1)*q1(n)解密為q1(n),并將該值設(shè)為下次認(rèn)證用第一階段服務(wù)器側(cè)種子。

接著,認(rèn)證處理部42按照下式計算出下次認(rèn)證用第一階段通用密鑰k1(n),并更新第一階段通用密鑰(步驟s30)。

k1(n)=hk(k1(n-1),r1(n),q1(n))

在此,hk為單向函數(shù)且為散列函數(shù)。

由此,在第一階段的一次性認(rèn)證成功后,認(rèn)證處理部42將終端裝置1中保存的種子和通用密鑰更新為r1(n)、q1(n)以及k1(n)。

另一方面,在認(rèn)證服務(wù)器3中,在發(fā)送一次性認(rèn)證碼s1(n-1)之后,服務(wù)器側(cè)認(rèn)證處理部82也按照上式計算出下次認(rèn)證用第一階段通用密鑰k1(n),并同樣地更新第一階段通用密鑰(步驟s31)。

接著,服務(wù)器側(cè)認(rèn)證處理部82將第一階段的種子r1(n)、q1(n)的值作為初始值設(shè)為第二階段的客戶端側(cè)種子r2(0)和服務(wù)器側(cè)種子q2(0)(步驟s32),將第一階段的通用密鑰k1(n)的值作為初始值設(shè)為第二階段的通用密鑰k2(0)(步驟s33)。另外,此時服務(wù)器側(cè)認(rèn)證處理部82按照下式從r2(0)和q2(0)計算出第一次的第二階段客戶端側(cè)一次性認(rèn)證碼c2(0),并寫入第二階段表72b中加以保存。

進而,服務(wù)器側(cè)認(rèn)證處理部82按照上式從r1(n)和q1(n)計算出下一次執(zhí)行第一階段的一次性認(rèn)證時使用的客戶端側(cè)一次性認(rèn)證碼c1(n)。接著,服務(wù)器側(cè)認(rèn)證處理部82利用r1(n)、q1(n)以及k1(n)更新種子表71中關(guān)于終端裝置1的第一階段的數(shù)據(jù),并利用c1(n)更新第一階段表72a中關(guān)于終端裝置1的一次性認(rèn)證碼。由此,這些值被保存至下一次會話(即,下一次的第一階段認(rèn)證)為止。

由此,第一階段中的相互認(rèn)證執(zhí)行完畢。

接著,此處對第二階段的相互認(rèn)證(步驟s8a、s8)進行詳細(xì)說明。圖9是對圖6中的第一次的第二階段的相互認(rèn)證(步驟s8a)進行詳細(xì)說明的時序圖。圖10是對圖6中的第二次及其以后的第二階段的相互認(rèn)證(步驟s8)進行詳細(xì)說明的時序圖。

在第二階段的相互認(rèn)證中,僅在第一次從第一階段中的種子和通用密鑰導(dǎo)出種子和通用密鑰的初始值(圖9中的步驟s41、s42)。

即,上一次退出服務(wù)時開始執(zhí)行的第二階段的相互認(rèn)證中使用的種子和通用密鑰,在本次登錄服務(wù)時被廢棄,且在本次退出服務(wù)時重新設(shè)定初始值。

終端裝置1的認(rèn)證處理部42僅在第一次首先將第一階段的種子r1(n)、q1(n)的值作為初始值設(shè)為第二階段的客戶端側(cè)種子r2(0)和服務(wù)器側(cè)種子q2(0)(步驟s41),且將第一階段的通用密鑰k1(n)的值作為初始值設(shè)為第二階段的通用密鑰k2(0)(步驟s42)。另外,第二階段的客戶端側(cè)種子r2、服務(wù)器側(cè)種子q2以及通用密鑰k2被保存在ram13中,而非保存在存儲裝置15中。此時,認(rèn)證處理部42從ram13中消除第一階段的種子r1(n)、q1(n)以及通用密鑰k1(n)。另外,第一階段的種子r1(n)、q1(n)以及通用密鑰k1(n)保存在存儲裝置15中。

接著,認(rèn)證處理部42生成隨機數(shù)r,并將其設(shè)為下次認(rèn)證用第二階段客戶端側(cè)種子r2(n)(第一次時n=1)(步驟s43)。

接著,認(rèn)證處理部42生成本次一次性認(rèn)證中的第二階段客戶端側(cè)一次性認(rèn)證碼c2(n-1)(步驟s44)。

一次性認(rèn)證碼c2(n-1)利用單向函數(shù)進行計算。該單向函數(shù)是取兩個自變量,且函數(shù)值根據(jù)自變量的順序的不同而不同的函數(shù)。在本實施方式中,該單向函數(shù)為上述散列函數(shù)hc。

一次性認(rèn)證碼c2(n-1)按照下式進行計算。

c2(n-1)=hc(q2(n-1),r2(n-1))

在此,散列函數(shù)hc的第一自變量使用q2(n-1),第二自變量使用r2(n-1)。

另外,認(rèn)證處理部42利用通用密鑰k2(n-1)按照規(guī)定的加密方式對r2(n)進行加密。另外,將利用通用密鑰k2(n-1)加密后的r2(n)表現(xiàn)為k2(n-1)*r2(n)。

接著,認(rèn)證處理部42使用通信處理部41將一次性認(rèn)證碼c2(n-1)和k2(n-1)*r2(n)發(fā)送給認(rèn)證服務(wù)器3(步驟s45)。此時,通信處理部41將一次性認(rèn)證碼c2(n-1)和k2(n-1)*r2(n)作為一條消息進行發(fā)送。

在認(rèn)證服務(wù)器3中,服務(wù)器側(cè)認(rèn)證處理部82使用通信處理部81接收該消息,并提取出一次性認(rèn)證碼c2(n-1)和k2(n-1)*r2(n),且判斷接收到的一次性認(rèn)證碼c2(n-1)是否與第二階段表72b中保存的第二階段客戶端側(cè)一次性認(rèn)證碼一致(步驟s46)。

此時,在接收到的一次性認(rèn)證碼c2(n-1)與保存的第二階段客戶端側(cè)一次性認(rèn)證碼不一致的情況下,當(dāng)接收到的一次性認(rèn)證碼c2(n-1)也不是第一階段的一次性認(rèn)證碼時,服務(wù)器側(cè)認(rèn)證處理部82如上所述判斷為認(rèn)證失敗,并結(jié)束處理。

在接收到的一次性認(rèn)證碼c2(n-1)與保存的第二階段客戶端側(cè)一次性認(rèn)證碼一致的情況下,服務(wù)器側(cè)認(rèn)證處理部82判斷為認(rèn)證成功,首先生成隨機數(shù)q,并將該隨機數(shù)q設(shè)為下次認(rèn)證用第二階段服務(wù)器側(cè)種子q2(n)(步驟s47)。

另外,服務(wù)器側(cè)認(rèn)證處理部82利用保存的通用密鑰k2(n-1)將k2(n-1)*r2(n)解密為r2(n)。接著,服務(wù)器側(cè)認(rèn)證處理部82生成本次(n-1)的一次性認(rèn)證用的第二階段服務(wù)器側(cè)一次性認(rèn)證碼s2(n-1)(步驟s48)。

一次性認(rèn)證碼s2(n-1)利用單向函數(shù)進行計算。該單向函數(shù)是取兩個自變量,且函數(shù)值根據(jù)自變量的順序的不同而不同的函數(shù)。在本實施方式中,該單向函數(shù)為上述散列函數(shù)hs。

一次性認(rèn)證碼s2(n-1)按照下式進行計算。

s2(n-1)=hs(q2(n-1),r2(n))

在此,散列函數(shù)hs的第一自變量使用q2(n-1),第二自變量使用r2(n)。

另外,服務(wù)器側(cè)認(rèn)證處理部82利用通用密鑰k2(n-1)按照規(guī)定的加密方式對q2(n)進行加密。另外,將利用通用密鑰k2(n-1)加密后的q2(n)表現(xiàn)為k2(n-1)*q2(n)。

接著,服務(wù)器側(cè)認(rèn)證處理部82使用通信處理部81將一次性認(rèn)證碼s2(n-1)和k2(n-1)*q2(n)發(fā)送給終端裝置1(步驟s49)。此時,通信處理部81將一次性認(rèn)證碼s2(n-1)和k2(n-1)*q2(n)作為一條消息進行發(fā)送。因此,當(dāng)認(rèn)證服務(wù)器3中的終端裝置1的一次性認(rèn)證失敗時,不會發(fā)送該消息。因此,終端裝置1在未收到該消息時,判斷為認(rèn)證服務(wù)器3中的終端裝置1的一次性認(rèn)證失敗。

在終端裝置1中,認(rèn)證處理部42使用通信處理部41接收該消息,并提取出一次性認(rèn)證碼s2(n-1)和k2(n-1)*q2(n)。接著,認(rèn)證處理部42根據(jù)階段標(biāo)記p的值而確定接收到的一次性認(rèn)證碼為第二階段的一次性認(rèn)證碼(步驟s50)。

認(rèn)證處理部42根據(jù)r2(n)和q2(n-1),并按照上式計算出正確的一次性認(rèn)證碼s2(n-1)的值,并判斷接收到的一次性認(rèn)證碼s2(n-1)是否與計算出的值一致(步驟s51)。

此時,當(dāng)接收到的一次性認(rèn)證碼s2(n-1)與計算出的值不一致時,認(rèn)證處理部42判斷為認(rèn)證失敗,且結(jié)束處理。

當(dāng)接收到的一次性認(rèn)證碼s2(n-1)與計算出的值一致時,認(rèn)證處理部42判斷為認(rèn)證成功,首先利用保存的通用密鑰k2(n-1)將k2(n-1)*q2(n)解密為q2(n),并將該值設(shè)為下次認(rèn)證用第二階段服務(wù)器側(cè)種子。

接著,認(rèn)證處理部42按照下式計算出下次認(rèn)證用第二階段通用密鑰k2(n),并更新第二階段通用密鑰(步驟s52)。

k2(n)=hk(k2(n-1),r2(n),q2(n))

在此,hk為單向函數(shù)且為散列函數(shù)。

由此,在第二階段的一次性認(rèn)證成功后,認(rèn)證處理部42將r2(n)、q2(n)以及k2(n)保存至ram13中,直到下一次執(zhí)行第二階段的一次性認(rèn)證為止。

另一方面,在認(rèn)證服務(wù)器3中,在發(fā)送一次性認(rèn)證碼s2(n-1)之后,服務(wù)器側(cè)認(rèn)證處理部82也按照上式計算出下次認(rèn)證用第二階段通用密鑰k2(n),并更新第二階段通用密鑰(步驟s53)。

進而,服務(wù)器側(cè)認(rèn)證處理部82按照下式從r2(n)和q2(n)計算出第二階段的下次認(rèn)證用客戶端側(cè)一次性認(rèn)證碼c2(n)。接著,服務(wù)器側(cè)認(rèn)證處理部82利用r2(n)、q2(n)以及k2(n)更新種子表71中關(guān)于終端裝置1的第二階段的數(shù)據(jù),并利用c2(n)更新第二階段表72b中關(guān)于終端裝置1的一次性認(rèn)證碼。由此,本次的種子r2(n-1)、q2(n-1)以及通用密鑰k2(n-1)被消除,而保存下一次的種子r2(n)、q2(n)以及通用密鑰k2(n),直到下一次執(zhí)行第二階段的一次性認(rèn)證為止。在下一次執(zhí)行第二階段的一次性認(rèn)證時,代替上述初始值而使用下一次的種子r2(n)、q2(n)以及通用密鑰k2(n)。

由此,第二階段的相互認(rèn)證(一次相互認(rèn)證會話)執(zhí)行完畢。接著,在第二階段中,終端裝置1在一次相互認(rèn)證會話結(jié)束后,相隔規(guī)定的時間間隔(例如15分鐘)開始執(zhí)行下一次相互認(rèn)證會話。

另外,該時間間隔越短越好,且根據(jù)終端裝置1的數(shù)量、認(rèn)證服務(wù)器3的處理能力等決定。

如上所述,在上述第一實施方式中,認(rèn)證服務(wù)器3在登錄規(guī)定服務(wù)時與終端裝置1之間執(zhí)行第一階段的相互認(rèn)證,且在從退出規(guī)定服務(wù)至下一次登錄規(guī)定服務(wù)為止的期間內(nèi),與終端裝置1之間反復(fù)執(zhí)行第二階段的相互認(rèn)證。終端裝置1在檢測出第二階段的相互認(rèn)證失敗時立即執(zhí)行第一階段的相互認(rèn)證,且在該第一階段的相互認(rèn)證失敗時判斷為發(fā)生欺騙。

由此,能夠在較短時間內(nèi)檢測出欺騙,且不會對服務(wù)服務(wù)器4造成負(fù)擔(dān)。

第二實施方式.

在本發(fā)明的第二實施方式中,對于第一實施方式中的認(rèn)證服務(wù)器3內(nèi)的數(shù)據(jù)結(jié)構(gòu)以及按照該數(shù)據(jù)結(jié)構(gòu)執(zhí)行的數(shù)據(jù)處理的一例進行說明。另外,由于系統(tǒng)的基本構(gòu)成和動作與第一實施方式相同,故省略其說明。另外,在該第二實施方式中,一次性認(rèn)證碼是一次性id。

首先,對數(shù)據(jù)結(jié)構(gòu)進行說明。

在第二實施方式中,在認(rèn)證服務(wù)器3中,對于與終端裝置1相同的一臺或多臺終端裝置分別分配特有的管理編號,且與該管理編號相關(guān)聯(lián)地保存有:(a)下次認(rèn)證用的第一階段客戶端側(cè)一次性認(rèn)證碼c1(n);(b)下次認(rèn)證用的第二階段客戶端側(cè)一次性認(rèn)證碼c2(n);(c)第一階段的當(dāng)前(n-1)的種子r1(n-1)、q1(n-1)以及通用密鑰k1(n-1)、和下次認(rèn)證用的種子r1(n)、q1(n)以及通用密鑰k1(n);以及(d)第二階段的當(dāng)前(n-1)的種子r2(n-1)、q2(n-1)以及通用密鑰k2(n-1)、和下次認(rèn)證用的種子r2(n)、q2(n)和通用密鑰k2(n)。

即,在第一階段表72a中,與管理編號相關(guān)聯(lián)地保存有(a)下次認(rèn)證用的第一階段客戶端側(cè)一次性認(rèn)證碼c1(n)。另外,在第二階段表72b中,與管理編號相關(guān)聯(lián)地保存有(b)下次認(rèn)證用的第二階段客戶端側(cè)一次性認(rèn)證碼c2(n)。另外,在種子表71中,與管理編號相關(guān)聯(lián)地保存有:(c)第一階段的當(dāng)前(n-1)的種子r1(n-1)、q1(n-1)以及通用密鑰k1(n-1)和下次認(rèn)證用的種子r1(n)、q1(n)以及通用密鑰k1(n);和(d)第二階段的當(dāng)前(n-1)的種子r2(n-1)、q2(n-1)以及通用密鑰k2(n-1)和下次認(rèn)證用的種子r2(n)、q2(n)以及通用密鑰k2(n)。

圖11是表示第二實施方式中的種子表71的結(jié)構(gòu)的一例的圖。圖12是表示第二實施方式中的認(rèn)證碼表72(第一階段表72a、第二階段表72b)的一例的圖。

圖11中的第一階段地址是表示在第一階段表72a內(nèi)具有與該第一階段地址相關(guān)聯(lián)的管理編號相同的管理編號的記錄的位置的數(shù)據(jù)。同樣地,圖11中的第二階段地址是表示在第二階段表72b內(nèi)具有與該第二階段地址相關(guān)聯(lián)的管理編號相同的管理編號的記錄的位置的數(shù)據(jù)。

另外,在圖12中,通過服務(wù)器側(cè)認(rèn)證處理部82將第一階段表72a內(nèi)的記錄(一次性認(rèn)證碼和管理編號的組合)按照一次性認(rèn)證碼的值呈升序地進行排序。同樣地,將第二階段表72b內(nèi)的記錄(一次性認(rèn)證碼和管理編號的組合)按照一次性認(rèn)證碼的值呈升序地進行排序。由此,在一次性認(rèn)證時,能夠迅速地判斷出從客戶端接收的一次性認(rèn)證碼是否已被登記在第一階段表72a、第二階段表72b中。

另外,種子表71、第一階段表72a以及第二階段表72b中預(yù)先具有規(guī)定數(shù)量(即,終端裝置的數(shù)量)的記錄,并對記錄內(nèi)的管理編號以外的其他域(field)設(shè)定初始值。

接下來,對數(shù)據(jù)處理進行說明。

圖13和圖14是說明第二實施方式中認(rèn)證服務(wù)器3所執(zhí)行的數(shù)據(jù)處理的流程圖。

在認(rèn)證服務(wù)器3中,服務(wù)器側(cè)認(rèn)證處理部82在從終端裝置1接收到包含一次性認(rèn)證碼c(第一階段或第二階段的一次性認(rèn)證碼)的消息后,判斷該一次性認(rèn)證碼c是否為已登記在第一階段表72a中的第一階段客戶端側(cè)一次性認(rèn)證碼c1(n-1)中的任意一個(步驟s101)。

當(dāng)接收到的一次性認(rèn)證碼c為已登記在第一階段表72a中的第一階段客戶端側(cè)一次性認(rèn)證碼c1(n-1)中的任意一個時,服務(wù)器側(cè)認(rèn)證處理部82在第一階段表72a中確定與接收到的一次性認(rèn)證碼c相關(guān)聯(lián)的管理編號(步驟s102)。該情況下,執(zhí)行第一階段的一次性認(rèn)證。

服務(wù)器側(cè)認(rèn)證處理部82從種子表71讀出與所確定的管理編號相關(guān)聯(lián)的q1(n-1)和k1(n-1)(步驟s103)。

接著,服務(wù)器側(cè)認(rèn)證處理部82利用讀出的k1(n-1)將接收到的k1(n-1)*r1(n)解密為r1(n),并將該r1(n)與該管理編號相關(guān)聯(lián)地寫入種子表71中(步驟s104)。

接著,服務(wù)器側(cè)認(rèn)證處理部82生成下次認(rèn)證用服務(wù)器側(cè)種子。首先,服務(wù)器側(cè)認(rèn)證處理部82生成隨機數(shù)q,并在將該隨機數(shù)q用作下次認(rèn)證用服務(wù)器側(cè)種子的情況下,判斷下次認(rèn)證用的第一階段客戶端側(cè)一次性認(rèn)證碼是否與其他的第一階段客戶端側(cè)一次性認(rèn)證碼和第二階段客戶端側(cè)一次性認(rèn)證碼中的任意一個一致(步驟s106),且判斷第一次的第二階段客戶端側(cè)一次性認(rèn)證碼是否與其他的第二階段客戶端側(cè)一次性認(rèn)證碼和第一階段客戶端側(cè)一次性認(rèn)證碼中的任意一個一致(步驟s107)。即,判斷使用生成的隨機數(shù)q時客戶端側(cè)一次性認(rèn)證碼的唯一性(即,不存在具有相同值的其他一次性認(rèn)證碼)是否得到確保。

此時,服務(wù)器側(cè)認(rèn)證處理部82按照下式計算出將該隨機數(shù)q用作下次認(rèn)證用服務(wù)器側(cè)種子時的下次認(rèn)證用的第一階段客戶端側(cè)一次性認(rèn)證碼x1、和第一次的第二階段客戶端側(cè)一次性認(rèn)證碼x2,并判斷這些一次性認(rèn)證碼x1、x2是否已登記在第一階段表72a和第二階段表72b中。

x1=hc(r1(n),q)

x2=hc(q,r2(0)),r2(0)=r1(n)

然后,當(dāng)判斷為利用所生成的隨機數(shù)q無法確保唯一性時,服務(wù)器側(cè)認(rèn)證處理部82重新生成隨機數(shù)q,直到唯一性得到確保為止。

另一方面,在判斷為利用所生成的隨機數(shù)q能夠確保唯一性時,服務(wù)器側(cè)認(rèn)證處理部82將隨機數(shù)q設(shè)為下次認(rèn)證用第一階段服務(wù)器側(cè)種子q1(n),并將該種子q1(n)與該管理編號相關(guān)聯(lián)地寫入種子表71中(步驟s108)。

接著,服務(wù)器側(cè)認(rèn)證處理部82生成第一階段服務(wù)器側(cè)一次性認(rèn)證碼s1(n-1)和加密后的下次認(rèn)證用第一階段服務(wù)器側(cè)種子k1(n-1)*q1(n),并發(fā)送給終端裝置1(步驟s109)。

另外,服務(wù)器側(cè)認(rèn)證處理部82將步驟s106中判斷時計算出的x1作為下次認(rèn)證用的第一階段客戶端側(cè)一次性認(rèn)證碼c1(n),并利用該c1(n)更新第一階段表72a中與該管理編號相關(guān)聯(lián)的一次性認(rèn)證碼(步驟s110)。此時,服務(wù)器側(cè)認(rèn)證處理部82從種子表71中讀出與該管理編號相關(guān)聯(lián)的第一階段地址,并利用該第一階段地址確定第一階段表72a中的該管理編號的記錄,并更新該記錄內(nèi)的一次性認(rèn)證碼。

然后,服務(wù)器側(cè)認(rèn)證處理部82將第一階段表72a內(nèi)的記錄按照一次性認(rèn)證碼的值呈升序的方式進行排序,對于通過排序而導(dǎo)致位置發(fā)生變更的記錄,更新種子表71中與該記錄的管理編號相關(guān)聯(lián)的第一階段地址(步驟s111)。

另外,服務(wù)器側(cè)認(rèn)證處理部82將步驟s107中判斷時計算出的x2作為初次認(rèn)證用的第二階段客戶端側(cè)一次性認(rèn)證碼c2(0),并利用該c2(0)更新第二階段表72b中與該管理編號相關(guān)聯(lián)的一次性認(rèn)證碼(步驟s112)。此時,服務(wù)器側(cè)認(rèn)證處理部82從種子表71中讀出與該管理編號相關(guān)聯(lián)的第二階段地址,并利用該第二階段地址確定第二階段表72b中的該管理編號的記錄,并更新該記錄內(nèi)的一次性認(rèn)證碼。

然后,服務(wù)器側(cè)認(rèn)證處理部82將第二階段表72b內(nèi)的記錄按照一次性認(rèn)證碼的值呈升序的方式進行排序,對于通過排序而導(dǎo)致位置發(fā)生變更的記錄,更新種子表71中與該記錄的管理編號相關(guān)聯(lián)的第二階段地址(步驟s113)。

接著,服務(wù)器側(cè)認(rèn)證處理部82生成下次認(rèn)證用的第一階段通用密鑰k1(n),并與該管理編號相關(guān)聯(lián)地寫入種子表71中(步驟s114)。

進而,服務(wù)器側(cè)認(rèn)證處理部82在種子表71中利用該管理編號的下次認(rèn)證用的種子r1(n)、q1(n)和通用密鑰k1(n),更新本次認(rèn)證用的種子r1(n-1)、q1(n-1)和通用密鑰k1(n-1)(步驟s115)。

由此,關(guān)于第一階段的一次性認(rèn)證的數(shù)據(jù)處理執(zhí)行完畢。

另一方面,當(dāng)在步驟s101中判斷為接收到的一次性認(rèn)證碼c尚未登記在第一階段表72a中時,服務(wù)器側(cè)認(rèn)證處理部82判斷接收到的一次性認(rèn)證碼c是否為已登記在第二階段表72b中的第二階段客戶端側(cè)一次性認(rèn)證碼c2(n-1)中的任意一個(步驟s121)。

當(dāng)接收到的一次性認(rèn)證碼c為已登記在第二階段表72b中的第二階段客戶端側(cè)一次性認(rèn)證碼c2(n-1)中的任意一個時,服務(wù)器側(cè)認(rèn)證處理部82在第二階段表72b中確定與接收到的一次性認(rèn)證碼c相關(guān)聯(lián)的管理編號(步驟s122)。該情況下,執(zhí)行第二階段的一次性認(rèn)證。

服務(wù)器側(cè)認(rèn)證處理部82從種子表71讀出與所確定的管理編號相關(guān)聯(lián)的q2(n-1)和k2(n-1)(步驟s123)。

接著,服務(wù)器側(cè)認(rèn)證處理部82利用讀出的k2(n-1)將接收到的k2(n-1)*r2(n)解密為r2(n),并將該r2(n)與該管理編號相關(guān)聯(lián)地寫入種子表71中(步驟s124)。

接著,服務(wù)器側(cè)認(rèn)證處理部82生成下次認(rèn)證用服務(wù)器側(cè)種子。首先,服務(wù)器側(cè)認(rèn)證處理部82生成隨機數(shù)q,在將該隨機數(shù)q用作下次認(rèn)證用服務(wù)器側(cè)種子時,判斷下次認(rèn)證用的第二階段客戶端側(cè)一次性認(rèn)證碼是否與其他的第二階段客戶端側(cè)一次性認(rèn)證碼和第一階段客戶端側(cè)一次性認(rèn)證碼中的任意一個一致(步驟s126)。即,判斷使用生成的隨機數(shù)q時客戶端側(cè)一次性認(rèn)證碼的唯一性(即,不存在具有相同值的其他一次性認(rèn)證碼)是否得到確保。

此時,服務(wù)器側(cè)認(rèn)證處理部82按照下式計算出將該隨機數(shù)q用作下次認(rèn)證用服務(wù)器側(cè)種子時的下次認(rèn)證用的第二階段客戶端側(cè)一次性認(rèn)證碼x2,并判斷該一次性認(rèn)證碼x2是否已登記在第二階段表72b中。

x2=hc(q,r2(n))

然后,當(dāng)判斷為利用所生成的隨機數(shù)q無法確保唯一性時,服務(wù)器側(cè)認(rèn)證處理部82重新生成隨機數(shù)q,直到唯一性得到確保為止。

另一方面,在判斷為利用所生成的隨機數(shù)q能夠確保唯一性時,服務(wù)器側(cè)認(rèn)證處理部82將隨機數(shù)q設(shè)為下次認(rèn)證用第二階段服務(wù)器側(cè)種子q2(n),并將該種子q2(n)與該管理編號相關(guān)聯(lián)地寫入種子表71中(步驟s127)。

接著,服務(wù)器側(cè)認(rèn)證處理部82生成第二階段服務(wù)器側(cè)一次性認(rèn)證碼s2(n-1)和加密后的下次認(rèn)證用第二階段服務(wù)器側(cè)種子k2(n-1)*q2(n),并發(fā)送給終端裝置1(步驟s128)。

另外,服務(wù)器側(cè)認(rèn)證處理部82將步驟s126中判斷時計算出的x2作為下次認(rèn)證用的第二階段客戶端側(cè)一次性認(rèn)證碼c2(n),并利用該c2(n)更新第二階段表72b中與該管理編號相關(guān)聯(lián)的一次性認(rèn)證碼(步驟s129)。此時,服務(wù)器側(cè)認(rèn)證處理部82從種子表71中讀出與該管理編號相關(guān)聯(lián)的第二階段地址,并利用該第二階段地址確定第二階段表72b中的該管理編號的記錄,并更新該記錄內(nèi)的一次性認(rèn)證碼。

然后,服務(wù)器側(cè)認(rèn)證處理部82將第二階段表72b內(nèi)的記錄按照一次性認(rèn)證碼的值呈升序的方式進行排序,對于通過排序而導(dǎo)致位置發(fā)生變更的記錄,更新種子表71中與該記錄的管理編號相關(guān)聯(lián)的第二階段地址(步驟s130)。

接著,服務(wù)器側(cè)認(rèn)證處理部82生成下次認(rèn)證用的第二階段通用密鑰k2(n),并與該管理編號相關(guān)聯(lián)地寫入種子表71中(步驟s131)。

進而,服務(wù)器側(cè)認(rèn)證處理部82在種子表71中利用該管理編號的下次認(rèn)證用的種子r2(n)、q2(n)和通用密鑰k2(n),更新本次認(rèn)證用的種子r2(n-1)、q2(n-1)和通用密鑰k2(n-1)(步驟s132)。

由此,關(guān)于第二階段的一次性認(rèn)證的數(shù)據(jù)處理執(zhí)行完畢。

如上所述,在上述第二實施方式中,利用管理編號來管理多臺終端裝置1,能夠針對各終端裝置1分別獨立地進行一次性認(rèn)證。

另外,關(guān)于上述實施方式,也可以在不脫離其主題的要旨和范圍并且不減弱其所期望的優(yōu)點的范圍內(nèi)進行各種變更和修改,由于這些變更和修改對于本領(lǐng)域技術(shù)人員而言是顯而易見的,因而這些變更和修改也應(yīng)該包含在權(quán)利要求范圍內(nèi)。

例如,在上述第一、第二實施方式中,將第一階段的種子和通用密鑰直接作為第二階段的種子和通用密鑰的初始值,但是,作為替代,也可以利用規(guī)定的函數(shù)(例如散列函數(shù)、單向函數(shù)),在終端裝置1和認(rèn)證服務(wù)器3中分別根據(jù)第一階段的種子和通用密鑰而導(dǎo)出第二階段的種子和通用密鑰的初始值。

另外,在上述第一、第二實施方式中,將階段標(biāo)記p設(shè)為2的時機,只要是在第一階段的一次性認(rèn)證結(jié)束之后,且接收第一次的第二階段服務(wù)器側(cè)一次性認(rèn)證碼s2(0)之前,則可以為任何時候。

另外,在上述第一、第二實施方式中,在退出服務(wù)后立即開始執(zhí)行第二階段的相互認(rèn)證,但是,作為替代,也可以在登錄服務(wù)后立即開始執(zhí)行第二階段的相互認(rèn)證。該情況下,在下一次登錄服務(wù)時暫時停止第二階段的相互認(rèn)證,并重新設(shè)定初始值后開始執(zhí)行第二階段的相互認(rèn)證。

另外,在上述第一、第二實施方式中,也可以使用一次性認(rèn)證以外的其他認(rèn)證方法進行相互認(rèn)證。

另外,在上述第一、第二實施方式中,也可以將認(rèn)證服務(wù)器3作為前端服務(wù)器,將服務(wù)服務(wù)器4作為后端服務(wù)器。該情況下,經(jīng)由認(rèn)證服務(wù)器3而在終端裝置1與服務(wù)服務(wù)器4之間執(zhí)行服務(wù)登錄請求、服務(wù)退出請求以及與服務(wù)相關(guān)的數(shù)據(jù)通信。

(工業(yè)上的可利用性)

本發(fā)明例如能夠適用于網(wǎng)絡(luò)服務(wù)中的欺騙檢測。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
岳阳县| 饶阳县| 巴楚县| 德阳市| 临高县| 兴山县| 霍山县| 四平市| 社旗县| 定州市| 临汾市| 科技| 岳西县| 巴中市| 盱眙县| 永兴县| 小金县| 咸阳市| 阿图什市| 宾阳县| 桐庐县| 宜君县| 宝鸡市| 延庆县| 和硕县| 竹山县| 司法| 玛沁县| 砀山县| 囊谦县| 准格尔旗| 桑植县| 吉林省| 佛教| 诸暨市| 唐河县| 禄丰县| 怀仁县| 包头市| 开原市| 永寿县|