專(zhuān)利名稱(chēng):安全口令輸入的制作方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及改進(jìn)的口令安全,尤其涉及輸入期間的改進(jìn)口令安全。更準(zhǔn)確地,本發(fā)明涉及擊敗在口令輸入期間未授權(quán)的按鍵記錄(keystroke logging)。
背景技術(shù):
在計(jì)算機(jī)系統(tǒng)或者計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)內(nèi),維護(hù)信息和對(duì)該信息的訪問(wèn)的安全是重要的。在計(jì)算機(jī)系統(tǒng)中維護(hù)安全的通常方法是將特定用戶(hù)與特定口令相關(guān)聯(lián),并需要用戶(hù)提交口令,以便接收針對(duì)計(jì)算機(jī)系統(tǒng)或者計(jì)算機(jī)系統(tǒng)網(wǎng)絡(luò)內(nèi)的信息的訪問(wèn)。
當(dāng)設(shè)置口令時(shí),每個(gè)計(jì)算機(jī)系統(tǒng)或者計(jì)算機(jī)系統(tǒng)網(wǎng)絡(luò)通常指定關(guān)于口令長(zhǎng)度和必須被包括在口令中的字符的類(lèi)型的規(guī)則。例如,通常需要口令包含至少六個(gè)字符,并且通常需要口令包含字母字符和數(shù)字字符的混合。
雖然口令提供了保護(hù)對(duì)網(wǎng)絡(luò),應(yīng)用程序和數(shù)據(jù)的訪問(wèn)的一層安全性,然而使用按鍵記錄技術(shù)的攻擊者輕易地危及使用口令作為安全手段的方式。通常,按鍵記錄技術(shù)記錄授權(quán)用戶(hù)用來(lái)輸入口令的按鍵,使得未授權(quán)的用戶(hù)隨后可以輸入授權(quán)用戶(hù)的口令,以訪問(wèn)受保護(hù)的網(wǎng)絡(luò),應(yīng)用程序或數(shù)據(jù)。作為示例,可以通過(guò)硬件,軟件,主動(dòng)監(jiān)視,以及被動(dòng)監(jiān)視執(zhí)行按鍵記錄。
作為第一個(gè)示例,未授權(quán)的口令記錄者能在鍵盤(pán)內(nèi)部植入硬件按鍵記錄設(shè)備,其被連到鍵盤(pán)電纜上,或被置于鍵盤(pán)電纜輸出插孔和計(jì)算機(jī)鍵盤(pán)輸入插孔之間。按鍵記錄設(shè)備記錄鍵盤(pán)上輸入的所有按鍵并加時(shí)間標(biāo)記。未授權(quán)的口令記錄者之后能恢復(fù)設(shè)備并搜索關(guān)于指明認(rèn)證的模式的記錄(log)。在通常模式中,認(rèn)證質(zhì)詢(xún)之后輸入的字符串是口令。例如,如果鍵盤(pán)所連接的計(jì)算機(jī)運(yùn)行基于UNIX的操作系統(tǒng),則‘root|su|ssh|gpg’是導(dǎo)致用戶(hù)以口令響應(yīng)認(rèn)證質(zhì)詢(xún)的模式。在另一個(gè)實(shí)例中,如果計(jì)算機(jī)是網(wǎng)絡(luò)咖啡屋的一部分或多個(gè)用戶(hù)可用的其他終端,則存在一種模式,其中通常在“@hotmail.com“或”@yahoo.com“格式輸入之后輸入的字符是口令字符。在另一個(gè)示例中,在實(shí)現(xiàn)固件級(jí)認(rèn)證的計(jì)算機(jī)中,存在一種模式,其中在沒(méi)有活動(dòng)的長(zhǎng)間隔之后記錄的第一字符通常是開(kāi)機(jī)口令字符。
針對(duì)未授權(quán)地布置硬件按鍵記錄設(shè)備的一個(gè)保護(hù)方案是物理地保護(hù)計(jì)算機(jī)系統(tǒng),使得只有授權(quán)用戶(hù)能夠物理訪問(wèn)計(jì)算機(jī)系統(tǒng)。然而,實(shí)際上,強(qiáng)制物理安全是困難的,尤其在網(wǎng)絡(luò)咖啡屋和最好容許公眾訪問(wèn)計(jì)算機(jī)系統(tǒng)的其他地點(diǎn)。
作為第二個(gè)示例,未授權(quán)的口令記錄者能在操作系統(tǒng)中,或者其他計(jì)算機(jī)系統(tǒng)或計(jì)算機(jī)網(wǎng)絡(luò)的程序中植入按鍵記錄軟件。按鍵記錄軟件在記錄中記錄全部的或者選擇的按鍵并加時(shí)間標(biāo)記。尤其是,按鍵記錄軟件能檢測(cè)何程序正接收按鍵并只記錄特定程序所接收的按鍵。如硬件按鍵記錄設(shè)備一樣,未授權(quán)的口令記錄者能訪問(wèn)軟件按鍵記錄并檢測(cè)往往指明口令輸入的模式。
針對(duì)未授權(quán)地植入按鍵記錄軟件的一個(gè)保護(hù)方案是通過(guò)安裝在計(jì)算機(jī)系統(tǒng)的操作系統(tǒng)中的安全軟件,該安全軟件阻止遠(yuǎn)程入侵,遠(yuǎn)程入侵起到未授權(quán)的按鍵記錄軟件管道的作用。然而,安全軟件的一個(gè)限制在于,可以以不被當(dāng)前安全軟件所察覺(jué)的方式植入軟件按鍵記錄控制器。例如,計(jì)算機(jī)系統(tǒng)的授權(quán)用戶(hù)可打開(kāi)郵件附件,其秘密地安裝按鍵記錄軟件,以避開(kāi)操作系統(tǒng)的安全保護(hù)。
作為第三個(gè)示例,未授權(quán)的口令記錄者能通過(guò)偷偷查看或者用攝像機(jī)記錄用戶(hù)輸入的口令按鍵,從而主動(dòng)監(jiān)視按鍵。還可以使用麥克風(fēng)記錄每個(gè)鍵特有的聲音信號(hào)來(lái)主動(dòng)監(jiān)視按鍵。
作為硬件按鍵記錄設(shè)備布置的防護(hù),通過(guò)限制對(duì)計(jì)算機(jī)系統(tǒng)的物理訪問(wèn)并從房屋中清除未授權(quán)的麥克風(fēng)或者視頻設(shè)備,通常只能防止按鍵輸入的主動(dòng)監(jiān)視。然而,此安全解決方案是有限的,因?yàn)楣娍稍L問(wèn)的許多計(jì)算機(jī)不能采用此種類(lèi)型的安全保護(hù)。
作為第四個(gè)示例,未授權(quán)的口令記錄者能通過(guò)窺探計(jì)算機(jī)系統(tǒng)發(fā)出的電子信號(hào),從而被動(dòng)地監(jiān)視按鍵。視頻顯示單元泄漏電磁射線,其能被未授權(quán)的記錄者利用,以部分地或者全部地重構(gòu)顯示在計(jì)算機(jī)系統(tǒng)屏幕上的圖像。此外,可以使用計(jì)算機(jī)系統(tǒng)其他部分發(fā)出的信號(hào),以推測(cè)部件的操作和訪問(wèn)口令。雖然通過(guò)使用截留外泄電磁射線的電磁屏蔽能避免被動(dòng)監(jiān)視,然而由于屏蔽很昂貴,因此此解決方案是有限的。
除了未授權(quán)用戶(hù)能訪問(wèn)口令的四個(gè)方法示例之外,可以實(shí)現(xiàn)硬件按鍵記錄設(shè)備,按鍵記錄軟件,主動(dòng)監(jiān)視,以及被動(dòng)監(jiān)視的結(jié)合,以避開(kāi)當(dāng)前的安全系統(tǒng)。例如,軟件按鍵記錄程序能將鍵盤(pán)電纜配置成發(fā)射天線并且以莫爾斯碼發(fā)出記錄,發(fā)出的記錄被本地廉價(jià)的無(wú)線接收器檢測(cè)到,從而從遠(yuǎn)處被動(dòng)地監(jiān)視計(jì)算機(jī)系統(tǒng)。
隨著輸入口令的密碼保護(hù)技術(shù)的發(fā)展,按鍵記錄變成攻擊者獲得口令的理想方式。然而,如上所述,當(dāng)前針對(duì)按鍵記錄的保護(hù)方式是有限的。因此,需要一種防止未授權(quán)按鍵記錄的方法,系統(tǒng)和程序,其屏蔽口令按鍵輸入中的任何模式,并避開(kāi)主動(dòng)和被動(dòng)監(jiān)視。
發(fā)明內(nèi)容
因此,本發(fā)明提供了改進(jìn)的口令安全,尤其提供了口令輸入期間改進(jìn)的口令安全的方法,系統(tǒng)以及程序。而且,本發(fā)明提供了用于阻止并擊敗旨在盜竊口令的未授權(quán)按鍵記錄的安全口令輸入的方法,系統(tǒng)以及程序。
通過(guò)以改變的隨機(jī)字符流顯示口令提示來(lái)促成安全口令輸入,在改變的隨機(jī)字符流中,以視覺(jué)上可察覺(jué)的較高頻率顯示隨機(jī)字符流內(nèi)的特定字符。用戶(hù)通過(guò)鍵入輸入以遞增或遞減特定高頻字符達(dá)到口令字符,從而選擇口令字符。一旦用戶(hù)達(dá)到口令字符,用戶(hù)提供另一個(gè)輸入,指明選擇當(dāng)前高頻字符作為口令字符。一旦用戶(hù)已經(jīng)選擇了全部口令字符,則用戶(hù)鍵入輸入以指明口令是完整的。然后,口令輸入控制器將口令傳送到調(diào)用層。
口令提示最好是多個(gè)字符位置之中的一個(gè)字符位置,每個(gè)字符位置均顯示改變的隨機(jī)字符流,但是提示字符位置顯示修改的隨機(jī)流,而多個(gè)字符位置中的其它字符位置顯示純隨機(jī)流。尤其是,在使用26個(gè)字符的口令字符集的純隨機(jī)流中,隨機(jī)字符流具有二十六分之一的在任何給定時(shí)刻和任何給定流位置顯示‘A’的概率。然而,在修改的隨機(jī)流中,隨機(jī)字符流被修改為以大于二十六分之一的頻率顯示‘A’。在稱(chēng)作格式塔效應(yīng)(gestalt effect)的過(guò)程中,人的視覺(jué)系統(tǒng)將察覺(jué)異常并看見(jiàn)隱藏在隨機(jī)流中的更頻繁的‘A’。
可以調(diào)整多個(gè)字符位置中的口令提示的位置。尤其是,用戶(hù)可以在多個(gè)字符位置中調(diào)整口令提示的位置,或者口令提示的位置可以被自動(dòng)地調(diào)整。
可以隨機(jī)地選擇或者預(yù)先指定高頻字符的初始值。另外,顯示特定字符的概率是可調(diào)的,以達(dá)到使用戶(hù)在視覺(jué)上可察覺(jué)高頻字符的頻率。而且,隨機(jī)字符流改變的速率是可調(diào)的,以達(dá)到使用戶(hù)在視覺(jué)上可察覺(jué)高頻字符的速率。例如,最初字符以10Hz的速率流動(dòng),但可以通過(guò)用戶(hù)調(diào)整或自動(dòng)調(diào)整來(lái)改變此速率。
在一個(gè)實(shí)施例中,當(dāng)一層或服務(wù)器系統(tǒng)要求口令輸入時(shí),調(diào)用口令輸入控制器以促成安全口令輸入。在另一個(gè)實(shí)施例中,要求口令的一層或者服務(wù)器系統(tǒng)可以促成安全口令輸入。
在所附權(quán)利要求中闡明了被認(rèn)為是本發(fā)明特點(diǎn)的新穎特征。然而當(dāng)結(jié)合附圖閱讀時(shí),通過(guò)參照以下圖解實(shí)施例的具體描述,將最好地理解本發(fā)明自身,以及優(yōu)選使用方式,以及本發(fā)明的目的和優(yōu)點(diǎn),其中圖1是說(shuō)明可以實(shí)現(xiàn)本發(fā)明方法,系統(tǒng)和程序的計(jì)算機(jī)系統(tǒng)的模塊圖;圖2是說(shuō)明可以提供安全口令輸入的分布式網(wǎng)絡(luò)系統(tǒng)的模塊圖;圖3是說(shuō)明根據(jù)本發(fā)明的方法,系統(tǒng)和程序的口令輸入控制器的模塊圖;圖4是說(shuō)明根據(jù)本發(fā)明的方法,系統(tǒng)和程序的安全口令輸入顯示的圖示;圖5是說(shuō)明根據(jù)本發(fā)明的方法,系統(tǒng)和程序的安全口令輸入序列的圖示;而圖6是說(shuō)明根據(jù)本發(fā)明方法,系統(tǒng)和程序、用于控制安全口令輸入的過(guò)程和程序的高級(jí)邏輯流程圖。
具體實(shí)施例方式
現(xiàn)在參照附圖,尤其參照附圖1,其中說(shuō)明了系統(tǒng)的一個(gè)實(shí)施例,通過(guò)其可實(shí)現(xiàn)本發(fā)明的方法,系統(tǒng)和程序。本發(fā)明可以在各種系統(tǒng)中執(zhí)行,包括各種計(jì)算系統(tǒng)和電子設(shè)備。
計(jì)算機(jī)系統(tǒng)100包括用于在計(jì)算機(jī)系統(tǒng)100內(nèi)傳送信息的總線122或其他通信設(shè)備,以及至少一個(gè)處理設(shè)備,例如被連接到總線122、用于處理信息的處理器112。總線122最好包括通過(guò)橋和適配器連接并在計(jì)算機(jī)系統(tǒng)100內(nèi)由多個(gè)總線控制器控制的低延遲和高延遲路徑。當(dāng)作為服務(wù)器系統(tǒng)實(shí)現(xiàn)時(shí),計(jì)算機(jī)系統(tǒng)100通常包括被設(shè)計(jì)以改進(jìn)網(wǎng)絡(luò)服務(wù)能力的多處理器。
處理器112可以是通用處理器,例如IBM公司的PowerPCTM處理器,其在正常操作期間在可從動(dòng)態(tài)存儲(chǔ)設(shè)備,例如隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)114,和靜態(tài)存儲(chǔ)設(shè)備,例如只讀存儲(chǔ)器(ROM)116訪問(wèn)的操作系統(tǒng)和應(yīng)用軟件的控制下處理數(shù)據(jù)。操作系統(tǒng)最好向用戶(hù)提供圖形用戶(hù)接口(GUI)。在優(yōu)選實(shí)施例中,應(yīng)用或者操作系統(tǒng)軟件包含機(jī)器可執(zhí)行指令,當(dāng)在處理器112上執(zhí)行時(shí),所述指令執(zhí)行圖5流程圖說(shuō)明的操作,以及這里描述的其他操作。可選地,可以通過(guò)特定硬件部件(包含執(zhí)行步驟的硬連線邏輯),或者通過(guò)編程計(jì)算機(jī)部件和定制硬件部件的任何組合,執(zhí)行本發(fā)明的步驟。
可以將本發(fā)明提供為包含在已經(jīng)在其上存儲(chǔ)了機(jī)器可執(zhí)行指令的機(jī)器可讀取介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品,所述機(jī)器可讀指令用于將計(jì)算機(jī)系統(tǒng)100編程為執(zhí)行根據(jù)本發(fā)明的處理。這里所使用的術(shù)語(yǔ)“機(jī)器可讀取介質(zhì)”包括任何參與向處理器112或者計(jì)算機(jī)系統(tǒng)100的其他部件提供指令以供執(zhí)行的介質(zhì)。這樣的介質(zhì)可以采用許多形式,包括但不限于非易失介質(zhì),易失型介質(zhì)和傳輸介質(zhì)。非易失介質(zhì)的通常形式包括例如軟盤(pán),柔性盤(pán)(flexible disk),硬盤(pán),磁帶或任何其他磁介質(zhì),光盤(pán)ROM(CD-ROM)或任何其他光介質(zhì),穿孔卡片或任何其他有孔圖案的物理介質(zhì),可編程ROM(PROM),可擦除PROM(EPROM),電子EPROM(EEPROM),快擦寫(xiě)存儲(chǔ)器,任何其他存儲(chǔ)器芯片或盒,或計(jì)算機(jī)系統(tǒng)100能從中讀取并適合于存儲(chǔ)指令的任何其他介質(zhì)。在本實(shí)施例中,非易失介質(zhì)的示例是大容量存儲(chǔ)設(shè)備118,其被說(shuō)明為計(jì)算機(jī)系統(tǒng)100的內(nèi)部部件,但也可以被理解為是由外部設(shè)備所提供的。易失介質(zhì)包括動(dòng)態(tài)存儲(chǔ)器,例如RAM114。傳輸介質(zhì)包括同軸電纜,銅線或者光纖,包括包含總線122的線路。傳輸介質(zhì)還能采用聲波或光波的形式,例如在射頻或紅外數(shù)據(jù)通信期間所生成的波。
此外,本發(fā)明可以作為計(jì)算機(jī)程序產(chǎn)品被下載,其中通過(guò)載波或者經(jīng)由網(wǎng)絡(luò)鏈路134(例如調(diào)制解調(diào)器或者網(wǎng)絡(luò)連接)到被連接到總線122的通信接口132的其他傳播介質(zhì)中所體現(xiàn)的數(shù)據(jù)信號(hào),可以從遠(yuǎn)程計(jì)算機(jī),例如服務(wù)器140,傳遞程序指令到請(qǐng)求方計(jì)算機(jī)系統(tǒng)100。通信接口132提供了連接到網(wǎng)絡(luò)鏈路134的雙向數(shù)據(jù)通信,網(wǎng)絡(luò)鏈路134例如可以連接到局域網(wǎng)絡(luò)(LAN),廣域網(wǎng)絡(luò)(WAN),或者直接被連到因特網(wǎng)服務(wù)提供商(ISP)。尤其是,網(wǎng)絡(luò)鏈路134可以提供到一個(gè)或多個(gè)網(wǎng)絡(luò)的有線和/或者無(wú)線網(wǎng)絡(luò)通信。
網(wǎng)絡(luò)鏈路134通過(guò)網(wǎng)絡(luò)102提供數(shù)據(jù)通信服務(wù)。網(wǎng)絡(luò)102可以指網(wǎng)絡(luò)和網(wǎng)關(guān)的全球集合,其使用特定協(xié)議,例如傳輸控制協(xié)議(TCP)和網(wǎng)際協(xié)議(IP)彼此通信。網(wǎng)絡(luò)鏈路134和網(wǎng)絡(luò)102都使用承載數(shù)字?jǐn)?shù)據(jù)流的電氣,電磁或光信號(hào)。通過(guò)各種網(wǎng)絡(luò)的信號(hào),以及在網(wǎng)絡(luò)鏈路134上并且通過(guò)通信接口132、承載往來(lái)于計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)100的數(shù)字?jǐn)?shù)據(jù)的信號(hào),是傳送信息的載波的示例形式。
當(dāng)作為服務(wù)器系統(tǒng)實(shí)現(xiàn)時(shí),計(jì)算機(jī)系統(tǒng)100通常包括多個(gè)通信接口,其可經(jīng)由被連接到輸入/輸出控制器的多個(gè)外圍部件互連(PCI)總線橋訪問(wèn)。在此方式中,計(jì)算機(jī)系統(tǒng)100容許連接到多個(gè)網(wǎng)絡(luò)計(jì)算機(jī)。
此外,計(jì)算機(jī)系統(tǒng)100通常包括利于通信的多個(gè)外圍部件。這些外圍部件被連接到多個(gè)控制器,適配器和擴(kuò)展槽,這些控制器,適配器和擴(kuò)展槽被連接到多級(jí)總線122中的一級(jí)。例如,音頻輸出設(shè)備128和音頻輸入設(shè)備129通過(guò)連接于總線122上,使其能控制音頻輸出和輸入。顯示設(shè)備124也能夠連接在總線122上,使其能提供視覺(jué)的,觸覺(jué)的或者其他圖形的表示形式,并且光標(biāo)控制設(shè)備130能夠連接于總線122上,使其能在顯示設(shè)備124內(nèi)控制指針的位置。鍵盤(pán)126能夠連接于總線122上,使其能作為到計(jì)算機(jī)系統(tǒng)100的用戶(hù)輸入接口。在本發(fā)明的可選實(shí)施例中,可以添加其他的輸入和輸出外圍部件。
本領(lǐng)域的普通技術(shù)人員將理解,可以改變圖1中說(shuō)明的硬件。此外,本領(lǐng)域的技術(shù)人員將理解,所說(shuō)明的示例不表示暗示對(duì)本發(fā)明的結(jié)構(gòu)性限制。
現(xiàn)在參考圖2,模塊圖說(shuō)明了可以提供安全口令輸入的分布式網(wǎng)絡(luò)系統(tǒng)。分布式數(shù)據(jù)處理系統(tǒng)200是可以實(shí)現(xiàn)本發(fā)明的一個(gè)實(shí)施例的計(jì)算機(jī)網(wǎng)絡(luò)??梢岳斫猓梢栽谠试S經(jīng)由連接進(jìn)行通信的系統(tǒng)的其他實(shí)施例中實(shí)現(xiàn)本發(fā)明。
在實(shí)施例中,分布式數(shù)據(jù)處理系統(tǒng)200包含網(wǎng)絡(luò)102,其是被用于在各種設(shè)備與分布式數(shù)據(jù)處理系統(tǒng)200內(nèi)連接在一起的計(jì)算機(jī)之間提供通信鏈路的介質(zhì)。網(wǎng)絡(luò)102可以包括永久連接,例如線路或者光纜,通過(guò)電話連接和無(wú)線傳輸連接實(shí)現(xiàn)的暫時(shí)連接。
在許多網(wǎng)絡(luò)架構(gòu)中實(shí)現(xiàn)分布式數(shù)據(jù)處理系統(tǒng)200的客戶(hù)/服務(wù)器環(huán)境。在一個(gè)示例中,分布式數(shù)據(jù)處理系統(tǒng)100是具有網(wǎng)絡(luò)102的因特網(wǎng),其代表使用TCP/IP協(xié)議族彼此通信的網(wǎng)絡(luò)和網(wǎng)關(guān)的全世界集合。通過(guò)主節(jié)點(diǎn)或主機(jī)計(jì)算機(jī)之間數(shù)以百萬(wàn)計(jì)的高速數(shù)據(jù)通信線路來(lái)支持因特網(wǎng)。在另一個(gè)示例中,分布式數(shù)據(jù)處理系統(tǒng)200被實(shí)現(xiàn)為企業(yè)內(nèi)部網(wǎng),局域網(wǎng)(LAN),或廣域網(wǎng)(WAN)。而且,可以在使用傳統(tǒng)客戶(hù)/服務(wù)器環(huán)境的替代環(huán)境,例如網(wǎng)格計(jì)算環(huán)境的網(wǎng)絡(luò)中實(shí)現(xiàn)分布式數(shù)據(jù)處理系統(tǒng)200。
在所說(shuō)明的示例中,服務(wù)器系統(tǒng)204被連接到網(wǎng)絡(luò)102。另外,客戶(hù)機(jī)系統(tǒng)208和210被連接到網(wǎng)絡(luò)102,并通過(guò)輸入/輸出(I/O)設(shè)備提供用戶(hù)接口。服務(wù)器系統(tǒng)204可以提供客戶(hù)機(jī)系統(tǒng)208和210可以訪問(wèn)的多個(gè)資源,包括但不限于數(shù)據(jù),應(yīng)用程序和網(wǎng)絡(luò)。尤其是,在分布式數(shù)據(jù)處理系統(tǒng)200內(nèi),每個(gè)客戶(hù)機(jī)系統(tǒng)208和210以及服務(wù)器系統(tǒng)204可以包括資源,充當(dāng)“客戶(hù)機(jī)”和“服務(wù)器”,并可以使用計(jì)算機(jī)系統(tǒng),例如圖1的計(jì)算機(jī)系統(tǒng)100來(lái)實(shí)現(xiàn)。而且,雖然著重針對(duì)訪問(wèn)服務(wù)器系統(tǒng)的資源的客戶(hù)機(jī)系統(tǒng)來(lái)描述本發(fā)明,然而客戶(hù)機(jī)系統(tǒng)208和210還可以參與對(duì)等網(wǎng)絡(luò)通信并經(jīng)由網(wǎng)絡(luò)102訪問(wèn)資源。
然而,為使客戶(hù)機(jī)系統(tǒng)208或210之一訪問(wèn)服務(wù)器系統(tǒng)204的任何資源,服務(wù)器系統(tǒng)204可要求輸入與已注冊(cè)的用戶(hù)標(biāo)識(shí)符和口令相匹配的用戶(hù)標(biāo)識(shí)符和口令。根據(jù)本發(fā)明的優(yōu)點(diǎn),當(dāng)分布式數(shù)據(jù)處理系統(tǒng)200中的系統(tǒng)需要用于訪問(wèn)資源的口令時(shí),客戶(hù)機(jī)系統(tǒng)或者服務(wù)器系統(tǒng)可啟動(dòng)安全口令輸入控制器。安全口令輸入控制器促成口令輸入,使得導(dǎo)致口令檢測(cè)的未授權(quán)按鍵記錄的風(fēng)險(xiǎn)最小。尤其是,除非攻擊者使用昂貴的并難于執(zhí)行的記錄方法,例如高保真視頻記錄器(其記錄計(jì)算機(jī)監(jiān)視器和鍵盤(pán)之上用戶(hù)的手)或者高保真被動(dòng)監(jiān)視設(shè)備(其能重構(gòu)用戶(hù)計(jì)算機(jī)屏幕的內(nèi)容),以及硬件或軟件按鍵記錄器(其記錄精確的時(shí)間標(biāo)記),否則安全口令輸入控制器會(huì)確保安全的口令輸入。更重要的是,安全口令輸入控制器提供抵御位于公共區(qū)域,例如機(jī)場(chǎng)中的膝上型電腦和其他計(jì)算機(jī)系統(tǒng)的“竊號(hào)者(shoulder surfer)”的增強(qiáng)安全保護(hù)。
應(yīng)當(dāng)注意到,除了需要客戶(hù)機(jī)系統(tǒng)提供口令的服務(wù)器系統(tǒng)之外,分布式數(shù)據(jù)處理系統(tǒng)200內(nèi)的每個(gè)單獨(dú)系統(tǒng)可要求請(qǐng)求訪問(wèn)在此單獨(dú)系統(tǒng)上可獲得的資源的用戶(hù)輸入口令。尤其是,特定系統(tǒng)中的不同軟件層可需要特定系統(tǒng)上要求用戶(hù)的口令,以訪問(wèn)特定系統(tǒng)上可獲得的資源。例如,客戶(hù)機(jī)系統(tǒng)208可以在開(kāi)機(jī)時(shí)提示用戶(hù)輸入口令。
現(xiàn)在參考圖3,圖3根據(jù)本發(fā)明的方法,系統(tǒng)和程序說(shuō)明了口令輸入控制器的模塊圖。如圖所示,口令輸入控制器300最好包括高頻字符生成器306。高頻字符生成器306產(chǎn)生修改的隨機(jī)字符流,其被修改為使得以較高頻率顯示一個(gè)字符。尤其是,以使得觀看隨機(jī)字符流顯示的用戶(hù)可察覺(jué)高頻字符的頻率顯示高頻字符。尤其是,人類(lèi)的視覺(jué)系統(tǒng)在被稱(chēng)為格式塔效應(yīng)的過(guò)程中將察覺(jué)到異常,并看見(jiàn)高頻字符??梢噪S機(jī)選擇或者預(yù)先確定高頻字符的初值。而且,可以指定字符子集作為要被隨機(jī)選擇的高頻字符,使得用戶(hù)能預(yù)期高頻字符是字符子集中的一個(gè)。此外,可以選擇高頻字符,使得其一直位于偏離口令字符的特定字符范圍內(nèi)。
顯示控制器304控制在口令提示域中隨機(jī)字符流的顯示。最好是,還管理用于顯示隨機(jī)字符流的每個(gè)字符的速率和頻率百分比,使得用戶(hù)能在視覺(jué)上察覺(jué)高頻字符。
口令輸入監(jiān)視器302檢測(cè)用戶(hù)輸入的按鍵以遞增或遞減高頻字符,以便選擇口令字符。之后,口令輸入監(jiān)視器302檢測(cè)何時(shí)用戶(hù)輸入另一個(gè)按鍵以選擇口令字符。用戶(hù)重復(fù)遞增或遞減高頻字符以選擇口令的每個(gè)字符的過(guò)程。當(dāng)選擇了口令的全部字符時(shí),口令輸入監(jiān)視器302檢測(cè)何時(shí)輸入按鍵以完成口令輸入。然后,口令輸入監(jiān)視器302安全地傳送完整的口令到請(qǐng)求層。
通過(guò)實(shí)現(xiàn)口令輸入控制器300以提供安全口令輸入,截取授權(quán)用戶(hù)按鍵的未授權(quán)按鍵記錄方將僅僅看見(jiàn)或聽(tīng)見(jiàn)控制字符,該控制字符即使存在,也只顯示用戶(hù)口令的長(zhǎng)度。因此,當(dāng)實(shí)現(xiàn)了口令輸入控制器300時(shí),硬件,軟件和聽(tīng)覺(jué)按鍵記錄設(shè)備失效。
應(yīng)當(dāng)注意到,雖然通過(guò)參考顯示器上的口令輸入說(shuō)明了本發(fā)明,然而還可以通過(guò)本發(fā)明實(shí)現(xiàn)利用語(yǔ)音自動(dòng)化系統(tǒng)的口令輸入。尤其是,可以從文本將具有高頻字符的隨機(jī)字符流轉(zhuǎn)換成語(yǔ)音,并經(jīng)由揚(yáng)聲器輸出,并且可以從麥克風(fēng)檢測(cè)用于遞增或遞減高頻字符并且指明字符和口令完成的輸入,并將輸入從語(yǔ)音轉(zhuǎn)換成文本。
表1圖解了GNU/Linux平臺(tái)的C編程語(yǔ)言編寫(xiě)的口令輸入控制器300的部件的一個(gè)編程示例。本領(lǐng)域的普通技術(shù)人員將會(huì)理解,可以變化表1中所說(shuō)明的編程。而且,本領(lǐng)域的普通技術(shù)人員將會(huì)理解,其中所示示例不表示暗示有對(duì)本發(fā)明的編程限制。
#include<ncurses.h>
#include<studio.h>
#include<stdlib.h>
#include<time.h>
#include<unistd.h>
intpov_getpass(char*pass,int size,int cols,int seed){char c,x.y;int i,j,n,p;srand(seed)x=(rand()%26)+‘A’;y=rand()%cols;initscr();noecho();halfdelay(1);for(i=0,p=0,n=50;p<size,i=rand()%100){for(j=0,mvprintw(0,0,“Password“);j<cols;j++)printw(“%-2c”,(j=y(tǒng)&&i<n)?x(rand()%26)+‘A’);if((c=getch())=‘\n’)break;else if(c=‘i’){pass[p++]=x;pass[p]=‘\0’;}else if(c=‘J’)n=(n=0)?0n-10;else if(c=‘K’)n=(n=100)?100n+10;else if(c=‘J’)x=(x=‘A’)?‘Z’x-1;else if(c=‘K’)x=(x=‘Z’)?‘A’x+1;elseif(c=‘h’)y=(y=0)?cols-1y-1;else if(c=‘l’)y=(y=cols-1)?0y+1;}endwin();return p;}intmain(int argc,char**argv){char pass[256];if(pov_getpass(pass,sizeof(pass),4,time(NULL))<=0)return 1;printf(“%s”,pass);retum 0;}表1
現(xiàn)在參考圖4,圖4根據(jù)本發(fā)明的方法,系統(tǒng)和程序說(shuō)明了安全口令輸入顯示接口的圖示。如圖所示,顯示區(qū)402包括使用戶(hù)輸入口令的提示區(qū)404??梢岳斫?,可以在具有多種類(lèi)型的圖形能力的多個(gè)類(lèi)型的顯示接口中實(shí)現(xiàn)顯示區(qū)402。
在顯示區(qū)402中,提示區(qū)404顯示四個(gè)字符位置,其中例如可以由需要口令提示的程序或指定字符位置的數(shù)量的用戶(hù)來(lái)指定提示區(qū)404中字符位置的數(shù)量。例如,隨著字符位置的數(shù)量從1增加到25,跟蹤口令輸入的復(fù)雜度增加??梢岳斫猓m然提示區(qū)408在四列中顯示字符位置,然而可以實(shí)現(xiàn)其他的字符位置配置。例如,可以在一豎列中,或者以其他增加監(jiān)視口令輸入的復(fù)雜度的模式配置字符位置。
在示例中,第二字符位置被指定為當(dāng)前提示位置406。有利地,當(dāng)用戶(hù)正輸入口令時(shí),用戶(hù)可以調(diào)整當(dāng)前提示位置到提示區(qū)404中的任何字符位置。為了圖解的目的,還通過(guò)在此位置加下劃線來(lái)指明當(dāng)前提示位置406,然而,當(dāng)實(shí)現(xiàn)本發(fā)明時(shí),通過(guò)下劃線或者其他圖形指示來(lái)指明當(dāng)前提示位置會(huì)是不利的。替代地,在當(dāng)前提示位置顯示高頻字符的頻率最好允許用戶(hù)察覺(jué)當(dāng)前提示位置。
在每個(gè)字符位置,隨機(jī)產(chǎn)生的字符以特定速率流動(dòng)。根據(jù)本發(fā)明的優(yōu)點(diǎn),在當(dāng)前提示位置406中,生成并顯示修改的隨機(jī)字符流,其中以比其他字符明顯更高的頻率生成一個(gè)字符。尤其是,修改的隨機(jī)字符最好以使得對(duì)于觀看顯示的用戶(hù)而言,高頻字符為可視覺(jué)分辨的速率和頻率百分比流過(guò)當(dāng)前的提示位置404。例如,隨機(jī)字符流408說(shuō)明了可能在當(dāng)前提示位置404中生成和顯示的隨機(jī)字符,其中字符“A”可視覺(jué)分辨為高頻字符。
有利地,用戶(hù)可以通過(guò)增加或者減少頻率百分比來(lái)選擇增加或者減少將顯示高頻字符而不是隨機(jī)字符的概率。在示例中,設(shè)置頻率百分比,使得顯示高頻字符“A”而不是隨機(jī)字符的概率為33%,然而可以增加或減少此百分比。例如,視覺(jué)上分辨高頻字符有困難的用戶(hù)可以增加頻率百分比到50%,使得存在以大體一半的時(shí)間顯示高頻字符的概率。在另一個(gè)示例中,能輕易察覺(jué)具有33%頻率的模式的用戶(hù)可以減少頻率百分比,以增加竊號(hào)者檢測(cè)口令輸入的難度。
應(yīng)當(dāng)注意到,頻率百分比是粗略的估計(jì),因此,顯示高頻字符的實(shí)際頻率仍然受隨機(jī)機(jī)會(huì)影響。否則在頻率百分比被設(shè)為33%的示例中,可設(shè)置視頻記錄器為以3Hz的某個(gè)倍數(shù)記錄幀,并輕易地發(fā)現(xiàn)高頻字符。如表1中所圖解的,生成具有高頻字符的修改隨機(jī)字符串的一個(gè)方法是通過(guò)檢查隨機(jī)數(shù)。如果隨機(jī)數(shù)大于通過(guò)頻率百分比設(shè)置的特定門(mén)限,則修改流并顯示高頻字符;否則顯示隨機(jī)生成的字符。結(jié)果,如果門(mén)限百分比被設(shè)置為33%,則將以大約三分之一的時(shí)間顯示高頻字符,然而最好不以確定性的序列顯示。
而且,有利地,用戶(hù)可以選擇增加或減少在每個(gè)字符位置字符流過(guò)的速率,以幫助用戶(hù)在視覺(jué)上察覺(jué)高頻字符。例如,雖然認(rèn)為以10Hz顯示流字符是最理想的,然而對(duì)于某些用戶(hù),該速率可能是太快或者太慢了。而且,為了增加監(jiān)視口令輸入的復(fù)雜度,可以調(diào)整在不同字符位置字符流過(guò)的速率。
一旦用戶(hù)察覺(jué)到哪一列包含高頻字符,則用戶(hù)輸入按鍵以遞增或遞減高頻字符,以選擇口令字符。在示例中,如果口令的第一字符是“C”,則用戶(hù)將輸入兩次按鍵,以將高頻字符從“A”增加到“C”。
一旦用戶(hù)將高頻字符調(diào)整到口令字符,用戶(hù)輸入按鍵以指明字符選擇。然后,一旦用戶(hù)完成口令字符選擇,則用戶(hù)輸入按鍵以指明口令完成。所輸入的口令將被傳送到請(qǐng)求層。
應(yīng)當(dāng)注意到,通過(guò)顯示區(qū)402中或來(lái)自另一個(gè)信息源的指令,可向用戶(hù)通知用于遞增或遞減高頻字符的按鍵,用于指明字符選擇的按鍵,和指明完成了口令的按鍵。例如,每天或每周的電子通信可以指定用于輸入此天或此周的口令的按鍵字符。而且,應(yīng)注意到,可以隨機(jī)地選擇每個(gè)口令輸入的按鍵字符,以避開(kāi)口令跟蹤。
現(xiàn)在參照?qǐng)D5,圖5根據(jù)本發(fā)明的方法,系統(tǒng)和程序說(shuō)明了安全口令輸入序列的圖示。按鍵圖例550指示了不同類(lèi)型按鍵所涉及的功能類(lèi)型??梢岳斫猓存I圖例550是用于說(shuō)明能執(zhí)行的功能類(lèi)型的目的,但只是可以進(jìn)行的按鍵分配的類(lèi)型的示例。此外,可以理解,除了按鍵,可以接收其他類(lèi)型的輸入,以執(zhí)行安全口令輸入期間可獲得的功能。
在示例中,說(shuō)明了提示區(qū)中的字符序列和用戶(hù)輸入的按鍵。提示區(qū)包括四個(gè)字符位置,并且,在提示字符位置中,最初以大約50%的頻率百分比顯示高頻字符“A”。尤其是,在參考數(shù)字502處,提示區(qū)包括四個(gè)字符位置,其中第二字符位置被指明作為當(dāng)前提示位置。如先前所說(shuō)明的,為了說(shuō)明的目的,通過(guò)在字符下劃線指明在當(dāng)前提示位置中的字符。在參考數(shù)字504和參考數(shù)字506處,每個(gè)字符位置顯示隨機(jī)字符流中的不同字符。之后,在參考數(shù)字508處,當(dāng)前提示位置包含高頻字符“A”。
在參考數(shù)字510處,每個(gè)字符位置顯示隨機(jī)字符流中的不同字符,而如參考數(shù)字512所示,用戶(hù)輸入按鍵。所輸入的按鍵是“向上箭頭”。響應(yīng)按鍵,高頻字符從“A”增加一個(gè)字符到“B”。在示例中,如參考數(shù)字514所示,當(dāng)流隨機(jī)字符改變時(shí),在當(dāng)前提示位置中顯示高頻字符。然后如參考數(shù)字516所說(shuō)明的,用戶(hù)輸入另一個(gè)“向上箭頭”按鍵。響應(yīng)按鍵,高頻字符從“B”增加到“C”。高頻字符未顯示在參考數(shù)字518說(shuō)明的下一流改變的當(dāng)前位置中,而是顯示在參考數(shù)字520的當(dāng)前位置中。然后,用戶(hù)輸入“Y”按鍵,如參考數(shù)字521所示,并選擇當(dāng)前高頻字符“C”作為口令的第一字符。
在參考數(shù)字520處,在具有高頻字符“C”的當(dāng)前提示位置繼續(xù)顯示修改的隨機(jī)字符流。如參考數(shù)字524處所圖解的,用戶(hù)輸入“向右箭頭”按鍵,并且作為響應(yīng),在參考數(shù)字526處,當(dāng)前提示位置向右移動(dòng)一個(gè)位置。然后,如參考數(shù)字528處所說(shuō)明的,用戶(hù)輸入“換檔向下箭頭”。作為響應(yīng),如參考數(shù)字530,532,534,536,538,540和542所說(shuō)明的,顯示高頻字符“A”的頻率百分比從大約50%的概率減少到大約33%的百分比概率。之后,響應(yīng)用戶(hù)輸入如參考數(shù)字544和545所說(shuō)明的“向下箭頭”按鍵,高頻字符從“C”遞減兩個(gè)字符到“A”。在參考數(shù)字546處,在當(dāng)前提示位置顯示當(dāng)前高頻字符“A”。響應(yīng)用戶(hù)輸入如參考數(shù)字548所說(shuō)明的另一個(gè)“向下箭頭”按鍵,高頻字符從“A”遞減到“Z”。用戶(hù)能繼續(xù)遞增或遞減高頻字符,選擇口令字符,移動(dòng)提示位置,調(diào)整頻率百分比,并在安全地輸入完整口令的同時(shí)提供其它輸入。應(yīng)注意到,雖然本示例使用大寫(xiě)字母數(shù)字字符,然而隨機(jī)字符流可以包括大寫(xiě)和小寫(xiě)字母數(shù)字字符和數(shù)字。
現(xiàn)在參照?qǐng)D6,圖6根據(jù)本發(fā)明方法,系統(tǒng)和程序說(shuō)明了用于控制安全口令輸入的過(guò)程和程序的高級(jí)邏輯流程圖。如圖所示,過(guò)程在模塊600開(kāi)始并之后進(jìn)行到模塊602。模塊602說(shuō)明確定是否接收口令輸入調(diào)用。需要口令提示的任何程序最好能調(diào)用口令輸入進(jìn)程。可選地,可以通過(guò)其他方法調(diào)用進(jìn)程。例如,在UNIX系統(tǒng)中,進(jìn)程可以被調(diào)用為庫(kù)中的子程序。如果沒(méi)有接收口令輸入調(diào)用,則過(guò)程在模塊602重復(fù)。如果接收了口令輸入調(diào)用,則過(guò)程傳遞到模塊604。模塊604說(shuō)明了顯示具有X個(gè)字符的口令提示區(qū)。例如,用戶(hù)可以定義字符的數(shù)量,或者調(diào)用安全口令進(jìn)程的程序可以傳送定義要在提示區(qū)中被顯示的字符的數(shù)量的值。接著,模塊606說(shuō)明產(chǎn)生具有以較高頻率輸出的一個(gè)字符的隨機(jī)字符流。用戶(hù)可以定義高頻字符的頻率百分比,或者調(diào)用安全口令進(jìn)程的程序可以傳送初始值以設(shè)置頻率百分比??蛇x地,最初可以在隨機(jī)字符流內(nèi)使用默認(rèn)百分比確定高頻字符的頻率百分比。之后,模塊608說(shuō)明在當(dāng)前提示位置顯示隨機(jī)字符流,并且過(guò)程進(jìn)行到模塊609。最初,可以在口令提示的X個(gè)字符內(nèi)的隨機(jī)位置指定當(dāng)前提示位置。模塊609說(shuō)明了確定是否檢測(cè)到按鍵或其他輸入。如果沒(méi)有檢測(cè)到按鍵或其他輸入,則過(guò)程在模塊609重復(fù)。如果檢測(cè)到按鍵或其他輸入,則過(guò)程進(jìn)行到模塊610。
模塊610說(shuō)明確定是否接收到頻率百分比調(diào)整輸入。如果接收到頻率百分比調(diào)整輸入,則過(guò)程進(jìn)行到模塊612。模塊612說(shuō)明根據(jù)輸入調(diào)整高頻字符的頻率百分比,并且過(guò)程進(jìn)行到模塊609??蛇x地,在模塊610,如果沒(méi)有接收到頻率百分比調(diào)整輸入,則過(guò)程進(jìn)行到模塊614。
模塊614說(shuō)明確定是否接收到提示位置調(diào)整輸入。如果接收到提示位置調(diào)整輸入,則過(guò)程進(jìn)行到模塊616。模塊616說(shuō)明根據(jù)輸入在X個(gè)字符中調(diào)整當(dāng)前提示位置,并且過(guò)程進(jìn)行到模塊609??蛇x地,在模塊614,如果按鍵不是當(dāng)前提示位置調(diào)整輸入,則過(guò)程進(jìn)行到模塊618。
模塊618說(shuō)明確定所檢測(cè)的按鍵是否是用于遞增或遞減字符。如果所檢測(cè)的按鍵是用于遞增或遞減字符,則過(guò)程進(jìn)行到模塊620。模塊620說(shuō)明通過(guò)從當(dāng)前高頻字符遞增或遞減一個(gè)字符來(lái)調(diào)整高頻字符,并且過(guò)程進(jìn)行到模塊609??蛇x地,在模塊618,如果按鍵不是遞增或遞減字符輸入,則過(guò)程進(jìn)行到模塊622。
模塊622說(shuō)明確定是否接收到字符選擇按鍵。如果接收到字符選擇按鍵,則過(guò)程進(jìn)行到模塊624。模塊624說(shuō)明記錄當(dāng)前高頻字符作為所選擇的口令字符,并且過(guò)程返回到模塊609??蛇x地,在模塊622,如果輸入不是字符選擇按鍵,則過(guò)程進(jìn)行到模塊626。
模塊626說(shuō)明確定按鍵是否是口令完成輸入。如果按鍵不是口令完成輸入,則過(guò)程返回到模塊609。如果按鍵是口令完成輸入,則過(guò)程進(jìn)行到模塊628。模塊628說(shuō)明向調(diào)用層返回口令,并且過(guò)程終止。
雖然已經(jīng)通過(guò)參照優(yōu)選實(shí)施例,特別示出并闡明了本發(fā)明,然而本領(lǐng)域的技術(shù)人員可以理解,在不違背本發(fā)明精神和范圍的情況下,在這里,可以在形式和具體上作出各種改變。
權(quán)利要求
1.一種用于安全口令輸入的方法,包括顯示包含改變的隨機(jī)字符流的口令提示,其中,以視覺(jué)上可察覺(jué)的較高頻率顯示所述改變的隨機(jī)字符流中的特定字符;以及接收輸入以遞增或遞減所述特定字符以達(dá)到口令的口令字符。
2.如權(quán)利要求1所述的用于安全口令輸入的方法,還包括顯示多個(gè)字符位置,其中在所述多個(gè)字符位置的每個(gè)中顯示隨機(jī)字符流,其中所述多個(gè)字符位置中的特定位置提供所述口令提示。
3.如權(quán)利要求2所述的用于安全口令輸入的方法,還包括調(diào)整所述多個(gè)字符位置中提供所述口令提示的字符位置。
4.如權(quán)利要求2所述的用于安全口令輸入的方法,還包括調(diào)整所述多個(gè)字符位置的數(shù)量。
5.如權(quán)利要求1所述的用于安全口令輸入的方法,還包括響應(yīng)接收到指明完成所述口令的口令完成字符的輸入,安全地傳送所述口令到請(qǐng)求方軟件層。
6.如權(quán)利要求1所述的用于安全口令輸入的方法,還包括響應(yīng)接收到來(lái)自數(shù)據(jù)處理系統(tǒng)內(nèi)軟件層的口令請(qǐng)求,從所述數(shù)據(jù)處理系統(tǒng)內(nèi)調(diào)用口令輸入控制器,其中所述口令輸入控制器控制所述顯示所述口令提示,以及所述接收輸入以遞增或遞減所述特定字符。
7.如權(quán)利要求1所述的用于安全口令輸入的方法,還包括在客戶(hù)機(jī)系統(tǒng)上響應(yīng)接收到來(lái)自服務(wù)器系統(tǒng)的口令輸入請(qǐng)求,從所述數(shù)據(jù)處理系統(tǒng)內(nèi)調(diào)用口令輸入控制器,其中,所述客戶(hù)機(jī)系統(tǒng)正嘗試訪問(wèn)所述服務(wù)器系統(tǒng)的資源,所述口令輸入控制器控制所述顯示所述口令提示,以及所述接收輸入以遞增或遞減所述特定字符。
8.如權(quán)利要求1所述的用于安全口令輸入的方法,還包括生成所述隨機(jī)字符流,其中所述特定字符是隨機(jī)選擇的。
9.如權(quán)利要求1所述的用于安全口令輸入的方法,還包括在所述隨機(jī)字符流中調(diào)整顯示所述特定字符的頻率百分比。
10.一種用于安全口令輸入的系統(tǒng),包括用于控制顯示接口的數(shù)據(jù)處理系統(tǒng);所述數(shù)據(jù)處理系統(tǒng)還包括用于在所述顯示接口內(nèi)顯示包含改變的隨機(jī)字符流的口令提示的裝置,其中,以視覺(jué)上可察覺(jué)的較高頻率顯示所述改變的隨機(jī)字符流中的特定字符;以及用于在所述數(shù)據(jù)處理系統(tǒng)上接收輸入以遞增或遞減所述特定字符以達(dá)到口令的口令字符的裝置。
11.如權(quán)利要求10所述的用于安全口令輸入的系統(tǒng),還包括用于顯示多個(gè)字符位置的裝置,其中在所述多個(gè)字符位置的每個(gè)中顯示隨機(jī)字符流,其中所述多個(gè)字符位置中的特定位置提供所述口令提示。
12.如權(quán)利要求11所述的用于安全口令輸入的系統(tǒng),還包括用于調(diào)整所述多個(gè)字符位置中提供所述口令提示的字符位置的裝置。
13.如權(quán)利要求11所述的用于安全口令輸入的系統(tǒng),還包括調(diào)整所述多個(gè)字符位置的數(shù)量的裝置。
14.如權(quán)利要求10所述的用于安全口令輸入的系統(tǒng),還包括用于響應(yīng)接收到指明完成所述口令的口令完成字符的輸入,安全地傳送所述口令到請(qǐng)求方軟件層的裝置。
15.如權(quán)利要求10所述的用于安全口令輸入的系統(tǒng),還包括在所述數(shù)據(jù)處理系統(tǒng)內(nèi)執(zhí)行的口令輸入控制器,用于控制顯示所述口令提示的所述裝置以及用于在所述數(shù)據(jù)處理系統(tǒng)上接收輸入的所述裝置;和用于響應(yīng)接收到來(lái)自數(shù)據(jù)處理系統(tǒng)內(nèi)的軟件層的口令請(qǐng)求,調(diào)用所述口令輸入控制器的裝置。
16.如權(quán)利要求10所述的用于安全口令輸入的系統(tǒng),還包括用于控制顯示所述口令提示的所述裝置以及用于在所述數(shù)據(jù)處理系統(tǒng)上接收輸入的所述裝置的口令輸入控制器;和用于響應(yīng)接收到來(lái)自服務(wù)器系統(tǒng)的口令請(qǐng)求,調(diào)用所述口令輸入控制器的裝置,其中所述數(shù)據(jù)處理系統(tǒng)正嘗試訪問(wèn)所述服務(wù)器系統(tǒng)的資源。
17.如權(quán)利要求10所述的用于安全口令輸入的系統(tǒng),還包括用于生成所述隨機(jī)字符流的裝置,其中所述特定字符是隨機(jī)選擇的。
18.如權(quán)利要求10所述的用于安全口令輸入的系統(tǒng),還包括用于在所述隨機(jī)字符流中調(diào)整顯示所述特定字符的頻率百分比的裝置。
19.一種用于安全口令輸入的計(jì)算機(jī)程序產(chǎn)品,駐留于計(jì)算機(jī)可讀取介質(zhì)上,包括用于顯示包含改變的隨機(jī)字符流的口令提示的裝置,其中,以視覺(jué)上可察覺(jué)的較高頻率顯示所述改變的隨機(jī)字符流中的特定字符;和用于接收輸入以遞增或遞減所述特定字符以達(dá)到口令的口令字符的裝置。
20.如權(quán)利要求19所述的用于安全口令輸入的計(jì)算機(jī)程序產(chǎn)品,還包括用于顯示多個(gè)字符位置的裝置,其中在所述多個(gè)字符位置的每個(gè)中顯示隨機(jī)字符流,其中所述多個(gè)字符位置中的特定位置提供所述口令提示。
21.如權(quán)利要求19所述的用于安全口令輸入的計(jì)算機(jī)程序產(chǎn)品,還包括用于調(diào)整所述多個(gè)字符位置中提供所述口令提示的字符位置的裝置。
22.如權(quán)利要求19所述的用于安全口令輸入的計(jì)算機(jī)程序產(chǎn)品,還包括調(diào)整所述多個(gè)字符位置的數(shù)量的裝置。
23.如權(quán)利要求19所述的用于安全口令輸入的計(jì)算機(jī)程序產(chǎn)品,還包括用于響應(yīng)接收到指明完成所述口令的口令完成字符的輸入,安全地傳送所述口令到請(qǐng)求方軟件層的裝置。
24.如權(quán)利要求19所述的用于安全口令輸入的計(jì)算機(jī)程序產(chǎn)品,還包括用于生成所述隨機(jī)字符流的裝置,其中所述特定字符是隨機(jī)選擇的。
25.如權(quán)利要求19所述的用于安全口令輸入的計(jì)算機(jī)程序產(chǎn)品,還包括用于在所述隨機(jī)字符流中調(diào)整顯示所述特定字符的頻率百分比的裝置。
全文摘要
提供了在口令輸入期間抵御未授權(quán)按鍵記錄的方法,系統(tǒng)和程序。通過(guò)顯示包含改變的隨機(jī)字符流的口令提示,在其中,以視覺(jué)上可察覺(jué)的較高頻率顯示隨機(jī)字符流內(nèi)的特定字符,促成安全口令輸入。用戶(hù)通過(guò)鍵入輸入以遞增或遞減特定高頻字符以選擇口令字符,從而達(dá)到口令字符,這樣,探測(cè)所述口令的任何未授權(quán)按鍵記錄失效。一旦用戶(hù)獲得口令字符,用戶(hù)提供另一輸入,指明選擇當(dāng)前高頻率字符為口令字符。一旦用戶(hù)選擇口令的全部字符,用戶(hù)鍵入輸入以指明口令是完整的,然后,口令輸入控制器將口令傳送到調(diào)用層。
文檔編號(hào)G06F1/00GK1700134SQ20051000950
公開(kāi)日2005年11月23日 申請(qǐng)日期2005年2月22日 優(yōu)先權(quán)日2004年5月20日
發(fā)明者阿莫斯·P·沃特蘭德 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司