Background
With the rapid development of radio frequency identification technology and microelectronic technology, intelligent medical theory based on the technology in the field is gradually applied to practical production. In an intelligent medical environment, through wearing by a patient and embedding an identifiable radio frequency tag in a medical article, a medical system center can acquire information such as the position, the quantity and the like of the patient and the medical article in real time and give suggestions according to different situations. For example: when the data shows that the patient is not in the affected area for a long time, the medical system center automatically sends alarm information to the accompanying person, and simultaneously informs an on-duty doctor nearby the patient to prepare medical help for the patient at the first time; when a large amount of medical resources are consumed, the medical system center automatically reminds the medical resources to be supplemented and prompts related departments to reduce the number of stored patients; when a doctor prescribes a medicine for a patient, the medical system center can timely retrieve and inform a pharmacy of preparing the medicine according to the prescription. Medical staff can also check and analyze the data through the medical system, and put forward some suggestions for improving medical services according to the working characteristics of each department.
Intelligent medical treatment also hides many safety problems while bringing convenient service to people. In the communication messages between the medical system and the terminal, a large amount of privacy information such as the identity, address, medical history of the patient is generally included. However, early intelligent medical systems were less likely to consider privacy concerns, transmitting various types of information directly over a wireless channel. Because of the open nature of wireless channels, illegal molecules can easily steal private information to earn benefits, and the physical and mental health of patients will face threats. Therefore, the intelligent medical system of today should realize the function of privacy protection. Some experts and scholars have already achieved some research results in the aspect of intelligent medical secure communication, and propose a secure communication scheme based on various hash functions and elliptic curve calculation difficulties. However, while such secure communication schemes increase system security and privacy protection, they also place increased demands on the communication devices within the system, requiring servers and terminal devices to perform a significant number of computing and communication tasks, and also increasing the cost of deploying the medical system invisibly. Some experts have found that this problem is a lightweight process that reduces the amount of computation for algorithms that compute hash and elliptic curves, but does not increase the complexity. When frequent retrieval and updating of identifying object information is required in a medical system, frequent performance of these computational tasks can significantly reduce the performance of the medical system, which is undesirable for time-to-life situations. If a weak or even no security mechanism is used for improving the performance of the medical system, illegal personnel can guess through the password dictionary to pass system authentication, view and modify system information at will, and cause privacy information leakage. The invention patent No. CN104009974A discloses a radio frequency identification medical information processing method for providing privacy protection, which, although proposing the concept of anonymous authentication, is mainly used to solve the problems of medical errors and privacy disclosure of patients in the digital medical process, and also improves the efficiency of patients seeing a doctor, and does not involve the security problem in information retrieval.
In fact, under the urgent health needs of people and the push of increasingly mature digital technologies, the establishment of mature intelligent medical treatment is an inevitable trend, and partial problems in the existing communication schemes need to be solved:
(1) anonymous authentification of an identity. In order to prevent users from illegally accessing the system, the identity of the communicating object needs to be authenticated before communication. And the identity of the user is easily acquired by depending on the identity of the communication object and the authentication mode of the password, and then the user is attacked by the password dictionary to break the system. Furthermore, the identity of the system user is also a kind of privacy and should not be used directly for authentication. In order to prevent illegal persons from forging or tampering with the identified object and ensure the reliability of the data obtained by the system, the identity validity of the identification object also needs to be verified.
(2) Identity anonymity irretrievable. To ensure the legitimacy of the user and the identification object, we need to authenticate them. And considering the privacy of the identity information, the identities of the user and the identification object are to be authenticated in an anonymous mode. In the anonymous authentication method, although an attacker cannot reproduce the authentication information and passes the system authentication, the reproduced information is legitimate, and the user or the identified object responds to the reproduced authentication information. Therefore, an attacker can achieve the purpose of tracing the communication object by physically observing the responding device by continuously replaying the authentication information.
(3) The communication device resources are limited. At present, in order to popularize an intelligent medical system, the privacy safety of the medical system needs to be ensured, and the deployment cost of the medical system needs to be reduced. Therefore, when the intelligent medical system is deployed, communication equipment with high computing and storage capacities but high cost cannot be preferentially used, and most communication equipment is low in cost and limited in resources. However, most of the existing secure communication schemes are based on computational difficulties and are not suitable for devices with limited computational and memory capabilities.
Disclosure of Invention
Aiming at the defects in the prior art, the invention provides an information anonymous retrieval method and system based on RFID in an intelligent medical environment. Under the anonymous mutual authentication mechanism, the legitimacy of the identification object can be proved to the server on the premise of not revealing the identity of the user, and meanwhile, the real legitimacy of the information sent by the server can also be verified; in addition, the invention mainly uses the object of bit operation matching identification, ensures the freshness and integrity of the message by using a small amount of Hash and pseudo-random number functions, and can ensure the safety and reliability of the system while reducing the calculation and storage expenses.
In order to achieve the purpose, the invention adopts the following technical scheme:
an information anonymous retrieval method based on RFID in an intelligent medical environment comprises the following steps:
s1, initializing the server, the identification reader and the identification tag, including: allocating an identity number and a corresponding shared secret value to each identification reader and each identification tag, setting a unique account and a unique password for each identification reader, and performing exclusive OR and Hash operation on the account, the password, the identity number and the corresponding shared secret value of each identification reader to generate a corresponding Hash value;
storing the encrypted relevant information of each identification reader and the corresponding relation between the identification reader and the identification tag in the server; storing the encrypted hash value in the identification reader; storing the encrypted identity number, the corresponding shared secret value and the timestamp in the identification tag;
s2, sending retrieval request information to an identification reader, generating identity authentication information by the identification reader in combination with the hash value stored locally and the selected first random number, sending the identity authentication information and the encrypted retrieval request information to a server for identity authentication, and searching and returning encrypted retrieval object information according to the retrieval request information obtained by decryption after the server passes the identity authentication;
and S3, broadcasting the encrypted retrieval object information by using the identification reader, and verifying and positioning the retrieval object according to the authentication information returned by the retrieval object.
In order to optimize the technical scheme, the specific measures adopted further comprise:
further, in step S1, the initializing operation on the server, the identification reader and the identification tag includes the following steps:
s11, initializing the server:
s111, distributing an identity number and a corresponding shared secret value to each identification reader and each identification tag by adopting a server, and locally storing the encrypted related information of each identification reader in the server;
s112, according to the deployment requirement of the identification tags, the identification tag information covered by each identification reader and the corresponding identification reader information are bound and then encrypted and stored in the local server;
s12, initializing the identification reader:
s121, setting a unique account and a unique password locally on each identification reader;
s122, receiving the identity number and the shared secret value sent by the server through the secure communication channel;
s123, performing XOR and Hash operation on the account number, the password, the identity number and the corresponding shared secret value of each identification reader to generate a corresponding Hash value, and deleting the received identity number and the shared secret value;
s13, initializing the identification tag:
and receiving the identity number and the shared secret value sent by the server through the secure communication channel, encrypting and storing the identity number and the shared secret value, and storing the timestamp of the received information.
Further, in step S2, the process of generating the authentication information by the identification reader in combination with the locally stored hash value and the selected first random number includes the following steps:
and receiving an account number and a password input by a user, selecting a first random number after the authentication is passed, and calculating by using a hash value stored in the local and combining a time stamp to generate anonymous identity authentication information.
Further, in step S2, the process of the server searching for and returning the encrypted retrieval object information according to the authentication information sent by the identification reader and the retrieval request information obtained by decryption includes the following steps:
receiving identity authentication information and encrypted retrieval request information sent by an identification reader;
and verifying the identity verification information by using the encrypted relevant information of the identification reader stored locally, if the verification is passed, decrypting to obtain retrieval request information, searching for matched identification tag information, generating anonymous information of an identification object, encrypting and then sending the anonymous information to the identification reader, and otherwise, sending a failure prompt to the identification reader.
Further, the generating of the anonymous information of the identification object includes:
and selecting a second random number, and performing XOR and Hash operation by adopting the second random number, the timestamp, the first random number, the authentication information of the identification reader and the authentication information of the identification tag to generate anonymous information of the identification object.
Further, in step S3, the process of broadcasting the encrypted search object information by using the identification reader, verifying and locating the search object according to the authentication information returned by the search object includes the following steps:
s31, the identification reader receives and broadcasts the anonymous information of the identification object after encryption returned by the server, and the identification label in the broadcast area judges the received broadcast information:
when the difference between the timestamp of the broadcast information and the locally stored timestamp is larger than a preset difference threshold value, the identification tag decrypts the received broadcast information, if the identification tag information obtained by decryption is matched with the information of the identification tag, the identification tag updates the locally stored timestamp information, calculates authentication information for proving the validity of the identification tag, and sends the authentication information to an identification reader;
and S32, the identification reader verifies and positions the retrieval object according to the authentication information returned by the identification tag.
Further, the information anonymous retrieval method further comprises the following steps:
if the time length for broadcasting the encrypted retrieval object information by the identification reader exceeds a preset time length threshold value and the retrieval object is not identified in the corresponding broadcast area, the identification reader sends an assistance search request to the server, so that the server informs the identification readers in idle states in other areas to assist in searching.
Further, the information anonymous retrieval method further comprises the following steps:
and the server, the identification reader and the identification tag send the timestamp for generating the transmission information together with the transmission information to the opposite side in the information transmission process as the primary verification information of the transmission information.
Based on the method, the invention also provides an information anonymous retrieval system based on RFID in an intelligent medical environment, wherein the information anonymous retrieval system comprises a server, an identification reader and an identification tag;
the server distributes an identity number and a corresponding shared secret value to each identification reader and each identification tag, sends the identity number and the shared secret value to each identification reader and each identification tag through a secure communication channel, and stores encrypted related information of each identification reader and a corresponding relation between the identification reader and the identification tag in a local database;
the identification reader sets a unique account and a unique password, receives an identity number and a shared secret value sent by a server, performs exclusive OR and Hash operation by combining the account, the password, the identity number and the corresponding shared secret value to generate a corresponding Hash value, and stores the Hash value in a local database;
the identification tag receives the identity number and the shared secret value sent by the server, encrypts and stores the identity number and the shared secret value, and stores a timestamp of received information;
the identification reader receives retrieval request information input by a user, generates identity authentication information by combining a locally stored hash value and a selected first random number, and sends the identity authentication information and the encrypted retrieval request information to a server for identity authentication, so that the server searches and returns encrypted retrieval object information according to the retrieval request information obtained by decryption after the identity authentication is passed; and the identification reader receives and broadcasts the encrypted retrieval object information, verifies and positions the retrieval object according to the authentication information returned by the retrieval object.
The invention has the beneficial effects that:
the invention solves the problem of anonymous authentication of identity.
1. The invention shares identity number and secret value with the server in advance at the identification reader and the tag end respectively, and generates anonymous authentication information by combining the shared secret information with random number and time stamp, thereby realizing mutual identity authentication under anonymity. Under the anonymous mutual authentication mechanism, the legality of the identification object can be proved to the server on the premise of not revealing the identity of the user, and meanwhile, the real legality of the information sent by the server can also be verified. In addition, the anonymous authentication mechanism can prevent an attacker from launching a password dictionary attack and can also prevent the threat of replaying authentication information to deceive a server or identify an object and steal confidential information of a medical system.
2. The invention can realize the irretrievable identity anonymity.
In the present invention, the authentication information for anonymous authentication is time-efficient, that is, authentication can be performed only when the authentication information is used for a predetermined time. Beyond a limited time, the authentication information will fail, and reusing this authentication information will result in authentication failure. An attacker can tamper with the timestamp but cannot properly tamper with the authentication information containing the timestamp. Therefore, when an attacker replays the authentication message, no identification tag responds, a specific identification object cannot be traced, and the non-traceability of the identity under anonymity is realized.
3. The invention can reduce the communication and calculation amount of the medical system and the resource-limited equipment.
The invention combines the authentication information with the encryption information to be searched and sends the combined information to the server, thereby reducing the interaction times with the server and the time for waiting for the response of the server, reducing the communication traffic and improving the execution efficiency of the system. And the identified object can be determined off-line only by using the message returned by the server, and the on-line state does not need to be kept for a long time. In addition, the invention mainly uses the object of bit operation matching identification, ensures the freshness and integrity of the message by using a small amount of hash and pseudo-random number functions, and can ensure the safety and reliability of the system while reducing the calculation and storage expenses.
Detailed Description
The present invention will now be described in further detail with reference to the accompanying drawings.
It should be noted that the terms "upper", "lower", "left", "right", "front", "back", etc. used in the present invention are for clarity of description only, and are not intended to limit the scope of the present invention, and the relative relationship between the terms and the terms is not limited by the technical contents of the essential changes.
Detailed description of the preferred embodiment
With reference to fig. 1, the present invention provides an information anonymous retrieval method based on RFID in an intelligent medical environment, where the information anonymous retrieval method includes:
s1, initializing the server, the identification reader and the identification tag, including: the method comprises the steps of distributing an identity number and a corresponding shared secret value for each identification reader and each identification label, setting a unique account number and a unique password for each identification reader, and executing exclusive OR and Hash operation aiming at the account number, the password, the identity number and the corresponding shared secret value of each identification reader to generate a corresponding Hash value.
Storing the encrypted relevant information of each identification reader and the corresponding relation between the identification reader and the identification tag in the server; storing the encrypted hash value in the identification reader; and storing the encrypted identity number, the corresponding shared secret value and the timestamp in the identification tag.
And S2, sending the retrieval request information to the identification reader, generating authentication information by the identification reader by combining the hash value stored locally and the selected first random number, sending the authentication information and the encrypted retrieval request information to the server for authentication, and searching and returning the encrypted retrieval object information according to the retrieval request information obtained by decryption after the server passes the authentication.
And S3, broadcasting the encrypted retrieval object information by using the identification reader, and verifying and positioning the retrieval object according to the authentication information returned by the retrieval object.
The invention realizes the functions of identifying and retrieving objects based on the automatic identification characteristic of the radio frequency identification technology (RFID).
The invention comprises the following three steps:
1. pretreatment of
Before the intelligent medical system is used for the first time, initialization operations need to be performed on the server, the identification reader and the identification tag in sequence, as shown in fig. 2. At a server side: the server firstly distributes identity numbers to each reader and each label in sequence, generates corresponding shared secret values and sends the shared secret values to the readers and the labels through a safe communication channel; then, the information of all readers is encrypted and stored; and finally, binding, encrypting and storing the label covered by each reader and the information of the corresponding reader according to the actual deployment requirement of the label. At the identification reader end: each reader sets a local account number and a password, executes exclusive OR and Hash operation with the set account number and password in sequence according to the received identity number and the shared secret value, stores the exclusive OR and Hash operation locally, and deletes the received identity number and the secret value. And directly encrypting and storing the received serial number and the shared secret value at the identification tag end, and storing the received time stamp.
2. Request phase
In the request phase, a legitimate user may request to the medical system to retrieve a particular patient or item through his own reader, as shown in fig. 3. First, the user needs to input the account and password value set by the user. Then, the reader device selects a random number, and then calculates by using the hash value stored locally and the timestamp to generate anonymous authentication information. Finally, the reader sends the retrieval request information containing the authentication information and the encryption to the server. After receiving the requested information, the server firstly uses the reader information stored by local encryption to verify the requested information. If the server successfully verifies the request information, the server decrypts the retrieved content, finds the matched tag information in the database, generates information of the reader authentication retrieval object, and encrypts and sends the information to the reader. And if the server fails to verify the request information, sending a failure prompt to inform the reader.
3. Retrieval phase
First, the reader decrypts the information returned by the server and broadcasts the anonymous information of the identification object, as shown in fig. 4. The identification tag within the broadcast area then determines the broadcast information and attempts to decrypt the broadcast information when the difference between the timestamp of the broadcast information and the locally stored timestamp is greater than a threshold. If the decrypted information is matched with the information of the identification tag, the identification tag can update the locally stored timestamp information, calculate authentication information for proving the validity of the identification tag and send the authentication information to the reader. Finally, the reader verifies and locates the retrieved object using the authentication information. If the reader does not identify the retrieved object in the broadcast area after broadcasting the anonymous information, the reader may request the server to perform such a lookup using readers in other areas.
Detailed description of the invention
In this embodiment, the doctor user D requests to retrieve the patient label P by using the reader device R, and the detailed description will be given to the specific implementation method of the present invention.
1. Pretreatment of
The preprocessing in the invention only needs to be executed once, and the preprocessing operation does not need to be executed after the initialization of the system parameters is completed. First, the servers are readers R respectively
iAnd a label P
ijAssigning identity numbers
And a shared secret value
And stores the information in a database in an encrypted manner. Then, the user D sets the account U of the user D on the reader R
DCode W
DThe reader will calculate
And stores S and then deletes ID
RAnd s
R. Finally, tag P directly stores ID
PAnd s
PAnd updates the value of the time stamp T.
2. Request phase
When a user D requests to retrieve a patient label P, firstly, the user D inputs an account U of the user on a reader R
DAnd a password W
D. However, the device is not suitable for use in a kitchenThen, the reader calculates according to the input account number and password
To obtain
Request information for encrypted retrieval as encryption key
Finally, the reader randomly selects a number N
RFor calculating anonymous authentication information
And sent to the server along with the timestamp. After the server receives the request, if the time stamp T is verified
1And if the authentication information is new, the local reader information is searched, and the reader R with the calculation result of the authentication information is found. When this reader information is found, it means that the user is authenticated by the server. Then, the server will decrypt the request message and randomly select a number N
SFinding out the information of the label P in the label related to the reader, and calculating the mutual anonymous authentication information of the reader and the label
Transmitting alpha
1,α
2,β
2,T
2,Auth
2To the reader R. Where Lrot () is used as the left circular shift operation, rot () is the right circular shift operation, T
2Is the server-side timestamp. If the user is authenticated or the tag is found to fail, the server returns a prompt that the request is invalid.
3. Retrieval phase
After receiving the information, the reader firstly determines the time stamp T
2Is fresh and then local
And received alpha
1、α
2、β
2、T
2Performing connection and Hash operation in sequence, and judging whether the calculated Hash value is equal to Auth
2Are equal. After the integrity of the authentication information is successfully verified, the reader R broadcasts alpha
1、α
2、T
2And N
R. The tag receiving the broadcast first checks the timestamp T
2When T is
2-T is greater than a threshold, the tag attempts to decrypt alpha
1、α
2. However, only the tag P can correctly decrypt α
1、α
2Obtaining and self-identity ID
PThe same value, the reader is considered authenticated. The label can be used
T
2And N
RComputing
This information, which can be authenticated, proves itself to the reader as the tag that the reader is looking for. Finally, reader R uses β
1Calculate out
When beta is
2 *And beta
2And if the two are equal, the label is marked to pass the reader authentication, and the doctor user D is proved to find the patient label P.
Detailed description of the preferred embodiment
Based on the method, the invention also provides an information anonymous retrieval system based on the RFID in the intelligent medical environment, and the information anonymous retrieval system comprises a server, an identification reader and an identification tag.
The server distributes an identity number and a corresponding shared secret value to each identification reader and each identification tag, sends the identity number and the shared secret value to each identification reader and each identification tag through a secure communication channel, and stores encrypted related information of each identification reader and corresponding relation between the identification reader and the identification tag in a local database.
The identification reader is provided with a unique account and a unique password, receives an identity number and a shared secret value sent by a server, performs exclusive OR and Hash operation by combining the account, the password, the identity number and the corresponding shared secret value to generate a corresponding Hash value, and stores the Hash value in a local database.
And the identification tag receives the identity number and the shared secret value sent by the server, encrypts and stores the identity number and the shared secret value, and stores the timestamp of the received information.
The identification reader receives retrieval request information input by a user, generates identity authentication information by combining a locally stored hash value and a selected first random number, and sends the identity authentication information and the encrypted retrieval request information to a server for identity authentication, so that the server searches and returns encrypted retrieval object information according to the retrieval request information obtained by decryption after the identity authentication is passed; and the identification reader receives and broadcasts the encrypted retrieval object information, verifies and positions the retrieval object according to the authentication information returned by the retrieval object.
The above is only a preferred embodiment of the present invention, and the protection scope of the present invention is not limited to the above-mentioned embodiments, and all technical solutions belonging to the idea of the present invention belong to the protection scope of the present invention. It should be noted that modifications and embellishments within the scope of the invention may be made by those skilled in the art without departing from the principle of the invention.