新四季網

通過計算機設備上可信組件等驗證與計算機實體的人類交互的製作方法

2023-09-16 06:58:50 2

專利名稱:通過計算機設備上可信組件等驗證與計算機實體的人類交互的製作方法
技術領域:
本發明涉及一種結構和方法,用於向計算機實體驗證,結合計算設備進行的計算機請求是由人類發起的而不是由計算機應用程式等發起的。更具體地,本發明涉及這樣一種結構和方法,由此通過計算設備上運行的可信組件執行驗證。
背景技術:
存在人類交互證據以向計算機實體證明,來自計算設備的對該實體的請求是由在該計算設備處的人類發起的,而不是由在該計算設備上運行的應用程式發起的。因而,這樣一個人類交互證據可以由例如網站使用來確認對站點ID的請求來自為可能合法的目的試圖獲得單一站點ID的人,且這樣的請求不是來自為可能非法或至少不受歡迎的目的試圖獲得多個站點ID的計算機應用程式。如可意識到的,在後者情況下,這樣的多個站點ID可能被例如希望躲在這樣的多個站點ID後面以便避免誠實地標識自己的惡意實體使用。
這樣一個人類交互證據還可被例如消息接收者使用來確認消息的發送者是為可能受歡迎的目的試圖向該接收者發送個人消息的人,且這樣的消息不是來自為可能不受歡迎的目的試圖發送多個非個人的成批消息的計算機應用程式。如可意識到的,在後者情況下,這樣的多個批量消息可以例如採用廣告或『垃圾郵件』的形式,來自與該接收者沒有個人關係的惡意實體。
人類交互證據還可被例如在線廣告商使用,它向在線中介支付介紹費,每當由中介提供的鏈路被用戶選擇時。這裡,證據確認消息來自希望經由鏈路訪問廣告商的人類選擇用戶,且這樣的消息不是來自試圖從中介或其代理髮送多個非個人的批量消息給廣告商的計算機應用程式。如可意識到的,在後者情況下,這樣的多個批量消息例如可只被發送來生成介紹費,即使沒有涉及最終用戶,而且有時稱之為『欺詐點擊(fraudulent click-through)』。如也可意識到的,這樣的欺詐點擊可發生在廣告環境中和在中介有動機生成這種消息的其它環境中。
更普遍地,要理解使用人類交互證據來防止不想要的批量發送消息、在廣告環境等中防止欺詐點擊、在在線拍賣網站上防止掠奪性砍價、在線購買的人類證據、帳戶建立的人類證據等。然後,這樣的人類交互證據可在請求或消息(下文為『發送項目(send item)』)的接收者希望確保該發送項目是由在計算設備處執行人類類型動作的人類而不只是由執行編程化動作的計算設備發起的任何環境下使用。
每個這樣的人類交互證據基本上設計成要求發送上述發送項目的人類多少要花費些主動努力,其中所說的努力是具有計算設備可能無法完成的性質的動作。在人類交互證據的一個通用版本中,例如,預想接收者發送給預想發送者一個『質詢(challenge)』,它包括可能容易地用一個詞語諸如狗、球、鉛筆等來描述的物品的圖片,且發送者必須與該發送項目一起發送一個詞語。有可能的是,如果發送者是人類,則這樣的發送者能夠容易地識別出質詢中的圖片化物品並提供該詞語。也有可能的是,如果發送者不是人類而是計算設備,則這樣的發送者不能輕易地識別圖片化物品並提供該詞語。在人類交互證據的另一個通用版本中,預想接收者發送給預想發送者一質詢,包括不希望根據可能由計算設備執行的光學字符識別協議方便識別的詞語的圖片,但對人而言應易於識別,且再一次發送者必須與該發送項目一起發送該詞語。
無論如何,未能與發送項目一起提供詞語可能例如引起預想接收者根據發送者不是發送受歡迎發送項目的人的假設來忽略此消息。由於識別圖片或詞語和提供這一個詞語的努力不能夠輕易地由計算設備完成,因此人類交互證據在極大程度上確定請求或消息的發送者是人。
而且,即使要識別的努力不知何故由計算設備完成了,或者惡意實體可僱用人力來完成識別,該努力在計算設備或者作為發送者的勞動力僱員上強加了開銷,無論按照貨幣價值、容量、時間還是其它方面。例如,向一百萬個接收者發送電子郵件消息的計算設備,如果對一百萬條消息不要求人類交互證據,則根據當今技術可能相對很容易做到。但是,且值得注意地,如果對一百萬條消息要求唯一的人類交互證據,則同樣的向一百萬個接收者發送電子郵件消息的計算設備必須花費巨大的努力。那麼,如可意識到的,要求計算設備或人力對許多發送項目的每一個進行人類交互證據可迅速成為嚴峻的障礙,尤其在計算設備或勞動力僱員試圖發送成百、成千或者甚至成百萬的這樣的發送項目的情況下。
然後,總結一下,人類交互證據防止了不想要的發送項目,諸如那些可由計算設備批量發送的發送項目,因為人類交互證據要求計算設備完成計算設備實際上不能完成的動作,否則就要求計算設備或人力在每個發送項目基礎上完成該動作並因此花費巨大努力。但是,人類交互證據註定要受到損害,因為這樣的證據要求人類為滿足這樣的證據而花費主動努力,而不計算人類在發送一個項目的自然過程中可能花費的被動努力。提出另一種方法,當前的人類交互證據沒有認識到人類在發送一個項目中花費計算機不會同樣花費的被動或自然努力,諸如例如在鍵盤上打字、通過滑鼠設備移動光標等,以及通過檢測這種被動努力的花費,人類交互證據實際上不需要人類以『跳過環(jumpingthrought a hoop)』方式花費主動或特定的努力。
那麼,存在對一種人類交互證據(HIP)的需求,它實質上不要求人類花費主動努力,而是人類只花費被檢測的自然努力。具體而言,存在對一種結構和方法的需求,它實現這樣一種人類交互證據並以可信的方式向接收者驗證這種檢測到的自然努力,因此可以向接收者保證所檢測到的惡意實體實際上發生了並且不是由企圖欺騙接收者的惡意實體設計的。此外,存在對於這樣一種結構和方法的需求,通過它發送者的計算設備上的可信組件完成這樣的驗證。
發明概述上述需求至少部分由本發明滿足,本發明提供了一方法,描述與從計算設備的應用程式向接收者發送發送項目結合的用戶交互。計算設備在其上具有證明單元用於證明可信賴性。在該方法中,計算設備上的應用程式促進用戶構造發送項目,且應用程式和證明單元之一監視可用來檢測用戶實際上是否正花費努力構造發送項目的預定標記。
證明單元認證應用程式以給予其信任,且應用程式和證明單元之一在用戶命令應用程式發送所構造的發送項目給接收者時,構造發送證明以伴隨發送項目。發送證明基於受監視標記和對應用程式的認證,並從而描述了用戶交互。證明單元和應用程式之一打包所構造的發送證明與所構造的發送項目,且證明單元和應用程式之一將打包的發送項目和發送證明發送給接收者。


以上概述以及以下本發明實施例的詳細描述將在與附圖結合閱讀時得到更好的理解。為了說明本發明,附圖中示出了目前較佳的實施例。但是,如應該理解的,本發明不限於所示的精確方案與手段。在附圖中圖1是表示通用計算機系統的方框圖,其中可結合本發明的各方面和/或其部分;圖2是依照本發明的一個實施例示出具有發送應用程式和證明單元的、發送-發送項目和-發送證明給接收者的計算設備;圖3和4是依照本發明的一個實施例示出在圖2的計算設備(圖3)和接收者(圖4)處執行的關鍵步驟的流程圖。
詳細說明計算機環境圖1及以下討論旨在提供本發明和/或其部分可在其中實現的合適計算環境的簡要描述。儘管不是必需,但本發明在由諸如客戶機工作站或伺服器的計算機執行的諸如程序模塊的計算機可執行指令的通用上下文環境中描述。通常,程序模塊包括例程、程序、對象、組件、數據結構等,執行特定任務或實現特定抽象數據類型。而且,應該理解本發明和/或其部分可用其它計算機系統配置實施,包括手持設備、多處理器系統、基於微處理器和可編程消費電子產品、網絡PC、小型機、主機計算機等。本發明還可在分布式計算環境中實施,其中任務由通過通信網絡連接的遠程處理設備完成。在分布式計算環境中,程序模塊可位於本地和遠程存儲器存儲設備。
如圖1所示,示例性通用計算設備包括常規的個人計算機120等,包括處理單元121、系統存儲器122和系統總線123(將包括系統存儲器在內的各種系統組件耦合到處理單元121)。系統總線123是任意若干類型的總線結構,包括存儲器總線或存儲器控制器、外圍總線和使用任何各種總線體系結構的局部總線。系統存儲器包括只讀存儲器(ROM)124和隨機存取存儲器(RAM)125。基本輸入/輸出系統126(BIOS),包含諸如在起動時,幫助在個人計算機120內在元件之間傳送信息的基本例程,BIOS被存儲在ROM 124中。
個人計算機120還可包括用於讀寫硬碟(未示出)的硬碟驅動器127,用於讀或寫可移動磁碟129的磁碟驅動器128,和用於讀寫可移動光碟131如CD-ROM或其它光介質的光碟驅動器130。硬碟驅動器127、磁碟驅動器128和光碟驅動器130分別通過硬碟驅動器接口132、磁碟驅動器接口133和光碟驅動器接口134連接到系統總線123。驅動器及其相關聯的計算機可讀介質為個人計算機120提供計算機可讀指令、數據結構、程序模塊和其它數據的非易失性存儲。
儘管這裡描述的示例性環境使用硬碟、可移動磁碟129和可移動光碟131,但應當意識到,存儲計算機能存取的數據的其它類型計算機可讀介質也可在示例性操作環境中使用。這樣的其它類型介質包括磁盒、快閃記憶體卡、數據視頻盤、Bernoulli盒、隨機存取存儲器(RAM)、只讀存儲器(ROM)等等。
許多程序模塊可存儲在硬碟、磁碟129、光碟131、ROM 124或RAM 125上,包括作業系統135、一或多個應用程式136、其它程序模塊137和程序數據138。用戶可通過輸入設備諸如鍵盤140和指點設備142輸入命令和信息到個人計算機120中。其它輸入設備(未示出)可包括話筒、遊戲杆、遊戲墊、衛星天線等等。這些和其它輸入設備常常通過耦合到系統總線的串行口埠146連接到處理單元121,但也可通過其它接口如並行埠、遊戲埠或通用串行總線(USB)連接。監示器147或其它類型的顯示設備也通過接口如視頻適配器148連接到系統總線123。除監示器147之外,個人計算機一般包括其它外圍輸出設備(未示出),諸如揚聲器和印表機。圖1的示例性系統還包括主機適配器155、小型計算機系統接口(SCSI)總線156和連接到SCSI總線156的外部存儲設備163。
個人計算機120可在使用到一個或多個遠程計算機如遠程計算機149的邏輯連接的網絡化環境中使用。遠程計算機149可以是另一個個人計算機、伺服器、路由器、網絡PC、對等設備或其它公共網絡節點,並且一般包括上面相對於個人計算機120所述的許多或全部元件,儘管在圖1中只示出了存儲器存儲設備150。圖1所示的邏輯連接包括區域網(LAN)151和廣域網(WAN)152。這樣的網絡環境在辦公室、企業級計算機網絡、企業內部網際網路和網際網路中很常見。
當在LAN網絡環境中使用時,個人計算機120通過網絡接口或適配器153連接到LAN 151。當在WAN網絡環境中使用時,個人計算機120一般包括用於在廣域網152如網際網路上建立通信的數據機154或其它裝置。數據機154,可以是內置或外置的,通過串行埠146連接到系統總線123。在網絡化環境中,相對個人計算機120所述的程序模塊或其部分可存儲在遠程存儲器存儲設備中。將意識到,所示的網絡連接是示例性的並且可以使用在計算機之間建立通信鏈路的其它方法。
通過檢測被動努力驗證人類交互在本發明中,提供一種方法和系統來實現人類交互證據(HumanInteractive Proof),它驗證人類涉及了計算事務,通過該方法和系統,這個人要發送項目給接收者。在該證據中,並且一般地所發送的項目伴隨著一個發送證明,它陳述實際檢測的與所發送的項目有關的足夠人類努力的效果,並且因此計算機不是簡單地基於在每發送項目基礎上不要求任何有效的人類努力的程序或應用程式來發送項目。檢測到的足夠的人類努力例如可包括鍵擊、滑鼠點擊、鍵擊或滑鼠點擊的最小數量、最小撰寫時間、接收者的最大數量的選擇、每單位時間交付的發送項目的最大數量等等。在本發明中,被動地檢測人類交互,因此人類不必結合發送證明發揮任何主動努力。因而,人類交互是基於人在構造和發送-發送項目給其接收者的過程中通常承擔的活動來檢測的。
為給予發送證明信任,現在轉到圖2,這樣的發送證明18是由或者代表在發送項目14的發送者的計算設備12上運行的安全計算環境10撰寫的,其中安全計算環境10是要由接收者16信任的。如可意識到的,發送項目14是由或者結合計算設備12構造的,諸如例如在運行於計算設備12的發送應用程式26的幫助下,並且發送證明18也是在計算設備12上撰寫的。安全計算環境10配置為在可信的基礎上提供發送證明18給接收者16以確認,關於相應發送項目14的構造,檢測到足夠的人類努力,再次在被動基礎上而不要求人類的任何主動捲入。在不同實施例中,發送項目14包括發送證明18作為附屬物等,或者發送證明18與發送項目14分開但連結到它,可能通過指針或其它引用。
發送者的計算設備12可以是不脫離本發明精神和範圍的任何適當的計算設備。例如,計算設備可以是個人計算機、可攜式通信設備、無線通信設備等等。這樣的計算設備12適當地通過適當的通信鏈路耦合到接收者16。這樣的鏈路可以是直接連接或者可以是網絡連接,諸如使用適當通信協議的網絡內部或之間的連接。
接收者16通常是運行於遠離計算設備12或者在其本地的伺服器、計算機或其它計算設備上的應用程式。這樣的接收者16可提供服務給計算設備12處的發送者,基於來自它的請求,在本例中以發送項目14的形式。因而,發送項目14可以是對一段內容的請求、對用戶ID的請求、對網絡資源的請求等等。接收者16另外可接收在那裡的用戶的消息,在本例中再次以發送項目14的形式。因而,發送項目14也可以是例如以郵件項目形式的網絡消息。然後,應當意識到,發送項目14適當地以相應的接收者16為目標。因此,這樣的發送項目14和相應的接收者16可以是不脫離本發明的精神和範圍的任何適當的發送項目14和接收者16。
在發送項目14的發送者的計算設備12上運行的安全計算環境10是如上所述的由接收者16信任的安全計算環境。因而,安全計算環境10應當能夠向接收者16證明這樣的信任,諸如例如通過能夠提供密鑰、數字籤名、數字證書等等。通常,這樣的數字證書包括引回到根信任當局的證書鏈,並且接收者16接受數字證書並基於它準予信任,如果接收者16識別和承兌這樣的證書的根信任當局。
如可意識到的,在發送者的計算設備12上運行的安全計算環境10應當免於由在其計算設備12上運行的其它實體的控制,或者免於由來自其它計算設備或人類形式的控制。因而,安全計算環境10應當不能被強制在不保證發送證明18的時候發出這樣的發送證明,諸如例如如果一個邪惡實體想要在沒有適當的人類交互的情況下發出發送項目14的時候。
這樣的安全計算環境10可以是不脫離本發明精神和範圍的、服從在此所述的約束過程的任何適當的安全計算環境。例如,安全計算環境10可以是在計算設備12上的作業系統的可信部分,其中這樣的作業系統的可信部分免於不適當的外部影響。安全計算環境10或者可自己檢測與發送項目14有關的足夠的人類努力,或者可在運行於其上的某應用程式和可能有關的硬體中給予信任以如此檢測,並且同樣或者可自己在適當的時候構造發送項目14的發送證明18,或者可在運行於其上的某應用程式中給予信任以如此構造。在本發明的一個實施例中,安全計算環境10實際上包括證明單元24作為在其上運行的應用程式和/或在其中運行的硬體以檢測上述足夠的人類努力和構造上述發送證明18。
證明單元24可以是不脫離本發明的精神和範圍的任何適當的硬體和/或軟體。例如,證明單元24可以被建立為在安全計算環境10的可信區域中運行的軟體,或者可以是在計算設備12上被設計為執行在此所述的證明功能的一部分硬體。在任一情況下,這樣的證明單元24被保護不受在計算設備上運行的任何其它軟體或硬體監視或影響,尤其是被保護不受諸如由企圖破壞證明單元24的功能的邪惡實體使用的攻擊。證明單元24於是應當被設計為防篡改,並且應當能夠以數字方式籤名、驗證籤名、加密、解密等等。這樣的證明單元24至少應當對於熟練技術人員是顯然的並且因此在此不必更詳細地描述。
注意,安全計算環境10和/或其證明單元24在檢測是否有可能已經花費了足夠的人類努力時必須接受從計算設備12上的硬體20得到的輸入、所述硬體是人類在構造發送項目14的過程中將使用的。例如,這樣的硬體20可包括觸控螢幕、鍵盤、光標控制設備如滑鼠等等。另外,安全計算環境10/證明單元24(在下文中,『證明單元24』)可指計算設備12的其它資源22,諸如時鐘、存儲器、控制器等等。然後,每個這樣的一部分硬體20和每個這樣的資源22可變成一種途徑,邪惡實體可能通過它企圖不適當地破壞對與發送項目14有關的足夠的人類努力的花費的檢測。因此,在本發明的一個實施例中,每個這樣的一部分硬體20和每個這樣的資源22被構造為由證明單元24信任,並且還能夠向證明單元24證明這樣的信任,諸如例如通過能夠提供密鑰、數字籤名、數字證書等等。再次,這樣一個數字證書一般包括引回到根信任當局的證書鏈,並且安全計算環境10接受數字證書並且基於它準予信任,如果這樣的證明單元24識別並且承兌這樣的證書的根信任當局。
發送證明18本身可採用不脫離本發明的精神和範圍的任何適當形式。例如,發送證明18可基於某種形式可擴展標記語言(XML)構造為數字文檔並基於私鑰以數字方式籤名,並且按照可從上述安全計算環境10的數字證書得到的相應的公鑰是可驗證的。因而,這樣的發送證明18可包括這樣的數字證書,並且也可包含某種肯定陳述,它證明這樣的事實檢測到足夠的人類努力花費在構造相應發送項目14的過程中。另外,它可以是這樣一種情況,即發送證明18包括與這樣檢測到的所花費的人類努力有關的細節,諸如例如鍵擊數、用於構造發送項目14的時間量、接收者16的數量等、在預先預定義時段內發送的發送項目14的數量,和/或與所使用的硬體20和/或資源22有關的細節。如可意識到的,有了這樣的細節,接收者16可在決定是否承兌發送項目14的過程中執行附加的過濾。
然後概括一下,在本發明中,發送一發送項目14給接收者16的發送用戶使用計算設備12,它具有硬體20,包括某種輸入設備諸如鍵盤、滑鼠等;資源22,包括存儲器等;應用程式26,用於構造發送項目14;和受信託的證明單元24,在不會受用戶影響和能證明發送項目14的安全計算環境10中運行。接收者16在接收發送項目14並伴隨發送證明18時,只有當伴隨該發送項目14的發送證明18對於這樣的接收者16是可接受的時候才承兌該發送項目14。現在轉到圖3,示出由和/或結合上述組件使用的方法。
首先,預期在計算設備12處的用戶通過發送應用程式26構造發送項目14(步驟301)。當然,如果發送項目14是消息,則應用程式26是消息-發送應用程式諸如電子郵件應用程式,而如果發送項目14是請求,則應用程式26是能夠撰寫請求的應用程式,諸如例如基於從接收者16接收的代碼的計算機瀏覽器。
結合在步驟301構造發送項目14,應用程式26和證明單元24之一監視某些預定標記,它們可以用於檢測用戶實際上正在花費努力構造發送項目14(步驟303),以及應用程式26不是自己以沒有實際用戶捲入的自動化過程方式在構造發送項目14。這樣的標記可以是不脫離本發明精神和範圍的任何標記。例如,應用程式26或者證明單元24可監視實際鍵盤活動和/或滑鼠活動,用於構造發送項目14的最小構造時間、每單位時間發送的發送項目的最大數量、用於控制應用程式26活動的運行腳本的缺少等等。
明顯地,在步驟301已經構造發送項目14之前或之後,證明單元24認證應用程式26(步驟305)以給予它信任。由證明單元24對這類應用程式26的這類認證例如可發生在應用程式26在計算設備12上被實例化的時候,在應用程式26由用戶調用以構造發送項目14的時候,或者在發送項目14被構造和被發送到接收者16的時候。由證明單元24對應用程式26的這類認證可包括不脫離本發明精神和範圍的任何適當的認證。例如,這類認證可包括應用程式26為證明單元24提供數字證書,並且可能提供其它可使用的文檔以及可能提供關於在其內應用程式26正在運行的環境的信息。基於這類信息證明單元24本身確保可以信任應用程式26正確地運行,例如通過驗證數字證書和保證應用程式26正在預期的環境中基於操作的文檔在運行。
注意,儘管證明單元24可執行步驟303的監視,但應意識到,應用程式26本身更可能執行這樣的監視。注意,這麼做在應用程式26監視自己的範圍內更簡單,並且也因為證明單元24不是很了解應用程式26及其接口。無論如何,一旦證明單元24在步驟305信任應用程式26,這樣的信任就應當擴展到應用程式26在步驟303監視自己的能力。
連同在步驟305認證應用程式26以給予其信任,證明單元24也可認證至少某些用於或者預期用於構造發送項目14的硬體20和/或資源22(步驟307)。再次,由證明單元24對這類硬體20和/或資源22的這類認證例如可發生在應用程式26在計算設備12上實例化的時候,在應用程式26由用戶調用以構造發送項目14的時候,或者在發送項目14被構造並且要被發送到接收者16的時候。與以前一樣,這類認證可包括不脫離本發明精神和範圍的任何適當的認證。例如,並且再次,這類認證可包括硬體20和/或資源22的若干部分的每一個為證明單元24提供數字證書,而且可能提供其它文檔和環境信息,並且基於這類信息,證明單元24向自己確保例如可以信任鍵盤正確地操作,可以信任存儲器正確地操作等等。
無論如何,假定用戶實際上已經在步驟303構造了發送項目,這樣的用戶隨後命令應用程式26實際發送所構造的發送項目14給接收者16(步驟309)。在這麼做的時候,證明單元24確定所有有關要求是否已經滿足,基於步驟303所監視的標記和步驟305和307的認證(步驟311),並且如果這樣,則證明單元24和/或應用程式26構造發送證明18以伴隨這樣的發送項目14(步驟313)。之後,證明單元24和/或應用程式26打包所構造的發送證明18與所構造的發送項目14(步驟315),並且應用程式26和/或證明單元24實際上發送打包的發送項目14和發送證明18給接收者16(步驟317)。
證明單元24可在步驟311以不脫離本發明精神和範圍的任何適當方式確定是否已經滿足所有有關要求。例如,證明單元可要求在步驟305和307的所有認證成功,並且還要求步驟303監視的標記滿足某些預定的要求。這樣的要求例如可以由證明單元24或接收者16提出。在後者的情況下,可以是接收者在某個先前的時間交付這樣的要求給證明單元24。注意,在執行步驟311時,證明單元可實際執行整個確定的最少部分或者根本不執行,並且將這類確定的剩餘部分留給接收者16。在這樣的情況下,證明單元24在步驟313構造發送證明18以包括接收者16進行確定的剩餘部分所必需的所有信息。
證明單元24和/或應用程式26可在步驟313以不脫離本發明精神和範圍的任何適當方式構造發送證明18。例如,在本發明的實施例中,所構造的發送證明18包括來自證明單元24的陳述描述應用程式26,並且可能包括所使用的硬體20和/或資源22,並且還可能包括與這樣的應用程式26、硬體20和/或資源22諸如例如其環境有關的相關信息。如可意識到的,這類相關信息可由接收者16在決定是否接受和承兌發送證明18時和/或在決定是否接受和處理髮送項目14時使用。注意,所構造的發送證明18也可包括來自證明單元24的陳述,它關於上述應用程式26、硬體20和/或資源22確實是可信賴性的,不認為這樣的陳述是絕對必須的,尤其是因為這樣一個陳述隱含著這樣的事實,即證明單元24選擇發出描述應用程式26的陳述。
明顯地,所構造的發送證明18還包括一個陳述,描述發送項目14,並且還包括與發送項目14有關的相關信息。注意,這樣的陳述可來自證明單元24或應用程式26。在後者的情況下,來自證明單元24描述應用程式26的的陳述至少隱含地說明可以信任發出描述發送項目14的陳述的應用程式26。這裡,在來自證明單元24或應用程式26的陳述中的、與發送項目14有關的相關信息有可能包括所監視的數據諸如與用戶構造發送項目14有關的鍵盤敲擊數量和/或滑鼠點擊數量、構造的時間長度、接收者16的數量等等。如可意識到的,並且再次,這類相關信息可由接收者16在決定是否接受並承兌發送證明18時和/或在決定是否接受並處理髮送項目14時使用。再次注意,儘管所構造的發送證明18還可包括關於發送項目14確實是可信賴性的陳述,但不認為這樣的陳述是絕對必須的,尤其是因為這樣一個陳述隱含著這樣的事實,即證明單元24或者應用程式26選擇發出描述發送項目14的陳述。
證明單元24和/或應用程式26可在步驟315以不脫離本發明精神和範圍的任何適當方式將所構造的發送證明18與所構造的發送項目14的打包在一起。例如,在本發明的一個實施例中,發送證明18被添加到發送項目14,並且組合的發送項目14/發送證明18基於證明單元24的密鑰被籤名,以形成添加到組合的發送項目14/發送證明18的數字籤名。如已知的,這樣一個數字籤名可包括或者引用引回到假定接收者16已知並信任的根當局的證書鏈。
應用程式26和/或證明單元24可在步驟317以不脫離本發明精神和範圍的任何適當方式發送打包的發送項目14和發送證明18給接收者16。例如,在本發明的一個實施例中,證明單元24/應用程式26的計算設備12通過網絡如在內部網絡或網絡之間耦合到接收者16,在這種情況下包14/18可通過一或多個網絡包按照相互可接受的網絡通信協議來發送。
注意,儘管此前按照執行各種動作的證明單元24來描述,但可以是這樣的情況,即證明單元24隻是證明並且作出關於安全計算環境10的陳述,並且安全計算環境10執行一些或全部這類動作。在這種情況下,發送證明18可包括描述和證明安全計算環境10的陳述。
現在轉到圖4,在接收具有發送項目14和發送證明18的包14/18時(步驟401),接收者16驗證包括在其中的每個籤名(步驟403),包括基於證明單元24並被添加到組合的發送項目14/發送證明18的任何籤名。之後,接收者16檢查來自證明單元24的、在來自在包14/18的發送證明18中闡述的陳述(步驟405)。特別地,接收者16決定是否承兌發送項目,尤其是基於在發送證明18中闡述的描述應用程式26的陳述和在發送證明18中闡述的描述發送項目14的陳述。
在本發明的一個實施例中,在發送證明18中闡述的這類陳述在步驟405中被檢查,鑑於由或者代表接收者16闡述的預定的策略。這樣的預定策略可以是不脫離本發明精神和範圍的任何適當策略。例如,這類策略可闡述所述應用程式26必須是特定類型或版本的,或者這樣描述的應用程式26不是特定類型或版本的。同樣,這類策略可指定一個在其中應用程式26正在運行的特定環境,在這樣的環境中不存在某一個元素,等等。
同樣,關於發送項目14本身,策略例如可闡述這樣的發送項目14的特定格式,特定編碼,關於這樣的發送項目的內容的限制,關於發送項目14的接收者的數量的限制,應當在發送項目中的詞語,不應當在發送項目中的詞語,等等。明顯地,並且關於發送項目14本身,策略可進一步闡述與發送項目14有關的,尤其是與可以是對發送項目14是否確實是基於所花費的人類努力構造的起決定作用的因素有關的某些參數。在這點上,並且如可意識到的,策略例如可闡述發送項目14的最小構造時間,鍵盤敲擊的最小數量,滑鼠點擊的最小數量,每單位時間發送發送項目14的最大數量,等等。據推測,並且應當意識到的,為接收者16闡述的策略的每個方面可以針對從發送證明18中的陳述獲得的信息來測量。
在步驟405基於策略檢查發送證明18中的陳述之後,接收者16隨後基於策略是否實際上由發送證明18滿足來確定是否實際上承兌發送項目14(步驟407)。如應當意識到的,如果策略實際上由發送證明18滿足,則以任何被認為適當的方式承兌、接受發送項目14,並且對它行動(步驟409)。例如,如果發送項目14是與接收者16相關聯的用戶的消息,則這樣的發送項目14/消息被交付到該用戶等的接收區。同樣,如果發送項目14是對來自接收者16或有關實體的服務或對象的請求,這樣的發送項目14/請求被交付到可以處理它並提供服務或對象等的伺服器等。
注意,如果策略實際上沒有被發送證明18滿足,則發送項目14被拒絕並且不被承兌、接受,並且不對它行動(步驟411)。在這樣一個情況下,接收者16可向在計算設備12處的發送者返回一個簡單的拒絕消息、說明拒絕的詳細消息等等(步驟413)。然而,並且尤其是在發送者是某種邪惡實體的情況下,會出現這樣的情況,即任何返回消息會帶來更多不想要的請求或者其它不想要的注意,並且在這樣的情況下這樣的返回消息有可能是不可取的。
接收者16還可在拒絕情況下將該情況通知一拒絕過濾器(步驟415)。如可意識到的,這樣的拒絕過濾器隨後可過濾掉來自被拒絕請求的發送者的更多請求。另外或者在替換方案中,接收者16也可在拒絕情況下將被拒絕請求的發送者添加到被拒絕發送者列表(步驟417)。這裡,來自該發送者的更多請求將不被過濾掉,但基於在這樣的列表上而被不同地對待。
結論對於發送一發送項目14給接收者的任何適當的發送者,並假定這樣的發送者和接收者16被適當地配置,可實施本發明。現在應當意識到,有了在此所述的本發明,可用使得發送項目14伴隨著詳述發送者所花費的人類努力的發送證明18的方式執行將發送項目14發送給接收者。
實現結合本發明執行的過程所需的編程是相對簡單的,並且對於有關編程技術人員應當是顯然的。因此,在本文中不附上這樣的編程。然後,可使用任何特定的編程來實現本發明而不脫離本發明的精神和範圍。
在上述說明中,可以看到本發明包括新的且有用的體系結構和方法用於實現人類交互證據(HIP),實質上不需要由人類花費主動努力,而是人類只花費被檢測的自然努力。這樣被檢測的自然努力由可信的證明單元24以可信方式向接收者16驗證,因此可以向接收者16保證所檢測的自然努力確實是實際發生的並且不是被企圖欺騙接收者16的惡意實體簡單地設計出來的。
應當意識到,可在不脫離本發明思想的情況下對上述實施例進行修改。更顯然地,要意識到,本發明不僅可被用於包括人類與發送項目14交互的標記,而且還包括與發送項目14有關的任何標記,如人類交互、機器交互等等。因而,例如這樣一種情況,使用本發明向接收者16證明發送應用程式26每單位時間沒有發送超過最大數量的發送項目14,無論涉及的任何人類交互。因此,一般應當理解,本發明不限於所揭示的特定實施例,而旨在覆蓋由所附權利要求書定義的本發明的精神和範圍內的修改方案。
權利要求
1.一種從計算設備的應用程式發送一發送項目到一接收者的方法,所述計算設備在其上具有一證明單元用於證明可信賴性,其特徵在於,所述方法包括所述計算設備上的應用程式構造所述發送項目;所述應用程式和所述證明單元之一監視能夠用來檢測實際上花費了最小努力來構造所述發送項目的預定標記;所述證明單元認證所述應用程式以給予其信任;所述應用程式和所述證明單元之一,基於發出將所構造的發送項目發送給所述接收者的命令,構造一發送證明來伴隨所述發送項目,所述發送證明基於所述受監視標記和所述應用程式的認證,並從而描述了為構造所述發送項目所花費的努力;所述證明單元和所述應用程式之一將所構造的發送證明與所構造的發送項目打包在一起;以及所述證明單元和所述應用程式之一將打包的發送項目和發送證明發送給所述接收者。
2.如權利要求1所述的方法,描述了與從所述計算設備的應用程式發送所述發送項目到所述接收者有關的用戶交互,所述計算設備在其上具有用於證明可信賴性的所述證明單元,其特徵在於,所述方法包括所述計算設備上的應用程式便於用戶構造所述發送項目;所述應用程式和所述證明單元之一監視可用來檢測所述用戶實際上正為構造所述發送項目花費努力的預定標記;所述證明單元認證所述應用程式以給予其信任;所述應用程式和所述證明單元之一,基於所述用戶命令所述應用程式發送所構造的發送項目到所述接收者,構造一發送證明以伴隨所述發送項目,所述發送證明基於所述受監視標記和所述應用程式的認證,並從而描述了所述用戶交互;所述證明單元和所述應用程式之一將所構造的發送證明與所構造的發送項目打包在一起;以及所述證明單元和所述應用程式之一將所打包的發送項目和發送證明發送給所述接收者。
3.如權利要求1所述的方法,其特徵在於,包括所述計算設備上的電子郵件應用程式,構造要發送給所述接收者的電子郵件消息。
4.如權利要求1所述的方法,其特徵在於,包括所述計算設備上的請求應用程式,構造要發送給所述接收者的請求。
5.如權利要求1所述的方法,其特徵在於,包括所述應用程式和所述證明單元之一監視受監視標記,包括下列各項即鍵盤活動、寫字板活動、滑鼠活動和缺少用於控制所述應用程式活動的運行腳本的至少之一。
6.如權利要求1所述的方法,其特徵在於,包括所述應用程式和所述證明單元之一監視預定標記,包括下列各項即構造所述發送項目的最小構造時間和每單位時間所發送的發送項目的最大數量的至少之一。
7.如權利要求1所述的方法,其特徵在於,包括所述證明單元通過審查由所述應用程式提供的數字證書來認證所述應用程式。
8.如權利要求1所述的方法,其特徵在於,所述計算設備包括硬體和資源,所述方法還包括所述證明單元至少認證用於構造所述發送項目的所述計算設備的一些硬體和資源。
9.如權利要求8所述的方法,其特徵在於,包括所述證明單元通過審查由所述硬體和/或資源的每一部分提供的數字證書來認證它們。
10.如權利要求1所述的方法,其特徵在於,包括所述應用程式和所述證明單元之一,根據所述受監視標記確定預定要求是否已滿足,以及如果是則構造所述發送證明。
11.如權利要求1所述的方法,其特徵在於,包括構造所述發送證明,以包括描述所述應用程式和相關於所述應用程式的信息的陳述;以及描述所述發送項目和與所述發送項目有關的信息的陳述,包括與所述受監視標記至少一部分有關的信息。
12.如權利要求11所述的方法,其特徵在於,所述計算設備包括硬體和資源,所述方法還包括所述證明單元至少認證用於構造所述發送項目的所述計算設備的一些硬體和/或資源,所述方法還包括構造所述發送證明以包括描述所述硬體和/或資源及與這類硬體和/或資源有關的信息的陳述。
13.如權利要求1所述的方法,其特徵在於,包括將所構造的發送證明與所構造的發送項目打包,這是通過將所述發送證明附加到所述發送項目、根據所述證明單元的密鑰籤名打包的發送項目/發送證明以形成數字籤名、並將所述數字籤名附加到所述打包的發送項目/發送證明來完成的。
14.一種驗證與由一接收者從一計算設備的應用程式接收的發送項目有關的最小花費努力的方法,所述發送項目是在帶有一發送證明的包中,所述發送證明基於可用來檢測實際上花費了最小努力來構造所述發送項目的受監視標記和對所述應用程式的認證,且從而描述了所述花費努力,其特徵在於,所述方法包括接收帶有所述發送項目和所述發送證明的所述包;驗證包括在所述包內的至少一個籤名;鑑於決定是否承兌所述發送項目的預定策略檢查所述包的所述發送證明,所述策略詳述所述最小花費努力,由此策略的每個方面可針對從所述發送證明獲得的信息而被度量;以及如果所述策略實際上由所述發送證明滿足則承兌所述發送項目,且從而接受並對所述發送項目作出動作。
15.如權利要求14的方法,用於驗證與由所述接收者從所述計算設備的應用程式接收的所述發送項目有關的用戶交互,所述發送項目是在帶有一發送證明的包中,所述發送證明基於可用來檢測實際上花費了最小努力來構造所述發送項目的受監視標記和對所述應用程式的認證,並從而描述了所述用戶交互,其特徵在於,所述方法包括接收帶有所述發送項目和所述發送證明的所述包;驗證包括在所述包內的至少一個籤名;鑑於決定是否承兌所述發送項目的預定策略檢查所述包的所述發送證明,由此策略的每個方面可針對從所述發送證明獲得的信息而被度量;以及如果所述策略實際上被所述發送證明滿足則承兌所述發送項目,且從而接受並對所述發送項目作出動作。
16.如權利要求15所述的方法,其特徵在於,包括接收帶有所述發送項目的所述包,所述發送項目包括通過要為此酬謝的中介發起的請求,且如果判定中介發送了不帶有已驗證用戶交互的請求,則不承兌所述發送項目。
17.如權利要求14所述的方法,其特徵在於,還包括如果所述策略實際上未被所述發送證明滿足則不承兌所述發送項目,且從而不接收和不對所述發送項目採取行動,並返回給所述計算設備一拒絕消息。
18.如權利要求14所述的方法,其特徵在於,還包括如果所述策略實際上未被所述發送證明滿足則不承兌所述發送項目,且從而不接收和不對所述發送項目採取行動,並通知拒絕過濾器有關相同的內容,由此所述拒絕過濾器隨後將過濾掉來自所述計算設備的其它發送項目。
19.如權利要求14所述的方法,其特徵在於,還包括如果所述策略實際上未被所述發送證明滿足則不承兌所述發送項目,且從而不接收和不對所述發送項目採取行動,並將所述計算設備添加至拒絕列表,由此來自所述計算設備的其它發送項目將根據是否在這樣的列表中而被區別對待。
20.如權利要求14所述的方法,其特徵在於,包括接收帶有包括電子郵件消息的所述發送項目的所述包。
21.如權利要求14所述的方法,其特徵在於,包括接收帶有包括請求的所述發送項目的所述包。
22.如權利要求17所述的方法,其特徵在於,包括接收帶有包括在所述發送項目構造期間監視的標誌的所述發送項目的所述包,所述標誌包括下列各項即鍵盤活動、寫字板活動、滑鼠活動和缺少用於控制所述應用程式活動的運行腳本中的至少一項。
23.如權利要求14所述的方法,其特徵在於,包括接收帶有包括在所述發送項目構造期間監視的標誌的所述發送項目的所述包,所述標誌包括下列各項即構造所述發送項目的最小構造時間和每單位時間發送的發送項目的最大數量中的至少一項。
24.如權利要求14所述的方法,其特徵在於,包括接收帶有所述發送證明的所述包,包括描述所述應用程式和與所述應用程式有關的信息的陳述;以及描述所述發送項目和與所述發送項目有關的信息的陳述,包括與所述受監視標記至少一部分有關的信息。
25.如權利要求24所述的方法,其特徵在於,所述計算設備包括硬體和資源,所述方法接收帶有所述發送證明的所述包,還包括描述所述硬體和/或資源及與這類硬體和/或資源有關的信息的陳述。
26.如權利要求14所述的方法,其特徵在於,包括接收帶有附加於所述發送項目的所述發送證明的所述包,以及基於打包的發送項目/發送證明而附加的數字籤名。
全文摘要
一方法,描述與從計算設備的應用程式發送—發送項目到接收者有關的用戶交互。該計算設備在其上具有證明單元用於證明可信賴性。該應用程式方便了用戶構造發送項目,並監視預定標記,它能夠用於檢測實際上用戶是否正花費努力來構造發送項目。證明單元認證應用程式以給予其信任,且基於用戶命令應用程式發送,構造發送證明以伴隨發送項目。發送證明基於受監視標記和應用程式認證,並從而描述了用戶交互。所構造的發送證明與構造的發送項目被打包,且將該包發送給接收者。
文檔編號H04L9/32GK1713197SQ20051007141
公開日2005年12月28日 申請日期2005年5月13日 優先權日2004年6月15日
發明者C·A·米科, D·E·黑克曼, J·D·本納龍, J·T·古德曼, M·佩納多 申請人:微軟公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀