本發明涉及一種電子技術領域,尤其涉及一種多應用智能卡交易方法及系統。
背景技術:
現有的智能卡中可以通過該下載、安裝多個應用程序,以實現在一張卡片上實現不同的功能,這種智能卡可以稱為多應用智能卡。然而,在現有技術中,多應用智能卡需要借助讀卡器才能完成應用的選擇:多應用智能卡需要將卡中所有應用組成的應用列表發送至讀卡器;讀卡器接收應用列表,將應用列表中的所有應用顯示在屏幕上,由用戶完成應用選擇,并將用戶選擇的應用通知給多應用讀卡器。現有的多應用智能卡的應用選擇需要借助外部的讀卡器,給用戶帶來了不便,而且多應用智能卡與讀卡器需要進行多次交互,才能完成應用選擇,增加了交易流程的復雜性,降低了交易操作的效率。
技術實現要素:
本發明旨在解決上述問題之一。
本發明的主要目的在于提供一種多應用智能卡交易方法;
本發明的另一目的在于提供一種多應用智能卡交易系統。
為達到上述目的,本發明的技術方案具體是這樣實現的:
本發明一方面提供了一種多應用智能卡交易方法,包括:多應用智能卡接收用戶通過所述多應用智能卡的按鍵輸入的第一應用激活指令,第一應用激活指令至少包括激活第一應用的指示信息,激活第一應用;多應用智能卡接收到第一終端通過多應用智能卡的無線通信接口輸入的尋卡指令后,向第一終端返回尋卡響應,并與第一終端建立通信連接;第一終端接收到通過所述無線通信接收輸入的尋卡響應后,向多應用智能卡發送應用獲取指令;多應用智能卡接收應用獲取指令,向第一終端返回應用獲取響應,應用獲取響應中至少攜帶有當前處于激活狀態的應用的標識信息;第一終端接收應用獲取響應,根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求,交易請求至少包括交易信息;多應用智能卡接收到通過所述無線通信接收輸入的交易請求后,提示交易信息,并在接收到確認交易信息正確的交易確認指令后,將交易確認響應發送至第一終端;第一終端接收交易確認響應后,進行后續的交易操作。
可選的,第一終端根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求,包括:第一終端從應用獲取響應中獲取當前處于激活狀態的應用的標識信息,并根據當前處于激活狀態的應用的標識信息判斷當前處于激活狀態的應用是否為第一終端支持的應用,如果是,則根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求。
可選的,在多應用智能卡激活第一應用之后,在向第一終端返回應用獲取響應之前,方法還包括:多應用智能卡接收到用戶通過所述多應用智能卡的按鍵輸入的第二應用激活指令,第二應用激活指令至少包括激活第二應用的指示信息;對第一應用進行去激活操作,并激活第二應用。
可選的,交易請求中至少攜帶有當前處于激活狀態的應用的標識信息;在多應用智能卡接收交易請求之后,在將交易確認響應發送至第一終端之前,方法還包括:判斷交易請求中攜帶的當前處于激活狀態的應用的標識信息與多應用智能卡當前激活的應用的標識信息是否匹配,如果是,則執行將交易確認響應發送至第一終端的操作。
可選的,方法還包括:多應用智能卡向第二終端發送下載第三應用的應用下載請求;第二終端接收應用下載請求,將應用下載請求發送至服務器;服務器響應應用下載請求,將第三應用對應的應用加載信息發送至第二終端;第二終端接收應用加載信息,將應用加載信息發送至多應用智能卡;多應用智能卡接收應用加載信息,加載第三應用。
本發明另一方面提供了一種多應用智能卡交易系統,包括:多應用智能卡和第一終端;多應用智能卡,用于接收用戶通過所述多應用智能卡的按鍵輸入的第一應用激活指令,第一應用激活指令至少包括激活第一應用的指示信息,激活第一應用;多應用智能卡,還用于接收第一終端通過多應用智能卡的無線通信接口輸入的尋卡指令后,向第一終端返回尋卡響應,并與第一終端建立通信連接;第一終端,用于接收尋卡響應,向多應用智能卡發送應用獲取指令;多應用智能卡,還用于接收到通過所述無線通信接收輸入的應用獲取指令,向第一終端返回應用獲取響應,應用獲取響應中至少攜帶有當前處于激活狀態的應用的標識信息;第一終端,還用于接收應用獲取響應,根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求,交易請求至少包括交易信息;多應用智能卡,還用于接收到通過所述無線通信接收輸入的交易請求,提示交易信息,并在接收到確認交易信息正確的交易確認指令后,將交易確認響應發送至第一終端;第一終端,還用于接收交易確認響應后,進行后續的交易操作。
可選的,第一終端,還用于根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求,包括:第一終端,還用于從應用獲取響應中獲取當前處于激活狀態的應用的標識信息,并根據當前處于激活狀態的應用的標識信息判斷當前處于激活狀態的應用是否為第一終端支持的應用,如果是,則根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求。
可選的,多應用智能卡,還用于在激活第一應用之后,在向第一終端返回應用獲取響應之前,接收到用戶通過所述多應用智能卡的按鍵輸入的第二應用激活指令,第二應用激活指令至少包括激活第二應用的指示信息;對第一應用進行去激活操作,并激活第二應用。
可選的,交易請求中至少攜帶有當前處于激活狀態的應用的標識信息;多應用智能卡,還用于在接收交易請求之后,在將交易確認響應發送至第一終端之前,判斷交易請求中攜帶的當前處于激活狀態的應用的標識信息與多應用智能卡當前激活的應用的標識信息是否匹配,如果是,則執行將交易確認響應發送至第一終端的操作。
可選的,系統還包括:第二終端和服務器;多應用智能卡,還用于向第二終端發送下載第三應用的應用下載請求;第二終端,用于接收應用下載請求,將應用下載請求發送至服務器;服務器,用于響應應用下載請求,將第三應用對應的應用加載信息發送至第二終端;第二終端,還用于接收應用加載信息,將應用加載信息發送至多應用智能卡;多應用智能卡,還用于接收應用加載信息,加載第三應用。
由上述本發明提供的技術方案可以看出,本發明提供了一種多應用智能卡交易方法,多應用智能卡無需借助外部的第一終端即可實現應用的選擇、激活,通過尋卡過程與第一終端建立通信連接,并基于所激活的應用與第一終端進行交易,降低了交易流程的復雜性,提高了交易操作的效率。
附圖說明
為了更清楚地說明本發明實施例的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域的普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他附圖。
圖1為本發明實施例1提供的多應用智能卡交易方法的流程圖;
圖2為本發明實施例2提供的多應用智能卡交易系統的一種結構示意圖;
圖3為本實施例2提供的多應用智能卡交易系統的另一種結構示意圖。
具體實施方式
下面結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明的保護范圍。
在本發明的描述中,需要理解的是,術語“中心”、“縱向”、“橫向”、“上”、“下”、“前”、“后”、“左”、“右”、“豎直”、“水平”、“頂”、“底”、“內”、“外”等指示的方位或位置關系為基于附圖所示的方位或位置關系,僅是為了便于描述本發明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構造和操作,因此不能理解為對本發明的限制。此外,術語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對重要性或數量或位置。
在本發明的描述中,需要說明的是,除非另有明確的規定和限定,術語“安裝”、“相連”、“連接”應做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個元件內部的連通。對于本領域的普通技術人員而言,可以具體情況理解上述術語在本發明中的具體含義。
下面將結合附圖對本發明實施例作進一步地詳細描述。
實施例1
本實施例提供了一種多應用智能卡交易方法,如圖1所示,本實施例提供的多應用智能卡交易方法包括以下步驟(s101-s107):
s101,多應用智能卡接收到用戶通過多應用智能卡的按鍵輸入的第一應用激活指令,第一應用激活指令至少包括激活第一應用的指示信息,激活第一應用。
本實施例中,多應用智能卡接收到一個操作指令,可以判斷該操作指令是由按鍵輸入還是由無線通信接口輸入,在判斷是由按鍵輸入的操作指令后,若解析獲得該操作指令中攜帶有激活第一應用的指示信息,則可以識別出該操作指令為用戶通過多應用智能卡的按鍵輸入的第一應用激活指令,其中,該第一應用為用戶當前選擇的應用。
在本實施例中,多應用智能卡是指可以通過下載、安裝應用,實現多種不同功能的智能卡。例如,可以在多應用智能卡中安裝實現金融、社保、公交功能的應用,使得多應用智能卡可以作為金融卡、社保卡、公交卡使用,也可以在多應用智能卡中安裝實現其他功能的應用程序,使得多應用智能卡可以作為實現其他功能的卡使用,在本實施例中不對多應用智能卡中的應用的功能進行具體限定。在本實施例中,多應用智能卡的類型可以為java智能卡、ic卡、cpu卡等,在本實施例中不作具體限定。
在實際使用過程中,多應用智能卡在使用完成后可以關機以節約智能卡的電量,在需要再次使用多應用智能卡時,需要先開機才能使用,因此,作為本發明實施例的一個可選實施方式,在步驟s101之前,本實施例提供的多應用智能卡交易方法還可以包括以下步驟:s100,多應用智能卡接收開機指令,上電完成系統的初始化,激活系統應用或者默認應用或者上一次關機前最后激活的應用。通過該可選實施方式,保證多應用智能卡上電初始化后有一個處于激活狀態的應用。
在具體實施過程中,如果此次開機是多應用智能卡發卡后的第一次開機,此時多應用智能卡內只安裝有系統應用,多應用智能卡上電完成系統初始化后,只能激活系統應用,其中,系統應用是多應用智能卡中安裝的用于實現應用程序的下載、管理等功能的應用。默認應用指的是多應用智能卡開機后默認處于激活狀態的應用,用戶可以將最常用的應用設置為默認應用,使得開機后最常用的應用即處于激活狀態,減少用戶在使用多應用智能卡的過程中進行應用選擇的次數。在具體實施過程中,用戶可以根據需要設置上電初始化后激活系統應用或者默認應用或者上一次關機前最后激活的應用中的何種應用。
在具體實施過程中,如果在多應用智能卡接收第一應用激活指令之前,多應用智能卡為默認應用激活狀態或者系統應用激活狀態或者上一次關機前最后激活的應用激活狀態,則在識別第一應用激活指令為應用選擇指令(即該指令包括激活第一應用的指示信息)之后,在激活第一應用之前,本實施例提供的方法還可以包括:對默認應用或者系統應用或者上一次關機前最后激活的應用進行去激活操作。去激活指的是將應用由激活狀態轉變為未激活狀態。對當前處于激活狀態的應用進行去激活操作后再激活用戶選擇的第一應用,避免不同的多個應用同時處于激活狀態造成多應用智能卡響應失敗或錯誤。
為了防止多應用智能卡被非法用戶使用,在步驟s100中,作為本發明實施例的一個可選實施方式,在多應用智能卡接收開機指令之后,在上電完成系統的初始化之前,可以先對用戶進行身份認證。在具體實施過程中,多應用智能卡接收開機指令后,可以先顯示身份認證界面,提示用戶進行身份認證,只有用戶的身份認證通過,多應用智能卡才能上電完成系統的初始化,防止多應用智能卡被非法用戶使用,造成用戶的損失。多應用智能卡進行身份認證的具體方式可以為驗證用戶輸入的pin碼是否正確,或者驗證用戶的生物特征信息(例如,指紋、脈搏等)是否匹配。如果輸入的pin碼正確或者生物特征信息匹配,則身份認證通過,否則身份認證不通過。
在本實施例中,第一應用可以為多應用智能卡中安裝的多個應用中的至少一個應用,例如,多應用智能卡中安裝有公交卡應用、身份證應用、銀行卡應用、門禁卡應用4個應用,第一應用激活指令可以包括激活公交卡應用的指示信息以便激活公交卡應用。由此,可以通過在第一應用激活指令中攜帶待激活的第一應用的標識信息以指示多應用智能卡激活該標識信息指示的應用。
在具體實施過程中,當本實施例提供的多應用智能卡為java智能卡時,可以由java虛擬機(javavirtualmachine,簡稱jvm)判斷接收到的操作指令是通過何種接口接收到的,并識別指令為何種指令,例如,可以識別出操作指令是從智能卡的按鍵的輸入接口或者是從無線通信接口接收到的,本實施例中至少包括按鍵的輸入接口和無線通信接口,其中,當多應用智能卡檢測到操作指令是從按鍵輸入的時,可以識別該操作指令為第一應用激活指令(以及下文中提到的第二應用激活指令、第三應用激活指令,即均由按鍵輸入的用于激活相應應用的操作指令)。在本實施例中,多應用智能卡的無線通信接口可以為wifi接口、藍牙接口、近場通信(nearfieldcommunication,簡稱nfc)接口等,在本實施例中不作具體限定。
在步驟s101中,在激活第一應用后,作為本發明實施例的一種可選實施方式,本實施例提供的方法還可以包括:在顯示屏上顯示多應用智能卡的應用列表,該應用列表包括多應用智能卡安裝的一個或多個應用的表項,該表項的內容包括應用標識、應用名稱、應用狀態等應用描述信息,并將當前用戶選擇的第一應用的表項與未選擇的應用的表項區別顯示(例如,將用戶選擇的第一應用的表項加粗,或者加陰影顯示等),方便用戶獲知激活的第一應用具體為何種應用以及應用狀態等信息。
s102,多應用智能卡接收到第一終端通過多應用智能卡的無線通信接口輸入的尋卡指令后,向第一終端返回尋卡響應,并與第一終端建立通信連接。
在步驟s102中,第一終端可以為具有讀卡功能的設備(例如,讀卡器),用于讀取多應用智能卡。第一終端廣播尋卡指令,以便搜索到卡片入場,在多應用智能卡進入第一終端的電磁場后,便可以接收到該第一終端的尋卡指令,并向第一終端返回尋卡響應,以便與第一終端建立通信連接。多應用智能卡接收到一個操作指令,檢測到該操作指令是從無線通信接口接收到的,便可以確定該操作指令并非第一應用激活指令(由按鍵輸入的指令),而是從第一終端即讀卡器發出的,并根據該操作指令中攜帶的標識信息、操作指令的格式、操作指令的長度等指令描述信息識別出操作指令的類型(例如,尋卡指令,以及后續步驟中的應用獲取指令、交易請求)。由此,在操作指令的指令描述信息為尋卡指令的描述信息時,可以識別出該操作指令為第一終端通過所述多應用智能卡的無線通信接口輸入的尋卡指令。在具體實施過程中,在第一終端為支持nfc通信的終端的情況下,第一終端通過發送尋卡指令尋找位于自身電磁場內的支持nfc通信的多應用智能卡,如果該多應用智能卡的無線通信接口支持nfc通信,多應用智能卡便可以接收到第一終端發送的尋卡指令,然后該多應用智能卡向第一終端返回一個尋卡響應,以指示第一終端在其電磁場內存在可以支持nfc通信的智能卡,并與第一終端建立無線通信連接,如果該多應用智能卡的無線通信接口不支持nfc通信,則不向第一終端返回尋卡響應。在第一終端為支持wifi或者藍牙通信的終端的情況下,尋卡過程可以參照上述舉例的尋卡過程,在此不再一一贅述。
在本實施例中,步驟s101與步驟s102的執行順序不分先后。在具體實施過程中,可以先執行步驟s101,再執行步驟s102,即先在多應用智能卡上完成應用選擇,在多應用智能卡激活第一應用后才進入第一終端的磁場內,第一終端再進行尋卡操作與多應用智能卡建立通信連接;也可以先執行步驟s102,再執行步驟s101,即多應用智能卡先進入第一終端的磁場,第一終端進行尋卡操作與多應用智能卡建立通信連接后,再在多應用智能卡上完成應用選擇。
至此,多應用智能卡在與第一終端進行與交易相關的通信交互之前,便已經完成應用的激活操作,以便于在第一終端向多應用智能卡發送應用獲取指令后,多應用智能卡可以直接向第一終端返回當前激活的應用的相關信息,即一次交互第一終端便可以完成應用選擇,而無需像現有技術那樣,多應用智能卡在收到第一終端的應用獲取指令后,向第一終端返回多應用智能卡的全部應用的信息,提示用戶在第一終端上操作選擇應用,第一終端再將用戶選擇的應用返回至多應用智能卡,指示多應用智能卡激活該用戶選擇的應用,即多應用智能卡與第一終端需要進行多次交互,才能完成應用選擇。由此可見,本實施例中提供的方法可以減少多應用智能卡與第一終端的交互次數,并縮短交易流程,提高了交易操作的效率。
s103,第一終端接收尋卡響應,向多應用智能卡發送應用獲取指令。
在本實施例中,應用獲取指令用來指示多應用智能卡向第一終端返回當前處于激活狀態的應用的標識信息。
s104,多應用智能卡接收到通過無線通信接收輸入的應用獲取指令后,向第一終端返回應用獲取響應,應用獲取響應中至少攜帶有當前處于激活狀態的應用的標識信息。
與步驟s102中對操作指令的識別類似的,在本步驟中,根據操作指令的指令描述信息,可以識別出通過無線通信接收到的操作指令為應用獲取指令。多應用智能卡接收應用獲取指令后,向第一終端返回應用獲取響應,應用獲取響應中至少攜帶有當前處于激活狀態的應用的標識信息,由此,第一終端可以獲取多應用智能卡中當前處于激活狀態的應用的標識信息,并向多應用智能卡發起針對當前處于激活狀態的應用的交易流程。
在本實施例中,在使用多應用智能卡進行交易的過程中,存在以下情況,例如,用戶激活多應用智能卡的第一應用(比如建設銀行應用),再將多應用智能卡靠近讀卡器如pos后,臨時不想使用第一應用,切換到了第二應用(第一應用以外的其他應用,如工商銀行應用),針對這種情況,作為本發明實施例的一個可選實施方式,在多應用智能卡激活第一應用之后,在向第一終端返回應用獲取響應之前,本實施例提供的方法還可以包括:多應用智能卡接收到用戶通過所述多應用智能卡的按鍵輸入的第二應用激活指令,該第二應用激活指令至少包括激活第二應用的指示信息,在識別出第二應用激活指令為用戶通過按鍵輸入的指令后,對第一應用進行去激活操作,并激活第二應用。通過該可選實施方式,可以在多應用智能卡上實現不同應用之間的切換,并避免不同的應用同時激活而產生相互干擾。
在本實施例中,第二應用可以是多應用智能卡中安裝的多個應用中的至少一個應用,第二應用可以是不同于第一應用的應用,例如,第二應用激活指令可以包括激活身份證應用的指示信息以便激活身份證應用。由此,可以通過在第二應用激活指令中攜帶待激活的第二應用的標識信息以指示多應用智能卡激活該第二應用。為了避免不同應用之間相互干擾,多應用智能卡中同一時間只能有一個應用處于激活狀態,因此,多應用智能卡在識別第二應用激活指令為用戶通過按鍵輸入的指令之后,需要先對當前處于激活狀態的第一應用進行去激活操作,再激活第二應用。
s105,第一終端接收應用獲取響應,根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求,交易請求至少包括交易信息。
在本實施例中,交易信息可以包括:交易類型、交易金額、付款方賬戶信息、收款方賬戶信息等,在本實施例中不作具體限定。
作為本發明實施例的一個可選實施方式,第一終端根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求,包括:第一終端從應用獲取響應中獲取當前處于激活狀態的應用的標識信息,并根據當前處于激活狀態的應用的標識信息判斷當前處于激活狀態的應用是否為第一終端支持的應用,如果是,則根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求。第一終端通過判斷多應用智能卡中當前處于激活狀態的應用是否為第一終端支持的應用,進而決定是否進行交易,只有在支持的情況下,才進行交易,如果不支持,則不會執行后續的交易流程(即不會執行步驟s106-s107),因此能夠及時地終止不支持的交易,節約后續第一終端與多應用智能卡的交互操作,節省第一終端和多應用智能卡的資源開銷。
s106,多應用智能卡接收交易請求,提示交易信息,并在接收到確認交易信息正確的交易確認指令后,將交易確認響應發送至第一終端。
與步驟s102中對操作指令的識別類似的,在本步驟中,根據操作指令的指令描述信息,可以識別出通過無線通信接收到的到操作指令為交易請求。在本步驟中,多應用智能卡接收交易請求后,可以通過顯示屏顯示方式或者語音播報方式提示交易信息,用戶確認交易信息正確后,可以通過按鍵輸入交易確認指令,通過對交易信息進行確認,保證用戶交易的安全。具體的,多應用智能卡提示交易信息后,檢測是否有按鍵按下,如果有,則識別被按下的按鍵的鍵值,根據獲取的鍵值確定是否是交易確認指令,如果是,則認為接收到了用戶輸入的交易確認指令。此外,為了進一步提高交易的安全性,防止多應用智能卡在開機后丟失造成損失,輸入交易確認指令的具體方式還可以為用戶向多應用智能卡輸入交易pin碼或者提供用戶的指紋,只有用戶輸入的交易pin碼或者用戶的指紋認證通過,表明輸入交易確認指令的用戶身份合法后,多應用智能卡才能將交易確認響應發送至第一終端。
s107,第一終端接收交易確認響應后,進行后續的交易操作。
在本實施例中,交易確認響應中可以至少包括對交易信息進行確認的相關信息。第一終端接收交易確認響應后,后續的交易操作可以包括:第一終端將交易信息進行重組后發送至后臺服務器,后臺服務器根據交易信息完成交易,并將交易結果發送至第一終端,第一終端將交易結果發送至多應用智能卡。
通過本實施例提供的多應用智能卡交易方法,多應用智能卡無需借助外部的第一終端即可實現應用的選擇、激活,通過尋卡過程與第一終端建立通信連接,并基于所激活的應用與第一終端進行交易,降低了交易流程的復雜性,提高了交易操作的效率。
在本實施例中,如果黑客對智能卡進行攻擊,偽造交易請求并將該交易請求發送至智能卡,智能卡將響應交易請求并完成交易,因此為了防止非法應用的交易,作為本發明實施例的一個可選實施方式,交易請求中至少攜帶有當前處于激活狀態的應用的標識信息;在多應用智能卡接收交易請求之后,在將交易確認響應發送至第一終端之前,本實施例提供的方法還包括:判斷交易請求中攜帶的當前處于激活狀態的應用的標識信息與多應用智能卡當前激活的應用的標識信息是否匹配,如果是,則執行將交易確認響應發送至第一終端的操作。通過判斷交易請求中攜帶的當前處于激活狀態的應用的標識信息與多應用智能卡當前激活的應用的標識信息是否匹配,能夠判斷多應用智能卡中發起交易請求的應用與當前執行交易的應用是否相同,防止黑客偽造應用激活的標識攻擊智能卡,阻止非法應用的交易,保護用戶的賬戶安全。
在該可選實施方式中,如果交易請求中攜帶的當前處于激活狀態的應用的標識信息與多應用智能卡當前激活的應用的標識信息不匹配,可以終止交易,多應用智能卡還可以向第一終端返回交易失敗響應,所述第一終端接收到所述交易停止響應后,停止后續的交易操作。
作為本發明實施例的一個可選實施方式,在本實施例提供的多應用智能卡交易方法的任意步驟中,均可以進行應用程序的下載安裝,應用程序的下載安裝包括:多應用智能卡向第二終端發送下載第三應用的應用下載請求;第二終端接收應用下載請求,將應用下載請求發送至服務器;服務器響應應用下載請求,將第三應用對應的應用加載信息發送至第二終端;第二終端接收應用加載信息,將應用加載信息發送至多應用智能卡;多應用智能卡接收應用加載信息,加載第三應用。通過該可選實施方式,實現多應用智能卡的應用下載、安裝。
在該可選實施方式中,第二終端可以是與第一終端不同的終端,也可以與第一終端為同一終端。具體的,第二終端可以為移動終端、pc機、平板電腦、交易終端等。應用下載請求中可以至少包括多應用智能卡請求下載的第三應用的標識信息。服務器接收第二終端轉發的應用下載請求后,可以響應應用下載請求,將應用下載請求對應的應用加載信息發送至第二終端,其中,應用加載信息可以包括應用程序代碼。
以多應用智能卡為java卡為例,應用下載安裝過程如下,服務器接收應用下載請求后,根據應用下載請求中攜帶的多應用智能卡請求下載的應用的標識信息獲取應用的java代碼,將java代碼轉換為class文件,進一步將class文件轉換為cap文件,并將cap文件發送至第二終端,第二終端將cap文件轉換為應用程序協議數據單元apdu文件,并將apdu文件轉發至多應用智能卡,多應用智能卡根據apdu文件安裝應用程序。
在本實施例中,在使用多應用智能卡進行交易的過程中,存在以下情況,例如,用戶激活多應用智能卡的第一應用(比如建設銀行應用)在pos機上完成第一筆交易(包括步驟s101至步驟s107)之后,需要針對處于激活狀態的第四應用(第一應用以外的其他應用,如農業銀行應用)進行第二筆交易,針對這種情況,作為本發明實施例的一個可選實施方式,在第一終端完成第一筆交易的后續的交易操作之后,本實施例提供的方法還可以包括:多應用智能卡接收到用戶通過所述多應用智能卡的按鍵輸入的第三應用激活指令,第三應用激活指令至少包括激活第四應用的指示信息,對多應用智能卡中當前處于激活狀態的應用進行去激活操作,并激活第四應用;第一終端向多應用智能卡發送應用獲取指令;多應用智能卡接收到通過無線通信接收輸入的應用獲取指令,向第一終端返回應用獲取響應,應用獲取響應中至少攜帶有當前處于激活狀態的應用的標識信息;第一終端接收應用獲取響應,根據當前處于激活狀態的應用的標識信息向多應用智能卡發起針對當前處于激活狀態的應用的交易請求,交易請求至少包括交易信息;多應用智能卡接收到通過無線通信接收輸入的交易請求,提示交易信息,并在接收到確認交易信息正確的交易確認指令后,將交易確認響應發送至第一終端;第一終端接收交易確認響應后,進行后續的交易操作。通過該可選實施方式,可以在第一筆交易完成之后再進行應用切換,并基于切換后激活的第四應用完成第二筆交易。多應用智能卡進行第二筆交易的詳細過程可以參見多應用智能卡進行第一筆交易的過程,在此不再贅述。
實施例2
本實施例提供了一種多應用智能卡交易系統,如圖2所述,該交易系統包括:多應用智能卡21和第一終端22。
多應用智能卡21,用于接收到用戶通過所述多應用智能卡的按鍵輸入的第一應用激活指令,第一應用激活指令至少包括激活第一應用的指示信息,激活第一應用;多應用智能卡21,還用于接收到第一終端通過所述多應用智能卡的無線通信接口輸入的尋卡指令,向第一終端22返回尋卡響應,并與第一終端22建立通信連接;第一終端22,用于接收尋卡響應,向多應用智能卡21發送應用獲取指令;多應用智能卡21,還用于接收到通過無線通信接收輸入的應用獲取指令,向第一終端22返回應用獲取響應,應用獲取響應中至少攜帶有當前處于激活狀態的應用的標識信息;第一終端22,還用于接收應用獲取響應,根據當前處于激活狀態的應用的標識信息向多應用智能卡21發起針對當前處于激活狀態的應用的交易請求,交易請求至少包括交易信息;多應用智能卡21,還用于接收到通過無線通信接收輸入的交易請求,提示交易信息,并在接收到確認交易信息正確的交易確認指令后,將交易確認響應發送至第一終端22;第一終端22,還用于接收交易確認響應后,進行后續的交易操作。
通過本實施例提供的多應用智能卡交易系統,多應用智能卡21無需借助外部的第一終端22即可實現應用的選擇、激活,通過尋卡過程與第一終端22建立通信連接,并基于所激活的應用與第一終端22進行交易,降低了交易的復雜性,提高了交易操作的效率。
在本實施例中,本實施例中,多應用智能卡接收到一個操作指令,可以判斷該操作指令是由按鍵輸入還是由無線通信接口輸入,在判斷是由按鍵輸入的操作指令后,若解析獲得該操作指令中攜帶有激活第一應用的指示信息,則可以識別出該操作指令為用戶通過多應用智能卡的按鍵輸入的第一應用激活指令,其中,該第一應用為用戶當前選擇的應用。
多應用智能卡21是指可以通過下載、安裝應用,實現多種不同功能的智能卡。第一應用可以為多應用智能卡21中安裝的多個應用中的至少一個應用,例如,多應用智能卡21中安裝有公交卡應用、身份證應用、銀行卡應用、門禁卡應用4個應用,第一應用激活指令可以包括激活公交卡應用的指示信息以便激活公交卡應用。由此,可以通過在第一應用激活指令中攜帶待激活的第一應用的標識信息以指示多應用智能卡21激活該標識信息指示的應用。在具體實施過程中,當本實施例提供的多應用智能卡21為java智能卡時,可以由java虛擬機(javavirtualmachine,簡稱jvm)識別接收到的操作指令是通過何種接口接收到的,并識別操作指令為何種指令,例如,可以識別出操作指令是從多應用智能卡21的按鍵的輸入接口或者是從無線通信接口接收到的,本實施例中多應用智能卡21至少包括按鍵的輸入接口和無線通信接口,其中,當多應用智能卡21檢測到操作指令是從按鍵輸入的時,可以識別該指令為第一應用激活指令(以及下文中提到的第二應用激活指令、第三應用激活指令,即均由按鍵輸入的用于激活相應應用的指令)。在本實施例中,多應用智能卡21的無線通信接口可以為wifi接口、藍牙接口、近場通信(nearfieldcommunication,簡稱nfc)接口等,在本實施例中不作具體限定。
在實際使用過程中,多應用智能卡21在使用完成后可以關機以節約電量,在再次使用多應用智能卡21時,需要先開機才能使用,因此,作為本發明實施例的一個可選實施方式,多應用智能卡21,還用于在接收到第一應用激活指令之前,接收開機指令,上電完成系統的初始化,激活多應用智能卡21的系統應用或者默認應用或者上一次關機前最后激活的應用。通過該可選實施方式,能夠保證多應用智能卡21上電初始化后有一個處于激活狀態的應用。
在具體實施過程中,如果此次開機是多應用智能卡21發卡后的第一次開機,此時多應用智能卡21內只安裝有系統應用,多應用智能卡21,用于上電完成系統初始化后,激活系統應用,其中,系統應用是多應用智能卡21中安裝的用于實現應用程序的下載、管理等功能的應用。默認應用指的是多應用智能卡21開機后默認處于激活態的應用,用戶可以將最常用的應用設置為默認應用,使得開機后最常用的應用即處于激活狀態,減少用戶在使用多應用智能卡21的過程中進行應用選擇的次數。在具體實施過程中,用戶可以根據需要設置上電初始化后激活系統應用或者默認應用或者上一次關機前最后激活的應用中的何種應用。
在具體實施過程中,如果在多應用智能卡21接收第一應用激活指令之前,多應用智能卡21為默認應用激活狀態或者系統應用激活狀態或者上一次關機前最后激活的應用激活狀態,則多應用智能卡21,還用于在識別第一應用激活指令為應用選擇指令(即該指令包括激活第一應用的指示信息)之后,在激活第一應用之前,對默認應用或者系統應用或者上一次關機前最后激活的應用進行去激活操作。去激活指的是將應用由激活狀態轉變為未激活狀態。對當前處于激活態的應用進行去激活操作后再激活用戶選擇的第一應用,避免不同的多個應用同時處于激活狀態造成多應用智能卡21響應失敗或錯誤。
為了防止多應用智能卡21被非法用戶使用,作為本發明實施例的一個可選實施方式,多應用智能卡21,還用于在接收開機指令之后,在上電完成系統的初始化之前,先對用戶進行身份認證。在具體實施過程中,多應用智能卡21,在接收開機指令后,可以用于顯示身份認證界面,提示用戶進行身份認證,只有用戶的身份認證通過,多應用智能卡21才能上電完成系統的初始化,防止多應用智能卡21被非法用戶使用,造成用戶的損失。多應用智能卡21用于進行身份認證的具體方式可以為驗證用戶輸入的pin碼是否正確,或者驗證用戶的生物特征信息(例如,指紋、脈搏等)是否匹配。如果輸入的pin碼正確或者生物特征信息匹配,則身份認證通過,否則身份認證不通過。
作為本發明實施例的一種可選的實施方式,多應用智能卡21,還用于在激活第一應用后,在顯示屏上顯示多應用智能卡21的應用列表,該應用列表包括多應用智能卡21安裝的一個或多個應用的表項,該表項的內容包括應用標識、應用名稱、應用狀態等應用描述信息,并將當前用戶選擇的第一應用的表項與未選擇的應用的表項區別顯示(例如,將用戶選擇的第一應用的表項加粗,或者加陰影顯示等),方便用戶獲知激活的第一應用具體為何種應用以及應用狀態等信息。
在本實施例中,第一終端22可以為具有讀卡功能的設備(例如,讀卡器),用于讀取多應用智能卡21。第一終端22,可以用于廣播尋卡指令(即第二指令),以便搜索到卡片入場,在多應用智能卡21進入第一終端22的電磁場后,便可以接收到該第一終端22的尋卡指令,并向第一終端22返回尋卡響應,以便與第一終端22建立通信連接。多應用智能卡21接收到一個操作指令,檢測到該操作指令是從無線通信接口接收到的,便可以確定該操作指令并非第一應用激活指令(由按鍵輸入的指令),而是從第一終端22即讀卡器發出的,并根據該操作指令中攜帶的標識信息、操作指令的格式、操作指令的長度等指令描述信息識別出操作指令的類型(例如,尋卡指令,以及后續步驟中的應用獲取指令、交易請求)。由此,在操作指令的指令描述信息為尋卡指令的描述信息時,可以識別出該操作指令為第一終端通過所述多應用智能卡的無線通信接口輸入的尋卡指令。在具體實施過程中,在第一終端22為支持nfc通信的終端的情況下,第一終端22,可以用于通過發送尋卡指令尋找位于自身電磁場內的支持nfc通信的多應用智能卡21,如果該多應用智能卡21的無線通信接口支持nfc通信,多應用智能卡21便可以接收到第一終端22發送的尋卡指令,然后該多應用智能卡21向第一終端22返回一個尋卡響應,以指示第一終端22在其電磁場內存在可以支持nfc通信的智能卡,并與第一終端22建立無線通信連接,如果該多應用智能卡21的無線通信接口不支持nfc通信,不向第一終端22返回尋卡響應。在第一終端22為支持wifi或者藍牙通信的終端的情況下,尋卡過程可以參照上述舉例的尋卡過程,在此不再一一贅述。
在本實施例中,多應用智能卡通過無線通信接口接收到一操作指令,根據操作指令的指令描述信息,可以識別出通過無線通信接收到的操作指令為應用獲取指令。應用獲取指令用來指示多應用智能卡21向第一終端22返回當前處于激活狀態的應用的標識信息,應用獲取響應中至少攜帶有當前處于激活狀態的應用的標識信息,由此,第一終端22可以用于向多應用智能卡21發起針對當前處于激活狀態的應用的交易。
在本實施例中,在使用多應用智能卡21進行交易的過程中,存在以下情況,例如,用戶激活多應用智能卡21的第一應用(比如建設銀行應用),再將多應用智能卡21靠近讀卡器如pos后,臨時不想使用第一應用,切換到了第二應用(第一應用以外的其他應用,如工商銀行應用),針對這種情況,作為本發明實施例的一個可選實施方式,多應用智能卡21,還用于在激活第一應用之后,在向第一終端22返回應用獲取響應之前,接收第二應用激活指令,第二應用激活指令至少包括激活第二應用的指示信息,在識別出第二應用激活指令為用戶通過按鍵輸入的指令后,對第一應用進行去激活操作,并激活第二應用。通過該可選實施方式,可以在多應用智能卡21上實現多應用間的切換,并避免不同的應用同時激活而產生相互干擾。
在本實施例中,第二應用可以是多應用智能卡21中安裝的多個應用中的至少一個應用,第二應用可以是不同于第一應用的應用,例如,第二應用激活指令可以包括激活身份證應用的指示信息以便激活身份證應用。由此,可以通過在第二應用激活指令中攜帶待激活的第二應用的標識信息以指示多應用智能卡21激活該第二應用。為了避免應用之間相互干擾,多應用智能卡21中同一時間只能有一個應用處于激活狀態,因此,多應用智能卡21在識別第二應用激活指令為應用選擇指令之后,需要先對當前處于激活狀態的第一應用進行去激活操作,再激活第二應用。
在本實施例中,交易信息可以包括:交易類型、交易金額、付款方賬戶信息、收款方賬戶信息等,在本實施例中不作具體限定。
作為本發明實施例的一個可選實施方式,第一終端22,還用于根據當前處于激活狀態的應用的標識信息向多應用智能卡21發起針對當前處于激活狀態的應用的交易請求,包括:第一終端22,還用于從應用獲取響應中獲取當前處于激活狀態的應用的標識信息,并根據當前處于激活狀態的應用的標識信息判斷當前處于激活狀態的應用是否為第一終端22支持的應用,如果是,則根據當前處于激活狀態的應用的標識信息向多應用智能卡21發起針對當前處于激活狀態的應用的交易請求。第一終端22通過判斷多應用智能卡21中當前處于激活狀態的應用是否為第一終端22支持的應用,進而決定是否進行交易,只有在支持的情況下,才進行交易,如果不支持,則不會執行后續的交易流程,因此能夠及時地終止不支持的交易,節約后續第一終端22與多應用智能卡21的交互操作,節省第一終端22和多應用智能卡21的資源。
在本實施例中,多應用智能卡通過無線通信接口接收到一操作指令,根據操作指令的指令描述信息,可以識別出通過無線通信接收到的操作指令為交易請求。多應用智能卡21,可以用于通過顯示屏顯示方式或者語音播報方式提示交易信息,用戶確認交易信息正確后,可以通過按鍵輸入交易確認指令。具體的,多應用智能卡21,可以用于在提示交易信息后,檢測是否有按鍵按下,如果有,則識別被按下的按鍵的鍵值,根據獲取的鍵值確定是否是交易確認指令,如果是,則認為接收到了用戶輸入的交易確認指令。此外,為了進一步提高交易的安全性,防止多應用智能卡21在開機后丟失造成損失,輸入交易確認指令的具體方式還可以為用戶向多應用智能卡21輸入交易pin碼或者提供用戶的指紋,只有用戶輸入的交易pin碼或者用戶的指紋認證通過,表明輸入交易確認指令的用戶身份合法后,多應用智能卡21才能將交易確認響應發送至第一終端22。
在本實施例中,交易確認響應中可以至少包括對交易信息進行確認的相關信息。第一終端22,還可以用于在接收交易確認響應之后,將交易信息進行重組后發送至后臺服務器;后臺服務器,用于根據交易信息完成交易,并將交易結果發送至第一終端22;第一終端22,還用于將交易結果發送至多應用智能卡21。
在本實施例中,如果黑客對智能卡進行攻擊,偽造交易請求并將該交易請求發送至智能卡,智能卡將響應交易請求并完成交易,因此為了防止非法應用的交易,作為本發明實施例的一個可選實施方式,交易請求中至少攜帶有當前處于激活狀態的應用的標識信息;多應用智能卡21,還用于在接收交易請求之后,在將交易確認響應發送至第一終端22之前,判斷交易請求中攜帶的當前處于激活狀態的應用的標識信息與多應用智能卡21當前激活的應用的標識信息是否匹配,如果是,則執行將交易確認響應發送至第一終端22的操作。通過判斷交易請求中攜帶的當前處于激活狀態的應用的標識信息與多應用智能卡21當前激活的應用的標識信息是否匹配,能夠判斷多應用智能卡21中發起交易請求的應用與當前執行交易的應用是否相同,防止黑客偽造應用激活的標識攻擊多應用智能卡21,阻止非法應用的交易,保護用戶的賬戶安全。
在該可選實施方式中,如果交易請求中攜帶的當前處于激活狀態的應用的標識信息與多應用智能卡21當前激活的應用的標識信息不匹配,系統可以終止交易,多應用智能卡21,還可以用于向第一終端22返回交易失敗響應,第一終端22,還可以用于接收交易失敗響應,停止后續的交易操作。
作為本發明實施例的一個可選實施方式,如圖3所示,本實施例提供的系統還可以包括:第二終端23和服務器24;多應用智能卡21,還用于向第二終端23發送下載第三應用的應用下載請求;第二終端23,用于接收應用下載請求,將應用下載請求發送至服務器24;服務器24,用于響應應用下載請求,將第三應用對應的應用加載信息發送至第二終端23;第二終端23,還用于接收應用加載信息,將應用加載信息發送至多應用智能卡21;多應用智能卡21,還用于接收應用加載信息,加載第三應用。通過該可選實施方式,實現多應用智能卡21的應用下載、安裝。
在該可選實施方式中,第二終端23可以是與第一終端22不同的終端,也可以與第一終端22為同一終端。具體的,第二終端23可以為移動終端、pc機、平板電腦、交易終端等。應用下載請求中可以至少包括多應用智能卡21請求下載的第三應用的標識信息。服務器24接收第二終端23轉發的應用下載請求后,可以響應應用下載請求,將應用下載請求對應的應用加載信息發送至第二終端22,其中,應用加載信息可以包括應用程序代碼。
以多應用智能卡21為java卡為例,服務器24,用于在接收應用下載請求后,根據應用下載請求中攜帶的多應用智能卡21請求下載的應用的標識信息獲取應用的java代碼,將java代碼轉換為class文件,進一步將class文件轉換為cap文件,并將cap文件發送至第二終端23;第二終端23,用于將cap文件轉換為應用程序協議數據單元apdu文件,并將apdu文件轉發至多應用智能卡21;多應用智能卡21,用于根據apdu文件安裝應用程序。
在本實施例中,在使用多應用智能卡21進行交易的過程中,存在以下情況,例如,用戶激活多應用智能卡21的第一應用(比如建設銀行應用)在pos機上完成第一筆交易之后,需要針對處于激活狀態的第四應用(第一應用以外的其他應用,如農業銀行應用)進行第二筆交易,針對這種情況,作為本發明實施例的一個可選實施方式,多應用智能卡21,還用于在第一終端22完成第一筆交易的后續的交易操作之后,接收到用戶通過所述多應用智能卡的按鍵輸入的第三應用激活指令,第三應用激活指令至少包括激活第四應用的指示信息;對多應用智能卡21中當前處于激活狀態的應用進行去激活操作,并激活第四應用;第一終端22,還用于向多應用智能卡21發送應用獲取指令;多應用智能卡21,還用于接收到通過無線通信接收輸入的應用獲取指令,向第一終端22返回應用獲取響應,應用獲取響應中至少攜帶有當前處于激活狀態的應用的標識信息;第一終端22,還用于接收應用獲取響應,根據當前處于激活狀態的應用的標識信息向多應用智能卡21發起交易請求,交易請求至少包括交易信息;多應用智能卡21,還用于接收到通過無線通信接收輸入的交易請求,提示交易信息,并在接收到確認交易信息正確交易確認指令后,將交易確認響應發送至第一終端22;第一終端22,還用于接收交易確認響應,進行后續的交易操作。通過該可選實施方式,可以在第一筆交易完成之后再進行應用切換,并基于切換后激活的第四應用完成第二筆交易。多應用智能卡交易系統進行第二筆交易過程可以參見多應用智能卡交易系統進行第一筆交易的過程,在此不再贅述。
流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用于實現特定邏輯功能或過程的步驟的可執行指令的代碼的模塊、片段或部分,并且本發明的優選實施方式的范圍包括另外的實現,其中可以不按所示出或討論的順序,包括根據所涉及的功能按基本同時的方式或按相反的順序,來執行功能,這應被本發明的實施例所屬技術領域的技術人員所理解。
應當理解,本發明的各部分可以用硬件、軟件、固件或它們的組合來實現。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執行系統執行的軟件或固件來實現。例如,如果用硬件來實現,和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現:具有用于對數據信號實現邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(pga),現場可編程門陣列(fpga)等。
本技術領域的普通技術人員可以理解實現上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質中,該程序在執行時,包括方法實施例的步驟之一或其組合。
此外,在本發明各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現,也可以采用軟件功能模塊的形式實現。所述集成的模塊如果以軟件功能模塊的形式實現并作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。
上述提到的存儲介質可以是只讀存儲器,磁盤或光盤等。
在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特征、結構、材料或者特點包含于本發明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特征、結構、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結合。
盡管上面已經示出和描述了本發明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發明的限制,本領域的普通技術人員在不脫離本發明的原理和宗旨的情況下在本發明的范圍內可以對上述實施例進行變化、修改、替換和變型。本發明的范圍由所附權利要求及其等同限定。