Identity authentication method, terminal device, authentication device, authorization device and medium

By generating verification data based on random numbers and device private keys and utilizing the elliptic curve encryption algorithm, the high risk of leakage caused by multiple terminal devices sharing public keys is resolved, and anti-public key traceability is achieved, while improving identity authentication security.

CN114091007BActive Publication Date: 2025-10-17BEIJING XIAOMI MOBILE SOFTWARE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202010859031.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-08-24
Publication Date
2025-10-17
Estimated Expiration
2040-08-24

AI Technical Summary

Technical Problem

In the existing technology, multiple terminal devices share a device certificate, which leads to the leakage of public keys, resulting in a high risk of leakage and difficulty in effectively resisting public key tracking.

Method used

The verification data is generated by the first random number generated by the terminal device, the device private key and the authorization data, and the temporary public key and signature are generated using the elliptic curve encryption algorithm to form constantly changing verification data, avoiding the direct use of a fixed device public key.

Benefits of technology

It reduces the risk of tracing the identity of terminal devices using public keys, achieves a unique mapping between terminal devices and verification data, reduces the risk of leakage caused by multiple terminal devices sharing public keys, and improves the security of identity authentication.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114091007B_ABST
    Figure CN114091007B_ABST
Patent Text Reader

Abstract

The present disclosure relates to an identity authentication method, a terminal device, an authentication device, an authorization device and a medium. The identity authentication method comprises: obtaining authorization data sent by the authorization device; receiving identity authentication request data sent by the authentication device; generating verification data of the terminal device based on a first random number generated by the terminal device, a device private key generated by the terminal device, the authorization data and the identity authentication request data; and sending the verification data to the authentication device, wherein the verification data is used by the authentication device to determine whether the identity of the terminal device is legitimate. Through the embodiments of the present disclosure, not only can the situation of high risk of leakage caused by multiple terminal devices sharing a public key be reduced, but also the situation of tracing the identity of the terminal device from the device public key can be reduced, thereby achieving the purpose of resisting public key tracing.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the technical field of information security, and particularly relates to an identity authentication method, a terminal device, an authentication device, an authorization device and a medium. BACKGROUND

[0002] The authorization device issues a device certificate containing a public key and a private key for the terminal device. When the authentication device authenticates the identity of the terminal device, the public key and the private key have a pairing property, and the identity of the terminal device can be verified by using the public key of the device certificate. Since the public key has uniqueness and can be uniquely mapped to the terminal device, it is easy to perform reverse tracking through the public key.

[0003] In order to resist public key tracking, the existing scheme adopts a plurality of terminal devices sharing one device certificate. However, the plurality of terminal devices sharing one device certificate, i.e., "one key for multiple machines", can lead to the leakage of the public key of one terminal device, and the terminal devices using the same set of device certificates will also be leaked, which causes the problem of high risk of leakage on the basis of resisting public keys. SUMMARY

[0004] The present disclosure provides an identity authentication method, a terminal device, an authentication device, an authorization device and a medium.

[0005] According to a first aspect of an embodiment of the present disclosure, an identity authentication method is provided, applied to a terminal device, the terminal device having established communication with an authentication device, and the terminal device having established communication with an authorization device; the method comprises:

[0006] obtaining authorization data sent by the authorization device;

[0007] receiving identity authentication request data sent by the authentication device;

[0008] generating verification data of the terminal device based on a first random number generated by the terminal device, a device private key generated by the terminal device, the authorization data and the identity authentication request data;

[0009] sending the verification data to the authentication device; wherein the verification data is used by the authentication device to determine whether the identity of the terminal device is legal.

[0010] In some embodiments, the generating verification data based on the first random number generated by the terminal device, the authorization data and the identity authentication request data comprises:

[0011] determining first coordinate data and second coordinate data based on the first random number and the authorization data;

[0012] determine, based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data and the first coordinate data, first modulus data, a temporary public key and a temporary signature;

[0013] form the verification data based on an abscissa in the first coordinate data, the first modulus data, an abscissa of the second coordinate data, the temporary signature and the temporary public key.

[0014] In some embodiments, the authorization data comprises authorization coordinate data, and determining, based on the first random number and the authorization data, the first coordinate data and the second coordinate data comprises:

[0015] determining the first coordinate data based on a first sub-random number of the first random number and the authorization coordinate data;

[0016] determining the second coordinate data based on a second sub-random number of the first random number and a preset base point.

[0017] In some embodiments, the authorization data comprises authorization coordinate data and second modulus data.

[0018] determining, based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data and the first coordinate data, first modulus data, a temporary public key and a temporary signature comprises:

[0019] performing a modulus operation on an abscissa of the first coordinate data and an abscissa of the authorization coordinate data to obtain third modulus data;

[0020] performing a modulus operation on the third modulus data, a first sub-random number of the first random number and the second modulus data to obtain the first modulus data;

[0021] determining the temporary public key based on the third modulus data, the device private key and a preset base point;

[0022] determining the temporary signature based on the third modulus data, a second sub-random number of the first random number, the identity authentication request data, the device private key and an abscissa of the second coordinate data.

[0023] According to a second aspect of the embodiments of the present disclosure, a method for identity authentication is provided, which is applied to an authentication device, the authentication device establishes communication with a terminal device, and the authentication device establishes communication with an authorization device, and the method comprises:

[0024] obtaining an authorization public key sent by the authorization device;

[0025] sending identity authentication request data to the terminal device;

[0026] receiving verification data returned by the terminal device based on the identity authentication request data;

[0027] determining whether the identity of the terminal device is legal based on the authorized public key, the identity authentication request data and the verification data.

[0028] In some embodiments, the determining whether the identity of the terminal device is legal based on the authorized public key, the identity authentication request data and the verification data comprises:

[0029] obtaining third coordinate data based on the authorized public key, first modulus data in the verification data, a temporary public key in the verification data and an abscissa of first coordinate data in the verification data;

[0030] obtaining fourth coordinate data based on the identity authentication request data, an abscissa of second coordinate data in the verification data, the temporary public key of the verification data, a preset base point and a modular inverse of a temporary signature of the verification data;

[0031] determining that the identity of the terminal device is a legal identity when the abscissa of the third coordinate data is equal to the abscissa of the first coordinate data and the abscissa of the fourth coordinate data is equal to the abscissa of the second coordinate data.

[0032] According to a third aspect of the embodiments of the present disclosure, an identity authentication method is provided, applied to an authorized device, the authorized device being in communication with a terminal device, and the authorized device being in communication with an authentication device, the method further comprising:

[0033] receiving a device private key sent by the terminal device;

[0034] determining authorization data based on an authorized private key generated by the authorized device, a second random number generated by the authorized device and the device private key;

[0035] sending the authorization data to the terminal device.

[0036] In some embodiments, the determining authorization data based on the authorized private key generated by the authorized device, the second random number generated by the authorized device and the device private key comprises:

[0037] determining authorization coordinate data based on the second random number and a preset base point;

[0038] determining second modulus data based on the authorized private key, the device private key, an abscissa of the authorization coordinate data and a modular inverse of the second random number;

[0039] form the authorization data based on the authorization coordinate data and the second modulus data.

[0040] In some embodiments, the method further includes:

[0041] sending, to the authentication device, an authorization public key generated by the authorization device.

[0042] According to a fourth aspect of embodiments of the present disclosure, a terminal device is provided, which establishes communication with an authentication device and an authorization device respectively, and includes:

[0043] a first obtaining module configured to obtain authorization data sent by the authorization device;

[0044] a first receiving module configured to receive identity authentication request data sent by the authentication device;

[0045] a generating module configured to generate verification data of the terminal device based on a first random number generated by the terminal device, a device private key generated by the terminal device, the authorization data, and the identity authentication request data;

[0046] a first sending module configured to send the verification data to the authentication device; wherein the verification data is used by the authentication device to determine whether the identity of the terminal device is legitimate.

[0047] In some embodiments, the generating module includes:

[0048] a first determining module configured to determine first coordinate data and second coordinate data based on the first random number and the authorization data;

[0049] a second determining module configured to determine first modulus data, a temporary public key, and a temporary signature based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data, and the first coordinate data;

[0050] a forming module configured to form the verification data based on an abscissa in the first coordinate data, the first modulus data, an abscissa of the second coordinate data, the temporary signature, and the temporary public key.

[0051] In some embodiments, the authorization data includes authorization coordinate data, and the first determining module is configured to determine the first coordinate data based on a first sub-random number of the first random number and the authorization coordinate data, and determine the second coordinate data based on a second sub-random number of the first random number and a preset base point.

[0052] In some embodiments, the authorization data comprises authorization coordinate data and second modulus data, the second determining module is configured to perform a modulus operation on the abscissa of the first coordinate data and the abscissa of the authorization coordinate data to obtain third modulus data; perform a modulus operation on the third modulus data, a first sub-random number of the first random number and the second modulus data to obtain the first modulus data; determine the temporary public key based on the third modulus data, the device private key and a preset base point; and determine the temporary signature based on the third modulus data, a second sub-random number of the first random number, the identity authentication request data, the device private key and the abscissa of the second coordinate data.

[0053] According to a fifth aspect of the embodiments of the present disclosure, an authentication device is provided, which establishes communication with a terminal device and an authorization device respectively, and comprises:

[0054] A second obtaining module configured to receive an authorization public key sent by the authorization device;

[0055] A second sending module configured to send identity authentication request data to the terminal device;

[0056] A second receiving module configured to receive verification data returned by the terminal device based on the identity authentication request data;

[0057] A legality module configured to determine whether the identity of the terminal device is legal based on the authorization public key, the identity authentication request data and the verification data.

[0058] In some embodiments, the legality module is configured to obtain third coordinate data based on the authorization public key, first modulus data in the verification data, a temporary public key in the verification data and the abscissa of first coordinate data in the verification data; obtain fourth coordinate data based on the identity authentication request data, the abscissa of second coordinate data in the verification data, the temporary public key in the verification data, a preset base point and the modulus inverse of the temporary signature in the verification data; and determine that the identity of the terminal device is a legal identity when the abscissa of the third coordinate data is equal to the abscissa of the first coordinate data and the abscissa of the fourth coordinate data is equal to the abscissa of the second coordinate data.

[0059] According to a sixth aspect of the embodiments of the present disclosure, an authorization device is provided, which establishes communication with a terminal device and an authentication device respectively, and comprises:

[0060] A third receiving module configured to receive a device private key sent by the terminal device;

[0061] a third determining module, configured to determine authorization data based on the authorization private key generated by the authorization device, the second random number generated by the authorization device, and the device private key;

[0062] a third sending module, configured to send the authorization data to the terminal device.

[0063] In some embodiments, the third determining module is configured to determine authorization coordinate data based on the second random number and a preset base point; determine second module data based on a modular inverse of the authorization coordinate data, the device private key, and the second random number; and form the authorization data based on the authorization coordinate data and the second module data.

[0064] In some embodiments, the authorization device further includes:

[0065] a fourth sending module, configured to send the authorization public key generated by the authorization device to the authentication device.

[0066] According to a seventh aspect of the embodiments of the present disclosure, a terminal device is provided, which at least includes: a first processor and a first memory for storing executable instructions capable of running on the first processor, wherein:

[0067] When the first processor runs the executable instructions, the executable instructions perform the steps in the identity authentication method provided in the first aspect.

[0068] According to an eighth aspect of the embodiments of the present disclosure, an authentication device is provided, which at least includes: a second processor and a second memory for storing executable instructions capable of running on the second processor, wherein:

[0069] When the second processor runs the executable instructions, the executable instructions perform the steps in the identity authentication method provided in the second aspect.

[0070] According to a ninth aspect of the embodiments of the present disclosure, an authorization device is provided, which at least includes: a third processor and a third memory for storing executable instructions capable of running on the third processor, wherein:

[0071] When the third processor runs the executable instructions, the executable instructions perform the steps in the identity authentication method provided in the third aspect.

[0072] According to a tenth aspect of the embodiments of the present disclosure, a non-transitory computer readable storage medium is provided, which stores computer executable instructions, and the computer executable instructions are executed by a first processor to implement the identity authentication method provided in the first aspect.

[0073] Alternatively, the computer executable instructions, when executed by the second processor, implement the identity authentication method provided by the second aspect.

[0074] Alternatively, the computer executable instructions, when executed by the third processor, implement the identity authentication method provided by the third aspect.

[0075] The technical solutions provided by the embodiments of the present disclosure can include the following beneficial effects:

[0076] The embodiments of the present disclosure generate the verification data of the terminal device based on the first random number generated by the terminal device, the device private key generated by the terminal device, the authorization data stored by the terminal device, and the identity authentication request data. That is, the verification data of the embodiments of the present disclosure is the constantly changing verification data obtained by adding the first random number, and is not the fixed and unchanging device public key, thereby reducing the situation of tracing the terminal device identity from the device public key, and achieving the purpose of resisting public key tracing. Moreover, in the identity authentication process of different terminal devices, different first random numbers generated by different terminal devices correspond to different verification data, which can realize the unique mapping of the terminal device and the verification data, thereby the leakage of one terminal device will not affect the leakage of other terminal devices, which can reduce the situation of high risk of leakage caused by multiple terminal devices sharing the public key, and can improve the security of identity authentication on the basis of resisting public key tracking.

[0077] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit the present disclosure. BRIEF DESCRIPTION OF DRAWINGS

[0078] The accompanying drawings, which are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure and, together with the specification, serve to explain the principles of the present disclosure.

[0079] Figure 1 is a flow of an identity authentication method according to an embodiment of the present disclosure Figure One .

[0080] Figure 2 is a flow of an identity authentication method according to an embodiment of the present disclosure Figure Two .

[0081] Figure 3 is a flow of an identity authentication method according to an embodiment of the present disclosure Figure Three .

[0082] Figure 4 is a flow of an identity authentication method according to an embodiment of the present disclosure Figure Four .

[0083] Figure 5is a structural schematic diagram of a terminal device according to an example embodiment.

[0084] Figure 6 is a structural schematic diagram of an authentication device according to an example embodiment.

[0085] Figure 7 is a structural schematic diagram of an authorization device according to an example embodiment.

[0086] Figure 8 is a block diagram of a terminal device according to an example embodiment. DETAILED DESCRIPTION

[0087] The example embodiments will be described in detail herein with reference to the accompanying drawings. When the following description refers to accompanying drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following example embodiments do not represent all implementations consistent with the present disclosure. Instead, they are merely examples of apparatuses and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0088] Figure 1 is a method flow of an identity authentication method according to an example embodiment. Figure One As shown in Figure 1 applied to a terminal device, the terminal device has established communication with an authentication device, the terminal device has established communication with an authorization device, and the terminal device performs an identity authentication method including the following steps:

[0089] S101, obtaining authorization data sent by the authorization device;

[0090] S102, receiving identity authentication request data sent by the authentication device;

[0091] S103, generating verification data of the terminal device based on a first random number generated by the terminal device, a device private key generated by the terminal device, the authorization data, and the identity authentication request data;

[0092] S104, sending the verification data to the authentication device; wherein the verification data is used by the authentication device to determine whether the identity of the terminal device is legitimate.

[0093] The terminal device can be a wearable electronic device and a mobile terminal, the mobile terminal including a mobile phone, a notebook computer, or a tablet computer, and the wearable electronic device including a smart watch or smart glasses; the terminal device can also be an integrated circuit card (IC) or an Internet of Things (IoT) device, and the present disclosure does not limit the terminal device.

[0094] The terminal device is in communication with an authentication device and an authorization device. The authorization device is configured to issue authorization data for identity authentication to the terminal device. The authentication device is configured to authenticate whether the terminal device is a legal device, and the authentication device includes various program applications, such as a key application or an audio application.

[0095] In the embodiments of the present disclosure, the authorization data sent by the authorization device is obtained, including: directly receiving the authorization data returned by the terminal device based on the device private key; or the storage of the terminal device stores the authorization data sent by the authorization device, and the terminal device can obtain the authorization data sent by the authorization device from the storage.

[0096] It should be noted that the authorization data is used for identity authentication of the terminal device. The authorization data includes but is not limited to an authorization code. The authorization data is generated by the authorization device and sent to the terminal device. For example, the authorization data can be determined by the authorization device according to the authorization private key of the authorization device, the second random number and the device private key.

[0097] The terminal device receives identity authentication request data sent by the authentication device, and the identity authentication request data includes but is not limited to an authentication random number generated by the authentication device, which can be used for subsequent identity authentication, so that a terminal device without the authentication random number cannot perform identity authentication.

[0098] In the embodiments of the present disclosure, after receiving the identity authentication request data, the terminal device randomly generates a first random number. The first random number, the authorization data, the device private key and the identity authentication request data are used to determine the verification data.

[0099] The device private key is fixed in the identity authentication process and is not disclosed to the outside. The first random number participates in the determination of the verification data. When the terminal device proves its identity to the authentication device by the verification data, the verification data provided by the terminal device each time is changing and does not contain a fixed device public key or a fixed and unchanged data component.

[0100] In the embodiments of the present disclosure, the verification data of the terminal device is generated based on the first random number generated by the terminal device, the device private key generated by the terminal device, the authorization data and the identity authentication request data. That is, the verification data of the present disclosure is the constantly changing verification data obtained by adding the first random number, and is not a fixed and unchanged device public key, thereby reducing the possibility of tracing the identity of the terminal device from the device public key, and achieving the purpose of resisting public key tracing.

[0101] Also, in the identity authentication process of different terminal devices, different first random numbers generated by different terminal devices correspond to different check data, which can realize the unique mapping of terminal devices and check data, thereby reducing the risk of large leakage caused by multiple terminal devices sharing the public key, and improving the security of identity authentication on the basis of resisting public key tracking.

[0102] In some embodiments, the check data is generated based on the first random number generated by the terminal device, the authorization data, and the identity authentication request data, comprising:

[0103] The first coordinate data and the second coordinate data are determined based on the first random number and the authorization data;

[0104] The first modulus data, the temporary public key, and the temporary signature are determined based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data, and the first coordinate data;

[0105] The check data is formed based on the abscissa in the first coordinate data, the first modulus data, the abscissa of the second coordinate data, the temporary signature, and the temporary public key.

[0106] In the embodiments of the present disclosure, the terminal device can first determine the first coordinate data and the second coordinate data based on the first random number and the authorization data before generating the check data. The first coordinate data and the second coordinate data are two coordinate data on an elliptic curve in an elliptic encryption algorithm (ECC).

[0107] It should be noted that the authorization data includes authorization coordinate data. The authorization coordinate data is coordinate data on the ECC elliptic curve that is different from the first coordinate data and the second coordinate data, and the authorization coordinate data can be used to prove the identity of the terminal device.

[0108] In some embodiments, the first coordinate data and the second coordinate data are determined based on the first random number and the authorization data, comprising:

[0109] The first coordinate data is determined based on the first sub-random number of the first random number and the authorization coordinate data;

[0110] The second coordinate data is determined based on the second sub-random number of the first random number and the preset base point.

[0111] In the embodiments of the present disclosure, the first coordinate data is determined based on the first sub-random number of the first random number and the authorization coordinate data, comprising: determining the first coordinate data according to the product of the first sub-random number and the authorization coordinate data.

[0112] For example, the formula for determining the first coordinate data is (1). Wherein, k1 is the first sub-random number, (Rcx ,R cy ) is the authorized coordinate, (R cbx ,R cby ) is the first coordinate data, and “.” is the ECC dot multiplication operation.

[0113] (R cbx ,R cby )=k1·(R cx ,R cy ) (1)

[0114] In the embodiment of the present disclosure, determining the second coordinate data based on the second sub-random number of the first random number and the preset base point includes: determining the second coordinate data according to the product of the second sub-random number and the preset base point.

[0115] Exemplarily, the formula for determining the second coordinate data is (2). Wherein, k3 is the second sub-random number, G is a preset base point, which is the base point of the ECC elliptic curve and is preset, (R ex ,R ey ) is the second coordinate data.

[0116] (R ex ,R ey )=k3·G (2)

[0117] In an embodiment of the present disclosure, after determining the first coordinate data and the second coordinate data, the embodiment of the present disclosure can determine the first module data, the temporary public key and the temporary signature based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data and the first coordinate data.

[0118] In some embodiments, determining the first module data, the temporary public key, and the temporary signature based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data, and the first coordinate data includes:

[0119] Perform a modular operation on the abscissa of the first coordinate data and the abscissa of the authorized coordinate data to obtain third modular data; perform a modular operation on the third modular data, the first sub-random number of the first random number, and the second modular data to obtain the first modular data; determine a temporary public key based on the third modular data, the device private key, and a preset base point; determine a temporary signature based on the third modular data, the second sub-random number of the first random number, the identity authentication request data, the device private key, and the abscissa of the second coordinate data.

[0120] In an embodiment of the present disclosure, a modular operation is performed on the horizontal coordinate of the first coordinate data and the horizontal coordinate of the authorized coordinate data to obtain third modular data, including: taking the modular operation on the product of the reciprocal of the horizontal coordinate of the first coordinate data and the horizontal coordinate of the authorized coordinate data to obtain the third modular data.

[0121] For example, the formula for determining the third mode data is (3). Wherein, k2 is the third mode data, R cbx is the horizontal coordinate of the first coordinate data, R cx is the horizontal coordinate of the authorized coordinate data, "mod n" is the modulo n operation in ECC, n is the order of the base point of the ECC elliptic curve, and "-1" refers to the ECC modular inverse operation.

[0122]

[0123] In an embodiment of the present disclosure, a modular operation is performed on the third modular data, the first sub-random number of the first random number, and the second modular data to obtain the first modular data, including: taking the modular operation on the third modular data, the modular inverse of the first sub-random number, and the product of the second modular data to obtain the first modular data.

[0124] Exemplarily, the formula for determining the first modulus data is (4): wherein k2 is the third modulus data, k1 is the first sub-random number, and S is the second modulus data.

[0125]

[0126] In an embodiment of the present disclosure, determining a temporary public key based on the third module data, the device private key and the preset base point includes: determining the temporary public key according to the product of the third module data, the device private key and the preset base point.

[0127] For example, the formula for determining the temporary public key is (5). Where k2 is the third modulus data, d c is the device private key, and G is the preset base point.

[0128] Q e =(k2·d c )·G (5)

[0129] In the embodiment of the present disclosure, a temporary signature is determined based on the third modulus data, the second sub-random number of the first random number, the identity authentication request data, the device private key, and the horizontal coordinate of the second coordinate data. The formula of the temporary signature is (6). Where S e is a temporary signature, e is the identity authentication request data, d c is the device private key, R ex is the horizontal coordinate of the second coordinate data, k2 is the third module data, n is the order of the preset base point, and k3 is the second sub-random number.

[0130]

[0131] In the embodiments of the present disclosure, the verification data is obtained based on the authorization data participating in operation, and the verification data includes the abscissa in the first coordinate data, the first modulus data, the abscissa of the second coordinate data, the temporary signature, and the temporary public key. That is, the verification data of the embodiments of the present disclosure does not directly use the authorization data to prove that the identity of the terminal device itself to the authentication device is a legal identity, but uses the first sub-random number, the second sub-random number, and the identity authentication request data to participate in operation to obtain different verification data, so that the verification data provided to the authentication device has no fixed or unique factor, and the terminal device and the verification data cannot be associated and mapped, thereby reducing the risk of large leakage caused by multiple terminal devices sharing the public key.

[0132] The embodiments of the present disclosure also provide an identity authentication method applied to an authentication device. As shown in the identity authentication method, the authentication device and the terminal device establish communication, the authentication device and the authorization device establish communication, and the authentication device performs the identity authentication method, which includes the following steps: Figure 2

[0133] S201, obtaining an authorization private key sent by an authorization device;

[0134] S202, sending identity authentication request data to a terminal device;

[0135] S203, receiving verification data returned by the terminal device based on the identity authentication request data;

[0136] S204, determining whether the identity of the terminal device is legal based on the authorization public key, the identity authentication request data, and the verification data.

[0137] The authentication device is used to authenticate whether the terminal device is a legal device, for example, the authentication device includes various program applications. The authentication device not only establishes communication with the terminal device, but also establishes communication with the authorization device. Before the authentication device sends the identity authentication request data to the terminal device, the authentication device can accept the authorization public key sent by the authorization device and store the authorization public key. When it is necessary to verify the identity of the terminal device, the authorization public key can be directly obtained to participate in determining whether the identity of the terminal device is legal. Of course, the authorization public key sent by the authorization device can also be directly received when it is necessary to verify the identity of the terminal device.

[0138] In the embodiments of the present disclosure, when it is necessary to verify the identity of the terminal device, the identity authentication request data can be sent to the terminal device, and the verification data returned by the terminal device is received, and whether the identity of the terminal device is legal is determined based on the authorization public key, the identity authentication request data, and the verification data.

[0139] ​It should be noted that the identity authentication request data participates in determining whether the identity of the terminal device is legal in the embodiment of the present disclosure, so that only the terminal device having the identity authentication request data can be legally authenticated, reducing the case that the terminal device without the identity authentication request data uses the once legal identity to perform identity authentication, and improving the accuracy of identity authentication.

[0140] In addition, the authentication device of the embodiment of the present disclosure participates in identity authentication through the received verification data, and the verification data is constantly changing verification data obtained by adding the first random number, and is not a fixed and unchanged device public key, thereby reducing the case of tracing the identity of the terminal device from the device public key, and achieving the purpose of resisting public key tracing.

[0141] In some embodiments, based on the authorized public key, the identity authentication request data and the verification data, it is determined whether the identity of the terminal device is legal, comprising:

[0142] Based on the authorized public key, the first modulus data in the verification data, the temporary public key in the verification data and the abscissa of the first coordinate data in the verification data, third coordinate data is obtained;

[0143] Based on the identity authentication request data, the abscissa of the second coordinate data in the verification data, the temporary public key of the verification data, the preset base point data and the modular inverse of the temporary signature of the verification data, fourth coordinate data is obtained;

[0144] When the abscissa of the third coordinate data is equal to the abscissa of the first coordinate data, and the abscissa of the fourth coordinate data is equal to the abscissa of the second coordinate data, it is determined that the identity of the terminal device is a legal identity.

[0145] In the embodiment of the present disclosure, based on the authorized public key, the first modulus data in the verification data, the temporary public key in the verification data and the abscissa of the first coordinate data in the verification data, the formula for obtaining the third coordinate data can be (7). Wherein, (P 1x ,P 1y ) is the third coordinate, Q e is the temporary public key, R cbx is the abscissa of the first coordinate data, Q b is the authorized public key, S c is the first modulus data.

[0146]

[0147] In the embodiment of the present disclosure, based on the identity authentication request data, the abscissa of the second coordinate data in the verification data, the temporary public key of the verification data, the preset base point and the modular inverse of the temporary signature of the verification data, the formula for obtaining the fourth coordinate data can be (8). Wherein, (P 2x ,P 2yis the fourth coordinate, Q e is the temporary public key, R ex is the horizontal coordinate of the second coordinate data, e is the identity authentication request data, G is a preset base point, S e is the temporary signature.

[0148]

[0149] In the embodiments of the present disclosure, the authentication device can determine that the identity of the terminal device is legal when the horizontal coordinate of the third coordinate data is equal to the horizontal coordinate of the first coordinate data, and the horizontal coordinate of the fourth coordinate data is equal to the horizontal coordinate of the second coordinate data. Of course, in the identity authentication process, the authentication device of the embodiments of the present disclosure can also obtain the device key of the terminal device through the temporary public key in the authorization data. That is, the authentication device of the embodiments of the present disclosure can not only prove the legality of the terminal device, but also prove the legality and uniqueness of the terminal device at the same time. For example, the authentication device in the embodiments of the present disclosure can authenticate the legal identity of the terminal device without knowing the user identifier of the terminal device.

[0150] In the embodiments of the present disclosure, the identity of the terminal device is determined to be legal by comparing the horizontal coordinate of the third coordinate data with the horizontal coordinate of the first coordinate data, and comparing the horizontal coordinate of the fourth coordinate data with the horizontal coordinate of the second coordinate data. The two comparisons can improve the accuracy of identity authentication.

[0151] In the embodiments of the present disclosure, the identity authentication request data participates in the identity authentication operation of the terminal device, so that only the terminal device with the identity authentication request data can be legally authenticated, reducing the situation that the terminal device without the identity authentication request data uses the once legal identity to perform identity authentication, and further improving the accuracy of identity authentication.

[0152] In the embodiments of the present disclosure, the authorization public key and the authorization data participate in the identity authentication operation of the terminal device, so that the terminal device without the authorization device issued by the authorization device cannot improve the legal identity proof, and the accuracy of identity authentication is further improved.

[0153] The embodiments of the present disclosure also provide an identity authentication method, which is applied to an authorization device. As shown in Figure 3 The authorization device respectively establishes communication with a terminal device and an authentication device, and the authorization device performs an identity authentication method including the following steps:

[0154] S301, receiving a device private key sent by a terminal device;

[0155] S302, determining authorization data based on an authorization private key generated by the authorization device, a second random number generated by the authorization device, and the device private key;

[0156] S303, sending the authorization data to the terminal device.

[0157] The authorization device is configured to issue authorization data for identity authentication for the terminal device. For example, the authorization device includes, but is not limited to, a certificate authority (CA) center.

[0158] The device private key of the terminal device is a proof of identity of the terminal device and is not publicly disclosed. The device private key can be encrypted and sent to the authorization device, and can also be generated through key negotiation with the authorization device. In this way, the device private key can be obtained by devices other than the authorization device, and the security of identity authentication is improved.

[0159] Of course, the terminal device can directly send the device private key to the authorization device in plaintext, and different strategies can be used according to the security of the deployment environment, and the embodiments of the present disclosure are not limited.

[0160] In the embodiments of the present disclosure, before the authorization device receives the device private key sent by the terminal device, the terminal device generates a second random number and an authorization private key, and determines the authorization data based on the authorization private key, the second random number and the device private key. The authorization data is used for identity authentication of the terminal device. The authorization data includes, but is not limited to, an authorization code.

[0161] It should be noted that the second random number participates in the determination of the authorization data, that is, different terminal devices correspond to different second random numbers and different authorization data, so that the terminal device and the authorization data are uniquely corresponding, and the risk of leakage caused by multiple terminal devices sharing the device public key can be reduced.

[0162] Moreover, the authorization data of the embodiments of the present disclosure is constantly changing authorization data obtained by adding the second random number, and is not a fixed and unchanging device public key, thereby reducing the possibility of tracing the identity of the terminal device from the device public key, and achieving the purpose of resisting public key tracing.

[0163] In some embodiments, the authorization data is determined based on the authorization private key generated by the authorization device, the second random number generated by the authorization device and the device private key, including:

[0164] determining authorization coordinate data based on the second random number and a preset base point;

[0165] determining second modulus data based on the authorization private key, the device private key, an abscissa of the authorization coordinate data and a modular inverse of the second random number;

[0166] forming the authorization data based on the authorization coordinate data and the second modulus data.

[0167] In the embodiments of the present disclosure, the formula for determining the authorized coordinate data based on the second random number and the preset base point can be (9).

[0168] wherein, (R cx , R cy ) is the authorized coordinate data, k c is the second random number, and G is the preset base point.

[0169]

[0170] In the embodiments of the present disclosure, the formula for determining the second modulus data based on the authorized private key, the device private key, the abscissa of the authorized coordinate data, and the modular inverse of the second random number is (10). Wherein, k c is the second random number, d c is the device private key, d b is the authorized private key, R cx is the abscissa of the authorized coordinate data, and n is the order of the preset base point.

[0171]

[0172] It should be noted that the authorized data of the embodiments of the present disclosure includes the authorized coordinate data and the second modulus data, and the second random number participates in determining the authorized coordinate data and the second modulus data, so that the authorized device can generate different authorized coordinate data and second modulus data for different terminal devices, thereby realizing that the authorized data generated by the authorized device corresponds to the terminal device uniquely.

[0173] In some embodiments, the method further comprises:

[0174] sending the authorized public key generated by the authorized device to the authentication device.

[0175] In the embodiments of the present disclosure, the authorized device and the authentication device have communication, and after the authorized device generates the authorized public key, the authorized public key is sent to the authentication device, so that the authentication device can authenticate the legality of the terminal device through the authorized public key.

[0176] The embodiments of the present disclosure also propose an identity authentication method, which is applied to a terminal device, an authentication device and an authorized device, as shown in Figure 4 The terminal device, the authentication device and the authorized device are respectively connected with communication, and the identity authentication method comprises the following steps:

[0177] S401, the terminal device generates a device private key and a first random number;

[0178] S402, the terminal device sends the device private key to the authorized device;

[0179] S403, the authorized device generates an authorized public key, an authorized private key and a second random number;

[0180] S404, the authorization device determines authorization data based on the authorization private key and the second random number and the device private key;

[0181] S405, the authorization device sends the authorization data to the terminal device;

[0182] S406, the authorization device sends the authorization public key to the authentication device;

[0183] S407, the authentication device generates identity authentication request data;

[0184] S408, the authentication device sends the identity authentication request data to the terminal device;

[0185] S409, the terminal device determines verification data based on the first random number, the authorization data, the device private key and the identity authentication request data;

[0186] S410, the terminal device sends the verification data to the authentication device;

[0187] S411, the authentication device determines whether the identity of the terminal device is legal based on the identity authentication request data, the verification data and the authorization public key.

[0188] In the embodiments of the present disclosure, the terminal device includes a smart phone. The authentication device can be a device capable of performing the identity authentication method, or can be a program application installed on the terminal device and needing to authenticate the identity of the terminal device, and the embodiments of the present disclosure are not limited thereto. The authorization device can be a device capable of performing the authentication method, such as a third-party CA center, or can be a certificate authorization application installed on the terminal device, and the embodiments of the present disclosure are not limited thereto.

[0189] It should be noted that when the identity of the smart phone needs to be authenticated, the verification data provided by the smart phone is constantly changing verification data obtained by adding the first random number, and is not a fixed and unchangeable device public key, thereby reducing the situation of tracing the identity of the terminal device from the device public key, and achieving the purpose of resisting public key tracing. In addition, in the identity authentication process of different smart phones, different first random numbers generated by different smart phones correspond to different verification data, which can realize the unique mapping of the smart phone and the verification data, thereby reducing the situation of high risk of leakage caused by multiple terminal devices sharing the public key, and improving the security of identity authentication on the basis of resisting public key tracking.

[0190] Figure 5 is a structural diagram of a terminal device according to an example embodiment. Referring to Figure 5 The terminal device 1000 includes a first acquisition module 1001, a first receiving module 1002, a generation module 1003 and a first sending module 1004, wherein the terminal device includes:

[0191] The first obtaining module 1001 is configured to obtain authorization data sent by the authorization device.

[0192] The first receiving module 1002 is configured to receive identity authentication request data sent by the authentication device.

[0193] The generating module 1003 is configured to generate, based on a first random number generated by the terminal device, a device private key generated by the terminal device, the authorization data, and the identity authentication request data, check data of the terminal device.

[0194] The first sending module 1004 is configured to send the check data to the authentication device, wherein the check data is used to determine whether the identity of the terminal device is legal by the authentication device.

[0195] In some embodiments, the generating module 1003 comprises:

[0196] The first determining module 1003a is configured to determine first coordinate data and second coordinate data based on the first random number and the authorization data.

[0197] The second determining module 1003b is configured to determine first module data, a temporary public key, and a temporary signature based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data, and the first coordinate data.

[0198] The forming module 1003c is configured to form the check data based on an abscissa in the first coordinate data, the first module data, an abscissa of the second coordinate data, the temporary signature, and the temporary public key.

[0199] In some embodiments, the authorization data comprises authorization coordinate data, and the first determining module 1003a is configured to determine the first coordinate data based on a first sub-random number of the first random number and the authorization coordinate data, and determine the second coordinate data based on a second sub-random number of the first random number and a preset base point.

[0200] In some embodiments, the authorization data comprises authorization coordinate data and second module data, the second determining module 1003b is configured to perform a modulo operation on the abscissa of the first coordinate data and the abscissa of the authorization coordinate data to obtain third module data; perform a modulo operation on the third module data, a first sub-random number of the first random number and the second module data to obtain the first module data; determine the temporary public key based on the third module data, the device private key and a preset base point; determine the temporary signature based on the third module data, a second sub-random number of the first random number, the identity authentication request data, the device private key and the abscissa of the second coordinate data.

[0201] The embodiments of the present disclosure further provide an authentication device, as shown in Figure 6 The authentication device 2000 comprises a second obtaining module 2001, a second sending module 2002, a second receiving module 2003 and a legality module 2004, wherein,

[0202] The second obtaining module 2001 is configured to receive the authorization public key sent by the authorization device;

[0203] The second sending module 2002 is configured to send identity authentication request data to the terminal device;

[0204] The second receiving module 2003 is configured to receive the verification data returned by the terminal device based on the identity authentication request data;

[0205] The legality module 2004 is configured to determine whether the identity of the terminal device is legal based on the authorization public key, the identity authentication request data and the verification data.

[0206] In some embodiments, the legality module 2004 is configured to obtain third coordinate data based on the authorization public key, first module data in the verification data, a temporary public key in the verification data and the abscissa of the first coordinate data in the verification data; obtain fourth coordinate data based on the identity authentication request data, the abscissa of the second coordinate data in the verification data, the temporary public key in the verification data, a preset base point and the modulo inverse of the temporary signature in the verification data; when the abscissa of the third coordinate data is equal to the abscissa of the first coordinate data and the abscissa of the fourth coordinate data is equal to the abscissa of the second coordinate data, determine that the identity of the terminal device is a legal identity.

[0207] The embodiments of the present disclosure further provide an authorization device, as shown in Figure 7 The authorization device 3000 comprises a third receiving module 3001, a third determining module 3002 and a third sending module 3003, wherein,

[0208] The third receiving module 3001 is configured to receive the device private key sent by the terminal device.

[0209] The third determining module 3002 is configured to determine authorization data based on the authorization private key generated by the authorization device, the second random number generated by the authorization device, and the device private key.

[0210] The third sending module 3003 is configured to send the authorization data to the terminal device.

[0211] In some embodiments, the third determining module 3002 is configured to determine authorization coordinate data based on the second random number and a preset base point; determine second module data based on a modular inverse of the authorization private key, the device private key, an abscissa of the authorization coordinate data, and the second random number; and form the authorization data based on the authorization coordinate data and the second module data.

[0212] In some embodiments, the authorization device 3000 further includes:

[0213] The fourth sending module 3004 is configured to send the authorization public key generated by the authorization device to the authentication device.

[0214] As to the apparatus in the above-described embodiments, specific manners in which various modules perform operations have been described in details in embodiments of the method, and thus will not be described in details here.

[0215] Figure 8 is a block diagram of a terminal device according to an example embodiment. The device can be a mobile phone, a mobile computer, or the like, for example.

[0216] Referring to Figure 8 The device can include one or more of the following components: a processing component 802, a memory 804, a power supply component 806, a multimedia component 808, an audio component 810, an input / output (I / O) interface 812, a sensor component 814, and a communication component 816.

[0217] The processing component 802 usually controls overall operations of the device, such as operations associated with display, phone call, data communication, camera operation, and recording operation. The processing component 802 can include one or more processors 820 to execute instructions to complete all or part of steps of the methods described above. Further, the processing component 802 can include one or more modules to facilitate interaction between the processing component 802 and other components. For example, the processing component 802 can include a multimedia module to facilitate the interaction between the multimedia component 808 and the processing component 802.

[0218] The memory 804 is configured to store various types of data to support the operation of the device. Examples of such data include instructions for any application or method operating on the device, contact data, phonebook data, messages, pictures, videos, and the like. The memory 804 can be implemented by any type of volatile or nonvolatile memory, or a combination thereof such as static random access memory (SRAM), electrically erasable programmable read only memory (EEPROM), erasable programmable read only memory (EPROM), programmable read only memory (PROM), read only memory (ROM), magnetic memory, flash memory, magnetic disc or optical disc.

[0219] The power component 806 provides power to the various components of the device. The power component 806 can include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the device.

[0220] The multimedia component 808 includes a screen providing an output interface between the device and a user. In some embodiments, the screen can include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen can be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense a touch, a slide, and a gesture on the touch panel. The touch sensor can not only sense a boundary of a touching or a sliding action, but also detect duration and pressure related to the touching or sliding action. In some embodiments, the multimedia component 808 includes a front camera and / or a back camera. The front camera and / or the back camera can receive external multimedia data when the device is in an operating mode, such as a shooting mode or a video mode. Each of the front and back cameras can be a fixed optical lens system or have a focal length and optical zoom capability.

[0221] The audio component 810 is configured to output and / or input an audio signal. For example, the audio component 810 includes a microphone (MIC) configured to receive an external audio signal when the device is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal can be further stored in the memory 804 or transmitted via the communication component 816. In some embodiments, the audio component 810 also includes a speaker for outputting an audio signal.

[0222] The I / O interface 812 provides an interface between the processing component 802 and peripheral interface modules, which can be a keyboard, a click wheel, a button, and the like. The buttons can include, but are not limited to, a home button, a volume button, a start button, and a lock button.

[0223] The sensor component 814 includes one or more sensors for providing status assessments for various aspects of the device. For example, the sensor component 814 can detect an open / closed state of the device, relative positioning of components, such as a display and keypad of the device, changes in position of the device or a component of the device, presence or absence of user contact with the device, device orientation or acceleration / deceleration, and temperature changes of the device. The sensor component 814 can include proximity sensor(s) configured to detect presence of nearby objects without any physical contact. The sensor component 814 can also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor component 814 can also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0224] The communication component 816 is configured to facilitate wired or wireless communication between the device and another device. The device can access a wireless network based on a communication standard, such as Wi-Fi, 2G, or 3G, or a combination thereof. In an example embodiment, the communication component 816 receives a broadcast signal or broadcast related information from an external broadcast management system via a broadcast channel. In an example embodiment, the communication component 816 also includes a Near Field Communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on Radio Frequency Identification (RFID) techniques, Infrared Data Association (IrDA) techniques, Ultra-WideBand (UWB) techniques, Bluetooth (BT) techniques, and other techniques.

[0225] In an example embodiment, the device can be implemented in one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic elements to perform the above-described methods.

[0226] In an example embodiment, a non-transitory computer-readable storage medium including instructions, such as the memory 804 including instructions, is also provided, which can be executed by the processor 820 of the device to complete the above-described methods. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disc, and an optical data storage device, etc.

[0227] Embodiments of the present disclosure provide a terminal device, comprising at least: a first processor and a first memory for storing executable instructions capable of running on the first processor, wherein: when the first processor runs the executable instructions, the executable instructions perform the steps in the above identity authentication method.

[0228] There is also provided an authentication device comprising at least: a second processor and a second memory for storing executable instructions capable of being run on the second processor, wherein: when the second processor is caused to run the executable instructions, the executable instructions perform the steps of the above identity authentication method.

[0229] There is also provided an authorization device comprising at least: a third processor and a third memory for storing executable instructions capable of being run on the third processor, wherein: when the third processor is caused to run the executable instructions, the executable instructions perform the steps of the above identity authentication method.

[0230] The embodiments of the present disclosure provide a non-transitory computer readable storage medium, the computer readable storage medium stores computer executable instructions, the computer executable instructions are executed by a first processor to implement the above identity authentication method; or the computer executable instructions are executed by a second processor to implement the above identity authentication method; or the computer executable instructions are executed by a third processor to implement the above identity authentication method.

[0231] Other embodiments of the application will be apparent to those skilled in the art from consideration of the specification and practice of the application disclosed herein. It is intended that the specification and examples be considered as exemplary only, with the true scope and spirit of the application being indicated by the following claims.

[0232] It should be understood that the application is not limited to the precise construction that has been described above and shown in the accompanying drawings, and that various modifications and changes can be made by those skilled in the art without departing from the scope of the application. The scope of the application is limited only by the appended claims.

Claims

1. An identity authentication method, characterized in that: Applied to a terminal device, the terminal device establishes communication with an authentication device, and the terminal device establishes communication with an authorization device; the method includes: Obtaining authorization data sent by the authorization device, where the authorization data is determined based on an authorization private key generated by the authorization device, a second random number generated by the authorization device, and a device private key generated by the terminal device; Receiving identity authentication request data sent by the authentication device; Generate verification data for the terminal device based on a first random number generated by the terminal device, a device private key generated by the terminal device, the authorization data, and the identity authentication request data; Sending the verification data to the authentication device; wherein the authentication device determines whether the identity of the terminal device is legal based on the authorization public key sent by the authorization device, the identity authentication request data of the terminal device, and the verification data; The generating verification data based on the first random number generated by the terminal device, the authorization data, and the identity authentication request data includes: determining first coordinate data and second coordinate data based on the first random number and the authorization data; Determining first module data, a temporary public key, and a temporary signature based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data, and the first coordinate data; forming the verification data based on the abscissa in the first coordinate data, the first modulus data, the abscissa of the second coordinate data, the temporary signature, and the temporary public key; The authorization data includes authorization coordinate data, and determining the first coordinate data and the second coordinate data based on the first random number and the authorization data includes: determining the first coordinate data based on a first sub-random number of the first random number and the authorized coordinate data; determining the second coordinate data based on a second sub-random number of the first random number and a preset base point; The first coordinate data, the second coordinate data and the authorized coordinate data are all coordinate data on an elliptic curve in an elliptic encryption algorithm.

2. The method according to claim 1, characterized in that The authorization data includes authorization coordinate data and second module data; The determining, based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data, and the first coordinate data, first module data, a temporary public key, and a temporary signature includes: performing a modular operation on the abscissa of the first coordinate data and the abscissa of the authorized coordinate data to obtain third modular data; performing a modular operation on the third modular data, the first sub-random number of the first random number, and the second modular data to obtain the first modular data; Determining the temporary public key based on the third module data, the device private key, and a preset base point; The temporary signature is determined based on the third modulus data, the second sub-random number of the first random number, the identity authentication request data, the device private key, and the horizontal coordinate of the second coordinate data.

3. An identity authentication method, characterized in that: Applied to an authentication device, the authentication device establishes communication with a terminal device, and the authentication device establishes communication with an authorization device, the method comprising: Obtaining the authorization public key sent by the authorization device; Sending identity authentication request data to the terminal device; Receiving verification data returned by the terminal device based on the identity authentication request data; the verification data is determined based on a first random number generated by the terminal device, a device private key generated by the terminal device, authorization data generated by the authorization device, and the identity authentication request data; Determining whether the identity of the terminal device is legal based on the authorization public key, the identity authentication request data and the verification data; The determining whether the identity of the terminal device is legal based on the authorization public key, the identity authentication request data, and the verification data includes: Acquire third coordinate data based on the authorized public key, the first module data in the verification data, the temporary public key in the verification data, and the horizontal coordinate of the first coordinate data in the verification data; Obtaining fourth coordinate data based on the identity authentication request data, the horizontal coordinate of the second coordinate data in the verification data, the temporary public key of the verification data, a preset base point, and a modular inverse of the temporary signature of the verification data; When the abscissa of the third coordinate data is equal to the abscissa of the first coordinate data, and the abscissa of the fourth coordinate data is equal to the abscissa of the second coordinate data, determining that the identity of the terminal device is a legitimate identity; The first coordinate data and the second coordinate data are coordinate data on an elliptic curve in an elliptic encryption algorithm.

4. An identity authentication method, characterized in that: Applied to an authorization device, the authorization device establishes communication with a terminal device, and the authorization device establishes communication with an authentication device, the method further comprising: Receiving a device private key sent by the terminal device; determining authorization data based on an authorization private key generated by the authorization device, a second random number generated by the authorization device, and the device private key; sending the authorization data to the terminal device; The determining of the authorization data based on the authorization private key generated by the authorization device, the second random number generated by the authorization device, and the device private key includes: Determining authorized coordinate data based on the second random number and a preset base point; Determining second modular data based on the authorization private key, the device private key, the abscissa of the authorized coordinate data, and a modular inverse of a second random number; Based on the authorized coordinate data and the second module data, the authorized data is formed; the authorized coordinate data is coordinate data on an elliptic curve in an elliptic encryption algorithm; The method further comprises: Sending the authorization public key generated by the authorization device to the authentication device.

5. A terminal device, characterized in that: The terminal device establishes communication with the authentication device and the authorization device respectively, and the terminal device includes: a first acquisition module configured to acquire authorization data sent by the authorization device, wherein the authorization data is determined based on an authorization private key generated by the authorization device, a second random number generated by the authorization device, and a device private key generated by the terminal device; A first receiving module is configured to receive identity authentication request data sent by the authentication device; a generation module configured to generate verification data for the terminal device based on a first random number generated by the terminal device, a device private key generated by the terminal device, the authorization data, and the identity authentication request data; A first sending module is configured to send the verification data to the authentication device; wherein the authentication device determines whether the identity of the terminal device is legal based on the authorization public key sent by the authorization device, the identity authentication request data of the terminal device, and the verification data; The generation module includes: a first determining module configured to determine first coordinate data and second coordinate data based on the first random number and the authorization data; a second determining module configured to determine first module data, a temporary public key, and a temporary signature based on the device private key, the first random number, the authorization data, the second coordinate data, the identity authentication request data, and the first coordinate data; a forming module configured to form the verification data based on the abscissa in the first coordinate data, the first modulus data, the abscissa of the second coordinate data, the temporary signature, and the temporary public key; The authorization data includes authorization coordinate data, and the first determination module is configured to determine the first coordinate data based on a first sub-random number of the first random number and the authorization coordinate data; and determine the second coordinate data based on a second sub-random number of the first random number and a preset base point; The first coordinate data, the second coordinate data and the authorized coordinate data are all coordinate data on an elliptic curve in an elliptic encryption algorithm.

6. The terminal device according to claim 5, characterized in that The authorization data includes authorized coordinate data and second modulo data, and the second determining module is configured to perform a modulo operation on the abscissa of the first coordinate data and the abscissa of the authorized coordinate data to obtain third modulo data; and perform a modulo operation on the third modulo data, a first sub-random number of the first random number, and the second modulo data to obtain the first modulo data; Determining the temporary public key based on the third module data, the device private key, and a preset base point; The temporary signature is determined based on the third modulus data, the second sub-random number of the first random number, the identity authentication request data, the device private key, and the horizontal coordinate of the second coordinate data.

7. An authentication device, characterized in that: The authentication device establishes communication with the terminal device and the authorization device respectively, and the authentication device includes: A second acquisition module is configured to obtain the authorization public key sent by the authorization device; A second sending module is configured to send identity authentication request data to the terminal device; a second receiving module configured to receive verification data returned by the terminal device based on the identity authentication request data; the verification data is determined based on a first random number generated by the terminal device, a device private key generated by the terminal device, authorization data generated by the authorization device, and the identity authentication request data; a legal module configured to determine whether the identity of the terminal device is legal based on the authorization public key, the identity authentication request data and the verification data; The legal module is configured to obtain third coordinate data based on the authorization public key, the first modulus data in the verification data, the temporary public key in the verification data, and the abscissa of the first coordinate data in the verification data; obtain fourth coordinate data based on the identity authentication request data, the abscissa of the second coordinate data in the verification data, the temporary public key of the verification data, a preset base point, and the modular inverse of the temporary signature of the verification data; and determine that the identity of the terminal device is a legal identity when the abscissa of the third coordinate data is equal to the abscissa of the first coordinate data, and the abscissa is equal to the abscissa of the second coordinate data; The first coordinate data and the second coordinate data are coordinate data on an elliptic curve in an elliptic encryption algorithm.

8. An authorization device, characterized in that: The authorization device establishes communication with the terminal device and the authentication device respectively, and the authorization device includes: A third receiving module is configured to receive a device private key sent by the terminal device; a third determining module configured to determine authorization data based on the authorization private key generated by the authorization device, the second random number generated by the authorization device, and the device private key; a third sending module, configured to send the authorization data to the terminal device; The third determination module is configured to determine the authorized coordinate data based on the second random number and a preset base point; determine the second modulus data based on the authorization private key, the device private key, the horizontal coordinate of the authorized coordinate data, and the modular inverse of the second random number; and form the authorization data based on the authorized coordinate data and the second modulus data; the authorized coordinate data is coordinate data on an elliptic curve in an elliptic encryption algorithm; The authorization device further includes: A fourth sending module is configured to send the authorization public key generated by the authorization device to the authentication device.

9. A terminal device, characterized in that: The terminal device comprises at least: a first processor and a first memory for storing executable instructions that can be run on the first processor, wherein: When the first processor is used to run the executable instructions, the executable instructions execute the steps in the identity authentication method provided in claim 1 or 2.

10. An authentication device, characterized in that: The authentication device comprises at least: a second processor and a second memory for storing executable instructions that can be run on the second processor, wherein: When the second processor is used to run the executable instructions, the executable instructions execute the steps in the identity authentication method provided in claim 3.

11. An authorization device, characterized in that: The authorization device comprises at least: a third processor and a third memory for storing executable instructions that can be run on the third processor, wherein: When the third processor is used to run the executable instructions, the executable instructions execute the steps in the identity authentication method provided in claim 4.

12. A non-transitory computer-readable storage medium, characterized in that The computer-readable storage medium stores computer-executable instructions, which, when executed by the first processor, implement the identity authentication method provided in claim 1 or 2; Alternatively, when the computer executable instructions are executed by the second processor, the identity authentication method provided in claim 3 is implemented; Alternatively, when the computer executable instructions are executed by the third processor, the identity authentication method provided in claim 4 is implemented.

Citation Information

Patent Citations

  • Identity authentication system based on elliptic curve

    CN101296075A

  • Implicit certificate distribution method and system

    CN109978518A