TW201544983A - 資料通訊方法和系統及客戶端和伺服器 - Google Patents

資料通訊方法和系統及客戶端和伺服器 Download PDF

Info

Publication number
TW201544983A
TW201544983A TW103134016A TW103134016A TW201544983A TW 201544983 A TW201544983 A TW 201544983A TW 103134016 A TW103134016 A TW 103134016A TW 103134016 A TW103134016 A TW 103134016A TW 201544983 A TW201544983 A TW 201544983A
Authority
TW
Taiwan
Prior art keywords
data
code
server
bit
client
Prior art date
Application number
TW103134016A
Other languages
English (en)
Other versions
TWI668586B (zh
Inventor
li-zhong Li
Original Assignee
Alibaba Group Services Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Services Ltd filed Critical Alibaba Group Services Ltd
Publication of TW201544983A publication Critical patent/TW201544983A/zh
Application granted granted Critical
Publication of TWI668586B publication Critical patent/TWI668586B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/42User authentication using separate channels for security data
    • G06F21/43User authentication using separate channels for security data wireless channels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/108Remote banking, e.g. home banking
    • G06Q20/1085Remote banking, e.g. home banking involving automatic teller machines [ATMs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/202Interconnection or interaction of plural electronic cash registers [ECR] or to host computer, e.g. network details, transfer of information from host to ECR or from ECR to ECR
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/206Point-of-sale [POS] network systems comprising security or operator identification provisions, e.g. password entry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/385Payment protocols; Details thereof using an alias or single-use codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/42Confirmation, e.g. check or permission by the legal debtor of payment
    • G06Q20/425Confirmation, e.g. check or permission by the legal debtor of payment using two different networks, one for transaction and one for security confirmation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Software Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Transfer Between Computers (AREA)
  • Cash Registers Or Receiving Machines (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申請實施方式公開了一種資料通信方法和系統及客戶端和伺服器。資料通信方法包括:客戶端向伺服器發出通信請求;所述伺服器回應所述通信請求,按照第一預設規則產生至少一個位碼,所述伺服器將附帶有所述至少一個位碼的信息發送給所述客戶端;所述客戶端產生數量與所述至少一個位碼對應的至少一個輸入框;所述客戶端將所述至少一個輸入框的資料作為至少一個驗證資料發送給所述伺服器;所述伺服器將所述至少一個位碼中每個所述位碼對應的位資料和驗證資料進行比對,所述至少一個位碼中每個所述位碼對應的位資料和驗證資料均相同時,所述伺服器向所述客戶端發出成功信息碼。本申請可以提升密碼安全,降低密碼被破解的風險。

Description

資料通訊方法和系統及客戶端和伺服器
本申請關於資料通信領域,特別關於一種資料通信方法與系統及客戶端和伺服器。
現實生活中,很多場合均需要採用密碼驗證的方式確認用戶的身份。具體的,舉例為:用戶登入網站、在商場消費、在銀行或ATM取款機取款等。用戶首先會在網站進行註冊,或者到一家銀行進行開戶。在註冊或者開戶時,用戶會設置用戶名和密碼,用於後續確認身份。在完成註冊或開戶之後,用戶便可以利用用戶名和密碼登入網站,利用網路銀行進行購物,或者使用銀行卡在銀行或ATM取款機取款等。
現有網站和銀行的系統均為要求用戶輸入完整的帳戶和密碼,系統會進一步將終端提供的帳號和密碼與自身儲存的帳號和密碼進行匹配,在用戶輸入的帳號和密碼與自身儲存的帳號和密碼相同時,會認為當前終端登錄帳戶成功,允許當前終端進一步訪問系統內的對該帳戶開放權限的資料。然而現有的系統存在一定的安全風險,由於現有 系統要求完整的帳號和密碼,使得在通信過程中,密碼存在被破解的風險,可能給用戶帶來經濟損失。具體的,舉例為:在用戶登入網站的帳戶名稱或銀行帳戶號被不法分子獲得之後,不法分子可能使用密碼破解軟體,不斷的向網站的伺服器發出登入請求,每個登入請求都採用不同的密碼,如此進行遍曆的方式破解用戶的密碼,由於現有的網站每次要求輸入的密碼不會發生變化,使得現有的密碼較易於被破解。一旦被破解,可能導致用戶在購物網站預存的金額被盜用,或用戶網路銀行的帳號和密碼等信息洩露,導致用戶的資產可能被不法分子轉移。
本申請實施方式的目的是提供一種能夠減小用戶的密碼被破解的風險的資料通信方法和系統及客戶端和伺服器。
為解決上述技術問題,本申請提供一種資料通信方法,其包括:客戶端向伺服器發出通信請求;所述伺服器回應所述通信請求,按照第一預設規則產生至少一個位碼,所述伺服器將附帶有所述至少一個位碼的信息發送給所述客戶端;所述客戶端產生數量與所述至少一個位碼對應的至少一個輸入框,偵測所述至少一個輸入框的輸入事件,在發生輸入事件時獲取所述至少一個輸入框的資料;所述客戶端將所述至少一個輸入框的資料作為至少一個驗證資料發送給所述伺服器;所述伺服器從所述預設資料中 獲取所述至少一個位碼對應的至少一個位資料;所述伺服器將所述至少一個位碼中每個所述位碼對應的位資料和驗證資料進行比對,所述至少一個位碼中每個所述位碼對應的位資料和驗證資料均相同時,所述伺服器向所述客戶端發出成功信息碼。
本申請還提供一種資料通信系統,所述資料通信系統包括客戶端和伺服器,所述客戶端包括:請求發送模塊,用於向所述伺服器發出通信請求;位碼接收模塊,用於接收所述伺服器發出的附帶有至少一個位碼的信息;輸入模塊,用於產生數量與所述至少一個位碼對應的至少一個輸入框,偵測所述至少一個輸入框的輸入事件,在發生輸入事件時獲取所述至少一個輸入框的資料;驗證資料發送模塊,用於將所述至少一個輸入框的資料作為至少一個驗證資料發送給所述伺服器;所述伺服器包括:請求接收模塊,用於接收所述客戶端發出的所述通信請求;回應模塊,用於回應所述通信請求,按照第一預設規則產生至少一個位碼,將附帶有所述至少一個位碼的信息發送給所述客戶端;驗證資料接收模塊,用於接收所述客戶端發出的至少一個驗證資料;比對模塊,用於將所述至少一個位碼對應的所述預設資料中的位資料和驗證資料進行比對,所述至少一個位碼對應的位資料和驗證資料相同時,向所述客戶端發出成功信息碼。
本申請還提供一種資料通信方法,所述資料通信方法包括:向伺服器發出通信請求;接收所述伺服器發送的信 息,獲取所述信息附帶的至少一個位碼;產生數量與所述至少一個位碼對應的至少一個輸入框,偵測所述至少一個輸入框的輸入事件,在發生輸入事件時獲取所述至少一個輸入框的資料;將所述至少一個輸入框的資料作為至少一個驗證資料發送給所述伺服器。
本申請還提供一種客戶端,所述客戶端包括:請求發送模塊,用於向伺服器發出通信請求;位碼接收模塊,用於接收所述伺服器發出的附帶有至少一個位碼的信息;輸入模塊,用於產生數量與所述至少一個位碼對應的至少一個輸入框,偵測所述至少一個輸入框的輸入事件,在發生輸入事件時獲取所述至少一個輸入框的資料;驗證資料發送模塊,用於將所述至少一個輸入框的資料作為至少一個驗證資料發送給所述伺服器。
本申請還提供一種資料通信方法,所述方法包括:接收客戶端發出的通信請求;回應通信請求,按照第一預設規則產生至少一個位碼,將附帶有所述至少一個位碼的信息發送給所述客戶端;接收客戶端發出的至少一個驗證資料;從所述預設資料中獲取所述至少一個位碼對應的至少一個位資料;將所述至少一個位碼對應的所述預設資料中的位資料和驗證資料進行比對,所述至少一個位碼中每個所述位碼對應的位資料和驗證資料相同時,向所述客戶端發出成功信息碼。
本申請還提供一種伺服器,所述伺服器包括:請求接收模塊,用於接收客戶端發出的通信請求;回應模塊,用 於回應所述通信請求,按照第一預設規則產生至少一個位碼,將附帶有所述至少一個位碼的信息發送給所述客戶端;驗證資料接收模塊,用於接收客戶端發出的至少一個驗證資料;比對模塊,用於將所述至少一個位碼對應的所述預設資料中的位資料和驗證資料進行比對,所述至少一個位碼對應的位資料和驗證資料相同時,向所述客戶端發出成功信息碼。
由以上本申請實施方式提供的技術方案可見,本申請通過預設規則使用戶在進行驗證身份的過程中,輸入預設資料中指定的幾個數位的資料,用戶每次進行驗證身份時,要求用戶輸入的內容可以發生變化,如此實現保障用戶的密碼安全,降低了密碼被破解的風險。
10‧‧‧客戶端
12‧‧‧伺服器
14‧‧‧請求發送模塊
15‧‧‧位碼接收模塊
16‧‧‧輸入模塊
18‧‧‧驗證資料發送模塊
20‧‧‧請求接收模塊
22‧‧‧回應模塊
24‧‧‧驗證資料接收模塊
26‧‧‧比對模塊
100‧‧‧資料通信系統
為了更清楚地說明本申請實施方式或現有技術中的技術方案,下面將對實施方式或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施方式,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本申請一個實施方式提供的資料通信方法的流程圖;圖2為本申請一個實施方式提供的資料通信方法的流程圖; 圖3為本申請一個實施方式提供的資料通信系統的模塊圖;圖4為本申請一個實施方式提供的資料通信方法的流程圖;圖5為本申請一個實施方式提供的客戶端的方塊圖;圖6為本申請一個實施方式提供的資料通信方法的流程圖;圖7為本申請一個實施方式提供的資料通信方法的流程圖;圖8為本申請一個實施方式提供的伺服器的方塊圖。
為了使本技術領域的人員更好地理解本申請中的技術方案,下面將結合本申請實施方式中的附圖,對本申請實施方式中的技術方案進行清楚、完整地描述,顯然,所描述的實施方式僅僅是本申請一部分實施方式,而不是全部的實施方式。基於本申請中的實施方式,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施方式,都應當屬於本申請保護的範圍。
請參閱圖1,為本申請的一個實施方式提供的資料通信方法,其包括如下步驟。
步驟S10:客戶端向伺服器發出通信請求。
在本實施方式中,客戶端可以是用戶的個人電腦、商場的刷卡機或ATM取款機,也可以是運行在上述硬體的 軟體。所述伺服器可以是網站的伺服器或銀行的伺服器。
在本實施方式中,客戶端向伺服器發出通信請求,表示可能存在用戶通過客戶端登入伺服器,查閱、編輯或使用伺服器中對應所述用戶保存的資料。具體的,舉例為:用戶通過個人電腦登入某網站;用戶使用銀行卡在某商場消費;用戶使用銀行卡在ATM取款機或存/取款機中提取現金;用戶使用網路銀行進行消費,或管理帳戶等等。
在本實施方式中,通信請求可以是字元組成的字元串,用於表示客戶端請求與伺服器建立通信,在該通信的基礎上,客戶端可以訪問伺服器中儲存的資料。觸發發出通信請求的事件可以包括:用戶登錄網站時點擊登錄按鈕;用戶使用銀行卡在刷卡設備上進行刷卡操作。
步驟S20:所述伺服器回應所述通信請求,按照第一預設規則產生至少一個位碼,所述伺服器將附帶有所述至少一個位碼的信息發送給所述客戶端。
在本實施方式中,位碼可以表示預設資料的數位的序號,預設資料的位碼的排序方式可以從左至右,也可以從右至左。具體的,舉例為:所述預設資料可以為754962,若所述位碼的排序方式是從左至右,數字“7”的位碼可以是1,數字“5”的位碼可以是2,以此類推,數字“4”、“9”、“6”和“2”的位碼分別為3、4、5和6;若所述位碼的排序方式是從右至左,數字“2”的位碼可以是1,數字“6”的位碼可以是2,以此類推,數字“9”、“4”、“5”和“7”的位碼分別是3、4、5和 6。
在本實施方式中,預設資料預先設置儲存在伺服器中,用於在客戶端與伺服器建立通信過程中,作為秘鑰使用,即客戶端輸入與伺服器相同的預設資料時,客戶端與伺服器建立通信。預設資料可以是用戶預先設置的密碼,所述預設資料對應用戶的帳號或帳戶名保存,用戶輸入正確帳號和密碼、或帳戶名和密碼可以訪問伺服器內的相關資料。具體的,舉例為:預設資料可以是用戶登錄網站的密碼,用戶在網站的登錄界面輸入帳戶名和密碼,即可登錄網站,從而進一步的操作;預設資料可以是用戶銀行帳戶的密碼,用戶使用帳號和密碼、或帳戶名和密碼可以在銀行或ATM存取款機辦理業務。在本實施方式中,預設資料的位數可以統一規定固定的數量。
在本實施方式中,第一預設規則用於產生至少一個位碼,位碼的數量和取值均小於或等於預設資料的位數。第一預設規則能夠產生數量和取值均小於或等於預設資料的位數的數字。具體的,舉例為:預設資料的位數為6,所述第一預設規則可以為每次隨機的在1~6之間選擇2個數字,該選中的兩個數字作為位碼。當然,在收到通信請求之後,產生的至少一個位碼的數量並不限於2個,也可以為1個、3個、4個、5個或6個,只要至少一個位碼的數量小於或等於預設資料的位數即可。
步驟S30:所述客戶端產生數量與所述至少一個位碼對應的至少一個輸入框,偵測所述至少一個輸入框的輸入 事件,在發生輸入事件時獲取所述至少一個輸入框的資料。
在本實施方式中,所述客戶端接收所述至少一個位碼之後,產生至少一個輸入框。當用戶向輸入框輸入資料,即為發生了輸入事件。客戶端偵測到輸入事件之後,獲取輸入框內的資料。輸入框可以是客戶端中的一個控件。
在本實施方式中,在客戶端可以給用戶輸入提示,即在每個輸入框附近提示該輸入框對應的位碼。當用戶知道預設資料時,可以按照提示輸入位碼對應的預設資料中的資料。客戶端可以在至少一個輸入框均發生輸入事件之後,獲取全部輸入框的資料,也可以每當一個輸入框發生輸入事件,獲取該輸入框的資料。
步驟S40:所述客戶端將所述至少一個輸入框的資料作為至少一個驗證資料發送給所述伺服器。
在本實施方式中,客戶端可以在全部輸入框均發生了輸入事件後,便將全部輸入框的資料發送給伺服器,也可以設置有按鈕,在按鈕被觸發後將當前獲取的資料發送給伺服器。
在本實施方式中,客戶端獲取的輸入框的資料作為驗證資料,判斷當前輸入資料的用戶是否有權限通過客戶端訪問伺服器中的資料。由於客戶端是對應至少一個位碼產生了至少一個輸入框,使得所述至少一個驗證資料中的每個資料與所述至少一個位碼中的一個位碼相對應。
步驟S50:所述伺服器從所述預設資料中獲取所述至 少一個位碼對應的至少一個位資料。
在本實施方式中,伺服器依照至少一個位碼從預設資料中讀取位碼對應的位資料。具體的,舉例為:所述預設資料可以為754962,位碼的排序方式為從左至右,至少一個位碼包括“1”和“4”,位碼“1”對應位資料7,位碼“4”對應位資料9。
步驟S60:所述伺服器將所述至少一個位碼中每個所述位碼對應的位資料和驗證資料進行比對,所述至少一個位碼中每個所述位碼對應的位資料和驗證資料均相同時,所述伺服器向所述客戶端發出成功信息碼。
在本實施方式中,伺服器將每個位碼對應的位資料和驗證資料進行對比,驗證資料與位資料均相同,表明當前用戶有權限通過身份驗證,或有權限登入,或有權限訪問伺服器中的資料。當驗證資料與位資料部分或全部不同時,表明驗證資料時錯誤的,也表明當前用戶沒有權限通過份驗證,或有沒有權限登入,或有沒有權限訪問伺服器中的資料。
在本實施方式中,所述成功信息碼可以是字元或字元串,其可以表示全部位碼對應的位資料和驗證資料均相同。當前客戶端可以進一步訪問伺服器中的資料。具體的,舉例為:用戶通過電腦登入網站,在電腦收到伺服器的成功信息碼之後,電腦會提示登入成功,此時用戶可以通過電腦進一步訪問權限允許範圍內的資料。用戶登入網路路銀行,在客戶端收到成功信息碼之後,用戶便可以進 行付款等操作。用戶在ATM取款機取款,在ATM取款機收到成功信息碼之後,用戶便可以通過ATM取款機進行取款等操作。
本申請實施方式提供的客戶端與伺服器的資料通信方法,可以通過預設規則產生位碼,使得在用戶通過客戶端登入伺服器時,只需要輸入密碼中與位碼對應的位資料,如此在客戶端與伺服器交互的過程中,客戶端每次要求輸入的內容可以是不同的,增加了破解密碼的難度,降低了密碼被破解的風險。
在本申請的一個實施方式中,在步驟S20中:所述至少一個位碼的數量和取值均小於預設資料的位數。
在本實施方式中,第一預設規則將預設資料的位數作為位碼的數量和取值的上限值,即位碼的數量和取值均小於預設資料的位數。第一預設規則可以包括隨機函數,所述隨機函數能夠產生數量和取值均小於預設資料的位數的數字。具體的,舉例為:預設資料的位數為6,所述第一預設規則可以為每次隨機的在1~6之間選擇數字,選擇數字的數量可以為1個、2個、3個、4個或5個。本實施方式提供的資料通信方法,使得在客戶端與伺服器交互過程中,不會出現完整的密碼,當用戶錯誤訪問釣魚網站或客戶端被植入木馬時,不法分子也難以獲得完整的密碼,有效避免了完整密碼的洩漏。
在本申請的一個實施方式中,在步驟S10中:所述通信請求附帶有帳戶信息。
在步驟S20中:所述至少一個位碼的數量和取值均小於所述帳戶信息對應的預設資料的位數。
在本實施方式中,所述帳戶信息可以包括帳戶名和帳號或二者之一。在伺服器中可以對應帳戶信息儲存有預設資料。具體的,舉例為:用戶在一個網站的帳戶名為“taobaoyonghu”,在登錄該網站時,可以首先收入上述帳戶名並提交給伺服器,伺服器接收到通信請求之後,獲取所述帳戶名“taobaoyonghu”對應的預設資料的位數,產生相應的至少一個位碼並進行後續的步驟。
請參閱圖2,在本申請的一個實施方式中,所述資料通信方法還包括如下子步驟。
步驟S61:所述伺服器按照第二預設規則產生的驗證碼,將所述驗證碼發送給預設終端。
在本實施方式中,第二預設規則用於產生驗證碼。第二預設規則可以為能夠產生隨機數的隨機函數,該隨機函數產生的隨機數即為所述驗證碼。第二預設規則可以為能夠產生二維碼的二維碼生成器,較佳地其為動態二維碼生成器,所述二維碼或動態二維碼即可以為驗證碼,所述第二預設規則每次產生的二維碼或動態二維碼不相同。第二預設規則還可以為能夠產生條形碼的條形碼生成器,所述條形碼可以為所述驗證碼,第二預設規則每次產生的條形碼不同。
在本實施方式中,預設終端可以為用戶的行動電話。用戶可以預先在伺服器中保存行動電話的號碼,伺服器可 以將驗證碼以短信方式發送至所述行動電話。當然,預設終端還可以為軟體,並安裝在用戶使用的設備上,該軟體能夠通過設備接收伺服器發出的驗證碼。
步驟S63:所述客戶端獲取所述預設終端接收的所述驗證碼,將所述驗證碼作為待驗證碼發送給所述伺服器。
在本實施方式中,客戶端可以具有掃描裝置,掃描預設終端的驗證碼,也可以為客戶端提供輸入框,供用戶輸入預設終端接收的驗證碼。具體的,舉例為:客戶端設置有掃描裝置,客戶端掃描預設終端顯示二維碼或動態二維碼或條形碼之後,完成獲取二維碼或動態二維碼或條形碼,即完成獲取驗證碼。當然,若驗證碼是隨機數,客戶端可以設置有輸入框,用於接收用戶輸入所述隨機數,如此使客戶端獲取驗證碼。還可以為,預設終端與客戶端之間可以通信,例如使用藍牙技術或紅外線技術,實現客戶端從預設終端獲取驗證碼。
在所述步驟S60中:所述伺服器將所述至少一個位碼中每個所述位碼對應的位資料和驗證資料進行比對,將所述待驗證碼與所述驗證碼進行比對,所述至少一個位碼中每個所述位碼對應的位資料和驗證資料均相同並且所述待驗證碼與所述驗證碼相同時,所述伺服器向所述客戶端發出成功信息碼。
在本實施方式中,伺服器可以將所述至少一個位碼中每個所述位碼對應的位資料和驗證資料進行比對,以及將待驗證碼和驗證碼進行比對。當所述至少一個位碼中每個 所述位碼對應的位資料和驗證資料均相同,並且待驗證碼和驗證碼也相同時,伺服器才向客戶端發出成功信息碼。
在本實施方式中,所述客戶端與伺服器的資料通信方法在隨機的位碼對應的預設資料進行驗證的基礎上,增加了單次有效的驗證碼驗證,如此極大的提高了客戶端與伺服器之間交互的安全性。提升了用戶帳戶和密碼的安全性,能夠有效避免用戶的密碼洩漏,並且能夠有效防止不法分子盜用用戶的帳戶,避免不法分子冒充用戶的身份登錄伺服器損害用戶的利益。
在本申請的一個實施方式中,所述第一預設規則包括將所述預定資料中的至少一個數位設置為保留位,所述第一預設規則產生的所述至少一個位碼不包括所述保留位的位碼。
在本實施方式中,保留位的數量小於預定資料的位數。如此,使得預定資料中作為保留位的位碼不會出現在提供給客戶端的至少一個位碼中。如此實現在客戶端與伺服器進行交互過程中,即使用戶輸入的帳戶和驗證資料被多次攔截,但不法分子始終無法得到完整的預定資料。具體的,舉例為:所述預設資料可以為754962,位碼的排序方式為從左至右,保留位的位碼是“5”和“6”,則第一預設規則在產生至少一個位碼時,不會出現“5”和“6”,使得客戶端與伺服器的建立通信的過程中,不會出現輸入預設資料中的6和2的情況,即使木馬或釣魚網站等多次獲取客戶端與伺服器建立通信時的資料,也無法 獲知預定資料的第5位和第6位資料。所述預設資料可以用作為密碼,本實施方式提供的客戶端與伺服器的資料通信方法,能夠有效提升密碼安全。
請參閱圖3,本申請實施方式還提供一種資料通信系統100,包括客戶端10和伺服器12。在本實施方式中,客戶端可以是用戶的個人電腦、商場的刷卡機或ATM取款機,也可以是運行在上述硬體的軟體。所述伺服器可以是網站的伺服器或銀行的伺服器。
客戶端10包括:請求發送模塊14、位碼接收模塊15、輸入模塊16和驗證資料發送模塊18。
請求發送模塊14用於向伺服器發出通信請求。
在本實施方式中,請求發送模塊14向伺服器發出通信請求,表示存在用戶通過客戶端登入伺服器,查閱、編輯或使用伺服器中對應所述用戶保存的資料。具體的,舉例為:用戶通過個人電腦登入某網站;用戶使用銀行卡在某商場消費;用戶使用銀行卡在ATM取款機或存/取款機中提取現金;用戶使用網路銀行進行消費,或管理帳戶等等。
在本實施方式中,通信請求可以是字元組成的字元串,其代表客戶端請求與伺服器建立通信,在該通信的基礎上,客戶端可以訪問伺服器中儲存的資料。
位碼接收模塊15,用於接收所述伺服器發出的附帶有至少一個位碼的信息。
在本實施方式中,在本實施方式中,位碼可以表示預 設資料的數位的序號,預設資料的位碼的排序方式可以從左至右,也可以從右至左。具體的,舉例為:所述預設資料可以為754962,若所述位碼的排序方式是從左至右,數字“7”的位碼可以是1,數字“5”的位碼可以是2,以此類推,數字“4”、“9”、“6”和“2”的位碼分別為3、4、5和6;若所述位碼的排序方式是從右至左,數字“2”的位碼可以是1,數字“6”的位碼可以是2,以此類推,數字“9”、“4”、“5”和“7”的位碼分別是3、4、5和6。所述預設資料可以是用戶預先設置的密碼。
輸入模塊16用於產生數量與所述至少一個位碼對應的至少一個輸入框,偵測所述至少一個輸入框的輸入事件,在發生輸入事件時獲取所述至少一個輸入框的資料。
在本實施方式中,所述客戶端接收所述至少一個位碼之後,輸入模塊16產生至少一個輸入框。當用戶向輸入框輸入資料,即為發生了輸入事件。輸入模塊16偵測到輸入事件之後,獲取輸入框內的資料。輸入框可以是客戶端中的一個控件。
在本實施方式中,輸入模塊16可以給用戶輸入提示,即在每個輸入框附近提示該輸入框對應的位碼。當用戶知道預設資料時,可以按照提示輸入位碼對應的預設資料中的資料。輸入模塊16可以在至少一個輸入框均發生輸入事件之後,獲取全部輸入框的資料,也可以每當一個輸入框發生輸入事件,獲取該輸入框的資料。
驗證資料發送模塊18用於將所述至少一個輸入框的資料作為至少一個驗證資料發送給所述伺服器。
在本實施方式中,驗證資料發送模塊18可以在全部輸入框均發生了輸入事件後,便將全部輸入框的資料發送給伺服器,也可以設置有按鈕,在按鈕被觸發後將當前獲取的資料發送給伺服器。
在本實施方式中,驗證資料發送模塊18將輸入框的資料發送給伺服器作為驗證資料。驗證資料用於伺服器判斷當前輸入資料的用戶是否有權限通過客戶端訪問伺服器中的資料。由於輸入模塊16是對應至少一個位碼產生了至少一個輸入框,使得所述至少一個驗證資料中的一個資料與所述至少一個位碼中的一個位碼相對應。
伺服器12包括:請求接收模塊20、回應模塊22、驗證資料接收模塊24和比對模塊26。
請求接收模塊20用於接收客戶端發出的通信請求。
在本實施方式中,客戶端向伺服器發出通信請求,表示可能存在用戶通過客戶端登入伺服器,查閱、編輯或使用伺服器中對應所述用戶保存的資料。具體的,舉例為:用戶通過個人電腦登入某網站;用戶使用銀行卡在某商場消費;用戶使用銀行卡在ATM取款機或存/取款機中提取現金;用戶使用網路銀行進行消費,或管理帳戶等等。
在本實施方式中,通信請求可以是字元組成的字元串,其代表客戶端請求與伺服器建立通信,在該通信的基礎上,客戶端可以訪問伺服器中儲存的資料。
回應模塊22用於回應通信請求,按照第一預設規則產生至少一個位碼,將附帶有所述至少一個位碼的信息發送給所述客戶端。
在本實施方式中,位碼可以表示預設資料的數位的序號,預設資料的位碼的排序方式可以從左至右,也可以從右至左。具體的,舉例為:所述預設資料可以為754962,若所述位碼的排序方式是從左至右,數字“7”的位碼可以是1,數字“5”的位碼可以是2,以此類推,數字“4”、“9”、“6”和“2”的位碼分別為3、4、5和6;若所述位碼的排序方式是從右至左,數字“2”的位碼可以是1,數字“6”的位碼可以是2,以此類推,數字“9”、“4”、“5”和“7”的位碼分別是3、4、5和6。
在本實施方式中,預設資料為預先設置儲存在伺服器中,用於在客戶端與伺服器建立通信過程中,作為秘鑰使用,即客戶端輸入與伺服器相同的預設資料時,客戶端與伺服器建立通信。預設資料可以是用戶預先設置的密碼,所述預設資料對應用戶的帳號或帳戶名保存,用戶輸入正確帳號和密碼、或帳戶名和密碼可以訪問伺服器內的相關資料。具體的,舉例為:預設資料可以是用戶登錄網站的密碼,用戶在網站的登錄界面輸入帳戶名和密碼,即可登錄網站,從而進一步的操作;預設資料可以是用戶銀行帳戶的密碼,用戶使用帳號和密碼、或帳戶名和密碼可以在銀行或ATM存取款機辦理業務。在本實施方式中,預設 資料的位數可以統一規定固定的數量。
在本實施方式中,第一預設規則用於產生至少一個位碼,位碼的數量和取值均小於或等於預設資料的位數。第一預設規則能夠產生數量和取值均小於或等於預設資料的位數的數字。具體的,舉例為:預設資料的位數為6,所述第一預設規則可以為每次隨機的在1~6之間選擇2個數字,該選中的兩個數字作為位碼。當然,在收到通信請求之後,產生的至少一個位碼的數量並不限於2個,也可以為1個、3個、4個、5個或6個,只要至少一個位碼的數量小於或等於預設資料的位數即可。
驗證資料接收模塊24用於接收客戶端發出的至少一個驗證資料。
在本實施方式中,驗證資料用於判斷客戶端是否有權限進一步訪問伺服器的資料。
比對模塊26用於將所述至少一個位碼對應的所述預設資料中的位資料和驗證資料進行比對,所述至少一個位碼對應的位資料和驗證資料相同時,向所述客戶端發出成功信息碼。
在本實施方式中,伺服器將每個位碼對應的位資料和驗證資料進行對比,驗證資料與位資料均相同,表明當前用戶有權限通過身份驗證,或有權限登入,或有權限訪問伺服器中的資料。當驗證資料與位資料部分或全部不同時,表明驗證資料時錯誤的,也表明當前用戶沒有權限通過份驗證,或有沒有權限登入,或有沒有權限訪問伺服器 中的資料。
在本實施方式中,所述成功信息碼可以是字元或字元串,其可以表示全部位碼對應的位資料和驗證資料均相同。當前客戶端可以進一步訪問伺服器中的資料。具體的,舉例為:用戶通過電腦登入網站,在電腦收到伺服器的成功信息碼之後,電腦會提示登入成功,此時用戶可以通過電腦進一步訪問權限允許範圍內的資料。用戶登入網路銀行,在客戶端收到成功信息碼之後,用戶便可以進行付款等操作。用戶在ATM取款機取款,在ATM取款機收到成功信息碼之後,用戶便可以通過ATM取款機進行取款等操作。
請參閱圖4,本申請實施方式還提供一種資料通信方法。所述資料通信方法包括如下步驟。
步驟S11:向伺服器發出通信請求。
在本實施方式中,客戶端向伺服器發出通信請求,表示可能存在用戶通過客戶端登入伺服器,查閱、編輯或使用伺服器中對應所述用戶保存的資料。具體的,舉例為:用戶通過個人電腦登入某網站;用戶使用銀行卡在某商場消費;用戶使用銀行卡在ATM取款機或存/取款機中提取現金;用戶使用網路銀行進行消費或管理帳戶等等。
在本實施方式中,通信請求可以是字元組成的字元串,其代表客戶端請求與伺服器建立通信,在該通信的基礎上,客戶端可以訪問伺服器中儲存的資料。
步驟S31:接收所述伺服器發送的信息,獲取所述信 息附帶的至少一個位碼。
步驟S33:產生數量與所述至少一個位碼對應的至少一個輸入框,偵測所述至少一個輸入框的輸入事件,在發生輸入事件時獲取所述至少一個輸入框的資料。
在本實施方式中,客戶端接收所述至少一個位碼之後,產生至少一個輸入框。當用戶向輸入框輸入資料,即為發生了輸入事件。客戶端偵測到輸入事件之後,獲取輸入框內的資料。輸入框可以是客戶端中的一個控件。
在本實施方式中,在客戶端可以給用戶輸入提示,即在每個輸入框附近提示該輸入框對應的位碼。當用戶知道預設資料時,可以按照提示輸入位碼對應的預設資料中的資料。客戶端可以在至少一個輸入框均發生輸入事件之後,獲取全部輸入框的資料,也可以每當一個輸入框發生輸入事件,獲取該輸入框的資料。
步驟S41:將所述至少一個輸入框的資料作為至少一個驗證資料發送給所述伺服器。
在本實施方式中,客戶端可以在全部輸入框均發生了輸入事件後,便將全部輸入框的資料發送給伺服器,也可以設置有按鈕,在按鈕被觸發後將當前獲取的資料發送給伺服器。
在本實施方式中,客戶端獲取的輸入框的資料作為驗證資料,判斷當前輸入資料的用戶是否有權限通過客戶端訪問伺服器中的資料。由於客戶端是對應至少一個位碼產生了至少一個輸入框,使得所述至少一個驗證資料中的每 個資料與所述至少一個位碼中的一個位碼相對應。
在本申請的一個實施方式中,在步驟S10中:所述通信請求附帶有帳戶信息。在本實施方式中,所述帳戶信息可以包括帳戶名和帳號或二者之一。在伺服器中可以對應帳戶信息儲存有預設資料。具體的,舉例為:用戶在一個網站的帳戶名為“taobaoyonghu”,在登錄該網站時,可以首先收入上述帳戶名並提交給伺服器,伺服器接收到通信請求之後,獲取所述帳戶名“taobaoyonghu”對應的預設資料的位數,產生相應的至少一個位碼並進行後續的步驟。
在本申請的一個實施方式中,所述通信方法還包括:獲取預設終端接收的驗證碼,將所述驗證碼作為待驗證碼發送給所述伺服器。
在本實施方式中,客戶端可以具有掃描裝置,掃描預設終端的驗證碼,也可以為客戶端提供輸入框,供用戶輸入預設終端接收的驗證碼。具體的,舉例為:驗證碼可以為數字、二維碼、動態二維碼或條形碼。客戶端設置有掃描裝置,客戶端掃描預設終端顯示二維碼或動態二維碼或條形碼之後,完成獲取二維碼或動態二維碼或條形碼,即完成獲取驗證碼。當然,若驗證碼是隨機數,客戶端可以設置有輸入框,用於接收用戶輸入所述隨機數,如此使客戶端獲取驗證碼。還可以為,預設終端與客戶端之間可以通信,例如使用藍牙技術或紅外技術,實現客戶端從預設終端獲取驗證碼。
在本實施方式中,預設終端可以為用戶的行動電話。用戶可以預先在伺服器中保存行動電話的號碼,伺服器可以將驗證碼以短信方式發送至所述行動電話。當然,預設終端還可以為軟體,並安裝在用戶使用的設備上,該軟體能夠通過設備接收伺服器發出的驗證碼。
請參閱圖5,本申請實施方式還提供一種客戶端10。在本實施方式中,客戶端可以是用戶的個人電腦、商場的刷卡機或ATM取款機,也可以是運行在上述硬體的軟體。
客戶端10包括:請求發送模塊14、位碼接收模塊15、輸入模塊16和驗證資料發送模塊18。
請求發送模塊14用於向伺服器發出通信請求。
在本實施方式中,請求發送模塊14向伺服器發出通信請求,表示存在用戶通過客戶端登入伺服器,查閱、編輯或使用伺服器中對應所述用戶保存的資料。具體的,舉例為:用戶通過個人電腦登入某網站;用戶使用銀行卡在某商場消費;用戶使用銀行卡在ATM取款機或存/取款機中提取現金;用戶使用網路銀行進行消費,或管理帳戶等等。
在本實施方式中,通信請求可以是字元組成的字元串,其代表客戶端請求與伺服器建立通信,在該通信的基礎上,客戶端可以訪問伺服器中儲存的資料。
位碼接收模塊15,用於接收所述伺服器發出的附帶有至少一個位碼的信息。
在本實施方式中,在本實施方式中,位碼可以表示預設資料的數位的序號,預設資料的位碼的排序方式可以從左至右,也可以從右至左。具體的,舉例為:所述預設資料可以為754962,若所述位碼的排序方式是從左至右,數字“7”的位碼可以是1,數字“5”的位碼可以是2,以此類推,數字“4”、“9”、“6”和“2”的位碼分別為3、4、5和6;若所述位碼的排序方式是從右至左,數字“2”的位碼可以是1,數字“6”的位碼可以是2,以此類推,數字“9”、“4”、“5”和“7”的位碼分別是3、4、5和6。所述預設資料可以是用戶預先設置的密碼。
輸入模塊16用於產生數量與所述至少一個位碼對應的至少一個輸入框,偵測所述至少一個輸入框的輸入事件,在發生輸入事件時獲取所述至少一個輸入框的資料。
在本實施方式中,所述客戶端接收所述至少一個位碼之後,輸入模塊16產生至少一個輸入框。當用戶向輸入框輸入資料,即為發生了輸入事件。輸入模塊16偵測到輸入事件之後,獲取輸入框內的資料。輸入框可以是客戶端中的一個控件。
在本實施方式中,輸入模塊16可以給用戶輸入提示,即在每個輸入框附近提示該輸入框對應的位碼。當用戶知道預設資料時,可以按照提示輸入位碼對應的預設資料中的資料。輸入模塊16可以在至少一個輸入框均發生輸入事件之後,獲取全部輸入框的資料,也可以每當一個 輸入框發生輸入事件,獲取該輸入框的資料。
驗證資料發送模塊18用於將所述至少一個輸入框的資料作為至少一個驗證資料發送給所述伺服器。
在本實施方式中,驗證資料發送模塊18可以在全部輸入框均發生了輸入事件後,便將全部輸入框的資料發送給伺服器,也可以設置有按鈕,在按鈕被觸發後將當前獲取的資料發送給伺服器。
在本實施方式中,驗證資料發送模塊18將輸入框的資料發送給伺服器作為驗證資料。驗證資料用於伺服器判斷當前輸入資料的用戶是否有權限通過客戶端訪問伺服器中的資料。由於輸入模塊16是對應至少一個位碼產生了至少一個輸入框,使得所述至少一個驗證資料中的每個資料與所述至少一個位碼中的一個位碼相對應。
請參閱圖6,本申請實施方式還提供一種資料通信方法。所述資料通信方法包括如下步驟。
步驟S21:接收客戶端發出的通信請求。
在本實施方式中,客戶端向伺服器發出通信請求,表示可能存在用戶通過客戶端登入伺服器,查閱、編輯或使用伺服器中對應所述用戶保存的資料。具體的,舉例為:用戶通過個人電腦登入某網站;用戶使用銀行卡在某商場消費;用戶使用銀行卡在ATM取款機或存/取款機中提取現金;用戶使用網路銀行進行消費,或管理帳戶等等。
在本實施方式中,通信請求可以是字元組成的字元串,其代表客戶端請求與伺服器建立通信,在該通信的基 礎上,客戶端可以訪問伺服器中儲存的資料。
步驟S23:回應通信請求,按照第一預設規則產生至少一個位碼,將附帶有所述至少一個位碼的信息發送給所述客戶端。
在本實施方式中,可以表示預設資料的數位的序號,預設資料的位碼的排序方式可以從左至右,也可以從右至左。具體的,舉例為:所述預設資料可以為754962,若所述位碼的排序方式是從左至右,數字“7”的位碼可以是1,數字“5”的位碼可以是2,以此類推,數字“4”、“9”、“6”和“2”的位碼分別為3、4、5和6;若所述位碼的排序方式是從右至左,數字“2”的位碼可以是1,數字“6”的位碼可以是2,以此類推,數字“9”、“4”、“5”和“7”的位碼分別是3、4、5和6。
在本實施方式中,預設資料為預先設置儲存在伺服器中,用於在客戶端與伺服器建立通信過程中,作為秘鑰使用,即客戶端輸入與伺服器相同的預設資料時,客戶端與伺服器建立通信。預設資料可以是用戶預先設置的密碼,所述預設資料對應用戶的帳號或帳戶名保存,用戶輸入正確帳號和密碼、或帳戶名和密碼可以訪問伺服器內的相關資料。具體的,舉例為:預設資料可以是用戶登錄網站的密碼,用戶在網站的登錄界面輸入帳戶名和密碼,即可登錄網站,從而進一步的操作;預設資料可以是用戶銀行帳戶的密碼,用戶使用帳號和密碼、或帳戶名和密碼可以在 銀行或ATM存取款機辦理業務。在本實施方式中,預設資料的位數可以統一規定固定的數量。
在本實施方式中,第一預設規則用於產生至少一個位碼,位碼的數量和取值均小於或等於預設資料的位數。第一預設規則能夠產生數量和取值均小於或等於預設資料的位數的數字。具體的,舉例為:預設資料的位數為6,所述第一預設規則可以為每次隨機的在1~6之間選擇2個數字,該選中的兩個數字作為位碼。當然,在收到通信請求之後,產生的至少一個位碼的數量並不限於2個,也可以為1個、3個、4個、5個或6個,只要至少一個位碼的數量小於或等於預設資料的位數即可。
步驟S51:接收客戶端發出的至少一個驗證資料。
在本實施方式中,驗證資料用於判斷客戶端是否有權限進一步訪問伺服器的資料。
步驟S53:從所述預設資料中獲取所述至少一個位碼對應的至少一個位資料。
在本實施方式中,伺服器依照至少一個位碼從預設資料中讀取位碼對應的位資料。具體的,舉例為:所述預設資料可以為754962,位碼的排序方式為從左至右,至少一個位碼包括“1”和“4”,位碼“1”對應位資料7,位碼“4”對應位資料9。
步驟S62:將所述至少一個位碼對應的所述預設資料中的位資料和驗證資料進行比對,所述至少一個位碼中每個所述位碼對應的位資料和驗證資料相同時,向所述客戶 端發出成功信息碼。
在本實施方式中,伺服器將每個位碼對應的位資料和驗證資料進行對比,驗證資料與位資料均相同,表明當前用戶有權限通過身份驗證,或有權限登入,或有權限訪問伺服器中的資料。當驗證資料與位資料部分或全部不同時,表明驗證資料時錯誤的,也表明當前用戶沒有權限通過份驗證,或有沒有權限登入,或有沒有權限訪問伺服器中的資料。
在本實施方式中,所述成功信息碼可以是字元或字元串,其可以表示全部位碼對應的位資料和驗證資料均相同。當前客戶端可以進一步訪問伺服器中的資料。具體的,舉例為:用戶通過電腦登入網站,在電腦收到伺服器的成功信息碼之後,電腦會提示登入成功,此時用戶可以通過電腦進一步訪問權限允許範圍內的資料。用戶登入網路銀行,在客戶端收到成功信息碼之後,用戶便可以進行付款等操作。用戶在ATM取款機取款,在ATM取款機收到成功信息碼之後,用戶便可以通過ATM取款機進行取款等操作。
在本申請的一個實施方式中,在步驟S23中:所述至少一個位碼的數量和取值均小於預設資料的位數。
在本實施方式中,第一預設規則將預設資料的位數作為位碼的數量和取值的上限值,即位碼的數量和取值均小於預設資料的位數。第一預設規則可以包括隨機函數,所述隨機函數能夠產生數量和取值均小於預設資料的位數的 數字。具體的,舉例為:預設資料的位數為6,所述第一預設規則可以為每次隨機的在1~6之間選擇數字,選擇數字的數量可以為1個、2個、3個、4個或5個。本實施方式提供的資料通信方法,使得在客戶端與伺服器交互過程中,不會出現完整的密碼,當用戶錯誤訪問釣魚網站或客戶端被植入木馬時,不法分子也難以獲得完整的密碼,有效避免了完整密碼的洩漏。
在本申請的一個實施方式中,所述通信請求附帶有帳戶信息,在步驟S23中:所述至少一個位碼的數量和取值均小於所述帳戶信息對應的預設資料的位數。
在本實施方式中,所述帳戶信息可以包括帳戶名和帳號或二者之一。在伺服器中可以對應帳戶信息儲存有預設資料。具體的,舉例為:用戶在一個網站的帳戶名為“taobaoyonghu”,在登錄該網站時,可以首先收入上述帳戶名並提交給伺服器,伺服器接收到通信請求之後,獲取所述帳戶名“taobaoyonghu”對應的預設資料的位數,產生相應的至少一個位碼並進行後續的步驟。
請參閱圖7,在本申請的一個實施方式中,所述資料通信方法還包括如下步驟。
步驟S64:按照第二預設規則產生的驗證碼,將所述驗證碼發送給預設終端。
在本實施方式中,第二預設規則用於產生驗證碼。第二預設規則可以為能夠產生隨機數的隨機函數,該隨機函數產生的隨機數即為所述驗證碼。第二預設規則可以為能 夠產生二維碼的二維碼生成器,較佳地其為動態二維碼生成器,所述二維碼或動態二維碼即可以為驗證碼,所述第二預設規則每次產生的二維碼或動態二維碼不相同。第二預設規則還可以為能夠產生條形碼的條形碼生成器,所述條形碼可以為所述驗證碼,第二預設規則每次產生的條形碼不同。
在本實施方式中,預設終端可以為用戶的行動電話。用戶可以預先在伺服器中保存行動電話的號碼,伺服器可以將驗證碼以短信方式發送至所述行動電話。當然,預設終端還可以為軟體,並安裝在用戶使用的設備上,該軟體能夠通過設備接收伺服器發出的驗證碼。
步驟S66:接收所述客戶端發出的待驗證碼。
在本實施方式中,待驗證碼可以是客戶端獲取預設終端接收的驗證碼。
在步驟S62中:將所述至少一個位碼中每個所述位碼對應的位資料和驗證資料進行比對,將所述待驗證碼與所述驗證碼進行比對,所述至少一個位碼中每個所述位碼對應的位資料和驗證資料均相同並且所述待驗證碼與所述驗證碼相同時,向所述客戶端發出成功信息碼。
在本實施方式中,伺服器可以將所述至少一個位碼中每個所述位碼對應的位資料和驗證資料進行比對,以及將待驗證碼和驗證碼進行比對。當所述至少一個位碼中每個所述位碼對應的位資料和驗證資料均相同,並且待驗證碼和驗證碼也相同時,伺服器才向客戶端發出成功信息碼。
在本實施方式中,所述客戶端與伺服器的資料通信方法在隨機的位碼對應的預設資料進行驗證的基礎上,增加了單次有效的驗證碼驗證,如此極大的提高了客戶端與伺服器之間交互的安全性。提升了用戶帳戶和密碼的安全性,能夠有效避免用戶的密碼洩漏,並且能夠有效防止不法分子盜用用戶的帳戶,避免不法分子冒充用戶的身份登錄伺服器損害用戶的利益。
在本申請的一個實施方式中,所述第一預設規則包括將所述預定資料中的至少一個數位設置為保留位,所述第一預設規則產生的所述至少一個位碼不包括所述保留位的位碼。
在本實施方式中,保留位的數量小於預定資料的位數。如此,使得預定資料中作為保留位的位碼不會出現在提供給客戶端的至少一個位碼中。如此實現在客戶端與伺服器進行交互過程中,即使用戶輸入的帳戶和驗證資料被多次攔截,但不法分子始終無法得到完整的預定資料。具體的,舉例為:所述預設資料可以為754962,位碼的排序方式為從左至右,保留位的位碼是“5”和“6”,則第一預設規則在產生至少一個位碼時,不會出現“5”和“6”,使得客戶端與伺服器的建立通信的過程中,不會出現輸入預設資料中的6和2的情況,即使木馬或釣魚網站等多次獲取客戶端與伺服器建立通信時的資料,也無法獲知預定資料的第5位和第6位資料。所述預設資料可以用作為密碼,本實施方式提供的客戶端與伺服器的資料通 信方法,能夠有效提升密碼安全。
請參閱圖8,本申請實施方式還提供一種伺服器12。伺服器12包括:請求接收模塊20、回應模塊22、驗證資料接收模塊24、比對模塊26。
請求接收模塊20用於接收客戶端發出的通信請求。
在本實施方式中,客戶端向伺服器發出通信請求,表示可能存在用戶通過客戶端登入伺服器,查閱、編輯或使用伺服器中對應所述用戶保存的資料。具體的,舉例為:用戶通過個人電腦登入某網站;用戶使用銀行卡在某商場消費;用戶使用銀行卡在ATM取款機或存/取款機中提取現金;用戶使用網路銀行進行消費,或管理帳戶等等。
在本實施方式中,通信請求可以是字元組成的字元串,其代表客戶端請求與伺服器建立通信,在該通信的基礎上,客戶端可以訪問伺服器中儲存的資料。
回應模塊22用於回應通信請求,按照第一預設規則產生至少一個位碼,將附帶有所述至少一個位碼的信息發送給所述客戶端。
在本實施方式中,位碼可以表示預設資料的數位的序號,預設資料的位碼的排序方式可以從左至右,也可以從右至左。具體的,舉例為:所述預設資料可以為754962,若所述位碼的排序方式是從左至右,數字“7”的位碼可以是1,數字“5”的位碼可以是2,以此類推,數字“4”、“9”、“6”和“2”的位碼分別為3、4、5和6;若所述位碼的排序方式是從右至左,數字“2”的 位碼可以是1,數字“6”的位碼可以是2,以此類推,數字“9”、“4”、“5”和“7”的位碼分別是3、4、5和6。
在本實施方式中,預設資料為預先設置儲存在伺服器中,用於在客戶端與伺服器建立通信過程中,作為秘鑰使用,即客戶端輸入與伺服器相同的預設資料時,客戶端與伺服器建立通信。預設資料可以是用戶預先設置的密碼,所述預設資料對應用戶的帳號或帳戶名保存,用戶輸入正確帳號和密碼、或帳戶名和密碼可以訪問伺服器內的相關資料。具體的,舉例為:預設資料可以是用戶登錄網站的密碼,用戶在網站的登錄界面輸入帳戶名和密碼,即可登錄網站,從而進一步的操作;預設資料可以是用戶銀行帳戶的密碼,用戶使用帳號和密碼、或帳戶名和密碼可以在銀行或ATM存取款機辦理業務。在本實施方式中,預設資料的位數可以統一規定固定的數量。
在本實施方式中,第一預設規則用於產生至少一個位碼,位碼的數量和取值均小於或等於預設資料的位數。具體的,舉例為:預設資料的位數為6,所述第一預設規則可以為每次隨機的在1~6之間選擇2個數字,該選中的兩個數字作為位碼。當然,在收到通信請求之後,產生的至少一個位碼的數量並不限於2個,也可以為1個、3個、4個、5個或6個,只要至少一個位碼的數量小於或等於預設資料的位置即可。
驗證資料接收模塊24用於接收客戶端發出的至少一 個驗證資料。
在本實施方式中,驗證資料用於判斷客戶端是否有權限進一步訪問伺服器的資料。
比對模塊26用於將所述至少一個位碼對應的所述預設資料中的位資料和驗證資料進行比對,所述至少一個位碼對應的位資料和驗證資料相同時,向所述客戶端發出成功信息碼。
在本實施方式中,伺服器將每個位碼對應的位資料和驗證資料進行對比,驗證資料與位資料均相同,表明當前用戶有權限通過身份驗證,或有權限登入,或有權限訪問伺服器中的資料。當驗證資料與位資料部分或全部不同時,表明驗證資料時錯誤的,也表明當前用戶沒有權限通過份驗證,或有沒有權限登入,或有沒有權限訪問伺服器中的資料。
在本實施方式中,所述成功信息碼可以是字元或字元串,其可以表示全部位碼對應的位資料和驗證資料均相同。當前客戶端可以進一步訪問伺服器中的資料。具體的,舉例為:用戶通過電腦登入網站,在電腦收到伺服器的成功信息碼之後,電腦會提示登入成功,此時用戶可以通過電腦進一步訪問權限允許範圍內的資料。用戶登入網路銀行,在客戶端收到成功信息碼之後,用戶便可以進行付款等操作。用戶在ATM取款機取款,在ATM取款機收到成功信息碼之後,用戶便可以通過ATM取款機進行取款等操作。
由以上本申請實施方式提供的技術方案可見,本申請通過預設規則使用戶在進行驗證身份的過程中,輸入預設資料中指定的幾個數位的資料,用戶每次進行驗證身份時,要求用戶輸入的內容可以發生變化,如此實現保障用戶的密碼安全,降低了密碼被破解的風險。
雖然通過實施方式描繪了本申請,本領域普通技術人員知道,本申請有許多變形和變化而不脫離本申請的精神,希望所附的申請專利範圍包括這些變形和變化而不脫離本申請的精神。

Claims (15)

  1. 一種資料通信方法,其特徵在於,其包括:客戶端向伺服器發出通信請求;該伺服器回應該通信請求,按照第一預設規則產生至少一個位碼,該伺服器將附帶有該至少一個位碼的信息發送給該客戶端;該客戶端產生數量與該至少一個位碼對應的至少一個輸入框,偵測該至少一個輸入框的輸入事件,在發生輸入事件時獲取該至少一個輸入框的資料;該客戶端將該至少一個輸入框的資料作為至少一個驗證資料發送給該伺服器;該伺服器從該預設資料中獲取該至少一個位碼對應的至少一個位資料;該伺服器將該至少一個位碼中每個該位碼對應的位資料和驗證資料進行比對,該至少一個位碼中每個該位碼對應的位資料和驗證資料均相同時,該伺服器向該客戶端發出成功信息碼。
  2. 如申請專利範圍第1項所述的方法,其中:該至少一個位碼的數量和取值均小於預設資料的位數。
  3. 如申請專利範圍第1項所述的方法,其中,該客戶端發出的通信請求附帶有帳戶信息,在產生位碼的步驟中:該至少一個位碼的數量和取值均小於該帳戶信息對應的預設資料的位數。
  4. 如申請專利範圍第1項所述的方法,其中,該資 料通信方法還包括:該伺服器按照第二預設規則產生的驗證碼,將該驗證碼發送給預設終端;該客戶端獲取該預設終端接收的該驗證碼,將該驗證碼作為待驗證碼發送給該伺服器;在該伺服器向該客戶端發出成功信息碼的步驟中:該伺服器將該至少一個位碼中每個該位碼對應的位資料和驗證資料進行比對,將該待驗證碼與該驗證碼進行比對,該至少一個位碼中每個該位碼對應的位資料和驗證資料均相同並且該待驗證碼與該驗證碼相同時,該伺服器向該客戶端發出成功信息碼。
  5. 如申請專利範圍第1項所述的方法,其中,該第一預設規則包括將該預定資料中的至少一個數位設置為保留位,該第一預設規則產生的該至少一個位碼不包括該保留位的位碼。
  6. 一種資料通信系統,其特徵在於:所述資料通信系統包括客戶端和伺服器,所述客戶端包括:請求發送模塊,用於向該伺服器發出通信請求;位碼接收模塊,用於接收該伺服器發出的附帶有至少一個位碼的信息;輸入模塊,用於產生數量與該至少一個位碼對應的至少一個輸入框,偵測該至少一個輸入框的輸入事件,在發生輸入事件時獲取該至少一個輸入框的資料;驗證資料發送模塊,用於將該至少一個輸入框的資料 作為至少一個驗證資料發送給該伺服器;該伺服器包括:請求接收模塊,用於接收該客戶端發出的該通信請求;回應模塊,用於回應該通信請求,按照第一預設規則產生至少一個位碼,將附帶有該至少一個位碼的信息發送給該客戶端;驗證資料接收模塊,用於接收該客戶端發出的至少一個驗證資料;比對模塊,用於將該至少一個位碼對應的該預設資料中的位資料和驗證資料進行比對,該至少一個位碼對應的位資料和驗證資料相同時,向該客戶端發出成功信息碼。
  7. 一種資料通信方法,其特徵在於,該資料通信方法包括:向伺服器發出通信請求;接收該伺服器發送的信息,獲取該信息附帶的至少一個位碼;產生數量與該至少一個位碼對應的至少一個輸入框,偵測該至少一個輸入框的輸入事件,在發生輸入事件時獲取該至少一個輸入框的資料;將該至少一個輸入框的資料作為至少一個驗證資料發送給該伺服器。
  8. 如申請專利範圍第7項所述的方法,其中,該通信請求附帶有帳戶信息。
  9. 如申請專利範圍第7項所述的方法,其中,該資料通信方法還包括:獲取預設終端接收的驗證碼,將該驗證碼作為待驗證碼發送給該伺服器。
  10. 一種客戶端,其特徵在於,該客戶端包括:請求發送模塊,用於向伺服器發出通信請求;位碼接收模塊,用於接收該伺服器發出的附帶有至少一個位碼的信息;輸入模塊,用於產生數量與該至少一個位碼對應的至少一個輸入框,偵測該至少一個輸入框的輸入事件,在發生輸入事件時獲取該至少一個輸入框的資料;驗證資料發送模塊,用於將該至少一個輸入框的資料作為至少一個驗證資料發送給該伺服器。
  11. 一種資料通信方法,其特徵在於,該方法包括:接收客戶端發出的通信請求;回應通信請求,按照第一預設規則產生至少一個位碼,將附帶有該至少一個位碼的信息發送給該客戶端;接收客戶端發出的至少一個驗證資料;從該預設資料中獲取該至少一個位碼對應的至少一個位資料;將該至少一個位碼對應的該預設資料中的位資料和驗證資料進行比對,該至少一個位碼中每個該位碼對應的位資料和驗證資料相同時,向該客戶端發出成功信息碼。
  12. 如申請專利範圍第11項所述的方法,其中:該至少一個位碼的數量和取值均小於預設資料的位數。
  13. 如申請專利範圍第11項所述的方法,其中,該通信請求附帶有帳戶信息,在產生位碼的步驟中,該至少一個位碼的數量和取值均小於該帳戶信息對應的預設資料的位數。
  14. 如申請專利範圍第11項所述的方法,其中,該方法還包括:按照第二預設規則產生的驗證碼,將該驗證碼發送給預設終端;在向客戶端發出成功信息碼的步驟中:該伺服器將該至少一個位碼中每個該位碼對應的位資料和驗證資料進行比對,將該待驗證碼與該驗證碼進行比對,該至少一個位碼中每個該位碼對應的位資料和驗證資料均相同並且該待驗證碼與該驗證碼相同時,該伺服器向該客戶端發出成功信息碼。
  15. 一種伺服器,其特徵在於,該伺服器包括:請求接收模塊,用於接收客戶端發出的通信請求;回應模塊,用於回應該通信請求,按照第一預設規則產生至少一個位碼,將附帶有該至少一個位碼的信息發送給該客戶端;驗證資料接收模塊,用於接收客戶端發出的至少一個驗證資料;比對模塊,用於將該至少一個位碼對應的該預設資料中的位資料和驗證資料進行比對,該至少一個位碼對應的位資料和驗證資料相同時,向該客戶端發出成功信息碼。
TW103134016A 2014-05-30 2014-09-30 Data communication method and system, client and server TWI668586B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
??201410239154.6 2014-05-30
CN201410239154.6A CN105429928A (zh) 2014-05-30 2014-05-30 数据通信方法和***及客户端和服务器

Publications (2)

Publication Number Publication Date
TW201544983A true TW201544983A (zh) 2015-12-01
TWI668586B TWI668586B (zh) 2019-08-11

Family

ID=54699821

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103134016A TWI668586B (zh) 2014-05-30 2014-09-30 Data communication method and system, client and server

Country Status (7)

Country Link
US (1) US9807103B2 (zh)
JP (1) JP6682453B2 (zh)
KR (1) KR20170013231A (zh)
CN (1) CN105429928A (zh)
HK (1) HK1221347A1 (zh)
TW (1) TWI668586B (zh)
WO (1) WO2015184171A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411812B (zh) 2015-07-27 2019-10-08 阿里巴巴集团控股有限公司 用户身份的验证方法、***和验证服务器
CN107122628A (zh) * 2016-02-24 2017-09-01 阿里巴巴集团控股有限公司 应用程序的图标处理方法及装置、终端
CN105703908A (zh) * 2016-03-24 2016-06-22 珠海市小源科技有限公司 验证码输入方法及装置
CN108829838B (zh) * 2018-06-19 2021-11-26 彭建超 一种账户信息批量处理方法及服务器
CN112579984B (zh) * 2019-09-30 2024-03-15 广州艾美网络科技有限公司 多媒体信息认证方法、***、计算机设备和存储介质
CN111144875B (zh) * 2019-11-30 2023-04-18 飞天诚信科技股份有限公司 一种终端设备及其工作方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5233655A (en) 1991-02-19 1993-08-03 Shapiro Sanford S Data access verification system
US7392388B2 (en) * 2000-09-07 2008-06-24 Swivel Secure Limited Systems and methods for identity verification for secure transactions
JP4232365B2 (ja) * 2001-10-23 2009-03-04 沖電気工業株式会社 カード利用確認システム
US7660771B2 (en) * 2003-10-30 2010-02-09 Wells Fargo Bank, N.A. Express check conversion
CA2556148C (en) * 2004-02-23 2014-04-29 Verisign, Inc. Token authentication system and method
US20100088227A1 (en) 2006-11-16 2010-04-08 NETI UEPS Technologies Inc. Secure Financial Transactions
US20090031407A1 (en) * 2007-07-24 2009-01-29 Shaobo Kuang Method and system for security check or verification
TW200928991A (en) * 2007-12-17 2009-07-01 Hann-Tzong Chern A simple mechanism to prevent the credit card being used by an illegal user
JP2010226336A (ja) * 2009-03-23 2010-10-07 Denso It Laboratory Inc 認証方法および認証装置
US8843757B2 (en) * 2009-11-12 2014-09-23 Ca, Inc. One time PIN generation
US8869255B2 (en) * 2010-11-30 2014-10-21 Forticom Group Ltd Method and system for abstracted and randomized one-time use passwords for transactional authentication
CN102098315A (zh) * 2011-03-02 2011-06-15 中国工商银行股份有限公司 一种客户端安全登录方法、装置及***
GB2502773B (en) * 2012-05-28 2015-03-11 Swivel Secure Ltd Method and system for secure user identification
CN102891841B (zh) * 2012-08-17 2016-03-30 广东世纪网通信设备有限公司 一种网上银行帐号锁定的方法、装置以及***

Also Published As

Publication number Publication date
HK1221347A1 (zh) 2017-05-26
CN105429928A (zh) 2016-03-23
JP6682453B2 (ja) 2020-04-15
TWI668586B (zh) 2019-08-11
WO2015184171A1 (en) 2015-12-03
US20150350224A1 (en) 2015-12-03
US9807103B2 (en) 2017-10-31
JP2017519278A (ja) 2017-07-13
KR20170013231A (ko) 2017-02-06

Similar Documents

Publication Publication Date Title
US11405380B2 (en) Systems and methods for using imaging to authenticate online users
US9741033B2 (en) System and method for point of sale payment data credentials management using out-of-band authentication
CN106464673B (zh) 用于验证装置注册的增强的安全性
EP1829281B1 (en) Authentication device and/or method
CN112425114B (zh) 受公钥-私钥对保护的密码管理器
US9756056B2 (en) Apparatus and method for authenticating a user via multiple user devices
US20160127134A1 (en) User authentication system and method
WO2016114841A1 (en) A multi-user strong authentication token
TWI668586B (zh) Data communication method and system, client and server
US9124571B1 (en) Network authentication method for secure user identity verification
JP2006294035A (ja) 移動装置を用いる認証サービスのための方法及び装置
US11665156B2 (en) Method and system for securely authenticating a user by an identity and access service using a pictorial code and a one-time code
JP2018502410A (ja) 共通識別データ置換システムおよび方法
US20170011393A1 (en) Personal identification and anti-theft system and method using disposable random key
KR20220167366A (ko) 온라인 서비스 서버와 클라이언트 간의 상호 인증 방법 및 시스템
US20130151411A1 (en) Digital authentication and security method and system
CN103929310A (zh) 一种手机客户端口令统一认证方法及***
EP2916509B1 (en) Network authentication method for secure user identity verification
US20160021102A1 (en) Method and device for authenticating persons
Kaur et al. A comparative analysis of various multistep login authentication mechanisms
CN113794571A (zh) 一种基于动态口令的认证方法、装置及介质
KR101879842B1 (ko) Otp를 이용한 사용자 인증 방법 및 시스템
Singh et al. Towards a Two Factor Authentication Method Using Zero-Knowledge Protocol in Online Banking Services
KR20200032857A (ko) 디지털인감을 이용한 안전한 비밀번호 인증 프로토콜