CN110572788B - Wireless sensor communication method and system based on asymmetric key pool and implicit certificate - Google Patents

Wireless sensor communication method and system based on asymmetric key pool and implicit certificate Download PDF

Info

Publication number
CN110572788B
CN110572788B CN201910642464.5A CN201910642464A CN110572788B CN 110572788 B CN110572788 B CN 110572788B CN 201910642464 A CN201910642464 A CN 201910642464A CN 110572788 B CN110572788 B CN 110572788B
Authority
CN
China
Prior art keywords
key
client
random number
receiving end
public key
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201910642464.5A
Other languages
Chinese (zh)
Other versions
CN110572788A (en
Inventor
富尧
钟一民
杨羽成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ruban Quantum Technology Co Ltd
Nanjing Ruban Quantum Technology Co Ltd
Original Assignee
Ruban Quantum Technology Co Ltd
Nanjing Ruban Quantum Technology Co 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 Ruban Quantum Technology Co Ltd, Nanjing Ruban Quantum Technology Co Ltd filed Critical Ruban Quantum Technology Co Ltd
Priority to CN201910642464.5A priority Critical patent/CN110572788B/en
Publication of CN110572788A publication Critical patent/CN110572788A/en
Application granted granted Critical
Publication of CN110572788B publication Critical patent/CN110572788B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/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/3247Cryptographic 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 digital signatures
    • 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
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/38Services specially adapted for particular environments, situations or purposes for collecting sensor information
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

The patent refers to the field of 'transmission of digital information'. Since the asymmetric key is not disclosed, and the key cannot be acquired from the public user information, the usage mode of the asymmetric key has the characteristic of resisting quantum computation.

Description

Wireless sensor communication method and system based on asymmetric key pool and implicit certificate
Technical Field
The present application relates to the field of secure communication technologies, and in particular, to a wireless sensor communication method and system based on an asymmetric key pool and an implicit certificate.
Background
A Wireless Sensor Network (WSN) is a distributed Sensor Network whose distal end is a Sensor that can sense and examine the outside world. The WSN is widely applied to the directions with higher requirements on safety and confidentiality, such as environmental monitoring, health care, industrial automation and the like. The sensors in the WSN communicate in a wireless mode, so that the network setting is flexible, and the position of the equipment can be changed at any time. The decentralized nature of the device requires the secure management of identity information and verification of the identity of the connected user.
In most applications of the internet of things, a plurality of entities (such as a sensing node, a service provider and a message processor) should first establish a trusted network by authenticating each other, and a subsequent node can join the network after successfully completing authentication. The authentication protocol is designed to resist malicious attacks and be deployed on low-performance nodes in the wireless sensor network in a light weight mode.
Secure communication is a means for protecting network information of people, and is generally realized by a cryptographic encryption method, and before encryption, two communication parties need to share a secure communication key. While the current secure communication is mainly performed by means of cryptography, in the field of cryptography today, there are two main cryptographic systems, one is a symmetric key cryptographic system, i.e. the encryption key and the decryption key use the same key. The other is a public key cryptosystem, i.e. the encryption key and the decryption key are different, one of which may be public. At present, when most of secret communication uses an algorithm, a shared symmetric key is generally obtained by a public key cryptosystem, and then a message is encrypted by using the symmetric key.
Public key encryption systems employ different encryption keys (public keys) and decryption keys (private keys). Since the encryption key is public, the distribution and management of the key is simple, and the public key encryption system can easily implement digital signature.
Since the advent of public key cryptography, scholars have proposed a number of public key cryptography methods, the security of which is based on complex mathematical challenges. However, in the conventional public key cryptography, the public key is a character string independent of identity, and the problem of how to confirm the authenticity of the public key exists. Public key infrastructure PKI binds public keys and identity information using a trusted third party-a Certificate Authority (CA) -to issue public key certificates. However, PKI certificate handling is complex, a complex CA system needs to be built, and the requirements of certificate issuing, revoking, verifying and storing occupy more resources, so that the wide application of PKI in real-time and low-bandwidth environments is limited.
A bidirectional authentication key agreement protocol is designed based on an ECQV (Elliptic customer Qu-Vanstone) self-signature implicit certificate mechanism, the ECQV implicit certificate is generated based on an ECC algorithm, the certificate is smaller, the calculation speed is higher, and the authentication efficiency can be obviously improved. In a traditional certificate, a public key and a digital signature are separated, while in an ECQV self-signed implicit certificate, the digital signature is embedded in the public key, which is also the meaning of "self-signature", and a receiver can extract the public key from the public key to verify the identity of the receiver.
However, with the development of quantum computers, the classical asymmetric key encryption algorithm is no longer secure, and no matter the encryption and decryption method or the key exchange method, the quantum computer can obtain a private key through public key calculation, so that the currently used asymmetric key becomes insaniable in the quantum era.
Due to the potential threat of the quantum computer, the existing scheme for carrying out secret communication based on the symmetric key pool carries out secret communication by utilizing the symmetric key pool between the server and the client, and abandons the use of public key cryptography so as to avoid the secret communication system from being cracked by the quantum computer.
Due to the potential threat of quantum computers, the existing scheme for carrying out the secret communication in the group based on the group symmetric key pool carries out the secret communication by utilizing the group symmetric key pool between the clients, and abandons the use of public key cryptography so as to avoid the secret communication system from being cracked by the quantum computers.
The problems existing in the prior art are as follows:
1. the existing wireless sensor communication system uses a public key, and the quantum computer can quickly obtain a corresponding private key through the public key, so that the scheme is easy to crack by the quantum computer;
2. in the existing scheme for carrying out secret communication based on the symmetric key pool, the symmetric key pool is used between a server side and a client side. The symmetric key pool has huge capacity and has the following problems: pressure is brought to the key storage of the server; the server has to encrypt and store the key in a common storage medium such as a hard disk, but cannot store the key in a key fob of the server; making the backup and online updating of keys cumbersome.
3. In the existing scheme for carrying out secret communication based on the group symmetric key pool, the group symmetric key pool is used among the clients. Since all group members have the same group key pool, the communication in the group has no privacy, and other group members can monitor the point-to-point communication encrypted by the group key, thereby causing unnecessary information leakage.
Disclosure of Invention
In view of the foregoing, it is desirable to provide a wireless sensor communication method based on an asymmetric key pool and an implicit certificate, which can reduce the amount of data stored by a service station.
The application discloses a wireless sensor communication method based on an asymmetric key pool and an implicit certificate, the wireless sensor communication method comprises a key issuing process and a communication process, wherein the key issuing process comprises the following steps:
the method comprises the steps that an issuing server generates a first random number, a second random number, a public key of a key receiving end A and a private key of a key receiving end A, wherein the public key of the key receiving end A is generated by using a base point generating element and the private key of the key receiving end A, the first random number is used for taking out a first issuing server public key and a first issuing server private key from a self storage, an implicit certificate parameter is generated by using the first issuing server public key and the public key of the key receiving end A, and an implicit certificate is generated by using the implicit certificate parameter and equipment information of the key receiving end A; performing hash calculation by using the implicit certificate to obtain a first hash value; a second issuing server public key and a second issuing server private key are taken out from the self storage by using the second random number, and private key parameters are generated by using the first hash value, the first issuing server private key and the second issuing server private key; writing a public key pool of an issuing server, the first random number, the second random number, the private key of the key receiving end A and private key parameters into a key card of the key receiving end A;
the key receiving end A reads an issuing server public key pool, a first random number, a second random number, a key receiving end A private key and private key parameters from a key card of the key receiving end A; obtaining a public key of a key receiving end A by using the private key of the key receiving end A and a base point generator, obtaining a first issuing server public key and a second issuing server public key from the issuing server public key pool by using the first random number and the second random number respectively, and obtaining a first hash value by using the implicit certificate parameter, the first issuing server public key and the receiving key end A equipment information; generating a working private key by using the first hash value, a private key of a key receiving end A and private key parameters, generating a working public key by using the first hash value, implicit certificate parameters and a public key of a second issuing server, and generating key information, wherein the key information comprises information of equipment of the key receiving end A, implicit certificate parameters and the second random number;
the key receiving end B acquires key information sent by the key receiving end A, wherein the key information comprises the key receiving end A equipment information, implicit certificate parameters and a second random number; generating an implicit certificate by using the information of the key receiving end A equipment and implicit certificate parameters, performing hash calculation on the implicit certificate to obtain a first hash value, obtaining a second server public key from a server public key pool in a key receiving end B key card by using the second random number, and generating a key receiving end A public key by using the first hash value, the implicit certificate parameters and the second server public key;
the public key of the key receiving end A is used for encrypting the communication between the key receiving end A and the key receiving end B;
the communication process is as follows:
the client A generates a first random number and sends the first random number and the key information of the client A to the client B;
the client B generates a second random number after acquiring the first random number and client A key information, generates a client A public key by using the client A key information, generates a session key by using the client A public key, a client B private key of the client A public key, the first random number and the second random number, and generates a first authentication code for a client B implicit certificate, the first random number and client B equipment information by using the session key; sending the second random number, the key information of the client B and the first authentication code to the client A;
after the client A obtains the second random number, the key information of the client B and the first authentication code, calculating to obtain the session key, verifying the first authentication code by using the session key, making a second authentication code by using the session key to make an implicit certificate of the client A after the verification is passed, and sending the second authentication code to the client B;
and the client B acquires the second authentication code and confirms the session key after verification.
Preferably, the client a and the client B split the session key into a message encryption/decryption key and a message authentication key.
Preferably, the client a and the client B perform a hash operation on the session key and the second random number to obtain a message encryption/decryption key, and perform a hash operation on the session key and the first random number to obtain a message authentication key.
Preferably, the session key is generated by using a hash algorithm using the public key of the client a, the private key of the client B, the first random number, and the second random number.
Preferably, when the client a verifies the first authentication code, the session key is used to make a new first authentication code for the implicit certificate of the client B, the first random number and the device information of the client B, and the verification is completed by comparing the first authentication code with the new first authentication code.
Preferably, when the client B verifies the second authentication code, the session key is used to make a new second authentication code for the implicit certificate of the client a, the second random number and the device information of the client a, and the second authentication code and the new second authentication code are compared to complete the verification.
The application discloses a client device, which comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the client a in the wireless sensor communication method in the technical scheme when executing the computer program.
The application discloses a client device, which comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the client B in the wireless sensor communication method in the above technical scheme when executing the computer program.
The application discloses a service station device, which comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the issuing server in the wireless sensor communication method in the technical scheme when executing the computer program.
The application discloses a wireless sensor communication system based on an asymmetric key pool and an implicit certificate, which comprises a client, a service station and a communication network, wherein the client is connected with the service station through the communication network; the client is configured with a client key fob, and a service station public key and a client private key are stored in the client key fob; the service station is configured with a service station key card, and a service station public key pool, a service station private key pool and a client public key pool are stored in the service station key card;
the client and the service station realize the steps of the wireless sensor communication method in the technical scheme through the communication network.
In the present invention, the key fob used is a stand-alone hardware isolation device. The public key, the private key and other related parameters are stored in a data security zone in the key fob, so that the possibility of stealing the key by malicious software or malicious operations is greatly reduced, and the key cannot be acquired and cracked by a quantum computer. Since there is no plaintext transmission involving public and private keys and algorithm parameters in the classical network, the risk of the asymmetric key being cracked is low. The key fob ensures the communication security of both communication parties and also greatly improves the security of identity authentication.
Meanwhile, the asymmetric key pool solves the problem that the symmetric key pool brings key storage pressure to the server side, and storage cost is reduced. For example, if the sizes of the symmetric key pools of the original users are all 1G, and the number of the users is N, the server needs to store N G key pools; if the asymmetric key pool is stored, the size of the client side public key pool for storing the server side is 1G, and the server side only needs to store the server side private key pool with the size of 1G. Since the amount of keys is greatly reduced, all keys can be stored in a more secure key fob and key backup and online updates are facilitated.
Aiming at the scheme of carrying out secret communication based on a group symmetric key pool, the patent uses a unique public and private key of two communication parties to carry out authentication and key agreement in point-to-point communication. Because other group members do not have specific public and private keys, the peer-to-peer communication in the group cannot be monitored, and unnecessary information leakage is avoided.
Meanwhile, in the secret communication method based on the implicit certificate, the implicit certificate is used for implicitly proving the credibility of the public key, the asymmetric key and the digital signature are used for proving the identity of the user, both the transmitting and receiving sides of the secret communication can determine the identity of the other side, and any other person cannot intervene or counterfeit the secret communication. Since the asymmetric key is not disclosed, and the key cannot be acquired from the public user information, the usage mode of the asymmetric key has the characteristic of resisting quantum computation.
Drawings
FIG. 1 is a network scenario in which an authenticated key agreement mechanism is applied;
FIG. 2 is a key pool distribution diagram of a server key fob according to the present invention;
FIG. 3 is a key pool distribution diagram of a client key fob according to the present invention;
fig. 4 is a flowchart of an authentication and key agreement process between client nodes.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application. The service stations in the application are quantum communication service stations under the condition that no special description is made, all names in the application are subject to letter and number combination, such as Q and Q, and the service stations are expressed in the same meaning hereinafter, namely Q; for example, the first keys KR1, KR1 and true random number KR1, the first keys are referred to as the same meaning, i.e., the first key KR1, and the rest of the names are the same.
The application discloses a wireless sensor communication method based on an asymmetric key pool and an implicit certificate, the wireless sensor communication method comprises a key issuing process and a communication process, wherein the key issuing process comprises the following steps:
the method comprises the steps that an issuing server generates a first random number, a second random number, a public key of a key receiving end A and a private key of a key receiving end A, wherein the public key of the key receiving end A is generated by using a base point generating element and the private key of the key receiving end A, the first random number is used for taking out a first issuing server public key and a first issuing server private key from a self storage, an implicit certificate parameter is generated by using the first issuing server public key and the public key of the key receiving end A, and an implicit certificate is generated by using the implicit certificate parameter and equipment information of the key receiving end A; performing hash calculation by using the implicit certificate to obtain a first hash value; a second issuing server public key and a second issuing server private key are taken out from the self storage by using the second random number, and private key parameters are generated by using the first hash value, the first issuing server private key and the second issuing server private key; writing a public key pool of an issuing server, the first random number, the second random number, the private key of a key receiving end A and private key parameters into a key card of a key receiving end A;
the key receiving end A reads an issuing server public key pool, a first random number, a second random number, a key receiving end A private key and private key parameters from a key card of the key receiving end A; obtaining a public key of a key receiving end A by using the private key of the key receiving end A and a base point generator, obtaining a first issuing server public key and a second issuing server public key from the issuing server public key pool by using the first random number and the second random number respectively, and obtaining a first hash value by using the implicit certificate parameter, the first issuing server public key and the receiving key end A equipment information; generating a working private key by using the first hash value, a private key of a key receiving end A and private key parameters, generating a working public key by using the first hash value, implicit certificate parameters and a public key of a second issuing server, and generating key information, wherein the key information comprises information of equipment of the key receiving end A, implicit certificate parameters and the second random number;
the key receiving end B acquires key information sent by the key receiving end A, wherein the key information comprises the key receiving end A equipment information, implicit certificate parameters and a second random number; generating an implicit certificate by using the information of the key receiving end A equipment and implicit certificate parameters, performing hash calculation on the implicit certificate to obtain a first hash value, obtaining a second server public key from a server public key pool in a key receiving end B key card by using the second random number, and generating a key receiving end A public key by using the first hash value, the implicit certificate parameters and the second server public key;
the public key of the key receiving end A is used for encrypting the communication between the key receiving end A and the key receiving end B;
the communication process is as follows:
the client A generates a first random number and sends the first random number and the key information of the client A to the client B;
the client B generates a second random number after acquiring the first random number and client A key information, generates a client A public key by using the client A key information, generates a session key by using the client A public key, a client B private key of the client A public key, the first random number and the second random number, and generates a first authentication code for a client B implicit certificate, the first random number and client B equipment information by using the session key; sending the second random number, the key information of the client B and the first authentication code to the client A;
after the client A obtains the second random number, the key information of the client B and the first authentication code, calculating to obtain the session key, verifying the first authentication code by using the session key, making a second authentication code by using the session key to make an implicit certificate of the client A after the verification is passed, and sending the second authentication code to the client B;
and the client B acquires the second authentication code and confirms the session key after verification.
Preferably, the client a and the client B split the session key into a message encryption/decryption key and a message authentication key.
Preferably, the client a and the client B perform a hash operation on the session key and the second random number to obtain a message encryption/decryption key, and perform a hash operation on the session key and the first random number to obtain a message authentication key.
Preferably, the session key is generated by using a hash algorithm using the public key of the client a, the private key of the client B, the first random number, and the second random number.
Preferably, when the client a verifies the first authentication code, the session key is used to make a new first authentication code for the implicit certificate of the client B, the first random number and the device information of the client B, and the verification is completed by comparing the first authentication code with the new first authentication code.
Preferably, when the client B verifies the second authentication code, the session key is used to make a new second authentication code for the implicit certificate of the client a, the second random number and the device information of the client a, and the second authentication code and the new second authentication code are compared to complete the verification.
The application discloses a client device, which comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the client a in the wireless sensor communication method in the technical scheme when executing the computer program.
The application discloses a client device, which comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the client B in the wireless sensor communication method in the above technical scheme when executing the computer program.
The application discloses a service station device, which comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the issuing server in the wireless sensor communication method in the technical scheme when executing the computer program.
The application discloses a wireless sensor communication system based on an asymmetric key pool and an implicit certificate, which comprises a client, a service station and a communication network, wherein the client is connected with the service station through the communication network; the client is configured with a client key fob, and a service station public key and a client private key are stored in the client key fob; the service station is configured with a service station key card, and a service station public key pool, a service station private key pool and a client public key pool are stored in the service station key card;
the client and the service station realize the steps of the wireless sensor communication method in the technical scheme through the communication network.
Description of the System
Fig. 1 shows a network architecture of an authenticated key agreement mechanism, where end users may communicate with different aware nodes to obtain specific data or services. Different types of sensing nodes may be included in the WSN, and the end user may be a person or a virtual entity.
Implicit certificate mechanisms are used in three entities: a certificate authority CA (hereinafter simply referred to as a server), a certificate requester U (hereinafter simply referred to as a client), and a certificate handler V. The certificate requester U obtains an implicit certificate from the CA, wherein the certificate can prove the identity of the U, and the process is called an ECQV self-signature implicit certificate generation mechanism; and V can extract the public key of U from the implicit certificate, a process known as the public key extraction mechanism.
Before the two network entities start mutual authentication, asymmetric key issuing is carried out on the entities through a certificate center, so that the two entities can be guaranteed to successfully complete the mutual authentication. As shown in fig. 1, the node and the end user may rely on mutual authentication and establishing a secure communication channel.
The invention communicates between any 1 user terminal and another user terminal in an asymmetric key pool system. Each object in the key pool system of the invention is provided with a key card, which can store keys with large data volume and also has the capability of processing information. The algorithm with corresponding requirement exists in the local system of each object in the invention.
A key fob is described in the patent application serial No. 201610843210.6. When the mobile terminal is used, the key fob is preferably a key SD card; when a fixed terminal is used, the key fob is preferably a key USBKey or a host key fob.
Key fobs have evolved from smart card technology and are identity authentication and encryption/decryption products that combine cryptography, hardware security isolation, and quantum physics (with quantum random number generators). The embedded chip and operating system of the key fob may provide secure storage of keys and cryptographic algorithms, among other functions. Due to its independent data processing capabilities and good security, the key fob becomes a secure carrier for private keys and key pools. Each key fob is protected by a hardware PIN code, the PIN code and hardware constituting two essential factors for the user to use the key fob. So-called "two-factor authentication", a user can log in to the system only by simultaneously acquiring a key fob and a user PIN code, which store relevant authentication information. Even if the PIN code of the user is leaked, the identity of the legal user cannot be counterfeited as long as the key fob held by the user is not stolen; if the key card of the user is lost, the finder can not imitate the identity of the legal user because the user PIN code is not known. In short, the key fob prevents confidential information such as keys from appearing in the form of plaintext on the disk and memory of the host, thereby effectively ensuring the security of the confidential information.
In the present invention, key fobs are divided into server-side key fobs and client-side key fobs. The structure of the server side key card key area is shown in fig. 1, and a client side public key pool, a server side public key pool and a server side private key pool are mainly stored. The structure of the key area of the client-side key card is shown in fig. 2, and the server-side public key pool, the client-side public key pointer random number, the client-side private key and the private key parameter are mainly stored. The key fobs are issued by the server.
When the server side registers the key card, the server side selects the domain parameters of the elliptic curve to comprise q, a, b, G and n. q represents the size of the finite field Fq; the variables a and b being elliptic curves y 2 =x 3 Coefficient of + ax + b, here 4a 3 +27b 2 Not equal to 0; g is a base point generator. Server studentAfter the elliptic curve is formed, a base point generator G is selected, and the order of the base point generator G is an integer n. The private key sk and the public key pk generated by the server satisfy pk ═ sk ═ G.
In addition to writing the pool of server side public keys and the pool of server side private keys into the key region of the key fob, the pointer addresses of the identity private keys and corresponding identity public keys and the associated parameters { q, a, b, G, n } of the algorithm are also written into the key fob designated region.
Asymmetric key issuance:
and the asymmetric key issuing is key card issuing, and the process is completely carried out at a server side.
And setting the client with the ID of U as a client CU, and setting a client private key in a key fob of the client CU as kU. If the service end corresponding to the client CU is SU, the U contains information of the SU, and the key fob representing the CU is issued by the SU. The server generates a client public key pointer random number rkU/rkSU from a random number generator within the matching key fob.
And calculating according to the client private key kU and G to obtain RU kU G.
rkU is combined with a pointer function frk to obtain a pointer rkpU, a public key pkU is taken out from a server public key pool through the rkpU, and a private key skU is taken out from a server private key pool.
The PU is calculated RU + pkU.
And obtaining an implicit certificate CertU (Encode) (PU, U) of the client CU according to the PU and the U. The Encode indicates the composition and actual encoding mode of a certificate including information, and is specific to the application. Then, CertU is hashed to obtain eU ═ h (CertU).
Combining the rkSU with a pointer function frk to obtain a pointer rkpSU, taking out the public key pkSU from the server public key pool through the rkpSU, and taking out the private key skSU from the server private key pool.
The private key parameter rU is calculated as eU skU + sksu (mod n).
And storing the server side public key pool, the client side public key pointer random number rkU/rkSU, the client side private key kU and the private key parameter rU into a corresponding storage area of the client side key fob to finish asymmetric key issuance, namely key fob issuance, of the client side.
The client side obtains an asymmetric key:
and the client calculates to obtain RU kU G according to the private key kU and G of the client in the key fob.
The client extracts rkU the random number of the public key pointer in the card, combines rkU with a pointer function frk to obtain an rkpU pointer, and extracts pkU the public key in the server public key pool through the rkpU pointer.
The PU is calculated RU + pkU.
And obtaining an implicit certificate CertU (Encode) (PU, U) of the client CU according to the PU and the U. Then, CertU is hashed to obtain eU ═ h (CertU).
Calculating to obtain an actual private key dU ═ eU × kU + rU (mod n)
The client extracts the random number rkSU of the public key pointer in the card, combines the rkSU with a pointer function frk to obtain a pointer rkpSU, and takes out the public key pkSU from the server public key pool through the rkpSU.
The actual public key QU ═ eU × PU + pkSU is calculated. The actual public key QU can also be calculated from QU ═ dU × G.
The client publishes U, PU and rkSU as public information UINFO, which can be expressed as U | | PU | | rkSU. U and rkSU do not contain password related information; since PU is RU + pkU, the adversary cannot acquire information of either RU or pkU. Therefore, the UINFO is resistant to quantum computation without encryption.
Other clients obtain the public key:
the implicit certificate CertU ═ Encode (PU, U) of the client CU can be obtained by other clients according to U and PU in the UINFO. Then, CertU is hashed to obtain eU ═ h (CertU).
And obtaining a pointer rkpSU according to the rkSU in the UINFO by combining with a pointer function frk, and taking out the public key pkSU from the server public key pool through the rkpSU.
The actual public key QU ═ eU × PU + pkSU is calculated.
Examples
In the authentication and key agreement process between the client node CU and another client node CV, public information of both parties is set to UINFO | | | PU | | | rkSU and VINFO | | | PV | | | rkSV, respectively. The flow chart is shown in fig. 4, and the specific steps are described in the following text:
step 0:
the client CV generates a random number NU according to a random number generator in the matched key fob, and sends it to the client CU along with the VINFO.
Step 1:
after receiving the NU and the VINFO, the client CU generates a random number NV according to a random number generator in the matched key fob. The client CU obtains CertV according to VINFO, further obtains a public key QV of the client CV, and calculates KUV ═ HASH (dU × QV | | NU | | | NV).
Calculating a message authentication code MACU (MAC) for certU, NU and identity information U of client CU by using KUV KUV (Certu, NU, U). The message authentication code is sent to the client CV together with the UINFO, NV.
Step 2:
after receiving the UINFO | | NV | | MACU, the client CV obtains CertU according to the UINFO, further obtains a public key QU of the client CU, and calculates to obtain KUV | | | NU | | | NV. Using KUV to calculate message authentication code for CertU, NU, U and compare with MACU.
After the verification is passed, the client CV uses KUV to calculate a message authentication code MACV ═ MAC for CertV, NV and the identity information V of the client CV KUV (CertV, NV, V). The message authentication code is sent to the client CU.
And step 3:
after receiving the MACV, the client CU uses the KUV to calculate message authentication codes for certV, NV and V and compares the message authentication codes with the MACV.
After the verification is passed, both the client CU and the client CV confirm that the partner has obtained the negotiation key KUV. The client CU and the client CV may perform message encryption and decryption and message authentication using the key KUV. Preferably, KUV is split into KUVE and KUVA as a message encryption and decryption key and a message authentication key, respectively. It is also preferable that HASH (KUV | | NV) and HASH (KUV | | | NU) be used as the message encryption/decryption key and the message authentication key, respectively.
Conclusion
In the present invention, the key fob used is a stand-alone hardware isolation device. The public key, the private key and other related parameters are stored in a data security zone in the key fob, so that the possibility of stealing the key by malicious software or malicious operations is greatly reduced, and the key cannot be acquired and cracked by a quantum computer. Since there is no plaintext transmission involving public and private keys and algorithm parameters in the classical network, the risk of the asymmetric key being cracked is low. The key fob ensures the communication security of both communication parties and also greatly improves the security of identity authentication.
Meanwhile, the asymmetric key pool solves the problem that the symmetric key pool brings key storage pressure to the server side, and storage cost is reduced. For example, if the sizes of the symmetric key pools of the original users are all 1G, and the number of the users is N, the server needs to store N G key pools; if the asymmetric key pool is stored, the size of the client side public key pool for storing the server side is 1G, and the server side only needs to store the server side private key pool with the size of 1G. Since the amount of keys is greatly reduced, all keys can be stored in a more secure key fob and key backup and online updates are facilitated.
Aiming at the scheme of carrying out secret communication based on a group symmetric key pool, the patent uses a unique public and private key of two communication parties to carry out authentication and key agreement in point-to-point communication. Because other group members do not have specific public and private keys, the peer-to-peer communication in the group cannot be monitored, and unnecessary information leakage is avoided.
Meanwhile, in the secret communication method based on the implicit certificate, the implicit certificate is used for implicitly proving the credibility of the public key, the asymmetric key and the digital signature are used for proving the identity of the user, both the transmitting and receiving sides of the secret communication can determine the identity of the other side, and any other person cannot intervene or counterfeit the secret communication. Since the asymmetric key is not disclosed, and the key cannot be acquired from the public user information, the usage mode of the asymmetric key has the characteristic of resisting quantum computation.
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (10)

1. The wireless sensor communication method based on the asymmetric key pool and the implicit certificate is characterized by comprising a key issuing process and a communication process, wherein the key issuing process comprises the following steps:
the method comprises the steps that an issuing server generates a first random number, a second random number, a public key of a key receiving end A and a private key of a key receiving end A, wherein the public key of the key receiving end A is generated by using a base point generating element and the private key of the key receiving end A, the first random number is used for taking out a first issuing server public key and a first issuing server private key from a self storage, an implicit certificate parameter is generated by using the first issuing server public key and the public key of the key receiving end A, and an implicit certificate is generated by using the implicit certificate parameter and equipment information of the key receiving end A; performing hash calculation by using the implicit certificate to obtain a first hash value; a second issuing server public key and a second issuing server private key are taken out from the self storage by using the second random number, and private key parameters are generated by using the first hash value, the first issuing server private key and the second issuing server private key; writing a public key pool of an issuing server, the first random number, the second random number, the private key of a key receiving end A and private key parameters into a key card of a key receiving end A;
the key receiving end A reads an issuing server public key pool, a first random number, a second random number, a key receiving end A private key and private key parameters from a key card of the key receiving end A; obtaining a public key of a key receiving end A by using the private key of the key receiving end A and a base point generator, obtaining a first issuing server public key and a second issuing server public key from the issuing server public key pool by using the first random number and the second random number respectively, and obtaining a first hash value by using the implicit certificate parameter, the first issuing server public key and the receiving key end A equipment information; generating a working private key by using the first hash value, a private key of a key receiving end A and private key parameters, generating a working public key by using the first hash value, implicit certificate parameters and a public key of a second issuing server, and generating key information, wherein the key information comprises information of equipment of the key receiving end A, implicit certificate parameters and the second random number;
the key receiving end B acquires key information sent by the key receiving end A, wherein the key information comprises the key receiving end A equipment information, implicit certificate parameters and a second random number; generating an implicit certificate by using the information of the key receiving end A equipment and implicit certificate parameters, carrying out hash calculation on the implicit certificate to obtain a first hash value, obtaining a second issuing server public key from an issuing server public key pool in a key card of a key receiving end B by using the second random number, and generating a key receiving end A public key by using the first hash value, the implicit certificate parameters and the second issuing server public key;
the public key of the key receiving end A is used for encrypting the communication between the key receiving end A and the key receiving end B;
the communication process is as follows:
the client A generates a first random number and sends the first random number and the key information of the client A to the client B;
the client B generates a second random number after acquiring the first random number and client A key information, generates a client A public key by using the client A key information, generates a session key by using the client A public key, a client B private key of the client A public key, the first random number and the second random number, and generates a first authentication code for a client B implicit certificate, the first random number and client B equipment information by using the session key; sending the second random number, the key information of the client B and the first authentication code to the client A;
after the client A obtains the second random number, the key information of the client B and the first authentication code, calculating to obtain the session key, verifying the first authentication code by using the session key, making a second authentication code by using the session key to make an implicit certificate of the client A after the verification is passed, and sending the second authentication code to the client B;
and the client B acquires the second authentication code and confirms the session key after verification.
2. The wireless sensor communication method of claim 1, wherein the client a and client B split the session key into a message encryption and decryption key and a message authentication key.
3. The wireless sensor communication method according to claim 1, wherein the client a and the client B perform a hash operation on the session key and the second random number to obtain a message encryption/decryption key, and perform a hash operation on the session key and the first random number to obtain a message authentication key.
4. The wireless sensor communication method of claim 1, wherein the session key is generated using a hash algorithm using the client a public key, the client B private key, the first random number, and the second random number.
5. The wireless sensor communication method of claim 1, wherein the client a performs implicit authentication on the client B using the session key, the first random number, and the client B device information to generate a new first authentication code when verifying the first authentication code, and compares the first authentication code with the new first authentication code to complete the verification.
6. The wireless sensor communication method of claim 1, wherein the client B, when verifying the second authentication code, uses the session key to make a new second authentication code for the client a implicit certificate, the second random number and the client a device information, and compares the second authentication code with the new second authentication code to complete the verification.
7. A client device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor when executing the computer program realizes the steps of client a in the wireless sensor communication method of claim 1.
8. A client device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor when executing the computer program realizes the steps of client B in the wireless sensor communication method of claim 1.
9. A service station device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor when executing the computer program realizes the steps of an issuing server in the wireless sensor communication method of claim 1.
10. The wireless sensor communication system based on the asymmetric key pool and the implicit certificate is characterized by comprising a client, a service station and a communication network; the client is configured with a client key fob, and a service station public key and a client private key are stored in the client key fob; the service station is configured with a service station key card, and a service station public key pool, a service station private key pool and a client public key pool are stored in the service station key card;
the client, the service station, implements the steps of the wireless sensor communication method in claim 1 through the communication network.
CN201910642464.5A 2019-07-16 2019-07-16 Wireless sensor communication method and system based on asymmetric key pool and implicit certificate Active CN110572788B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910642464.5A CN110572788B (en) 2019-07-16 2019-07-16 Wireless sensor communication method and system based on asymmetric key pool and implicit certificate

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910642464.5A CN110572788B (en) 2019-07-16 2019-07-16 Wireless sensor communication method and system based on asymmetric key pool and implicit certificate

Publications (2)

Publication Number Publication Date
CN110572788A CN110572788A (en) 2019-12-13
CN110572788B true CN110572788B (en) 2022-08-09

Family

ID=68773798

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910642464.5A Active CN110572788B (en) 2019-07-16 2019-07-16 Wireless sensor communication method and system based on asymmetric key pool and implicit certificate

Country Status (1)

Country Link
CN (1) CN110572788B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115001723A (en) * 2021-02-20 2022-09-02 南京如般量子科技有限公司 Group communication method and system based on tree structure and asymmetric key pool

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1889433A (en) * 2006-07-20 2007-01-03 上海交通大学 Mutual identifying key consultation method and system based on hidden common key certificate
CN109560935A (en) * 2018-10-31 2019-04-02 如般量子科技有限公司 The signature method and sealing system of anti-quantum calculation based on public asymmetric key pond
CN109687963A (en) * 2019-01-15 2019-04-26 如般量子科技有限公司 Anti- quantum calculation alliance chain method of commerce and system based on public key pond
CN109756500A (en) * 2019-01-11 2019-05-14 如般量子科技有限公司 Anti- quantum calculation https traffic method and system based on multiple unsymmetrical key ponds
CN109861813A (en) * 2019-01-11 2019-06-07 如般量子科技有限公司 Anti- quantum calculation https traffic method and system based on unsymmetrical key pond

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1889433A (en) * 2006-07-20 2007-01-03 上海交通大学 Mutual identifying key consultation method and system based on hidden common key certificate
CN109560935A (en) * 2018-10-31 2019-04-02 如般量子科技有限公司 The signature method and sealing system of anti-quantum calculation based on public asymmetric key pond
CN109756500A (en) * 2019-01-11 2019-05-14 如般量子科技有限公司 Anti- quantum calculation https traffic method and system based on multiple unsymmetrical key ponds
CN109861813A (en) * 2019-01-11 2019-06-07 如般量子科技有限公司 Anti- quantum calculation https traffic method and system based on unsymmetrical key pond
CN109687963A (en) * 2019-01-15 2019-04-26 如般量子科技有限公司 Anti- quantum calculation alliance chain method of commerce and system based on public key pond

Also Published As

Publication number Publication date
CN110572788A (en) 2019-12-13

Similar Documents

Publication Publication Date Title
US20210111877A1 (en) Systems and methods for generating signatures
US8670563B2 (en) System and method for designing secure client-server communication protocols based on certificateless public key infrastructure
JP4944886B2 (en) Cryptographic authentication and / or shared encryption key configuration using signature keys encrypted with non-one-time pad cryptography, including but not limited to technology with improved security against malleable attacks
JP7221872B2 (en) A Key Agreement Protocol Based on Elliptic Curve Homogenies
CN110519046B (en) Quantum communication service station key negotiation method and system based on one-time asymmetric key pair and QKD
JP2016526342A (en) Multifactor zero-knowledge authentication using pairing
CN108886468A (en) System and method for distributing the keying material and certificate of identity-based
CN110535626B (en) Secret communication method and system for identity-based quantum communication service station
CN110959163A (en) Computer-implemented system and method for enabling secure storage of large blockchains on multiple storage nodes
CN110545169B (en) Block chain method and system based on asymmetric key pool and implicit certificate
TW202029693A (en) Computer implemented system and method for distributing shares of digitally signed data
KR100989185B1 (en) A password authenticated key exchange method using the RSA
CN111416715A (en) Quantum secret communication identity authentication system and method based on secret sharing
CN111404664A (en) Quantum secret communication identity authentication system and method based on secret sharing and multiple mobile devices
CN110519226B (en) Quantum communication server secret communication method and system based on asymmetric key pool and implicit certificate
CN111416712B (en) Quantum secret communication identity authentication system and method based on multiple mobile devices
Luo et al. A security communication model based on certificateless online/offline signcryption for Internet of Things
CN110519040B (en) Anti-quantum computation digital signature method and system based on identity
Chang et al. Novel untraceable authenticated key agreement protocol suitable for mobile communication
CN110572788B (en) Wireless sensor communication method and system based on asymmetric key pool and implicit certificate
Chen et al. Provable secure group key establishment scheme for fog computing
CN116055136A (en) Secret sharing-based multi-target authentication method
KR20040013966A (en) Authentication and key agreement scheme for mobile network
CN111526131B (en) Anti-quantum-computation electronic official document transmission method and system based on secret sharing and quantum communication service station
CN110061895B (en) Close-range energy-saving communication method and system for quantum computing resisting application system based on key fob

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant