WO2008106848A1 - Réseau de sécurité d'un terminal sans fil et procédé de verrouillage de carte sur la base du chiffre de clé publique de courbe elliptique - Google Patents

Réseau de sécurité d'un terminal sans fil et procédé de verrouillage de carte sur la base du chiffre de clé publique de courbe elliptique Download PDF

Info

Publication number
WO2008106848A1
WO2008106848A1 PCT/CN2007/003577 CN2007003577W WO2008106848A1 WO 2008106848 A1 WO2008106848 A1 WO 2008106848A1 CN 2007003577 W CN2007003577 W CN 2007003577W WO 2008106848 A1 WO2008106848 A1 WO 2008106848A1
Authority
WO
WIPO (PCT)
Prior art keywords
lock
network
card
mobile phone
security
Prior art date
Application number
PCT/CN2007/003577
Other languages
English (en)
French (fr)
Inventor
Chen Lu
Yunfeng Wang
Yanlong Hu
Ruijuan Zhang
Hongquan Yu
Yanling Guo
Original Assignee
Zte Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zte Corporation filed Critical Zte Corporation
Publication of WO2008106848A1 publication Critical patent/WO2008106848A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3252Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes

Definitions

  • Wireless terminal security lock network lock card method based on elliptic curve public key cryptography
  • the present invention relates to the field of mobile communications, and in particular, to a wireless terminal security lock network lock card method based on an elliptic curve public Hu password.
  • the mobile phone lock network refers to the agreement between the operator and the mobile phone manufacturer.
  • the mobile phone model can only use the SIM USIM card in the carrier network, and the SIM USIM cards provided by other operators cannot be used.
  • the mobile phone lock card refers to the first card that the mobile phone only recognizes, and other cards cannot be used. The technical reason why it can't be used is that the phone is locked by security software, and unlocking requires software rewriting.
  • lock network lock card requirements is 3GPP TS 22.022, but in terms of security implementation, there is no 3GPP related standard, and there is no convenient and reliable method to solve the above problems.
  • the security implementation and method of providing a network lock network lock card is still required to be strictly confidential in the mobile phone manufacturer.
  • the lock network lock card software is not forged, it is required that only authorized or digitally signed related software can be run in the mobile phone, and at the same time, the sensitive data of the lock network lock card should be protected.
  • the software for programming/reprogramming the mobile phone software should also be strict. Security management, so that you can not use or find any software to unlock the phone lock function of the mobile phone, which requires the software integrity check in the mobile phone security boot process, and ensure that each software is used Before passing 4 Manpower, or to be digitally signed positive. In addition, it is not possible to reconfigure the software by lowering the software version, thereby posing a threat to the lock lock function.
  • the unlocking function of the lock function of the mobile phone lock network can be released only by DCK (unlocking key), that is, unlocking the password. It is required that the unlock key cannot be re-encoded and any forgery/reverse engineering derivation is to be prevented.
  • DCK is information that requires strict confidentiality. It must take the necessary security measures and security levels when storing and transmitting. It is only possible for the manufacturer or operator to access the DCK. In addition to unlocking the key, it is necessary to prevent any hacker from using any physical or software method to unlock the lock lock function of the mobile phone on the available commercial machine.
  • the security mechanism of the mobile phone lock network lock card software should be strong enough to be reversely deduced or compromised by an unauthorized third party, and the security mechanism cannot be bypassed.
  • PKI public key cryptosystem
  • DSA discrete logarithm problem class - digital signature algorithm
  • ECC elliptic curve class - elliptic curve cryptography
  • the elliptic curve cryptosystem is a system in which the encryption strength of each bit is the highest in the known public key cryptosystem.
  • One of the characteristics of the RSA public key cryptography algorithm is that the mathematical principle is simple and easy to implement in engineering applications, but its unit security strength is relatively low.
  • the most effective attack method for the RSA algorithm is the NS method to decipher and attack, which proves that the difficulty of deciphering or solving the RSA algorithm is sub-exponential.
  • the mathematical theory of ECC algorithm is very esoteric and complicated, and it is difficult to achieve in engineering applications, but its unit security strength is relatively high.
  • the most effective attack method for the ECC algorithm the Pollard rho method, is used to decipher and attack the ECC algorithm.
  • the technical problem to be solved by the present invention is to provide a wireless terminal security lock network lock card method based on an elliptic curve public key cipher, which can realize a lock network lock card and can provide a higher security strength at a certain key length.
  • the present invention provides a wireless terminal security lock network lock card method based on an elliptic curve public key cipher, comprising the following steps:
  • the verified software compares the boot information of the wireless terminal with the pre-stored lock network lock security information, and if the verification passes, provides network related services; otherwise, refuses to provide network related services or shuts down.
  • the lock network lock security information includes a software signature authentication code, a home land mobile communication network HPLMN, a code table file FLEXFILE, a lock operator card related information EF_GID1, a software version number, and a lock network control key NCK.
  • operator lock control key SPC mobile network code MNC, mobile country code MCC, lock network lock status indication, network/card unlock remaining attempts, lock card check code, public key, version check code, IMEI Number check code, lock card check code.
  • step (1) performing:
  • step (C) storing the image file and the digital signature in a non-volatile memory of the wireless terminal. Further, the step (A) includes the following steps: an executable formable ELF binary object file;
  • step (B) includes the following steps:
  • step (1) performing: encrypting the lock network related security information based on the elliptic curve simulated by the ElGamal algorithm, and saving the information to the secure storage area in the wireless terminal.
  • the encrypting the lock network related security information based on the elliptic curve simulated by the ElGamal algorithm includes the following steps:
  • step (2) further comprises: decrypting the pre-stored lock network lock related security information by using an elliptic curve digital signature certificate public key and an elliptic curve private key stored in the mobile phone to recover the plaintext data.
  • step (2) includes the following steps:
  • the MCC list is compared, if it is within the lock network, it will continue to run; otherwise, it will refuse to provide network related services or shut down.
  • the mobile phone determines the USIM card or the SIM card model, and reads the international mobile subscriber identity IMSI number in the USIM/SIM card by means of the USIM card or the SIM card driver interface function. Then, the HPLMN field is analyzed, and EF_GID1 is read out, and it is determined whether the EF_GID1 is consistent with the EF_GID1 in the security information related to the lock lock card in the security zone of the mobile phone. If they are consistent, step (2.1) is performed.
  • the invention provides a wireless terminal security lock network lock card method based on elliptic curve public key cryptography, and the elliptic curve cryptosystem adopts the highest strength security per bit in the known public key cryptosystem, and the fastest processing speed. And the minimum overhead, especially suitable for mobile phone terminals with low memory and low processing capacity to implement lock network lock card public key cryptography security technology.
  • FIG. 1 is a flow chart of a mobile phone lock network lock card software and data protection according to a method of an embodiment of the present invention
  • FIG. 2 is a flow chart of encryption and decryption based on an elliptic curve of a method mobile phone terminal according to an embodiment of the present invention
  • FIG. 3 is a method for secure data according to an embodiment of the present invention
  • 4 is a flowchart of a method for signing a security lock software of a method lock network according to an embodiment of the present invention
  • FIG. 5 is a flowchart of legality authentication of a method lock network lock card security software according to an embodiment of the present invention
  • FIG. 6 is a flow chart of unlocking network/lock card function of a method lock network lock card according to an embodiment of the present invention.
  • the key to the invention is:
  • the method includes: in the initial stage of starting the wireless terminal, verifying whether the digital signature of the security lock file of the mobile phone lock network lock is a legal signature by using an elliptic curve digital signature certificate; and booting information and pre-stored lock of the wireless terminal by the verified software The network lock card related security information is compared and verified.
  • the elliptic curve digital signature certificate is based on an elliptic curve root CA certificate and a mobile phone key pair or a mobile terminal certificate.
  • the booting information includes: a field or information related to the lock card of the USIM/SIM card, and information about the booting network.
  • the security basis of the present invention is based on the elliptic curve discrete logarithm problem.
  • E defined on the finite field GF(p)
  • a point P E of order n and a point 0 1 ⁇ , where 0 k ⁇ n - 1 , determines k.
  • the elliptic curve discrete logarithm problem has provable security. Compared with the current popular RSA public key cryptosystem, it has the advantages of high speed, high security and low processing power for the terminal.
  • the method for realizing the mobile phone security lock network lock card under the 3G network is to implement the elliptical curve digital signature by the system software or the mobile phone lock network lock card related software during the booting process of the mobile phone to ensure the mobile phone lock network lock card
  • the software is legally licensed and has not been tampered with.
  • the USIM/SIM card After ensuring the security of the lock network lock card software, the USIM/SIM card locks the network lock card related fields or information, and compares with the lock network lock card information in the mobile phone to achieve mobile phone security. Lock network and lock card technology.
  • the elliptic curve public key cryptography is used to implement encryption for protection. Based on the above high security strength Elliptic curve digital signature, encryption and decryption security technology to ensure that the mobile phone is only safely used on the carrier network and on the issued USIM/SIM card.
  • the invention is based on the assumption of the discrete logarithm problem on the elliptic curve, by means of a hash function, an elliptic curve public key cipher or a certificate, using an elliptic curve encryption and a digital signature method to implement a 3G mobile phone security lock network lock card method, including: Security implementation process of security lock network lock card; security software integrity or system detection when mobile phone boots; lock network lock card related security data, such as IMEI (International Mobile Equipment Identity) mobile phone software version number, lock network status and other security encryption and Decryption method, mobile phone lock network lock card security unlock process and other content.
  • IMEI International Mobile Equipment Identity
  • the process of locking the network lock of the mobile phone includes digital signature of the lock network lock security software and encryption of relevant security data.
  • the PC lock software is used to compile and construct the mobile phone lock network security software.
  • the constructed binary image file is digitally signed by elliptic curve.
  • the security information related to the lock network lock card is based on elliptic curve public key cryptography. Encryption and decryption processing;
  • the mobile phone download software provided by the PC side, the related software and security data are downloaded to the memory area of the mobile phone through the data line, and the security-related data is saved to the secure storage area of the mobile phone by means of physical means.
  • the invention assumes that the elliptic curve private key in the mobile phone is safely stored in the mobile phone and cannot be read by the electronic software or hardware.
  • the digital signature method of the mobile phone lock network lock card security software is used for checking the integrity and legality of the software.
  • the various source files in the security software program including the C language program, the assembler, compiled by the compiler to generate an embedded loadable format (ELF) file.
  • ELF embedded loadable format
  • These object files and the C/C++ runtime library files carried by the mobile phone processor system are processed by the connector to generate an image file (image) in ELF format, which is then written into the ROM flash of the mobile phone.
  • CA Certificate Authority
  • the operator or manufacturer has a Certificate Authority (CA) website that supports elliptic curve public key cryptography, and may also utilize a government or commercial public CA that supports elliptic curve cryptography.
  • CA Certificate Authority
  • an elliptic curve cryptographic public key certificate which is used for the root CA certificate in the implementation of mobile phone software security and lock network lock card.
  • This certificate is used to complete the signature of other public key certificates to ensure the unforgeability and legality of the mobile phone key certificate.
  • the invention uses the mobile phone public key certificate signed by the root CA certificate to complete the signature of the mobile phone security software and the signature of the relevant security data, so as to realize Check the integrity and legality of security software to prevent the intrusion of third-party malicious code.
  • the hash function is used to hash the constructed mobile security software image file to generate a fixed-length image file summary, such as 20 bytes long. Again, the elliptic curve signature process is performed on the image file summary data, and a signature data is generated and stored in the phone memory.
  • the method for secure encryption and decryption of the mobile phone is based on an elliptic curve encryption and decryption scheme simulated by the ElGamal algorithm to implement encryption protection of the security data.
  • the encrypted data is grouped according to the modulus size in the elliptic curve parameter set, then the packet data is encoded, the encrypted packet data is converted into a point on the elliptic curve, and then the data is encrypted using the ElGamal algorithm.
  • the encrypted packet data is decrypted by the elliptic curve root certificate public key and the elliptic curve private key stored in the mobile phone, and finally the clear text security data is recovered by the fast decoding method.
  • the decryption method is characterized by fast decryption speed, and is particularly suitable for devices with limited memory and processing capabilities of mobile terminals.
  • the software legality security check and the lock of the lock network lock card during the booting process of the mobile phone can be realized, including the integrity check of the security software of the mobile phone security software, the IMEI number, the software version number, and the like, And the state of the lock network lock card after the network service status is determined.
  • the lock net implementation method of the present invention first checks whether the mobile phone lock network status flag is valid when the mobile phone is powered on, and if the lock network is required, the MNC (mobile network code), MCC (mobile country code) and the current mobile phone are registered. The MNC and MCC lists in the secure area of the mobile phone are encrypted or safely saved. If they are within the lock network, they will continue to run; otherwise, a prompt box will pop up and the mobile phone service will be restricted.
  • the mobile phone determines the USIM card or SIM card model, and reads the IMSI (International Mobile Subscriber Identity) number in the USIM/SIM card by means of the USIM card or SIM card driver interface function, and analyzes therefrom. From the HPLMN (Home Public Land Mobile Network) field, read out EF_GID1 (lock operator card related information) and operator related information. Decrypt the security information related to the lock network lock card in the secure area of the encrypted mobile phone, and determine whether the EF_GID1 is consistent with the EF-GID1 in the security information related to the lock network lock card in the security area of the mobile phone. If they are consistent, check the status of the mobile phone lock network.
  • IMSI International Mobile Subscriber Identity
  • HPLMN Home Public Land Mobile Network
  • the MNC, MCC and the information about the lock network lock card encrypted in the mobile phone, such as the MNC and MCC values, are decrypted and compared. If they are consistent, the phone is legal. Otherwise, the phone may be illegal, preventing the phone from performing network-related services or shutting down.
  • the network status of the mobile phone lock network lock card has three states: lock network, no network lock, and invalid network status.
  • the mobile phone security version number is used to control the download of the software version. For different models of mobile phones, different security version number intervals are assigned.
  • the mobile phone software version control and version number verification method is to connect the mobile phone with the PC side special software and the data line, and the mobile phone software download tool connects to the mobile phone and selects the security software version to be downloaded.
  • the download tool digitally signs the downloaded software, and the software security version number data is encrypted by the elliptic curve encryption algorithm and sent to the mobile phone.
  • the mobile phone receives the software security version number and compares it with the security version number stored in the mobile phone; if the software security version number to be downloaded is in the legal security version number range, and the downloaded new software version passes the security authentication in the mobile phone, the mobile phone Accept the download and continue the download process, otherwise the phone should refuse to download.
  • the relevant data required to implement security protection through the elliptic curve cipher is: software signature authentication code, HPLMN, FLEXFILE (code table file), EF-GID1, software version number, NCK (lock network control key) ), SPC (operator lock control key), MNC, MCC, lock network lock status indicator, network/card unlock remaining attempts, lock card face code, public key, Version check code, IMEI number check code, lock card check code and other data.
  • the lock network lock card software flow implemented by the mobile phone according to the method of the embodiment of the present invention, as shown in FIG. 1 includes the following steps:
  • step 101 in order to complete the digital signature of the lock network lock card software and the encryption of the relevant security data, it is necessary to implement the compilation of the security related software such as the lock lock of the mobile phone 1 by means of the PC side software 2, construct and perform the elliptic curve digital signature, and Encrypt the relevant security information. Then, through the mobile phone download software provided by the PC side, the related software and security data are downloaded to the memory area of the mobile phone through the data line, and the security-related data is saved to the secure storage area of the mobile phone by means of physical means, such as a public key certificate. Lock the network lock card related data, lock the network lock card status, etc., to prevent external users from stealing, tampering, etc.
  • the security related software such as the lock lock of the mobile phone 1
  • the related software and security data are downloaded to the memory area of the mobile phone through the data line, and the security-related data is saved to the secure storage area of the mobile phone by means of physical means, such as a public key certificate. Lock the network lock card related data,
  • step 102 in order to realize the data security of the lock lock network of the mobile phone 1 and the legality and integrity check of the related software, the present invention assumes that the operator or the manufacturer has established a certificate center CA website supporting the elliptic curve public key password, and may also Using a government or commercial public CA that supports elliptic curve cryptography, the operator or manufacturer can also provide an elliptic curve security software that can generate a root certificate CA for the manufacturer or operator, and a mobile terminal or user using an elliptic curve certificate or The key pair of the public and private keys. Through the root certificate of the operator or manufacturer, the certificate of the mobile terminal or user is guaranteed to be a legally signed certificate, not forged. In addition, in the present invention, in addition to verifying the software and data integrity, the root certificate also performs the function of encrypting and decrypting the security data related to the lock network lock card.
  • the internal format of the elliptic curve digital signature certificate is specified by CCITT X.509, and may include the following aspects: a certificate version number, a digital certificate serial number, a certificate owner name (which may be an IMEI number of the mobile phone), and a signature.
  • the algorithm the unit that issued the digital certificate (which can be the operator or the handset manufacturer), the unit that issued the digital certificate (which can be the operator or manufacturer), the public key validity period, and so on.
  • the elliptical curve public key is used to encrypt the relevant lock network lock card security related data, software signature authentication code, HPLMN, related configuration data, EF-GID1, software version number, NCK, SPC, MNC, MCC, lock network lock Card status indication, network/card unlock remaining attempts, lock card check code, IMEI number check code, lock card authentication code and other data.
  • a compiler such as an ARM processor system
  • ELF embedded loadable format
  • target files and the C/C++ runtime library files carried by the mobile terminal processor system are processed by the ARM connector to generate an image file (image) in ELF format, which will be in the subsequent steps.
  • step 105 the constructed security software is digitally signed by the elliptical curve using the mobile terminal certificate to generate signature data, which is used for legality authentication of the security lock network lock card software when the mobile phone is turned on.
  • step 106 the security software image file and signature, and the related encrypted data are downloaded to the mobile phone.
  • step 107 the unlock code of the lock network lock card is generated inside the mobile phone and saved in the mobile phone.
  • step 108 the mobile phone sends the unlock code and IMEI number of the lock network lock card to the PC side software.
  • the PC side software saves the unlock code of the lock network lock card and the IMEI number of the mobile phone in the database, and the elliptic curve public key certificate and the corresponding private key of the mobile phone terminal, so as to facilitate the manufacturer or the operator to lock the network lock card for the mobile phone. For unlocking purposes.
  • the present invention provides an elliptic curve encryption and decryption scheme simulated by the ElGamal algorithm to implement encryption protection of secure data.
  • the method is characterized in that the decryption speed is fast, and is particularly suitable for a device with limited memory and processing capability of the mobile phone terminal.
  • the following is a detailed description of the encryption and decryption process based on the elliptic curve in combination with FIG.
  • p is a large prime number, such as a prime integer greater than 160 bits, specifying a finite field GF(p);
  • the security data to be encrypted such as the software version number, the software digital signature, the lock network lock key, and the like, are grouped if the length is greater than n, and if the length of the encrypted security data is insufficient, the word is high.
  • the section is filled with 0.
  • message A is an integer, 0 ⁇ A ⁇ p / 256 - 1 and curve E is given by elliptic curve parameter set D.
  • the square residual judgment algorithm judges whether the large integer A is a modulus squared residual number. If A is not the square residual number of the modulo p, then it is not a point on the elliptic curve, that is, the equation that does not satisfy the elliptic curve equation holds. Re-select x A in the lowest byte and repeat the square residual algorithm to judge until it is satisfied.
  • Q is the value of the modulus p in the parameter D of the elliptic curve range
  • A is the modulo Q or the modulo
  • x A is the selected abscissa
  • J in Fig. 3 represents the Jacobi symbol, then J is 1 to indicate that A is a modulo square remainder, and -1 is to indicate that A is a modulo square non-remaining.
  • y A can be calculated.
  • Step 203 and step 204 are the abscissa of the point converted into the elliptic curve according to the plaintext security data, and the ordinate y A corresponding to the abscissa x A is given by the calculation method of the solution of the quadratic congruence equation, thereby completing the plaintext
  • the security data is encoded as a point on the elliptic curve. Encryption and decryption of the secure data is then done based on the points on the elliptic curve.
  • step 205 if p has 2u+l and u is in the form of an odd number, that is, when p ⁇ 3 (mod 4) or ⁇ 7 (1110(18) is satisfied, the solution of the elliptic curve equation is y A ⁇ ⁇ A (p +1)/4) (modp:).
  • step 206 when p has 4u+l and u is in the form of odd number, it satisfies p ⁇ l(mod4) p ⁇ 5(mod 8), if A ((p - 1)/4) ⁇ 1 (mod p ), then y A ⁇ ⁇ A ((p+3)/8) (mod p); If a ((PI)/4) ⁇ 1 (mod p), then ⁇ ⁇ ⁇ 2 « ⁇ 4 ). eight ( (?+3)/8 )(111 0 (1).
  • step 208 is an encryption operation of the secure data.
  • the security data is encoded as a point on the elliptic curve, it is possible to encrypt the data using the root certificate private key d R and the mobile terminal certificate public key Q R .
  • the private key d A is used to complete the following calculation:
  • Decrypting the point P A in the abscissa x A decoding process i.e. to remove the last two digits x A, and then convert the integer to a string of bytes, to restore the security data.
  • the advantage of the elliptic curve data addition and decryption scheme given by the present invention is that the decryption and decoding speed is fast.
  • the coding is more complicated, but there is no real-time requirement.
  • the validity of the mobile phone certificate can be verified by using the certificate, and the constructed security software is digitally signed by the elliptical curve using the mobile terminal certificate to generate signature data, which is used for the security lock network lock card software when the mobile phone is powered on.
  • Legality certification The integrity and legality check of the mobile phone security software given in the present invention will be described below in conjunction with the code signing process of FIG.
  • step 601 various source files in the secure boot program, including C language programs or assemblers, are compiled by the ARM compiler to generate an embedded loadable format (ELF) file.
  • ELF embedded loadable format
  • object files and the C/C++ runtime library files carried by the ARM processor system are processed by the ARM connector to generate an image file (image) in ELF format, which is then written into the ROM flash of the mobile phone. .
  • step 602 in order to implement the mobile terminal software security and the lock network lock card technology, it is assumed that the operator or the manufacturer has a certificate center (CA) website supporting the elliptic curve public key password, and may also use an elliptic curve password. Government or commercial public CA.
  • CA certificate center
  • the user securely applies an elliptic curve cryptographic public key certificate through the elliptic curve cryptographic CA center, and is used for the root CA certificate in the mobile phone software security and lock network lock card implementation, and the other public key certificate signature is completed by this certificate, and the mobile phone public key is guaranteed.
  • the unforgeability and legality of the certificate The invention uses the mobile public key certificate signed by the root CA certificate to complete the signature of the mobile phone security software and the signature of the relevant security data, so as to realize the security soft. Check the integrity and legality of the device to prevent the invasion of third-party malicious code.
  • the internal format of the elliptic curve digital signature certificate is specified by CCITTX.509, and may include the following aspects: a certificate version number, a digital certificate serial number, a certificate owner name, a signature algorithm, a unit that issues a digital certificate, and is issued.
  • the signature of the unit of the digital certificate the validity period of the public key, and the like.
  • Step 604 is to hash the constructed operating system software system or the application software image file by using a hash function SHA to generate a fixed length image file summary, such as 20 bytes long.
  • step 605-step 610 is a process of elliptic curve signature for the image file summary data:
  • Step 605 Select a random or pseudo-random number k, l k n-l;
  • Step 606 Calculate! ⁇ : ⁇ ) ⁇ : ⁇ !!!. !!;
  • Step 608 Calculate s k- ⁇ e + d modn
  • Step 610 Complete the signature (r, s) of the mobile security software image file, and the signature will be placed in the mobile phone ROM Flash along with the image file.
  • Step 702 The mobile phone boot program checks whether the signature (r, s) of the mobile phone lock network security software file (operating system or application system software) exceeds the range of the elliptic curve base point group, and if yes, indicates an illegal signature. , the boot process goes to step 708; otherwise, the next step is performed.
  • the signature r, s
  • the mobile phone lock network security software file operating system or application system software
  • Step 703 Generate a message digest e of the mobile security software image file.
  • Step 705 When the abscissa ⁇ of X is 0, the signature is invalid, and the mobile boot program goes to step 708, otherwise, the next step is performed.
  • Step 706 when X is Xl abscissa not equal r, then the signature indicates illegal. The mobile boot process goes to step 708, otherwise, the next step is performed.
  • Step 707 After verifying the correctness of the signature of the mobile phone security software, it indicates that the signature of the software image file has not been tampered with, and the mobile phone booting program can complete the state check of the lock network lock card, and the process ends.
  • Step 708 The security authentication fails: For the product development phase, the JTAG common file image file download mode is entered; for the product phase, the mobile terminal detects the security inconsistency and directly shuts down to prevent the illegal use of the mobile phone.
  • the software legality security check and the lock of the lock network lock card during the booting process of the mobile phone can be realized, including the integrity check of the security software of the mobile phone, the integrity check of the security data such as the IMEI number and the software version number, and The status of the lock network lock card after the network service status is determined.
  • the mobile phone determines the USIM card or SIM card model, and reads the IMSI number in the USIM/SIM card by means of the USIM card or SIM card driver interface function, and analyzes the HPLMN field from it, and reads the EF. — GID1 and operator related information.
  • the network status value associated with the mobile phone lock network lock card has a lock Network, no lock network, invalid network status three states.
  • Step 301 The user selects the unlock function of the mobile phone lock network/lock card.
  • the user can implement it through the PC side software, or can provide the related unlock network lock card interface on the mobile phone.
  • Step 302 Determine whether the number of unlocking failures exceeds 5 times, which includes the accumulated comparison of the saved number of saved security unlocks. This includes the decryption process for the number of secure unlock times, such as the elliptic curve encryption and decryption process described previously. If the number of unlocking failures exceeds 5, step 312 is performed; otherwise, the next step is performed;
  • Step 303 Determine whether the mobile phone is in the unlocked state. If yes, go to step 304. If no, go to step 305.
  • Step 304 After the mobile phone is unlocked, the related unlocking keys, NCK and SPC, will be restored to the clear text state and placed in the V item of the mobile phone, that is, in the non-volatile memory.
  • Step 305 When the mobile phone is locked, the user may be prompted to input an unlock code, including NCK, or SPC, through a mobile phone or a dedicated PC side software.
  • an unlock code including NCK, or SPC
  • Step 306 The mobile phone or PC side software decrypts the relevant NCK or SPC and compares it with the relevant value input by the user.
  • Step 307 Determine whether the NCK or SPC decrypted by the mobile phone is equal to the unlock code input by the user. If they are equal, go to step 308. Otherwise, go to step 309.
  • Step 308 If the unlocking is successful, the related unlocking keys, that is, NCK and SPC, will be restored to the plain text state and placed in the NV item of the mobile phone.
  • the related unlocking keys that is, NCK and SPC
  • Step 309 The number of failures is increased by 1, and when the user exits the lock network lock card application, the related security data is encrypted and saved.
  • Step 310 Determine whether the number of unlocking failures exceeds 5 times. If yes, go to step 312. Otherwise, go to the next step.
  • Step 311 Prompt the user to have failed the number of unlocks, and return to step 305 user unlock code input interface to give the user an opportunity to unlock.
  • Step 312 the mobile phone will be in the permanent lock state.
  • the elliptic curve cryptosystem used in the method of the present invention has the highest strength security per bit in the known public key cryptosystem, the fastest processing speed and the lowest overhead, and is particularly suitable for low memory and low processing capability.
  • the 3G mobile phone terminal implements a network lock network lock card and other secure access.
  • Qing can also fully implement other security requirements of 3GPP TS 22.022, such as locking content provider applications, locking company applications and network subnet locking and other security applications.
  • the inventive idea can also provide a 3G terminal trusted computing platform for the mobile terminal to enable the mobile phone to securely access the 3G network.
  • the invention realizes a mobile phone security lock network lock card method under the 3G network, and implements an elliptic curve digital signature on the system software or the mobile phone lock network lock card related software during the booting process of the mobile phone to ensure that the mobile phone lock network lock card software is legally authorized. And have not been tampered with.
  • the USIM/SIM card After ensuring the security of the lock network lock card software, the USIM/SIM card locks the network lock card related fields or information, and compares with the lock network lock card information in the mobile phone to achieve mobile phone security. Lock network and lock card technology.
  • the elliptic curve public key cryptography is used to implement encryption for protection. The number of elliptic curves based on the above high security strength Word signature, encryption and decryption security technology to ensure that the mobile phone is only used safely on the carrier network and on the USIM/SIM card issued.

Description

一种基于椭圆曲线公钥密码的无线终端安全锁网锁卡方法 技术领域
本发明涉及移动通信领域,特别涉及一种基于椭圓曲线公胡密码的无线 终端安全锁网锁卡方法。
背景技术
随着 WCDMA网络在全球范围内的大规模商用, 以及 WCDMA用户数 量的增多,各运营商为了扩大和巩固用户数量,在无线终端或手机销售模式 上采用话费补贴或附送手机方式来吸引用户。在一些国家和地区,运营商为 了保证手机用户不流失,要求所采购的手机只能在自己的网络使用, 并且使 用运营商自己发行的 SIM/USIM卡, 因此对手机提出了锁网锁卡的要求。通 过锁网及锁卡技术, 可以防止部分 3G运营商通过某个地区运营商低价获得 手机, 然后转到其它地区高价出售,从而賺取运营商为发展市场所进行的补 贴。 另一方面, 为了防止黑客攻击, 各运营商对手机锁网锁卡的安全性提出 了很高要求。
手机锁网是指依照当初运营商与手机制造商达成的协议,此手机机型只 能使用该运营商网内的 SIM USIM卡,其他运营商提供的 SIM USIM卡均不 能使用。手机锁卡是指该手机只认插入的第一张卡, 其他卡均不能使用。 不 能使用的技术原因在于,该手机是通过安全软件加了锁,解锁需要进行软件 重写。
关于锁网锁卡要求的相关标准规范有 3GPP TS 22.022,但在安全实现方 面, 不存在任何 3GPP相关标准, 也没有解决上述问题的方便可靠的方法 从锁网锁卡安全技术及安全管理的角度来说,要求提供网络锁网锁卡的 安全实现及方法, 在手机制造商内仍然需要严格保密。 另外, 为保证锁网锁 卡软件不被伪造,要求只有经过授权或数字签名的相关软件才可以在手机内 运行, 同时, 对锁网锁卡的敏感数据要进行安全保护。
为保障安全的锁网锁卡功能, 对手机软件进行编程 /重编的软件也应严 格进行安全管理, 以便不能使用或发现任何软件对手机进行去锁网锁卡功 能, 这就要求在手机安全引导进程中, 要进行销网相关的软件完整性检查, 同时, 保证每种软件使用之前经过 4曼权, 或要通过数字签名 正。 另夕卜, 也不能通过降低软件版本,对软件进行重新构造,从而对锁网锁卡功能造成 威胁。
按相关标准规范 3GPP TS 22.022要求, 手机内锁网锁卡功能的解锁功 能, 只有通过 DCK (解锁密钥) , 即解锁密码, 才可以解除。 并要求解锁 密钥不可被重新编码, 并且要阻止任何伪造 /反向工程推导。 DCK是需要严 格保密的信息,在存储与传输时要采取必要的安全手段和安全级别。只有厂 家或运营商才有可能存取 DCK。 除了解锁密钥外, 要防止任何黑客在可用 商业机上, 使用任何物理或软件方法来解锁手机的锁网锁卡功能。
基于以上锁网锁卡的安全技术与管理需求,要求手机锁网锁卡软件安全 机制应足够强, 不能被逆向推导或受到一个非授权第三方的危害, 同时要求 安全机制不能被绕过。
而解决以上问题的有效途径就是借助于公钥密码体制 (PKI )技术。 目前实用的公钥密码体制根据其所依据的难题一般分为三类:大整数分 解问题类 -RSA算法、离散对数问题类-数字签名算法(DSA )、椭圆曲线类一 椭圆曲线密码(ECC ) 。
椭圆曲线密码体制是目前已知公钥密码体制中,每比特所提供加密强度 最高的一种体制。 RSA公钥密码算法的特点之一是数学原理筒单、 在工程 应用中比较易于实现,但它的单位安全强度相对较低。 目前国际上公认的对 于 RSA算法最有效的攻击方法 数域筛 (NFS )方法去破译和攻击, 证明 RSA算法的破译或求解难度是亚指数级的。 而 ECC算法的数学理论非常深 奥和复杂, 在工程应用中比较难于实现, 但它的单位安全强度相对较高。 用 国际上公认的对于 ECC算法最有效的攻击方法- Pollard rho方法去破译和攻 击 ECC算法, 它的破译或求解难度基本上是指数级的。 正是由于 RSA算法 和 ECC算法这一明显不同, 使得 ECC算法的单位安全强度高于 RSA算法, 也就是说, 要达到同样的安全强度, ECC算法所需的密钥长度远比 RSA算 法低。这就有效地解决了为了提高安全强度必须增加密钥长度所带来的工程 实现难度的问题,特别是对于手机这样处理能力不强, 内存资源比较紧张的 情况。 例如, 当 RSA算法密钥使用 2048位时, ECC密钥仅使用 234位, 而 所获得的安全强度要高出许多。 它们之间的密钥长度相差达 9倍以上, 当 ECC密钥更大时它们之间差距将更大。 ECC密钥短的优点是非常明显的, 随加密强度的提高, 密钥长度变化不大。
随着全球范围内为避免预先设置的锁网锁卡功能不被运营商或用户非 法取消, 各大运营商对手机安全锁网锁卡提出的越来越高的安全强度的需 求。 发明内容
本发明所要解决的技术问题是,提供一种基于椭圆曲线公钥密码的无线 终端安全锁网锁卡方法, 能够实现锁网锁卡, 同时在一定密钥长度可以提供 更高的安全强度。
为了解决上述问题,本发明提供了一种基于椭圆曲线公钥密码的无线终 端安全锁网锁卡方法, 包括以下步骤:
( 1 )在无线终端开机初始阶段, 使用椭圆曲线数字签名证书验证手机 锁网锁卡安全软件文件的数字签名是否是合法签名;
( 2 )通过验证的软件对所述无线终端的开机信息与预存的锁网锁卡相 关安全信息进行比对验证, 若验证通过, 则提供网絡相关业务; 否则, 拒绝 提供网络相关业务或关机。
进一步地, 所述锁网锁卡相关安全信息包括软件签名的认证码, 归属公 用陆地移动通信网 HPLMN, 码表文件 FLEXFILE, 锁运营商卡相关信息 EF_GID1 , 软件版本号, 锁网控制密钥 NCK, 运营商加锁控制密钥 SPC, 移动网络码 MNC, 移动国家码 MCC, 锁网锁卡状态标示, 网络 /卡解锁剩 余尝试次数, 锁卡校验码, 公钥, 版本校验码, IMEI号校验码, 锁卡校验 码。
进一步地, 所述步驟(1 )执行之前, 执行:
( A )将手机锁网锁卡安全软件生成映象文件; ( B )使用椭圆曲线数字签名证书和所述映象文件摘要进行椭圆曲线签 名, 生成数字签名;
( C )将映象文件、 数字签名存储到所述无线终端的非易失性内存中。 进一步地, 所述步骤(A ) 包括如下步骤: 式可加载格式 ELF二进制目标文件;
( A2 )所述目标文件与所述无线终端处理器系统所带的 C/C++运行时 库文件, 经过连接器处理后, 生成 ELF格式的映象文件。
进一步地, 所述步骤(B ) 包括如下步骤:
( B1 )根据椭圆曲线数字签名证书得到椭圆曲线密码参数集 D = (p, a, b,
G, n, h) , 其中 p为一个大素数, 用于指定有限域 GF(p); a, b用于指定椭 圆曲线 E; G = (xG, y(3) e E(GF(p))为一个基点; 素数 n为基点 G 的阶; h=#E(GF(p))/n为协因子整数; #E(GF(p))表示椭圆曲线点群的阶; 同时也得 到了密钥对 (d,Q), 其中 d是私钥, Q=dG是公钥;
( B2 )使用哈希函数对所述映象文件进行散列运算,生成固定长度的映 象文件摘要;
( B3 )针对映象文件摘要进行椭圆曲线签名, 生成一个数字签名。
进一步地, 所述步骤(1 )执行之前, 还执行: 将锁网锁卡相关安全信 息基于 ElGamal算法模拟的椭圆曲线进行加密,保存到所迷无线终端内安全 存储区域中。
进一步地,所述将锁网锁卡相关安全信息基于 ElGamal算法模拟的椭圆 曲线进行加密包括如下步骤:
( a )根据椭圆曲线数字签名证书得到椭圆曲线密码参数集 D = (p, a, b, G, n, h) , 其中 p为一个大素数, 用于指定有限域 GF(p); a, b用于指定椭 圆曲线 E; G = (xG, yG) E(GF(p))为一个基点; 素数 n为基点 G 的阶; h=#E(GF(p))/n为协因子整数; #E(GF(p))表示椭圆曲线点群的阶; 同时也得 到了密钥对 (d,Q), 其中 d是私钥, Q=dG是公钥;
( b )将锁网锁卡相关安全信息数据分组, 将分组数据转换成椭圆曲线 上的点;
( c )利用 ElGamal算法进行数据的加密运算。
进一步地, 所述步骤(2 )还包括通过椭圆曲线数字签名证书公钥与手 机内安全存储的椭圆曲线私钥对预存的锁网锁卡相关安全信息进行解密,恢 复出明文数据。
进一步地, 所述步骤(2 ) 包括如下步骤:
( 2.1 )解密锁网锁卡相关安全信息中的手机锁网状态标识, 判断手机 锁网状态标识是否有效;
( 2.2 )若手机锁网状态标识有效, 表示要求锁网, 则把当前手机注册 上的 MNC, MCC和手机内安全区域中锁网锁卡相关安全信息中的 MNC,
MCC列表相比较, 如果在锁网范围内, 则继续运行; 否则, 拒绝提供网络 相关业务或关机。
进一步地, 所述步骤(2.1 )执行之前, 还执行: 手机判断 USIM卡或 SIM卡型号, 借助于 USIM卡或 SIM卡驱动接口函数读出 USIM/SIM卡内 的国际移动用户识别码 IMSI号,并从中分析出 HPLMN字段,读出 EF—GID1 , 判断所述 EF—GID1 与手机内安全区域中锁网锁卡相关安全信息中的 EF_GID1是否一致, 若一致, 才执行步骤(2.1 ) 。
本发明提供的一种基于椭圓曲线公钥密码的无线终端安全锁网锁卡方 法,采用的椭圆曲线密码体制在已知公钥密码系统中具有每比特最高强度安 全性,最快的处理速度和最低的开销,特别适用于具有低内存与低处理能力 手机终端实现锁网锁卡公钥密码安全技术。 附图概述
图 1为本发明实施例方法的手机锁网锁卡软件及数据保护流程图; 图 2为本发明实施例方法手机终端基于椭圆曲线的加密解密流程图; 图 3为本发明实施例方法安全数据编码为椭圆曲线上的点的流程图; 图 4为本发明实施例方法锁网锁卡安全软件签名流程图;
图 5为本发明实施例方法锁网锁卡安全软件合法性认证流程图; 图 6为本发明实施例方法锁网锁卡的解锁网 /锁卡功能流程图。
本发明的较佳实施方式
本发明关键是:
( )从椭圆曲线离散对数出发,辅以抗碰撞散列函数, 利用椭圆曲线公钥 证书数字签名方法, 实现手机的锁网与锁卡方法, 包括手机锁网锁卡软件授 权使用确认、软件完整性检查, 对锁网锁卡相关安全参数的加密保存, 及锁 网锁卡安全实现及锁网锁卡的安全解锁等方法。其中包括: 在无线终端开机 初始阶段,使用椭圓曲线数字签名证书验证手机锁网锁卡安全软件文件的数 字签名是否是合法签名;通过验证的软件对所述无线终端的开机信息与预存 的锁网锁卡相关安全信息进行比对验证,若验证通过,则提供网络相关业务; 否则,拒绝提供网络相关业务或关机。所述椭圆曲线数字签名证书为基于椭 圆曲线根 CA证书及手机密钥对或手机终端证书。 所述开机信息包括: USIM/SIM卡内锁网锁卡相关字段或信息, 以及开机网络信息等。
(二)本发明安全基础是基于椭圆曲线离散对数问题。给定一条定义在有限 域 GF(p)上椭圆曲线 E, —个阶为 n的点 P E及一个点0 = 1^, 其中 0 k < n - 1 , 确定 k。 椭圆曲线离散对数问题具有可证明的安全性, 相对于目前 流行的 RSA公钥密码体制, 具有速度快, 安全性高及对终端的处理能力要 求低等优点。
G)本发明实现 3G网络下的手机安全锁网锁卡方法, 就是通过对手机开 机引导过程中,通过对系统软件或手机锁网锁卡相关软件实施椭圆曲线数字 签名, 保证手机锁网锁卡软件是合法授权的, 并且没有经过窜改的。 在保证 了锁网锁卡软件的安全性后,通过对 USIM/SIM卡内锁网锁卡相关字段或信 息的检查, 并与手机内的锁网锁卡相关信息进行比较判断, 实现手机安全的 锁网与锁卡技术。 对于锁网锁卡相关的需要高强度安全保护的信息或数据, 利用椭圆曲线公钥密码技术实施加密进行保护。通过以上高安全强度的基于 椭圆曲线数字签名,加密与解密安全技术手段,保证手机只有在运营商网络 范围及所发行的 USIM/SIM卡上安全使用。
下面具体说明本发明工作原理:
本发明基于椭圆曲线上离散对数困难问题假设出发, 借助于哈希函数, 椭圆曲线公钥密码或证书, 利用橢圆曲线加密及数字签名方法实现 3G手机 安全锁网锁卡方法, 包括: 手机安全锁网锁卡的安全实现过程; 手机引导时 安全软件完整性或系统性检测; 锁网锁卡相关安全数据, 如 IMEI (国际移 动设备标识)手机软件版本号、锁网状态等安全加密与解密方法, 手机锁网 锁卡安全解锁过程等内容。
手机锁网锁卡过程包括锁网锁卡安全软件数字签名,相关安全数据的加 密。 首先借助 PC侧软件对手机锁网锁卡安全软件进行编译, 构造, 其次对 构造的二进制映象文件进行椭圆曲线数字签名;再次,对锁网锁卡相关安全 信息基于椭圆曲线公钥密码技术进行加密与解密处理; 最后, 通过 PC侧提 供的手机下载软件,将相关软件与安全数据通过数据线下载到手机内存区域 中, 对于安全相关数据, 借助于物理手段, 保存到手机内安全存储区域中, 如公钥证书,锁网锁卡相关数据,锁网锁卡状态等,防止外部用户进行窃取, 窜改等。 本发明假定手机内的椭圆曲线私钥, 是安全保存在手机中, 不能被 夕卜部软件、 硬件所读取。
所述手机锁网锁卡安全软件的数字签名方法,用于该软件完整性与合法 性检查。 首先对于安全软件程序中的各种源文件, 包括 C语言程序, 汇编 程序, 经过编译器编译后生成嵌入式可加载格式(ELF )文件。 这些目标文 件与手机处理器系统所带的 C/C++运行时库文件, 经过连接器处理后, 生成 ELF格式的映象文件(image ) , 这种映象文件然后写入到手机 ROM Flash 内。为实现数字签名,本发明假设运营商或制造商有一个支持椭圆曲线公钥 密码的证书中心(CA ) 网站, 也可以利用一个支持橢圆曲线密码的政府或 商业公共 CA。 用户安全申请一个椭圆曲线密码公钥证书, 用于手机软件安 全与锁网锁卡实现中的根 CA证书, 以此证书完成对其它公钥证书签名, 保 证手机合钥证书的不可伪造性及合法性证明。本发明利用根 CA证书签名的 手机公钥证书, 完成手机安全软件的签名, 及相关安全数据的签名, 以实现 安全软件的完整性及合法性等检查, 防止第三方恶意代码的入侵。 所述手机锁网锁卡安全软件的数字签名过程,首先给出椭圆曲线密码参 数集0 = , &, 13, 0,11, 11) , 其中 p为一个大素数, 如大于 160bit的素整数, 指定了有限域 GF(p); a, b指定椭圆曲线 E; G = (xG, yG) e E(GF(p))为一个基 点; 素数 n为基点 G的阶; h=#E(GF(p))/n为协因子整数; #E(GF(p))表示 椭圆曲线点群的阶; 同时也得到了密钥对 (d,Q),其中 d是私钥, Q=dG是公钥; 其次, 使用哈希函数对所构造的手机安全软件映象文件进行散列运算, 生成固定长度的映象文件摘要, 如 20字节长。 再次, 针对映象文件摘要数 据进行椭圆曲线签名过程, 生成一个签名数据并存入到手机存储器中。
生成了手机安全软件数字签名后, 在手机引导时, 可通过对手机锁网锁 基于椭圓曲线根 CA证书或手机公钥证书, 取出公共椭圆曲线参数集 0=¾),&,13, 11,11}与相关公钥(5。 然后, 手机引导程序检查验证手机锁网锁卡 安全软件文件的签名 (r, s )是否合法的签名, 如果是合法的, 则进行手机 锁网锁卡判别过程; 如果是不合法的安全软件, 对于研发过程中的手机, 则 进入到 JTAG普通文件映象文件下载模式; 对于产品阶段, 手机终端检测到 安全不一致性, 则直接关机, 防止手机被非法使用。
所述手机安全加密与解密方法,是基于 ElGamal算法模拟的椭圆曲线加 密与解密方案来实现安全数据的加密保护。首先对加密的数据按椭圆曲线参 数集中的模大小进行分组, 然后对分组数据进行编码, 将加密的分组数据转 换成椭圆曲线上的点, 然后利用 ElGamal算法进行数据的加密运算。 解密过 程中,通过椭圆曲线根证书公钥与手机内安全存储的椭圆曲线私钥完成加密 分组数据的解密, 最后通过快速的解码方法, 恢复出明文安全数据。 所给出 的解密方法的特点是解密速度快,特别适于手机终端这种内存与处理能力受 限的设备。
借助于以上所述发明方法,可以实现手机开机过程中的软件合法性安全 检查及锁网锁卡的判断, 包括手机安全软件完整性检测, IMEI号、 软件版 本号等安全数据的完整性检查,以及网络服务状态确定后的锁网锁卡状态检 测。 本发明所述锁网实现方法、首先手机开机时,检查手机锁网状态标识是 否有效, 如果是要求锁网, 则把当前手机注册上的 MNC (移动网絡码) , MCC (移动国家码)和手机内安全区域中椭圆曲线加密或安全保存的 MNC, MCC列表相比较,如果在锁网范围内, 则继续运行; 否则, 弹出提示框, 并 限制手机业务。
锁网锁卡的状态检查过程中, 手机判断 USIM卡或 SIM卡型号, 借助 于 USIM卡或 SIM卡驱动接口函数读出 USIM/SIM卡内的 IMSI (国际移动 用户识别码)号, 并从中分析出 HPLMN (归属公用陆地移动通信网)字段, 读出 EF_GID1 (锁运营商卡相关信息)与运营商相关信息。 解密加密的手 机内安全区域中锁网锁卡相关安全信息, 判断所述 EF_GID1与手机内安全 区域中锁网锁卡相关安全信息中的 EF— GID1是否一致, 若一致, 则检查手 机锁网状态标识是否有效,如果是要求锁网或锁卡, 则把当前手机注册上的 MNC, MCC和手机中加密保存的锁网锁卡相关信息, 如 MNC, MCC值, 解 密出来后进行比较。 如果一致, 则说明手机是合法的, 否则, 手机可能是非 法的, 阻止手机进行网络相关的业务或关机。手机锁网锁卡相关的网络状态 值有锁网, 不锁网, 无效网络状态三种状态。
手机安全版本号用于控制软件版本的下载,对于不同型号的手机,分配 不同的安全版本号区间。
所述手机软件版本控制与版本号校验方法是, 利用 PC侧专门软件与数 据线连上手机,手机软件下载工具连上手机后选择待下载安全软件版本。开 始下载时,下载工具对下载的软件进行数字签名,软件安全版本号数据通过 椭圆曲线加密算法进行加密, 发送给手机。 手机接收到软件安全版本号, 与 保存在手机中的安全版本号进行比较;如果待下载软件安全版本号在合法安 全版本号区间,并且下载的新的软件版本通过手机内的安全认证, 则手机接 受下载, 继续下载流程, 否则手机应拒绝下载。
以上所述方法中, 所需要通过椭圆曲线密码实施安全保护的相关数据 有, 软件签名的认证码, HPLMN, FLEXFILE (码表文件), EF— GID1 , 软 件版本号, NCK (锁网控制密钥 ) , SPC (运营商加锁控制密钥), MNC, MCC, 锁网锁卡状态标示, 网络 /卡解锁剩余尝试次数, 锁卡校脸码, 公钥, 版本校验码, IMEI号校验码, 锁卡校检码等数据。
下面结合软件流程和具体实现进一步详细说明本发明:
本发明实施例方法所述的手机所实施的锁网锁卡软件流程, 具体如图 1 所示, 包括以下步驟:
步骤 101中,为了完成锁网锁卡软件的数字签名,相关安全数据的加密, 需要借助 PC侧软件 2实现手机 1锁网锁卡等安全相关软件的编译, 构造与 进行椭圆曲线数字签名, 及对相关安全信息进行加密处理。 然后通过 PC侧 提供的手机下载软件 ,将相关软件与安全数据通过数据线下载到手机内存区 域中,对于安全相关数据,借助于物理手段,保存到手机内安全存储区域中, 如公钥证书,锁网锁卡相关数据,锁网锁卡状态等,防止外部用户进行窃取, 窜改等。
步骤 102中,为实现手机 1锁网锁卡数据安全及相关软件合法性与完整 性检查,本发明假设运营商或制造商已经建立起一个支持椭圆曲线公钥密码 的证书中心 CA网站,也可以利用一个支持椭圆曲线密码的政府或商业公共 CA, 也可以运营商或制造商自己提供一个椭圆曲线安全软件, 可以生成制 造商或运营商的根证书 CA, 以及手机终端或用户使用椭圆曲线证书或公、 私钥的密钥对。通过运营商或制造商的根证书,保证手机终端或用户的证书 是合法签名的证书, 而不是伪造的。 另外在本发明中, 根证书的作用除验证 软件与数据完整性外, 还完成对锁网锁卡相关安全数据的加密与解密功能。
所述步骤 102中, 椭圆曲线数字签名证书内部格式由 CCITT X.509规 定, 可以包含以下几方面内容: 证书版本号、数字证书序列号、 证书拥有者 姓名 (可以是手机的 IMEI号) 、 签名算法、 颁发数字证书的单位(可以是 运营商或手机制造商)、 颁发数字证书的单位(可以是运营商或制造商)签 名、 公开密钥有效期等。
步骤 103中,用椭圆曲线公钥加密相关锁网锁卡安全相关数据有,软件 签名认证码, HPLMN,相关配置数据, EF— GID1 ,软件版本号, NCK, SPC, MNC, MCC,锁网锁卡状态标示, 网络 /卡解锁剩余尝试次数, 锁卡校验码, IMEI号校验码, 锁卡认证码等数据。 本发明后面给出具体椭圆曲线实现安 全数据加密与解密的过程。 步骤 104中,对于锁网锁卡安全相关各种源文件, 包括 C语言程序或汇 编程序, 经过编译器(如 ARM处理器系统)编译后生成嵌入式可加载格式 ( ELF )二进制目标文件。这些目标文件与手机终端处理器系统所带的 C/C++ 运行时库文件,经过 ARM连接器处理后,生成 ELF格式的映象文件( image ), 这种映象文件, 会在后续的步骤中, 通过 PC侧下载软件下载到手机 ROM Flash内。
步骤 105中,利用手机终端证书对构造的安全软件进行椭圆曲线数字签 名, 生成签名数据, 用于手机开机时安全锁网锁卡软件的合法性认证。
步骤 106中, 将安全软件映象文件及签名, 相关加密数据下载到手机。 步骤 107中, 手机内部生成锁网锁卡的解锁码, 并保存在手机中。
步骤 108中, 手机将锁网锁卡的解锁码和 IMEI号发送给 PC侧软件。 步骤 109中, PC侧软件在数据库中保存锁网锁卡的解锁码及手机 IMEI 号,与手机终端椭圆曲线公钥证书与对应私钥, 以方便制造商或运营商为手 机进行锁网锁卡的解锁之用。
上面步骤 103 所述安全数据加密与解密方法中, 本发明给出 ElGamal 算法模拟的椭圆曲线加密与解密方案来实现安全数据的加密保护。
该方法的特点是解密速度快,特别适于手机终端这种内存与处理能力受 限的设备, 下面结合图 2, 详细说明基于橢圆曲线加密与解密过程。
步骤 201 中, PC 侧安全软件从根证书导出椭圆曲线参数集 D={p,a,b,G,n,h},其中 p为一个大素数, 如大于 160bit的素整数, 指定了有限 域 GF(p); a, b指定椭圆曲线 E; G = (xG, yG) E(GF(p))为一个基点; 素数 n 为基点 G的阶; h=#E(GF(p))/n为协因子整数; #E(GF(p))表示椭圆曲线点 群的阶; 同时也得到了密钥对 (d,Q),其中 d是私钥, Q=dG是公钥。
步骤 202中, 将要加密的安全数据, 如软件版本号, 软件数字签名、 锁 网锁卡密钥等安全数据,如果长度大于 n的话就进行分组,如果加密的安全 数据长度不够, 则在高字节处填充 0。 基于 ECC的密码体制中, 在传输一 个明文数据 m之前, 我们必须把它编码嵌入到曲线 E上的一个点。 假设消 息 A是一个整数, 0<A<p/256 - 1以及曲线 E是由椭圆曲线参数集 D给出。 我们试着填加二位十进制数字到 A上, 直到我们得到一个整数 X, 256A < x<p, 其中 f(x) = x3 + A X2 + b = yAmodp是一个平方剩余 (q.r)。 然后, 我们 解这个二次同余方程 y2 == f(x) modp, 以得到曲线 E上的一个明文消息点 PA = (XA, yA)。 很明显, 只要去掉 xA坐标中的最后 2位十进制数, 我们可以容 易地从 PA中解出 A。
步驟 203 中, 将加密的数据转换成椭圆曲线方程上的点的横坐标 xA, 计算 A = xA 3 + axA + b(modp), Q = p, 利用数论相关定理及图 3给出的平方 剩余判断算法, 判断大整数 A是否模平方剩余数。 如果 A不是模 p的平方 剩余数时, 则说明 不是椭圆曲线上的点, 即不满足椭圆曲线方程等式成 立。 在最低字节内重新选取 xA并重复这个平方剩余算法进行判断, 直到满 足为止.在图 3的算法中, Q为椭圆曲线范围 Domain参数 D中的模 p的值, A为模 Q或模 p上的平方剩余时, xA则为所选的横坐标。 图 3中的 J表示 Jacobi符号, 则 J为 1是表示 A为模平方剩余, 为 -1是表示 A为一个模平 方非剩余。 基于 J与模 p的值情况可以计算出 yA
步骤 203与步骤 204为根据明文安全数据转换成椭圆曲线的点的横坐标 后, 利用二次同余方程解的计算法, 给出对应横坐标 xA的纵坐标 yA, 从而 完成了把明文的安全数据编码为椭圆曲线上的点。然后基于椭圆曲线上的点 完成安全数据的加密与解密。
步骤 205中,如果 p具有 2u+l , u为奇数的形式时,即满足 p≡ 3 (mod 4) 或 ≡7(1110(18)时, 椭圆曲线方程的解为 yA≡ ±A(p+1)/4)(modp:)。
步骤 206中, 当 p具有 4u+l, u为奇数的形式时, 即满足 p≡ l(mod4) p≡5(mod 8), 如果 A((p-1)/4) ≡ 1 (mod p), 则 yA ≡ ± A((p+3)/8) (mod p); 如 果 a((P-I)/4) ≡ 1 (modp), 则 ^ ± 2«^4).八((?+3)/8)(1110(1 )。 步骤 207, 通过步骤 202到步骤 206的过程及图 3所示的过程, 完成了 将安全数据编码为椭圆曲线上的点 PA=(yA,yA)。 为以后数据加密奠定基础。
步骤 208中是安全数据的加密运算。对安全数据编码为橢圆曲线上的点 后,就可能利用根证书私钥 dR及手机终端证书公钥 QR对数据进行加密运算。 加密计算过程如下: PA + dRQR = PA + dR(dAG), 然后将根证书公钥, 与加 密的点保存到手机内存区域中, 即点对 (QR, PA + dR(dAG))。 步骤 209中, 手机在进行锁网锁卡过程中, 当需要解密出安全数据时, 使用其私钥 dA完成如下计算:
PA + dR (dAG) - dA (QR)=PA + dR (dAG) -dA(dRG) = PA;
对解密出的点 PA中的横坐标 xA进行解码处理,即去掉 xA中的最后二位 数字即可, 然后将该整数转换成字节串, 即可恢复出安全数据来。
本发明给出的基于椭圆曲线数据加、解密方案的优点是解密与解码速度 快。 编码较复杂, 但没有实时性的要求。 另外, 通过运营商或制造商根证书 与手机公钥证书来实施数据的加密与解密, 除了可以通过 PC侧软件与手机 相连完成手机安全锁网锁卡外,还可以便于通过网上下载来实现手机的锁网 锁卡技术。
本发明中所述步骤 105中, 利用要证书可以验证手机证书的合法性, 利 用手机终端证书对构造的安全软件进行椭圆曲线数字签名, 生成签名数据, 用于手机开机时安全锁网锁卡软件的合法性认证。下面结合图 4的代码签名 流程, 说明本发明中给出的手机安全软件完整性与合法性检查。
本发明实施例中, 图 4所给出的流程假设以 ARM系列嵌入式处理器系 统进行代码构造说明。
步骤 601中,对于安全引导程序中各种源文件, 包括 C语言程序或汇编 程序, 经过 ARM编译器编译后生成嵌入式可加载格式(ELF )文件。 这些 目标文件与 ARM处理器系统所带的 C/C++运行时库文件, 经过 ARM连接 器处理后, 生成 ELF格式的映象文件(image ) , 这种映象文件然后写入到 手机 ROM Flash内。
步骤 602中, 为实现手机终端软件安全与锁网锁卡技术实现,假设运营 商或制造商有一个支持椭圆曲线公钥密码的证书中心(CA ) 网站, 也可以 利用一个支持橢圆曲线密码的政府或商业公共 CA。 用户通过椭圆曲线密码 CA中心, 安全申请一个椭圆曲线密码公钥证书, 用于手机软件安全与锁网 锁卡实现中的根 CA证书, 以此证书完成对其它公钥证书签名, 保证手机公 钥证书的不可伪造性及合法性证明。本发明要利用根 CA证书签名的手机公 钥证书, 完成手机安全软件的签名, 及相关安全数据的签名, 以实现安全软 件的完整性及合法性等检查, 防止第三方恶意代码的入侵。
所述步驟 602中, 椭圆曲线数字签名证书内部格式由 CCITTX.509规 定, 可以包含以下几方面内容: 证书版本号、 数字证书序列号、证书拥有者 姓名、 签名算法、 颁发数字证书的单位、 颁发数字证书的单位的签名、公开 秘钥有效期等。
步骤 603中,基于步骤 602中所获得的椭圆曲线根公钥证书, 生成椭圆 曲线密码参数集0 = (^&,¾»,0, 11,11) , 其中 p为一个大素数, 如大于 160bit 的素整数,指定了有限域 GF(p); a,b指定橢圆曲线 E; G = (xG, yG) ^ E(GF(p)) 为一个基点;素数 n为基点 G的阶; h=#E(GF(p))/n为协因子整数; #E(GF(p)) 表示椭圆曲线点群的阶; 同时也得到了密钥对 (d,Q),其中 d是私钥, Q=dG是 公钥; 向网守发送哈希函数, 椭圆曲线参数 a,b和公钥 Q。
步骤 604是使用安全哈希函数 SHA, 使用哈希函数对所构造的操作系 统软件系统或应用系统软件映象文件进行散列运算,生成固定长度的映象文 件摘要, 如 20字节长。
步驟 605-步骤 610的过程,是针对映象文件摘要数据进行椭圆曲线签名 的过程:
步骤 605: 选择一个随机或伪随机数 k, l k n-l;
步驟 606: 计算!^^: ^ )^:^!!!。 !!;
步骤 607, 判断 r是否等于 0, 如果 r = 0, 说明所选择的椭圆曲线随机 点是一个特殊点,不符合签名安全要求,返回步驟 605进行重新选取;否则, 执行下一步;
步骤 608: 计算 s k- ^e + d modn;
步驟 609: 判断 s是否等于 0, 如果 s = 0 , 则返回步骤 605, 否则, 执 行下一步。
步 610: 完成对手机安全软件映象文件的签名 (r,s),该签名将随映象 文件一起放到手机 ROM Flash中。
如图' 5 所示, 为根据本发明实施例所述的手机引导过程中, 对锁网锁 卡安全软件进行合法性检查, 其具体步骤为: 步骤 701 : 手机引导程序, 基于椭圆曲线根 CA证书或手机公钥证书, 取出公共椭圆曲线参数集 D={p,a,b,G, n,h}与相关公钥 Q。
步骤 702: 手机引导程序检查验证手机锁网锁卡安全软件文件(操作系 统或应用系统软件)的签名 (r, s )是否超过椭圆曲线基点群阶的范围, 如 果是, 则表示不合法的签名, 引导程序转到步骤 708; 否则, 执行下一步。
步骤 703: 生成手机安全软件映象文件的消息摘要 e。
步骤 704: 分别计算 w = s— 1 mod n; ui = ew mod n; u2 = rw mod n;及 X = inG +
Figure imgf000017_0001
)的值。
步骤 705: 当 X的横坐标 ^为 0时, 说明签名无效, 手机引导程序转 到步骤 708 , 否则, 执行下一步。
步骤 706: 当 X的横坐标 Xl不等于 r时, 则表示不合法的签名。 手机引 导程序转到步骤 708 , 否则, 执行下一步。
步驟 707: 验证了手机安全软件签名的正确性后, 说明了该软件映象文 件签名没有被窜改,手机引导程序可以完成锁网锁卡状态检查,结束本流程。
步骤 708: 安全认证失败: 对于产品研发阶段, 则进入到 JTAG普通文 件映象文件下载模式; 对于产品阶段, 手机终端检测到安全不一致性, 直接 关机, 防止手机非法使用。
借助于以上所述方法,可以实现手机开机过程中的软件合法性安全检查 及锁网锁卡的判断, 包括手机安全软件完整性检测 , IMEI号、 软件版本号 等安全数据的完整性检查, 以及网络服务状态确定后的锁网锁卡状态检测。
锁网锁卡的状态检查过程中, 手机判断 USIM卡或 SIM卡型号, 借助 于 USIM卡或 SIM卡驱动接口函数读出 USIM/SIM卡内的 IMSI号, 并从中 分析出 HPLMN字段, 读出 EF— GID1与运营商相关信息。 检查手机锁网状 态标识是否有效, 如果是要求锁网或锁卡, 则把当前手机注册上的 MNC, MCC和手机中加密保存的锁网锁卡相关信息, 如 MNC, MCC值, 解密出 来后进行比较。如果一致,则说明手机是合法的,否则,手机可能是非法的, 阻止手机进行网络相关的业务或关机。手机锁网锁卡相关的网络状态值有锁 网, 不锁网, 无效网络状态三种状态。
对于手机锁网锁卡的解锁方案, 下面结合图 6说明具体过程。
步骤 301: 用户选择手机锁网 /锁卡的解锁功能。 用户可以通过 PC侧软 件来实现, 也可以在手机提供相关解锁网锁卡界面实现。
步骤 302: 判断解锁失败次数是否超过 5次, 这包括以前进行的已保存 的安全解锁次数累加比较。 因此包括对安全解锁次数数据的解密过程,如前 所述的椭圆曲线加密与解密过程。如果解锁失败次数超过 5次, 则执行步骤 312, 否则, 执行下一步;
步骤 303: 判断手机是否在解锁状态, 若是, 则执行步骤 304, 若否, 则执行步骤 305。
步骤 304: 手机已解锁, 则相关的解锁密钥, 即 NCK与 SPC, 将恢复 出明文状态, 放在手机 V项中, 即非易失内存中。
步骤 305: 手机在锁定状态, 则可通过手机或专门的 PC侧软件提供一 种提示用户输入解锁码, 包括 NCK, 或 SPC。
步骤 306: 手机或 PC侧软件解密出相关的 NCK或 SPC, 与用户输入的 相关值进行比较。
步骤 307: 判断手机解密出的 NCK或 SPC与用户输入的解锁码是否相 等, 若相等, 则执行步骤 308, 否则执行步骤 309。
步驟 308: 解锁成功, 相关的解锁密钥, 即 NCK与 SPC, 将恢复出明 文状态, 放在手机 NV项中。
步骤 309: 失败次数加 1, 并且用户退出锁网锁卡应用时, 要将与此相 关的安全数据进行加密保存。
步骤 310: 判断解锁失败次数是否超过 5次, 若超过, 则执行步骤 312, 否则, 执行下一步;
步骤 311: 提示用户已进行失败的解锁次数, 并将返回到步骤 305用户 解锁码输入界面, 给用户尝试解锁机会。
步骤 312, 按标准要求, 手机将处于永远锁 状态。 最后, 要特别说明的是:
(-)对于手机引导来说,无论什么时候手机安全软件代码发生改变或软件 版本发生变化, 都要重新进行软件签名, 以保证软件的完整性、 一致性。
(二)本领域技术人员在实施本发明实施例时, 为筒化描述本发明思想,对 于手机安全软件及安全数据签名认证中, 采用的是同一个 CA根证书, 可选 地也可以通过证书链方式对手机公钥证书进行签名,以验证手机公钥的合法 性。 其思想是本发明给的代码签名与认证思想相同。
(≡)本发明方法所采用的椭圆曲线密码体制在已知公钥密码系统中具有 每比特最高强度安全性, 最快的处理速度和最低的开销,特别适用于具有低 内存与低处理能力的 3G手机终端实现网络锁网锁卡及其它安全接入。
卿基于本发明思想, 也完全可以实现 3GPP TS 22.022其它安全需求, 如锁内容提供商应用,锁公司应用及网络子网锁定等安全应用。本发明思想 也可以为手机终端提供一个 3G终端可信计算平台, 以使手机安全接入 3G 网络。
尽管本发明结合特定实施例进行了描述,但是对于本领域的技术人员来 说,可以在不背离本发明的精神或范围的情况下进行修改和变化。这样的修 改和变化被视作在本发明的范围和附加的权利要求书范围之内。
工业实用性
本发明实现 3G网络下的手机安全锁网锁卡方法, 通过对手机开机引导 过程中,对系统软件或手机锁网锁卡相关软件实施椭圆曲线数字签名,保证 手机锁网锁卡软件是合法授权的,并且没有经过窜改的。在保证了锁网锁卡 软件的安全性后, 通过对 USIM/SIM卡内锁网锁卡相关字段或信息的检查, 并与手机内的锁网锁卡相关信息进行比较判断,实现手机安全的锁网与锁卡 技术。对于锁网锁卡相关的需要高强度安全保护的信息或数据,利用椭圓曲 线公钥密码技术实施加密进行保护。通过以上高安全强度的基于椭圆曲线数 字签名,加密与解密安全技术手段,保证手机只有在运营商网络范围及所发 行的 USIM/SIM卡上安全使用。

Claims

权 利 要 求 书
1、 一种基于椭圆曲线公钥密码的无线终端安全锁网锁卡方法, 其特征 在于, 包括以下步驟:
( 1 )在无线终端开机初始阶段, 使用椭圆曲线数字签名证书验证手机 锁网锁卡安全软件文件的数字签名是否是合法签名;
- ( 2 )通过险证的软件对所述无线终端的开机信息与预存的锁网锁卡相 关安全信息进行比对验证, 若验证通过, 则提供网絡相关业务; 否则, 拒绝 提供网络相关业务或关机。
2、 如权利要求 1所述锁网锁卡方法, 其特征在于, 所迷锁网锁卡相关 安全信息包括软件签名的认证码 , 归属公用陆地移动通信网 HPLMN, 码表 文件 FLEXFILE, 锁运营商卡相关信息 EF— GID1 , 软件版本号, 锁网控制密 钥 NCK, 运营商加锁控制密钥 SPC, 移动网络码 MNC, 移动国家码 MCC, 锁网锁卡状态标示, 网络 /卡解锁剩余尝试次数, 锁卡校验码, 公钥, 版本 校验码, IMEI号校验码, 锁卡校—险码。
3、 如权利要求 1所述锁网锁卡方法, 其特征在于, 所述步骤( 1 )执行 之前 5 执行二
( A )将手机锁网锁卡安全软件生成映象文件;
( B )使用椭圆曲线数字签名证书和所述映象文件摘要进行椭圆曲线签 名, 生成数字签名;
( C )将映象文件、 数字签名存储到所述无线终端的非易失性内存中。
4、 如权利要求 3 所述锁网锁卡方法, 其特征在于, 所述步骤(A ) 包 括如下步骤:
( A1 )对手机锁网锁卡安全软件的源文件经过编译器编译后生成嵌入 式可加载格式 ELF二进制目标文件;
( A2 ) 所迷目标文件与所述无线终端处理器系统所带的 C/C++运行时 库文件, 经过连接器处理后, 生成 ELF格式的映象文件。
5、 如权利要求 4所述锁网锁卡方法, 其特征在于, 所述步骤(B )包括 如下步骤:
( Bl )根据椭圆曲线数字签名证书得到椭圆曲线密码参数集 D = (p, a, b, G, n, h) , 其中 p为一个大素数, 用于指定有限域 GF(p); a, b用于指定椭 圆曲线 E; G = (xG, yG) e E(GF(p))为一个基点; 素数 n为基点 G 的阶; h=#E(GF(p))/n为协因子整数; #E(GF(p))表示椭圆曲线点群的阶; 同时也得 到了密钥对 (d,Q), 其中 d是私钥, Q=dG是公钥;
( B2 )使用哈希函数对所迷映象文件进行散列运算,生成固定长度的映 象文件摘要;
( B3 )针对映象文件摘要进行椭圆曲线签名, 生成一个数字签名。
6、 如权利要求 1 ~ 5中任意一项所述锁网锁卡方法, 其特征在于, 所述 步骤( 1 )执行之前, 还执行: 将锁网锁卡相关安全信息基于 ElGamal算法 模拟的椭圆曲线进行加密, 保存到所述无线终端内安全存储区域中。
7、 如权利要求 6所述锁网锁卡方法, 其特征在于, 所述将锁网锁卡相 关安全信息基于 ElGamal算法模拟的椭圆曲线进行加密包括如下步骤:
( a )根据椭圓曲线数字签名证书得到椭圆曲线密码参数集 D = (p, a, b,
G, n, h) , 其中 ρ为一个大素数, 用于指定有限域 GF(p); a, b用于指定椭 圆曲线 E; G = (xG, yG; E(GF(p))为一个基点; 素数 n为基点 G的阶; h=#E(GF(p))/n为协因子整数; #E(GF(p))表示椭圓曲线点群的阶; 同时也得 到了密钥对 (d,Q), 其中 d是私钥, Q=dG是公钥;
( b )将锁网锁卡相关安全信息数据分组, 将分组数据转换成椭圆曲线 上的点;
( c )利用 ElGamal算法进行数据的加密运算。
8、 如权利要求 6所述锁网锁卡方法, 其特征在于, 所述步骤(2 )还包 括通过椭圆曲线数字签名证书公钥与手机内安全存储的椭圆曲线私钥对预 存的锁网锁卡相关安全信息进行解密, 恢复出明文数据。
9、 如权利要求 8所述锁网锁卡方法, 其特征在于, 所述步骤(2 ) 包括 如下步骤:
( 2.1 )解密锁网锁卡相关安全信息中的手机锁网状态标识, 判断手机 锁网状态标识是否有效;
( 2.2 )若手机锁网状态标识有效, 表示要求锁网, 则把当前手机注册 上的 MNC, MCC和手机内安全区域中锁网锁卡相关安全信息中的 MNC, MCC列表相比较, 如果在锁网范围内, 则继续运行; 否则, 拒绝提供网络 相关业务或关机。
10、 如权利要求 9所述锁网锁卡方法, 其特征在于, 所述步骤(2.1 ) 执行之前, 还执行: 手机判断 USIM卡或 SIM卡型号, 借助于 USIM卡或 SIM卡驱动接口函数读出 USIM/SIM卡内的国际移动用户识别码 IMSI号 , 并从中分析出 HPLMN字段, 读出 EF—GID1, 判断所述 EF— GID1与手机内 安全区域中锁网锁卡相关安全信息中的 EF—GID1是否一致, 若一致, 才执 行步骤(2.1 ) 。
PCT/CN2007/003577 2007-03-02 2007-12-13 Réseau de sécurité d'un terminal sans fil et procédé de verrouillage de carte sur la base du chiffre de clé publique de courbe elliptique WO2008106848A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200710080322.1 2007-03-02
CN2007100803221A CN101018125B (zh) 2007-03-02 2007-03-02 一种基于椭圆曲线公钥密码的无线终端安全锁网锁卡方法

Publications (1)

Publication Number Publication Date
WO2008106848A1 true WO2008106848A1 (fr) 2008-09-12

Family

ID=38726898

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2007/003577 WO2008106848A1 (fr) 2007-03-02 2007-12-13 Réseau de sécurité d'un terminal sans fil et procédé de verrouillage de carte sur la base du chiffre de clé publique de courbe elliptique

Country Status (2)

Country Link
CN (1) CN101018125B (zh)
WO (1) WO2008106848A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468125A (zh) * 2014-12-24 2015-03-25 江西倍康信息技术有限公司 基于国密算法的移动互联网信息通信加密方法
CN115208617A (zh) * 2022-05-19 2022-10-18 上海格尔安全科技有限公司 Web会话检测方法、装置、计算机设备和存储介质

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018125B (zh) * 2007-03-02 2010-06-16 中兴通讯股份有限公司 一种基于椭圆曲线公钥密码的无线终端安全锁网锁卡方法
CN101483863B (zh) * 2009-02-06 2011-04-27 中兴通讯股份有限公司 即时消息的传送方法、系统及wapi终端
CN101873569B (zh) * 2009-04-21 2013-07-03 深圳富泰宏精密工业有限公司 不同运营商内部网络共享系统及方法
CN101651942B (zh) * 2009-09-04 2012-05-23 中兴通讯股份有限公司 一种实现对终端设备解锁的方法及装置
CN102064939B (zh) * 2009-11-13 2013-06-12 福建联迪商用设备有限公司 Pos文件认证的方法及认证证书的维护方法
CN101702807B (zh) * 2009-11-16 2012-07-25 东南大学 一种无线安全接入认证方法
CN101931529B (zh) * 2010-08-09 2014-07-16 中兴通讯股份有限公司 一种数据加密方法、数据解密方法及节点
CN101938563B (zh) * 2010-09-09 2013-08-14 宇龙计算机通信科技(深圳)有限公司 一种sim卡信息的保护方法、系统及移动终端
CN102487321B (zh) * 2010-12-03 2014-07-02 航天信息股份有限公司 一种签密方法和系统
CN102075910B (zh) * 2010-12-20 2014-06-11 华为终端有限公司 对终端进行锁网的方法和装置
CN102158846B (zh) * 2011-03-30 2015-04-01 中兴通讯股份有限公司 一种移动终端及其锁网的方法
CN102737172B (zh) * 2011-04-13 2016-03-23 腾讯科技(深圳)有限公司 一种在驱动中验证进程文件的方法和装置
CN103098502A (zh) * 2011-08-03 2013-05-08 华为技术有限公司 数据管理方法和装置
CN102394747B (zh) * 2011-11-23 2015-01-14 上海爱信诺航芯电子科技有限公司 一种快速嵌入明文到椭圆曲线上一点的方法
CN102831357B (zh) * 2012-08-24 2015-01-07 深圳市民德电子科技有限公司 二次开发嵌入式应用程序的加密和认证保护的方法及系统
CN102932147B (zh) * 2012-10-09 2015-08-12 上海大学 基于隐马尔科夫模型的椭圆曲线密码计时攻击方法
CN103544617B (zh) * 2013-03-15 2017-01-11 湖北三禾建材科技发展有限责任公司 一种防伪系统
CN104185167B (zh) * 2013-05-20 2019-03-01 华为技术有限公司 一种更新终端锁卡信息的方法及终端
CN103309973B (zh) * 2013-06-08 2016-08-10 上海交通大学 可验证外包数据查询的方法及系统
CN103596164A (zh) * 2013-11-15 2014-02-19 华为终端有限公司 终端锁网控制方法及移动终端
CN104735647A (zh) 2013-12-20 2015-06-24 中兴通讯股份有限公司 无线终端的锁网方法及系统
CN104158663B (zh) * 2014-07-30 2019-04-09 云南大学 一种基于双曲线群算术的公钥密码体制及签名方法
CN104469736B (zh) * 2014-11-05 2018-01-19 中兴通讯股份有限公司 一种数据处理方法、服务器及终端
CN106034298B (zh) * 2015-03-11 2019-12-17 青岛海信移动通信技术股份有限公司 一种移动终端锁卡方法及终端
FR3035293B1 (fr) * 2015-04-14 2021-10-08 Valroger Thibault De Procede de communication cryptographique base sur le hasard profond
CN104836661B (zh) * 2015-05-27 2018-05-18 中国科学院微电子研究所 一种体域网主密钥生成方法
CN107343276B (zh) * 2016-04-29 2020-01-07 展讯通信(上海)有限公司 一种终端的sim卡锁数据的保护方法及系统
CN106230813B (zh) * 2016-07-29 2019-08-02 宇龙计算机通信科技(深圳)有限公司 鉴权方法、鉴权装置和终端
CN106572460B (zh) * 2016-10-28 2020-02-21 捷开通讯(深圳)有限公司 一种移动设备及其卡解锁方法
CN108184230B (zh) * 2017-12-14 2021-04-20 中国—东盟信息港股份有限公司 一种软sim实现加密的系统及方法
CN107919956B (zh) * 2018-01-04 2020-09-22 重庆邮电大学 一种面向物联网云环境下端到端安全保障方法
CN112654039B (zh) * 2019-09-25 2024-03-01 紫光同芯微电子有限公司 一种终端的合法性鉴别方法、装置及系统
CN111063065B (zh) * 2019-12-17 2021-03-12 万晖五金(深圳)有限公司 一种磁场锁系统和磁场锁控制方法
CN111125782B (zh) * 2019-12-24 2022-12-09 兴唐通信科技有限公司 一种不可克隆芯片id的验证方法及系统
CN112073961B (zh) * 2020-09-08 2023-07-04 Oppo广东移动通信有限公司 Sim卡的状态更新方法及装置、终端及可读存储介质
CN113158257A (zh) * 2021-03-23 2021-07-23 任杰 一种基于远程教育的考务信息管理系统
CN115103357B (zh) * 2022-08-26 2022-11-25 汉仪科技(深圳)有限公司 一种基于fpga的5g通讯加密系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1549495A (zh) * 2003-05-12 2004-11-24 明基电通股份有限公司 防止手机加密网络锁被破解的保护方法及相关装置
CN1750694A (zh) * 2004-09-15 2006-03-22 乐金电子(中国)研究开发中心有限公司 一种移动通信终端的初始化方法
CN1913679A (zh) * 2006-08-25 2007-02-14 华为技术有限公司 移动终端防盗用的保护方法与系统
CN101018125A (zh) * 2007-03-02 2007-08-15 中兴通讯股份有限公司 一种基于椭圆曲线公钥密码的无线终端安全锁网锁卡方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1549495A (zh) * 2003-05-12 2004-11-24 明基电通股份有限公司 防止手机加密网络锁被破解的保护方法及相关装置
CN1750694A (zh) * 2004-09-15 2006-03-22 乐金电子(中国)研究开发中心有限公司 一种移动通信终端的初始化方法
CN1913679A (zh) * 2006-08-25 2007-02-14 华为技术有限公司 移动终端防盗用的保护方法与系统
CN101018125A (zh) * 2007-03-02 2007-08-15 中兴通讯股份有限公司 一种基于椭圆曲线公钥密码的无线终端安全锁网锁卡方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468125A (zh) * 2014-12-24 2015-03-25 江西倍康信息技术有限公司 基于国密算法的移动互联网信息通信加密方法
CN115208617A (zh) * 2022-05-19 2022-10-18 上海格尔安全科技有限公司 Web会话检测方法、装置、计算机设备和存储介质
CN115208617B (zh) * 2022-05-19 2024-04-05 上海格尔安全科技有限公司 Web会话检测方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN101018125B (zh) 2010-06-16
CN101018125A (zh) 2007-08-15

Similar Documents

Publication Publication Date Title
WO2008106848A1 (fr) Réseau de sécurité d&#39;un terminal sans fil et procédé de verrouillage de carte sur la base du chiffre de clé publique de courbe elliptique
JP4996817B2 (ja) 装置に結合されたフラッシュ動作/起動動作によるクローン作成防止方法
RU2356169C2 (ru) Привязка программного обеспечения к аппаратным средствам с использованием криптографии
CN104104517B (zh) 一次性密码验证的方法和系统
US7886355B2 (en) Subsidy lock enabled handset device with asymmetric verification unlocking control and method thereof
US7730315B2 (en) Cryptosystem based on a Jacobian of a curve
CN110167021B (zh) 一种车载虚拟钥匙实现及通信方法
CN110401615B (zh) 一种身份认证方法、装置、设备、系统及可读存储介质
CA2838322C (en) Secure implicit certificate chaining
US8775812B2 (en) Received message verification
US20080003980A1 (en) Subsidy-controlled handset device via a sim card using asymmetric verification and method thereof
US9531540B2 (en) Secure token-based signature schemes using look-up tables
CN109981562B (zh) 一种软件开发工具包授权方法及装置
CN109039657B (zh) 密钥协商方法、设备、终端、存储介质以及系统
WO2014026518A1 (zh) 软件密钥更新方法和装置
CN115396121B (zh) 安全芯片ota数据包的安全认证方法及安全芯片装置
CN110650478B (zh) Ota方法、系统、设备、se模块、程序服务器和介质
JPH11505384A (ja) 第1のコンピュータ装置と第2のコンピュータ装置との間の暗号鍵のコンピュータにより支援された交換方法
CN101272616A (zh) 一种无线城域网的安全接入方法
KR20200037847A (ko) 공급 체인 자산 관리를 보호하기 위한 애플리케이션을 가지는 원격 서버에 대한 nfc 태그 인증
CN101330524A (zh) 下载、下发文件的处理方法、装置以及传输文件的系统
CN109951276B (zh) 基于tpm的嵌入式设备远程身份认证方法
CN112565205B (zh) 可信认证和度量方法、服务器、终端及可读存储介质
CN1504057A (zh) 提供无线通信装置的安全处理和数据存储的方法和设备
CN114978751B (zh) 业务证书获取方法、装置和电子设备

Legal Events

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

Ref document number: 07845922

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07845922

Country of ref document: EP

Kind code of ref document: A1