TW201742399A - 資料安全傳輸方法、客戶端及服務端方法、裝置及系統 - Google Patents

資料安全傳輸方法、客戶端及服務端方法、裝置及系統 Download PDF

Info

Publication number
TW201742399A
TW201742399A TW106107246A TW106107246A TW201742399A TW 201742399 A TW201742399 A TW 201742399A TW 106107246 A TW106107246 A TW 106107246A TW 106107246 A TW106107246 A TW 106107246A TW 201742399 A TW201742399 A TW 201742399A
Authority
TW
Taiwan
Prior art keywords
client
server
key
identity
access request
Prior art date
Application number
TW106107246A
Other languages
English (en)
Other versions
TWI721122B (zh
Inventor
ying fang Fu
Shuan Lin Liu
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 TW201742399A publication Critical patent/TW201742399A/zh
Application granted granted Critical
Publication of TWI721122B publication Critical patent/TWI721122B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • 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/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • 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/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Abstract

本發明揭露了一種資料安全傳輸方法,同時揭露了一種用於資料安全傳輸的服務端方法及裝置,一種用於資料安全傳輸的客戶端方法及裝置,以及一種資料安全傳輸系統。所述資料安全傳輸方法,包括:客戶端發送對服務端的存取請求;服務端接收所述存取請求後,與客戶端分別從雙方執行量子密鑰分發操作產生的相同密鑰序列中獲取相同的第一密鑰,作為各自的資料加密密鑰;客戶端與服務端利用各自的資料加密密鑰進行資料安全傳輸。本發明提供的上述方法,充分利用了量子密鑰分發技術的優越性,有效避免了非對稱密鑰交換算法所具有的分發安全隱患、以及效率低下的問題,能夠安全、高效地實現資料加密密鑰的協商過程,為資料安全傳輸提供有力保障。

Description

資料安全傳輸方法、客戶端及服務端方法、裝置及系統
本發明係有關一種資料安全技術,尤其是一種資料安全傳輸方法。本發明同時涉及一種用於資料安全傳輸的服務端方法及裝置,一種用於資料安全傳輸的客戶端方法及裝置,以及一種資料安全傳輸系統。
隨著Internet技術的發展,近些年基於WEB服務進行的商務活動日益頻繁,大量資料在客戶端與服務端之間傳輸,為了保障資料傳輸的安全性,特別是為了保障網路交易、網路支付、網路銀行等金融領域的敏感資訊的安全傳輸,通常採用非對稱密鑰交換算法在客戶端與服務端之間進行資料加密密鑰(對稱密鑰)的協商(也稱分發),然後雙方再基於資料加密密鑰進行資料的安全傳輸。
以HTTPS協議為例,在進行資料安全傳輸之前,客戶端和服務端通常要進行密鑰協商,客戶端將其產生的隨機密碼串(也稱PreMasterKey)採用服務端的公鑰加密後傳輸給服務端,服務端採用私鑰解密後獲取隨機密碼串,隨後雙方基於已獲取的隨機密碼串、採用相同的算法產生 會話密鑰,雙方採用會話密鑰實現後續的資料安全傳輸。
不難看出,非對稱密鑰交換算法是現有客戶端/服務端架構下保障資料安全傳輸的基石,但是基於非對稱密鑰交換算法的資料傳輸過程存在以下問題:
1)資料加密密鑰分發過程耗時長。因為非對稱加密算法的複雜性、導致加密和解密的速度通常都比較慢,仍以HTTPS協議為例,在一次完全的TLS握手過程中,密鑰交換時的非對稱解密計算量占整個握手過程的90%以上,CPU計算資源消耗較大,導致整個資料加密密鑰分發過程耗時長、效率低。
2)資料加密密鑰存在被洩露的風險。對於非對稱密鑰交換算法來說,其安全性比對稱加密算法高、難以破解,但是隨著雲端計算、量子計算等在計算能力方面的飛速提高,可以在多項式時間內解決大數分解等難題,提高破解成功的機率,導致資料加密密鑰存在被破解的風險,基於資料加密密鑰傳輸的資料的安全性自然也無法得到保障。
本發明實施例提供一種資料安全傳輸方法,以解決現有基於客戶端/服務端架構的資料安全傳輸技術存在的資料加密密鑰分發過程耗時長、以及安全性低的問題。本發明實施例還提供一種用資料安全傳輸的服務端方法和裝置,一種用於資料安全傳輸的客戶端方法及裝置,以及一 種資料安全傳輸系統。
本發明提供一種資料安全傳輸方法,包括:客戶端發送對服務端的存取請求;服務端接收所述存取請求後,與客戶端分別從雙方執行量子密鑰分發操作產生的相同密鑰序列中獲取相同的第一密鑰,作為各自的資料加密密鑰;客戶端與服務端利用各自的資料加密密鑰進行資料安全傳輸。
可選的,在所述服務端接收所述存取請求後,包括:所述客戶端與所述服務端基於各自儲存的、所述客戶端的相同身份密鑰,執行身份驗證操作,並當所述身份驗證操作的結果為通過時,執行所述服務端與所述客戶端獲取各自的資料加密密鑰的步驟。
可選的,所述存取請求的內容包含:所述客戶端的客戶端標識;所述客戶端與所述服務端基於各自儲存的、所述客戶端的相同身份密鑰,執行身份驗證操作,包括:所述服務端根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;至少根據查找得到的身份密鑰計算散列值,作為用於證實服務端身份的服務端驗證資訊;將至少包含所述服務端驗證資訊的響應資訊發送給所述客戶端;所述客戶端接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據儲 存的身份密鑰計算散列值;將計算得到的散列值與接收到的響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
可選的,在客戶端發送對服務端的存取請求之前,包括:所述客戶端至少根據儲存的身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊;所述客戶端發送對服務端的存取請求是指,客戶端發送包含所述客戶端的客戶端標識,以及所述客戶端驗證資訊的存取請求;所述客戶端與所述服務端基於各自儲存的、所述客戶端的相同身份密鑰,執行身份驗證操作,包括:所述服務端根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;採用與所述客戶端計算客戶端驗證資訊相同的方式,至少根據查找得到的身份密鑰計算散列值;將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
可選的,在客戶端發送對服務端的存取請求之前,包括:所述客戶端讀取儲存的身份密鑰;用所述身份密鑰作為對稱密鑰、對採用預設方式產生的動態數值進行加密,得到用於驗證所述服務端身份的密文;所述客戶端發送對服務端的存取請求是指,發送至少包含所述客戶端的客戶端標識、以及所述密文的存取請求; 所述客戶端與所述服務端基於各自儲存的、所述客戶端的相同身份密鑰,執行身份驗證操作,包括:所述服務端根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;用查找得到的身份密鑰對所述存取請求包含的密文解密,獲取解密後的動態數值;至少根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值,作為用於證實服務端身份的服務端驗證資訊;將包含所述服務端的服務端標識以及所述服務端驗證資訊的響應資訊發送給所述客戶端;所述客戶端接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據所述響應資訊包含的服務端標識以及所述產生的動態數值計算散列值;將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
可選的,在客戶端讀取儲存的身份密鑰之後,還包括:根據所述客戶端的客戶端標識以及所述身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊;所述客戶端發送的存取請求的內容還包含:所述客戶端驗證資訊;所述服務端在身份密鑰映射關係表中查找對應的身份密鑰之後,還包括:採用與所述客戶端計算客戶端驗證資訊相同的方式,根據接收到的存取請求包含的客戶端標識 以及查找得到的身份密鑰計算散列值;將計算得到的散列值與接收到的存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,執行用查找得到的身份密鑰對所述存取請求包含的密文解密,獲取解密後的動態數值的步驟。
可選的,所述服務端至少根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值,包括:所述服務端根據所述存取請求包含的客戶端標識,獲取與所述客戶端同步更新的種子數值;根據所述服務端的服務端標識、所述解密後的動態數值以及所述種子數值計算散列值;所述客戶端至少根據所述響應資訊包含的服務端標識以及所述產生的動態數值計算散列值,包括:根據所述響應資訊包含的服務端標識,獲取與所述服務端同步更新的種子數值;根據所述響應資訊包含的服務端標識、所述產生的動態數值以及所述種子數值計算散列值。
可選的,所述服務端與所述客戶端分別從雙方執行量子密鑰分發操作產生的相同密鑰序列中獲取的資訊還包括:相同的第二密鑰;所述方法還包括:所述客戶端與所述服務端分別用所述第二密鑰更新各自儲存的所述客戶端的身份密鑰。
可選的,所述服務端與所述客戶端分別從雙方執行量子密鑰分發操作產生的密鑰序列中、至少獲取相同的第一密鑰,包括: 所述服務端與所述客戶端執行量子密鑰分發操作,產生相同的密鑰序列;所述服務端與所述客戶端按照預先確定的獲取方式,從各自產生的所述密鑰序列中分別獲取所述第一密鑰。
可選的,所述客戶端與服務端利用各自的資料加密密鑰進行資料安全傳輸,包括:所述服務端將利用資料加密密鑰加密後的資料發送給所述客戶端,所述客戶端利用資料加密密鑰對來自所述服務端的密文解密、以獲取明文資料;及/或,所述客戶端將利用資料加密密鑰加密後的資料發送給所述服務端,所述服務端利用資料加密密鑰對來自所述客戶端的密文解密、以獲取明文資料。
可選的,所述方法應用於基於Web服務的資料傳輸應用場景中。
此外,本發明還提供一種用於資料安全傳輸的服務端方法,包括:接收來自客戶端的存取請求;採用與所述客戶端預先確定的獲取方式,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;利用所述資料加密密鑰與所述客戶端進行資料安全傳輸。
可選的,在所述接收來自客戶端的存取請求後,包括: 基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,並當所述身份驗證操作的結果為通過時,執行獲取資料加密密鑰的步驟;其中,所述對應於所述客戶端的身份密鑰與所述客戶端儲存的身份密鑰相同。
可選的,所述基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,包括:根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;至少根據查找得到的身份密鑰計算散列值,作為用於證實服務端身份的服務端驗證資訊;將至少包含所述服務端驗證資訊的響應資訊發送給所述客戶端;並在通過所述客戶端的驗證後,判定所述身份驗證操作的結果為通過。
可選的,所述基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,包括:根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;採用與所述客戶端計算客戶端驗證資訊相同的方式,至少根據查找得到的身份密鑰計算散列值;將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
可選的,所述基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,包括: 根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;用查找得到的身份密鑰、對所述存取請求包含的用於驗證服務端身份的密文解密,獲取解密後的動態數值;至少根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值,作為用於證實服務端身份的服務端驗證資訊;將包含所述服務端的服務端標識以及所述服務端驗證資訊的響應資訊發送給所述客戶端,並在通過所述客戶端的驗證後,判定所述身份驗證操作的結果為通過。
可選的,在身份密鑰映射關係表中查找對應的身份密鑰之後,還包括:採用與所述客戶端計算客戶端驗證資訊相同的方式,根據所述存取請求包含的客戶端標識以及查找得到的身份密鑰計算散列值;將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,執行用查找得到的身份密鑰、對所述存取請求包含的用於驗證服務端身份的密文解密,獲取解密後的動態數值的步驟。
可選的,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取的資訊還包括:第二密鑰;所述方法還包括:用所述第二密鑰更新本地儲存的對應於所述客戶端的身份密鑰。
相應的,本發明還提供一種用於資料安全傳輸的服務 端裝置,包括:存取請求接收單元,用於接收來自客戶端的存取請求;服務端資料加密密鑰獲取單元,用於採用與所述客戶端預先確定的獲取方式,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;服務端安全傳輸單元,用於利用所述資料加密密鑰與所述客戶端進行資料安全傳輸。
可選的,所述裝置還包括:服務端身份驗證單元,用於在所述存取請求接收單元接收存取請求後,基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,並當所述身份驗證操作的結果為通過時,觸發所述服務端資料加密密鑰獲取單元工作;其中,所述對應於所述客戶端的身份密鑰與所述客戶端儲存的身份密鑰相同。
可選的,所述服務端資料加密密鑰獲取單元,具體用於採用與所述客戶端預先確定的獲取方式,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取作為資料加密密鑰的第一密鑰、以及第二密鑰;所述裝置還包括:服務端身份密鑰更新單元,用於用所述第二密鑰更新本地儲存的對應於所述客戶端的身份密鑰。
此外,本發明還提供一種用於資料安全傳輸的客戶端 方法,包括:發送對服務端的存取請求;採用與所述服務端預先確定的獲取方式,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;利用所述資料加密密鑰與所述服務端進行資料安全傳輸。
可選的,在發送對服務端的存取請求之後,包括:基於本地儲存的身份密鑰執行身份驗證操作,並當所述身份驗證操作的結果為通過時,執行獲取資料加密密鑰的步驟;其中,所述本地儲存的身份密鑰與所述服務端儲存的對應於所述客戶端的身份密鑰相同。
可選的,所述存取請求的內容包含:所述客戶端的客戶端標識;所述基於本地儲存的身份密鑰執行身份驗證操作,包括:接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據本地儲存的身份密鑰計算散列值;將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
可選的,在發送對服務端的存取請求之前,包括:至少根據儲存的身份密鑰計算散列值,作為用於證實 所述客戶端身份的客戶端驗證資訊;所述發送對服務端的存取請求是指,發送包含所述客戶端的客戶端標識,以及所述客戶端驗證資訊的存取請求;所述基於本地儲存的身份密鑰執行身份驗證操作,包括:判斷基於本地儲存的身份密鑰產生的所述客戶端驗證資訊是否通過所述服務端的驗證,若是,判定所述身份驗證操作的結果為通過。
可選的,在發送對服務端的存取請求之前,包括:讀取本地儲存的身份密鑰;用所述身份密鑰作為對稱密鑰、對採用預設方式產生的動態數值進行加密,得到用於驗證所述服務端身份的密文;所述發送對服務端的存取請求是指,發送至少包含所述客戶端的客戶端標識、以及所述密文的存取請求;所述基於本地儲存的身份密鑰執行身份驗證操作,包括:接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據所述響應資訊包含的服務端標識以及所述產生的動態數值計算散列值;將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
可選的,在讀取儲存的身份密鑰之後,在發送對服務端的存取請求之前,還包括:根據所述客戶端的客戶端標識以及所述身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊;所述發送對服務端的存取請求是指,發送包含所述客戶端的客戶端標識、所述客戶端驗證資訊、以及所述密文的存取請求。
可選的,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取的資訊還包括:第二密鑰;所述方法還包括:用所述第二密鑰更新所述本地儲存的身份密鑰。
相應的,本發明還提供一種用於資料安全傳輸的客戶端裝置,包括:存取請求發送單元,用於發送對服務端的存取請求;客戶端資料加密密鑰獲取單元,用於採用與所述服務端預先確定的獲取方式,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;客戶端安全傳輸單元,用於利用所述資料加密密鑰與所述服務端進行資料安全傳輸。
可選的,所述裝置還包括:客戶端身份驗證單元,用於當所述存取請求發送單元發送存取請求後,基於本地儲存的身份密鑰執行身份驗證操作,並當所述身份驗證操作的結果為通過時,觸發所述 客戶端資料加密密鑰獲取單元工作;其中,所述本地儲存的身份密鑰與所述服務端儲存的對應於所述客戶端的身份密鑰相同。
可選的,所述客戶端資料加密密鑰獲取單元,具體用於採用與所述服務端預先確定的獲取方式,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取作為資料加密密鑰的第一密鑰、以及第二密鑰;所述裝置還包括:客戶端身份密鑰更新單元,用於用所述第二密鑰更新所述本地儲存的身份密鑰。
此外,本發明還提供一種資料安全傳輸系統,包括:根據上述任意一項所述的用於資料安全傳輸的服務端裝置,和根據上述任意一項所述的用於資料安全傳輸的客戶端裝置。
與現有技術相比,本發明具有以下優點:本發明提供的資料安全傳輸方法,客戶端發送對服務端的存取請求;服務端接收所述存取請求後,與客戶端分別從雙方執行量子密鑰分發操作產生的相同密鑰序列中獲取相同的第一密鑰,作為各自的資料加密密鑰;客戶端與服務端利用各自的資料加密密鑰進行資料安全傳輸。本發明提供的資料安全傳輸方法,充分利用了量子密鑰分發技術的優越性,客戶端和服務端從執行量子密鑰分發操作產生的相同密鑰序列中選取相同密鑰作為資料加密密鑰,有效避免了非對稱密鑰交換算法所具有的分發安全隱患、以及解密耗時長、效率低下的問題,能夠安全、高效地實現 資料加密密鑰的協商過程,為資料安全傳輸提供有力保障。
101‧‧‧步驟
102‧‧‧步驟
103‧‧‧步驟
501‧‧‧步驟
502‧‧‧步驟
503‧‧‧步驟
601‧‧‧存取請求接收單元
602‧‧‧服務端資料加密密鑰獲取單元
603‧‧‧服務端安全傳輸單元
701‧‧‧步驟
702‧‧‧步驟
703‧‧‧步驟
801‧‧‧存取請求發送單元
802‧‧‧客戶端資料加密密鑰獲取單元
803‧‧‧客戶端安全傳輸單元
901‧‧‧服務端裝置
902‧‧‧用於資料安全傳輸的客戶端裝置
圖1是本發明的一種資料安全傳輸方法的實施例的流程圖;圖2是本發明實施例提供的基於客戶端密鑰對服務端身份進行驗證的處理流程圖;圖3是本發明實施例提供的基於客戶端密鑰對客戶端身份進行驗證的處理流程圖;圖4是本發明實施例提供的基於客戶端密鑰依次對客戶端身份及服務端身份進行驗證的處理流程圖;圖5是本發明的一種用於資料安全傳輸的服務端方法的實施例的流程圖;圖6是本發明的一種用於資料安全傳輸的服務端裝置的實施例的示意圖;圖7是本發明的一種用於資料安全傳輸的客戶端方法的實施例的流程圖;圖8是本發明的一種用於資料安全傳輸的客戶端裝置的實施例的示意圖;圖9是本發明的一種資料安全傳輸系統的實施例的示意圖;圖10是本發明實施例提供的資料安全傳輸系統的交互流程示意圖。
在下面的描述中闡述了很多具體細節以便於充分理解本發明。但是,本發明能夠以很多不同於在此描述的其它方式來實施,本領域技術人員可以在不違背本發明內涵的情況下做類似推廣,因此,本發明不受下面揭露的具體實施的限制。
在本發明中,分別提供了一種資料安全傳輸方法,一種用於資料安全傳輸的服務端方法及裝置,一種用於資料安全傳輸的客戶端方法及裝置,以及一種資料安全傳輸系統,在下面的實施例中逐一進行詳細說明。
在本發明的技術方案中,量子密鑰分發操作是指,參與量子密鑰分發操作的雙方遵循量子密鑰分發協議,經過原始密鑰協商、密鑰篩選和糾錯、隱私放大等處理流程後,雙方產生相同的隨機密鑰序列的操作過程;密鑰序列,是指由若干密鑰比特組成的序列;資料加密密鑰是指,用於對資料進行加解密操作的對稱密鑰。
參考圖1,其為本發明的一種資料安全傳輸方法的實施例的流程圖,所述方法包括如下步驟:
步驟101、客戶端發送對服務端的存取請求。
服務端通常可以為客戶端提供各種服務、以滿足服務端的需求,以Web服務端為例,可以為客戶端提供資訊檢索服務、金融服務等。當用戶或者某個應用需要使用服務端提供的服務時,可以向客戶端發送指令並提供待存取 服務端的相關資訊,例如:服務端的位址資訊等,從而客戶端根據接收到的指令發送對服務端的存取請求。
步驟102、服務端接收所述存取請求後,與客戶端分別從雙方執行量子密鑰分發操作產生的相同密鑰序列中獲取相同的第一密鑰,作為各自的資料加密密鑰。
服務端接收所述存取請求後,為了保障資料的安全傳輸,服務端與客戶端通常可以執行密鑰協商操作,以使雙方獲取相同的資料加密密鑰。在本實施例中,所述客戶端與所述服務端沒有採用常規的非對稱密鑰交換算法,而是分別從雙方執行量子密鑰分發操作產生的相同密鑰序列中獲取相同的第一密鑰,作為各自的資料加密密鑰。
所述量子密鑰分發操作是指,參與密鑰分發操作的雙方遵循量子密鑰分發協議產生相同的密鑰序列的過程,所述量子密鑰分發協議包括BB84、B91、B92協議等。量子密鑰分發操作的基本過程如下所述:其中一方(簡稱Alice)隨機地產生一組二進制資料串,根據資料串選擇基矢製備相應編碼的量子態,並通過量子信道發送給另一方(簡稱Bob),Bob接收到量子態後隨機選擇測量基矢進行測量;隨後,Bob通過經典信道揭露自己的測量基矢,從而雙方篩選出基矢相同的原始密鑰;最後雙方通過估計誤碼率、糾錯、隱私放大等處理獲取到無條件安全的相同的密鑰序列。
具體到本實施例,在所述服務端接收所述存取請求後,雙方可以啟動量子密鑰分發過程,通過在量子信道傳 輸量子態、以及利用經典信道交互協商等操作,最終雙方獲取相同的密鑰序列,並採用雙方預先確定的獲取方式,分別從所述密鑰序列中獲取相同的第一密鑰。
例如:雙方都從各自產生的密鑰序列的首個密鑰比特開始,截取相同長度的密鑰比特,從而雙方獲取相同的第一密鑰;或者,由其中一方先從所述密鑰序列中選取出第一密鑰,然後將選取方式,例如:選取長度、選取位置等資訊,通知給另一方,從而另一方也可以採用相同方式從自己的密鑰序列中選取相同的第一密鑰。
在具體實施時,如果所述服務端與所述客戶端各自具有用於儲存雙方執行量子密鑰分發操作產生的密鑰序列的密鑰池,那麼雙方可以先判斷各自密鑰池中是否還存在尚未使用、且滿足長度要求的密鑰序列,若有,則雙方可以採用預先確定的獲取方式從所述密鑰池中獲取相同的第一密鑰,若沒有再啟動量子密鑰分發過程也是可以的。
通過上述操作,所述客戶端和所述服務端獲取了相同的第一密鑰,並分別將獲取的第一密鑰作為各自的資料加密密鑰。此後,所述客戶端和所述服務端就可以執行步驟103,利用各自的資料加密密鑰進行資料安全傳輸。
將本實施例獲取資料加密密鑰的方式與現有技術進行對比,不難看出:現有的基於客戶端/服務端架構的傳輸技術(例如基於HTTPS的傳輸技術),為了保證資料的安全傳輸,通常採用非對稱密鑰交換算法進行資料加密密鑰的協商,存在耗時長、易被破解等缺陷;而在本實施例 中,所述客戶端和所述服務端從執行量子密鑰分發操作產生的相同密鑰序列中選取資料加密密鑰,從而基於量子力學的基本原理,保證了資料加密密鑰協商過程的安全性,而且由於不需要執行非對稱解密過程,因此可以大幅減少計算耗時,提升協商資料加密密鑰的效率。
在具體實施時,為了滿足不同應用場景對安全傳輸的不同需求、通常可以先對客戶端及/或服務端的身份進行驗證,並在身份合法的情況下進行資料安全傳輸。現有基於客戶端/服務端架構的傳輸技術為了實現基於非對稱密鑰交換算法的密鑰協商過程,通常採用數位證書,一方面可以在服務端發送的數位證書中攜帶公鑰資訊,另一方面也可以利用數位證書進行身份驗證。而採用基於數位證書的身份驗證方法,需要額外增加對電子證書的管理和維護成本。
針對這一問題,本實施例提供的資料安全傳輸方法,在採用量子密鑰分發技術完成資料加密密鑰協商過程的基礎上,還提供基於客戶端身份密鑰進行身份驗證的較佳實施方式,即:在本步驟102中,所述客戶端和所述服務端可以基於各自儲存的、所述客戶端的相同身份密鑰,先執行身份驗證操作,並當所述身份驗證操作的結果為通過時,雙方再基於量子密鑰分發技術獲取各自的資料加密密鑰。
其中,所述客戶端儲存的身份密鑰、以及所述服務端儲存的對應於所述客戶端的身份密鑰,可以是人工預先設 置的,也可以是由特定伺服器或者機構分發的,或者僅在所述服務端一側預置後、由所述服務端主動推送或者基於所述客戶端的請求發送給所述客戶端,只要所述服務端儲存的、對應於所述客戶端的身份密鑰,與所述客戶端儲存的身份密鑰相同,就同樣可以實現本發明的技術方案。
具體實施時,所述客戶端可以在本地儲存自己的客戶端標識和身份密鑰,服務端可以在身份密鑰映射關係表中,儲存可與其進行資料安全傳輸的各客戶端(包括:本實施例所述的客戶端)的客戶端標識以及相應的身份密鑰,從而可以根據來自客戶端的存取請求中包含的客戶端標識,通過在表中查找,獲取相應的身份密鑰。此處給出一個身份密鑰映射關係表的示例:
下面結合具體的例子,給出三種進行身份驗證的實施方式。為了便於描述,此處作以下說明:本實施例中所述客戶端的客戶端標識用ID_C表示,所述客戶端的身份密鑰用IDC_Key表示,所述服務端的服務端標識用ID_S表示;hash( )為散列函數,也稱哈希函數;hash(A,B)表示計算A和B的散列值,通常是指計算A和B以字符串形式拼接後得到的字符串的散列值;Enkey(r)表示用密鑰key對數值r進行對稱加密後獲取的密文。
(一)驗證服務端的身份
在採用本實施方式的一個具體例子中,請參見圖2,所述客戶端發送的存取請求中包含:所述客戶端的客戶端標識ID_C。在服務端接收存取請求後,雙方執行以下身份驗證操作:
1)服務端向客戶端提供用於證實服務端身份的服務端驗證資訊。
所述服務端根據接收到的存取請求包含的客戶端標識ID_C,在身份密鑰映射關係表中查找對應的身份密鑰IDC_Key,然後根據查找得到的身份密鑰計算散列值hash(IDC_Key),作為用於證實服務端身份的服務端驗證資訊,最後將包含所述服務端驗證資訊的響應資訊發送給所述客戶端,即,向所述客戶端發送{hash(IDC_Key)}。
2)客戶端驗證服務端的身份。
所述客戶端接收所述服務端返回的響應資訊後,採用與所述服務端計算服務端驗證資訊相同的方式(例如,雙方可以預先設定計算服務端驗證資訊的方式),根據在本地儲存的身份密鑰計算散列值hash(IDC_Key),然後將計算得到的散列值與接收到的響應資訊包含的服務端驗證資訊進行比對。兩者相同,即,雙方計算出來的散列值相同,那麼在所述客戶端一側可以得出以下結論:所述服務端在其身份密鑰映射關係表中儲存的對應於所述客戶端的身份密鑰,與所述客戶端儲存的身份密鑰一致,說明所述 服務端的身份合法,因此判定本步驟執行的身份驗證操作的結果為通過。具體實施時,所述客戶端可以將所述身份驗證操作的結果發送給所述服務端,從而所述服務端也可以獲取本步驟身份驗證操作的結果。
需要說明的是,在上述例子中,所述服務端僅根據IDC_Key計算作為服務端驗證資訊的散列值,在其他實施方式中,所述服務端也可以根據其他預設參數以及IDC_Key計算作為服務端驗證資訊的散列值,並且在發送的響應資訊中不僅包含所述服務端驗證資訊,還包含參與計算的所述參數,那麼客戶端接收響應資訊後,就可以採用與所述服務端相同的方式計算散列值,即:根據所述響應資訊包含的參數以及儲存的IDC_Key計算散列值。例如:所述服務端計算Hash(ID_S,IDC_Key)作為服務端驗證資訊,並向所述客戶端發送響應資訊{ID_S,hash(ID_S,IDC_Key)},所述客戶端則根據所述響應資訊包含的參數以及儲存的IDC_Key計算散列值、並進行比對。
(二)驗證客戶端的身份
在採用本實施方式的一個具體例子中,請參見圖3,所述客戶端在發送存取請求之前,可以根據儲存的身份密鑰計算散列值hash(ID_C,IDC_Key),作為用於證實所述客戶端身份的客戶端驗證資訊。所述客戶端在發送給所述服務端的存取請求中,包含所述客戶端的客戶端標識,以 及所述客戶端驗證資訊,即:向所述服務端發送{ID_C,hash(ID_C,IDC_Key)}; 在本步驟中,所述服務端接收所述客戶端發送的存取請求後,首先根據所述存取請求包含的客戶端標識ID_C,在身份密鑰映射關係表中查找對應的身份密鑰IDC_Key,然後採用與所述客戶端計算客戶端驗證資訊相同的方式,根據所述存取請求包含的客戶端標識ID_C以及查找得到的身份密鑰計算散列值hash(ID_C,IDC_Key),最後,將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對。兩者相同,即,雙方計算出來的散列值相同,那麼在所述服務端一側可以得出如下結論:所述客戶端儲存的身份密鑰,與身份密鑰映射關係表中儲存的對應於所述客戶端的身份密鑰相同,說明所述客戶端的身份合法,因此可以判定本步驟執行的身份驗證操作的結果為通過。具體實施時,所述服務端可以將所述身份驗證操作的結果發送給所述客戶端,從而所述客戶端也可以獲取本步驟身份驗證操作的結果。
需要說明的是,在上述例子中,所述客戶端根據ID_C和IDC_Key計算作為客戶端驗證資訊的散列值。在其它實施方式中,所述客戶端也可以僅計算IDC_Key的散列值,即,用hash(IDC_Key)作為所述客戶端驗證資訊,那麼所述服務端可以根據存取請求中包含的ID_C,查找對應的IDC_Key,並計算散列值hash(IDC_Key),然後將計算得到的散列值與存取請求中包含的客戶端驗證資 訊進行比對,也同樣是可以的。
(三)雙方依次驗證對方的身份
在採用本實施方式的一個具體例子中,請參見圖4,所述客戶端在發送存取請求之前,首先讀取在本地儲存的身份密鑰IDC_Key,根據所述客戶端的客戶端標識以及所述身份密鑰計算散列值hash(ID_C,IDC_Key),作為用於證實所述客戶端身份的客戶端驗證資訊,然後用所述身份密鑰作為對稱密鑰、對採用預設方式產生的動態數值r進行加密,得到用於驗證所述服務端身份的密文EnIDC_Key(r),此處所述採用預設方式產生動態數值r,可以是採用隨機方式產生隨機數r,也可以採用預設的函數或者算法產生r,只要每次產生的r值是動態變化的即可。由於引入了動態數值r,可以防止重放攻擊,從而保證對所述服務端身份驗證的準確性。
所述客戶端在發送給服務端的存取請求中,包含所述客戶端的客戶端標識ID_C、所述客戶端驗證資訊hash(ID_C,IDC_Key)、以及所述密文EnIDC_Key(r),即:向所述服務端發送{ID_C,hash(ID_C,IDC_Key),EnIDC_Key(r)};在服務端接收存取請求後,雙方在本步驟中執行以下身份驗證操作:
1)所述服務端驗證所述客戶端的身份
所述服務端首先根據所述存取請求包含的客戶端標識 ID_C,在身份密鑰映射關係表中查找對應的身份密鑰IDC_Key,然後採用與所述客戶端計算客戶端驗證資訊相同的方式,計算散列值hash(ID_C,IDC_Key),最後將計算得到的散列值與接收到的存取請求包含的客戶端驗證資訊進行比對。兩者相同,說明所述客戶端的身份合法。
所述服務端在成功驗證所述客戶端身份的合法性後,進一步產生服務端驗證資訊併發送給客戶端進行驗證,具體說,所述服務端可以用查找得到的身份密鑰IDC_Key,採用與所述客戶端加密動態數值r所採用的加密算法相應的解密算法,對所述存取請求包含的密文解密,獲取解密後的動態數值r,然後根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值hash(ID_S,r),作為用於證實服務端身份的服務端驗證資訊,最後將包含所述服務端的服務端標識以及所述服務端驗證資訊的響應資訊發送給所述客戶端,即:向所述客戶端發送{ID_S,hash(ID_S,r)}。
2)所述客戶端驗證所述服務端的身份
所述客戶端接收所述服務端返回的響應資訊後,採用與所述服務端計算服務端驗證資訊相同的方式,根據所述響應資訊包含的服務端標識、以及在發送存取請求之前已產生的動態數值r計算散列值hash(ID_S,r),然後將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對。兩者相同,即,雙方計算出來的散列值相同,那麼在所述客戶端一側可以得出以下結論:所述服務端在其身 份密鑰映射關係表中儲存的對應於所述客戶端的身份密鑰、與所述客戶端自己儲存的身份密鑰一致,從而所述服務端才能夠對接收到的存取請求中包含的密文進行正確解密、並進一步計算出正確的散列值,說明所述服務端的身份合法。
至此,所述客戶端通過了所述服務端的身份驗證,所述服務端也通過了所述客戶端的身份驗證,因此可以判定在本步驟中執行的身份驗證操作的結果為通過。具體實施時,所述客戶端可以將所述身份驗證操作的結果發送給所述服務端,從而所述服務端也可以獲取本步驟身份驗證操作的結果。
較佳地,為了進一步保障對所述服務端身份驗證的準確性,所述服務端在完成對所述客戶端的身份驗證後,還可以在計算服務端驗證資訊時引入與所述客戶端同步更新的種子數值n,同樣所述客戶端在驗證所述服務端的身份時也利用與所述服務端同步更新的種子數值n進行相關計算。
其中,所述種子數值是所述客戶端與所述服務端各自儲存、且同步更新的共享數值,所述客戶端可以將所述服務端的服務端標識、與兩者之間維護的種子數值在所述客戶端本地對應儲存,同樣所述服務端也可以將所述客戶端的客戶端標識與兩者之間維護的種子數值在所述服務端本地對應儲存。雙方可以採用相同的預設方式同步更新各自維護的種子數值,保證種子數值的一致性和動態性。例 如:可以採用雙方交互次數的統計值作為各自維護的種子數值。
上述較佳實施方式具體可以這樣實現:所述服務端根據所述存取請求包含的客戶端標識ID_C,獲取與所述客戶端同步更新的種子數值n,然後計算hash(ID_s,r+n)作為服務端驗證資訊;所述客戶端在驗證所述服務端的身份時,根據所述響應資訊包含的服務端標識,獲取本地儲存的、與所述服務端同步更新的種子數值n,然後根據所述響應資訊包含的服務端標識、已產生的r,以及所述種子數值n,計算散列值hash(ID_S,r+n),並將計算得到的散列值與接收到的服務端驗證資訊進行比對。比對結果一致,說明所述服務端不僅具有正確的IDC_Key,而且具有與所述客戶端相同的種子數值,因此說明所述服務端身份合法。採用這種較佳實施方式,相當於增加了驗證條件,可以進一步保證對服務端身份驗證的準確性。
至此,對雙方依次驗證對方身份的實施方式進行了描述。在具體實施時,也可以基於相同的原理,對上述實施方式進行變更,例如,也可以僅對所述服務端的身份進行驗證,在這種情況下,所述客戶端可以不產生客戶端驗證資訊。
通過上述(一)~(三),對客戶端與服務端基於各自儲存的、所述客戶端的相同身份密鑰執行身份驗證操作的實施方式進行了說明。在具體實施時,也可以在上述實施方式的基礎上進行變更,只要依據是否具有正確的客戶 端身份密鑰進行身份驗證,就同樣在本發明的保護範圍之內。
現有基於客戶端/服務端架構的資料安全傳輸技術在進行身份驗證時,通常採用基於數位證書的驗證方式,以基於HTTPS的資料傳輸為例,服務端需要將自己的數位證書發送給客戶端,客戶端根據數位證書驗證服務端身份是否合法,同樣服務端如需驗證客戶端身份,也需要客戶端提供自己的數位證書。為了實現上述目的,服務端(和客戶端)通常需要申請數位證書、並由專門的數位證書認證機構(CA)通過嚴格的審核之後予以頒發,整個過程操作繁瑣。而本實施例給出的基於客戶端身份密鑰的身份驗證方式,由於不需要使用數位證書,因此減免了針對數位證書的申請、管理等維護成本。
通過上述描述可以看出,本實施例給出的身份驗證方案是基於合法客戶端和合法服務端具有針對所述客戶端的相同的身份密鑰這一原理,為了進一步保證身份驗證的準確性,所述客戶端和所述服務端可以對各自儲存的所述客戶端的身份密鑰進行動態更新,但是如果採用常規的動態更新方法(例如,所述服務端重新產生所述客戶端的身份密鑰,並將重新產生的身份密鑰推送給所述客戶端)通常存在安全隱患,因此本實施例還提供利用量子密鑰分發技術對身份密鑰進行更新的較佳實施方式。
採用所述較佳實施方式,在步驟102中,所述服務端與所述客戶端分別從雙方執行量子密鑰分發操作產生的相 同密鑰序列中獲取的資訊不僅僅包括相同的第一密鑰,還包括:相同的第二密鑰,並且所述服務端用獲取的第二密鑰更新其儲存的、與所述客戶端對應的身份密鑰,例如,更新身份密鑰映射關係表中,與所述客戶端的客戶端標識對應儲存的身份密鑰;所述客戶端用獲取的第二密鑰更新其儲存的身份密鑰,從而雙方同步更新了各自儲存的、所述客戶端的身份密鑰,從而在雙方的下一輪交互中(即:所述客戶端再次發起對所述服務端的存取請求後的交互過程)雙方可以使用更新後的客戶端密鑰進行身份驗證。由於雙方用從執行量子密鑰分發操作產生的密鑰序列中獲取的第二密鑰更新各自儲存的客戶端密鑰,一方面可以基於量子力學原理保證第二密鑰的安全分發,而且由於實現了對客戶端密鑰的動態更新,可以進一步保證身份驗證的準確性,保障資料傳輸的安全性。
在具體實施時,在所述服務端接收來自所述客戶端的存取請求後,雙方可以啟動量子密鑰分發過程獲取相同的密鑰序列,並按照預先確定的獲取方式從各自的密鑰序列中獲取第一密鑰和第二密鑰。例如:雙方產生的密鑰序列為{000111000101110011000011101},可以選取前8個密鑰比特{00011100}為第一密鑰,即:資料加密密鑰,選取隨後的8個密鑰比特{01011100}為第二密鑰,所述服務端用{01011100}更新其本地儲存的所述客戶端的身份密鑰,所述客戶端用{01011100}更新其本地儲存的身份密鑰。
獲取第一密鑰和第二密鑰的具體方式(例如:位置、 長度等)可以是所述客戶端和所述服務端預先設定的,也可以是由其中一方選取之後,將其採用的選取方式告知另一方,從而另一方也採用相同的方式獲取第一密鑰和第二密鑰。
具體實施時,如果所述服務端和所述客戶端各自具有用於儲存雙方執行量子密鑰分發操作產生的密鑰序列的密鑰池,那麼雙方也可以從各自的密鑰池中獲取第一密鑰和第二密鑰,基本原理和上述過程類似,此處不再贅述。
步驟103、客戶端與服務端利用各自的資料加密密鑰進行資料安全傳輸。
執行到本步驟時,所述客戶端和所述服務端已經獲取了相同的資料加密密鑰,因此可以進行資料安全傳輸。具體說:所述服務端採用對稱加密算法,利用資料加密密鑰對資料加密,然後將加密後的密文發送給所述客戶端,所述客戶端則採用與所述服務端相對應的解密算法,利用資料加密密鑰對來自所述服務端的密文解密、以獲取明文資料;或者,類似的,所述客戶端將利用資料加密密鑰加密後的資料發送給所述服務端,所述服務端利用資料加密密鑰對來自所述客戶端的密文解密、以獲取明文資料。
此外,為了進一步保證資料傳輸過程的安全性,所述客戶端和所述服務端也可以在資料傳輸過程中攜帶身份驗證資訊、以供對方驗證。下面針對上述(三)中描寫的客戶端和服務端在獲取資料加密密鑰之前分別驗證了對方身份為例,對資料傳輸過程攜帶身份驗證資訊的實施方式進 行說明,為了便於舉例,所述客戶端和所述服務端所採用的資料加密密鑰用h表示,待發送的資料用data表示。
1)所述服務端發送資料,所述客戶端接收資料
所述服務端先利用所述資料加密密鑰對待發送資料加密,得到密文,然後根據所述服務端的服務端標識、以及已查找得到的身份密鑰計算散列值(在獲取資料加密密鑰之前的身份驗證操作中已查找得到的),作為服務端資料包驗證資訊,將包含所述服務端的服務端標識、所述服務端資料包驗證資訊、以及所述密文的資料包發送給所述客戶端。例如:所述服務端向所述客戶端發送{ID_S,hash(ID_S,IDC_Key),Enh(data)}。
所述客戶端接收來自所述服務端的資料包後,採用與所述服務端計算服務端資料包驗證資訊相同的方式,根據所述資料包所包含的服務端標識、以及已讀取的身份密鑰(在獲取資料加密密鑰之前的身份驗證操作中已讀取的)計算散列值,然後將計算得到的散列值與所述資料包中攜帶的服務端資料包驗證資訊進行比對,並在比對結果一致的情況下,利用所述資料加密密鑰對所述資料包中的密文解密,以獲取所述服務端發送的明文資料。
2)所述客戶端發送資料,所述服務端接收資料
類似的,所述客戶端先利用所述資料加密密鑰對待發送資料加密,得到密文,然後根據所述客戶端的客戶端標識、以及已讀取的身份密鑰計算散列值,作為用於證實客戶端身份的客戶端資料包驗證資訊,將包含所述客戶端的 客戶端標識、所述客戶端資料包驗證資訊、以及所述密文的資料包發送給所述服務端。例如:所述客戶端向所述服務端發送{ID_C,hash(ID_C,IDC_Key),Enh(data)}。
所述服務端接收來自所述客戶端的資料包後,採用與所述客戶端計算客戶端資料包驗證資訊相同的方式,根據所述資料包所包含的客戶端標識、以及已查找得到的身份密鑰計算散列值,然後將計算得到的散列值與所述資料包中攜帶的客戶端資料包驗證資訊進行比對,並在比對結果一致的情況下,利用所述資料加密密鑰對所述資料包中的密文解密,以獲取所述客戶端發送的明文資料。
至此,通過步驟101-103,對本實施例提供的資料安全傳輸方法的實施方式進行了描述。在具體實施時,所述方法可以應用於基於Web服務的資料傳輸應用場景中,所述服務端可以為Web服務端,所述客戶端可以為Web客戶端,可以用本實施例提供的基於量子密鑰的密鑰協商方案替換HTTPS協議中的密鑰協商處理流程,從而改善客戶端和服務端之間進行密鑰協商的安全性和性能;進一步的,也可以用本實施例提供的基於身份密鑰的身份驗證方案替換HTTPS協議中的身份驗證相關處理流程,從而可以減少數位證書的維護成本。
綜上所述,本實施例提供的資料安全傳輸方法,充分利用了量子密鑰分發技術的優越性,客戶端和服務端從執行量子密鑰分發操作產生的相同密鑰序列中選取相同密鑰作為資料加密密鑰,有效避免了非對稱密鑰交換算法所具 有的分發安全隱患、以及解密耗時長、效率低下的問題,能夠安全、高效地實現資料加密密鑰的協商過程,為資料安全傳輸提供有力保障。
此外,本發明還提供一種用於資料安全傳輸的服務端方法,請參考圖5,其為本發明提供的用於資料安全傳輸的服務端方法的實施例的流程圖,本實施例與上述方法實施例步驟相同的部分不再贅述,下面重點描述不同之處。本實施例的一種用於資料安全傳輸的服務端方法包括如下步驟:
步驟501、接收來自客戶端的存取請求。
步驟502、採用與所述客戶端預先確定的獲取方式,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰。
可以執行以下操作獲取第一密鑰:與所述客戶端執行量子密鑰分發操作,產生與所述客戶端相同的密鑰序列;採用與所述客戶端預先確定的獲取方式,從所述密鑰序列中獲取所述第一密鑰,作為資料加密密鑰。
較佳地,在獲取資料加密密鑰之前,可以基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,並當所述身份驗證操作的結果為通過時,執行獲取資料加密密鑰的步驟;其中,所述對應於所述客戶端的身份密鑰與所述客戶端儲存的身份密鑰相同。下面給出身份驗證操作的三種實施方式。
(一)所述基於本地儲存的對應於所述客戶端的身份 密鑰,執行身份驗證操作,可以包括:根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;至少根據查找得到的身份密鑰計算散列值,作為用於證實服務端身份的服務端驗證資訊;將至少包含所述服務端驗證資訊的響應資訊發送給所述客戶端;並在通過所述客戶端的驗證後,判定所述身份驗證操作的結果為通過。
(二)所述基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,可以包括:根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;採用與所述客戶端計算客戶端驗證資訊相同的方式,至少根據查找得到的身份密鑰計算散列值;將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
(三)所述基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,可以包括:根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;用查找得到的身份密鑰、對所述存取請求包含的用於驗證服務端身份的密文解密,獲取解密後的動態數值;至少根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值,作為用於證實服務端身份的服務端驗證資訊;將包含所述服務端的服務端標識以及所述服務端驗證資訊的響應資訊發送給所述客戶端,並在通過所述 客戶端的驗證後,判定所述身份驗證操作的結果為通過。
在身份密鑰映射關係表中查找對應的身份密鑰之後,還包括:採用與所述客戶端計算客戶端驗證資訊相同的方式,根據所述存取請求包含的客戶端標識以及查找得到的身份密鑰計算散列值;將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,執行用查找得到的身份密鑰、對所述存取請求包含的用於驗證服務端身份的密文解密,獲取解密後的動態數值的步驟。
所述至少根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值,包括:根據所述存取請求包含的客戶端標識,獲取與所述客戶端同步更新的種子數值;根據所述服務端的服務端標識、所述解密後的動態數值以及所述種子數值計算散列值。
上面(一)~(三)給出了身份驗證操作的三種實施方式,當身份驗證操作的結果為通過時,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰。較佳地,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取的資訊還包括:第二密鑰;所述服務端用所述第二密鑰更新本地儲存的對應於所述客戶端的身份密鑰。
步驟503、利用所述資料加密密鑰與所述客戶端進行資料安全傳輸。
本步驟包括:將利用所述資料加密密鑰加密後的資料 發送給所述客戶端;及/或,利用所述資料加密密鑰對來自所述客戶端的密文解密、以獲取明文資料。
至此,通過上述步驟501-503,對本實施提供的用於資料安全傳輸的服務端方法的實施方式進行了說明。
在上述的實施例中,提供了一種用於資料安全傳輸的服務端方法,與之相對應的,本發明還提供一種用於資料安全傳輸的服務端裝置。請參看圖6,其為本發明的一種用於資料安全傳輸的服務端裝置的實施例的示意圖。由於裝置實施例基本相似於方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。下述描述的裝置實施例僅僅是示意性的。
本實施例的一種用於資料安全傳輸的服務端裝置,包括:存取請求接收單元601,用於接收來自客戶端的存取請求;服務端資料加密密鑰獲取單元602,用於採用與所述客戶端預先確定的獲取方式,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;服務端安全傳輸單元603,用於利用所述資料加密密鑰與所述客戶端進行資料安全傳輸。
可選的,所述裝置還包括:服務端身份驗證單元,用於在所述存取請求接收單元接收存取請求後,基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,並當所述身份驗證操作的結果為通過時,觸發所述服務端資料加密密鑰獲取單元工作;其中,所述對應於所述客戶端的身份密鑰與所述客戶 端儲存的身份密鑰相同。
可選的,所述服務端身份驗證單元包括:密鑰查找子單元,用於根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;第一服務端驗證資訊計算子單元,用於至少根據查找得到的身份密鑰計算散列值,作為用於證實服務端身份的服務端驗證資訊;第一響應資訊發送及結果判定子單元,用於將至少包含所述服務端驗證資訊的響應資訊發送給所述客戶端,並在通過所述客戶端的驗證後,判定所述身份驗證操作的結果為通過。
可選的,所述服務端身份驗證單元包括:密鑰查找子單元,用於根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;服務端第一散列值計算子單元,用於採用與所述客戶端計算客戶端驗證資訊相同的方式,至少根據查找得到的身份密鑰計算散列值;服務端散列值比對及結果判定子單元,用於將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
可選的,所述服務端身份驗證單元包括:密鑰查找子單元,用於根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰; 動態數值解密子單元,用於用查找得到的身份密鑰、對所述存取請求包含的用於驗證服務端身份的密文解密,獲取解密後的動態數值;第二服務端驗證資訊計算子單元,用於至少根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值,作為用於證實服務端身份的服務端驗證資訊;第二響應資訊發送及結果判定子單元,用於將包含所述服務端的服務端標識以及所述服務端驗證資訊的響應資訊發送給所述客戶端,並在通過所述客戶端的驗證後,判定所述身份驗證操作的結果為通過。
可選的,所述服務端身份驗證單元還包括:服務端第二散列值計算子單元,用於在所述密鑰查找子單元工作後,採用與所述客戶端計算客戶端驗證資訊相同的方式,根據所述存取請求包含的客戶端標識以及查找得到的身份密鑰計算散列值;散列值比對子單元,用於將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,觸發所述動態數值解密子單元工作。
可選的,所述第二服務端驗證資訊計算子單元,包括:服務端種子數值獲取子單元,用於根據所述存取請求包含的客戶端標識,獲取與所述客戶端同步更新的種子數值;服務端散列值計算執行子單元,用於根據所述服務端 的服務端標識、所述解密後的動態數值以及所述種子數值計算散列值,作為用於證實服務端身份的服務端驗證資訊。
可選的,所述服務端資料加密密鑰獲取單元,具體用於採用與所述客戶端預先確定的獲取方式,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取作為資料加密密鑰的第一密鑰、以及第二密鑰;所述裝置還包括:服務端身份密鑰更新單元,用於用所述第二密鑰更新本地儲存的對應於所述客戶端的身份密鑰。
可選的,所述服務端資料加密密鑰獲取單元包括:服務端量子密鑰分發子單元,用於與所述客戶端執行量子密鑰分發操作,產生與所述客戶端相同的密鑰序列;服務端第一密鑰獲取子單元,用於採用與所述客戶端預先確定的獲取方式,從所述密鑰序列中獲取所述第一密鑰,作為資料加密密鑰。
可選的,所述服務端安全傳輸單元,具體用於將利用所述資料加密密鑰加密後的資料發送給所述客戶端;及/或,利用所述資料加密密鑰對來自所述客戶端的密文解密、以獲取明文資料。
此外,本發明還提供一種用於資料安全傳輸的客戶端方法,請參考圖7,其為本發明提供的用於資料安全傳輸的客戶端方法的實施例的流程圖,本實施例與上述方法實施例步驟相同的部分不再贅述,下面重點描述不同之處。 本實施例的一種用於資料安全傳輸的客戶端方法包括如下步驟:
步驟701、發送對服務端的存取請求。
步驟702、採用與所述服務端預先確定的獲取方式,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰。
可以執行以下操作獲取第一密鑰:與所述服務端執行量子密鑰分發操作,產生與所述服務端相同的密鑰序列;採用與所述服務端預先確定的獲取方式,從所述密鑰序列中獲取所述第一密鑰,作為資料加密密鑰。
較佳地,在發送對服務端的存取請求之後,可以基於本地儲存的身份密鑰執行身份驗證操作,並當所述身份驗證操作的結果為通過時,執行獲取資料加密密鑰的步驟;其中,所述本地儲存的身份密鑰與所述服務端儲存的對應於所述客戶端的身份密鑰相同。下面給出身份驗證操作的三種實施方式。
(一)所述存取請求的內容包含:所述客戶端的客戶端標識。所述基於本地儲存的身份密鑰執行身份驗證操作,包括:接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據本地儲存的身份密鑰計算散列值;將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
(二)在發送對服務端的存取請求之前,至少根據儲 存的身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊;所述發送對服務端的存取請求是指,發送包含所述客戶端的客戶端標識,以及所述客戶端驗證資訊的存取請求。所述基於本地儲存的身份密鑰執行身份驗證操作,包括:判斷基於本地儲存的身份密鑰產生的所述客戶端驗證資訊是否通過所述服務端的驗證,若是,判定所述身份驗證操作的結果為通過。
(三)在發送對服務端的存取請求之前,讀取本地儲存的身份密鑰;用所述身份密鑰作為對稱密鑰、對採用預設方式產生的動態數值進行加密,得到用於驗證所述服務端身份的密文。所述發送對服務端的存取請求是指,發送至少包含所述客戶端的客戶端標識、以及所述密文的存取請求。所述基於本地儲存的身份密鑰執行身份驗證操作,包括:接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據所述響應資訊包含的服務端標識以及所述產生的動態數值計算散列值;將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
在讀取儲存的身份密鑰之後,在發送對服務端的存取請求之前,還包括:根據所述客戶端的客戶端標識以及所述身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊。所述發送對服務端的存取請求是指,發送包含所述客戶端的客戶端標識、所述客戶端驗證資訊、 以及所述密文的存取請求。
所述至少根據所述響應資訊包含的服務端標識以及所述產生的動態數值計算散列值,包括:根據所述響應資訊包含的服務端標識,獲取與所述服務端同步更新的種子數值;根據所述響應資訊包含的服務端標識、所述產生的動態數值以及所述種子數值計算散列值。
上面(一)~(三)給出了身份驗證操作的三種實施方式,當身份驗證操作的結果為通過時,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰。較佳地,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取的資訊還包括:第二密鑰;所述客戶端用所述第二密鑰更新本地儲存的身份密鑰。
步驟703、利用所述資料加密密鑰與所述服務端進行資料安全傳輸。
本步驟包括:利用所述資料加密密鑰對來自所述服務端的密文解密、以獲取明文資料;及/或,將利用所述資料加密密鑰加密後的資料發送給所述服務端。
至此,通過上述步驟701-703,對本實施提供的用於資料安全傳輸的客戶端方法的實施方式進行了說明。
在上述的實施例中,提供了一種用於資料安全傳輸的客戶端方法,與之相對應的,本發明還提供一種用於資料安全傳輸的客戶端裝置。請參看圖8,其為本發明的一種用於資料安全傳輸的客戶端裝置的實施例的示意圖。由於 裝置實施例基本相似於方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。下述描述的裝置實施例僅僅是示意性的。
本實施例的一種用於資料安全傳輸的客戶端裝置,包括:存取請求發送單元,用於發送對服務端的存取請求801;客戶端資料加密密鑰獲取單元802,用於採用與所述服務端預先確定的獲取方式,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;客戶端安全傳輸單元803,用於利用所述資料加密密鑰與所述服務端進行資料安全傳輸。
可選的,所述裝置還包括:客戶端身份驗證單元,用於當所述存取請求發送單元發送存取請求後,基於本地儲存的身份密鑰執行身份驗證操作,並當所述身份驗證操作的結果為通過時,觸發所述客戶端資料加密密鑰獲取單元工作;其中,所述本地儲存的身份密鑰與所述服務端儲存的對應於所述客戶端的身份密鑰相同。
可選的,所述存取請求發送單元,具體用於發送包含所述客戶端的客戶端標識的存取請求;所述客戶端身份驗證單元包括:響應資訊接收單元,用於接收所述服務端返回的響應資訊;客戶端第一散列值計算子單元,用於採用與所述服務端計算服務端驗證資訊相同的方式,至少根據本地儲存的 身份密鑰計算散列值;客戶端第一散列值比對及結果判定子單元,用於將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
可選的,所述裝置還包括:第一客戶端驗證資訊計算單元,用於至少根據儲存的身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊,並觸發所述存取請求發送單元工作;所述存取請求發送單元具體用於,發送包含所述客戶端的客戶端標識,以及所述客戶端驗證資訊的存取請求;所述客戶端身份驗證單元,具體用於判斷基於本地儲存的身份密鑰產生的所述客戶端驗證資訊是否通過所述服務端的驗證,若是,判定所述身份驗證操作的結果為通過。
可選的,所述裝置還包括:身份密鑰讀取單元,用於讀取本地儲存的身份密鑰;動態數值加密單元,用於用所述身份密鑰作為對稱密鑰、對採用預設方式產生的動態數值進行加密,得到用於驗證所述服務端身份的密文,並觸發所述存取請求發送單元工作;所述存取請求發送單元,具體用於發送至少包含所述客戶端的客戶端標識、以及所述密文的存取請求;所述客戶端身份驗證單元,包括: 響應資訊接收子單元,用於接收所述服務端返回的響應資訊;客戶端第二散列值計算子單元,用於採用與所述服務端計算服務端驗證資訊相同的方式,至少根據所述響應資訊包含的服務端標識以及所述產生的動態數值計算散列值;客戶端第二散列值比對及結果判定子單元,用於將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
可選的,所述裝置還包括:第二客戶端驗證資訊計算單元,用於在所述身份密鑰讀取單元工作之後,根據所述客戶端的客戶端標識以及所述身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊,並觸發所述動態數值加密單元工作;所述存取請求發送單元,具體用於發送包含所述客戶端的客戶端標識、所述客戶端驗證資訊、以及所述密文的存取請求。
可選的,所述客戶端第二散列值計算子單元包括:客戶端種子數值獲取子單元,用於根據所述響應資訊包含的服務端標識,獲取與所述服務端同步更新的種子數值;客戶端散列值計算執行子單元,用於根據所述響應資訊包含的服務端標識、所述產生的動態數值以及所述種子 數值計算散列值。
可選的,所述客戶端資料加密密鑰獲取單元,具體用於採用與所述服務端預先確定的獲取方式,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取作為資料加密密鑰的第一密鑰、以及第二密鑰;所述裝置還包括:客戶端身份密鑰更新單元,用於用所述第二密鑰更新所述本地儲存的身份密鑰。
可選的,所述客戶端資料加密密鑰獲取單元,包括:客戶端量子密鑰分發子單元,用於與所述服務端執行量子密鑰分發操作,產生與所述服務端相同的密鑰序列;客戶端第一密鑰獲取子單元,用於採用與所述服務端預先確定的獲取方式,從所述密鑰序列中獲取所述第一密鑰,作為資料加密密鑰。
可選的,所述客戶端安全傳輸單元,具體用於利用所述資料加密密鑰對來自所述服務端的密文解密、以獲取明文資料;及/或,將利用所述資料加密密鑰加密後的資料發送給所述服務端。
此外,本發明還提供一種資料安全傳輸系統,請參見圖9,其為本發明的一種資料安全傳輸系統的實施例的示意圖,所述系統包括用於資料安全傳輸的服務端裝置901(簡稱服務端裝置)、用於資料安全傳輸的客戶端裝置902(簡稱客戶端裝置)。在具體實施時,所述客戶端裝置通常部署在客戶端設備上,所述服務端設備通常部署在伺服器上。
下面舉例說明本實施例中所述資料安全傳輸系統的基本處理流程,請參見圖10,所述基本處理流程包括以下3個步驟:1)所述客戶端裝置向所述服務端裝置發送存取請求;2)所述客戶端裝置與所述服務端裝置通過執行量子密鑰分發操作,獲取相同的第一密鑰,作為各自的資料加密密鑰;3)所述客戶端裝置與所述服務端裝置利用各自的資料加密密鑰進行資料安全傳輸。
本發明雖然以較佳實施例揭露如上,但其並不是用來限定本發明,任何本領域技術人員在不脫離本發明的精神和範圍內,都可以做出可能的變動和修改,因此本發明的保護範圍應當以本發明申請專利範圍所界定的範圍為準。
在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。
記憶體可能包括電腦可讀媒介中的非永久性儲存器,隨機存取儲存器(RAM)及/或非易失性記憶體等形式,如只讀儲存器(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀媒介的示例。
1、電腦可讀媒介包括永久性和非永久性、可行動和非可行動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存媒介的例子包括,但不限於相變記憶體 (PRAM)、靜態隨機存取儲存器(SRAM)、動態隨機存取儲存器(DRAM)、其他類型的隨機存取儲存器(RAM)、只讀儲存器(ROM)、電可抹除可編程只讀儲存器(EEPROM)、快閃記憶體或其他記憶體技術、只讀光碟只讀儲存器(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、卡式磁帶,磁帶磁磁盤儲存或其他磁性儲存設備或任何其他非傳輸媒介,可用於儲存可以被計算設備存取的資訊。按照本文中的界定,電腦可讀媒介不包括非暫存電腦可讀媒體(transitory media),如調變的資料信號和載波。
2、本領域技術人員應明白,本發明的實施例可提供為方法、系統或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式代碼的電腦可用儲存媒介(包括但不限於磁盤儲存器、CD-ROM、光學儲存器等)上實施的電腦程式產品的形式。

Claims (32)

  1. 一種資料安全傳輸方法,包括:客戶端發送對服務端的存取請求;服務端接收所述存取請求後,與客戶端分別從雙方執行量子密鑰分發操作產生的相同密鑰序列中獲取相同的第一密鑰,作為各自的資料加密密鑰;客戶端與服務端利用各自的資料加密密鑰進行資料安全傳輸。
  2. 根據申請專利範圍第1項所述的資料安全傳輸方法,其中,在所述服務端接收所述存取請求後,包括:所述客戶端與所述服務端基於各自儲存的、所述客戶端的相同身份密鑰,執行身份驗證操作,並當所述身份驗證操作的結果為通過時,執行所述服務端與所述客戶端獲取各自的資料加密密鑰的步驟。
  3. 根據申請專利範圍第2項所述的資料安全傳輸方法,其中,所述存取請求的內容包含:所述客戶端的客戶端標識;所述客戶端與所述服務端基於各自儲存的、所述客戶端的相同身份密鑰,執行身份驗證操作,包括:所述服務端根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;至少根據查找得到的身份密鑰計算散列值,作為用於證實服務端身份的服務端驗證資訊;將至少包含所述服務端驗證資訊的響應資訊發送給所述客戶端; 所述客戶端接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據儲存的身份密鑰計算散列值;將計算得到的散列值與接收到的響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
  4. 根據申請專利範圍第2項所述的資料安全傳輸方法,其中,在客戶端發送對服務端的存取請求之前,包括:所述客戶端至少根據儲存的身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊;所述客戶端發送對服務端的存取請求是指,客戶端發送包含所述客戶端的客戶端標識,以及所述客戶端驗證資訊的存取請求;所述客戶端與所述服務端基於各自儲存的、所述客戶端的相同身份密鑰,執行身份驗證操作,包括:所述服務端根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;採用與所述客戶端計算客戶端驗證資訊相同的方式,至少根據查找得到的身份密鑰計算散列值;將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
  5. 根據申請專利範圍第2項所述的資料安全傳輸方法,其中,在客戶端發送對服務端的存取請求之前,包括:所述客戶端讀取儲存的身份密鑰;用所述身份密鑰作為對稱密鑰、對採用預設方式產生的動態數值進行加密, 得到用於驗證所述服務端身份的密文;所述客戶端發送對服務端的存取請求是指,發送至少包含所述客戶端的客戶端標識、以及所述密文的存取請求;所述客戶端與所述服務端基於各自儲存的、所述客戶端的相同身份密鑰,執行身份驗證操作,包括:所述服務端根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;用查找得到的身份密鑰對所述存取請求包含的密文解密,獲取解密後的動態數值;至少根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值,作為用於證實服務端身份的服務端驗證資訊;將包含所述服務端的服務端標識以及所述服務端驗證資訊的響應資訊發送給所述客戶端;所述客戶端接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據所述響應資訊包含的服務端標識以及所述產生的動態數值計算散列值;將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
  6. 根據申請專利範圍第5項所述的資料安全傳輸方法,其中,在客戶端讀取儲存的身份密鑰之後,還包括:根據所述客戶端的客戶端標識以及所述身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊;所述客戶端發送的存取請求的內容還包含:所述客戶 端驗證資訊;所述服務端在身份密鑰映射關係表中查找對應的身份密鑰之後,還包括:採用與所述客戶端計算客戶端驗證資訊相同的方式,根據接收到的存取請求包含的客戶端標識以及查找得到的身份密鑰計算散列值;將計算得到的散列值與接收到的存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,執行用查找得到的身份密鑰對所述存取請求包含的密文解密,獲取解密後的動態數值的步驟。
  7. 根據申請專利範圍第5或6項所述的資料安全傳輸方法,其中,所述服務端至少根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值,包括:所述服務端根據所述存取請求包含的客戶端標識,獲取與所述客戶端同步更新的種子數值;根據所述服務端的服務端標識、所述解密後的動態數值以及所述種子數值計算散列值;所述客戶端至少根據所述響應資訊包含的服務端標識以及所述產生的動態數值計算散列值,包括:根據所述響應資訊包含的服務端標識,獲取與所述服務端同步更新的種子數值;根據所述響應資訊包含的服務端標識、所述產生的動態數值以及所述種子數值計算散列值。
  8. 根據申請專利範圍第2至6項中任一項所述的資料安全傳輸方法,其中,所述服務端與所述客戶端分別從雙方執行量子密鑰分發操作產生的相同密鑰序列中獲取的 資訊還包括:相同的第二密鑰;所述方法還包括:所述客戶端與所述服務端分別用所述第二密鑰更新各自儲存的所述客戶端的身份密鑰。
  9. 根據申請專利範圍第1項所述的資料安全傳輸方法,其中,所述服務端與所述客戶端分別從雙方執行量子密鑰分發操作產生的密鑰序列中、至少獲取相同的第一密鑰,包括:所述服務端與所述客戶端執行量子密鑰分發操作,產生相同的密鑰序列;所述服務端與所述客戶端按照預先確定的獲取方式,從各自產生的所述密鑰序列中分別獲取所述第一密鑰。
  10. 根據申請專利範圍第1項所述的用於資料安全傳輸的服務端方法,其中,所述客戶端與服務端利用各自的資料加密密鑰進行資料安全傳輸,包括:所述服務端將利用資料加密密鑰加密後的資料發送給所述客戶端,所述客戶端利用資料加密密鑰對來自所述服務端的密文解密、以獲取明文資料;及/或,所述客戶端將利用資料加密密鑰加密後的資料發送給所述服務端,所述服務端利用資料加密密鑰對來自所述客戶端的密文解密、以獲取明文資料。
  11. 根據申請專利範圍第1項所述的資料安全傳輸的服務端方法,其中,所述方法應用於基於Web服務的資料傳輸應用場景中。
  12. 一種用於資料安全傳輸的服務端方法,包括: 接收來自客戶端的存取請求;採用與所述客戶端預先確定的獲取方式,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;利用所述資料加密密鑰與所述客戶端進行資料安全傳輸。
  13. 根據申請專利範圍第12項所述的用於資料安全傳輸的服務端方法,其中,在所述接收來自客戶端的存取請求後,包括:基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,並當所述身份驗證操作的結果為通過時,執行獲取資料加密密鑰的步驟;其中,所述對應於所述客戶端的身份密鑰與所述客戶端儲存的身份密鑰相同。
  14. 根據申請專利範圍第13項所述的用於資料安全傳輸的服務端方法,其中,所述基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,包括:根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;至少根據查找得到的身份密鑰計算散列值,作為用於證實服務端身份的服務端驗證資訊;將至少包含所述服務端驗證資訊的響應資訊發送給所述客戶端;並在通過所述客戶端的驗證後,判定所述身份驗證操作的結果為通過。
  15. 根據申請專利範圍第13項所述的用於資料安全 傳輸的服務端方法,其中,所述基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,包括:根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;採用與所述客戶端計算客戶端驗證資訊相同的方式,至少根據查找得到的身份密鑰計算散列值;將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
  16. 根據申請專利範圍第13項所述的用於資料安全傳輸的服務端方法,其中,所述基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,包括:根據所述存取請求包含的客戶端標識,在身份密鑰映射關係表中查找對應的身份密鑰;用查找得到的身份密鑰、對所述存取請求包含的用於驗證服務端身份的密文解密,獲取解密後的動態數值;至少根據所述服務端的服務端標識以及所述解密後的動態數值計算散列值,作為用於證實服務端身份的服務端驗證資訊;將包含所述服務端的服務端標識以及所述服務端驗證資訊的響應資訊發送給所述客戶端,並在通過所述客戶端的驗證後,判定所述身份驗證操作的結果為通過。
  17. 根據申請專利範圍第16項所述的用於資料安全傳輸的服務端方法,其中,在身份密鑰映射關係表中查找 對應的身份密鑰之後,還包括:採用與所述客戶端計算客戶端驗證資訊相同的方式,根據所述存取請求包含的客戶端標識以及查找得到的身份密鑰計算散列值;將計算得到的散列值與所述存取請求包含的客戶端驗證資訊進行比對,並在比對結果一致時,執行用查找得到的身份密鑰、對所述存取請求包含的用於驗證服務端身份的密文解密,獲取解密後的動態數值的步驟。
  18. 根據申請專利範圍第13至17項中任一項所述的用於資料安全傳輸的服務端方法,其中,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取的資訊還包括:第二密鑰;所述方法還包括:用所述第二密鑰更新本地儲存的對應於所述客戶端的身份密鑰。
  19. 一種用於資料安全傳輸的服務端裝置,包括:存取請求接收單元,用於接收來自客戶端的存取請求;服務端資料加密密鑰獲取單元,用於採用與所述客戶端預先確定的獲取方式,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;服務端安全傳輸單元,用於利用所述資料加密密鑰與所述客戶端進行資料安全傳輸。
  20. 根據申請專利範圍第19項所述的用於資料安全 傳輸的服務端裝置,其中,還包括:服務端身份驗證單元,用於在所述存取請求接收單元接收存取請求後,基於本地儲存的對應於所述客戶端的身份密鑰,執行身份驗證操作,並當所述身份驗證操作的結果為通過時,觸發所述服務端資料加密密鑰獲取單元工作;其中,所述對應於所述客戶端的身份密鑰與所述客戶端儲存的身份密鑰相同。
  21. 根據申請專利範圍第20項所述的用於資料安全傳輸的服務端裝置,其中,所述服務端資料加密密鑰獲取單元,具體用於採用與所述客戶端預先確定的獲取方式,從與所述客戶端執行量子密鑰分發操作產生的密鑰序列中獲取作為資料加密密鑰的第一密鑰、以及第二密鑰;所述裝置還包括:服務端身份密鑰更新單元,用於用所述第二密鑰更新本地儲存的對應於所述客戶端的身份密鑰。
  22. 一種用於資料安全傳輸的客戶端方法,包括:發送對服務端的存取請求;採用與所述服務端預先確定的獲取方式,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;利用所述資料加密密鑰與所述服務端進行資料安全傳輸。
  23. 根據申請專利範圍第22項所述的用於資料安全傳輸的客戶端方法,其中,在發送對服務端的存取請求之 後,包括:基於本地儲存的身份密鑰執行身份驗證操作,並當所述身份驗證操作的結果為通過時,執行獲取資料加密密鑰的步驟;其中,所述本地儲存的身份密鑰與所述服務端儲存的對應於所述客戶端的身份密鑰相同。
  24. 根據申請專利範圍第23項所述的用於資料安全傳輸的客戶端方法,其中,所述存取請求的內容包含:所述客戶端的客戶端標識;所述基於本地儲存的身份密鑰執行身份驗證操作,包括:接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據本地儲存的身份密鑰計算散列值;將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
  25. 根據申請專利範圍第23項所述的用於資料安全傳輸的客戶端方法,其中,在發送對服務端的存取請求之前,包括:至少根據儲存的身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊;所述發送對服務端的存取請求是指,發送包含所述客戶端的客戶端標識,以及所述客戶端驗證資訊的存取請求; 所述基於本地儲存的身份密鑰執行身份驗證操作,包括:判斷基於本地儲存的身份密鑰產生的所述客戶端驗證資訊是否通過所述服務端的驗證,若是,判定所述身份驗證操作的結果為通過。
  26. 根據申請專利範圍第23項所述的用於資料安全傳輸的客戶端方法,其中,在發送對服務端的存取請求之前,包括:讀取本地儲存的身份密鑰;用所述身份密鑰作為對稱密鑰、對採用預設方式產生的動態數值進行加密,得到用於驗證所述服務端身份的密文;所述發送對服務端的存取請求是指,發送至少包含所述客戶端的客戶端標識、以及所述密文的存取請求;所述基於本地儲存的身份密鑰執行身份驗證操作,包括:接收所述服務端返回的響應資訊;採用與所述服務端計算服務端驗證資訊相同的方式,至少根據所述響應資訊包含的服務端標識以及所述產生的動態數值計算散列值;將計算得到的散列值與所述響應資訊包含的服務端驗證資訊進行比對,並在比對結果一致時,判定所述身份驗證操作的結果為通過。
  27. 根據申請專利範圍第26項所述的用於資料安全傳輸的客戶端方法,其中,在讀取儲存的身份密鑰之後, 在發送對服務端的存取請求之前,還包括:根據所述客戶端的客戶端標識以及所述身份密鑰計算散列值,作為用於證實所述客戶端身份的客戶端驗證資訊;所述發送對服務端的存取請求是指,發送包含所述客戶端的客戶端標識、所述客戶端驗證資訊、以及所述密文的存取請求。
  28. 根據申請專利範圍第23至27項中任一項所述的用於資料安全傳輸的客戶端方法,其中,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取的資訊還包括:第二密鑰;所述方法還包括:用所述第二密鑰更新所述本地儲存的身份密鑰。
  29. 一種用於資料安全傳輸的客戶端裝置,包括:存取請求發送單元,用於發送對服務端的存取請求;客戶端資料加密密鑰獲取單元,用於採用與所述服務端預先確定的獲取方式,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取第一密鑰,作為資料加密密鑰;客戶端安全傳輸單元,用於利用所述資料加密密鑰與所述服務端進行資料安全傳輸。
  30. 根據申請專利範圍第29項所述的用於資料安全傳輸的客戶端裝置,其中,還包括:客戶端身份驗證單元,用於當所述存取請求發送單元發送存取請求後,基於本地儲存的身份密鑰執行身份驗證 操作,並當所述身份驗證操作的結果為通過時,觸發所述客戶端資料加密密鑰獲取單元工作;其中,所述本地儲存的身份密鑰與所述服務端儲存的對應於所述客戶端的身份密鑰相同。
  31. 根據申請專利範圍第30項所述的用於資料安全傳輸的客戶端裝置,其中,所述客戶端資料加密密鑰獲取單元,具體用於採用與所述服務端預先確定的獲取方式,從與所述服務端執行量子密鑰分發操作產生的密鑰序列中獲取作為資料加密密鑰的第一密鑰、以及第二密鑰;所述裝置還包括:客戶端身份密鑰更新單元,用於用所述第二密鑰更新所述本地儲存的身份密鑰。
  32. 一種資料安全傳輸系統,包括:根據上述申請專利範圍第19項所述的用於資料安全傳輸的服務端裝置,以及根據上述申請專利範圍第29項所述的用於資料安全傳輸的客戶端裝置。
TW106107246A 2016-05-19 2017-03-06 資料安全傳輸方法、客戶端及服務端方法、裝置及系統 TWI721122B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610339148.7 2016-05-19
CN201610339148.7A CN107404461B (zh) 2016-05-19 2016-05-19 数据安全传输方法、客户端及服务端方法、装置及系统

Publications (2)

Publication Number Publication Date
TW201742399A true TW201742399A (zh) 2017-12-01
TWI721122B TWI721122B (zh) 2021-03-11

Family

ID=60331065

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106107246A TWI721122B (zh) 2016-05-19 2017-03-06 資料安全傳輸方法、客戶端及服務端方法、裝置及系統

Country Status (7)

Country Link
US (1) US10439806B2 (zh)
EP (1) EP3459202A4 (zh)
JP (1) JP2019517184A (zh)
KR (1) KR20190005878A (zh)
CN (1) CN107404461B (zh)
SG (1) SG11201808991WA (zh)
TW (1) TWI721122B (zh)

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107959566A (zh) * 2016-10-14 2018-04-24 阿里巴巴集团控股有限公司 量子数据密钥协商系统及量子数据密钥协商方法
US20180123782A1 (en) * 2016-10-27 2018-05-03 Motorola Solutions, Inc. Method for secret origination service to distribute a shared secret
US10382562B2 (en) * 2016-11-04 2019-08-13 A10 Networks, Inc. Verification of server certificates using hash codes
SG10201700811VA (en) * 2017-02-01 2018-09-27 Huawei Int Pte Ltd System and method for efficient and secure communications between devices
US10785193B2 (en) * 2017-03-30 2020-09-22 Seagate Technology Llc Security key hopping
US10587732B2 (en) 2017-04-13 2020-03-10 International Business Machines Corporation Secure client-server communication
US10966091B1 (en) * 2017-05-24 2021-03-30 Jonathan Grier Agile node isolation using packet level non-repudiation for mobile networks
US10771439B2 (en) * 2017-06-28 2020-09-08 Microsoft Technology Licensing, Llc Shielded networks for virtual machines
CN108234501B (zh) * 2018-01-11 2020-12-11 北京中电普华信息技术有限公司 一种基于量子密钥融合的虚拟电厂安全通信方法
EP3741055A4 (en) * 2018-01-15 2021-10-27 National University of Singapore SOURCE OF UNIQUE PHOTONS AND KEY DISTRIBUTION
WO2019140554A1 (zh) * 2018-01-16 2019-07-25 Oppo广东移动通信有限公司 一种数据验证方法、网络设备、ue及计算机存储介质
CN108388946B (zh) * 2018-01-29 2021-08-17 湘潭大学 一种基于盲量子计算的两方量子计算方法
KR102028098B1 (ko) * 2018-01-29 2019-10-02 한국전자통신연구원 양자암호통신 인증 장치 및 방법
US10812258B1 (en) * 2018-03-09 2020-10-20 Wells Fargo Bank, N.A. Systems and methods for quantum session authentication
US10855454B1 (en) 2018-03-09 2020-12-01 Wells Fargo Bank, N.A. Systems and methods for quantum session authentication
US10728029B1 (en) 2018-03-09 2020-07-28 Wells Fargo Bank, N.A. Systems and methods for multi-server quantum session authentication
US11343087B1 (en) 2018-03-09 2022-05-24 Wells Fargo Bank, N.A. Systems and methods for server-side quantum session authentication
US11025416B1 (en) * 2018-03-09 2021-06-01 Wells Fargo Bank, N.A. Systems and methods for quantum session authentication
CN108173654B (zh) * 2018-03-13 2020-06-23 成都信息工程大学 一种基于半量子技术的两方密钥协商方法及系统
CN108737412B (zh) * 2018-05-15 2021-06-25 福建天晴数码有限公司 一种实现数据请求的方法及终端
CN109150835B (zh) * 2018-07-20 2021-05-04 国科量子通信网络有限公司 云端数据存取的方法、装置、设备及计算机可读存储介质
CN110839240B (zh) * 2018-08-17 2022-07-05 阿里巴巴集团控股有限公司 一种建立连接的方法及装置
US11190349B1 (en) 2018-08-20 2021-11-30 Wells Fargo Bank, N.A. Systems and methods for providing randomness-as-a-service
US11095439B1 (en) 2018-08-20 2021-08-17 Wells Fargo Bank, N.A. Systems and methods for centralized quantum session authentication
US10552120B1 (en) 2018-08-20 2020-02-04 Wells Fargo Bank, N.A. Systems and methods for single chip quantum random number generation
US10855453B1 (en) 2018-08-20 2020-12-01 Wells Fargo Bank, N.A. Systems and methods for time-bin quantum session authentication
US10540146B1 (en) 2018-08-20 2020-01-21 Wells Fargo Bank, N.A. Systems and methods for single chip quantum random number generation
US10855457B1 (en) 2018-08-20 2020-12-01 Wells Fargo Bank, N.A. Systems and methods for single chip quantum random number generation
US11240013B1 (en) * 2018-08-20 2022-02-01 Wells Fargo Bank, N.A. Systems and methods for passive quantum session authentication
CN110868374A (zh) * 2018-08-27 2020-03-06 京东方科技集团股份有限公司 安全认证方法、服务器及客户端设备
CN109286446B (zh) * 2018-09-25 2019-12-20 苏州大学 基于ghz态的联合远程制备六比特团簇态的方法
CN109413076B (zh) * 2018-11-06 2022-11-29 北京奇虎科技有限公司 域名解析方法及装置
CN109688115B (zh) * 2018-12-11 2022-09-13 北京数盾信息科技有限公司 一种数据安全传输系统
EP3674934A1 (en) * 2018-12-26 2020-07-01 Thales Dis France SA Biometric acquisition system and method
CN109728905B (zh) * 2019-01-11 2021-04-06 如般量子科技有限公司 基于非对称密钥池的抗量子计算mqv密钥协商方法和系统
CN109756500B (zh) * 2019-01-11 2021-02-02 如般量子科技有限公司 基于多个非对称密钥池的抗量子计算https通信方法和系统
CN109861813B (zh) * 2019-01-11 2021-08-10 如般量子科技有限公司 基于非对称密钥池的抗量子计算https通信方法和系统
CN109687962B (zh) * 2019-01-15 2021-04-06 如般量子科技有限公司 基于私钥池的抗量子计算mqv密钥协商方法和系统
US11606688B2 (en) 2019-02-20 2023-03-14 Coretigo Ltd. Secure key exchange mechanism in a wireless communication system
EP3949463A1 (en) * 2019-04-05 2022-02-09 Global Id Sa Method, electronic identity object, and terminal for recognizing and/or identifying a user
CN110086627B (zh) * 2019-04-22 2023-08-04 如般量子科技有限公司 基于非对称密钥池对和时间戳的量子通信服务站密钥协商方法和系统
CN110138547B (zh) * 2019-04-22 2023-09-01 如般量子科技有限公司 基于非对称密钥池对和序列号的量子通信服务站密钥协商方法和系统
CN110176997B (zh) * 2019-05-15 2023-03-10 如般量子科技有限公司 一种量子通信服务站aka密钥协商方法和系统
CN110365472B (zh) * 2019-05-30 2023-08-04 如般量子科技有限公司 基于非对称密钥池对的量子通信服务站数字签名方法、系统
CN110380859B (zh) * 2019-05-30 2022-10-14 如般量子科技有限公司 基于非对称密钥池对和dh协议的量子通信服务站身份认证方法和系统
CN110225049A (zh) * 2019-06-20 2019-09-10 哈工大机器人湖州国际创新研究院 数据传输方法、客户端和服务器
CN110365746A (zh) * 2019-06-24 2019-10-22 广州艾帝西信息科技有限公司 一种信息传送方法及系统
US11218472B2 (en) * 2019-07-01 2022-01-04 Steve Rosenblatt Methods and systems to facilitate establishing a connection between an access-seeking device and an access granting device
CN110505531B (zh) * 2019-07-02 2021-04-16 杭州海康威视数字技术股份有限公司 一种媒体数据传输系统、方法及装置
CN110493177B (zh) * 2019-07-02 2021-08-31 如般量子科技有限公司 基于非对称密钥池对和序列号的量子通信服务站aka密钥协商方法和系统
WO2021011343A1 (en) * 2019-07-12 2021-01-21 Ethopass, Llc Data protection and recovery systems and methods
CN110417552A (zh) * 2019-08-06 2019-11-05 中国工商银行股份有限公司 基于量子缠绕的安全通讯方法及系统
CN110505224B (zh) * 2019-08-20 2022-05-20 佛山市禅信通科技有限公司 一种楼宇通信系统及其通信方法
US11271747B2 (en) * 2019-09-16 2022-03-08 Lawrence Livermore National Security, Llc Optical authentication of images
US11228431B2 (en) * 2019-09-20 2022-01-18 General Electric Company Communication systems and methods for authenticating data packets within network flow
EP4035035A4 (en) * 2019-09-25 2023-10-04 Commonwealth Scientific and Industrial Research Organisation CRYPTOGRAPHIC SERVICES FOR BROWSER APPLICATIONS
EP4045967A4 (en) 2019-10-17 2023-11-15 Cable Television Laboratories, Inc. QUANTUM KEY MANAGEMENT AND DISTRIBUTION IN PASSIVE OPTICAL NETWORKS
CN110601838A (zh) * 2019-10-24 2019-12-20 国网山东省电力公司信息通信公司 一种基于量子密钥的身份认证方法、装置及系统
AU2019101343B4 (en) * 2019-11-05 2020-04-16 Anson, Mark Rodney Mr A computer system implemented method for generating a symmetric encryption key for encrypting and decrypting secure data
CN110838920B (zh) * 2019-11-20 2022-03-25 北京航空航天大学 web系统中无需存储口令相关信息的口令认证与密钥协商协议
CN111200599A (zh) * 2019-12-28 2020-05-26 浪潮电子信息产业股份有限公司 一种访问认证方法、装置、设备及可读存储介质
CN111132150A (zh) * 2019-12-31 2020-05-08 中科曙光国际信息产业有限公司 一种保护数据的方法、装置、存储介质和电子设备
JP7430942B2 (ja) 2020-10-08 2024-02-14 学校法人玉川学園 信号処理システム
EP4037247A1 (en) 2021-01-27 2022-08-03 Terra Quantum AG Method and system for quantum key distribution
EP4047861A1 (en) * 2021-02-18 2022-08-24 Terra Quantum AG Method and system for quantum key distribution
EP4068677B1 (en) * 2021-03-31 2023-06-07 Deutsche Telekom AG Method and system for creating a quantum secured encryption key
CN113595722B (zh) * 2021-06-28 2023-11-07 阿里巴巴新加坡控股有限公司 量子安全密钥同步方法、装置、电子设备和存储介质
KR102345419B1 (ko) * 2021-07-27 2021-12-30 대아티아이 (주) 양자암호통신기술을 적용한 철도관제 내부 통신 시스템 및 그 운영 방법
CN114866258A (zh) * 2022-05-16 2022-08-05 卡奥斯工业智能研究院(青岛)有限公司 一种访问关系的建立方法、装置、电子设备及存储介质
CN114844720B (zh) * 2022-06-06 2023-06-02 湖南五凌电力科技有限公司 一种物联数据加密传输方法、系统、服务端及客户端
CN115292332B (zh) * 2022-10-09 2023-01-13 北京珞安科技有限责任公司 防火墙运行数据储存方法、系统、存储介质及客户端

Family Cites Families (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2101495T3 (es) 1992-12-24 1997-07-01 British Telecomm Sistema y metodo para la distribucion de codigos utilizando criptografia cuantica.
US5307410A (en) 1993-05-25 1994-04-26 International Business Machines Corporation Interferometric quantum cryptographic key distribution system
US6151676A (en) * 1997-12-24 2000-11-21 Philips Electronics North America Corporation Administration and utilization of secret fresh random numbers in a networked environment
US6505247B1 (en) 1998-08-21 2003-01-07 National Instruments Corporation Industrial automation system and method for efficiently transferring time-sensitive and quality-sensitive data
US8677505B2 (en) 2000-11-13 2014-03-18 Digital Doors, Inc. Security system with extraction, reconstruction and secure recovery and storage of data
JPWO2003069489A1 (ja) 2002-02-14 2005-11-04 若山 裕典 本人認証の方法
US8850179B2 (en) 2003-09-15 2014-09-30 Telecommunication Systems, Inc. Encapsulation of secure encrypted data in a deployable, secure communication system allowing benign, secure commercial transport
US7299354B2 (en) 2003-09-30 2007-11-20 Intel Corporation Method to authenticate clients and hosts to provide secure network boot
WO2005060139A2 (en) 2003-12-17 2005-06-30 General Dynamics Advanced Information Systems, Inc. Secure quantum key distribution using entangled photons
US7644278B2 (en) 2003-12-31 2010-01-05 International Business Machines Corporation Method for securely creating an endorsement certificate in an insecure environment
EP1715614B1 (en) * 2004-02-10 2014-05-07 Mitsubishi Electric Corporation Quantum key delivering method and communication device
US7181011B2 (en) 2004-05-24 2007-02-20 Magiq Technologies, Inc. Key bank systems and methods for QKD
US7484099B2 (en) 2004-07-29 2009-01-27 International Business Machines Corporation Method, apparatus, and product for asserting physical presence with a trusted platform module in a hypervisor environment
US20060056630A1 (en) 2004-09-13 2006-03-16 Zimmer Vincent J Method to support secure network booting using quantum cryptography and quantum key distribution
US9191198B2 (en) 2005-06-16 2015-11-17 Hewlett-Packard Development Company, L.P. Method and device using one-time pad data
US7885412B2 (en) 2005-09-29 2011-02-08 International Business Machines Corporation Pre-generation of generic session keys for use in communicating within communications environments
ATE433630T1 (de) 2005-12-23 2009-06-15 Alcatel Lucent Ressourcen-zugangskontrolle für kunden-gesteuerte und netzwerk-gesteuerte abfragen
US8082443B2 (en) 2006-01-09 2011-12-20 Bbnt Solutions Llc. Pedigrees for quantum cryptography
CN101479984B (zh) 2006-04-25 2011-06-08 斯蒂芬·L.·博伦 用于身份管理、验证服务器、数据安全和防止中间人攻击的动态分发密钥系统和方法
US20130227286A1 (en) 2006-04-25 2013-08-29 Andre Jacques Brisson Dynamic Identity Verification and Authentication, Dynamic Distributed Key Infrastructures, Dynamic Distributed Key Systems and Method for Identity Management, Authentication Servers, Data Security and Preventing Man-in-the-Middle Attacks, Side Channel Attacks, Botnet Attacks, and Credit Card and Financial Transaction Fraud, Mitigating Biometric False Positives and False Negatives, and Controlling Life of Accessible Data in the Cloud
US8418235B2 (en) 2006-11-15 2013-04-09 Research In Motion Limited Client credential based secure session authentication method and apparatus
US8213602B2 (en) 2006-11-27 2012-07-03 Broadcom Corporation Method and system for encrypting and decrypting a transport stream using multiple algorithms
US20080165973A1 (en) 2007-01-09 2008-07-10 Miranda Gavillan Jose G Retrieval and Display of Encryption Labels From an Encryption Key Manager
EP2122900A4 (en) 2007-01-22 2014-07-23 Spyrus Inc PORTABLE DATA ENCRYPTION DEVICE WITH CONFIGURABLE SAFETY FUNCTIONS AND METHOD FOR FILING ENCRYPTION
US20080219449A1 (en) 2007-03-09 2008-09-11 Ball Matthew V Cryptographic key management for stored data
CA2684229A1 (en) 2007-04-12 2008-10-23 Ncipher Corporation Ltd. Method and system for identifying and managing keys
US8111828B2 (en) 2007-07-31 2012-02-07 Hewlett-Packard Development Company, L.P. Management of cryptographic keys for securing stored data
CN101106455B (zh) 2007-08-20 2010-10-13 北京飞天诚信科技有限公司 身份认证的方法和智能密钥装置
US9323901B1 (en) 2007-09-28 2016-04-26 Emc Corporation Data classification for digital rights management
GB0801395D0 (en) * 2008-01-25 2008-03-05 Qinetiq Ltd Network having quantum key distribution
US20090204812A1 (en) 2008-02-13 2009-08-13 Baker Todd M Media processing
US8838990B2 (en) 2008-04-25 2014-09-16 University Of Colorado Board Of Regents Bio-cryptography: secure cryptographic protocols with bipartite biotokens
GB0809044D0 (en) 2008-05-19 2008-06-25 Qinetiq Ltd Multiplexed QKD
MX2011001931A (es) 2008-08-20 2011-07-28 Wherepro Llc Generador de paquete de datos que genera codigos de paso.
GB0819665D0 (en) 2008-10-27 2008-12-03 Qinetiq Ltd Quantum key dsitribution
US9438574B2 (en) 2008-12-30 2016-09-06 Avago Technologies General Ip (Singapore) Pte. Ltd. Client/server authentication over Fibre channel
WO2010090602A1 (en) 2009-02-04 2010-08-12 Data Security Systems Solutions Pte Ltd Transforming static password systems to become 2-factor authentication
US8194858B2 (en) 2009-02-19 2012-06-05 Physical Optics Corporation Chaotic cipher system and method for secure communication
US8077047B2 (en) 2009-04-16 2011-12-13 Ut-Battelle, Llc Tampering detection system using quantum-mechanical systems
GB0917060D0 (en) 2009-09-29 2009-11-11 Qinetiq Ltd Methods and apparatus for use in quantum key distribution
US8700893B2 (en) 2009-10-28 2014-04-15 Microsoft Corporation Key certification in one round trip
WO2011050745A1 (zh) 2009-10-30 2011-05-05 北京飞天诚信科技有限公司 认证方法及系统
KR101314210B1 (ko) 2009-11-24 2013-10-02 한국전자통신연구원 사용자 인증 양자 키 분배 방법
WO2011068784A1 (en) 2009-12-01 2011-06-09 Azuki Systems, Inc. Method and system for secure and reliable video streaming with rate adaptation
KR101351012B1 (ko) 2009-12-18 2014-01-10 한국전자통신연구원 다자간 양자 통신에서의 사용자 인증 방법 및 장치
US8850554B2 (en) 2010-02-17 2014-09-30 Nokia Corporation Method and apparatus for providing an authentication context-based session
US8984588B2 (en) 2010-02-19 2015-03-17 Nokia Corporation Method and apparatus for identity federation gateway
US8868846B2 (en) 2010-03-19 2014-10-21 Netapp, Inc. Method and system for maintaining data coherency across a network
US9002009B2 (en) 2010-06-15 2015-04-07 Los Alamos National Security, Llc Quantum key distribution using card, base station and trusted authority
US8917631B2 (en) 2010-08-23 2014-12-23 Ortsbo Inc. System and method for sharing information between two or more devices
GB201020424D0 (en) 2010-12-02 2011-01-19 Qinetiq Ltd Quantum key distribution
US8839134B2 (en) 2010-12-24 2014-09-16 Intel Corporation Projection interface techniques
GB2501847A (en) 2011-01-18 2013-11-06 Fortress Gb Ltd System and method for computerized negotiations based on coded integrity
US9531758B2 (en) 2011-03-18 2016-12-27 Zscaler, Inc. Dynamic user identification and policy enforcement in cloud-based secure web gateways
WO2012139174A1 (en) 2011-04-15 2012-10-18 Quintessencelabs Pty Ltd Qkd key management system
WO2013019584A1 (en) 2011-07-29 2013-02-07 3M Innovative Properties Company Wireless presentation system allowing automatic association and connection
IL221286B (en) 2011-08-05 2018-01-31 Selex Sistemi Integrati Spa Cryptographic key distribution system
WO2013026086A1 (en) 2011-08-19 2013-02-28 Quintessencelabs Pty Ltd Virtual zeroisation system and method
US9509506B2 (en) 2011-09-30 2016-11-29 Los Alamos National Security, Llc Quantum key management
US9066117B2 (en) 2012-02-08 2015-06-23 Vixs Systems, Inc Container agnostic encryption device and methods for use therewith
WO2013124541A1 (en) 2012-02-24 2013-08-29 Nokia Corporation Method and apparatus for dynamic server|client controlled connectivity logic
US9130742B2 (en) 2012-03-30 2015-09-08 California Institute Of Technology Key agreement in wireless networks with active adversaries
US8693691B2 (en) 2012-05-25 2014-04-08 The Johns Hopkins University Embedded authentication protocol for quantum key distribution systems
US10171454B2 (en) 2012-08-23 2019-01-01 Alejandro V. Natividad Method for producing dynamic data structures for authentication and/or password identification
ES2912265T3 (es) 2012-08-30 2022-05-25 Triad Nat Security Llc Autenticación multifactor utilizando comunicación cuántica
CN102801530B (zh) 2012-09-04 2015-08-26 飞天诚信科技股份有限公司 一种基于声音传输的认证方法
US9294267B2 (en) 2012-11-16 2016-03-22 Deepak Kamath Method, system and program product for secure storage of content
US8869303B2 (en) 2013-02-16 2014-10-21 Mikhail Fleysher Method and system for generation of dynamic password
US9374376B2 (en) 2013-02-27 2016-06-21 The Boeing Company Anti-hacking system for quantum communication
CN104036780B (zh) 2013-03-05 2017-05-24 阿里巴巴集团控股有限公司 一种人机识别方法及系统
US9747456B2 (en) 2013-03-15 2017-08-29 Microsoft Technology Licensing, Llc Secure query processing over encrypted data
US20160080708A1 (en) 2013-04-26 2016-03-17 Hitachi Maxell, Ltd. Projection-type video display device
US9282093B2 (en) 2013-04-30 2016-03-08 Microsoft Technology Licensing, Llc Synchronizing credential hashes between directory services
CN103338448A (zh) * 2013-06-07 2013-10-02 国家电网公司 一种基于量子密钥分发的无线局域网安全通信方法
CN104243143B (zh) * 2013-06-08 2017-03-29 科大国盾量子技术股份有限公司 一种基于量子密钥分配网络的移动保密通信方法
US20150095987A1 (en) 2013-10-01 2015-04-02 Certify Global LLC Systems and methods of verifying an authentication using dynamic scoring
US9684780B2 (en) 2013-11-25 2017-06-20 Yingjie Liu Dynamic interactive identity authentication method and system
CA3189251A1 (en) * 2014-01-31 2015-08-06 Cryptometry Canada Inc. System and method for performing secure communications
JP6359285B2 (ja) 2014-02-17 2018-07-18 株式会社東芝 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
JP6169028B2 (ja) * 2014-03-18 2017-07-26 株式会社東芝 通信装置、通信システムおよび通信方法
JP6223884B2 (ja) * 2014-03-19 2017-11-01 株式会社東芝 通信装置、通信方法およびプログラム
US9331875B2 (en) 2014-04-04 2016-05-03 Nxgen Partners Ip, Llc System and method for communication using orbital angular momentum with multiple layer overlay modulation
US20150288517A1 (en) 2014-04-04 2015-10-08 Ut-Battelle, Llc System and method for secured communication
CN104092536B (zh) * 2014-05-24 2018-02-16 中国人民解放军信息工程大学 便于硬件实现的量子密钥分发中的信息协调方法
US9083739B1 (en) 2014-05-29 2015-07-14 Shape Security, Inc. Client/server authentication using dynamic credentials
CN105553648B (zh) * 2014-10-30 2019-10-29 阿里巴巴集团控股有限公司 量子密钥分发、隐私放大及数据传输方法、装置及系统
KR101776137B1 (ko) 2014-10-30 2017-09-19 에스케이 텔레콤주식회사 양자 키 분배 시스템에서 복수의 장치에 키를 공급하는 장치 및 방법
CN105827397B (zh) 2015-01-08 2019-10-18 阿里巴巴集团控股有限公司 基于可信中继的量子密钥分发系统、方法及装置
CN104657099B (zh) 2015-01-15 2019-04-12 小米科技有限责任公司 屏幕投射方法、装置及系统
CN105871538B (zh) 2015-01-22 2019-04-12 阿里巴巴集团控股有限公司 量子密钥分发系统、量子密钥分发方法及装置
CN105991285B (zh) 2015-02-16 2019-06-11 阿里巴巴集团控股有限公司 用于量子密钥分发过程的身份认证方法、装置及系统
US10848303B2 (en) 2015-03-09 2020-11-24 University Of Houston System Methods and apparatuses for authentication in quantum key distribution and/or quantum data communication
US9667600B2 (en) 2015-04-06 2017-05-30 At&T Intellectual Property I, L.P. Decentralized and distributed secure home subscriber server device
US10348704B2 (en) 2015-07-30 2019-07-09 Helder Silvestre Paiva Figueira Method for a dynamic perpetual encryption cryptosystem
CN105357001B (zh) * 2015-12-10 2018-08-07 安徽问天量子科技股份有限公司 量子密钥动态分发的管理方法及系统

Also Published As

Publication number Publication date
EP3459202A1 (en) 2019-03-27
TWI721122B (zh) 2021-03-11
KR20190005878A (ko) 2019-01-16
US10439806B2 (en) 2019-10-08
CN107404461A (zh) 2017-11-28
SG11201808991WA (en) 2018-11-29
US20170338951A1 (en) 2017-11-23
CN107404461B (zh) 2021-01-26
EP3459202A4 (en) 2019-12-04
JP2019517184A (ja) 2019-06-20

Similar Documents

Publication Publication Date Title
TWI721122B (zh) 資料安全傳輸方法、客戶端及服務端方法、裝置及系統
US11115200B2 (en) System, method, and apparatus for quantum key output, storage, and consistency verification
US11706026B2 (en) Location aware cryptography
CN107959567B (zh) 数据存储方法、数据获取方法、装置及系统
US10050781B2 (en) Method, apparatus, terminal device and system for generating shared key
US8458776B2 (en) Low-latency peer session establishment
WO2017045552A1 (zh) 一种在ssl或tls通信中加载数字证书的方法和装置
US10425234B2 (en) Systems and methods for perfect forward secrecy (PFS) traffic monitoring via a hardware security module
TW201705782A (zh) 用於量子金鑰分配過程的身分認證方法、裝置及系統
KR20210072321A (ko) 블록체인에 기반하는 암호화 통신 시스템 및 암호화 통신 방법
WO2019110018A1 (zh) 通信网络系统的消息验证方法、通信方法和通信网络系统
US20230188325A1 (en) Computer-implemented system and method for highly secure, high speed encryption and transmission of data
US11528127B2 (en) Computer-implemented system and method for highly secure, high speed encryption and transmission of data
US20240113885A1 (en) Hub-based token generation and endpoint selection for secure channel establishment
US20230247010A1 (en) Systems and methods for encryption in network communication