两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

提供用于傳輸應用數據單元的虛擬連接的制作方法

文檔序號:11162142閱讀:350來源:國知局
提供用于傳輸應用數據單元的虛擬連接的制造方法與工藝

本發(fā)明尤其涉及用于提供用于傳輸應用數據單元的虛擬連接的方法。



背景技術:

在現有技術中,已知用于建立第一數據處理系統(tǒng)和連接到第二數據處理系統(tǒng)的芯片卡之間的直接連接的方法。然而,根據網絡配置,第一數據處理系統(tǒng)和第二數據處理系統(tǒng)之間的這類直接連接可能不可行,例如,如果防火墻的配置禁止這類直接連接。此外,借助這類直接連接對多個芯片卡的訪問很復雜,因為必須為每個獨立的芯片卡建立直接連接。



技術實現要素:

因此,本發(fā)明的目的是克服上文提及的缺陷。

該目的通過獨立權利要求和從屬權利要求的主題來實現。在從屬權利要求中呈現本發(fā)明的有利的示例性實施方式。

根據本發(fā)明的第一方法包括:通過服務器認證一個或多個第一客戶端,通過所述服務器認證一個或多個第二客戶端,以及通過所述服務器提供至少一個應用數據單元切換,使得當在所述服務器處從所述第一客戶端之一接收具有控制應用數據單元的數據包時,所述服務器將具有接收的所述數據包所包含的所述控制應用數據單元的數據包發(fā)送到所述第二客戶端中的至少一者,和/或,當在所述服務器處從所述第二客戶端之一接收具有響應應用數據單元的數據包時,所述服務器將具有接收的所述數據包所包含的所述響應應用數據單元的數據包發(fā)送到所述第一客戶端中的至少一者。

根據本發(fā)明的第二方法包括:通過第一客戶端相對于服務器認證所述第一客戶端,以及將具有控制應用數據單元的數據包從所述第一客戶端發(fā)送到所述服務器和/或接收從所述服務器到所述第一客戶端的具有響應應用數據單元的數據包。

根據本發(fā)明的第三方法包括:通過第二客戶端相對于服務器認證所述第二客戶端,以及接收從所述服務器到所述第二客戶端的具有控制應用數據單元的數據包和/或將具有響應應用數據單元的數據包從所述第二客戶端發(fā)送到所述服務器。

根據本發(fā)明的用于提供用于傳輸應用數據單元的虛擬連接的第四方法包括根據本發(fā)明的第一方法的步驟(例如在服務器上執(zhí)行)、根據本發(fā)明的第二方法的步驟(例如在第一客戶端上執(zhí)行)、以及根據本發(fā)明的第三方法的步驟(例如在第二客戶端上執(zhí)行)。根據本發(fā)明的第一方法、第二方法和第三方法的步驟因此意圖優(yōu)選地被理解成根據本發(fā)明的用于提供用于傳輸應用數據單元的虛擬連接的第四方法的對應步驟,這些對應步驟能夠通過示例方式被執(zhí)行在包括服務器、第一客戶端和第二客戶端的系統(tǒng)中。

例如,根據本發(fā)明的方法均涉及相同的服務器、相同的第一客戶端和相同的第二客戶端。根據本發(fā)明的第二方法的第一客戶端例如為這些第一客戶端之一,以及根據本發(fā)明的第三方法的第二客戶端例如為這些第二客戶端之一。第一客戶端、第二客戶端和服務器例如為相互不同的數據處理系統(tǒng)。服務器優(yōu)選地為根據本發(fā)明的服務器設備。此外,每個第一客戶端優(yōu)選地在每種情況下均為根據本發(fā)明的第一客戶端,以及每個第二客戶端優(yōu)選地在每種情況下均為根據本發(fā)明的第二客戶端。

在如下公開內容中,在大多數情況下,提及多個第一客戶端和多個第二客戶端。本公開內容僅表示簡化且不意圖被理解為限制。復數個客戶端的公開內容因此(在一定程度上是有意義的)意圖總是被理解為單個客戶端的公開內容。

服務器例如連接到第一客戶端和第二客戶端。例如,服務器借助一個或多個網絡連接到第一客戶端和第二客戶端。網絡的示例為局域網(LAN)(諸如以太網或IEEE 802網絡)、廣域網(WAN)、全球網(GAN)、無線網絡、有線網絡、移動網絡、電話網絡和/或因特網。例如,服務器至少部分地借助因特網連接到第一客戶端和第二客戶端。

服務器與第一客戶端和第二客戶端之間的連接可以面向無連接或連接。例如,在每個客戶端與服務器之間,在每種情況下存在網絡連接。

例如,在第一客戶端和第二客戶端之間不存在直接連接。例如,第一客戶端和/或第二客戶端為一個或多個網絡的一部分。例如,第一客戶端和/或第二客戶端在每種情況下至少部分地借助防火墻(例如軟件防火墻和/或硬件防火墻)和/或路由器連接到因特網。例如,防火墻和/或路由器禁止第一客戶端和第二客戶端之間的直接網絡連接。

服務器尤其意圖被理解為裝備有軟件和/或硬件的數據處理系統(tǒng),允許其向其它數據處理系統(tǒng)提供諸如應用數據單元切換的服務??蛻舳擞绕湟鈭D被理解為配備有軟件和/或硬件的數據處理系統(tǒng),允許其使用由服務器提供的服務,諸如應用數據單元切換。

例如,第一客戶端和第二客戶端在每種情況下利用至少一個命令相對于服務器認證其自身,該至少一個命令包括認證所需的信息(例如用戶名和密碼)。相對于服務器認證第一客戶端例如意圖被理解為第一客戶端在每種情況下登錄到服務器。相對于服務器認證第二客戶端例如意圖被理解為第二客戶端在每種情況下登錄到服務器。通過示例,第一客戶端和/或第二客戶端登錄到服務器,以便使用由服務器提供的應用數據單元切換。例如,僅登錄到服務器的客戶端可以使用應用數據單元切換。例如,第一客戶端和/或第二客戶端將登錄信息發(fā)送到服務器(例如借助各自的網絡連接)。例如,第一客戶端和/或第二客戶端將登錄信息作為命令發(fā)送到服務器(例如借助各自的網絡連接)。例如為各個客戶端或一組客戶端定制登錄信息。然而,也可想到的是,登錄信息對于所有客戶端是相同的。例如,登錄信息包括唯一標識符,諸如用戶名(例如電子郵件地址、客戶編號或注冊號)、密碼、身份驗證特征、生物特征和/或各個客戶端的唯一標識符(例如媒體訪問控制地址或國際移動用戶標識)。

登錄信息可以至少部分地由用戶輸入在第一客戶端和/或第二客戶端上和/或至少部分地由第一客戶端和/或第二客戶端讀入。例如,用戶可以在每種情況下將用戶名和密碼輸入在第一客戶端和/或第二客戶端上作為登錄信息。例如,第一客戶端和/或第二客戶端可以在每種情況下讀入來自連接到各自客戶端的安全令牌(諸如芯片卡)的身份驗證特征和/或用戶的生物特征作為登錄信息。

通過服務器認證第一客戶端和第二客戶端例如意圖被理解為服務器核對第一客戶端和第二客戶端是否被授權登錄到服務器。例如,服務器核對第一客戶端和/或第二客戶端是否在每種情況下都被授權使用由服務器提供的應用數據單元切換。例如,僅由服務器認證的和/或登錄到服務器的客戶端可以使用由服務器提供的應用數據單元切換。

例如,服務器有權訪問合適的授權信息。例如,授權信息包括登錄信息所對應的信息,例如唯一標識符,諸如用戶名(例如電子郵件地址、客戶編號或注冊號)、密碼、身份驗證特征、生物特征和/或各個客戶端的唯一標識符(例如媒體訪問控制地址或國際移動用戶標識)。此外,授權信息可以包括關于各個客戶端是否被授權使用至少一個應用數據單元切換的信息。

授權信息可以被存儲在數據庫(例如目錄服務)中。例如,授權信息被存儲在服務器的存儲器中。例如,授權信息被存儲在服務器之外的、服務器能夠訪問的存儲器中(例如服務器能夠借助網絡訪問的數據庫服務器的存儲器中)。

因此,用于通過服務器認證第一客戶端和第二客戶端的各種可能性是可想到的。例如,服務器的一個或多個訪問控制部件可以被建立以認證第一客戶端和第二客戶端。例如,訪問控制部件是可互換的。訪問控制部件可以為軟件和/或硬件的形式。例如,訪問控制部件包括至少一個處理器和具有程序指令的至少一個存儲器,其中,該至少一個存儲器和程序指令被配置成使得連同該至少一個處理器一起引起服務器認證第一客戶端和第二客戶端。例如,訪問控制部件可以為訪問控制模塊(ACM)的形式,例如,可以使用插件概念在服務器上交換該ACM。例如這有利于允許訪問控制模塊的簡單交換且因此允許通過服務器對第一客戶端和第二客戶端的認證的不復雜適應,而例如不必須完全改變服務器(例如服務器程序)的編程。例如,當交換訪問控制模塊時,完全不需要改變服務器的(例如服務器程序的)編程。例如,在訪問控制模塊中和/或在訪問控制部件中,可以存儲具有授權信息的數據庫(例如,訪問控制模塊包括這類數據庫)。例如也可想到的是,訪問控制模塊和/或訪問控制部件有權訪問具有授權信息的目錄服務(例如,有權訪問由不同于該服務器的數據庫服務器提供的、具有授權信息的目錄服務)。

例如,服務器從每個第一客戶端和從每個第二客戶端接收對應的登錄信息。例如,服務器借助與客戶端的各自網絡連接從每個第一客戶端和從每個第二客戶端接收對應的登錄信息。服務器然后在每種情況下可以通過將各自的登錄信息與各自的授權信息相比較來認證各自的客戶端。

將數據包(或信息)從客戶端發(fā)送到服務器例如意圖被理解為客戶端發(fā)送數據包(或信息)使得可以在服務器處接收該數據包(或信息)。將數據包(或信息)從服務器發(fā)送到一個或多個客戶端例如意圖被理解為服務器發(fā)送數據包(或信息),使得可以在一個或多個客戶端處接收該數據包(或信息)。優(yōu)選地,發(fā)送數據包(或信息)使得借助網絡連接傳輸該數據包(或信息)。

在服務器處或在客戶端處接收數據包(或信息)例如意圖被理解為該數據包(或該信息)在服務器處或在客戶端處被接收。優(yōu)選地,接收數據包(或信息)使得借助網絡連接獲得該數據包(或信息)。

數據包例如為具有指定長度和/或形式的數據單元。數據包例如為利用分組交換傳輸協(xié)議在網絡中傳輸的數據單元。例如,數據包包含報頭數據字段和用戶數據字段。例如,除了實際的用戶數據外,數據包還包含具有管理信息和尋址信息的報頭數據。該報頭數據例如被包含在數據包的報頭數據字段(也就是說,報頭)中。具有應用數據單元的數據包包含應用數據單元,例如作為用戶數據(也就是說,在數據包的用戶數據字段中傳輸應用數據單元)。

應用數據單元例如為具有指定長度和/或形式的數據單元。通過示例,在由數據處理系統(tǒng)的處理器執(zhí)行的芯片卡應用程序和(例如直接地)連接到該數據處理系統(tǒng)的芯片卡之間交換應用數據單元,以便訪問芯片卡。

通過服務器提供至少一個應用數據單元切換例如意圖被理解為服務器提供用于至少一個應用數據單元切換的服務。由服務器提供的至少一個應用數據單元切換例如將在服務器處從第一客戶端接收的數據包中所包含的控制應用數據單元傳送到第二客戶端,以及將在服務器處從第二客戶端接收的數據包中所包含的響應應用數據單元傳送到第一客戶端。應用數據單元在第一客戶端、服務器和第二客戶端之間的傳輸在每種情況下發(fā)生在數據包中。

由服務器提供的至少一個數據單元切換例如被建立,使得當在服務器處從第一客戶端之一接收具有控制應用數據單元的數據包時,服務器將具有接收的數據包所包含的控制應用數據單元的數據包發(fā)送到第二客戶端中的至少一者(例如至少部分地根據第一客戶端和第二客戶端之間的映射)。例如,服務器從接收的數據包取出控制應用數據單元并將其插入到待發(fā)送的數據包(或待發(fā)送的多個數據包)中。然而也可想到的是,接收的數據包和待發(fā)送的數據包(或待發(fā)送的多個數據包)是相同的。

可替選地或附加地,由服務器提供的至少一個應用數據單元切換例如被建立,使得當在服務器處從第二客戶端之一接收具有響應應用數據單元的數據包時,服務器將具有接收的數據包所包含的響應應用數據單元的數據包發(fā)送到第一客戶端中的至少一者(例如至少部分地根據第一客戶端和第二客戶端之間的映射)。例如,服務器從接收的數據包取出響應應用數據單元并將其插入到待發(fā)送的數據包(或待發(fā)送的多個數據包)中。然而也可想到的是,接收的數據包和待發(fā)送的數據包(或待發(fā)送的多個數據包)是相同的。

例如,由服務器提供的至少一個應用數據單元切換被建立,使得根據第一客戶端和第二客戶端之間的映射(例如指定映射)和/或應用數據單元到第一客戶端和/或第二客戶端中的至少一者的映射傳送在服務器處接收的應用數據單元(因此接收的數據包所包含的應用數據單元)。在這點上,切換例如意圖被理解為傳遞和/或發(fā)送(例如轉發(fā))。因此,通過這類映射,可以確定哪個客戶端意圖接收應用數據單元和/或服務器意圖將具有應用數據單元的數據包發(fā)送(例如轉發(fā))到哪個客戶端。

例如,該映射至少部分地由在接收的應用數據包中和/或在包含應用數據單元的接收的數據包中的映射信息指定,從而對于每個應用數據單元,可以指定不同的映射。例如,映射信息包含用于意圖接收應用數據的每個客戶端的唯一標識符(例如用戶名)。例如,由服務器提供的至少一個應用數據單元切換被建立,以將在服務器處接收的應用數據單元(因此接收的數據包所包含的應用數據單元)傳送到每個客戶端,該客戶端的唯一標識符被包含在映射信息中。例如,服務器知道登錄到服務器的所有客戶端的唯一標識符。通過示例,客戶端的唯一標識符(例如用戶名)被包含在客戶端的登錄信息中。

例如,該映射可替選地或附加地至少部分被存儲在數據庫中的映射信息中。例如,映射信息被存儲在服務器的存儲器中。例如,映射信息被存儲在服務器之外的、服務器能夠借助網絡連接訪問的存儲器中(例如在不同于提供目錄服務的服務器的數據庫服務器的存儲器中)。

映射的示例例如為一個第一客戶端和多個第二客戶端之間的映射(被稱為1:n映射),從而服務器將來自所述一個第一客戶端的所有控制應用數據單元傳送到所述多個第二客戶端以及將來自所述多個第二客戶端的所有響應應用數據單元傳送到所述一個第一客戶端。映射的另一示例例如為多個第一客戶端和一個第二客戶端之間的映射(被稱為n:1映射),從而服務器將來自所述多個第一客戶端的所有控制應用數據單元傳送到所述一個第二客戶端以及將來自所述一個第二客戶端的所有響應應用數據單元傳送到所述多個第一客戶端。映射的另一示例例如為一個第一客戶端和一個第二客戶端之間的映射(被稱為1:1映射),從而服務器將來自一個第二客戶端的所有響應應用數據單元傳送到一個第一客戶端以及將來自一個第一客戶端的所有控制應用數據單元傳送到一個第二客戶端。映射的另一示例例如為多個第一客戶端和多個第二客戶端之間的映射(被稱為n:n映射),從而服務器將來自多個第二客戶端的所有響應應用數據單元傳送到多個第一客戶端以及將來自多個第一客戶端的所有控制應用數據單元傳送到多個第二客戶端。

例如,服務器的一個或多個應用數據單元切換部件可以被建立以提供應用數據單元切換。例如,應用數據單元切換部件是可互換的。應用數據單元切換部件可以為軟件和/或硬件的形式。例如,應用數據單元切換部件包括至少一個處理器和具有程序指令的至少一個存儲器,其中,該至少一個存儲器和程序指令被配置成使得連同至少一個處理器一起引起服務器提供至少一個應用數據單元切換。例如,應用數據單元切換部件為應用數據單元切換模塊的形式,例如可以使用插件概念在服務器上交換該應用數據單元切換模塊。

根據本發(fā)明的服務器包括用于執(zhí)行根據本發(fā)明的第一方法的步驟的一個或多個部件(例如訪問控制部件和/或應用數據單元切換部件)。根據本發(fā)明的第一客戶端包括用于執(zhí)行根據本發(fā)明的第二方法的步驟的一個或多個部件。根據本發(fā)明的第二客戶端包括用于執(zhí)行根據本發(fā)明的第三方法的步驟的一個或多個部件。

例如,根據本發(fā)明的服務器、根據本發(fā)明的第一客戶端和根據本發(fā)明的第二客戶端為彼此不同的數據處理系統(tǒng),被建立成能夠執(zhí)行根據本發(fā)明的各個方法的各個步驟的軟件和/或硬件。被建立成軟件和/或硬件例如意圖被理解為準備例如以計算機程序的形式的執(zhí)行各個方法的步驟所需的各個數據處理系統(tǒng)。數據處理系統(tǒng)的示例為計算機、臺式電腦、便攜式電腦(諸如手提電腦、平板電腦)、個人數字助理、智能手機、智能卡終端和/或瘦客戶端。

例如,根據本發(fā)明的服務器、根據本發(fā)明的第一客戶端和/或根據本發(fā)明的第二客戶端在每種情況下包括用于執(zhí)行根據本發(fā)明的計算機程序之一的部件,諸如處理器。處理器例如意圖被理解為控制單元、微處理器、微控制器單元(諸如微控制器)、數字信號處理器(DSP)、專用集成電路(ASIC)或現場可編程門陣列(FPGA)。

例如,根據本發(fā)明的服務器、根據本發(fā)明的第一客戶端和/或根據本發(fā)明的第二客戶端在每種情況下還包括用于存儲數據和/或信息的部件,諸如程序存儲器和/或主存儲器。

例如,根據本發(fā)明的服務器、根據本發(fā)明的第一客戶端和/或根據本發(fā)明的第二客戶端在每種情況下還包括用于借助網絡接收和/或發(fā)送數據和/或信息的部件,諸如網絡接口或網卡。例如,根據本發(fā)明的服務器、根據本發(fā)明的第一客戶端和根據本發(fā)明的第二客戶端借助一個或多個網絡彼此連接或彼此可連接。

例如,根據本發(fā)明的服務器包括至少一個處理器和具有程序指令的至少一個存儲器,其中,該至少一個存儲器和程序指令被配置成使得連同至少一個處理器一起引起根據本發(fā)明的服務器執(zhí)行根據本發(fā)明的第一方法的步驟。例如,根據本發(fā)明的第一客戶端包括至少一個處理器和具有程序指令的至少一個存儲器,其中,該至少一個存儲器和程序指令被配置成使得連同該至少一個處理器一起引起根據本發(fā)明的第一客戶端執(zhí)行根據本發(fā)明的第二方法的步驟。例如,根據本發(fā)明的第二客戶端包括至少一個處理器和具有程序指令的至少一個存儲器,其中,該至少一個存儲器和程序指令被配置成使得連同至少一個處理器一起引起根據本發(fā)明的第二客戶端執(zhí)行根據本發(fā)明的第三方法的步驟。

根據本發(fā)明的用于提供用于傳輸應用數據單元的虛擬連接的系統(tǒng)包括(至少)一個根據本發(fā)明的服務器、(至少)一個根據本發(fā)明的第一客戶端和(至少)一個根據本發(fā)明的第二客戶端。

根據本發(fā)明的計算機程序包括程序指令,當在數據處理系統(tǒng)的處理器上執(zhí)行根據本發(fā)明的計算機程序之一時,該程序指令引起該數據處理系統(tǒng)執(zhí)行根據本發(fā)明的方法中的至少一者。計算機程序例如可借助網絡分布。計算機程序可以至少部分為處理器的軟件和/或固件。根據本發(fā)明的計算機程序例如也可以由多個程序和/或應用程序組成或與其它程序和/或應用程序相互作用以引起數據處理系統(tǒng)執(zhí)行根據本發(fā)明的方法。

根據本發(fā)明的計算機程序例如為服務器程序的形式,計算機程序包括當在數據處理系統(tǒng)的處理器上執(zhí)行根據本發(fā)明的計算機程序時引起該數據處理系統(tǒng)執(zhí)行根據本發(fā)明的第一方法的程序指令。

包括當在數據處理系統(tǒng)的處理器上執(zhí)行根據本發(fā)明的計算機程序時引起該數據處理系統(tǒng)執(zhí)行根據本發(fā)明的第二方法的程序指令的根據本發(fā)明的計算機程序例如至少部分為客戶端程序的形式。例如,客戶端程序向由數據處理系統(tǒng)的處理器執(zhí)行的其它應用程序提供用于借助由服務器提供的應用數據單元切換訪問芯片卡的接口。例如,該接口為用于芯片卡訪問單元的虛擬設備驅動器(例如虛擬PC/SC設備驅動器)和/或編程接口(API,應用程序編程接口)。例如,客戶端程序為數據處理系統(tǒng)的操作系統(tǒng)層的一部分(當在數據處理系統(tǒng)的處理器上執(zhí)行該客戶端程序時)以及向數據處理系統(tǒng)的應用層的其它計算機程序提供用于借助由服務器提供的應用數據單元切換訪問芯片卡的接口(例如編程接口)。例如,由數據處理系統(tǒng)的處理器執(zhí)行的芯片卡應用程序使用該接口以便借助由服務器提供的應用數據單元切換訪問芯片卡。這例如為有利的,因為對于芯片卡應用程序,不存在與訪問直接與數據處理系統(tǒng)連接的芯片卡的區(qū)別。因此,在芯片卡上的現存的芯片卡應用程序可以訪問由服務器提供的應用數據單元切換。

包括當在數據處理系統(tǒng)的處理器上執(zhí)行根據本發(fā)明的計算機程序時引起該數據處理系統(tǒng)執(zhí)行根據本發(fā)明的第三方法的程序指令的根據本發(fā)明的計算機程序例如為代理程序的形式。例如,代理程序與用于芯片卡訪問單元的設備驅動器程序相互作用,以能夠借助由服務器提供的應用數據單元切換訪問連接到數據處理系統(tǒng)的芯片卡。例如,當在數據處理系統(tǒng)的處理器上執(zhí)行用于芯片卡訪問單元的設備驅動器程序時,用于芯片卡訪問單元的設備驅動器程序向由數據處理系統(tǒng)的處理器執(zhí)行的其它計算機程序(諸如芯片卡應用程序或代理程序)提供用于借助芯片卡訪問單元訪問芯片卡的接口(例如編程接口)。例如,用于芯片卡訪問單元的設備驅動器程序為數據處理系統(tǒng)的操作系統(tǒng)層的一部分(當在數據處理系統(tǒng)的處理器上執(zhí)行該設備驅動器程序時)以及向數據處理系統(tǒng)的應用層的其它計算機程序提供用于借助芯片卡訪問單元與應用數據單元訪問芯片卡的接口(例如編程接口)。

根據本發(fā)明的計算機程序在每種情況下可以被存儲在機器可讀存儲介質中,該機器可讀存儲介質包含一個或多個根據本發(fā)明的計算機程序以及例如為磁存儲介質、電存儲介質、電磁存儲介質、光學存儲介質和/或其它類型的存儲介質的形式。這類機器可讀存儲介質優(yōu)選地為物理的(因此“有形的”),例如,其為數據載體設備的形式。這類數據載體設備例如為便攜式的或永久地安裝在設備中。這類載體設備的示例為易失性或非易失性存儲器,其具有隨機存取存儲器(RAM),諸如例如NOR閃存,或具有順序存取存儲器,諸如NANO-閃存和/或具有只讀存取(ROM)或只寫存取的存儲器。機器可讀例如意圖被理解為能夠由計算機或數據處理系統(tǒng)(例如由處理器)讀(出)和/或寫入的存儲介質。

因此,通過根據本發(fā)明的第四方法,提供虛擬連接,借助第一客戶端和第二客戶端之間的虛擬連接(或借助附接到第二客戶端的芯片卡)、借助由服務器提供的至少一個應用數據單元切換,可以特別簡單地且靈活地傳輸應用數據單元。

這例如有利于實現遠程訪問芯片卡。借助應用數據單元切換(即虛擬連接),客戶端例如可以在連接到另一客戶端的芯片卡上訪問客戶端。例如,由第一客戶端的處理器執(zhí)行的芯片卡應用程序借助虛擬連接可以與直接連接到第二客戶端的芯片卡交換應用數據單元,以便訪問芯片卡。在此,基于通過服務器對客戶端的認證,可以確保僅值得信任的客戶端可以借助虛擬連接傳輸應用數據單元。此外,可以特別簡單地且快速地執(zhí)行改變,諸如將客戶端添加到根據本發(fā)明的系統(tǒng)或從根據本發(fā)明的系統(tǒng)移除,這是因為在這類改變的情況下僅必須適配服務器的應用數據單元切換(或映射)但客戶端的改變不是必需的。

這是進一步有利的,例如從而減少待由客戶端發(fā)送的數據包的數量。例如,第一客戶端可以將應用數據單元發(fā)送到多個第二客戶端,而不必須針對每個第二客戶端將具有應用數據單元的數據包發(fā)送到服務器。反而,如果第二客戶端被分配給第一客戶端則是足夠的,從而第一客戶端將具有應用數據單元的單個數據包發(fā)送到服務器。此外,也可以在客戶端之間傳輸應用數據單元,這些客戶端甚至不知道對應的另一客戶端的地址。

此外,這例如是有利的,從而減少關于管理與客戶端的連接的工作量。例如,客戶端僅必須相對于服務器認證其自身或被服務器認證一次,以及盡管如此但可以與各個客戶端交換應用數據單元。

在下文中,基于根據本發(fā)明的方法、根據本發(fā)明的計算機程序、根據本發(fā)明的服務器、根據本發(fā)明的第一客戶端、根據本發(fā)明的第二客戶端和根據本發(fā)明的系統(tǒng)的其它示例性特征,描述本發(fā)明的示例性實施方式。特別地,通過根據本發(fā)明的方法的附加方法步驟的描述,針對待考慮的如下內容公開了本發(fā)明:用于執(zhí)行根據本發(fā)明的服務器、根據本發(fā)明的第一客戶端或根據本發(fā)明的第二客戶端的方法步驟以及根據本發(fā)明的計算機程序的對應程序指令的部件,當在數據處理系統(tǒng)的處理器上執(zhí)行該計算機程序時,該程序指令引起該數據處理系統(tǒng)執(zhí)行方法步驟。同樣的內容意圖應用于執(zhí)行方法步驟或程序指令的部件的公開內容,例如用于執(zhí)行方法步驟的部件的公開內容也意圖被理解為對應的方法步驟和對應的程序指令的公開內容。

在本發(fā)明的示例性實施方式中,根據本發(fā)明的第一方法還包括:在所述服務器處從所述第一客戶端之一接收具有控制應用數據單元的數據包,以及將具有接收的所述數據包所包含的所述控制應用數據單元的數據包從所述服務器發(fā)送到所述第二客戶端中的至少一者。例如,服務器至少部分地根據第一客戶端和第二客戶端之間的指定映射將數據包發(fā)送到第二客戶端中的至少一者。

在本發(fā)明的示例性實施方式中,根據本發(fā)明的第一方法還包括在所述服務器處從所述第二客戶端之一接收具有響應應用數據單元的數據包,以及將具有接收的所述數據包所包含的所述響應應用數據單元的數據包從所述服務器發(fā)送到所述第一客戶端中的至少一者。例如,服務器至少部分地根據第一客戶端和第二客戶端之間的指定映射將數據包發(fā)送到第一客戶端中的至少一者。

在根據本發(fā)明的第一方法的示例性實施方式中,通過所述服務器針對所述至少一個應用數據單元切換認證所述第一客戶端和所述第二客戶端,以及在根據本發(fā)明的第二方法的示例性實施方式中,所述第一客戶端相對于所述服務器針對到一個或多個第二客戶端的應用數據單元切換認證其自身,以及在根據本發(fā)明的第三方法的示例性實施方式中,所述第二客戶端相對于所述服務器針對到一個或多個第一客戶端的應用數據單元切換認證其自身。

相對于服務器針對到一個或多個第二客戶端的應用數據單元切換認證第一客戶端例如意圖被理解為第一客戶端在每種情況下都登錄到服務器以使用至少一個應用數據單元切換。相對于服務器針對到一個或多個第一客戶端的應用數據單元切換認證第二客戶端例如意圖被理解為第二客戶端在每種情況下都登錄到服務器以使用至少一個應用數據單元切換。例如,僅針對至少一個應用數據單元切換而登錄到服務器的客戶端可以使用該至少一個應用數據單元切換。例如,第一客戶端和/或第二客戶端將用于至少一個應用數據單元切換的登錄信息發(fā)送到服務器(例如借助各自的網絡連接)。

通過所述服務器針對所述至少一個應用數據單元切換認證所述第一客戶端和所述第二客戶端例如意圖被理解為服務器核對是否針對至少一個應用數據單元切換授權第一客戶端和第二客戶端登錄。通過示例,服務器核對是否在每種情況下都授權第一客戶端和/或第二客戶端使用由服務器提供的至少一個應用數據單元切換。例如,可以提供的是,對于由服務器提供的應用數據單元切換的每次使用,單獨登錄到服務器是必要的。然而也可想到的是僅需要一次登錄。通過示例,僅通過服務器針對至少一個應用數據單元切換認證的和/或針對至少一個應用數據單元切換登錄到服務器上的客戶端可以使用由服務器提供的至少一個應用數據單元切換。

通過示例,所述服務器提供所述至少一個應用數據單元切換使得,僅當在所述服務器處從針對所述至少一個應用數據單元切換認證的第一客戶端接收具有控制應用數據單元的數據包時,所述服務器至少部分地根據所述第一客戶端和所述第二客戶端之間的指定映射將具有接收的所述數據包所包含的所述控制應用數據單元的數據包發(fā)送到針對該應用數據單元切換認證的所述第二客戶端中的至少一者,和/或,僅當在所述服務器處從針對所述至少一個應用數據單元切換認證的第二客戶端接收具有響應應用數據單元的數據包時,所述服務器至少部分地根據所述第一客戶端和所述第二客戶端之間的指定映射將具有接收的所述數據包所包含的所述響應應用數據單元的數據包發(fā)送到針對該應用數據單元切換認證的所述第一客戶端中的至少一者。

該實施方式例如是有利的,從而確保僅值得信任的客戶端使用該至少一個應用數據單元切換以及能夠借助虛擬連接應用交換應用數據單元。

在根據本發(fā)明的第一方法的示例性實施方式中,所述服務器提供所述至少一個應用數據單元切換,使得當在所述服務器處從所述第一客戶端之一接收具有控制應用數據單元的數據包時,所述服務器根據所述第一客戶端和所述第二客戶端之間的映射和/或所述控制應用數據單元到所述第二客戶端中的至少一者的映射將具有接收的所述數據包所包含的所述控制應用數據單元的數據包發(fā)送到所述第二客戶端中的至少一者,和/或,當在所述服務器處從所述第二客戶端之一接收具有響應應用數據單元的數據包時,所述服務器根據所述第一客戶端和所述第二客戶端之間的映射和/或所述響應應用數據單元到所述第一客戶端中的至少一者的映射將具有接收的所述數據包所包含的所述響應應用數據單元的數據包發(fā)送到所述第一客戶端中的至少一者。

如上所述,由服務器提供的至少一個應用數據單元切換例如被建立,使得可以根據第一客戶端和第二客戶端之間的映射(例如指定映射)和/或應用數據單元到第一客戶端和/或第二客戶端中的至少一者的映射傳送在服務器處接收的應用數據單元(因此接收的數據包所包含的應用數據單元)。例如,通過這類映射,可以確定哪個客戶端意圖接收應用數據單元和/或服務器意圖將應用數據單元發(fā)送(例如轉發(fā))到哪個客戶端。

通過示例,在服務器處接收的應用數據單元和/或在服務器處接收的包含該應用數據單元的數據包包含映射信息,其中,該映射信息可以至少部分地指定第一客戶端和第二客戶端之間的映射和/或應用數據單元到第一客戶端和/或第二客戶端中的至少一者的映射。例如,該映射信息包含用于意圖接收應用數據單元的每個客戶端的唯一標識符(例如用戶名)。

例如,可替選地或附加地,映射至少部分地由存儲在數據庫中的映射信息指定。例如,映射信息被存儲在服務器的存儲器中。例如,映射信息被存儲在服務器之外的、服務器可借助網絡連接訪問的存儲器中(例如在不同于提供目錄服務的服務器的數據庫服務器的存儲器中)。

例如,根據本發(fā)明的第一方法還包括:當在所述服務器處從所述第一客戶端之一接收具有控制應用數據單元的數據包時,核對所述第一客戶端是否被授權用于所述映射(例如由映射信息指定的映射)。例如,建立服務器的訪問控制部件,以當在所述服務器處從所述第一客戶端之一接收具有控制應用數據單元的數據包時,核對所述第一客戶端是否被授權用于指定映射。例如,如果第一客戶端被授權用于指定映射,則根據指定映射將具有接收的數據包所包含的控制應用數據單元的數據包從服務器僅發(fā)送到第二客戶端中的至少一者。

例如,第一客戶端未被授權用于每個映射。通過示例,在服務器處接收的應用數據單元和/或在服務器處接收的包含該應用數據單元的數據包包含映射信息,該映射信息具有用于意圖接收該應用數據單元的第二客戶端的唯一標識符(例如用戶名),盡管第一客戶端未被授權用于到該第二客戶端的映射。在該情況下,服務器例如不將具有接收的數據包所包含的控制應用數據單元的數據包發(fā)送到該第二客戶端。

例如,根據本發(fā)明的第一方法還包括:當在所述服務器處從所述第二客戶端之一接收具有響應應用數據單元的數據包時,核對所述第二客戶端是否被授權用于所述映射(例如由映射信息指定的映射)。例如,建立服務器的訪問控制部件,以當在所述服務器處從所述第二客戶端之一接收具有響應應用數據單元的數據包時,核對所述第二客戶端是否被授權用于指定映射。例如,如果第二客戶端被授權用于指定映射,則根據指定映射將具有接收的數據包所包含的響應應用數據單元的數據包從服務器僅發(fā)送到第一客戶端中的至少一者。

例如,授權信息還包括關于客戶端是否被授權用于映射的信息。例如,客戶端被授權用于映射至少部分地根據客戶端的各個用戶和/或操作者和/或連接到第二客戶端的各個芯片卡。第一客戶端例如由芯片卡供應商(例如銀行)操作,且例如用于管理由芯片卡供應商發(fā)行的芯片卡。第二客戶端例如可以(直接地)連接到芯片卡,例如像芯片卡終端。

第一客戶端被授權用于映射例如可以至少部分地由第一客戶端的操作者確定。第二客戶端被授權用于映射例如可以至少部分地由連接到第二客戶端的芯片卡或第二客戶端的用戶的(例如芯片卡的持有者的)身份來確定。通過各種映射和對于這些映射的授權,因此例如可能的是,大量芯片卡供應商(例如銀行和保險公司等)使用由服務器提供的應用數據單元切換來傳輸去往和來自特定芯片卡(例如特定用戶的電子身份證或組合的借記和醫(yī)療保險卡)的應用數據單元,或者芯片卡供應商(例如銀行)使用由服務器提供的應用數據單元切換來傳輸去往和來自大量芯片卡(例如由銀行發(fā)行的所有借記卡)的應用數據單元。

該實施方式是有利的,例如從而確保僅使用至少一個應用數據單元切換的特定客戶端還能夠借助虛擬連接交換應用數據單元。例如,僅由特定芯片卡供應商(諸如例如銀行)操作的第一客戶端可以被授權用于到第二客戶端(連接到由該芯片卡供應商發(fā)行的芯片卡)的映射,從而服務器僅將從該第一客戶端接收的控制應用數據單元傳送(例如發(fā)送)到這些第二客戶端以及將從這些第二客戶端接收的響應應用數據單元僅傳送(例如發(fā)送)到該第一客戶端。

在本發(fā)明的示例性實施方式中,根據本發(fā)明的方法還包括借助由服務器提供的至少一個應用數據單元切換訪問芯片卡。例如,根據本發(fā)明的方法還包括借助應用數據單元切換、通過第一客戶端中的至少一者訪問連接到第二客戶端的至少一個芯片卡。

這是有利的,例如從而允許遠程訪問芯片卡或遠程控制芯片卡。采用該方式,可以避免存儲在可直接連接到芯片卡的本地客戶端(例如第二客戶端)上訪問或控制芯片卡所需的信息的需求,該信息諸如芯片卡管理密鑰、芯片卡認證信息(例如密碼或PIN)、用于加密用于芯片卡的信息和/或用于從芯片卡解密信息的密鑰、和/或加密證書。這類本地客戶端(例如第二客戶端)通常由大量用戶使用且因此特別易受操縱。代替地,這些敏感信息可以被存儲在遠程客戶端(例如第一客戶端)且在此被給定特殊保護。

訪問芯片卡例如意圖被理解為與芯片卡交換信息。例如,當客戶端將控制應用數據單元發(fā)送到芯片卡和/或從芯片卡接收響應應用數據單元時,該客戶端訪問芯片卡。當由客戶端的處理器執(zhí)行的芯片卡應用程序生成用于芯片卡的控制應用數據單元且引起該控制應用數據單元被發(fā)送到芯片卡時,客戶端例如將控制應用數據單元發(fā)送到芯片卡。當由客戶端的處理器執(zhí)行的芯片卡應用程序從芯片卡接收響應應用數據單元時,客戶端例如在芯片卡上接收控制應用數據單元。

例如,控制應用數據單元包含用于芯片卡的指令和/或響應應用數據單元包含來自芯片卡的對指令的響應。例如,控制應用數據單元包含用于連接到至少一個第二客戶端的芯片卡的指令。例如,響應應用數據單元包含來自連接到至少一個第二客戶端的芯片卡的對指令的響應。

在根據本發(fā)明的第三方法的示例性實施方式中,該方法還包括將第二客戶端與芯片卡連接或仿真與芯片卡的連接,以及在根據本發(fā)明的第一方法和第二方法的示例性實施方式中,第二客戶端連接到芯片卡或仿真與芯片卡的連接。

芯片卡例如為具有集成電路(例如芯片)的特殊塑料卡,其包括至少一個邏輯單元、一個存儲單元和/或一個處理器單元。芯片卡意圖被理解為智能卡或集成電路卡(ICC)。特別地,芯片卡意圖被理解為根據標準ISO 7816和/或標準ISO 14443和/或標準ISO 15693的芯片卡。

將第二客戶端連接到芯片卡例如意圖被理解為第二客戶端被連接到芯片卡。優(yōu)選地,這意圖被理解為建立從第二客戶端到芯片卡的邏輯連接,可以借助該邏輯連接發(fā)送且接收信息和/或數據(例如為應用數據單元的形式)。邏輯連接例如通過通信參數的協(xié)商和/或發(fā)送且接收信息和/或數據來建立。例如,第二客戶端可以通過與芯片卡協(xié)商通信參數和/或訪問芯片卡而連接到芯片卡。例如,當芯片卡位于第二客戶端的芯片卡訪問單元中時和/或當第二客戶端能夠借助第二客戶端的芯片卡訪問單元訪問芯片卡時,第二客戶端連接到芯片卡。第二客戶端和芯片卡之間的連接可以是有線的和/或無線的。無線連接的示例為非接觸連接,諸如無線電鏈路、感應連接、近場通信(NFC)、藍牙連接和/或射頻識別連接(RFID)。標準ISO 14443和標準ISO 15693涉及非接觸芯片卡。例如,第二客戶端和芯片卡之間的連接為根據標準ISO 14443和/或標準ISO 15693的非接觸連接。有線連接的示例為接觸連接,諸如布置在芯片卡上的觸點與芯片卡訪問單元的對應觸點之間的連接。標準ISO 7816關于具有觸點的芯片卡。例如,第二客戶端和芯片卡之間的連接為根據標準ISO 7816的接觸連接。

優(yōu)選地,第二客戶端在每種情況下都直接連接到芯片卡。例如當沒有其它的數據處理系統(tǒng)被布置在客戶端和芯片卡之間時,客戶端和芯片卡之間的直接連接存在。例如,當客戶端可以借助直接連接到客戶端的芯片卡訪問單元訪問芯片卡時,在客戶端和芯片卡之間存在直接連接。

例如,建立第二客戶端,使得在每種情況下連接到芯片卡。特別地,可以以軟件和/或硬件的形式建立第二客戶端,以便連接到芯片卡。

例如,第二客戶端在每種情況下包括芯片卡訪問單元(例如芯片卡訪問單元、芯片卡讀取單元和/或芯片卡寫入單元)。通過示例,第二客戶端在每種情況下包括根據標準ISO 7816和/或標準ISO 14443和/或標準ISO 15693的芯片卡訪問單元。例如,第二客戶端可以至少部分為芯片卡終端,諸如認證終端或支付終端,例如用于利用借記卡和/或信用卡進行支付的支付終端??蛻舳死缃柚鷥炔靠偩€連接、本地有線連接(諸如通用串行總線連接(例如USB 1.1或USB 2.0或USB 3.0))、串行連接(諸如RS 232連接)、IEEE 1394連接和/或本地無線連接(諸如藍牙連接)直接連接到芯片卡訪問單元。

例如,每個第二客戶端包括用于芯片卡訪問單元的設備驅動器程序。該設備驅動器程序可以被存儲在各個第二客戶端的存儲器中。通過示例,用于芯片卡訪問單元的設備驅動器程序包括用于控制借助芯片卡訪問單元而與芯片卡的通信的程序指令。例如,當在第二客戶端的處理器上執(zhí)行用于芯片卡訪問單元的設備驅動器程序時,用于芯片卡訪問單元的設備驅動器程序向由各個第二客戶端的處理器執(zhí)行的其它計算機程序(諸如芯片卡應用程序或代理程序)提供用于借助芯片卡訪問單元訪問芯片卡的接口(例如編程接口)。例如,當在第二客戶端的處理器上執(zhí)行用于芯片卡訪問單元的設備驅動器程序時,用于芯片卡訪問單元的設備驅動器程序為第二客戶端的操作系統(tǒng)層的一部分,以及向第二客戶端的應用層的其它計算機程序提供用于借助芯片卡訪問單元與應用數據單元訪問芯片卡的接口(例如編程接口)。例如,應用數據單元為應用層的數據單元。

仿真與芯片卡的連接例如意圖被理解為第二客戶端通過軟件復制與芯片卡的連接而非實際上連接到芯片卡。例如,建立第二客戶端以便仿真與芯片卡的連接。特別地,可以通過軟件建立第二客戶端以便仿真與芯片卡的連接。

例如,根據本發(fā)明的第三方法還包括:將在所述第二客戶端處接收的所述數據包中包含的所述控制應用數據單元從所述第二客戶端發(fā)送到連接到所述第二客戶端的所述芯片卡,和/或在所述第二客戶端處從連接到所述第二客戶端的所述芯片卡接收所述響應應用數據單元。這是有利的,例如允許第一客戶端借助由服務器提供的應用數據單元切換和第二客戶端訪問連接到第二客戶端的芯片卡。

這是有利的,例如允許通過第二客戶端轉發(fā)應用數據單元。例如,建立第二客戶端以便相應地轉發(fā)應用數據單元。

例如,第二客戶端在每種情況下包括具有程序指令的計算機程序(例如在每種情況下,代理程序),當在第二客戶端的處理器上執(zhí)行該計算機程序時,該程序指令引起各個第二客戶端將在第二客戶端處接收的數據包中所包含的控制應用數據單元發(fā)送到連接到第二客戶端的芯片卡和/或將從連接到第二客戶端的芯片卡在數據包中接收的響應應用數據單元發(fā)送到服務器。例如,這類計算機程序在每種情況下被存儲在第二客戶端的存儲器中且在每種情況下被第二客戶端的處理器執(zhí)行,以便允許通過各自的第二客戶端轉發(fā)應用數據單元。

例如,根據本發(fā)明的第二方法包括生成用于連接到第二客戶端之一的至少一個芯片卡的控制應用數據單元。

例如,建立第一客戶端以生成用于連接到第二客戶端之一的至少一個芯片卡的控制應用數據單元。

例如,第一客戶端在每種情況下包括具有程序指令的芯片卡應用程序,當該芯片卡應用程序由第一客戶端的處理器執(zhí)行時,該程序指令引起第一客戶端生成具有用于芯片卡的指令的控制應用數據單元和/或獲得且解釋和/或進一步處理來自芯片卡的響應應用數據單元。例如,這些芯片卡應用程序在每種情況下被存儲在第一客戶端的存儲器中且在每種情況下被第一客戶端的處理器執(zhí)行。

例如,第一客戶端在每種情況下包括具有程序指令的計算機程序(例如客戶端程序),該程序指令引起第一客戶端將數據包中的由具有用于芯片卡的指令的芯片卡應用程序生成的控制應用數據單元發(fā)送到服務器,和/或接收數據包中所包含的響應應用數據單元且將其中包含的響應應用數據單元轉發(fā)到芯片卡應用程序或使該響應應用數據單元可被芯片卡應用程序獲得用以轉發(fā)。

在本發(fā)明的示例性實施方式中,控制應用數據單元為命令應用協(xié)議數據單元(命令-APDU)以及響應應用數據單元為響應應用協(xié)議數據單元(響應-APDU)。APDU尤其意圖被理解為根據標準ISO 7816-4的數據單元。APDU例如服務于在芯片卡上訪問芯片卡應用程序,該芯片卡應用程序由數據處理系統(tǒng)的處理器執(zhí)行。

在本發(fā)明的示例性實施方式中,接收和發(fā)送數據包借助至少一個網絡發(fā)生。例如,借助一個或多個網絡傳輸數據包。數據包的傳輸可以以非連接或連接方式發(fā)生。如上所述,網絡的示例為局域網(LAN)(諸如以太網或IEEE 802網絡)、廣域網(WAN)、全球網(GAN)、無線網絡、有線網絡、移動網絡、電話網絡和/或因特網。例如,服務器至少部分地借助因特網與第一客戶端和第二客戶端連接。

例如,數據包在至少一個網絡中的傳輸根據分組交換傳輸協(xié)議而發(fā)生,該分組交換傳輸協(xié)議諸如TCP(傳輸控制協(xié)議)或UDP(用戶數據報協(xié)議)。通過示例,控制應用數據單元和/或響應應用數據單元在每種情況下被包含在數據包中作為用戶數據。

例如,數據包在至少一個網絡中的傳輸被加密而發(fā)生。例如,根據如下加密協(xié)議之一傳輸數據包:TLS(傳輸層安全)、SSL(安全套接層)和/或安全通訊協(xié)議。這是有利的,例如從而保護包含在數據包中的信息。

在根據本發(fā)明的第一方法的示例性實施方式中,該方法還包括:在服務器處從第二客戶端之一接收狀態(tài)信息,并將該狀態(tài)信息從服務器發(fā)送到第一客戶端中的至少一者;以及在根據本發(fā)明的第二方法的示例性實施方式中,該方法還包括:在第一客戶端處從服務器接收狀態(tài)信息;以及在根據本發(fā)明的第三方法的示例性實施方式中,該方法還包括:通過第二客戶端生成狀態(tài)信息,并將該狀態(tài)信息從第二客戶端發(fā)送到服務器。

例如,由服務器提供的至少一個應用數據單元切換被建立,使得當在服務器處從第二客戶端之一接收具有狀態(tài)信息的數據包時,服務器將具有接收的數據包所包含的狀態(tài)信息的數據包發(fā)送到第一客戶端中的至少一者。例如,第一客戶端登錄以從一個或多個第二客戶端接收狀態(tài)信息。例如,登錄信息和/或授權信息包含對應信息。通過示例,服務器將從第二客戶端接收的狀態(tài)信息發(fā)送到登錄的所有第一客戶端以接收第二客戶端的狀態(tài)信息。

例如,狀態(tài)信息指示第二客戶端是否連接到芯片卡。例如,當第二客戶端連接到芯片卡時和/或當第二客戶端與芯片卡分離時,第二客戶端每次都生成對應的狀態(tài)信息。例如,狀態(tài)信息被包含在一個或多個數據包中,該一個或多個數據包從第二客戶端被發(fā)送到服務器且從服務器被發(fā)送到至少一個第一客戶端(例如借助各自的網絡連接)。例如,狀態(tài)信息作為推送通知從第二客戶端被發(fā)送到服務器和/或從服務器被發(fā)送到至少一個第一客戶端。

該實施方式是有利的,例如提供通知返回通道,可以借助該通知返回通道將第二客戶端的狀態(tài)變化通知給第一客戶端。

在本申請中上文描述的本發(fā)明的示例性實施方式意圖被理解為以所有的彼此組合來公開。

在尤其結合附圖的本發(fā)明的多個示例性實施方式的以下詳細描述中指示本發(fā)明的另外有利的示例性實施方式。

然而,本申請所附的附圖應當僅出于說明目的且不用于確定本發(fā)明的保護范圍。附圖未按比例且僅意圖通過示例方式反映本發(fā)明的總體概念。特別地,附圖中包括的特征決不意圖被視為本發(fā)明的必要部分。

附圖說明

附圖如下示出:

圖1為數據處理系統(tǒng)的示例性實施方式的框圖;

圖2為根據本發(fā)明的系統(tǒng)的示例性實施方式的框圖;

圖3為具有根據本發(fā)明的第一方法的示例性實施方式的步驟的流程圖;

圖4為具有根據本發(fā)明的第二方法的示例性實施方式的步驟的流程圖;

圖5為具有根據本發(fā)明的第三方法的示例性實施方式的步驟的流程圖;

圖6為根據本發(fā)明的系統(tǒng)的示例性軟件架構的框圖。

具體實施方式

下文將使用示例性實施方式描述本發(fā)明。

圖1示出數據處理系統(tǒng)1的示例性實施方式的框圖。數據處理系統(tǒng)1示出根據本發(fā)明的服務器、根據本發(fā)明的第一客戶端和/或根據本發(fā)明的第二客戶端的示例性實施方式。

數據處理系統(tǒng)1例如可以為計算機、臺式電腦、便攜式電腦(諸如手提電腦)、平板電腦、個人數字助理、智能手機、瘦客戶端和/或芯片卡終端。

數據處理系統(tǒng)1的處理器100尤其為微處理器、微控制器單元(諸如微控制器)、數字信號處理器(DSP)、專用集成電路(ASIC)或現場可編程門陣列(FPGA)的形式。

處理器100執(zhí)行存儲在程序存儲器120中的程序指令以及將例如中間結果或類似物存儲在主存儲器110中。例如,程序存儲器120為非易失性存儲器,諸如閃存、磁存儲器、EEPROM存儲器(電可擦可編程只讀存儲器)和/或光學存儲器。主存儲器110例如為易失性或非易失性存儲器,尤其隨機存取存儲器(RAM),例如靜態(tài)RAM存儲器(SRAM)、動態(tài)RAM存儲器(DRAM)、鐵電性RAM存儲器(FeRAM)和/或磁性RAM存儲器(MRAM)。

程序存儲器120優(yōu)選地為固定連接到數據處理系統(tǒng)1的本地數據載體。固定連接到數據處理系統(tǒng)1的數據載體例如為安裝在數據處理系統(tǒng)1中的硬盤??商孢x地,該數據載體例如也可以為可拆卸地連接到數據處理系統(tǒng)1的數據載體,諸如記憶棒、可移動存儲設備、便攜式硬盤驅動器、CD、DVD和/或軟磁盤。

程序存儲器120包含數據處理系統(tǒng)1的操作系統(tǒng),在啟動數據處理系統(tǒng)1之后,該操作系統(tǒng)至少部分地被加載到主存儲器110中且由處理器100執(zhí)行。特別地,在啟動數據處理系統(tǒng)1時,操作系統(tǒng)核心的至少一部分被加載到主存儲器110中且由處理器100執(zhí)行。數據處理系統(tǒng)1的操作系統(tǒng)優(yōu)選地為Windows、UNIX、Linux、安卓、蘋果iOS和/或MAC操作系統(tǒng)。

僅操作系統(tǒng)能夠將數據處理系統(tǒng)1用于數據處理。操作系統(tǒng)例如管理資源,諸如主存儲器110和程序存儲器120、網絡接口130、輸入/輸出設備140和芯片卡訪問單元150,以及尤其通過編程接口提供具有基礎功能的其它程序并控制程序的執(zhí)行。

處理器100控制網絡接口130,其中,網絡接口130的控制例如由設備驅動程序啟動,該設備驅動程序為操作系統(tǒng)核心的一部分。網絡接口130例如為網卡、網絡模式和/或調制解調器且被建立,以建立數據處理系統(tǒng)1和網絡之間的連接。網絡接口130例如可以借助網絡接收數據并將其轉發(fā)到處理器100,和/或從處理器100接收數據并借助網絡發(fā)送該數據。網絡的示例為局域網(LAN)(諸如以太網或IEEE 802網絡)、廣域網(WAN)、全球網(GAN)、無線網絡、有線網絡、移動網絡、電話網絡和/或因特網。

此外,處理器100可以至少控制可選存在的輸入/輸出設備140,其中,可選存在的輸入/輸出設備140的控制例如由設備驅動程序啟動,該設備驅動程序為操作系統(tǒng)核心的一部分。輸入/輸出設備140例如為鍵盤、鼠標、顯示單元、麥克風、觸摸屏、揚聲器、掃描儀、磁盤驅動器和/或照相機。輸入/輸出設備140例如可以從用戶接收輸入且將這些輸入轉發(fā)到處理器100,和/或從處理器100接收用于用戶的輸出信息。

此外,處理器100可以至少控制可選存在的芯片卡訪問單元150,其中,可選存在的芯片卡訪問單元150的控制例如由設備驅動程序啟動,該設備驅動程序為操作系統(tǒng)核心的一部分。芯片卡訪問單元150例如為用于與芯片卡非接觸連接或接觸連接的設備。例如,芯片卡訪問單元150為根據標準ISO 7816和/或標準ISO 14443和/或標準ISO 15693的芯片卡訪問單元。例如,根據本發(fā)明的第二客戶端包括芯片卡訪問單元150。芯片卡訪問單元150可以被集成在數據處理系統(tǒng)1中(例如當數據處理系統(tǒng)1為芯片卡終端時)或借助外部數據接口連接到數據處理系統(tǒng)1。數據處理系統(tǒng)1直接連接到芯片卡訪問單元150,例如借助有線連接、無線連接、USB連接(通用串行總線,例如USB 1.1或USB 2.0或USB 3.0)、串行連接(諸如RS 232連接)、IEEE 1394連接和/或藍牙通信。

圖2示出根據本發(fā)明的系統(tǒng)2的示例性實施方式的框圖。系統(tǒng)2包括服務器200、客戶端210和具有集成的芯片卡訪問單元的芯片卡終端220以及具有外部芯片卡訪問單元的計算機230。服務器200、客戶端210、芯片卡終端220和計算機230對應于數據處理系統(tǒng)1(參看圖1)。系統(tǒng)2可以可選地包括目錄服務服務器290。

服務器200為根據本發(fā)明的服務器的示例。服務器200例如為因特網240中的服務器,該服務器借助其網絡接口而與因特網連接且提供應用數據單元切換服務。例如,在服務器200上安裝包括程序指令的計算機程序(諸如服務器程序),當在服務器200的處理器上執(zhí)行計算機程序時,該程序指令引起服務器200執(zhí)行根據本發(fā)明的第一方法。計算機程序可以被存儲在服務器200的程序存儲器中。服務器200例如為應用數據單元切換服務供應商的服務器。

客戶端210為根據本發(fā)明的第一客戶端的示例。例如,在客戶端210上安裝包括程序指令的計算機程序,當在客戶端210的處理器上執(zhí)行計算機程序時,該程序指令引起客戶端210執(zhí)行根據本發(fā)明的第二方法。例如,該計算機程序包括至少一個芯片卡應用程序和客戶端程序。借助網絡連接250將客戶端210與服務器200連接。網絡連接250至少部分為借助因特網240的連接。客戶端210例如由芯片卡供應商操作,用于管理由芯片卡供應商發(fā)行的芯片卡。

芯片卡終端220和計算機230為根據本發(fā)明的第二客戶端的示例。例如,在芯片卡終端220和計算機230上安裝包括程序指令的計算機程序,當在芯片卡終端220和計算機230的處理器上執(zhí)行計算機程序時,該程序指令引起芯片卡終端220和計算機230執(zhí)行根據本發(fā)明的第三方法。例如,該計算機程序包括用于芯片卡訪問單元的至少一個設備驅動程序以及一個代理程序。借助網絡連接260將計算機230與服務器200連接。網絡連接260至少部分為借助因特網240的連接。借助網絡連接270將芯片卡終端220與服務器200連接。網絡連接270至少部分為借助因特網240的連接且部分為借助移動網絡的連接。

目錄服務服務器290例如提供用于管理用戶信息的目錄服務,該用戶信息諸如授權和/或登錄信息,以供服務器200的應用數據單元切換的使用。目錄服務服務器290借助網絡連接280連接到服務器200。網絡連接280至少部分為借助因特網240的連接。

網絡連接250、網絡連接260、網絡連接270和網絡連接280例如為面向連接的網絡連接。例如,根據分組交換傳輸協(xié)議,諸如TCP(傳輸控制協(xié)議)或UDP(用戶數據報協(xié)議),數據傳輸借助網絡連接250、網絡連接260、網絡連接270和網絡連接280發(fā)生。例如,根據加密協(xié)議,諸如TLS(傳輸層安全)、SSL(安全套接層)和/或安全通訊協(xié)議,數據傳輸借助網絡連接250、網絡連接260、網絡連接270和網絡連接280發(fā)生。

系統(tǒng)2可以具有其它數據處理系統(tǒng),這些數據處理系統(tǒng)類似地對應于數據處理系統(tǒng)1且借助其各自的網絡接口而與因特網250連接。

在下文中,針對圖3至圖5的描述,例如假設客戶端210借助由服務器200提供的應用數據單元切換來訪問連接到芯片卡終端220的芯片卡和/或連接到計算機230的芯片卡。因此,下文中的客戶端210意圖被理解為根據本發(fā)明的第一客戶端的示例,芯片卡終端220和/或計算機230意圖被理解為根據本發(fā)明的第二客戶端的示例,以及服務器200意圖被理解為根據本發(fā)明的服務器的示例。

圖3為具有根據本發(fā)明的第一方法的示例性實施方式的步驟的流程圖3,這些步驟發(fā)生在服務器200上。例如,由服務器200的處理器執(zhí)行的計算機程序(諸如服務器程序)的程序指令引起服務器200執(zhí)行流程圖3的步驟。

在步驟300中,服務器200認證客戶端210。通過示例,服務器核查客戶端210是否被授權使用由服務器200提供的應用數據單元切換。例如,服務器200借助網絡連接250從客戶端210接收用于登錄由服務器200提供的應用數據單元切換的登錄信息。

例如,服務器200有權訪問對應的授權信息。例如為每個第一客戶端和/或每個第二客戶端定制授權信息。例如,授權信息包括與登錄信息對應的信息,諸如用戶名(例如電子郵件地址、客戶編號或注冊號)、密碼、身份驗證特征、生物特征和/或各個客戶端的唯一標識符(例如媒體訪問控制地址或國際移動用戶標識)。授權信息可以還包括關于是否授權客戶端210使用應用數據單元切換的信息。授權信息例如可以被存儲在服務器290的目錄服務中且在此被服務器200查詢。

在步驟310中,服務器200認證芯片卡終端220和計算機230。通過示例,服務器200核對芯片卡終端220和計算機230是否被授權使用由服務器200提供的應用數據單元切換。例如,服務器200借助芯片卡終端220和計算機230的網絡連接270、280、260接收用于登錄由服務器200提供的應用數據單元切換的登錄信息。

例如,服務器200有權訪問對應的授權信息。如上所述,例如為每個第一客戶端和/或每個第二客戶端定制授權信息,且授權信息包括與登錄信息對應的信息。授權信息可以還包括關于是否授權芯片卡終端220和計算機230使用應用數據單元切換的信息。授權信息例如可以被存儲在服務器290的目錄服務中且在此被服務器200查詢。

在步驟320中,服務器200為客戶端210、芯片卡終端220和計算機230提供應用數據單元切換。例如,服務器200將應用數據單元切換僅提供給針對其授權的客戶端。例如,客戶端210由銀行操作,該銀行用于管理由銀行發(fā)行的借記卡。芯片卡終端220例如為支付終端,該支付終端例如用于利用銀行的借記卡的無現金支付,以及計算機230例如為例如由銀行的客戶用于家庭銀行服務的計算機。例如,服務器提供應用數據單元切換,用于應用數據單元在銀行的客戶端210和所有的連接到銀行的借記卡的第二客戶端(諸如芯片卡終端220和計算機230)之間的傳送。

服務器200提供應用數據單元切換,例如,使得當在服務器200處借助網絡連接250從客戶端210接收具有控制應用數據單元的數據包時,服務器200將具有接收的數據包所包含的控制應用數據單元的數據包借助網絡連接270發(fā)送到芯片卡終端220和/或借助網絡連接260發(fā)送到計算機230(例如根據指定的映射),和/或使得當服務器200處借助網絡連接270從芯片卡終端220和/或借助網絡連接260從計算機230接收具有響應應用數據單元的數據包時,服務器200借助網絡連接250將具有接收的數據包所包含的響應應用數據單元的數據包發(fā)送到客戶端210(例如根據指定的映射)。

控制應用數據單元例如為應用協(xié)議數據單元(命令-APDU),以及響應應用數據單元例如為響應應用協(xié)議數據單元(響應-APDU)。APDU尤其意圖被理解為根據標準ISO 7816-4的數據單元。

例如,建立由服務器200提供的應用數據單元切換,從而根據客戶端210與芯片卡終端220和計算機230之間的指定映射傳送在服務器200處接收的應用數據單元(因此接收的數據包所包含的應用數據單元)。例如,在服務器200處接收的數據包和/或其中包含的應用數據單元包含關于一個或多個客戶端(服務器意圖將具有接收的數據包所包含的應用數據單元的數據包發(fā)送到該一個或多個客戶端)的映射信息(指定映射關系)。

可選地,進一步建立由服務器200提供的至少一個應用數據單元切換,從而當在服務器200處從芯片卡終端220或計算機230接收具有狀態(tài)信息的數據包時,服務器200將具有接收的數據包所包含的狀態(tài)信息的數據包發(fā)送到客戶端210。例如,客戶端210已經登錄到服務器200以從芯片卡終端220和計算機230接收狀態(tài)信息。例如,登錄信息和/或授權信息包含對應信息。

當服務器200從客戶端210接收控制應用數據單元時,例如總是執(zhí)行隨后的可選步驟330和步驟340。作為步驟350和步驟360的替選或附加,執(zhí)行如下的步驟330和步驟340。

在可選步驟330中,服務器200從客戶端210接收具有控制應用數據單元的數據包。例如,服務器200借助網絡連接250從客戶端210接收具有控制應用數據單元的數據包。例如,數據包包含作為用戶數據的控制應用數據單元。

此外,數據包例如可以包含作為用戶數據的映射信息。該映射信息例如可以包含客戶端的唯一標識符,意圖接收控制應用數據單元。例如,如果從客戶端210接收的數據包包含這類映射信息,則服務器200首先核查例如是否授權客戶端210用于由映射信息指定的映射。例如,授權信息包含關于是否授權客戶端210用于映射的信息。

在可選步驟340中,服務器200將具有接收的數據包所包含的控制應用數據單元的數據包從服務器發(fā)送到芯片卡終端220和/或計算機230。例如,服務器200將具有接收的數據包所包含的控制應用數據單元的數據包從服務器借助網絡連接270發(fā)送到芯片卡終端220和/或借助網絡連接260發(fā)送到計算機230。例如,服務器200從接收的數據包提取控制應用數據單元并生成具有控制應用數據單元的新數據包(或多個新數據包),用以發(fā)送到芯片卡終端220和/或計算機230。例如,新生成的數據包(或新生成的多個數據包)包含作為用戶數據的控制應用數據單元。例如,服務器根據由映射信息指定的映射將具有控制應用數據單元的新生成的數據包(或新生成的多個數據包)發(fā)送到芯片卡終端220和/或計算機230。例如,如果也授權客戶端210用于映射,則服務器根據由映射信息指定的映射將具有控制應用數據單元的新生成的數據包(或新生成的多個數據包)僅發(fā)送到芯片卡終端220和/或計算機230。

當服務器200從芯片卡終端220或從計算機230接收具有響應應用數據單元的數據包時,例如總是執(zhí)行隨后的可選步驟350和步驟360。作為步驟330和步驟340的替選或附加,執(zhí)行如下的步驟350和步驟360。

在可選步驟350中,服務器200借助網絡連接270從芯片卡終端220或借助網絡連接260從計算機230接收具有響應應用數據單元的數據包。

例如,服務器200借助網絡連接270從芯片卡終端220或借助網絡連接260從計算機230接收具有響應應用數據單元的數據包。例如,數據包包含作為用戶數據的響應應用數據單元。

此外,數據包例如可以包含作為用戶數據的映射信息。映射信息例如可以包含客戶端的唯一標識符,意圖接收響應應用數據單元。例如如果從芯片卡終端220接收的數據包包含這類映射信息,則服務器首先核查例如是否授權芯片卡終端220用于由映射信息指定的映射。例如,授權信息包含關于是否授權芯片卡終端220用于映射的信息。

在可選步驟360中,服務器200將具有接收的數據包所包含的響應應用數據單元的數據包發(fā)送到客戶端210。例如,服務器200借助網絡連接250將具有接收的數據包所包含的響應應用數據單元的數據包發(fā)送到客戶端210。例如,服務器200從接收的數據包提取響應應用數據單元并生成具有響應應用數據單元的新數據包(或多個新數據包),用以發(fā)送到客戶端210。例如,新生成的數據包包含作為用戶數據的響應應用數據單元。例如,服務器根據由映射信息指定的映射將具有響應應用數據單元的新生成的數據包發(fā)送到客戶端210。

例如,如果從芯片卡終端220接收的數據包包含這類映射信息,如果芯片卡終端220也被授權用于映射,則服務器根據由映射信息指定的映射發(fā)送具有響應應用數據單元的新生成的數據包(或多個新生成的數據包)。

除了上文針對客戶端210描述的應用數據單元切換以外,服務器還可以為芯片卡終端220和計算機230提供用于其它第一客戶端和第二客戶端的其它應用數據單元切換。對于這些其它應用數據單元切換,服務器200與其它第一客戶端和第二客戶端執(zhí)行步驟300至步驟370。服務器的應用數據單元切換可以允許1:1映射(一個第一客戶端對一個第二客戶端)、1:n映射(一個第一客戶端對所有第二客戶端)、n:1映射(所有第一客戶端對一個第二客戶端)以及n:n映射(所有第一客戶端對所有第二客戶端)。

圖4為具有根據本發(fā)明的第二方法的示例性實施方式的步驟的流程圖4,這些步驟發(fā)生在客戶端210上。例如,由客戶端210的處理器執(zhí)行的計算機程序(諸如芯片卡應用程序(例如步驟410))和客戶端程序(例如步驟400和步驟420至步驟430)的程序指令引起客戶端210執(zhí)行流程圖的步驟。例如,客戶端程序提供用于借助由服務器200提供的應用數據單元切換訪問芯片卡的接口。例如,該接口為用于芯片卡訪問單元的虛擬設備驅動器(例如虛擬PC/SC設備驅動器)和/或編程接口(API,應用程序接口)。例如,芯片卡應用程序使用接口來借助由服務器200提供的應用數據單元切換訪問一個或多個芯片卡。

在步驟400中,客戶端210相對于服務器200認證其自身。通過示例,客戶端210登錄到服務器200,以便使用由服務器200提供的應用數據單元切換。例如,僅登錄到服務器200的客戶端可以使用應用數據單元切換。例如,客戶端210將登錄信息發(fā)送到服務器。例如,客戶端210借助網絡連接250將登錄信息發(fā)送到服務器200。

例如為客戶端210或客戶端210的操作者定制登錄信息。例如,登錄信息包括用戶名(例如電子郵件地址、客戶編號或注冊號)、密碼、身份驗證特征、生物特征和/或各個客戶端的唯一標識符(例如媒體訪問控制地址或國際移動用戶標識)。

登錄信息可以至少部分地由用戶輸入在客戶端210的輸入/輸出設備上、和/或至少部分地由客戶端210的輸入/輸出設備和/或芯片卡訪問單元讀入。例如,用戶在每種情況下可以在客戶端210處輸入用戶名和密碼作為登錄信息。例如,可以由客戶端210從安全令牌(諸如芯片卡)讀入認證特征和/或用戶的生物特征作為登錄信息。

一旦服務器對客戶端210的認證已經發(fā)生(參看步驟300),則客戶端210例如可以使用由服務器200提供的應用數據單元切換(參看步驟330),以便訪問連接到芯片卡終端220和/或計算機230的芯片卡。

當客戶端210生成用于連接到芯片卡終端220和/或計算機230的芯片卡的控制應用數據單元時,例如總是執(zhí)行隨后的可選步驟410和步驟420。作為步驟430的替選或附加,執(zhí)行如下的步驟410和步驟420。

在可選步驟410中,客戶端210生成用于連接到芯片卡終端220和/或計算機230的至少一個芯片卡的控制應用數據單元。該控制應用數據單元例如包含用于芯片卡的指令。

此外,客戶端210例如可以生成具有用于每個客戶端的唯一標識符的映射信息,意圖接收控制應用數據單元。

在可選步驟420中,客戶端210將具有生成的控制應用數據單元的數據包發(fā)送到服務器200。例如,客戶端210借助網絡連接250將具有生成的控制應用數據單元的數據包發(fā)送到服務器200。例如,客戶端210生成具有控制應用數據單元的新數據包用以發(fā)送到服務器200。例如,新生成的數據包包含作為用戶數據的控制應用數據單元。例如,新生成的數據包還包含映射信息。

當客戶端210從服務器200接收響應應用數據單元時,例如總是執(zhí)行如下步驟430。作為步驟410和步驟420的替選或附加,執(zhí)行如下的步驟430。

在可選步驟430中,客戶端210從服務器200接收具有響應應用數據單元的數據包。例如,響應應用數據單元被包含在數據包中作為用戶數據。例如,響應應用數據單元由連接到芯片卡終端220和/或計算機230的芯片卡生成。例如,客戶端210從接收的數據包提取響應應用數據單元,從而響應應用數據單元可以進一步由芯片卡應用程序來處理,該芯片卡應用程序由客戶端201的處理器執(zhí)行。

圖5為具有根據本發(fā)明的第三方法的示例性實施方式的步驟的流程圖5,這些步驟發(fā)生在芯片卡終端220或計算機230上。在下文中,僅通過示例方式,一直參考計算機230。例如,由計算機230的處理器執(zhí)行的計算機程序(諸如用于芯片卡訪問單元的設備驅動器程序)(例如步驟510、步驟530和步驟540)和代理程序(例如步驟500、步驟520和步驟550)的程序指令引起計算機230執(zhí)行流程圖5的步驟。例如,代理程序與用于芯片卡訪問單元的設備驅動器程序交互作用,以便允許借助由服務器200提供的應用數據單元切換訪問連接到計算機230的芯片卡。例如,用于芯片卡訪問單元的設備驅動器程序提供其它計算機程序,諸如具有用于借助芯片卡訪問單元訪問芯片卡的接口(例如程序接口)的代理程序。

在步驟500中,計算機230相對于服務器200認證其自身。通過示例,計算機230登錄到服務器200,以便使用由服務器200提供的應用數據單元切換。例如,僅登錄到服務器200的客戶端可以使用應用數據單元切換。例如,計算機230將登錄信息發(fā)送到服務器。例如,計算機230借助網絡連接260將登錄信息發(fā)送到服務器200。

例如為計算機230或計算機230的用戶定制登錄信息。例如,登錄信息包括用戶名(例如電子郵件地址、客戶編號或注冊號)、密碼、身份驗證特征、生物特征和/或各個客戶端的唯一標識符(例如媒體訪問控制地址或國際移動用戶標識)。

登錄信息可以至少部分地由用戶輸入在計算機230的輸入/輸出設備上、和/或至少部分地由計算機230的輸入/輸出設備和/或芯片卡訪問單元讀入。例如,用戶在每種情況下可以在計算機230上輸入用戶名和密碼作為登錄信息。例如,可以由計算機230讀入安全令牌(諸如芯片卡)的認證特征和/或用戶的生物特征作為登錄信息。

一旦已經發(fā)生由服務器對計算機230的認證(參看步驟300),則為了由服務器200提供的應用數據單元切換而登錄到服務器200的第一客戶端(例如由服務器200針對由服務器200提供的應用數據單元切換而認證的第一客戶端)例如可以使用由服務器200提供的應用數據單元切換來訪問連接到計算機230的芯片卡。

在可選步驟510中,計算機230連接到芯片卡。例如也可以在步驟500之前執(zhí)行可選步驟510,例如當為了相對于服務器200認證計算機230而讀入存儲在芯片卡上的認證特征作為登錄信息時。

計算機230與芯片卡的連接例如意圖被理解為建立從計算機230到芯片卡的邏輯連接,可以借助該邏輯連接發(fā)送且接收數據和信息(例如以應用數據單元的形式)。邏輯連接例如通過通信參數的協(xié)商和/或發(fā)送且接收數據和/或信息來建立。例如,計算機230通過與芯片卡協(xié)商通信參數和/或訪問芯片卡而連接到芯片卡。例如,只要芯片卡位于計算機230的芯片卡訪問單元中且計算機230可以訪問芯片卡,則計算機230就連接到芯片卡。

計算機230到芯片卡的連接可以為無線的或有線的。優(yōu)選地,計算機230直接連接到芯片卡。

只要計算機230連接到芯片卡,則計算機230例如生成可選對應的狀態(tài)信息并將該狀態(tài)信息(例如借助網絡連接260)發(fā)送到服務器200。

當計算機230從服務器200接收具有控制應用數據單元的數據包時,例如總是執(zhí)行隨后的可選步驟520和步驟530。作為步驟540和步驟550的替選或附加,執(zhí)行如下的步驟520和步驟530。

在可選步驟520中,計算機230從服務器200接收具有控制應用數據單元的數據包。例如,計算機230借助網絡連接260從服務器200接收具有控制應用數據單元的數據包。例如,控制應用數據單元由客戶端210生成。例如,數據包包含作為用戶數據的控制應用數據單元。

在可選步驟530中,計算機230將接收的數據包所包含的控制應用數據單元發(fā)送到連接到計算機230的芯片卡。例如,計算機230從接收的數據包提取控制應用數據單元。例如,計算機230借助邏輯連接將接收的數據包所包含的控制應用數據單元發(fā)送到連接到計算機230的芯片卡。

當計算機230從連接到計算機230的芯片卡接收響應應用數據單元時,例如總是執(zhí)行隨后的可選步驟540和步驟550。作為步驟520和步驟530的替選或附加,執(zhí)行如下的步驟540和步驟550。

在可選步驟540中,計算機230從與芯片卡終端連接的芯片卡接收響應應用數據單元。例如,計算機230借助邏輯連接從與芯片卡終端連接的芯片卡接收響應應用數據單元。例如,響應應用數據單元由芯片卡生成。

此外,客戶端210例如可以生成具有用于每個客戶端的唯一標識符的映射信息,意圖接收響應應用數據單元。

在可選步驟550中,計算機230將具有響應應用數據單元的數據包發(fā)送到服務器200。例如,計算機230借助網絡連接260將具有響應應用數據單元的數據包發(fā)送到服務器200。例如,計算機230生成具有響應應用數據單元的數據包用以發(fā)送到服務器200。例如,新生成的數據包還包含映射信息。

圖6示出根據本發(fā)明的系統(tǒng)的示例性軟件架構的框圖。圖6僅以示例方式示出服務器600(作為根據本發(fā)明的服務器)、目錄服務服務器610、客戶端620和代理630。

代理630例如為由根據本發(fā)明的第二客戶端630’的處理器執(zhí)行的代理程序。代理630例如為與用于芯片卡的設備驅動器(例如用于芯片卡訪問單元的設備驅動器和/或PC/SC設備驅動器)以及與服務器600通信的應用程序,該設備驅動器為客戶端的操作系統(tǒng)或操作系統(tǒng)層的一部分。例如,代理630從服務器600接收控制應用數據單元(例如命令-APDU)并將其轉發(fā)到連接到客戶端630’的芯片卡640(例如智能卡)。將響應應用數據單元(例如響應-APDU)從芯片卡640反饋給服務器600。

客戶端620例如為由根據本發(fā)明的第一客戶端620’的處理器執(zhí)行的客戶端程序??蛻舳?20例如為借助網絡連接與服務器600通信的應用程序??蛻舳?20例如將控制應用數據單元(例如命令-APDU)發(fā)送到服務器600以及從服務器600接收響應應用數據單元(例如響應-APDU)。

服務器600例如管理代理(諸如代理630)與客戶端(諸如客戶端620)之間的連接。服務器600例如將由客戶端620發(fā)送的應用數據單元(例如命令-APDU)轉發(fā)到代理630以及從代理630接收作為響應的應用數據單元(例如響應-APDU)并將其反饋給客戶端620。

采用該方式,客戶端620將控制應用數據單元發(fā)送到芯片卡600并從該芯片卡接收響應,不管芯片卡600在哪里以及主芯片卡與其如何連接。因此在客戶端620和芯片卡600之間建立虛擬連接660。

客戶端620因此可以遠程地修改芯片卡640的內容以及遠程地使用芯片卡640的密碼功能。相比于其它解決方案的優(yōu)勢尤其在于,僅借助網絡(或虛擬連接660)交換應用數據單元。

為了保護借助網絡或虛擬連接交換的應用數據單元,例如可以使用安全通訊協(xié)議。密鑰(例如,用于芯片卡640的芯片卡管理的私人密鑰、用戶名、密碼、個人標識碼等)不離開客戶端620。敏感信息因此可以被存儲在客戶端620的受保護環(huán)境中。采用該方式,由客戶端620進行的安全芯片管理可以發(fā)生,不管代理630的環(huán)境如何。

每個客戶端和每個代理例如必須在其可通信之前相對于服務器600認證其自身。這確保每個客戶端和每個代理的身份。

服務器600還可以管理客戶端和代理之間的連接(會話管理)。這例如意味著,僅授權的客戶端可以訪問特定代理。例如,支持1:n、n:1或n:n的客戶端:代理映射。例如,芯片卡640可以與各種客戶端620一起使用(例如由各種芯片卡發(fā)行方的客戶端620使用)和/或客戶端620可以由各種芯片卡640使用。

由服務器600進行的身份管理和會話管理例如均通過使用訪問條件管理接口650來實現,該訪問條件管理接口650與目錄服務610連接。為了與客戶端620連接,服務器600例如具有客戶端接口670。為了與代理630連接,服務器600例如具有代理接口680。例如,訪問條件管理接口650、客戶端接口670和代理接口680由被服務器600的處理器執(zhí)行的服務器程序來提供。

在一些情況下,客戶端620和代理630之間的直接連接例如由于網絡配置或防火墻而被禁止。在這類情況下,然而可以借助虛擬連接660傳輸應用數據單元,這是因為客戶端620和代理630二者均為服務器600的客戶端。假設客戶端620和代理630二者均能夠與服務器600連接,則可以借助虛擬連接在客戶端620和代理630之間傳輸應用數據單元。

各個流程圖中的各個方法步驟的順序不是強制性的,以及除非另有說明,否則方法步驟的替選順序是可想到的??梢砸愿鞣N方式實現方法步驟,因此可想到將采用軟件(通過程序指令)、硬件或二者組合的實現方式用于實現所述方法步驟。

在本說明書中描述的本發(fā)明的示例性實施方式也應以所有的彼此組合來公開。而且特別地,實施方式所包括的特征的描述(除非明確相反指示)在此不應被理解成,該特征對于該實施方式的功能來說是不可或缺的或必不可少的。在本說明書中描述的在各個流程圖中的方法步驟的順序不是必需的,且方法步驟的替選順序是可想到的??梢砸愿鞣N方式實現方法步驟,因此可想到將采用軟件(通過程序指令)、硬件或二者組合的實現方式用于實現方法步驟。在權利要求中使用的諸如“包括”、“具有”、“包含”、“含有”等術語不排除其它元件或步驟。措辭“至少部分地”覆蓋“部分地”的情況和“完全地”的情況二者。措辭“和/或”覆蓋“和”的情況和“或”的情況二者。復數個單元、人等應當結合本說明書理解成多個單元、人等。不定冠詞的使用不應當排除復數。單個裝置可以執(zhí)行在權利要求中提及的多個單元或設備的功能。在權利要求中提及的附圖標記不應當被視為對所使用的部件和步驟的限制。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
法库县| 江陵县| 平度市| 静宁县| 长顺县| 呼伦贝尔市| 蕉岭县| 汉川市| 湘乡市| 武安市| 班戈县| 祁阳县| 奈曼旗| 宿迁市| 阜阳市| 建昌县| 横峰县| 内黄县| 汝阳县| 滦平县| 武冈市| 易门县| 达尔| 平塘县| 三穗县| 葫芦岛市| 汾西县| 五寨县| 德令哈市| 德阳市| 竹山县| 宣恩县| 柘城县| 泰顺县| 基隆市| 达孜县| 凌海市| 海原县| 岑巩县| 固始县| 淮滨县|