WO2017063534A1 - 一种设备身份认证的方法、装置和系统 - Google Patents

一种设备身份认证的方法、装置和系统 Download PDF

Info

Publication number
WO2017063534A1
WO2017063534A1 PCT/CN2016/101642 CN2016101642W WO2017063534A1 WO 2017063534 A1 WO2017063534 A1 WO 2017063534A1 CN 2016101642 W CN2016101642 W CN 2016101642W WO 2017063534 A1 WO2017063534 A1 WO 2017063534A1
Authority
WO
WIPO (PCT)
Prior art keywords
authentication
key
data
authenticated
random number
Prior art date
Application number
PCT/CN2016/101642
Other languages
English (en)
French (fr)
Inventor
董侃
刘敦俊
Original Assignee
阿里巴巴集团控股有限公司
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 阿里巴巴集团控股有限公司 filed Critical 阿里巴巴集团控股有限公司
Publication of WO2017063534A1 publication Critical patent/WO2017063534A1/zh
Priority to US15/951,611 priority Critical patent/US20180285555A1/en

Links

Images

Classifications

    • 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/44Program or device authentication
    • 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
    • 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/0442Network 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 asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • 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/3226Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • 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/3271Cryptographic 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 challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0431Key distribution or pre-distribution; Key agreement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/062Pre-authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • 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/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Definitions

  • the present invention relates to the field of computer application technologies, and in particular, to a method, device and system for device identity authentication.
  • IMEI International Mobile Equipment Identity
  • IMEI International Mobile Equipment Identity
  • the IMEI number is easily obtained by the application. Therefore, when the network identity authentication is performed, the IMEI number is easily forged and falsified, and cannot meet the identity authentication requirements of the device on the network.
  • the present invention provides a method, apparatus, and system for device identity authentication, which solves the problem of identity authentication caused by the device identity being easily forged and falsified during the authentication process.
  • the present invention provides a method for device identity authentication, the method comprising:
  • an authentication code is generated and sent to the authentication device.
  • the acquiring, by the authenticated device, the device key previously written into the authenticated device includes:
  • the authenticated device acquires a pre-written device key from its own secure storage;
  • the method further includes:
  • the authenticated device determines a random number that is agreed with the authentication device.
  • the authenticated device determines that the random number agreed with the authentication device includes:
  • the authenticated device requests a random number from the authentication device
  • receiving the random number returned by the authentication device includes:
  • the authenticated device determines that the random number agreed with the authentication device includes:
  • a random number is generated using an algorithm agreed in advance with the authentication device.
  • the random number seed includes: key information that is pre-agreed by the authenticated device and the authentication device;
  • the algorithm agreed in advance with the authentication device includes a time-based one-time password algorithm TOTP.
  • signing and/or encrypting the first data with the device key includes:
  • the server key is pre-agreed by the authentication device and the authenticated device.
  • the identity of the authenticated device is generated by the authentication device and provided to the authenticated device in advance.
  • the acquiring a device key previously written to the authenticated device, signing and/or encrypting the first data with the device key, and utilizing the second data and The identification of the authenticated device, the step of generating an authentication code is performed in a trusted execution environment.
  • the device key is a device private key
  • the authentication device stores a device public key corresponding to the device private key
  • the server key is a server public key
  • the authentication device stores a server private key corresponding to the server public key
  • the invention also provides a method for device identity authentication, the method comprising:
  • the authentication device receives the authentication code sent by the authenticated device
  • the authenticated device is authenticated by using the random number obtained by the signature verification and/or decryption.
  • the method further includes:
  • the authentication device parses the identity identifier of the authenticated device from the authentication code
  • Determining by using a pre-stored correspondence between the identity of the authenticated device and the device key, a device key corresponding to the identity of the authenticated device.
  • performing signature verification and/or decryption on the second data included in the authentication code by using a device key corresponding to the identity of the authenticated device includes:
  • the authentication of the authenticated device by using the random number obtained by the signature verification and/or decryption includes:
  • the method further includes:
  • the authentication device determines a random number that is agreed with the authenticated device.
  • the determining, by the authentication device, the random number agreed with the authenticated device includes:
  • the authentication device receives a request for the authenticated device to acquire a random number
  • returning the random number to the authenticated device includes:
  • the random number is encrypted by using a server key, and the encrypted random number is returned to the authenticated device, and the server key is pre-agreed by the authentication device and the authenticated device.
  • the determining, by the authentication device, the random number agreed with the authenticated device includes:
  • the authentication device acquires a random number seed that is previously agreed with the authenticated device
  • a random number is generated using an algorithm agreed in advance with the authenticated device.
  • the random number seed includes: key information pre-agreed by the authentication device and the authenticated device;
  • the algorithm agreed in advance with the authenticated device includes a time-based one-time cryptographic algorithm TOTP.
  • the method further includes:
  • the authentication device generates an identity for the authenticated device in advance, and provides the identity of the authenticated device to the authenticated device.
  • the device key is a device public key
  • a device private key corresponding to the device public key is pre-written in the authenticated device.
  • the server key is a server private key
  • a server public key corresponding to the server private key is stored in the authenticated device.
  • the present invention also provides a device for authenticating a device, the device being disposed on an authenticated device, the device comprising:
  • a key acquisition unit configured to acquire a device key written in advance by the authenticated device, where the device key is pre-agreed by the authentication device and the authenticated device;
  • An authentication code generating unit configured to use the device key to sign and/or encrypt the first data to obtain second data, where the first data includes a random number agreed by the authenticated device and the authentication device; Generating an authentication code by using the second data and the identity of the authenticated device;
  • An authentication requesting unit configured to send the authentication code to the authentication device.
  • the key obtaining unit is specifically used in the authentication request unit. Upon triggering, a pre-written device key is obtained from the secure storage of the authenticated device.
  • the device further comprises:
  • an identifier obtaining unit configured to obtain a pre-written identifier from the secure storage of the authenticated device, and provide the identifier to the authentication code generating unit, triggered by the authentication request unit.
  • the authentication code generating unit is further configured to determine a random number agreed by the authenticated device and the authentication device.
  • the authentication code generating unit specifically performs: when determining the random number agreed by the authenticated device and the authentication device:
  • the authentication code generating unit when receiving the random number returned by the authentication device, specifically uses the server key to decrypt the encrypted random number returned by the authentication device, where The server key is pre-agreed by the authentication device and the authenticated device.
  • the authentication code generating unit specifically performs: when determining the random number agreed by the authenticated device and the authentication device:
  • a random number is generated using an algorithm agreed in advance with the authentication device.
  • the random number seed includes: key information that is pre-agreed by the authenticated device and the authentication device;
  • the algorithm agreed in advance with the authentication device includes a time-based one-time password algorithm TOTP.
  • the authentication code generating unit performs: when the first data is signed and/or encrypted by using the device key, specifically:
  • the server key is pre-agreed by the authentication device and the authenticated device.
  • the identity of the authenticated device is generated and predicted by the authentication device. First provided to the authenticated device.
  • the key acquisition unit and the authentication code generation unit are disposed in a trusted execution environment.
  • the device key is a device private key
  • the authentication device stores a device public key corresponding to the device private key
  • the server key is a server public key
  • the authentication device stores a server private key corresponding to the server public key
  • the present invention also provides a device for authenticating a device, the device being provided in an authentication device, the device comprising:
  • a receiving unit configured to receive an authentication code sent by the authenticated device
  • a processing unit configured to perform signature verification and/or decryption on the second data included in the authentication code by using a device key corresponding to the identity of the authenticated device, where the device key is authenticated by the device and The authentication device is pre-agreed;
  • an authentication unit configured to perform authentication on the authenticated device by using the random number obtained by the processing unit for signature verification and/or decryption.
  • the processing unit is further configured to parse the identity of the authenticated device from the authentication code, and use the pre-stored identifier of the authenticated device and the device key. The correspondence between the devices determines the device key corresponding to the identity of the authenticated device.
  • the processing unit is specifically configured to:
  • the authentication unit is specifically configured to:
  • the apparatus further includes: a random number determining unit, configured to determine a random number agreed by the authentication device and the authenticated device.
  • the random number determining unit is specifically configured to:
  • the random number determining unit performs specific execution when returning a random number to the authenticated device:
  • the random number is encrypted by using a server key, and the encrypted random number is returned to the authenticated device, and the server key is pre-agreed by the authentication device and the authenticated device.
  • the random number determining unit is specifically configured to:
  • a random number is generated using an algorithm agreed in advance with the authenticated device.
  • the random number seed includes: key information pre-agreed by the authentication device and the authenticated device;
  • the algorithm agreed in advance with the authenticated device includes a time-based one-time cryptographic algorithm TOTP.
  • the device further comprises:
  • an identifier generating unit configured to generate an identity identifier for the authenticated device in advance, and provide the identity identifier of the authenticated device to the authenticated device.
  • the device key is a device public key
  • a device private key corresponding to the device public key is pre-written in the authenticated device.
  • the server key is a server private key
  • a server public key corresponding to the server private key is stored in the authenticated device.
  • the invention also provides a system for device identity authentication, the system comprising an authenticated device and an authentication device.
  • the authenticated device forms an authentication code by using a device key pre-written to the authenticated device to sign and/or encrypt the data including the random number, and is authenticated using the authentication code.
  • Device authentication even if the identity of the authenticated device is tampered with and leaked, due to device key and random number Only the agreement between the authenticated device and the authentication device is unique, so the identity authentication requirement for the authenticated device can be met.
  • FIG. 1 is a structural diagram of a system according to an embodiment of the present invention
  • FIG. 2 is a flowchart of a first method performed by an authenticated device according to an embodiment of the present invention
  • FIG. 3 is a flowchart of a first method performed by an authentication device according to an embodiment of the present invention.
  • FIG. 4 is a flowchart of a second method performed by an authenticated device according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of a second method performed by an authentication device according to an embodiment of the present invention.
  • FIG. 6 is a flowchart of a third method performed by an authenticated device according to an embodiment of the present invention.
  • FIG. 7 is a flowchart of a third method performed by an authentication device according to an embodiment of the present invention.
  • FIG. 8 is a structural diagram of a device according to an embodiment of the present invention.
  • FIG. 9 is a structural diagram of another apparatus according to an embodiment of the present invention.
  • the system on which the present invention is based may be as shown in FIG. 1, and mainly includes an authenticated device and an authenticated device.
  • the authenticated device may be any physical device, and may include, but is not limited to, a mobile phone, a computer, a network device, a smart home device, a wearable device, a smart medical device, and the like.
  • Computers may include, but are not limited to, PCs, laptops, tablets, and the like.
  • Network devices may include, but are not limited to, routers, switches, network cards, hubs, and the like.
  • Smart home devices may include, but are not limited to, smart televisions, smart air conditioners, smart humidifiers, smart water heaters, smart kitchen appliances, smart doors and windows, smart air purifiers, and the like.
  • Wearable devices may include, but are not limited to, smart bracelets, smart watches, smart glasses, and the like.
  • Intelligent medical devices may include, but are not limited to, smart blood pressure monitors, smart weight scales, smart blood glucose meters, smart massage chairs, and the like.
  • the authentication device can be a server device or a cluster of devices, such as a server or server cluster.
  • the device key of the authenticated device is written in the device to be authenticated in advance. If the symmetric encryption/decryption mode is adopted in the embodiment of the present invention, the same device is stored in the authentication device. Key, the device key is pre-agreed by the authenticated device and the authentication device, and only the authentication device and the authenticated device are known, and other devices cannot obtain it. If the asymmetric encryption/decryption mode is adopted in the embodiment of the present invention, the device key written to the authenticated device may be the device private key, and then the authentication device stores the device private key corresponding to the authenticated device. The device public key, the device private key and the device public key form a set of key pairs. The private key of the device is known only to the authenticated device and the authenticated device, and other devices cannot obtain it. The device key is mainly used to generate an authentication code and send it to the authentication device for identity authentication of the authenticated device.
  • FIG. 2 is a flowchart of a first method performed by an authenticated device according to an embodiment of the present invention.
  • an asymmetric encryption and decryption manner is used as an example.
  • the method may include the following. step:
  • the authenticated device acquires the device private key pre-written to the authenticated device.
  • the authenticated device can start identity authentication. It can be customized according to the actual service requirements. For example, when the device is powered on for the first time, it needs to be authenticated during device activation. For example, an application in the device is authenticated. When the corresponding service is requested, the identity authentication can be triggered, and only the authenticated device through which the identity authentication passes can obtain the corresponding service, and the like.
  • the device private key that is written in advance can be acquired.
  • the device private key may be saved in the secure storage.
  • Secure storage can be a secure area isolated on the hardware by means of mechanisms such as ARM TrustZone or Secure Element or TI M-Shield, or it can be isolated by a virtualization mechanism to ensure a secure device.
  • the private key cannot be tampered with and erased. Either way, the purpose is to provide a trusted execution environment for private key acquisition and authentication code generation. The trusted execution environment guarantees the privacy of the device private key.
  • the following information may be written in the authenticated device in advance:
  • the device private key and the identity of the authenticated device are mandatory information, and the server public key is optional information.
  • the device private key is pre-agreed by the authentication device and the authenticated device, and is pre-written to the secure storage at the authenticated device end, and the authentication device end stores the device public key corresponding to the device private key.
  • the identity of the authenticated device is used to uniquely identify the authenticated device, and may be, but is not limited to, the IMEI and the MAC address of the authenticated device. and many more.
  • the identity of the authenticated device may be generated by the authentication device and provided to the authenticated device, for example, to the identifier write device, and the identifier of the authenticated device is written by the identifier write device. Certified equipment.
  • the identity of the authenticated device and the server public key may also be stored in secure storage.
  • the above-mentioned server public key is also an asymmetric encryption and decryption method.
  • a corresponding server private key is stored on the authentication device end. If the symmetric encryption and decryption method is adopted, the same server key is saved in both the authentication device and the authenticated device.
  • the “writing” involved in the embodiments of the present invention may be, but is not limited to, the manner of programming to the device chip.
  • the device private key and the device public key pair may be generated in advance by the authentication device, and the device private key may be provided to the authenticated device when the device is shipped from the factory; or the device private key and the device may be generated by the authenticated device at the factory.
  • the key pair, and then the device public key is provided to the authentication device.
  • the server private key and the server private key may also be generated by the authentication device, and the server public key is provided to the authenticated device when the authenticated device leaves the factory; or the server private key may be generated by the authenticated device at the factory. And the server public key pair, and then provide the server private key to the authentication device.
  • the first data is signed by using the device private key to obtain second data, where the first data includes a random number agreed by the authenticated device and the authentication device.
  • the authenticated device In addition to obtaining the device private key, the authenticated device also needs to determine the random number agreed with the authentication device when generating the authentication code.
  • the determination of the random number may be adopted by, but not limited to, the following two methods:
  • the first method is a real-time request, that is, the authenticated device requests a random number from the authentication device, and the authentication device generates a random number for the authenticated device and returns it to the authenticated device.
  • the authentication device may use the server private key to encrypt the random number when returning the random number, and the authenticated device decrypts the random number by using the server public key.
  • the server public key may be provided to the authenticated device in advance by the authentication device.
  • the authentication device may pre-generate a set of key pairs, that is, a server public key and a server private key, and provide the server public key therein to the authenticated device.
  • the second method is to use synchronous generation of random numbers at both ends. That is, the authenticated device acquires a random number seed that is pre-agreed with the authentication device, and based on the random number seed, generates a random number by using an algorithm agreed in advance with the authentication device. Correspondingly, the same random number can also be generated by the same random number seed and algorithm on the authentication device side.
  • the random number seed may be key information pre-agreed by the authentication device and the authentication device, and the algorithm for generating the random number may adopt a Time-based One Time Password Algorithm (TOTP).
  • TOTP Time-based One Time Password Algorithm
  • the TOTP algorithm stipulates a start timestamp T0 and an interval time TS between the authentication device and the authenticated device; subtracts the current timestamp from T0, divides the obtained time difference by TS, and rounds it up, An integer TC can be obtained; then the hash operation is performed using the TC and the agreed key information K, and the random number password can be obtained.
  • the TOTP is not described in detail here.
  • other algorithms may be used as long as the authentication device and the authenticated device can generate the same random number.
  • the first data may include other data in addition to the random number, such as vendor information of the device, identity, and other device related information.
  • the first data is signed by using the device private key, for example, the first data is hashed by using the device private key to obtain signature data, and the signature data can only be obtained by using the device public key corresponding to the device private key.
  • the second data is further composed of the first data and the signature data, wherein the first data is plaintext data, and the signature data is ciphertext data.
  • the second data and the identity of the authenticated device are used to generate an authentication code and send it to the authentication device.
  • the authentication code sent to the authentication device includes the second data after the random number is signed by using the device private key and the identity of the authenticated device.
  • FIG. 3 is a flowchart of a first method performed by an authentication device according to an embodiment of the present invention. As shown in FIG. 3, the following steps may be included:
  • the authentication device receives the authentication code sent by the authenticated device.
  • the authentication device can parse the second data and the identity of the authenticated device from the authentication code.
  • the second data included in the authentication code is signature verified by using the device public key corresponding to the identity of the authenticated device.
  • a correspondence between the identity of the authenticated device and the device public key is stored on the authentication device, and the device public key corresponding to the identity of the device to be authenticated can be determined by using the corresponding relationship.
  • the first data included in the second data may be signed by using the device public key, and the obtained signature data is compared with the signature data included in the second data. That is to say, the plaintext data in the second data is extracted, and the plaintext data is signed by the device public key, and the signature data of the ciphertext is obtained, and the signature data obtained by itself is compared with the signature data included in the second data itself. . If they are consistent, it is determined that the signature verification is passed, and the random number is obtained from the first data; otherwise, the signature verification fails, and the information that the signature verification fails can be returned.
  • the authenticated device is authenticated by using the random number obtained by the signature verification.
  • the authentication device needs to determine the random number agreed with the device to be authenticated, and the determined manner may include but is not limited to the following two types:
  • the first method after receiving the request for obtaining the random number by the authenticated device, the authentication device generates a random number and returns it to the authenticated device, where the determined random number is the generated random number.
  • the private key of the server may be used to encrypt the random number, and the encrypted random number is returned to the authenticated device, so that the authenticated device needs to be utilized.
  • the server public key decrypts the random number.
  • the second mode the authentication device acquires a random number seed that is pre-defined with the device to be authenticated, and generates a random number based on the algorithm predetermined in advance with the device to be authenticated based on the random number seed.
  • the random number seed may include key information pre-agreed by the authentication device and the authenticated device, and an algorithm used to generate the random number may adopt a TOTP algorithm.
  • the authentication device and the authenticated device can be pre-agreed to ensure that the random numbers determined at both ends are the same.
  • the random number determined by the authentication device may be compared with the random number obtained from the first data. If they are consistent, the identity authentication of the authenticated device is determined to pass, otherwise the authentication fails. The authentication result can be further returned.
  • FIG. 4 is a flowchart of a second method performed by an authenticated device according to an embodiment of the present invention.
  • an asymmetric encryption and decryption manner is still taken as an example.
  • the method may include The following steps:
  • Step 401 is the same as step 201.
  • Step 401 refers to the related description in step 201.
  • the first data is encrypted by using the device private key to obtain second data, where the first data includes a random number agreed by the authenticated device and the authentication device.
  • step 202 For the method of determining the random number agreed with the authentication device in this step, refer to the related description in step 202, and details are not described herein.
  • the first data including the random number is encrypted by using the device private key to obtain ciphertext data, that is, the second data.
  • Step 403 is the same as step 203.
  • the authentication code sent to the authentication device in this embodiment includes the second data encrypted by the device private key and the identity of the authenticated device.
  • FIG. 5 is a flowchart of a second method performed by an authentication device according to an embodiment of the present invention. As shown in FIG. 5, the method may include the following steps:
  • Step 501 is the same as step 301.
  • Step 501 For details, refer to the related description in step 301.
  • step 502 the authentication device decrypts the second data included in the authentication code by using the device public key corresponding to the identity of the authenticated device.
  • the authentication device decrypts the second data by using the device public key corresponding to the identity of the authenticated device, and obtains the first data of the plaintext, and can obtain the first data. random number.
  • step 503 the authenticated device is authenticated by using the decrypted random number.
  • the method of authentication refer to the description in step 303, and details are not described herein.
  • FIG. 6 is a flowchart of a third method performed by an authenticated device according to an embodiment of the present invention. As shown in FIG. 6, the method may include the following steps:
  • Step 601 is the same as step 201.
  • Step 601 refers to the related description in step 201.
  • the first data is encrypted by using the server public key to obtain ciphertext data, where the first data includes a random number agreed by the authenticated device and the authentication device.
  • step 202 For the method of determining the random number agreed with the authentication device in this step, refer to the related description in step 202, and details are not described herein again.
  • the ciphertext data is signed using the device private key to obtain the second data.
  • the first data including the random number is first encrypted, and then the obtained ciphertext data is signed.
  • the obtained second data includes ciphertext data and signature data obtained by signing the ciphertext data.
  • the first data may be first signed with the device private key to obtain signature data, and then the first data and the signature data are encrypted to obtain the second data.
  • Step 604 is the same as step 203.
  • Step 604 refers to the related description of step 203.
  • FIG. 7 is a flowchart of a third method performed by an authentication device according to an embodiment of the present invention. As shown in FIG. 7, the method may include the following steps:
  • Step 701 is the same as step 301.
  • Step 701 refers to the related description of step 301.
  • the second data included in the authentication code is signature verified by using the device public key corresponding to the identity of the authenticated device.
  • the authentication device may use the device public key to sign the ciphertext data, and obtain the signature data and the signature data included in the second data. If the comparison is made, the signature verification is passed, and step 703 is continued. Otherwise, the signature verification fails, and the information that the signature verification fails can be returned, and the process ends.
  • the ciphertext data included in the second data is decrypted by using the server private key to obtain the first data, and the random number is obtained from the first data.
  • the authentication device first decrypts the second data by using the server private key by using the second data obtained by encrypting the first data and the signature data by the server public key, and obtains the first data and the signature data. Then, the first data is signed by the device public key to obtain signature data, and the obtained signature data is compared with the decrypted signature data. If they are consistent, the verification is passed, otherwise the verification fails. If the verification passes, the random number is obtained from the first data.
  • the authenticated device is authenticated using the decrypted random number.
  • the method of authentication refer to the related description in step 303, and details are not described herein.
  • FIG. 8 is a structural diagram of a device according to an embodiment of the present invention.
  • the device may be disposed on an authenticated device. As shown in FIG. 8, the device may include: a key obtaining unit 01, an authentication code generating unit 02, and an authentication request.
  • the unit 03 may further include an identifier obtaining unit 04.
  • the key acquisition unit 01 is responsible for acquiring a device key previously written to the authenticated device, wherein the device key is pre-agreed by the authentication device and the authenticated device.
  • the key obtaining unit 01 may trigger the acquisition of the device key written in advance by the authentication device by the authentication request unit 03 when the authentication request unit 03 has the identity authentication requirement of the device. For example, when triggered by a specific service, the authentication request unit 03 needs to send the authentication code to the authentication device, and then the key acquisition unit 01 is triggered to acquire the device key.
  • the key acquisition unit 01 can acquire a pre-written device key from the secure storage of the authenticated device.
  • the authentication code generating unit 02 is responsible for signing and/or encrypting the first data by using the device key to obtain second data, wherein the first data includes a random number agreed by the authentication device and the authentication device; and the second data and the authenticated device are utilized. Identity, generate an authentication code.
  • the authentication code is transmitted by the authentication request unit 03 to the authentication device.
  • the identifier acquisition unit 04 is responsible for acquiring the pre-written identification from the secure storage of the authenticated device under the trigger of the authentication request unit 03, and providing it to the authentication code generation unit 02.
  • Secure storage can be a secure area isolated on the hardware using mechanisms such as ARM TrustZone or TI M-Shield, or it can be isolated using a virtualization mechanism to isolate an independent security environment, either way, in order to provide a A trusted execution environment for private key acquisition and authentication code generation. That is to say, the key obtaining unit 01 and the authentication code generating unit 02 involved in the embodiment are disposed in a trusted execution environment.
  • the authentication code generating unit 02 needs to first determine the random number agreed by the authenticated device and the authentication device. Specifically, it can be used but not limited to the following two methods:
  • the first way is to request a random number from the authentication device in real time and receive the random number returned by the authentication device.
  • the authentication unit can encrypt the random number by using the server key when returning the random number.
  • the authentication code generating unit 02 decrypts the encrypted random number returned by the authentication device by using the server key when receiving the random number returned by the authentication device, wherein the server key is pre-agreed by the authentication device and the authenticated device. .
  • the second method is: acquiring a random number seed that is pre-defined with the authentication device, and generating a random number based on an algorithm agreed in advance with the authentication device based on the random number seed.
  • the foregoing random number seed may include: key information that is pre-agreed by the authenticated device and the authentication device.
  • the algorithm pre-agreed with the authentication device may employ, for example, a TOTP algorithm.
  • the random number seed may also be pre-stored in secure storage, and obtained by the authentication code generating unit 02 from the secure storage.
  • the authentication code generating unit 02 may adopt, but is not limited to, the following methods:
  • the first way using the device key to sign the first data to obtain the second data.
  • the second way encrypting the first data by using the device key to obtain the second data.
  • the third method encrypting the first data by using the server key to obtain ciphertext data, and using the device key to sign the ciphertext data to obtain the second data.
  • the fourth method using the device key to sign the first data, obtaining the signature data, and encrypting the first data and the signature data by using the server key to obtain the second data.
  • the identity of the authenticated device may be generated by the authentication device and provided to the authenticated device in advance. Specifically, after receiving the request of the vendor management device, the authentication device may generate a device identifier for the device to be assigned the identifier, and provide the device identifier to the identifier writing device, where the identifier writing device writes the device when the device leaves the factory.
  • the device key is the device private key
  • the authentication device stores the device public key corresponding to the device private key.
  • the device private key and the device public key pair may be generated by the authentication device, and then the device private key therein is provided to the authenticated device. It may also be generated by the authenticated device, and the device public key therein is provided by the authenticated device to the authentication device.
  • the server key is a server public key
  • the authentication device stores a server private key corresponding to the server public key.
  • the server public key and the server private key pair may be generated by the authentication device, and then the server public key therein is provided to the authenticated device. It may also be generated by the authenticated device, and the server private key is provided by the authenticated device to the authentication device.
  • FIG. 9 is a structural diagram of another apparatus according to an embodiment of the present invention.
  • the apparatus is disposed on an authentication device.
  • the apparatus may include: a receiving unit 11, a processing unit 12, and an authentication unit 13, and may further A random number determining unit 14 and an identification generating unit 15 are included.
  • the main functions of each component are as follows:
  • the receiving unit 11 is responsible for receiving the authentication code transmitted by the authenticated device.
  • the processing unit 12 is responsible for performing signature verification and/or decryption on the second data included in the authentication code by using the device key corresponding to the identity of the authenticated device, wherein the device key is pre-agreed by the authentication device and the authenticated device.
  • the authentication unit 13 is responsible for authenticating the authenticated device by using the random number obtained by the processing unit 12 for signature verification and/or decryption.
  • the processing unit 12 may parse the identity of the authenticated device from the authentication code, and determine the device password corresponding to the identity of the authenticated device by using the pre-stored correspondence between the identity of the authenticated device and the device key. key.
  • processing unit 12 can be processed by using, but not limited to, the following manners:
  • the first method using the device key to sign the first data included in the second data, and comparing the obtained signature data with the signature data included in the second data, if they are consistent, determining that the signature verification is passed, from the first The random number is obtained in the data, otherwise the signature verification fails.
  • the second method decrypting the second data by using the device key to obtain the first data, and acquiring the random number from the first data.
  • the third method using the device key to sign the ciphertext data included in the second data, and comparing the obtained signature data with the signature data included in the second data, if they are consistent, determining that the signature verification is passed, and using the server
  • the key decrypts the ciphertext data to obtain a random number, otherwise the signature verification fails.
  • the fourth method decrypting the second data by using the server key, obtaining the signature data and the first data, signing the first data by using the device key, and comparing the signature data obtained by the signature with the decrypted signature data. If yes, it is determined that the signature verification is passed, and the random number is obtained from the first data, otherwise the signature verification fails.
  • the random number agreed by the authentication device and the authenticated device may be compared with the random number obtained by the processing unit 12. If they are consistent, the authentication of the authenticated device is determined, otherwise the authentication is determined. Device authentication failed.
  • the random number determining unit 14 is responsible for determining the random number agreed by the authentication device and the authenticated device. Specifically, it can be used but not limited to the following two methods:
  • the first method is: receiving a request for the authenticated device to obtain a random number, and returning a random number to the authenticated device. That should The request of the authenticated device generates a random number for it in real time.
  • the random number determining unit 14 may encrypt the random number by using the server key when returning the random number to the authenticated device, and return the encrypted random number to the authenticated device, the server. The key is pre-agreed by the authentication device and the authenticated device.
  • the second method is: acquiring a random number seed that is pre-agreed with the authenticated device, and generating a random number based on an algorithm agreed in advance with the authenticated device based on the random number seed.
  • the random number seed may include: key information pre-agreed by the authentication device and the authenticated device.
  • Algorithms pre-agreed with the authenticated device may employ, for example, the TOTP algorithm.
  • the identity of the authenticated device may be generated by the authentication device, that is, the identifier generating unit 15 generates an identity identifier for the authenticated device in advance, and provides the identity of the authenticated device to the authenticated device.
  • the device key may be a device public key, and a device private key corresponding to the device public key is pre-written in the authenticated device.
  • the device private key and the device public key pair may be generated by the authentication device, and then the device private key therein is provided to the authenticated device. It may also be generated by the authenticated device, and the device public key therein is provided by the authenticated device to the authentication device.
  • the server key is a server private key, and the server public key corresponding to the server private key is stored in the authenticated device.
  • the server public key and the server private key pair may be generated by the authentication device, and then the server public key therein is provided to the authenticated device. It may also be generated by the authenticated device, and the server private key is provided by the authenticated device to the authentication device.
  • the authentication of the device in the network service for example, when the device needs to request a certain service in the network, the authentication code described in the embodiment of the present invention may be carried in the request, and only the authentication device of the server uses the authentication code for authentication. After that, the corresponding service is allowed to be delivered to the authenticated device.
  • Authenticate the device during traffic statistics When traffic statistics are collected on a device, devices often use the authentication code to check the real identity of the device by evading the traffic statistics, tampering, and falsifying the device ID.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to implement the solution of the embodiment. purpose.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
  • the above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium.
  • the above software functional unit is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to perform the methods of the various embodiments of the present invention. Part of the steps.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like, which can store program codes. .

Abstract

本发明提供了一种设备身份认证的方法、装置和系统,其中方法包括:被认证设备获取预先写入被认证设备的设备密钥,其中设备密钥由认证设备和被认证设备预先约定;利用设备密钥对第一数据进行签名和/或加密,得到第二数据,其中第一数据包含被认证设备与认证设备约定的随机数;利用第二数据和被认证设备的身份标识,生成认证码并发送给认证设备。认证设备利用与被认证设备的身份标识对应的设备密钥,对认证码包含的第二数据进行签名验证和/或解密;利用签名验证和/或解密得到的随机数,对被认证设备进行认证。本发明能够解决在认证过程中设备身份标识极易被伪造和篡改所带来的身份认证问题。

Description

一种设备身份认证的方法、装置和系统
本申请要求2015年10月14日递交的申请号为201510662102.4、发明名称为“一种设备身份认证的方法、装置和系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及计算机应用技术领域,特别涉及一种设备身份认证的方法、装置和系统。
背景技术
IMEI(International Mobile Equipment Identity,移动设备国际身份码)是在硬件出厂时固化在设备中的,不可更改和擦除,但由于任何人都能够获取到IMEI号,也就是说,IMEI号对外是明文存在的,所以只能解决销售过程中的设备身份问题。当设备入网后,由于IMEI号容易被应用获取,因此在进行网络身份认证时,IMEI号极易被伪造和篡改,无法满足网络上对设备的身份认证需求。
发明内容
有鉴于此,本发明提供了一种设备身份认证的方法、装置和系统,解决在认证过程中设备身份标识极易被伪造和篡改所带来的身份认证问题。
具体技术方案如下:
本发明提供了一种设备身份认证的方法,该方法包括:
被认证设备获取预先写入所述被认证设备的设备密钥,其中所述设备密钥由所述认证设备和所述被认证设备预先约定;
利用所述设备密钥对第一数据进行签名和/或加密,得到第二数据,其中所述第一数据包含所述被认证设备与认证设备约定的随机数;
利用所述第二数据和所述被认证设备的身份标识,生成认证码并发送给所述认证设备。
根据本发明一优选实施方式,所述被认证设备获取预先写入所述被认证设备的设备密钥包括:
所述被认证设备从自身的安全存储中获取预先写入的设备密钥;或者,
从自身的安全存储中获取预先写入的设备密钥和身份标识。
根据本发明一优选实施方式,该方法还包括:
所述被认证设备确定与认证设备约定的随机数。
根据本发明一优选实施方式,所述被认证设备确定与认证设备约定的随机数包括:
所述被认证设备向所述认证设备请求随机数;
接收所述认证设备返回的随机数。
根据本发明一优选实施方式,接收所述认证设备返回的随机数包括:
利用服务端密钥对所述认证设备返回的加密后的随机数进行解密,其中所述服务端密钥由所述认证设备与所述被认证设备预先约定。
根据本发明一优选实施方式,所述被认证设备确定与认证设备约定的随机数包括:
所述被认证设备获取预先与所述认证设备约定的随机数种子;
基于所述随机数种子,采用预先与所述认证设备约定的算法生成随机数。
根据本发明一优选实施方式,所述随机数种子包括:所述被认证设备与认证设备预先约定的密钥信息;
预先与所述认证设备约定的算法包括:基于时间的一次性密码算法TOTP。
根据本发明一优选实施方式,利用所述设备密钥对第一数据进行签名和/或加密包括:
利用所述设备密钥对所述第一数据进行签名,得到第二数据;或者,
利用所述设备密钥对所述第一数据进行加密,得到第二数据;或者,
利用服务端密钥对所述第一数据进行加密,得到密文数据,利用所述设备密钥对所述密文数据进行签名,得到第二数据;或者,
利用所述设备密钥对所述第一数据进行签名,得到签名数据,利用服务端密钥对签名数据进行加密,得到第二数据;
其中,所述服务端密钥由所述认证设备和所述被认证设备预先约定。
根据本发明一优选实施方式,所述被认证设备的身份标识由所述认证设备生成并预先提供给所述被认证设备。
根据本发明一优选实施方式,所述获取预先写入所述被认证设备的设备密钥,利用所述设备密钥对第一数据进行签名和/或加密,以及利用所述第二数据和所述被认证设备的身份标识,生成认证码的步骤在可信执行环境下执行。
根据本发明一优选实施方式,所述设备密钥为设备私钥,所述认证设备保存有与所述设备私钥对应的设备公钥。
根据本发明一优选实施方式,所述服务端密钥为服务端公钥,所述认证设备保存有与所述服务端公钥对应的服务端私钥。
本发明还提供了一种设备身份认证的方法,该方法包括:
认证设备接收被认证设备发送的认证码;
利用与所述被认证设备的身份标识对应的设备密钥,对所述认证码包含的第二数据进行签名验证和/或解密,其中所述设备密钥由认证设备和被认证设备预先约定;
利用所述签名验证和/或解密得到的随机数,对所述被认证设备进行认证。
根据本发明一优选实施方式,该方法还包括:
所述认证设备从所述认证码中解析得到所述被认证设备的身份标识;
利用预先存储的所述被认证设备的身份标识与设备密钥之间的对应关系,确定所述被认证设备的身份标识对应的设备密钥。
根据本发明一优选实施方式,利用与所述被认证设备的身份标识对应的设备密钥,对所述认证码包含的第二数据进行签名验证和/或解密包括:
利用所述设备密钥对所述第二数据包含的第一数据进行签名,将得到的签名数据与所述第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,从所述第一数据中获取随机数,否则确定签名验证失败;或者,
利用所述设备密钥对所述第二数据进行解密,得到第一数据,从所述第一数据中获取随机数;或者,
利用所述设备密钥对所述第二数据包含的密文数据进行签名,将得到的签名数据与所述第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,利用服务端密钥对所述密文数据进行解密,得到随机数,否则确定签名验证失败;或者,
利用服务端密钥对所述第二数据进行解密,得到签名数据和第一数据,利用所述设备密钥对所述第一数据进行签名,将签名得到的签名数据与解密得到的签名数据进行比对,如果一致,则确定签名验证通过,从所述第一数据中获取随机数,否则确定签名验证失败。
根据本发明一优选实施方式,利用所述签名验证和/或解密得到的随机数,对所述被认证设备进行认证包括:
将所述认证设备与所述被认证设备约定的随机数与所述得到的随机数进行比对,如果一致,则确定对所述被认证设备的认证通过,否则确定对所述被认证设备的认证失败。
根据本发明一优选实施方式,该方法还包括:
所述认证设备确定与所述被认证设备约定的随机数。
根据本发明一优选实施方式,所述认证设备确定与所述被认证设备约定的随机数包括:
所述认证设备接收所述被认证设备获取随机数的请求;
向所述被认证设备返回随机数。
根据本发明一优选实施方式,向所述被认证设备返回随机数包括:
利用服务端密钥对所述随机数进行加密,将加密后的随机数返回给所述被认证设备,所述服务端密钥由所述认证设备和所述被认证设备预先约定。
根据本发明一优选实施方式,所述认证设备确定与所述被认证设备约定的随机数包括:
所述认证设备获取预先与所述被认证设备约定的随机数种子;
基于所述随机数种子,采用预先与所述被认证设备约定的算法生成随机数。
根据本发明一优选实施方式,所述随机数种子包括:所述认证设备与所述被认证设备预先约定的密钥信息;
预先与所述被认证设备约定的算法包括:基于时间的一次性密码算法TOTP。
根据本发明一优选实施方式,该方法还包括:
所述认证设备预先针对所述被认证设备生成身份标识,并将所述被认证设备的身份标识提供给所述被认证设备。
根据本发明一优选实施方式,所述设备密钥为设备公钥,在所述被认证设备中预先写入有与所述设备公钥对应的设备私钥。
根据本发明一优选实施方式,所述服务端密钥为服务端私钥,在所述被认证设备中保存有与所述服务端私钥对应的服务端公钥。
本发明还提供了一种设备身份认证的装置,该装置设置于被认证设备,该装置包括:
密钥获取单元,用于获取预先写入所述被认证设备的设备密钥,其中所述设备密钥由所述认证设备和所述被认证设备预先约定;
认证码生成单元,用于利用所述设备密钥对第一数据进行签名和/或加密,得到第二数据,其中所述第一数据包含所述被认证设备与认证设备约定的随机数;利用所述第二数据和所述被认证设备的身份标识,生成认证码;
认证请求单元,用于将所述认证码发送给所述认证设备。
根据本发明一优选实施方式,所述密钥获取单元,具体用于在所述认证请求单元的 触发下,从所述被认证设备的安全存储中获取预先写入的设备密钥。
根据本发明一优选实施方式,该装置还包括:
标识获取单元,用于在所述认证请求单元的触发下,从所述被认证设备的安全存储中获取预先写入的身份标识,并提供给所述认证码生成单元。
根据本发明一优选实施方式,所述认证码生成单元,还用于确定所述被认证设备与所述认证设备约定的随机数。
根据本发明一优选实施方式,所述认证码生成单元在确定所述被认证设备与所述认证设备约定的随机数时,具体执行:
向所述认证设备请求随机数;
接收所述认证设备返回的随机数。
根据本发明一优选实施方式,所述认证码生成单元在接收所述认证设备返回的随机数时,具体用于利用服务端密钥对所述认证设备返回的加密后的随机数进行解密,其中所述服务端密钥由所述认证设备与所述被认证设备预先约定。
根据本发明一优选实施方式,所述认证码生成单元在确定所述被认证设备与所述认证设备约定的随机数时,具体执行:
获取预先与所述认证设备约定的随机数种子;
基于所述随机数种子,采用预先与所述认证设备约定的算法生成随机数。
根据本发明一优选实施方式,所述随机数种子包括:所述被认证设备与认证设备预先约定的密钥信息;
预先与所述认证设备约定的算法包括:基于时间的一次性密码算法TOTP。
根据本发明一优选实施方式,所述认证码生成单元在利用所述设备密钥对第一数据进行签名和/或加密时,具体执行:
利用所述设备密钥对所述第一数据进行签名,得到第二数据;或者,
利用所述设备密钥对所述第一数据进行加密,得到第二数据;或者,
利用服务端密钥对所述第一数据进行加密,得到密文数据,利用所述设备密钥对所述密文数据进行签名,得到第二数据;或者,
利用所述设备密钥对所述第一数据进行签名,得到签名数据,利用服务端密钥对签名数据进行加密,得到第二数据;
其中,所述服务端密钥由所述认证设备与所述被认证设备预先约定。
根据本发明一优选实施方式,所述被认证设备的身份标识由所述认证设备生成并预 先提供给所述被认证设备。
根据本发明一优选实施方式,所述密钥获取单元和所述认证码生成单元设置于可信执行环境。
根据本发明一优选实施方式,所述设备密钥为设备私钥,所述认证设备保存有与所述设备私钥对应的设备公钥。
根据本发明一优选实施方式,所述服务端密钥为服务端公钥,所述认证设备保存有与所述服务端公钥对应的服务端私钥。
本发明还提供了一种设备身份认证的装置,该装置设置于认证设备,该装置包括:
接收单元,用于接收被认证设备发送的认证码;
处理单元,用于利用与所述被认证设备的身份标识对应的设备密钥,对所述认证码包含的第二数据进行签名验证和/或解密,其中所述设备密钥由认证设备和被认证设备预先约定;
认证单元,用于利用所述处理单元进行签名验证和/或解密得到的随机数,对所述被认证设备进行认证。
根据本发明一优选实施方式,所述处理单元,还用于从所述认证码中解析得到所述被认证设备的身份标识,利用预先存储的所述被认证设备的身份标识与设备密钥之间的对应关系,确定所述被认证设备的身份标识对应的设备密钥。
根据本发明一优选实施方式,所述处理单元,具体用于:
利用所述设备密钥对所述第二数据包含的第一数据进行签名,将得到的签名数据与所述第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,从所述第一数据中获取随机数,否则确定签名验证失败;或者,
利用所述设备密钥对所述第二数据进行解密,得到第一数据,从所述第一数据中获取随机数;或者,
利用所述设备密钥对所述第二数据包含的密文数据进行签名,将得到的签名数据与所述第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,利用服务端密钥对所述密文数据进行解密,得到随机数,否则确定签名验证失败;或者,
利用服务端密钥对所述第二数据进行解密,得到签名数据和第一数据,利用所述设备密钥对所述第一数据进行签名,将签名得到的签名数据与解密得到的签名数据进行比对,如果一致,则确定签名验证通过,从所述第一数据中获取随机数,否则确定签名验证失败。
根据本发明一优选实施方式,所述认证单元具体用于:
将所述认证设备与所述被认证设备约定的随机数与所述处理单元得到的随机数进行比对,如果一致,则确定对所述被认证设备的认证通过,否则确定对所述被认证设备的认证失败。
根据本发明一优选实施方式,该装置还包括:随机数确定单元,用于确定所述认证设备与所述被认证设备约定的随机数。
根据本发明一优选实施方式,所述随机数确定单元,具体用于:
接收所述被认证设备获取随机数的请求;
向所述被认证设备返回随机数。
根据本发明一优选实施方式,所述随机数确定单元在向所述被认证设备返回随机数时,具体执行:
利用服务端密钥对所述随机数进行加密,将加密后的随机数返回给所述被认证设备,所述服务端密钥由所述认证设备和所述被认证设备预先约定。
根据本发明一优选实施方式,所述随机数确定单元,具体用于:
获取预先与所述被认证设备约定的随机数种子;
基于所述随机数种子,采用预先与所述被认证设备约定的算法生成随机数。
根据本发明一优选实施方式,所述随机数种子包括:所述认证设备与所述被认证设备预先约定的密钥信息;
预先与所述被认证设备约定的算法包括:基于时间的一次性密码算法TOTP。
根据本发明一优选实施方式,该装置还包括:
标识生成单元,用于预先针对所述被认证设备生成身份标识,并将所述被认证设备的身份标识提供给所述被认证设备。
根据本发明一优选实施方式,所述设备密钥为设备公钥,在所述被认证设备中预先写入有与所述设备公钥对应的设备私钥。
根据本发明一优选实施方式,所述服务端密钥为服务端私钥,在所述被认证设备中保存有与所述服务端私钥对应的服务端公钥。
本发明还提供了一种设备身份认证的系统,该系统包括被认证设备和认证设备。
由以上技术方案可以看出,本发明中被认证设备使用预先写入被认证设备的设备密钥对包含随机数的数据进行签名和/或加密的方式形成认证码,使用该认证码进行被认证设备的身份认证,即便被认证设备的身份标识被篡改和泄露,但由于设备密钥和随机数 只有被认证设备与认证设备之间约定,具有唯一性,因此能够满足对被认证设备的身份认证需求。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的系统结构图;
图2为本发明实施例提供的被认证设备执行的第一种方法流程图;
图3为本发明实施例提供的认证设备执行的第一种方法流程图;
图4为本发明实施例提供的被认证设备执行的第二种方法流程图;
图5为本发明实施例提供的认证设备执行的第二种方法流程图;
图6为本发明实施例提供的被认证设备执行的第三种方法流程图;
图7为本发明实施例提供的认证设备执行的第三种方法流程图;
图8为本发明实施例提供的一种装置结构图;
图9为本发明实施例提供的另一种装置结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
本发明所基于的系统可以如图1中所示,主要包括被认证设备和认证设备。其中被认证设备可以是任意的物理设备,可以包括但不限于:手机、电脑、网络设备、智能家居设备、可穿戴设备、智能医疗器械等。其中电脑可以包括但不限于PC、笔记本电脑、平板电脑等。网络设备可以包括但不限于路由器、交换机、网卡、集线器等。智能家居设备可以包括但不限于智能电视、智能空调、智能加湿器、智能热水器、智能厨电设备、智能门窗、智能空气净化器等。可穿戴设备可以包括但不限于:智能手环、智能手表、智能眼镜等等。智能医疗器械可以包括但不限于:智能血压计、智能体重计、智能血糖仪、智能按摩椅等。认证设备可以是服务端的设备或设备集群,例如服务器或服务器集群的形式。
在本发明实施例中,预先在被认证设备中写入被认证设备的设备密钥,如果在本发明实施例中,采用对称式加/解密方式,那么在认证设备中保存有同样的设备密钥,该设备密钥由被认证设备和认证设备预先约定,且只有认证设备和被认证设备获知,其他设备无法得到。如果在本发明实施例中采用非对称式加/解密方式,那么写入被认证设备的设备密钥可以是设备私钥,那么在认证设备中保存有与该被认证设备的设备私钥对应的设备公钥,该设备私钥和设备公钥构成一组密钥对。该设备私钥只有被认证设备和认证设备获知,其他设备无法得到。该设备密钥主要用于生成认证码发送给认证设备,以进行被认证设备的身份认证。
被认证设备端开始进行身份认证时,可以执行如图2中所示的流程。图2为本发明实施例提供的被认证设备执行的第一种方法流程图,在本实施例中以非对称式加解密方式为例进行描述,如图2中所示,该方法可以包括以下步骤:
在201中,被认证设备获取预先写入被认证设备的设备私钥。
触发被认证设备开始进行身份认证的时机有很多,可以根据实际的业务需求进行定制,例如被认证设备第一次开机时,在设备激活过程中需要进行身份认证;再例如被认证设备中某应用要请求对应的服务时,可以触发身份认证,只有身份认证通过的被认证设备才能够获取到对应的服务,等等。
当被认证设备被触发进行身份认证时,可以获取预先被写入的设备私钥。在本发明实施例中,为了保证设备私钥的安全性,可以在安全存储中保存设备私钥。安全存储可以是利用诸如ARM TrustZone或Secure Element或TI M-Shield等机制在硬件上隔离出的安全区域,也可以是利用虚拟化机制隔离出一个独立的安全环境,安全存储保证了存入的设备私钥不可篡改和擦除。无论采用哪种方式,目的是为了提供一个可信执行环境来进行私钥的获取和认证码的生成,可信执行环境保证了设备私钥的私密性。
在本发明实施例中,为了实现身份认证可以预先在被认证设备中写入以下信息:
1)设备私钥。
2)被认证设备的身份标识。
3)服务端公钥。
其中设备私钥和被认证设备的身份标识是必须的信息,服务端公钥是可选的信息。如上面已经提及的,设备私钥由认证设备与被认证设备预先约定,并在被认证设备端预先写入安全存储,同时认证设备端保存有与设备私钥对应的设备公钥。被认证设备的身份标识用于唯一标识被认证设备,可以采用但不限于:被认证设备的IMEI、MAC地址 等等。作为一种优选的实施方式,被认证设备的身份标识可以由认证设备生成,并提供给被认证设备,例如提供给标识写入设备,由标识写入设备将被认证设备的身份标识写入被认证设备。其中,被认证设备的身份标识和服务端公钥也可以存储于安全存储。
上述的服务端公钥也是以非对称加解密方式为例,相应地,在认证设备端保存有对应的服务端私钥。如果采用对称加解密方式,那么在认证设备和被认证设备都保存有相同的服务端密钥。
本发明实施例中涉及的“写入”可以采用但不限于烧录至设备芯片的方式。设备私钥和设备公钥对可以预先由认证设备生成,并在被认证设备出厂时将其中的设备私钥提供给被认证设备;也可以由被认证设备在出厂时生成设备私钥和设备公钥对,然后将其中的设备公钥提供给认证设备。服务端私钥和服务端私钥同样可以由认证设备生成,并在被认证设备出厂时将其中的服务端公钥提供给被认证设备;也可以由被认证设备在出厂时生成服务端私钥和服务端公钥对,然后将其中的服务端私钥提供给认证设备。
在202中,利用设备私钥对第一数据进行签名,得到第二数据,其中第一数据包含被认证设备与认证设备约定的随机数。
被认证设备除了获取设备私钥之外,在生成认证码时,还需要确定与认证设备约定的随机数。在本发明实施例中,随机数的确定可以采用但不限于以下两种方式:
第一种方式为实时请求的方式,即被认证设备向认证设备请求随机数,由认证设备针对该被认证设备生成一个随机数,并返回给被认证设备。为了保证随机数的安全性,认证设备在返回随机数时,可以采用服务端私钥对随机数进行加密,被认证设备利用服务端公钥对随机数进行解密。
其中,服务端公钥可以由认证设备预先提供给被认证设备。例如,认证设备可以预先生成一组密钥对,即服务端公钥和服务端私钥,将其中的服务端公钥提供给被认证设备。
第二种方式为两端采用同步生成随机数的方式。即被认证设备获取与认证设备预先约定的随机数种子,基于该随机数种子,采用预先与认证设备约定的算法生成随机数。相应地,在认证设备端也可以采用相同的随机数种子和算法生成相同的随机数。
其中,上述随机数种子可以是被认证设备与认证设备预先约定的密钥信息,上述生成随机数的算法可以采用诸如TOTP(Time-based One Time Password Algorithm,基于时间的一次性密码算法)。TOTP算法通过在认证设备和被认证设备之间约定一个起始时间戳T0,以及间隔时间TS;把当前时间戳减去T0,用得到的时间差除以TS并取整, 可以得到整数TC;然后利用TC和约定的密钥信息K进行哈希运算,就可以得到随机数password。在此不对TOTP进行详细说明,当然除了TOTP算法之外,也可以采用其他算法,只要保证认证设备和被认证设备能够生成同样的随机数即可。
上述第一数据除了包含随机数之外,还可以包含其他数据,例如设备的厂商信息、身份标识等等其他设备相关信息。
在本步骤中利用设备私钥对第一数据进行签名,例如利用设备私钥对第一数据进行哈希运算,得到签名数据,该签名数据只有利用与该设备私钥对应的设备公钥才能够进行签名验证。再由第一数据和签名数据构成第二数据,其中第一数据为明文数据,签名数据为密文数据。
在203中,利用第二数据和被认证设备的身份标识,生成认证码并发送给认证设备。
在本实施例中,发送给认证设备的认证码包含利用设备私钥对随机数进行签名之后的第二数据以及被认证设备的身份标识。
对应于图2所示的实施例,认证设备端执行的认证流程可以如图3中所示。图3为本发明实施例提供的认证设备执行的第一种方法流程图,如图3中所示,可以包括以下步骤:
在301中,认证设备接收被认证设备发送的认证码。
认证设备从该认证码中可以解析得到第二数据和被认证设备的身份标识。
在302中,利用与被认证设备的身份标识对应的设备公钥,对认证码包含的第二数据进行签名验证。
在认证设备端保存有被认证设备的身份标识与设备公钥之间的对应关系,利用该对应关系可以确定出被认证设备的身份标识对应的设备公钥。
在利用设备公钥进行签名验证时,可以利用设备公钥对第二数据包含的第一数据进行签名,将得到的签名数据与第二数据包含的签名数据进行比对。也就是说,提取出第二数据中的明文数据,利用设备公钥对明文数据进行签名后,得到密文的签名数据,将自己得到的签名数据与第二数据本身包含的签名数据进行比对。如果一致,则确定签名验证通过,从第一数据中获取随机数;否则确定签名验证失败,可以返回签名验证失败的信息。
在303中,利用签名验证得到的随机数,对被认证设备进行认证。
在本步骤中,认证设备需要确定与被认证设备约定的随机数,确定的方式可以包括但不限于以下两种:
第一种方式:认证设备接收到被认证设备获取随机数的请求后,生成随机数并返回给被认证设备,这里确定的随机数就是生成的该随机数。其中,在返回随机数给被认证设备时,为了保证随机数的安全性,可以利用服务端私钥对随机数进行加密,将加密后的随机数返回给被认证设备,这样被认证设备需要利用服务端公钥对随机数进行解密。
第二种方式:认证设备获取预先与被认证设备约定的随机数种子,基于该随机数种子,采用预先与被认证设备预定的算法生成随机数。其中随机数种子可以包括认证设备与被认证设备预先约定的密钥信息,生成随机数采用的算法可以采用诸如TOTP算法。
具体采用哪种方式,认证设备和被认证设备可以预先约定,从而保证两端确定的随机数相同。
本步骤在进行认证时,可以将认证设备确定的随机数与从第一数据中获取的随机数进行比对,如果一致,则确定被认证设备的身份认证通过,否则认证失败。可以进一步返回认证结果。
图4为本发明实施例提供的被认证设备执行的第二种方法流程图,在本实施例中仍以非对称式加解密方式为例进行描述,如图4中所示,该方法可以包括以下步骤:
步骤401同步骤201,具体参见步骤201中的相关描述。
在步骤402中,利用设备私钥对第一数据进行加密,得到第二数据,其中第一数据包含被认证设备与认证设备约定的随机数。
本步骤中确定与认证设备约定的随机数的方式可以参见步骤202中的相关描述,不再赘述。
与图2所示实施例不同的是,本步骤中是利用设备私钥对包含随机数的第一数据进行加密,得到密文数据,即第二数据。
步骤403同步骤203,具体参见步骤203中的相关描述。本实施例中发送给认证设备的认证码包含利用设备私钥对随机数进行加密后的第二数据以及被认证设备的身份标识。
对应于图4所示的实施例,认证设备端执行的认证流程可以如图5中所示。图5为本发明实施例提供的认证设备执行的第二种方法流程图,如图5中所示,该方法可以包括以下步骤:
步骤501同步骤301,具体参见步骤301中的相关描述。
在步骤502中,认证设备利用与被认证设备的身份标识对应的设备公钥,对认证码包含的第二数据进行解密。
与图3所示实施例不同的是,本步骤中认证设备利用被认证设备的身份标识对应的设备公钥对第二数据进行解密,得到明文的第一数据,并从第一数据中可以获取随机数。
在步骤503中,利用解密得到的随机数,对被认证设备进行认证。认证的方式可以参见步骤303中的描述,不再赘述。
图6为本发明实施例提供的被认证设备执行的第三种方法流程图,如图6中所示,该方法可以包括以下步骤:
步骤601同步骤201,具体参见步骤201中的相关描述。
在602中,利用服务端公钥对第一数据进行加密,得到密文数据,其中第一数据包含被认证设备与认证设备约定的随机数。
本步骤中,确定与认证设备约定的随机数的方式可以参见步骤202中的相关描述,在此不再赘述。
在603中,利用设备私钥对密文数据进行签名,得到第二数据。
本实施例是先对包含随机数的第一数据进行加密,然后再对得到的密文数据进行签名。得到的第二数据包含密文数据以及对该密文数据进行签名得到的签名数据。
除了这种方式之外,还可以先利用设备私钥对第一数据进行签名,得到签名数据,然后对第一数据和签名数据进行加密得到第二数据。
步骤604同步骤203,具体参见步骤203的相关描述。
对应于图6所示的实施例,认证设备端执行的认证流程可以如图7中所示。图7为本发明实施例提供的认证设备执行的第三种方法流程图,如图7中所示,可以包括以下步骤:
步骤701同步骤301,具体参见步骤301的相关描述。
在702中,利用与被认证设备的身份标识对应的设备公钥,对认证码包含的第二数据进行签名验证。
具体地,由于第二数据中包含密文数据以及该密文数据对应的签名数据,认证设备可以利用设备公钥对密文数据进行签名,将得到的签名数据与第二数据中包含的签名数据进行比对,如果一致,则签名验证通过,继续执行步骤703,否则签名验证失败,可以返回签名验证失败的信息,结束本流程。
在703中,利用服务端私钥对第二数据中包含的密文数据进行解密,得到第一数据,并从第一数据中获取随机数。
如果被认证设备采用先利用设备私钥对第一数据进行签名,得到签名数据后,然后 利用服务端公钥对第一数据和签名数据进行加密得到的第二数据的方式,那么相应地,认证设备先利用服务端私钥对第二数据进行解密,得到第一数据和签名数据。然后利用设备公钥对第一数据进行签名,得到签名数据,将得到的签名数据与解密得到的签名数据进行比对,如果一致,则验证通过,否则验证失败。如果验证通过,则从第一数据中获取随机数。
在704中,利用解密得到的随机数,对被认证设备进行认证。认证的方式可以参见步骤303中的相关描述,不再赘述。
以上是对本发明所提供方法进行的详细描述,下面对本发明所提供的装置进行详细描述。
图8为本发明实施例提供的一种装置结构图,该装置可以设置于被认证设备,如图8中所示,该装置可以包括:密钥获取单元01、认证码生成单元02和认证请求单元03,还可以进一步包括标识获取单元04。
密钥获取单元01负责获取预先写入被认证设备的设备密钥,其中设备密钥由认证设备和被认证设备预先约定。其中,密钥获取单元01可以在认证请求单元03有设备的身份认证需求时,被认证请求单元03触发获取预先写入被认证设备的设备密钥。例如,当被具体的业务触发后,认证请求单元03需要将认证码发送给认证设备,这时就触发密钥获取单元01获取设备密钥。
另外,为了保证安全性,密钥获取单元01可以从被认证设备的安全存储中获取预先写入的设备密钥。
认证码生成单元02负责利用设备密钥对第一数据进行签名和/或加密,得到第二数据,其中第一数据包含被认证设备与认证设备约定的随机数;利用第二数据和被认证设备的身份标识,生成认证码。
由认证请求单元03将认证码发送给认证设备。
标识获取单元04负责在认证请求单元03的触发下,从被认证设备的安全存储中获取预先写入的身份标识,并提供给认证码生成单元02。在本发明实施例中,为了保证设备密钥的安全性,将其预先存储于安全存储中。安全存储可以是利用诸如ARM TrustZone或TI M-Shield等机制在硬件上隔离出的安全区域,也可以是利用虚拟化机制隔离出一个独立的安全环境,无论采用哪种方式,目的是为了提供一个可信执行环境来进行私钥的获取和认证码的生成。也就是说,本实施例中涉及的密钥获取单元01和认证码生成单元02设置于可信执行环境。
认证码生成单元02需要首先确定被认证设备与认证设备约定的随机数。具体可以采用但不限于以下两种方式:
第一种方式:实时地向认证设备请求随机数,并接收认证设备返回的随机数。其中,为了保证安全性,认证单元在返回随机数时,可以利用服务端密钥对随机数进行加密。相应地,认证码生成单元02在接收认证设备返回的随机数时,利用服务端密钥对认证设备返回的加密后的随机数进行解密,其中服务端密钥由认证设备与被认证设备预先约定。
第二种方式:获取预先与认证设备约定的随机数种子,基于随机数种子,采用预先与认证设备约定的算法生成随机数。其中,上述的随机数种子可以包括:被认证设备与认证设备预先约定的密钥信息。预先与认证设备约定的算法可以采用诸如TOTP算法。其中随机数种子也可以预先存储于安全存储,由认证码生成单元02从安全存储中获取。
具体地,认证码生成单元02在利用设备密钥对第一数据进行签名和/或加密时,可以采用但不限于以下几种方式:
第一种方式:利用设备密钥对第一数据进行签名,得到第二数据。
第二种方式:利用设备密钥对第一数据进行加密,得到第二数据。
第三种方式:利用服务端密钥对第一数据进行加密,得到密文数据,利用设备密钥对密文数据进行签名,得到第二数据。
第四种方式:利用设备密钥对第一数据进行签名,得到签名数据,利用服务端密钥对第一数据和签名数据进行加密,得到第二数据。
在本发明实施例中,被认证设备的身份标识可以由认证设备生成并预先提供给被认证设备。具体地,认证设备可以在接收到厂商管理设备的请求后,为待分配标识的设备生成设备标识,并将设备标识提供给标识写入设备,由标识写入设备在设备出厂时写入设备。
在本发明实施例中,如果采用非对称式的加解密方式,那么上述的设备密钥为设备私钥,认证设备保存有与设备私钥对应的设备公钥。该设备私钥和设备公钥对可以由认证设备生成,然后将其中的设备私钥提供给被认证设备。也可以由被认证设备生成,由被认证设备将其中的设备公钥提供给认证设备。
另外,上述的服务端密钥为服务端公钥,认证设备保存有与服务端公钥对应的服务端私钥。该服务端公钥和服务端私钥对可以由认证设备生成,然后将其中的服务端公钥提供给被认证设备。也可以由被认证设备生成,由被认证设备将其中的服务端私钥提供给认证设备。
图9为本发明实施例提供的另一种装置结构图,该装置设置于认证设备,如图9中所示,该装置可以包括:接收单元11、处理单元12和认证单元13,还可以进一步包括随机数确定单元14和标识生成单元15。各组成单元的主要功能如下:
接收单元11负责接收被认证设备发送的认证码。
处理单元12负责利用与被认证设备的身份标识对应的设备密钥,对认证码包含的第二数据进行签名验证和/或解密,其中设备密钥由认证设备和被认证设备预先约定。
认证单元13负责利用处理单元12进行签名验证和/或解密得到的随机数,对被认证设备进行认证。
其中,处理单元12可以从认证码中解析得到被认证设备的身份标识,利用预先存储的被认证设备的身份标识与设备密钥之间的对应关系,确定被认证设备的身份标识对应的设备密钥。
具体地,处理单元12可以采用但不限于以下方式进行处理:
第一种方式:利用设备密钥对第二数据包含的第一数据进行签名,将得到的签名数据与第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,从第一数据中获取随机数,否则确定签名验证失败。
第二种方式:利用设备密钥对第二数据进行解密,得到第一数据,从第一数据中获取随机数。
第三种方式:利用设备密钥对第二数据包含的密文数据进行签名,将得到的签名数据与第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,利用服务端密钥对密文数据进行解密,得到随机数,否则确定签名验证失败。
第四种方式:利用服务端密钥对第二数据进行解密,得到签名数据和第一数据,利用设备密钥对第一数据进行签名,将签名得到的签名数据与解密得到的签名数据进行比对,如果一致,则确定签名验证通过,从第一数据中获取随机数,否则确定签名验证失败。
认证单元13在进行认证时,可以将认证设备与被认证设备约定的随机数与处理单元12得到的随机数进行比对,如果一致,则确定对被认证设备的认证通过,否则确定对被认证设备的认证失败。
其中,随机数确定单元14负责确定认证设备与被认证设备约定的随机数。具体可以采用但不限于以下两种方式:
第一种方式:接收被认证设备获取随机数的请求,向被认证设备返回随机数。即应 被认证设备的请求实时为其生成随机数。其中为了保证随机数的安全性,随机数确定单元14可以在向被认证设备返回随机数时,利用服务端密钥对随机数进行加密,将加密后的随机数返回给被认证设备,服务端密钥由认证设备和被认证设备预先约定。
第二种方式:获取预先与被认证设备约定的随机数种子,基于随机数种子,采用预先与被认证设备约定的算法生成随机数。其中,随机数种子可以包括:认证设备与被认证设备预先约定的密钥信息。预先与被认证设备约定的算法可以采用诸如TOTP算法。
上述被认证设备的身份标识可以由认证设备生成,即标识生成单元15预先针对被认证设备生成身份标识,并将被认证设备的身份标识提供给被认证设备。
在本实施例中,上述的设备密钥可以为设备公钥,在被认证设备中预先写入有与设备公钥对应的设备私钥。该设备私钥和设备公钥对可以由认证设备生成,然后将其中的设备私钥提供给被认证设备。也可以由被认证设备生成,由被认证设备将其中的设备公钥提供给认证设备。
上述的服务端密钥为服务端私钥,在被认证设备中保存有与服务端私钥对应的服务端公钥。该服务端公钥和服务端私钥对可以由认证设备生成,然后将其中的服务端公钥提供给被认证设备。也可以由被认证设备生成,由被认证设备将其中的服务端私钥提供给认证设备。
本发明实施例提供的上述身份认证的方法、装置和系统可以应用于多种身份认证场景,包括但不限于:
在网络业务中对设备的身份认证,例如当设备需要在网络中请求某业务时,可以在请求中携带本发明实施例中所述的认证码,只有服务端的认证设备利用该认证码进行认证通过后,才允许相应业务下发给被认证的设备。
对设备进行流量统计过程中的身份认证。在对设备进行流量统计时,往往会出现有的设备为了躲避流量统计,篡改、伪造设备标识,那么通过在流量统计过程中携带认证码,用认证码来检验设备的真实身份。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的 目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (50)

  1. 一种设备身份认证的方法,其特征在于,该方法包括:
    被认证设备获取预先写入所述被认证设备的设备密钥,其中所述设备密钥由认证设备和所述被认证设备预先约定;
    利用所述设备密钥对第一数据进行签名和/或加密,得到第二数据,其中所述第一数据包含所述被认证设备与认证设备约定的随机数;
    利用所述第二数据和所述被认证设备的身份标识,生成认证码并发送给所述认证设备。
  2. 根据权利要求1所述的方法,其特征在于,所述被认证设备获取预先写入所述被认证设备的设备密钥包括:
    所述被认证设备从自身的安全存储中获取预先写入的设备密钥;或者,
    从自身的安全存储中获取预先写入的设备密钥和身份标识。
  3. 根据权利要求1所述的方法,其特征在于,该方法还包括:
    所述被认证设备确定与认证设备约定的随机数。
  4. 根据权利要求3所述的方法,其特征在于,所述被认证设备确定与认证设备约定的随机数包括:
    所述被认证设备向所述认证设备请求随机数;
    接收所述认证设备返回的随机数。
  5. 根据权利要求4所述的方法,其特征在于,接收所述认证设备返回的随机数包括:
    利用服务端密钥对所述认证设备返回的加密后的随机数进行解密,其中所述服务端密钥由所述认证设备与所述被认证设备预先约定。
  6. 根据权利要求3所述的方法,其特征在于,所述被认证设备确定与认证设备约定的随机数包括:
    所述被认证设备获取预先与所述认证设备约定的随机数种子;
    基于所述随机数种子,采用预先与所述认证设备约定的算法生成随机数。
  7. 根据权利要求6所述的方法,其特征在于,所述随机数种子包括:所述被认证设备与认证设备预先约定的密钥信息;
    预先与所述认证设备约定的算法包括:基于时间的一次性密码算法TOTP。
  8. 根据权利要求1所述的方法,其特征在于,利用所述设备密钥对第一数据进行签名和/或加密包括:
    利用所述设备密钥对所述第一数据进行签名,得到第二数据;或者,
    利用所述设备密钥对所述第一数据进行加密,得到第二数据;或者,
    利用服务端密钥对所述第一数据进行加密,得到密文数据,利用所述设备密钥对所述密文数据进行签名,得到第二数据;或者,
    利用所述设备密钥对所述第一数据进行签名,得到签名数据,利用服务端密钥对签名数据进行加密,得到第二数据;
    其中,所述服务端密钥由所述认证设备和所述被认证设备预先约定。
  9. 根据权利要求1所述的方法,其特征在于,所述被认证设备的身份标识由所述认证设备生成并预先提供给所述被认证设备。
  10. 根据权利要求1所述的方法,其特征在于,所述获取预先写入所述被认证设备的设备密钥,利用所述设备密钥对第一数据进行签名和/或加密,以及利用所述第二数据和所述被认证设备的身份标识,生成认证码的步骤在可信执行环境下执行。
  11. 根据权利要求1至10任一权项所述的方法,其特征在于,所述设备密钥为设备私钥,所述认证设备保存有与所述设备私钥对应的设备公钥。
  12. 根据权利要求5或8所述的方法,其特征在于,所述服务端密钥为服务端公钥,所述认证设备保存有与所述服务端公钥对应的服务端私钥。
  13. 一种设备身份认证的方法,其特征在于,该方法包括:
    认证设备接收被认证设备发送的认证码;
    利用与所述被认证设备的身份标识对应的设备密钥,对所述认证码包含的第二数据进行签名验证和/或解密,其中所述设备密钥由认证设备和被认证设备预先约定;
    利用所述签名验证和/或解密得到的随机数,对所述被认证设备进行认证。
  14. 根据权利要求13所述的方法,其特征在于,该方法还包括:
    所述认证设备从所述认证码中解析得到所述被认证设备的身份标识;
    利用预先存储的所述被认证设备的身份标识与设备密钥之间的对应关系,确定所述被认证设备的身份标识对应的设备密钥。
  15. 根据权利要求13所述的方法,其特征在于,利用与所述被认证设备的身份标识对应的设备密钥,对所述认证码包含的第二数据进行签名验证和/或解密包括:
    利用所述设备密钥对所述第二数据包含的第一数据进行签名,将得到的签名数据与 所述第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,从所述第一数据中获取随机数,否则确定签名验证失败;或者,
    利用所述设备密钥对所述第二数据进行解密,得到第一数据,从所述第一数据中获取随机数;或者,
    利用所述设备密钥对所述第二数据包含的密文数据进行签名,将得到的签名数据与所述第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,利用服务端密钥对所述密文数据进行解密,得到随机数,否则确定签名验证失败;或者,
    利用服务端密钥对所述第二数据进行解密,得到签名数据和第一数据,利用所述设备密钥对所述第一数据进行签名,将签名得到的签名数据与解密得到的签名数据进行比对,如果一致,则确定签名验证通过,从所述第一数据中获取随机数,否则确定签名验证失败。
  16. 根据权利要求13所述的方法,其特征在于,利用所述签名验证和/或解密得到的随机数,对所述被认证设备进行认证包括:
    将所述认证设备与所述被认证设备约定的随机数与所述得到的随机数进行比对,如果一致,则确定对所述被认证设备的认证通过,否则确定对所述被认证设备的认证失败。
  17. 根据权利要求16所述的方法,其特征在于,该方法还包括:
    所述认证设备确定与所述被认证设备约定的随机数。
  18. 根据权利要求17所述的方法,其特征在于,所述认证设备确定与所述被认证设备约定的随机数包括:
    所述认证设备接收所述被认证设备获取随机数的请求;
    向所述被认证设备返回随机数。
  19. 根据权利要求18所述的方法,其特征在于,向所述被认证设备返回随机数包括:
    利用服务端密钥对所述随机数进行加密,将加密后的随机数返回给所述被认证设备,所述服务端密钥由所述认证设备和所述被认证设备预先约定。
  20. 根据权利要求17所述的方法,其特征在于,所述认证设备确定与所述被认证设备约定的随机数包括:
    所述认证设备获取预先与所述被认证设备约定的随机数种子;
    基于所述随机数种子,采用预先与所述被认证设备约定的算法生成随机数。
  21. 根据权利要求20所述的方法,其特征在于,所述随机数种子包括:所述认证 设备与所述被认证设备预先约定的密钥信息;
    预先与所述被认证设备约定的算法包括:基于时间的一次性密码算法TOTP。
  22. 根据权利要求13至21任一权项所述的方法,其特征在于,该方法还包括:
    所述认证设备预先针对所述被认证设备生成身份标识,并将所述被认证设备的身份标识提供给所述被认证设备。
  23. 根据权利要求13至21任一权项所述的方法,其特征在于,所述设备密钥为设备公钥,在所述被认证设备中预先写入有与所述设备公钥对应的设备私钥。
  24. 根据权利要求15或19所述的方法,其特征在于,所述服务端密钥为服务端私钥,在所述被认证设备中保存有与所述服务端私钥对应的服务端公钥。
  25. 一种设备身份认证的装置,该装置设置于被认证设备,其特征在于,该装置包括:
    密钥获取单元,用于获取预先写入所述被认证设备的设备密钥,其中所述设备密钥由所述认证设备和所述被认证设备预先约定;
    认证码生成单元,用于利用所述设备密钥对第一数据进行签名和/或加密,得到第二数据,其中所述第一数据包含所述被认证设备与认证设备约定的随机数;利用所述第二数据和所述被认证设备的身份标识,生成认证码;
    认证请求单元,用于将所述认证码发送给所述认证设备。
  26. 根据权利要求25所述的装置,其特征在于,所述密钥获取单元,具体用于在所述认证请求单元的触发下,从所述被认证设备的安全存储中获取预先写入的设备密钥。
  27. 根据权利要求25所述的装置,其特征在于,该装置还包括:
    标识获取单元,用于在所述认证请求单元的触发下,从所述被认证设备的安全存储中获取预先写入的身份标识,并提供给所述认证码生成单元。
  28. 根据权利要求25所述的装置,其特征在于,所述认证码生成单元,还用于确定所述被认证设备与所述认证设备约定的随机数。
  29. 根据权利要求28所述的装置,其特征在于,所述认证码生成单元在确定所述被认证设备与所述认证设备约定的随机数时,具体执行:
    向所述认证设备请求随机数;
    接收所述认证设备返回的随机数。
  30. 根据权利要求29所述的装置,其特征在于,所述认证码生成单元在接收所述 认证设备返回的随机数时,具体用于利用服务端密钥对所述认证设备返回的加密后的随机数进行解密,其中所述服务端密钥由所述认证设备与所述被认证设备预先约定。
  31. 根据权利要求28所述的装置,其特征在于,所述认证码生成单元在确定所述被认证设备与所述认证设备约定的随机数时,具体执行:
    获取预先与所述认证设备约定的随机数种子;
    基于所述随机数种子,采用预先与所述认证设备约定的算法生成随机数。
  32. 根据权利要求31所述的装置,其特征在于,所述随机数种子包括:所述被认证设备与认证设备预先约定的密钥信息;
    预先与所述认证设备约定的算法包括:基于时间的一次性密码算法TOTP。
  33. 根据权利要求25所述的装置,其特征在于,所述认证码生成单元在利用所述设备密钥对第一数据进行签名和/或加密时,具体执行:
    利用所述设备密钥对所述第一数据进行签名,得到第二数据;或者,
    利用所述设备密钥对所述第一数据进行加密,得到第二数据;或者,
    利用服务端密钥对所述第一数据进行加密,得到密文数据,利用所述设备密钥对所述密文数据进行签名,得到第二数据;或者,
    利用所述设备密钥对所述第一数据进行签名,得到签名数据,利用服务端密钥对签名数据进行加密,得到第二数据;
    其中,所述服务端密钥由所述认证设备与所述被认证设备预先约定。
  34. 根据权利要求25所述的装置,其特征在于,所述被认证设备的身份标识由所述认证设备生成并预先提供给所述被认证设备。
  35. 根据权利要求25所述的装置,其特征在于,所述密钥获取单元和所述认证码生成单元设置于可信执行环境。
  36. 根据权利要求25至35任一权项所述的装置,其特征在于,所述设备密钥为设备私钥,所述认证设备保存有与所述设备私钥对应的设备公钥。
  37. 根据权利要求30或33所述的装置,其特征在于,所述服务端密钥为服务端公钥,所述认证设备保存有与所述服务端公钥对应的服务端私钥。
  38. 一种设备身份认证的装置,该装置设置于认证设备,其特征在于,该装置包括:
    接收单元,用于接收被认证设备发送的认证码;
    处理单元,用于利用与所述被认证设备的身份标识对应的设备密钥,对所述认证码包含的第二数据进行签名验证和/或解密,其中所述设备密钥由认证设备和被认证设备预 先约定;
    认证单元,用于利用所述处理单元进行签名验证和/或解密得到的随机数,对所述被认证设备进行认证。
  39. 根据权利要求38所述的装置,其特征在于,所述处理单元,还用于从所述认证码中解析得到所述被认证设备的身份标识,利用预先存储的所述被认证设备的身份标识与设备密钥之间的对应关系,确定所述被认证设备的身份标识对应的设备密钥。
  40. 根据权利要求38所述的装置,其特征在于,所述处理单元,具体用于:
    利用所述设备密钥对所述第二数据包含的第一数据进行签名,将得到的签名数据与所述第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,从所述第一数据中获取随机数,否则确定签名验证失败;或者,
    利用所述设备密钥对所述第二数据进行解密,得到第一数据,从所述第一数据中获取随机数;或者,
    利用所述设备密钥对所述第二数据包含的密文数据进行签名,将得到的签名数据与所述第二数据包含的签名数据进行比对,如果一致,则确定签名验证通过,利用服务端密钥对所述密文数据进行解密,得到随机数,否则确定签名验证失败;或者,
    利用服务端密钥对所述第二数据进行解密,得到签名数据和第一数据,利用所述设备密钥对所述第一数据进行签名,将签名得到的签名数据与解密得到的签名数据进行比对,如果一致,则确定签名验证通过,从所述第一数据中获取随机数,否则确定签名验证失败。
  41. 根据权利要求38所述的装置,其特征在于,所述认证单元具体用于:
    将所述认证设备与所述被认证设备约定的随机数与所述处理单元得到的随机数进行比对,如果一致,则确定对所述被认证设备的认证通过,否则确定对所述被认证设备的认证失败。
  42. 根据权利要求41所述的装置,其特征在于,该装置还包括:随机数确定单元,用于确定所述认证设备与所述被认证设备约定的随机数。
  43. 根据权利要求42所述的装置,其特征在于,所述随机数确定单元,具体用于:
    接收所述被认证设备获取随机数的请求;
    向所述被认证设备返回随机数。
  44. 根据权利要求43所述的装置,其特征在于,所述随机数确定单元在向所述被认证设备返回随机数时,具体执行:
    利用服务端密钥对所述随机数进行加密,将加密后的随机数返回给所述被认证设备,所述服务端密钥由所述认证设备和所述被认证设备预先约定。
  45. 根据权利要求42所述的装置,其特征在于,所述随机数确定单元,具体用于:
    获取预先与所述被认证设备约定的随机数种子;
    基于所述随机数种子,采用预先与所述被认证设备约定的算法生成随机数。
  46. 根据权利要求45所述的装置,其特征在于,所述随机数种子包括:所述认证设备与所述被认证设备预先约定的密钥信息;
    预先与所述被认证设备约定的算法包括:基于时间的一次性密码算法TOTP。
  47. 根据权利要求38至46任一权项所述的装置,其特征在于,该装置还包括:
    标识生成单元,用于预先针对所述被认证设备生成身份标识,并将所述被认证设备的身份标识提供给所述被认证设备。
  48. 根据权利要求38至46任一权项所述的装置,其特征在于,所述设备密钥为设备公钥,在所述被认证设备中预先写入有与所述设备公钥对应的设备私钥。
  49. 根据权利要求38至46任一权项所述的装置,其特征在于,所述服务端密钥为服务端私钥,在所述被认证设备中保存有与所述服务端私钥对应的服务端公钥。
  50. 一种设备身份认证的系统,其特征在于,该系统包括被认证设备和认证设备;
    所述被认证设备包括如权利要求25至35任一权项所述的装置;
    所述认证设备包括如权利要求38至46任一权项所述的装置。
PCT/CN2016/101642 2015-10-14 2016-10-10 一种设备身份认证的方法、装置和系统 WO2017063534A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/951,611 US20180285555A1 (en) 2015-10-14 2018-04-12 Authentication method, device and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510662102.4A CN106603234A (zh) 2015-10-14 2015-10-14 一种设备身份认证的方法、装置和系统
CN201510662102.4 2015-10-14

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/951,611 Continuation-In-Part US20180285555A1 (en) 2015-10-14 2018-04-12 Authentication method, device and system

Publications (1)

Publication Number Publication Date
WO2017063534A1 true WO2017063534A1 (zh) 2017-04-20

Family

ID=58517093

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/101642 WO2017063534A1 (zh) 2015-10-14 2016-10-10 一种设备身份认证的方法、装置和系统

Country Status (3)

Country Link
US (1) US20180285555A1 (zh)
CN (1) CN106603234A (zh)
WO (1) WO2017063534A1 (zh)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107113172B (zh) * 2015-12-10 2019-03-29 深圳市大疆创新科技有限公司 无人机认证方法,安全通信方法及对应系统
CN106899410B (zh) * 2016-09-13 2019-06-25 中国移动通信有限公司研究院 一种设备身份认证的方法及装置
CN107277017A (zh) * 2017-06-22 2017-10-20 北京洋浦伟业科技发展有限公司 基于加密密钥和设备指纹的权限认证方法、装置及系统
CN107204985A (zh) * 2017-06-22 2017-09-26 北京洋浦伟业科技发展有限公司 基于加密密钥的权限认证方法、装置及系统
CN107395341A (zh) * 2017-06-23 2017-11-24 陈景辉 一种物联网安全认证芯片及基于该芯片的访问控制方法
EP3454502B1 (en) * 2017-09-07 2020-08-05 Nxp B.V. Transceiver system
CN109525989B (zh) * 2017-09-19 2022-09-02 阿里巴巴集团控股有限公司 数据处理、身份认证方法及系统、终端
CN107547572B (zh) * 2017-10-13 2021-03-02 北京梆梆安全科技有限公司 一种基于伪随机数的can总线通信方法
CN107733645B (zh) * 2017-11-28 2021-03-19 苏州朗捷通智能科技有限公司 加密通信认证方法和系统
CN107819576A (zh) * 2017-11-28 2018-03-20 苏州朗捷通智能科技有限公司 通信认证方法和系统
US11256818B2 (en) 2017-12-28 2022-02-22 Corlina, Inc. System and method for enabling and verifying the trustworthiness of a hardware system
CN107948213A (zh) * 2018-01-17 2018-04-20 深圳中电国际信息科技有限公司 一种加密认证方法、系统、装置及计算机可读存储介质
US11509636B2 (en) * 2018-01-30 2022-11-22 Corlina, Inc. User and device onboarding
CN114745133A (zh) * 2018-03-27 2022-07-12 杭州蚂蚁聚慧网络技术有限公司 一种识别设备唯一性的方法及装置
JP7106965B2 (ja) * 2018-04-25 2022-07-27 富士通株式会社 情報処理装置、認証制御システム、及び認証制御プログラム
US10749852B2 (en) * 2018-05-10 2020-08-18 Rovi Guides, Inc. Systems and methods for connecting private devices to public devices according to connection parameters
US10757109B2 (en) 2018-05-10 2020-08-25 Rovi Guides, Inc. Systems and methods for connecting a public device to a private device with pre-installed content management applications
CN110753023B (zh) * 2018-07-24 2022-02-25 阿里巴巴集团控股有限公司 一种设备认证方法、设备访问方法和装置
CN109361669B (zh) * 2018-10-19 2022-03-18 深圳数粉科技有限公司 通信设备的身份认证方法、装置和设备
CN109617696B (zh) * 2019-01-03 2022-08-19 北京城市网邻信息技术有限公司 一种数据加密、数据解密的方法和装置
CN110213230B (zh) * 2019-04-26 2020-01-31 特斯联(北京)科技有限公司 一种用于分布式通信的网络安全验证方法及装置
CN112150158A (zh) * 2019-06-28 2020-12-29 华为技术有限公司 一种区块链交易交付验证方法及装置
US10805083B1 (en) * 2019-09-04 2020-10-13 Capital One Services, Llc Systems and methods for authenticated communication sessions
CN111049797B (zh) * 2019-10-30 2021-06-18 珠海格力电器股份有限公司 为智能家居设备配网及数据传输方法、设备及存储介质
CN113055340B (zh) * 2019-12-26 2023-09-26 华为技术有限公司 鉴权方法及设备
CN113329399A (zh) * 2020-02-28 2021-08-31 阿里巴巴集团控股有限公司 数据传输、配网与管理方法、设备、系统及存储介质
CN113381853B (zh) * 2020-03-10 2024-04-16 北京京东振世信息技术有限公司 生成随机密码以及客户端鉴权的方法和装置
CN111600870B (zh) * 2020-05-13 2021-08-03 山东大学 一种双向通信认证方法及系统
CN111859366B (zh) * 2020-06-02 2022-08-19 惠州市德赛西威汽车电子股份有限公司 一种车机设备初始密码数据在线注入方法
CN111901303A (zh) * 2020-06-28 2020-11-06 北京可信华泰信息技术有限公司 设备认证方法和装置、存储介质及电子装置
CN113761550A (zh) * 2020-11-05 2021-12-07 北京沃东天骏信息技术有限公司 一种加密的方法和装置
CN112564897A (zh) * 2020-11-30 2021-03-26 上海万向区块链股份公司 物联网设备密钥分配及身份认证管理方法及系统
WO2022116209A1 (zh) * 2020-12-04 2022-06-09 Oppo广东移动通信有限公司 物联网设备接入认证方法、装置、设备及存储介质
CN112565265B (zh) * 2020-12-04 2022-11-01 国网辽宁省电力有限公司沈阳供电公司 物联网终端设备间的认证方法、认证系统及通讯方法
CN112637145B (zh) * 2020-12-08 2023-04-28 北京北信源软件股份有限公司 一种网络设备互联认证方法及系统
CN112487380B (zh) * 2020-12-16 2024-04-05 江苏国科微电子有限公司 一种数据交互方法、装置、设备及介质
CN114760026A (zh) * 2020-12-26 2022-07-15 西安西电捷通无线网络通信股份有限公司 一种身份鉴别方法和装置
CN112887306B (zh) * 2021-01-26 2023-01-20 浪潮云信息技术股份公司 一种自定义安全认证方法
CN112887308B (zh) * 2021-01-26 2022-08-23 许少建 一种无感网络身份认证方法及系统
CN114205292A (zh) * 2021-12-10 2022-03-18 百度在线网络技术(北京)有限公司 路由器拨号配置方法、装置、路由器、管理端和存储介质
CN116418509A (zh) * 2021-12-31 2023-07-11 圣邦微电子(北京)股份有限公司 序列号生成电路及终端对外部设备进行认证的方法
CN114710348B (zh) * 2022-03-31 2023-07-04 湖北工业大学 用户使用家庭智能设备的授权认证与密钥协商方法
CN114866250B (zh) * 2022-04-25 2024-03-26 中国第一汽车股份有限公司 车内can网络新鲜值构建方法、装置、车辆及存储介质
CN117475533A (zh) * 2022-07-21 2024-01-30 广州汽车集团股份有限公司 数据传输方法及装置、设备、计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101989991A (zh) * 2010-11-24 2011-03-23 北京天地融科技有限公司 安全导入密钥的方法及电子签名工具、认证设备及系统
US20140025944A1 (en) * 2012-07-19 2014-01-23 Atmel Corporation Secure Storage and Signature
CN103763631A (zh) * 2014-01-07 2014-04-30 青岛海信信芯科技有限公司 认证方法、服务器和电视机
CN104468126A (zh) * 2014-12-26 2015-03-25 北京深思数盾科技有限公司 一种安全通信系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104683354B (zh) * 2015-03-24 2017-09-22 武汉理工大学 一种基于标识的动态口令系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101989991A (zh) * 2010-11-24 2011-03-23 北京天地融科技有限公司 安全导入密钥的方法及电子签名工具、认证设备及系统
US20140025944A1 (en) * 2012-07-19 2014-01-23 Atmel Corporation Secure Storage and Signature
CN103763631A (zh) * 2014-01-07 2014-04-30 青岛海信信芯科技有限公司 认证方法、服务器和电视机
CN104468126A (zh) * 2014-12-26 2015-03-25 北京深思数盾科技有限公司 一种安全通信系统及方法

Also Published As

Publication number Publication date
CN106603234A (zh) 2017-04-26
US20180285555A1 (en) 2018-10-04

Similar Documents

Publication Publication Date Title
WO2017063534A1 (zh) 一种设备身份认证的方法、装置和系统
US10985913B2 (en) Method and system for protecting data keys in trusted computing
US11140160B2 (en) Method and system for establishing inter-device communication
CN110968743B (zh) 针对隐私数据的数据存储、数据读取方法及装置
WO2017063523A1 (zh) 一种业务认证的方法、装置和系统
CN110677418B (zh) 可信声纹认证方法、装置、电子设备及存储介质
US9838205B2 (en) Network authentication method for secure electronic transactions
CN105103119B (zh) 数据安全服务系统
CN102685093B (zh) 一种基于移动终端的身份认证系统及方法
US20200169548A1 (en) Network access authentication method, apparatus, and system
US8953790B2 (en) Secure generation of a device root key in the field
CN103124269B (zh) 云环境下基于动态口令与生物特征的双向身份认证方法
CN109639427B (zh) 一种数据发送的方法及设备
US20120266224A1 (en) Method and system for user authentication
KR20190000578A (ko) 블록체인 기반의 공개 분산 데이터베이스에서 데이터에 대한 보안을 유지하는 방법 및 이를 이용한 블록체인 관리 서버
CN104639516A (zh) 身份认证方法、设备及系统
WO2016155281A1 (zh) 一种管理应用标识的方法及装置
CN104219228A (zh) 一种用户注册、用户识别方法及系统
CN110740116B (zh) 一种多应用身份认证的系统及方法
US11088838B2 (en) Automated authentication of a new network element
US9917694B1 (en) Key provisioning method and apparatus for authentication tokens
KR20160076731A (ko) 스마트 그리드 기기 인증 방법
CN108616516A (zh) 一种基于多种加密算法的第三方明文口令校验方法
TWI715708B (zh) 設備身份認證的方法、裝置和系統
Jang-Jaccard et al. Portable key management service for cloud storage

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16854913

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16854913

Country of ref document: EP

Kind code of ref document: A1