WO2016011739A1 - 防伪验证方法、装置和系统 - Google Patents

防伪验证方法、装置和系统 Download PDF

Info

Publication number
WO2016011739A1
WO2016011739A1 PCT/CN2014/091426 CN2014091426W WO2016011739A1 WO 2016011739 A1 WO2016011739 A1 WO 2016011739A1 CN 2014091426 W CN2014091426 W CN 2014091426W WO 2016011739 A1 WO2016011739 A1 WO 2016011739A1
Authority
WO
WIPO (PCT)
Prior art keywords
verification
verified
terminal
information
verification step
Prior art date
Application number
PCT/CN2014/091426
Other languages
English (en)
French (fr)
Inventor
刘伟
马骥
马森
张亮
Original Assignee
小米科技有限责任公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 小米科技有限责任公司 filed Critical 小米科技有限责任公司
Priority to JP2016535330A priority Critical patent/JP6163610B2/ja
Priority to MX2015002443A priority patent/MX360075B/es
Priority to RU2015108340/08A priority patent/RU2603549C2/ru
Priority to BR112015003462A priority patent/BR112015003462A2/pt
Priority to KR1020157001202A priority patent/KR101688182B1/ko
Priority to US14/641,569 priority patent/US9426130B2/en
Publication of WO2016011739A1 publication Critical patent/WO2016011739A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • 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
    • 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
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • 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/3297Cryptographic 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 time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud

Definitions

  • the present disclosure relates to the field of terminal technologies, and in particular, to an anti-counterfeiting verification method, apparatus, and system.
  • the application can perform anti-counterfeiting verification on the local authentication terminal.
  • the application obtains various configuration parameters and performance parameters of the terminal to be verified, and then matches each configuration parameter and performance parameter stored in the database. If the matching between the two is basically the same, the terminal to be verified is considered to be genuine, otherwise the terminal to be verified is considered to be a fake.
  • the disclosed person finds that the above technology has at least the following defects: some criminals enable the user to download and install the forged application by means of forging the application, and the forged application can pass various The method feeds back to the user the verification result that the terminal to be verified is genuine. Therefore, the above technique still has a problem of low verification success rate due to forgery of an application.
  • the embodiment of the present disclosure provides an anti-counterfeiting verification method, apparatus, and system.
  • the technical solution is as follows:
  • an anti-counterfeiting verification method comprising:
  • the ith verification step being a verification step arranged in a predetermined order among all n verification steps for verifying the terminal to be verified, 1 ⁇ i ⁇ n;
  • the ith verification step is performed when the call request is a call request initiated according to the ciphertext information corresponding to the ith verification step;
  • the failed verification result is sent to the to-be-verified terminal;
  • the successful verification result is sent to the to-be-verified terminal.
  • the generating the ciphertext information corresponding to the ith verification step includes:
  • the unencrypted information includes the association information of the terminal to be verified and the step number corresponding to the i-th verification step, where 1 ⁇ i ⁇ n;
  • the unencrypted information includes association information of the to-be-verified terminal; when i ⁇ 2, the unencrypted information includes association information of the to-be-verified terminal and the i-th successfully invoked - 1 step number corresponding to the verification step.
  • performing the ith verification step including:
  • the ciphertext information is read;
  • the ith verification step is performed.
  • performing the ith verification step further comprising:
  • Reading the time information included in the unencrypted information when the unencrypted information further includes time information
  • the ith verification step is performed.
  • the performing the ith verification step includes:
  • the terminal to be verified is verified according to the configuration parameter of the terminal to be verified;
  • the ith verification step is a performance parameter verification step, verify the terminal to be verified according to the performance parameter of the terminal to be verified;
  • the terminal to be verified is verified according to the basic information of the terminal to be verified and the order database, and the order database includes basic information of at least one terminal;
  • the terminal to be verified is verified according to the geographical location and the unique identifier corresponding to the terminal to be verified.
  • the verifying the terminal to be verified according to the basic information of the terminal to be verified and the order database including:
  • the verifying the terminal to be verified according to the geographic location and the unique identifier corresponding to the terminal to be verified including:
  • the terminal to be verified Detecting whether the terminal to be verified meets a predetermined condition, where the predetermined condition refers to a call request sent by a terminal to be verified that receives a unique identifier from a different geographic location but has the same unique identifier as the terminal to be verified within a predetermined time period;
  • the method further includes:
  • the verification result is used to respond to the verification query request.
  • an anti-counterfeiting verification method comprising:
  • the ith verification step is a verification step arranged in a predetermined order among all n verification steps for verifying the terminal to be verified, 1 ⁇ i ⁇ n;
  • the sending, by the ciphertext information, the calling request for calling the ith verification step to the server includes:
  • the ciphertext information is obtained by the server encrypting the unencrypted information by using a private key
  • the unencrypted information includes association information of the terminal to be verified and a step number corresponding to the ith verification step;
  • the unencrypted information includes association information of the to-be-verified terminal; when i ⁇ 2, the unencrypted information includes association information of the to-be-verified terminal and the i-th successfully invoked - 1 step number corresponding to the verification step.
  • the method further includes:
  • an anti-counterfeiting verification apparatus comprising:
  • a ciphertext generating module configured to generate ciphertext information corresponding to the ith verification step, the ith verification step being one verification in a predetermined order among all n verification steps for verifying the terminal to be verified Step, 1 ⁇ i ⁇ n;
  • a ciphertext sending module configured to send the ciphertext information to the to-be-verified terminal
  • a request receiving module configured to receive a call request sent by the terminal to be verified for invoking the ith verification step
  • a verification execution module configured to perform the ith verification step when the call request is a call request initiated according to the ciphertext information corresponding to the ith verification step
  • a first sending module configured to send a failed verification result to the to-be-verified terminal when the ith verification step fails to be verified
  • the ciphertext generating module is further configured to: encrypt the unencrypted information by using a private key to obtain ciphertext information corresponding to the ith verification step;
  • the unencrypted information includes the association information of the terminal to be verified and the step number corresponding to the i-th verification step, where 1 ⁇ i ⁇ n;
  • the unencrypted information includes association information of the to-be-verified terminal; when i ⁇ 2, the unencrypted information includes association information of the to-be-verified terminal and the i-th successfully invoked - 1 step number corresponding to the verification step.
  • the verification execution module includes: a ciphertext detection submodule, a ciphertext reading submodule, a ciphertext decryption submodule, a number determination submodule, a number detection submodule, and a verification execution submodule;
  • the ciphertext detection sub-module is configured to detect whether the ciphertext information corresponding to the ith verification step is carried in the call request;
  • the ciphertext reading submodule is configured to read the ciphertext information when the ciphertext information is carried;
  • the ciphertext decryption sub-module is configured to decrypt the ciphertext information by using the private key to obtain the unencrypted information
  • the number determining submodule is configured to determine, according to the information content of the unencrypted information, a step number corresponding to the ith verification step;
  • the number detection submodule is configured to detect whether the actual step number of the call request call matches the step number corresponding to the i th verification step;
  • the verification execution sub-module is configured to execute the ith verification step when the actual step number matches the step number corresponding to the ith verification step.
  • the verification execution module further includes: an information reading submodule and a time detection submodule;
  • the information reading submodule is configured to read the time information included in the unencrypted information when the unencrypted information further includes time information;
  • the time detecting submodule is configured to detect, according to the time information, whether a time at which the call request is received is within a valid time period;
  • the verification execution sub-module is further configured to execute when the time when the call request is received is within the valid period, and the actual step number matches the step number corresponding to the i-th verification step The ith verification step.
  • the verification execution sub-module includes: a first verification sub-module; and/or a second verification sub-module; and/or a third verification sub-module; and/or a fourth verification sub-module;
  • the first verification sub-module is configured to verify the to-be-verified terminal according to the configuration parameter of the to-be-verified terminal when the i-th verification step is a configuration parameter verification step;
  • the second verification sub-module is configured to verify the to-be-verified terminal according to the performance parameter of the to-be-verified terminal when the i-th verification step is a performance parameter verification step;
  • the third verification sub-module is configured to, when the i-th verification step is an order verification step, verify the terminal to be verified according to the basic information of the terminal to be verified and an order database, the order database Contains basic information about at least one terminal;
  • the fourth verification sub-module is configured to verify the to-be-verified terminal according to the geographical location and the unique identifier corresponding to the to-be-verified terminal when the i-th verification step is a geographic location verification step.
  • the third verification submodule is further configured to: in the order database, query whether there is basic information that matches basic information of the to-be-verified terminal; if there is a basic relationship with the to-be-verified terminal The basic information matching the information determines that the i-th verification step is successfully verified.
  • the fourth verification submodule is further configured to detect whether the to-be-verified terminal meets a predetermined condition, where the predetermined condition refers to receiving a different geographic location from the predetermined time period
  • the verification terminal has the same unique identifier for the call request sent by the terminal to be verified; if the terminal to be verified does not meet the predetermined condition, it is determined that the verification of the ith verification step is successful.
  • the device further includes:
  • the query receiving module is configured to receive a verification query request carrying a user account
  • a result querying module configured to query whether there is a verification result corresponding to the user account
  • the request response module is configured to respond to the verification query request using the verification result when the verification result is present.
  • an anti-counterfeiting verification apparatus comprising:
  • a ciphertext receiving module configured to receive ciphertext information corresponding to the ith verification step sent by the server, where the ith verification step is performed in a predetermined order for all n verification steps for verifying the terminal to be verified a verification step, 1 ⁇ i ⁇ n;
  • a request sending module configured to send, according to the ciphertext information, a call request for calling the ith verification step to the server;
  • the result receiving module is configured to receive a verification result sent by the server indicating failure or success.
  • the request sending module includes: a request generating submodule and a request sending submodule;
  • the request generation submodule is configured to generate an invocation request for invoking the i th verification step, where the invocation request carries the ciphertext information corresponding to the i th verification step sent by the server ;
  • the request sending submodule is configured to send the call request to the server
  • the ciphertext information is obtained by the server encrypting the unencrypted information by using a private key
  • the unencrypted information includes association information of the terminal to be verified and a step number corresponding to the ith verification step;
  • the unencrypted information includes association information of the to-be-verified terminal; when i ⁇ 2, the unencrypted information includes association information of the to-be-verified terminal and the i-th successfully invoked - 1 step number corresponding to the verification step.
  • the device further includes:
  • An account obtaining module configured to acquire a user account associated with the terminal to be verified
  • An account sending module configured to send the user account to the server
  • the result return module is configured to receive a verification result returned by the server when querying the verification result corresponding to the user account.
  • an anti-counterfeiting verification apparatus including:
  • a memory for storing executable instructions of the processor
  • processor is configured to:
  • the ith verification step being a verification step arranged in a predetermined order among all n verification steps for verifying the terminal to be verified, 1 ⁇ i ⁇ n;
  • the ith verification step is performed when the call request is a call request initiated according to the ciphertext information corresponding to the ith verification step;
  • the failed verification result is sent to the to-be-verified terminal;
  • the successful verification result is sent to the to-be-verified terminal.
  • an anti-counterfeiting verification apparatus including:
  • a memory for storing executable instructions of the processor
  • processor is configured to:
  • the ith verification step is a verification step arranged in a predetermined order among all n verification steps for verifying the terminal to be verified, 1 ⁇ i ⁇ n;
  • an anti-counterfeiting verification system comprising a terminal to be verified, and a server connected to the terminal to be verified via a wireless network or a wired network;
  • the server includes the anti-counterfeiting verification device according to the third aspect, wherein the to-be-verified terminal includes the anti-counterfeiting verification device according to the fourth aspect;
  • the server includes the anti-counterfeiting verification device according to the fifth aspect, and the to-be-verified terminal includes the anti-counterfeiting verification device according to the sixth aspect.
  • the ciphertext information corresponding to the ith verification step is generated by the server, and the ciphertext information is sent to the client, and the server sends the ciphertext information sent by the terminal to be verified.
  • the i-th verification step is performed when it is determined that the invocation request is based on the invoking request initiated by the ciphertext information corresponding to the i-th verification step; and the forgery existing in the background art is solved.
  • FIG. 1 is a schematic diagram of an implementation environment involved in various embodiments of the present disclosure, according to an exemplary embodiment
  • FIG. 2 is a flowchart of an anti-counterfeiting verification method according to an exemplary embodiment
  • FIG. 3 is a flowchart of an anti-counterfeiting verification method according to another exemplary embodiment
  • FIG. 4 is a flowchart of an anti-counterfeiting verification method according to still another exemplary embodiment
  • FIG. 5 is a block diagram of an anti-counterfeiting verification apparatus according to an exemplary embodiment
  • FIG. 6 is a block diagram of an anti-counterfeiting verification apparatus according to another exemplary embodiment
  • FIG. 7 is a block diagram of an anti-counterfeiting verification apparatus according to still another exemplary embodiment.
  • FIG. 8 is a block diagram of an anti-counterfeiting verification apparatus according to still another exemplary embodiment
  • FIG. 9 is a block diagram of an anti-counterfeiting verification system, according to an exemplary embodiment.
  • FIG. 10 is a block diagram of an apparatus, according to an exemplary embodiment
  • FIG. 11 is a block diagram of an apparatus, according to an exemplary embodiment.
  • FIG. 1 is a schematic diagram of an implementation environment involved in various embodiments of the present disclosure, including an to-be-verified terminal 120 and a server 140, according to an exemplary embodiment. among them:
  • the terminal to be verified 120 may be a mobile phone, a tablet computer, an e-book reader, an MP3 (Moving Picture Experts Group Audio Layer III) player, and an MP4 (Moving Picture Experts Group Audio Layer IV) motion picture. Experts compress standard audio layers 4) players, smart TVs, and more.
  • the terminal to be verified 120 and the server 140 can be connected through a wired network or a wireless network.
  • Server 140 can be a server, or a cluster of servers consisting of several servers, or a cloud computing service center.
  • the client to be verified has a client for performing the anti-counterfeiting verification method provided by the embodiment of the present disclosure.
  • the client may also run in other terminal devices connected to the terminal 120 to be verified.
  • the client runs in a computer, and the computer can be connected to the terminal to be verified 120 through a USB (Universal Serial Bus) data line, a wired network, or a wireless network, and acquires information about the terminal 120 to be verified.
  • USB Universal Serial Bus
  • FIG. 2 is a flowchart of an anti-counterfeiting verification method according to an exemplary embodiment. This embodiment is exemplified by applying the anti-counterfeiting verification method to a server.
  • the anti-counterfeiting verification method can include the following steps:
  • step 202 ciphertext information corresponding to the ith verification step is generated, and the ith verification step is a verification step arranged in a predetermined order among all n verification steps for verifying the terminal to be verified, 1 ⁇ i ⁇ n.
  • step 204 ciphertext information is sent to the terminal to be verified.
  • step 206 a call request sent by the terminal to be verified for invoking the ith verification step is received.
  • step 208 the i-th verification step is performed when the invocation request is an invocation request initiated based on the ciphertext information corresponding to the i-th verification step.
  • step 212 when the verification of the i-th verification step fails, the failed verification result is sent to the terminal to be verified.
  • the anti-counterfeiting verification method generates the ciphertext information corresponding to the i-th verification step and sends the ciphertext to the client before the server performs the verification of the ith verification step.
  • the server executes the first request when determining that the call request is based on the ciphertext information corresponding to the ith verification step.
  • i verification step solves the problem of low verification success rate caused by forgery application in the background art; since the forged client cannot meet the above conditions for triggering the execution of the i-th verification step, and thus cannot successfully pass the verification process , improved verification success rate.
  • FIG. 3 is a flowchart of an anti-counterfeiting verification method according to another exemplary embodiment.
  • the anti-counterfeiting verification method is applied to a terminal to be verified or another terminal device connected to the terminal to be verified.
  • the anti-counterfeiting verification method can include the following steps:
  • step 302 the ciphertext information corresponding to the ith verification step sent by the server is received, and the ith verification step is a verification step arranged in a predetermined order among all n verification steps for verifying the terminal to be verified. , 1 ⁇ i ⁇ n.
  • step 304 a call request for invoking the ith verification step is sent to the server based on the ciphertext information.
  • step 306 the verification result sent by the server indicating failure or success is received.
  • the anti-counterfeiting verification method receives the ciphertext information corresponding to the ith verification step sent by the server to be verified, and sends the ith authentication step to the server according to the ciphertext information.
  • Calling the request so that the server determines the verification of the terminal to be verified according to the above call request, and feeds back the verification result to the terminal to be verified; solves the problem that the verification success rate caused by the forged application in the background art is low;
  • the client cannot meet the above conditions for triggering the execution of the ith verification step, and thus fails to successfully pass the verification process, thereby improving the verification success rate.
  • FIG. 4 is a flowchart of an anti-counterfeiting verification method according to still another exemplary embodiment. This embodiment is exemplified by the anti-counterfeiting verification method applied to the implementation environment shown in FIG. 1 .
  • the anti-counterfeiting verification method can include the following steps:
  • step 401 the terminal to be verified acquires the associated information of the local end.
  • the user can perform security verification on the authentication terminal by means of the client and the server.
  • the user can download and install the client directly in the terminal to be verified, or download and install the client in other terminal devices.
  • the terminal device is connected to the terminal to be verified through a USB data line, a wireless network, or a wired network. In this embodiment, only the client is installed in the terminal to be verified for illustration.
  • the client first obtains the association information of the terminal to be verified.
  • the association information may be a unique identifier of the terminal to be verified, such as an IMEI (International Mobile Equipment Identity) number.
  • IMEI International Mobile Equipment Identity
  • step 402 the terminal to be verified sends the association information of the local end to the server.
  • the server receives the association information sent by the terminal to be verified.
  • step 403 the server generates ciphertext information corresponding to the i-th verification step.
  • the i-th verification step is a verification step arranged in a predetermined order among all n verification steps for verifying the terminal to be verified, 1 ⁇ i ⁇ n.
  • the server presets n verification steps, and the verification terminal is verified by the n verification steps.
  • the n verification steps are arranged in a predetermined order, and the predetermined order may be set to only one item, or may be set to multiple items.
  • the predetermined order corresponding to the first to fourth verification steps may be only one item: the verification step with step number 1 ⁇ the verification step with step number 2 ⁇ the step number is 3 verification step ⁇ The verification step with step number 4 is used.
  • the predetermined order corresponding to the first to fifth verification steps may be two, wherein the first predetermined order is: the verification step with step number 1 and the verification step with step number 2 ⁇ Step number is 3 verification step ⁇ verification step with step number 4 ⁇ verification step with step number 5; second order is: verification step with step number 1 ⁇ verification step with step number 2 ⁇ step number is 4 Verification Step ⁇ Step Number 3 Verification Step ⁇ Step Number 5 Verification Step.
  • the server before the server performs any verification step to verify the verification terminal, the server first needs to verify the authenticity of the client running in the verification terminal by means of the ciphertext information to prevent forgery.
  • the client does not invoke the verification step in a predetermined order or skips some verification steps to obtain a successful verification result from the server.
  • the server can generate ciphertext information in the following manner:
  • the server encrypts the unencrypted information by the private key to obtain the ciphertext information corresponding to the i-th verification step.
  • the unencrypted information may include the following two possible implementations:
  • the unencrypted information includes the association information of the terminal to be verified and the step number corresponding to the i-th verification step.
  • the unencrypted information includes association information of the terminal to be verified; when i ⁇ 2, the unencrypted information includes association information of the terminal to be verified and the i th - 1 step number corresponding to the verification step.
  • step 404 the server sends ciphertext information to the terminal to be verified.
  • the terminal to be verified receives the ciphertext information sent by the server.
  • step 405 the to-be-verified terminal sends a call request for invoking the i-th verification step to the server according to the ciphertext information.
  • This step can include the following two substeps:
  • a call request is generated for invoking an ith verification step, where the call request carries ciphertext information corresponding to the ith verification step sent by the server.
  • the terminal to be verified After receiving the ciphertext information, the terminal to be verified does not need to perform any processing on the ciphertext information, and only needs to carry the ciphertext information in the call request for invoking the ith verification step.
  • the server can pre-configure different API (Application Programming Interface) ports for different verification steps.
  • API Application Programming Interface
  • the number of the API port corresponding to the verification step with step number 1 is 41
  • the number of the API port corresponding to the verification step with step number 2 is 42
  • the number of the API port corresponding to the verification step with step number 3 is 43. Wait.
  • the server may also determine the actual step number of the verification step invoked by the client according to the number of the API port called by the client.
  • the server receives the call request sent by the terminal to be verified for invoking the ith verification step.
  • step 406 the server performs an ith verification step when the invocation request is a call request initiated based on the ciphertext information corresponding to the i-th verification step.
  • the server Before performing the ith verification step, the server needs to check the call request sent by the verification terminal, and check whether the call request is initiated by the terminal to be verified according to the ciphertext information corresponding to the i-th verification step, thereby discriminating Verify the authenticity of the client running in the terminal, preventing the criminals from falsifying the client to obtain a successful verification result.
  • This step can include the following sub-steps:
  • the client running in the terminal to be verified does not send the call request carrying the ciphertext information to the server according to the preset verification process. In this way, it can be determined that the client may be a fake client. In this case, the server can directly generate a failed verification result.
  • the ciphertext information is read.
  • the ciphertext information is decrypted by the private key to obtain unencrypted information.
  • the ciphertext information is obtained by the server encrypting the unencrypted information by the private key, the ciphertext information can only be decrypted by the server itself. In other words, any application or device other than the server cannot forge and change the above ciphertext information to ensure that the server verifies the accuracy of the call request.
  • the ciphertext information may be forged ciphertext information, which may be a forged client attempting to falsify unencrypted information.
  • the step number included in the skips the verification of some verification steps. In this case, the server can directly generate a failed verification result.
  • the step number corresponding to the i-th verification step is determined according to the information content of the unencrypted information.
  • the step number corresponding to the i-th verification step included in the unencrypted information is read; or the server reads the i-1th verification step that is successfully called in the unencrypted information.
  • the step number is determined, and the step number corresponding to the i-th verification step is determined according to the step number corresponding to the i-1th verification step and the predetermined order.
  • the server may determine the actual step number of the call request according to the number of the API port that is called when the terminal to be verified sends the call request, and then the actual step number corresponding to the ith verification step determined after decryption.
  • the step numbers are compared to check if the two match.
  • the ith verification step is performed.
  • the server may directly generate a failed verification result. In this way, it is possible to largely exclude the possibility that the criminals attempt to complete the verification of the n verification steps by skipping some verification steps or falsifying the parameters of the terminal to be verified, thereby obtaining a successful verification result.
  • the server may also carry the time information in the unencrypted information when generating the ciphertext information.
  • the time information is used for controlling the time at which the verification terminal sends the call request.
  • the time information may be a timestamp corresponding to the time when the server generates the ciphertext information, or may be the timestamp corresponding to the time when the server receives the call request at the latest.
  • the server needs to perform the following steps before performing the ith verification step:
  • the unencrypted information further includes time information
  • the time information included in the unencrypted information is read.
  • the server performs the ith verification step to verify the terminal to be verified.
  • the server can verify the verification terminal from different angles through different verification steps.
  • the ith verification step may include the following different implementation manners:
  • the server verifies the verification terminal according to the configuration parameter of the terminal to be verified.
  • the configuration parameter may include at least one of a CPU (Central Processing Unit) serial number, a Bluetooth serial number, a sensor model, a screen resolution, a screen pixel density, and a camera pixel.
  • the server may compare the configuration parameters of the terminal to be verified and the configuration parameters of the authentic terminal having the same model as the terminal to be verified, thereby determining whether the terminal to be verified is genuine.
  • the terminal to be verified may send the configuration parameter together when sending the call request to the server, or may send the configuration parameter to the server before sending the call request to the server, and may also send the call request to the server.
  • the configuration parameter is not specifically limited in this embodiment.
  • the server verifies the verification terminal according to the performance parameter of the terminal to be verified.
  • the performance parameter may include at least one of charging time, talk time, call quality, standby time, signal receiving capability, and signal receiving sensitivity.
  • the server may compare the performance parameter of the terminal to be verified and the performance parameter of the authentic terminal having the same model as the terminal to be verified, thereby determining whether the terminal to be verified is genuine.
  • the terminal to be verified may send the performance parameter together when sending the call request to the server, or may send the performance parameter to the server before sending the call request to the server, and may also send the performance parameter to the server after sending the call request to the server.
  • This embodiment is not specifically limited.
  • the server verifies the terminal to be verified according to the basic information of the terminal to be verified and the order database.
  • the order database contains basic information of at least one terminal.
  • the basic information may include at least one of a unique identifier of the terminal, a CPU serial number, a Bluetooth serial number, a wireless network card address, a MAC (Media Access Control) address, and a device serial number.
  • the unique identifier of the terminal is usually the IMEI number.
  • This step can include:
  • the terminal to be verified is considered to be a fake.
  • the terminal to be verified may send the basic information together when sending the call request to the server, or may send basic information to the server before sending the call request to the server, and may also send basic information to the server after sending the call request to the server.
  • This embodiment is not specifically limited.
  • the server verifies the terminal to be verified according to the geographical location and the unique identifier corresponding to the terminal to be verified.
  • the geographic location of the terminal to be verified may be automatically sent to the server by the terminal to be verified, or may be obtained by the server according to the IP (Internet Protocol) address corresponding to the terminal to be verified.
  • IP Internet Protocol
  • the unique identifier is usually the IMEI number.
  • This step can include:
  • the predetermined condition refers to a call request sent by a terminal to be verified that receives a unique identifier from a different geographic location but has the same unique identifier as the terminal to be verified within a predetermined time period.
  • a terminal to be verified having the same unique identifier exists in a short time from a different geographical location (the different geographical location refers to a plurality of geographically distant geographical locations, such as different cities)
  • a call request is sent to the server due to
  • a unique identifier corresponds to only one terminal, which means that it is located At most one terminal in the terminal to be verified in different geographical locations is genuine.
  • the server may push the prompt information to the to-be-verified terminal located in different geographical locations, where the prompt information is used to prompt the user that the terminal purchased by the user may be a fake, and may request the user to go.
  • the after-sales service center conducts further verification.
  • the process of verifying the terminal to be authenticated by the server through the (i+1)th verification step is the same as the process of verifying the terminal to be verified by the server in step 403 to step 406.
  • step 408 the server generates a verification result.
  • the server sends the failed verification result to the terminal to be verified.
  • the successful verification result is sent to the terminal to be verified.
  • the terminal to be verified successfully passes the verification of all the n verification steps.
  • the configuration parameters, performance parameters, basic information, and geographic location of the terminal to be verified have met the requirements of the authenticity, and the server sends the successful verification result to be verified. terminal.
  • the terminal to be verified needs to satisfy the following conditions:
  • the terminal to be verified and the server complete all n verification steps in a predetermined order
  • the terminal to be verified successfully passes the verification of the verification step.
  • the terminal to be verified may be considered to be a fake or a suspected imitation.
  • step 409 the server sends the verification result to the terminal to be verified.
  • the terminal to be verified receives the verification result sent by the server.
  • step 410 the terminal to be verified displays the verification result.
  • the terminal to be verified After receiving the verification result, the terminal to be verified displays the verification result to inform the user whether the terminal to be verified that is purchased is genuine.
  • the terminal and the server can also perform the following steps interactively:
  • step 411 the terminal to be verified acquires a user account associated with the terminal to be verified.
  • the user account is an account that the user has applied in advance to log in to the server.
  • the user account can be a cloud service.
  • Account number The terminal to be verified and the user account are owned by the user, and the two have an association relationship.
  • step 412 the terminal to be verified sends a user account to the server.
  • the terminal to be verified may send a user account to the server actively, or may send a user account to the server after receiving the account obtaining instruction sent by the server.
  • the server may send an account acquisition indication to the terminal to be verified when the terminal to be verified passes the verification of all the n verification steps, that is, when the verification result corresponding to the terminal to be verified is authentic.
  • the server receives the user account sent by the terminal to be verified.
  • step 413 the server stores the correspondence between the user account and the final verification result.
  • the server After generating the verification result corresponding to the terminal to be verified, the server stores the correspondence between the user account and the verification result.
  • the server may also associate the user account with each information of the terminal to be verified, and the foregoing information may include association information, configuration parameters, performance parameters, basic information, unique identifier, and verification result of each verification step. One or more of them.
  • the server may directly store the correspondence between the user account and the verification result on the local end, or store the correspondence between the user account and the verification result in other servers.
  • the server may store the above correspondence in the cloud server.
  • step 414 the server receives a verification query request carrying a user account.
  • the server refers to a server that stores a correspondence between a user account and a verification result.
  • the user can use the user account and log in to the server through an application or browser in either terminal.
  • the terminal sends a verification query request carrying the user account to the server.
  • step 415 the server queries whether there is a verification result corresponding to the user account.
  • the server After receiving the verification query request carrying the user account, the server queries whether the local end stores the verification result corresponding to the received user account.
  • the possible query results include the following three:
  • the interaction between the terminal to be verified and the server associated with the user account is performed. Further, when the verification result is a successful verification result, it indicates that the terminal to be verified associated with the user account is authentic; when the verification result is a failed verification result, it indicates that the terminal to be verified associated with the user account is a fake or Suspected imitation.
  • the verification result corresponding to the user account does not exist in the server, it indicates that the verification step is not performed between the terminals to be verified associated with the user account, that is, the user may download the forgery in the previous verification process.
  • the client, the forged client bypasses the verification step of the server and directly returns the verification result to the user as authentic.
  • step 416 when there is a verification result, the server responds to the verification query request using the verification result.
  • the terminal After receiving the response corresponding to the verification query request, the terminal may provide the verification result to the user.
  • the server may further feed back information of the terminal to be verified to the terminal, where the information may include association information, configuration parameters, performance parameters, basic information, unique identifier, and verification result of each verification step. One or more of them.
  • the terminal to be verified bypasses the verification step, and the terminal to be verified is Imitation.
  • the terminal may provide the user with prompt information that the terminal to be verified is a fake.
  • the anti-counterfeiting verification method generates the ciphertext information corresponding to the i-th verification step and sends the ciphertext to the client before the server performs the verification of the ith verification step.
  • the server executes the first request when determining that the call request is based on the ciphertext information corresponding to the ith verification step.
  • i verification step solves the problem of low verification success rate caused by forgery application in the background art; since the forged client cannot meet the above conditions for triggering the execution of the i-th verification step, and thus cannot successfully pass the verification process , improved verification success rate.
  • the anti-counterfeiting verification method provided by the embodiment further eliminates some illegals by storing the final verification result corresponding to the user account on the server side by means of the user account associated with the terminal to be verified, and through a subsequent query mechanism.
  • the numerator bypasses the verification step of the server by using the forged client, and directly feeds back the possibility that the verification result is genuine, and further improves the verification success rate of the anti-counterfeiting verification scheme provided by the present disclosure.
  • the client running in the terminal to be verified can be compiled by Native C++ for verification steps, and is reinforced by encrypting and compressing the code to minimize the maximum degree of protection.
  • the criminals simulate the verification step by means of decompilation or upload false parameters to the server.
  • FIG. 5 is a block diagram of an anti-counterfeiting verification apparatus, which may be implemented as part or all of a server by software, hardware, or a combination of both, according to an exemplary embodiment.
  • the anti-counterfeiting verification apparatus may include: a ciphertext generating module 510, a ciphertext sending module 520, a request receiving module 530, a verification executing module 540, a first sending module 550, and a second sending module 560.
  • the ciphertext generating module 510 is configured to generate ciphertext information corresponding to the ith verification step, where the ith verification step is one of the all n verification steps for verifying the terminal to be verified in a predetermined order Verification step, 1 ⁇ i ⁇ n.
  • the ciphertext sending module 520 is configured to send the ciphertext information to the to-be-verified terminal.
  • the request receiving module 530 is configured to receive a call request sent by the terminal to be verified to invoke the ith verification step.
  • the verification execution module 540 is configured to perform the ith verification step when the call request is a call request initiated according to the ciphertext information corresponding to the ith verification step.
  • the first sending module 550 is configured to send the failed verification result to the to-be-verified terminal when the ith verification step fails to verify.
  • the anti-counterfeiting verification apparatus generates the ciphertext information corresponding to the i-th verification step, and sends the ciphertext to the client, before the server performs the verification of the ith verification step.
  • the server executes the first request when determining that the call request is based on the ciphertext information corresponding to the ith verification step.
  • i verification step solves the problem of low verification success rate caused by forgery application in the background art; since the forged client cannot meet the above conditions for triggering the execution of the i-th verification step, and thus cannot successfully pass the verification process , improved verification success rate.
  • FIG. 6 is a block diagram of an anti-counterfeiting verification apparatus, which may be implemented as part or all of a server by software, hardware, or a combination of both, according to another exemplary embodiment.
  • the anti-counterfeiting verification apparatus may include: a ciphertext generating module 510, a ciphertext sending module 520, a request receiving module 530, a verification executing module 540, a first sending module 550, and a second sending module 560.
  • the ciphertext generating module 510 is configured to generate ciphertext information corresponding to the ith verification step, where the ith verification step is one of the all n verification steps for verifying the terminal to be verified in a predetermined order Verification step, 1 ⁇ i ⁇ n.
  • the ciphertext generating module 510 is further configured to encrypt the unencrypted information by using a private key to obtain ciphertext information corresponding to the ith verification step.
  • the unencrypted information includes the association information of the terminal to be verified and the step number corresponding to the i-th verification step, where 1 ⁇ i ⁇ n;
  • the unencrypted information includes association information of the to-be-verified terminal; when i ⁇ 2, the unencrypted information includes association information of the to-be-verified terminal and the i-th successfully invoked - 1 step number corresponding to the verification step.
  • the ciphertext sending module 520 is configured to send the ciphertext information to the to-be-verified terminal.
  • the request receiving module 530 is configured to receive a call request sent by the terminal to be verified to invoke the ith verification step.
  • the verification execution module 540 is configured to perform the ith verification step when the call request is a call request initiated according to the ciphertext information corresponding to the ith verification step.
  • the verification execution module 540 includes a ciphertext detection submodule 540a, a ciphertext reading submodule 540b, a ciphertext decryption submodule 540c, a number determination submodule 540d, a number detection submodule 540e, and a verification execution submodule 540f.
  • the ciphertext detection sub-module 540a is configured to detect whether the ciphertext information corresponding to the ith verification step is carried in the call request.
  • the ciphertext reading submodule 540b is configured to read the ciphertext information when the ciphertext information is carried.
  • the ciphertext decryption sub-module 540c is configured to decrypt the ciphertext information by using the private key to obtain the unencrypted information.
  • the number determining submodule 540d is configured to determine a step number corresponding to the ith verification step according to the information content of the unencrypted information.
  • the number detection sub-module 540e is configured to detect whether the actual step number of the call request call matches the step number corresponding to the i-th verification step.
  • the verification execution sub-module 540f is configured to execute the ith verification step when the actual step number matches the step number corresponding to the ith verification step.
  • the verification execution module 540 further includes: an information reading submodule 540g and a time detection submodule 540h.
  • the information reading submodule 540g is configured to read the time information included in the unencrypted information when the unencrypted information further includes time information.
  • the time detection sub-module 540h is configured to detect, according to the time information, whether a time at which the call request is received is within a valid period.
  • the verification execution sub-module 540f is further configured to: when the time when the call request is received is within the valid period, and the actual step number matches the step number corresponding to the i-th verification step, Performing the ith verification step.
  • the verification execution sub-module 540f includes: a first verification sub-module 540f1; and/or a second verification sub-module 540f2; and/or a third verification sub-module 540f3; and/or a fourth verification sub-module 540f4.
  • the first verification sub-module 540f1 is configured to verify the to-be-verified terminal according to the configuration parameter of the to-be-verified terminal when the i-th verification step is a configuration parameter verification step.
  • the second verification sub-module 540f2 is configured to verify the to-be-verified terminal according to the performance parameter of the to-be-verified terminal when the i-th verification step is a performance parameter verification step.
  • the third verification sub-module 540f3 is configured to, when the i-th verification step is an order verification step, verify the terminal to be verified according to the basic information of the terminal to be verified and the order database, the order
  • the database contains basic information about at least one terminal.
  • the third verification sub-module 540f3 is further configured to: in the order database, query whether there is basic information that matches basic information of the to-be-verified terminal; if there is a terminal with the to-be-verified terminal The basic information matches the basic information, and then it is determined that the ith verification step is successfully verified.
  • the fourth verification sub-module 540f4 is configured to verify the to-be-verified terminal according to the geographical location and the unique identifier corresponding to the to-be-verified terminal when the i-th verification step is a geographic location verification step.
  • the fourth verification submodule 540f4 is further configured to detect whether the terminal to be verified meets a predetermined schedule.
  • the condition that the predetermined condition is that the calling request is sent by the to-be-verified terminal that has received the same unique identifier from the different geographic location but has the same unique identifier in the predetermined time period; if the terminal to be verified does not meet the Determining the predetermined condition, determining that the ith verification step is successful.
  • the first sending module 550 is configured to send the failed verification result to the to-be-verified terminal when the ith verification step fails to verify.
  • the device further includes: a query receiving module 570, a result query module 580, and a request response module 590.
  • the query receiving module 570 is configured to receive a verification query request carrying a user account.
  • the result query module 580 is configured to query whether there is a verification result corresponding to the user account.
  • the request response module 590 is configured to respond to the verification query request using the verification result when the verification result is present.
  • the anti-counterfeiting verification apparatus generates the ciphertext information corresponding to the i-th verification step, and sends the ciphertext to the client, before the server performs the verification of the ith verification step.
  • the server executes the first request when determining that the call request is based on the ciphertext information corresponding to the ith verification step.
  • i verification step solves the problem of low verification success rate caused by forgery application in the background art; since the forged client cannot meet the above conditions for triggering the execution of the i-th verification step, and thus cannot successfully pass the verification process , improved verification success rate.
  • the anti-counterfeiting verification apparatus provided in this embodiment further eliminates some illegals by storing the final verification result corresponding to the user account on the server side by means of the user account associated with the terminal to be verified, and through a subsequent query mechanism.
  • the numerator bypasses the verification step of the server by using the forged client, and directly feeds back the possibility that the verification result is genuine, and further improves the verification success rate of the anti-counterfeiting verification scheme provided by the present disclosure.
  • FIG. 7 is a block diagram of an anti-counterfeiting verification apparatus, which may be implemented as a terminal to be verified or another terminal device connected to a terminal to be verified by software, hardware, or a combination of both, according to still another exemplary embodiment. Part or all.
  • the anti-counterfeiting verification apparatus may include: a ciphertext receiving module 710, a request sending module 720, and a result receiving module 730.
  • the ciphertext receiving module 710 is configured to receive the ciphertext information corresponding to the ith verification step sent by the server, where the ith verification step is used in a predetermined order for all the n verification steps for verifying the terminal to be verified.
  • a verification step of the arrangement 1 ⁇ i ⁇ n.
  • the request sending module 720 is configured to send a call request for invoking the ith verification step to the server according to the ciphertext information.
  • the result receiving module 730 is configured to receive a verification result sent by the server indicating that the failure or success is successful.
  • the anti-counterfeiting verification apparatus receives the ciphertext information corresponding to the i-th verification step sent by the server to be verified, and sends the ciphertext information to the server to invoke the ith verification step.
  • Calling the request so that the server determines the verification of the terminal to be verified according to the above call request, and feeds back the verification result to the terminal to be verified; solves the problem that the verification success rate caused by the forged application in the background art is low;
  • the client cannot meet the above conditions for triggering the execution of the ith verification step, and thus fails to successfully pass the verification process, thereby improving the verification success rate.
  • FIG. 8 is a block diagram of an anti-counterfeiting verification apparatus, which may be implemented as a terminal to be verified or other terminal device connected to a terminal to be verified by software, hardware, or a combination of both, according to still another exemplary embodiment. Part or all.
  • the anti-counterfeiting verification apparatus may include: a ciphertext receiving module 710, a request sending module 720, and a result receiving module 730.
  • the ciphertext receiving module 710 is configured to receive the ciphertext information corresponding to the ith verification step sent by the server, where the ith verification step is used in a predetermined order for all the n verification steps for verifying the terminal to be verified.
  • a verification step of the arrangement 1 ⁇ i ⁇ n.
  • the request sending module 720 is configured to send a call request for invoking the ith verification step to the server according to the ciphertext information.
  • the request sending module 720 includes: a request generating submodule 720a and a request sending submodule 720b.
  • the request generation sub-module 720a is configured to generate a call request for invoking the ith verification step, where the call request carries a ciphertext corresponding to the ith verification step sent by the server information.
  • the request sending submodule 720b is configured to send the call request to the server.
  • the ciphertext information is obtained by the server encrypting the unencrypted information by using a private key
  • the unencrypted information includes association information of the terminal to be verified and a step number corresponding to the ith verification step;
  • the unencrypted information includes association information of the to-be-verified terminal; when i ⁇ 2, the unencrypted information includes association information of the to-be-verified terminal and the i-th successfully invoked - 1 step number corresponding to the verification step.
  • the result receiving module 730 is configured to receive a verification result sent by the server indicating that the failure or success is successful.
  • the device further includes: an account obtaining module 740, an account sending module 750, and a result returning module 760.
  • the account obtaining module 740 is configured to acquire a user account associated with the terminal to be verified.
  • the account sending module 750 is configured to send the user account to the server.
  • the result returning module 760 is configured to receive the verification result returned by the server when querying the verification result corresponding to the user account.
  • the anti-counterfeiting verification apparatus receives the ciphertext information corresponding to the i-th verification step sent by the server to be verified, and sends the ciphertext information to the server to invoke the ith verification step.
  • Tune Using the request, so that the server determines the verification of the terminal to be verified according to the above call request, and feeds back the verification result to the terminal to be verified; solves the problem that the verification success rate caused by the forged application in the background art is low; due to the forged customer The terminal cannot meet the above conditions for triggering the execution of the i-th verification step, and thus cannot successfully pass the verification process, thereby improving the verification success rate.
  • the anti-counterfeiting verification apparatus provided in this embodiment further eliminates some illegals by storing the final verification result corresponding to the user account on the server side by means of the user account associated with the terminal to be verified, and through a subsequent query mechanism.
  • the numerator bypasses the verification step of the server by using the forged client, and directly feeds back the possibility that the verification result is genuine, and further improves the verification success rate of the anti-counterfeiting verification scheme provided by the present disclosure.
  • FIG. 9 is a block diagram of an anti-counterfeiting verification system including a server 500 and a terminal to be verified 700, according to an exemplary embodiment. among them:
  • the server 500 may include an anti-counterfeiting verification device that may be implemented as part or all of the server 500 by software, hardware, or a combination of both.
  • the anti-counterfeiting verification device may be an anti-counterfeiting verification device provided by the embodiment shown in FIG. 5 or FIG. 6.
  • the server 500 and the terminal to be verified 700 can be connected through a wired network or a wireless network.
  • the terminal to be verified 700 may include an anti-counterfeiting verification device, which may be implemented as part or all of the terminal to be verified 700 by software, hardware, or a combination of both.
  • the anti-counterfeiting verification device may be an anti-counterfeiting verification device provided by the embodiment shown in FIG. 7 or 8.
  • the anti-counterfeiting verification system generates the ciphertext information corresponding to the i-th verification step, and sends the ciphertext to the client, before the server performs the verification of the ith verification step.
  • the server executes the first request when determining that the call request is based on the ciphertext information corresponding to the ith verification step.
  • i verification step solves the problem of low verification success rate caused by forgery application in the background art; since the forged client cannot meet the above conditions for triggering the execution of the i-th verification step, and thus cannot successfully pass the verification process , improved verification success rate.
  • FIG. 10 is a block diagram of an apparatus 1000, according to an exemplary embodiment.
  • device 1000 can be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a gaming console, a tablet device, a medical device, a fitness device, a personal digital assistant, and the like.
  • apparatus 1000 can include one or more of the following components: processing component 1002, memory 1004, power component 1006, multimedia component 1008, audio component 1010, input/output (I/O) interface 1012, sensor component 1014, And a communication component 1016.
  • Processing component 1002 typically controls the overall operation of device 1000, such as with display, telephone calls, data communications, The operations associated with camera operations and recording operations.
  • Processing component 1002 can include one or more processors 1020 to execute instructions to perform all or part of the steps of the above described methods.
  • processing component 1002 can include one or more modules to facilitate interaction between component 1002 and other components.
  • processing component 1002 can include a multimedia module to facilitate interaction between multimedia component 1008 and processing component 1002.
  • the memory 1004 is configured to store various types of data to support operation at the device 1000. Examples of such data include instructions for any application or method operating on device 1000, contact data, phone book data, messages, pictures, videos, and the like.
  • the memory 1004 can be implemented by any type of volatile or non-volatile storage device, or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read only memory (EEPROM), erasable.
  • SRAM static random access memory
  • EEPROM electrically erasable programmable read only memory
  • EPROM Programmable Read Only Memory
  • PROM Programmable Read Only Memory
  • ROM Read Only Memory
  • Magnetic Memory Flash Memory
  • Disk Disk
  • Optical Disk Optical Disk
  • Power component 1006 provides power to various components of device 1000.
  • Power component 1006 can include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power for device 1000.
  • the multimedia component 1008 includes a screen between the device 1000 and a user that provides an output interface.
  • 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 input signals from the user.
  • the touch panel includes one or more touch sensors to sense touches, slides, and gestures on the touch panel. The touch sensor may sense not only the boundary of the touch or sliding action, but also the duration and pressure associated with the touch or slide operation.
  • the multimedia component 1008 includes a front camera and/or a rear camera. When the device 1000 is in an operation mode, such as a shooting mode or a video mode, the front camera and/or the rear camera can receive external multimedia data. Each front and rear camera can be a fixed optical lens system or have focal length and optical zoom capabilities.
  • the audio component 1010 is configured to output and/or input an audio signal.
  • the audio component 1010 includes a microphone (MIC) that is configured to receive an external audio signal when the device 1000 is in an operational mode, such as a call mode, a recording mode, and a voice recognition mode.
  • the received audio signal may be further stored in memory 1004 or transmitted via communication component 1016.
  • the audio component 1010 also includes a speaker for outputting an audio signal.
  • the I/O interface 1012 provides an interface between the processing component 1002 and the peripheral interface module, which may be a keyboard, a click wheel, a button, or the like. These buttons may include, but are not limited to, a home button, a volume button, a start button, and a lock button.
  • Sensor assembly 1014 includes one or more sensors for providing device 1000 with various aspects of state assessment.
  • sensor assembly 1014 can detect an open/closed state of device 1000, relative positioning of components, such as the display and keypad of device 1000, and sensor component 1014 can also detect changes in position of one component of device 1000 or device 1000. The presence or absence of contact by the user with the device 1000, the orientation of the device 1000 or acceleration/deceleration and temperature changes of the device 1000.
  • Sensor assembly 1014 can include a proximity sensor configured to detect the presence of nearby objects without any physical contact.
  • Sensor assembly 1014 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications.
  • the sensor assembly 1014 Acceleration sensors, gyroscope sensors, magnetic sensors, pressure sensors or temperature sensors can also be included.
  • Communication component 1016 is configured to facilitate wired or wireless communication between device 1000 and other devices.
  • the device 1000 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof.
  • communication component 1016 receives broadcast signals or broadcast associated information from an external broadcast management system via a broadcast channel.
  • the communication component 1016 also includes a near field communication (NFC) module to facilitate short range communication.
  • NFC near field communication
  • the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
  • RFID radio frequency identification
  • IrDA infrared data association
  • UWB ultra-wideband
  • Bluetooth Bluetooth
  • apparatus 1000 may be implemented by one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable A gate array (FPGA), a controller, a microcontroller, a microprocessor, or other electronic component is implemented for performing the anti-counterfeiting verification method on the terminal side to be verified in the embodiment shown in FIG. 3 or FIG. 4 above.
  • ASICs application specific integrated circuits
  • DSPs digital signal processors
  • DSPDs digital signal processing devices
  • PLDs programmable logic devices
  • FPGA field programmable A gate array
  • controller a controller
  • microcontroller a microcontroller
  • microprocessor or other electronic component is implemented for performing the anti-counterfeiting verification method on the terminal side to be verified in the embodiment shown in FIG. 3 or FIG. 4 above.
  • non-transitory computer readable storage medium comprising instructions, such as a memory 1004 comprising instructions executable by processor 1020 of apparatus 1000 to perform the above described FIG. 3 or FIG.
  • the anti-counterfeiting verification method on the terminal side to be verified in the embodiment is shown.
  • the non-transitory computer readable storage medium may be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device.
  • a non-transitory computer readable storage medium when the instructions in the storage medium are executed by a processor of the device 1000, enabling the device 1000 to perform the terminal side to be verified in the embodiment shown in FIG. 3 or FIG. Anti-counterfeiting verification method.
  • FIG. 11 is a block diagram of an apparatus 1100, according to an exemplary embodiment.
  • device 1100 can be provided as a server.
  • apparatus 1100 includes a processing component 1122 that further includes one or more processors, and memory resources represented by memory 1132 for storing instructions, such as applications, that are executable by processing component 1122.
  • An application stored in memory 1132 can include one or more modules each corresponding to a set of instructions.
  • the processing component 1122 is configured to execute instructions to perform the server-side anti-counterfeiting verification method in the embodiment shown in FIG. 2 or FIG. 4 described above.
  • the device 1100 can also include a power supply component 1126 configured to perform power management of the device 1100, a wired or wireless network interface 1150 configured to connect the device 1100 to the network, and an input/output (I/O) interface 1158.
  • the device 1100 can operate based on an operating system stored in the memory 1132, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM or the like.

Abstract

本公开是关于一种防伪验证方法、装置和系统,属于终端技术领域。所述方法包括:生成与第i个验证步骤对应的密文信息;向待验证终端发送密文信息;接收待验证终端发送的用于调用第i个验证步骤的调用请求;在调用请求是根据上述密文信息发起的时,执行第i个验证步骤;在第i个验证步骤验证成功且i≠n时,计算i=i+1并再次执行生成与第i个验证步骤对应的密文信息的步骤。解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高验证成功率。

Description

防伪验证方法、装置和系统
本申请基于申请号为201410348001.5、申请日为2014年7月21日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
技术领域
本公开涉及终端技术领域,特别涉及一种防伪验证方法、装置和系统。
背景技术
随着手机、平板以及智能电视等终端的普及,市场上也出现了大量的仿制品。这些仿制品无论从外观还是操作系统上都足以欺骗普通用户,使得用户难以辨别真伪。
在相关的防伪验证方法中,通过在待验证终端中下载并安装相关应用程序后,该应用程序可以在本地对待验证终端进行防伪验证。应用程序获取待验证终端的各项配置参数和性能参数,然后与数据库中存储的各项配置参数和性能参数进行匹配。若两者匹配基本一致,则可认为该待验证终端为正品,否则认为该待验证终端为仿制品。
公开人在实现本公开的过程中,发现上述技术至少存在如下缺陷:一些不法分子以通过伪造应用程序的方式,使得用户下载并安装伪造后的应用程序,该伪造后的应用程序可通过各种方式向用户反馈待验证终端为正品的验证结果。因此,上述技术仍然存在因伪造应用程序而导致的验证成功率低的问题。
发明内容
为了解决上述技术中存在的因伪造应用程序而导致的验证成功率低的问题,本公开实施例提供了一种防伪验证方法、装置和系统。所述技术方案如下:
根据本公开实施例的第一方面,提供了一种防伪验证方法,所述方法包括:
生成与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
向所述待验证终端发送所述密文信息;
接收所述待验证终端发送的用于调用所述第i个验证步骤的调用请求;
在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤;
在所述第i个验证步骤验证成功且i≠n时,计算i=i+1并执行所述生成与所述第i个验证步骤对应的密文信息的步骤;
在所述第i个验证步骤验证失败时,将失败的验证结果发送给所述待验证终端;
在所述第i个验证步骤验证成功且i=n时,将成功的验证结果发送给所述待验证终端。
可选的,所述生成与第i个验证步骤对应的密文信息,包括:
通过私有密钥对未加密信息进行加密得到与所述第i个验证步骤对应的密文信息;
其中,当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
可选的,所述在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤,包括:
检测所述调用请求中是否携带有与所述第i个验证步骤对应的密文信息;
若携带有所述密文信息,则读取所述密文信息;
通过所述私有密钥对所述密文信息进行解密得到所述未加密信息;
根据所述未加密信息的信息内容确定所述第i个验证步骤对应的步骤编号;
检测所述调用请求调用的实际步骤编号是否与所述第i个验证步骤对应的步骤编号相匹配;
若所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配,则执行所述第i个验证步骤。
可选的,所述在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤,还包括:
当所述未加密信息还包括时间信息时,读取所述未加密信息中包括的所述时间信息;
根据所述时间信息检测接收到所述调用请求的时刻是否处于有效时段内;
若接收到所述调用请求的时刻处于所述有效时段内,且所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配,则执行所述第i个验证步骤。
可选的,所述执行所述第i个验证步骤,包括:
在所述第i个验证步骤是配置参数验证步骤时,根据所述待验证终端的配置参数对所述待验证终端进行验证;
或者,
在所述第i个验证步骤是性能参数验证步骤时,根据所述待验证终端的性能参数对所述待验证终端进行验证;
或者,
在所述第i个验证步骤是订单验证步骤时,根据所述待验证终端的基本信息和订单数据库对所述待验证终端进行验证,所述订单数据库中包含有至少一台终端的基本信息;
或者,
在所述第i个验证步骤是地理位置验证步骤时,根据所述待验证终端对应的地理位置和唯一标识对所述待验证终端进行验证。
可选的,所述根据所述待验证终端的基本信息和订单数据库对所述待验证终端进行验证,包括:
在所述订单数据库中查询是否存在与所述待验证终端的基本信息相匹配的基本信息;
若存在与所述待验证终端的基本信息相匹配的基本信息,则确定所述第i个验证步骤验证成功。
可选的,所述根据所述待验证终端对应的地理位置和唯一标识对所述待验证终端进行验证,包括:
检测所述待验证终端是否符合预定条件,所述预定条件是指在预定时段内,接收到来自不同的地理位置但与所述待验证终端具有相同的唯一标识的待验证终端发送的调用请求;
若所述待验证终端不符合所述预定条件,则确定所述第i个验证步骤验证成功。
可选的,所述方法还包括:
接收携带有用户账号的验证查询请求;
查询是否存在与所述用户账号对应的验证结果;
当存在所述验证结果时,使用所述验证结果对所述验证查询请求进行响应。
根据本公开实施例的第二方面,提供了一种防伪验证方法,所述方法包括:
接收服务器发送的与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求;
接收所述服务器发送的指示失败或成功的验证结果。
可选的,所述根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求,包括:
生成用于调用所述第i个验证步骤的调用请求,所述调用请求中携带有所述服务器发送的与所述第i个验证步骤对应的密文信息;
向所述服务器发送所述调用请求;
其中,所述密文信息是所述服务器通过私有密钥对未加密信息进行加密得到的;
当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
可选的,所述方法还包括:
获取与所述待验证终端关联的用户账号;
向所述服务器发送所述用户账号;
接收所述服务器在查询到与所述用户账号对应的验证结果时返回的验证结果。
根据本公开实施例的第三方面,提供了一种防伪验证装置,所述装置包括:
密文生成模块,被配置为生成与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
密文发送模块,被配置为向所述待验证终端发送所述密文信息;
请求接收模块,被配置为接收所述待验证终端发送的用于调用所述第i个验证步骤的调用请求;
验证执行模块,被配置为在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤;
所述密文生成模块,还被配置为在所述第i个验证步骤验证成功且i≠n时,计算i=i+1并执行所述生成与所述第i个验证步骤对应的密文信息的步骤;
第一发送模块,被配置为在所述第i个验证步骤验证失败时,将失败的验证结果发送给所述待验证终端;
第二发送模块,被配置为在所述第i个验证步骤验证成功且i=n时,将成功的验证结果发送给所述待验证终端。
可选的,所述密文生成模块,还被配置为通过私有密钥对未加密信息进行加密得到与所述第i个验证步骤对应的密文信息;
其中,当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
可选的,所述验证执行模块,包括:密文检测子模块、密文读取子模块、密文解密子模块、编号确定子模块、编号检测子模块和验证执行子模块;
所述密文检测子模块,被配置为检测所述调用请求中是否携带有与所述第i个验证步骤对应的密文信息;
所述密文读取子模块,被配置为当携带有所述密文信息时,读取所述密文信息;
所述密文解密子模块,被配置为通过所述私有密钥对所述密文信息进行解密得到所述未加密信息;
所述编号确定子模块,被配置为根据所述未加密信息的信息内容确定所述第i个验证步骤对应的步骤编号;
所述编号检测子模块,被配置为检测所述调用请求调用的实际步骤编号是否与所述第i个验证步骤对应的步骤编号相匹配;
所述验证执行子模块,被配置为当所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配时,则执行所述第i个验证步骤。
可选的,所述验证执行模块,还包括:信息读取子模块和时间检测子模块;
所述信息读取子模块,被配置为当所述未加密信息还包括时间信息时,读取所述未加密信息中包括的所述时间信息;
所述时间检测子模块,被配置为根据所述时间信息检测接收到所述调用请求的时刻是否处于有效时段内;
所述验证执行子模块,还被配置为当接收到所述调用请求的时刻处于所述有效时段内,且所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配时,执行所述第i个验证步骤。
可选的,所述验证执行子模块,包括:第一验证子模块;和/或,第二验证子模块;和/或,第三验证子模块;和/或,第四验证子模块;
所述第一验证子模块,被配置为在所述第i个验证步骤是配置参数验证步骤时,根据所述待验证终端的配置参数对所述待验证终端进行验证;
所述第二验证子模块,被配置为在所述第i个验证步骤是性能参数验证步骤时,根据所述待验证终端的性能参数对所述待验证终端进行验证;
所述第三验证子模块,被配置为在所述第i个验证步骤是订单验证步骤时,根据所述待验证终端的基本信息和订单数据库对所述待验证终端进行验证,所述订单数据库中包含有至少一台终端的基本信息;
所述第四验证子模块,被配置为在所述第i个验证步骤是地理位置验证步骤时,根据所述待验证终端对应的地理位置和唯一标识对所述待验证终端进行验证。
可选的,所述第三验证子模块,还被配置为在所述订单数据库中查询是否存在与所述待验证终端的基本信息相匹配的基本信息;若存在与所述待验证终端的基本信息相匹配的基本信息,则确定所述第i个验证步骤验证成功。
可选的,所述第四验证子模块,还被配置为检测所述待验证终端是否符合预定条件,所述预定条件是指在预定时段内,接收到来自不同的地理位置但与所述待验证终端具有相同的唯一标识的待验证终端发送的调用请求;若所述待验证终端不符合所述预定条件,则确定所述第i个验证步骤验证成功。
可选的,所述装置还包括:
查询接收模块,被配置为接收携带有用户账号的验证查询请求;
结果查询模块,被配置为查询是否存在与所述用户账号对应的验证结果;
请求响应模块,被配置为当存在所述验证结果时,使用所述验证结果对所述验证查询请求进行响应。
根据本公开实施例的第四方面,提供了一种防伪验证装置,所述装置包括:
密文接收模块,被配置为接收服务器发送的与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
请求发送模块,被配置为根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求;
结果接收模块,被配置为接收所述服务器发送的指示失败或成功的验证结果。
可选的,所述请求发送模块,包括:请求生成子模块和请求发送子模块;
所述请求生成子模块,被配置为生成用于调用所述第i个验证步骤的调用请求,所述调用请求中携带有所述服务器发送的与所述第i个验证步骤对应的密文信息;
所述请求发送子模块,被配置为向所述服务器发送所述调用请求;
其中,所述密文信息是所述服务器通过私有密钥对未加密信息进行加密得到的;
当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
可选的,所述装置还包括:
账号获取模块,被配置为获取与所述待验证终端关联的用户账号;
账号发送模块,被配置为向所述服务器发送所述用户账号;
结果返回模块,被配置为接收所述服务器在查询到与所述用户账号对应的验证结果时返回的验证结果。
根据本公开实施例的第五方面,提供了一种防伪验证装置,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
生成与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
向所述待验证终端发送所述密文信息;
接收所述待验证终端发送的用于调用所述第i个验证步骤的调用请求;
在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤;
在所述第i个验证步骤验证成功且i≠n时,计算i=i+1并执行所述生成与所述第i个验证步骤对应的密文信息的步骤;
在所述第i个验证步骤验证失败时,将失败的验证结果发送给所述待验证终端;
在所述第i个验证步骤验证成功且i=n时,将成功的验证结果发送给所述待验证终端。
根据本公开实施例的第六方面,提供了一种防伪验证装置,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
接收服务器发送的与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求;
接收所述服务器发送的指示失败或成功的验证结果。
根据本公开实施例的第七方面,提供了一种防伪验证系统,所述系统包括待验证终端,以及与所述待验证终端通过无线网络或者有线网络相连的服务器;
所述服务器包括如第三方面所述的防伪验证装置,所述待验证终端包括如第四方面所述的防伪验证装置;
或者,
所述服务器包括如第五方面所述的防伪验证装置,所述待验证终端包括如第六方面所述的防伪验证装置。
本公开实施例提供的技术方案可以包括以下有益效果:
通过服务器在执行第i个验证步骤对待验证终端进行验证之前,生成与第i个验证步骤对应的密文信息,向客户端发送上述密文信息,服务器在接收到待验证终端发送的用于调用第i个验证步骤的调用请求后,在确定该调用请求是根据与第i个验证步骤对应的密文信息发起的调用请求时才执行第i个验证步骤;解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高了验证成功率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的本公开各个实施例所涉及的一种实施环境的示意图;
图2是根据一示例性实施例示出的一种防伪验证方法的流程图;
图3是根据另一示例性实施例示出的一种防伪验证方法的流程图;
图4是根据再一示例性实施例示出的一种防伪验证方法的流程图;
图5是根据一示例性实施例示出的一种防伪验证装置的框图;
图6是根据另一示例性实施例示出的一种防伪验证装置的框图;
图7是根据再一示例性实施例示出的一种防伪验证装置的框图;
图8是根据还一示例性实施例示出的一种防伪验证装置的框图;
图9是根据一示例性实施例示出的一种防伪验证系统的框图;
图10是根据一示例性实施例示出的一种装置的框图;
图11是根据一示例性实施例示出的一种装置的框图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的本公开各个实施例所涉及的一种实施环境的示意图,该实施环境包括待验证终端120和服务器140。其中:
待验证终端120可以是手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、智能电视等等。
待验证终端120与服务器140之间可以通过有线网络或者无线网络相连。
服务器140可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。
在一种可能的实现方式中,待验证终端120中运行有用于执行本公开实施例提供的防伪验证方法的客户端。
另外,在其它可能的实现方式中,客户端也可运行于与待验证终端120相连的其它终端设备中。比如,客户端运行于电脑中,而该电脑可通过USB(Universal Serial Bus,通用串行总线)数据线、有线网络或者无线网络与待验证终端120相连,并获取待验证终端120的各项信息。
图2是根据一示例性实施例示出的一种防伪验证方法的流程图,本实施例以该防伪验证方法应用于服务器中来举例说明。该防伪验证方法可以包括如下几个步骤:
在步骤202中,生成与第i个验证步骤对应的密文信息,该第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n。
在步骤204中,向待验证终端发送密文信息。
在步骤206中,接收待验证终端发送的用于调用第i个验证步骤的调用请求。
在步骤208中,在调用请求是根据与第i个验证步骤对应的密文信息发起的调用请求时,执行第i个验证步骤。
在步骤210中,在第i个验证步骤验证成功且i≠n时,计算i=i+1并执行上述生成与 第i个验证步骤对应的密文信息的步骤。
在步骤212中,在第i个验证步骤验证失败时,将失败的验证结果发送给待验证终端。
在步骤214中,在第i个验证步骤验证成功且i=n时,将成功的验证结果发送给待验证终端。
综上所述,本实施例提供的防伪验证方法,通过服务器在执行第i个验证步骤对待验证终端进行验证之前,生成与第i个验证步骤对应的密文信息,向客户端发送上述密文信息,服务器在接收到待验证终端发送的用于调用第i个验证步骤的调用请求后,在确定该调用请求是根据与第i个验证步骤对应的密文信息发起的调用请求时才执行第i个验证步骤;解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高了验证成功率。
图3是根据另一示例性实施例示出的一种防伪验证方法的流程图,本实施例以该防伪验证方法应用于待验证终端或者与待验证终端相连的其它终端设备中来举例说明。该防伪验证方法可以包括如下几个步骤:
在步骤302中,接收服务器发送的与第i个验证步骤对应的密文信息,该第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n。
在步骤304中,根据密文信息向服务器发送用于调用第i个验证步骤的调用请求。
在步骤306中,接收服务器发送的指示失败或成功的验证结果。
综上所述,本实施例提供的防伪验证方法,通过待验证终端接收服务器发送的与第i个验证步骤对应的密文信息,并根据密文信息向服务器发送用于调用第i个验证步骤的调用请求,以便服务器根据上述调用请求决策对待验证终端的验证,并向待验证终端反馈验证结果;解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高了验证成功率。
图4是根据再一示例性实施例示出的一种防伪验证方法的流程图,本实施例以该防伪验证方法应用于图1所示的实施环境中来举例说明。该防伪验证方法可以包括如下几个步骤:
在步骤401中,待验证终端获取本端的关联信息。
用户可借助于客户端和服务器对待验证终端进行防伪验证。用户可直接在待验证终端中下载并安装客户端,也可以在其它终端设备中下载并安装客户端。其中,当客户端安装于其它终端设备时,该终端设备与待验证终端通过USB数据线、无线网络或者有线网络相连。在本实施例中,仅以客户端安装于待验证终端中进行举例说明。
客户端首先获取待验证终端的关联信息。可选的,该关联信息可以是待验证终端的唯一标识,比如IMEI(International Mobile Equipment Identity,移动设备国际身份码)号码。
在步骤402中,待验证终端向服务器发送本端的关联信息。
对应地,服务器接收待验证终端发送的关联信息。
在步骤403中,服务器生成与第i个验证步骤对应的密文信息。
其中,第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n。服务器预先设定n个验证步骤,通过该n个验证步骤对待验证终端进行验证。该n个验证步骤按照预定次序排列,且该预定次序可以仅设定为一项,也可设定为多项。
比如,当n=4时,第1个至第4个验证步骤所对应的预定次序可以仅为一项:步骤编号为1的验证步骤→步骤编号为2的验证步骤→步骤编号为3验证步骤→步骤编号为4的验证步骤。
再比如,当n=5时,第1个至第5个验证步骤对应的预定次序可以为两项,其中第一项预定次序为:步骤编号为1的验证步骤→步骤编号为2的验证步骤→步骤编号为3验证步骤→步骤编号为4的验证步骤→步骤编号为5的验证步骤;第二项预定次序为:步骤编号为1的验证步骤→步骤编号为2的验证步骤→步骤编号为4验证步骤→步骤编号为3的验证步骤→步骤编号为5的验证步骤。
另外,在本公开实施例提供的防伪验证方案中,服务器在执行任一验证步骤对待验证终端进行验证之前,首先需要借助于密文信息对待验证终端中运行的客户端的真伪进行验证,防止伪造的客户端不按照预定次序调用验证步骤或者跳过某些验证步骤而从服务器端获取成功的验证结果。其中,服务器可通过如下方式生成密文信息:
服务器通过私有密钥对未加密信息进行加密得到与第i个验证步骤对应的密文信息。其中,未加密信息可以包括如下两种可能的实现方式:
在第一种可能的实现方式中,当1≤i≤n时,未加密信息包括待验证终端的关联信息和第i个验证步骤对应的步骤编号。
在第二种可能的实现方式中,当i=1时,未加密信息包括待验证终端的关联信息;当i≥2时,未加密信息包括待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
在步骤404中,服务器向待验证终端发送密文信息。
对应地,待验证终端接收服务器发送的密文信息。
在步骤405中,待验证终端根据密文信息向服务器发送用于调用第i个验证步骤的调用请求。
本步骤可以包括如下两个子步骤:
第一,生成用于调用第i个验证步骤的调用请求,该调用请求中携带有服务器发送的与第i个验证步骤对应的密文信息。
第二,向服务器发送调用请求。
待验证终端在接收到密文信息后,无需对密文信息进行任何处理,仅需在生成用于调用第i个验证步骤的调用请求时,将密文信息携带于其中。
另外,如果待验证终端中运行的是正版的客户端,客户端将会按照上述预定次序对n个验证步骤有选择性地、依次进行调用。服务器可以预先为不同的验证步骤配置不同的API(Application Programming Interface,应用程序编程接口)端口。比如,步骤编号为1的验证步骤对应的API端口的编号为41、步骤编号为2的验证步骤对应的API端口的编号为42、步骤编号为3的验证步骤对应的API端口的编号为43等等。客户端在向服务器发送用于调用不同的验证步骤的调用请求时,仅需调用服务器提供的不同API端口。服务器也可根据客户端调用的API端口的编号确定出客户端调用的验证步骤的实际步骤编号。
对应地,服务器接收待验证终端发送的用于调用第i个验证步骤的调用请求。
在步骤406中,在调用请求是根据与第i个验证步骤对应的密文信息发起的调用请求时,服务器执行第i个验证步骤。
服务器在执行第i个验证步骤之前,需要对待验证终端发来的调用请求进行检验,检验该调用请求是否为待验证终端根据与第i个验证步骤对应的密文信息发起的,以此辨别待验证终端中运行的客户端的真伪,防止不法分子通过伪造客户端以获得成功的验证结果。
本步骤可以包括如下几个子步骤:
第一,检测调用请求中是否携带有与第i个验证步骤对应的密文信息。
当调用请求中未携带有与第i个验证步骤对应的密文信息时,说明待验证终端中运行的客户端并未按照预先设定的验证流程向服务器发送携带有密文信息的调用请求,以此可以确定该客户端可能是伪造的客户端。在这种情况下,服务器可直接生成失败的验证结果。
第二,若携带有密文信息,则读取密文信息。
第三,通过私有密钥对密文信息进行解密得到未加密信息。
需要注意的是:由于密文信息是服务器通过私有密钥对未加密信息进行加密得到的,所以密文信息只有服务器自身才能够对其进行解密。换句话说,除服务器之外的其它任何应用程序或者设备均无法伪造、更改上述密文信息,以此确保服务器检验调用请求时的准确性。
比如,若调用请求中携带有密文信息,但服务器无法通过私有密钥对其进行解密,即可说明该密文信息是伪造的密文信息,可能是伪造的客户端试图通过伪造未加密信息中包含的步骤编号而跳过某些验证步骤的验证。在这种情况下,服务器可直接生成失败的验证结果。
第四,根据未加密信息的信息内容确定第i个验证步骤对应的步骤编号。
当服务器成功解密得到未加密信息时,读取未加密信息中包含的第i个验证步骤对应的步骤编号;或者,服务器读取未加密信息中包含的已成功调用的第i-1个验证步骤对应 的步骤编号,并根据第i-1个验证步骤对应的步骤编号和预定次序确定出第i个验证步骤对应的步骤编号。
第五,检测调用请求调用的实际步骤编号是否与第i个验证步骤对应的步骤编号相匹配。
在步骤405中已经介绍,服务器可根据待验证终端发送调用请求时调用的API端口的编号确定出调用请求调用的实际步骤编号,进而将实际步骤编号与解密后确定的第i个验证步骤对应的步骤编号进行比对,检测两者是否匹配。
第五,若实际步骤编号与第i个验证步骤对应的步骤编号相匹配,则执行第i个验证步骤。
另外,若实际步骤编号与第i个验证步骤对应的步骤编号不匹配,则可说明待验证终端并没有按照上述预定次序对验证步骤进行调用,服务器可直接生成失败的验证结果。这样,可以在很大程度上排除不法分子通过跳过某些验证步骤,或者伪造待验证终端的各项参数等手段,试图完成n个验证步骤的验证,进而获得成功的验证结果的可能性。
可选的,为了进一步强化对待验证终端发送的调用请求的检验机制,提高检验结果的准确性,服务器在生成上述密文信息时,还可将时间信息携带于未加密信息中。其中,时间信息用于对待验证终端发送调用请求的时间进行管控。时间信息可以是服务器生成密文信息的时刻所对应的时间戳,也可以是服务器最迟接收调用请求的时刻所对应的时间戳。
当未加密信息还包括时间信息时,服务器在执行第i个验证步骤之前,还需执行如下步骤:
1、当未加密信息还包括时间信息时,读取未加密信息中包括的时间信息。
2、根据时间信息检测接收到调用请求的时刻是否处于有效时段内。
3、若接收到调用请求的时刻处于有效时段内,且实际步骤编号与第i个验证步骤对应的步骤编号相匹配,则执行第i个验证步骤。
调用请求需要同时满足上述两项检测结果时,服务器才执行第i个验证步骤对待验证终端进行验证。
另外,服务器可通过不同的验证步骤从不同的角度对待验证终端进行验证。可选的,第i个验证步骤可以包括如下几种不同的实现方式:
1、在第i个验证步骤是配置参数验证步骤时,服务器根据待验证终端的配置参数对待验证终端进行验证。
其中,配置参数可以包括CPU(Central Processing Unit,中央处理器)序列号、蓝牙序列号、传感器型号、屏幕分辨率、屏幕像素密度以及摄像头像素中的至少一种。服务器可以将待验证终端的配置参数以及与待验证终端具有相同型号的正品终端的配置参数进行比对,以此确定待验证终端是否为正品。
另外,待验证终端可以在向服务器发送调用请求时将配置参数一并发送,也可以在向服务器发送调用请求之前向服务器发送配置参数,还可以在向服务器发送调用请求之后向 服务器发送配置参数,对此本实施例不作具体限定。
2、在第i个验证步骤是性能参数验证步骤时,服务器根据待验证终端的性能参数对待验证终端进行验证。
其中,性能参数可以包括充电时间、通话时间、通话质量、待机时间、信号接收能力以及信号接收灵敏度中的至少一种。服务器可以将待验证终端的性能参数以及与待验证终端具有相同型号的正品终端的性能参数进行比对,以此确定待验证终端是否为正品。
另外,待验证终端可以在向服务器发送调用请求时将性能参数一并发送,也可以在向服务器发送调用请求之前向服务器发送性能参数,还可以在向服务器发送调用请求之后向服务器发送性能参数,对此本实施例不作具体限定。
3、在第i个验证步骤是订单验证步骤时,服务器根据待验证终端的基本信息和订单数据库对待验证终端进行验证。
其中,订单数据库中包含有至少一台终端的基本信息。基本信息可以包括终端的唯一标识、CPU序列号、蓝牙序列号、无线网卡地址、MAC(Media Access Control,介质访问控制)地址以及设备序列号中的至少一种。终端的唯一标识通常为IMEI号码。
本步骤可以包括:
1、在订单数据库中查询是否存在与待验证终端的基本信息相匹配的基本信息。
2、若存在与待验证终端的基本信息相匹配的基本信息,则确定第i个验证步骤验证成功。
反之,若不存在与待验证终端的基本信息相匹配的基本信息,则确定第i个验证步骤验证失败,也即认为该待验证终端为仿制品。
另外,待验证终端可以在向服务器发送调用请求时将基本信息一并发送,也可以在向服务器发送调用请求之前向服务器发送基本信息,还可以在向服务器发送调用请求之后向服务器发送基本信息,对此本实施例不作具体限定。
4、在第i个验证步骤是地理位置验证步骤时,服务器根据待验证终端对应的地理位置和唯一标识对待验证终端进行验证。
其中,待验证终端对应的地理位置可以由待验证终端主动发送给服务器;也可以由服务器根据待验证终端所对应的IP(Internet Protocol,网络协议)地址自行获取。唯一标识通常为IMEI号码。
本步骤可以包括:
1、检测待验证终端是否符合预定条件。
2、若待验证终端不符合预定条件,则确定第i个验证步骤验证成功。
其中,预定条件是指在预定时段内,接收到来自不同的地理位置但与待验证终端具有相同的唯一标识的待验证终端发送的调用请求。当在短时间内存在具有相同的唯一标识的待验证终端从不同的地理位置(该不同的地理位置是指多个相距较远的地理位置,比如不同城市)向服务器发来调用请求时,由于一个唯一标识仅对应于一个终端,这就说明位于 不同的地理位置的待验证终端中最多仅有一个终端为正品。
因此,当待验证终端符合上述预定条件时,服务器可以向这些位于不同的地理位置的待验证终端推送提示信息,该提示信息用于提示用户其所购买的终端可能是仿制品,可以要求用户去售后服务中心进行进一步地验证。
在步骤407中,在第i个验证步骤验证成功且i≠n时,服务器计算i=i+1并执行上述生成与第i个验证步骤对应的密文信息的步骤。
在第i个验证步骤验证成功且i≠n时,服务器需要通过第i+1个验证步骤继续对待验证终端进行验证。此时,服务器计算i=i+1,并再次执行上述步骤403至步骤406,通过第i+1个验证步骤对待验证终端进行验证。
服务器通过第i+1个验证步骤对待验证终端进行验证的过程与上述步骤步骤403至步骤406中涉及的服务器通过第i个验证步骤对待验证终端进行验证的过程相同,不再赘述。
在步骤408中,服务器生成验证结果。
1、在第i个验证步骤验证失败时,将失败的验证结果发送给待验证终端。
此时,表明待验证终端的配置参数、性能参数、基本信息或者地理位置未达到正品的要求,服务器将失败的验证结果发送给待验证终端。
2、在第i个验证步骤验证成功且i=n时,将成功的验证结果发送给待验证终端。
此时,表明待验证终端成功通过了全部n个验证步骤的验证,待验证终端的配置参数、性能参数、基本信息以及地理位置均已达到正品的要求,服务器将成功的验证结果发送给待验证终端。
综上,通过本实施例提供的防伪验证方法,当验证结果确定出待验证终端为正品时,该待验证终端需要同时满足下述条件:
1、待验证终端与服务器按照预定次序完成了全部n个验证步骤;
2、对于每一个验证步骤,待验证终端成功调用该验证步骤;
3、对于每一个验证步骤,待验证终端成功通过该验证步骤的验证。
否则,即可认为该待验证终端为仿制品或者为疑似仿制品。
在步骤409中,服务器将验证结果发送给待验证终端。
对应地,待验证终端接收服务器发送的验证结果。
在步骤410中,待验证终端将验证结果进行展示。
待验证终端接收到验证结果后,将验证结果进行展示,以此告知用户其所购买的待验证终端是否为正品。
另外,为了进一步提高本公开提供的防伪验证方案的验证成功率,排除某些不法分子利用伪造的客户端而绕开服务器的验证步骤,直接向用户反馈最终验证结果为正品的可能性,待验证终端与服务器之间还可交互执行如下步骤:
在步骤411中,待验证终端获取与待验证终端关联的用户账号。
用户账号是用户预先申请的,用于登陆服务器的账号。比如,该用户账号可以是云服 务账号。待验证终端与用户账号均为用户所有,两者具有关联关系。
在步骤412中,待验证终端向服务器发送用户账号。
待验证终端可以主动向服务器发送用户账号,也可在接收到服务器发送的账号获取指示后向服务器发送用户账号。其中,服务器可以在待验证终端通过全部n个验证步骤的验证时,也即在确定待验证终端所对应的验证结果为正品时,向待验证终端发送账号获取指示。
对应地,服务器接收待验证终端发送的用户账号。
在步骤413中,服务器存储用户账号和最终验证结果之间的对应关系。
服务器在生成待验证终端对应的验证结果后,存储用户账号和验证结果之间的对应关系。可选的,服务器还可以将用户账号和待验证终端的各项信息进行关联存储,上述各项信息可以包括关联信息、配置参数、性能参数、基本信息、唯一标识以及每个验证步骤的验证结果中的一项或者多项。
另外,服务器可以直接将用户账号和验证结果之间的对应关系存储于本端,也可以将用户账号和验证结果之间的对应关系存储于其它服务器中。比如,服务器可以将上述对应关系存储于云服务器中。
在步骤414中,服务器接收携带有用户账号的验证查询请求。
该服务器是指存储有用户账号和验证结果之间的对应关系的服务器。用户可使用用户账号,并通过任一终端中的应用程序或者浏览器登录服务器。与此同时,终端向服务器发送携带有用户账号的验证查询请求。
在步骤415中,服务器查询是否存在与用户账号对应的验证结果。
服务器接收到携带有用户账号的验证查询请求后,查询本端是否存储有与接收到的用户账号对应的验证结果。
其中,可能的查询结果包括如下三种:
1、不存在与用户账号对应的验证结果;
2、存在与用户账号对应的验证结果且该验证结果为成功的验证结果;
3、存在与用户账号对应的验证结果且该验证结果为失败的验证结果。
若服务器中存在与用户账号对应的验证结果,则说明与该用户账号关联的待验证终端与服务器之间进行了上述验证步骤的交互。进一步地,当验证结果为成功的验证结果时,说明与该用户账号关联的待验证终端为正品;当验证结果为失败的验证结果时,说明与该用户账号关联的待验证终端为仿制品或者疑似仿制品。
若服务器中不存在与用户账号对应的验证结果,则说明与该用户账号关联的待验证终端之间并未进行上述验证步骤的交互,也即说明用户在之前的验证过程中,可能下载到了伪造的客户端,该伪造的客户端绕开了服务器的验证步骤,直接向用户反馈验证结果为正品。
在步骤416中,当存在验证结果时,服务器使用验证结果对验证查询请求进行响应。
终端在接收到对应于验证查询请求的响应后,可向用户提供验证结果。可选的,服务器还可将待验证终端的各项信息一并反馈给上述终端,该各项信息可以包括关联信息、配置参数、性能参数、基本信息、唯一标识以及每个验证步骤的验证结果中的一项或者多项。
另外,若终端未接收到对应于验证查询请求的响应,或者接收到的响应为服务器中不存在与用户账号对应的验证结果,则说明待验证终端绕开了上述验证步骤,该待验证终端为仿制品。在这种情况下,终端可向用户提供待验证终端为仿制品的提示信息。
综上所述,本实施例提供的防伪验证方法,通过服务器在执行第i个验证步骤对待验证终端进行验证之前,生成与第i个验证步骤对应的密文信息,向客户端发送上述密文信息,服务器在接收到待验证终端发送的用于调用第i个验证步骤的调用请求后,在确定该调用请求是根据与第i个验证步骤对应的密文信息发起的调用请求时才执行第i个验证步骤;解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高了验证成功率。
另外,本实施例提供的防伪验证方法,还通过借助于与待验证终端关联的用户账号,通过在服务器端存储与用户账号对应的最终验证结果,并通过后续的查询机制,排除了某些不法分子利用伪造的客户端而绕开服务器的验证步骤,直接向用户反馈验证结果为正品的可能性,进一步提高了本公开提供的防伪验证方案的验证成功率。
还需要说明的一点是:在实际的程序实现时,待验证终端中运行的客户端可采用Native C++进行验证步骤的编译,并通过对代码进行加密、压缩等加固技术进行加固,最大程度地防止不法分子通过反编译等手段模拟验证步骤或者向服务器上传虚假参数。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图5是根据一示例性实施例示出的一种防伪验证装置的框图,该防伪验证装置可以通过软件、硬件或者两者的结合实现成为服务器的部分或者全部。该防伪验证装置可以包括:密文生成模块510、密文发送模块520、请求接收模块530、验证执行模块540、第一发送模块550和第二发送模块560。
密文生成模块510,被配置为生成与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n。
密文发送模块520,被配置为向所述待验证终端发送所述密文信息。
请求接收模块530,被配置为接收所述待验证终端发送的用于调用所述第i个验证步骤的调用请求。
验证执行模块540,被配置为在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤。
所述密文生成模块510,还被配置为在所述第i个验证步骤验证成功且i≠n时,计算i=i+1并执行所述生成与所述第i个验证步骤对应的密文信息的步骤。
第一发送模块550,被配置为在所述第i个验证步骤验证失败时,将失败的验证结果发送给所述待验证终端。
第二发送模块560,被配置为在所述第i个验证步骤验证成功且i=n时,将成功的验证结果发送给所述待验证终端。
综上所述,本实施例提供的防伪验证装置,通过服务器在执行第i个验证步骤对待验证终端进行验证之前,生成与第i个验证步骤对应的密文信息,向客户端发送上述密文信息,服务器在接收到待验证终端发送的用于调用第i个验证步骤的调用请求后,在确定该调用请求是根据与第i个验证步骤对应的密文信息发起的调用请求时才执行第i个验证步骤;解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高了验证成功率。
图6根据另一示例性实施例示出的一种防伪验证装置的框图,该防伪验证装置可以通过软件、硬件或者两者的结合实现成为服务器的部分或者全部。该防伪验证装置可以包括:密文生成模块510、密文发送模块520、请求接收模块530、验证执行模块540、第一发送模块550和第二发送模块560。
密文生成模块510,被配置为生成与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n。
所述密文生成模块510,还被配置为通过私有密钥对未加密信息进行加密得到与所述第i个验证步骤对应的密文信息。
其中,当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
密文发送模块520,被配置为向所述待验证终端发送所述密文信息。
请求接收模块530,被配置为接收所述待验证终端发送的用于调用所述第i个验证步骤的调用请求。
验证执行模块540,被配置为在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤。
所述验证执行模块540,包括:密文检测子模块540a、密文读取子模块540b、密文解密子模块540c、编号确定子模块540d、编号检测子模块540e和验证执行子模块540f。
所述密文检测子模块540a,被配置为检测所述调用请求中是否携带有与所述第i个验证步骤对应的密文信息。
所述密文读取子模块540b,被配置为当携带有所述密文信息时,读取所述密文信息。
所述密文解密子模块540c,被配置为通过所述私有密钥对所述密文信息进行解密得到所述未加密信息。
所述编号确定子模块540d,被配置为根据所述未加密信息的信息内容确定所述第i个验证步骤对应的步骤编号。
所述编号检测子模块540e,被配置为检测所述调用请求调用的实际步骤编号是否与所述第i个验证步骤对应的步骤编号相匹配。
所述验证执行子模块540f,被配置为当所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配时,则执行所述第i个验证步骤。
可选的,所述验证执行模块540,还包括:信息读取子模块540g和时间检测子模块540h。
所述信息读取子模块540g,被配置为当所述未加密信息还包括时间信息时,读取所述未加密信息中包括的所述时间信息。
所述时间检测子模块540h,被配置为根据所述时间信息检测接收到所述调用请求的时刻是否处于有效时段内。
所述验证执行子模块540f,还被配置为当接收到所述调用请求的时刻处于所述有效时段内,且所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配时,执行所述第i个验证步骤。
所述验证执行子模块540f,包括:第一验证子模块540f1;和/或,第二验证子模块540f2;和/或,第三验证子模块540f3;和/或,第四验证子模块540f4。
所述第一验证子模块540f1,被配置为在所述第i个验证步骤是配置参数验证步骤时,根据所述待验证终端的配置参数对所述待验证终端进行验证。
所述第二验证子模块540f2,被配置为在所述第i个验证步骤是性能参数验证步骤时,根据所述待验证终端的性能参数对所述待验证终端进行验证。
所述第三验证子模块540f3,被配置为在所述第i个验证步骤是订单验证步骤时,根据所述待验证终端的基本信息和订单数据库对所述待验证终端进行验证,所述订单数据库中包含有至少一台终端的基本信息。
可选的,所述第三验证子模块540f3,还被配置为在所述订单数据库中查询是否存在与所述待验证终端的基本信息相匹配的基本信息;若存在与所述待验证终端的基本信息相匹配的基本信息,则确定所述第i个验证步骤验证成功。
所述第四验证子模块540f4,被配置为在所述第i个验证步骤是地理位置验证步骤时,根据所述待验证终端对应的地理位置和唯一标识对所述待验证终端进行验证。
可选的,所述第四验证子模块540f4,还被配置为检测所述待验证终端是否符合预定 条件,所述预定条件是指在预定时段内,接收到来自不同的地理位置但与所述待验证终端具有相同的唯一标识的待验证终端发送的调用请求;若所述待验证终端不符合所述预定条件,则确定所述第i个验证步骤验证成功。
所述密文生成模块510,还被配置为在所述第i个验证步骤验证成功且i≠n时,计算i=i+1并执行所述生成与所述第i个验证步骤对应的密文信息的步骤。
第一发送模块550,被配置为在所述第i个验证步骤验证失败时,将失败的验证结果发送给所述待验证终端。
第二发送模块560,被配置为在所述第i个验证步骤验证成功且i=n时,将成功的验证结果发送给所述待验证终端。
可选的,所述装置还包括:查询接收模块570、结果查询模块580和请求响应模块590。
查询接收模块570,被配置为接收携带有用户账号的验证查询请求。
结果查询模块580,被配置为查询是否存在与所述用户账号对应的验证结果。
请求响应模块590,被配置为当存在所述验证结果时,使用所述验证结果对所述验证查询请求进行响应。
综上所述,本实施例提供的防伪验证装置,通过服务器在执行第i个验证步骤对待验证终端进行验证之前,生成与第i个验证步骤对应的密文信息,向客户端发送上述密文信息,服务器在接收到待验证终端发送的用于调用第i个验证步骤的调用请求后,在确定该调用请求是根据与第i个验证步骤对应的密文信息发起的调用请求时才执行第i个验证步骤;解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高了验证成功率。
另外,本实施例提供的防伪验证装置,还通过借助于与待验证终端关联的用户账号,通过在服务器端存储与用户账号对应的最终验证结果,并通过后续的查询机制,排除了某些不法分子利用伪造的客户端而绕开服务器的验证步骤,直接向用户反馈验证结果为正品的可能性,进一步提高了本公开提供的防伪验证方案的验证成功率。
图7是根据再一示例性实施例示出的一种防伪验证装置的框图,该防伪验证装置可以通过软件、硬件或者两者的结合实现成为待验证终端或者与待验证终端相连的其它终端设备的部分或者全部。该防伪验证装置可以包括:密文接收模块710、请求发送模块720和结果接收模块730。
密文接收模块710,被配置为接收服务器发送的与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n。
请求发送模块720,被配置为根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求。
结果接收模块730,被配置为接收所述服务器发送的指示失败或成功的验证结果。
综上所述,本实施例提供的防伪验证装置,通过待验证终端接收服务器发送的与第i个验证步骤对应的密文信息,并根据密文信息向服务器发送用于调用第i个验证步骤的调用请求,以便服务器根据上述调用请求决策对待验证终端的验证,并向待验证终端反馈验证结果;解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高了验证成功率。
图8是根据还一示例性实施例示出的一种防伪验证装置的框图,该防伪验证装置可以通过软件、硬件或者两者的结合实现成为待验证终端或者与待验证终端相连的其它终端设备的部分或者全部。该防伪验证装置可以包括:密文接收模块710、请求发送模块720和结果接收模块730。
密文接收模块710,被配置为接收服务器发送的与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n。
请求发送模块720,被配置为根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求。
所述请求发送模块720,包括:请求生成子模块720a和请求发送子模块720b。
所述请求生成子模块720a,被配置为生成用于调用所述第i个验证步骤的调用请求,所述调用请求中携带有所述服务器发送的与所述第i个验证步骤对应的密文信息。
所述请求发送子模块720b,被配置为向所述服务器发送所述调用请求。
其中,所述密文信息是所述服务器通过私有密钥对未加密信息进行加密得到的;
当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
结果接收模块730,被配置为接收所述服务器发送的指示失败或成功的验证结果。
可选的,所述装置还包括:账号获取模块740、账号发送模块750和结果返回模块760。
账号获取模块740,被配置为获取与所述待验证终端关联的用户账号。
账号发送模块750,被配置为向所述服务器发送所述用户账号。
结果返回模块760,被配置为接收所述服务器在查询到与所述用户账号对应的验证结果时返回的验证结果。
综上所述,本实施例提供的防伪验证装置,通过待验证终端接收服务器发送的与第i个验证步骤对应的密文信息,并根据密文信息向服务器发送用于调用第i个验证步骤的调 用请求,以便服务器根据上述调用请求决策对待验证终端的验证,并向待验证终端反馈验证结果;解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高了验证成功率。
另外,本实施例提供的防伪验证装置,还通过借助于与待验证终端关联的用户账号,通过在服务器端存储与用户账号对应的最终验证结果,并通过后续的查询机制,排除了某些不法分子利用伪造的客户端而绕开服务器的验证步骤,直接向用户反馈验证结果为正品的可能性,进一步提高了本公开提供的防伪验证方案的验证成功率。
图9是根据一示例性实施例示出的一种防伪验证系统的框图,该防伪验证系统包括服务器500和待验证终端700。其中:
服务器500可以包括防伪验证装置,该防伪验证装置可以通过软件、硬件或者两者的结合实现成为服务器500的部分或者全部。该防伪验证装置可以是如图5或者图6所示实施例所提供的防伪验证装置。
服务器500与待验证终端700之间可以通过有线网络或者无线网络相连。
待验证终端700可以包括防伪验证装置,该防伪验证装置可以通过软件、硬件或者两者的结合实现成为待验证终端700的部分或者全部。该防伪验证装置可以是如图7或者图8所示实施例所提供的防伪验证装置。
综上所述,本实施例提供的防伪验证系统,通过服务器在执行第i个验证步骤对待验证终端进行验证之前,生成与第i个验证步骤对应的密文信息,向客户端发送上述密文信息,服务器在接收到待验证终端发送的用于调用第i个验证步骤的调用请求后,在确定该调用请求是根据与第i个验证步骤对应的密文信息发起的调用请求时才执行第i个验证步骤;解决了背景技术中存在的因伪造应用程序而导致的验证成功率低的问题;由于伪造的客户端无法满足上述触发执行第i个验证步骤的条件,进而无法顺利通过验证过程,提高了验证成功率。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图10是根据一示例性实施例示出的一种装置1000的框图。例如,装置1000可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图10,装置1000可以包括以下一个或多个组件:处理组件1002,存储器1004,电源组件1006,多媒体组件1008,音频组件1010,输入/输出(I/O)的接口1012,传感器组件1014,以及通信组件1016。
处理组件1002通常控制装置1000的整体操作,诸如与显示,电话呼叫,数据通信, 相机操作和记录操作相关联的操作。处理组件1002可以包括一个或多个处理器1020来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1002可以包括一个或多个模块,便于处理组件1002和其他组件之间的交互。例如,处理组件1002可以包括多媒体模块,以方便多媒体组件1008和处理组件1002之间的交互。
存储器1004被配置为存储各种类型的数据以支持在装置1000的操作。这些数据的示例包括用于在装置1000上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1004可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件1006为装置1000的各种组件提供电力。电源组件1006可以包括电源管理系统,一个或多个电源,及其他与为装置1000生成、管理和分配电力相关联的组件。
多媒体组件1008包括在所述装置1000和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1008包括一个前置摄像头和/或后置摄像头。当装置1000处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件1010被配置为输出和/或输入音频信号。例如,音频组件1010包括一个麦克风(MIC),当装置1000处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1004或经由通信组件1016发送。在一些实施例中,音频组件1010还包括一个扬声器,用于输出音频信号。
I/O接口1012为处理组件1002和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件1014包括一个或多个传感器,用于为装置1000提供各个方面的状态评估。例如,传感器组件1014可以检测到装置1000的打开/关闭状态,组件的相对定位,例如所述组件为装置1000的显示器和小键盘,传感器组件1014还可以检测装置1000或装置1000一个组件的位置改变,用户与装置1000接触的存在或不存在,装置1000方位或加速/减速和装置1000的温度变化。传感器组件1014可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1014还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1014 还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件1016被配置为便于装置1000和其他设备之间有线或无线方式的通信。装置1000可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件1016经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件1016还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置1000可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述图3或者图4所示实施例中的待验证终端侧的防伪验证方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1004,上述指令可由装置1000的处理器1020执行以完成上述图3或者图4所示实施例中的待验证终端侧的防伪验证方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置1000的处理器执行时,使得装置1000能够执行上述图3或者图4所示实施例中的待验证终端侧的防伪验证方法。
图11是根据一示例性实施例示出的一种装置1100的框图。例如,装置1100可以被提供为一服务器。参照图11,装置1100包括处理组件1122,其进一步包括一个或多个处理器,以及由存储器1132所代表的存储器资源,用于存储可由处理部件1122执行的指令,例如应用程序。存储器1132中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1122被配置为执行指令,以执行上述图2或者图4所示实施例中的服务器侧的防伪验证方法。
装置1100还可以包括一个电源组件1126被配置为执行装置1100的电源管理,一个有线或无线网络接口1150被配置为将装置1100连接到网络,和一个输入输出(I/O)接口1158。装置1100可以操作基于存储在存储器1132的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (25)

  1. 一种防伪验证方法,其特征在于,所述方法包括:
    生成与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
    向所述待验证终端发送所述密文信息;
    接收所述待验证终端发送的用于调用所述第i个验证步骤的调用请求;
    在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤;
    在所述第i个验证步骤验证成功且i≠n时,计算i=i+1并执行所述生成与所述第i个验证步骤对应的密文信息的步骤;
    在所述第i个验证步骤验证失败时,将失败的验证结果发送给所述待验证终端;
    在所述第i个验证步骤验证成功且i=n时,将成功的验证结果发送给所述待验证终端。
  2. 根据权利要求1所述的方法,其特征在于,所述生成与第i个验证步骤对应的密文信息,包括:
    通过私有密钥对未加密信息进行加密得到与所述第i个验证步骤对应的密文信息;
    其中,当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
    或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
  3. 根据权利要求2所述的方法,其特征在于,所述在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤,包括:
    检测所述调用请求中是否携带有与所述第i个验证步骤对应的密文信息;
    若携带有所述密文信息,则读取所述密文信息;
    通过所述私有密钥对所述密文信息进行解密得到所述未加密信息;
    根据所述未加密信息的信息内容确定所述第i个验证步骤对应的步骤编号;
    检测所述调用请求调用的实际步骤编号是否与所述第i个验证步骤对应的步骤编号相匹配;
    若所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配,则执行所述第i个验证步骤。
  4. 根据权利要求3所述的方法,其特征在于,所述在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤,还包括:
    当所述未加密信息还包括时间信息时,读取所述未加密信息中包括的所述时间信息;
    根据所述时间信息检测接收到所述调用请求的时刻是否处于有效时段内;
    若接收到所述调用请求的时刻处于所述有效时段内,且所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配,则执行所述第i个验证步骤。
  5. 根据权利要求3所述的方法,其特征在于,所述执行所述第i个验证步骤,包括:
    在所述第i个验证步骤是配置参数验证步骤时,根据所述待验证终端的配置参数对所述待验证终端进行验证;
    或者,
    在所述第i个验证步骤是性能参数验证步骤时,根据所述待验证终端的性能参数对所述待验证终端进行验证;
    或者,
    在所述第i个验证步骤是订单验证步骤时,根据所述待验证终端的基本信息和订单数据库对所述待验证终端进行验证,所述订单数据库中包含有至少一台终端的基本信息;
    或者,
    在所述第i个验证步骤是地理位置验证步骤时,根据所述待验证终端对应的地理位置和唯一标识对所述待验证终端进行验证。
  6. 根据权利要求5所述的方法,其特征在于,所述根据所述待验证终端的基本信息和订单数据库对所述待验证终端进行验证,包括:
    在所述订单数据库中查询是否存在与所述待验证终端的基本信息相匹配的基本信息;
    若存在与所述待验证终端的基本信息相匹配的基本信息,则确定所述第i个验证步骤验证成功。
  7. 根据权利要求5所述的方法,其特征在于,所述根据所述待验证终端对应的地理位置和唯一标识对所述待验证终端进行验证,包括:
    检测所述待验证终端是否符合预定条件,所述预定条件是指在预定时段内,接收到来自不同的地理位置但与所述待验证终端具有相同的唯一标识的待验证终端发送的调用请求;
    若所述待验证终端不符合所述预定条件,则确定所述第i个验证步骤验证成功。
  8. 根据权利要求1至7任一所述的方法,其特征在于,所述方法还包括:
    接收携带有用户账号的验证查询请求;
    查询是否存在与所述用户账号对应的验证结果;
    当存在所述验证结果时,使用所述验证结果对所述验证查询请求进行响应。
  9. 一种防伪验证方法,其特征在于,所述方法包括:
    接收服务器发送的与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
    根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求;
    接收所述服务器发送的指示失败或成功的验证结果。
  10. 根据权利要求9所述的方法,其特征在于,所述根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求,包括:
    生成用于调用所述第i个验证步骤的调用请求,所述调用请求中携带有所述服务器发送的与所述第i个验证步骤对应的密文信息;
    向所述服务器发送所述调用请求;
    其中,所述密文信息是所述服务器通过私有密钥对未加密信息进行加密得到的;
    当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
    或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
  11. 根据权利要求9或10所述的方法,其特征在于,所述方法还包括:
    获取与所述待验证终端关联的用户账号;
    向所述服务器发送所述用户账号;
    接收所述服务器在查询到与所述用户账号对应的验证结果时返回的验证结果。
  12. 一种防伪验证装置,其特征在于,所述装置包括:
    密文生成模块,被配置为生成与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
    密文发送模块,被配置为向所述待验证终端发送所述密文信息;
    请求接收模块,被配置为接收所述待验证终端发送的用于调用所述第i个验证步骤的调用请求;
    验证执行模块,被配置为在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤;
    所述密文生成模块,还被配置为在所述第i个验证步骤验证成功且i≠n时,计算i=i+1并执行所述生成与所述第i个验证步骤对应的密文信息的步骤;
    第一发送模块,被配置为在所述第i个验证步骤验证失败时,将失败的验证结果发送给所述待验证终端;
    第二发送模块,被配置为在所述第i个验证步骤验证成功且i=n时,将成功的验证结果发送给所述待验证终端。
  13. 根据权利要求12所述的装置,其特征在于,
    所述密文生成模块,还被配置为通过私有密钥对未加密信息进行加密得到与所述第i个验证步骤对应的密文信息;
    其中,当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
    或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
  14. 根据权利要求13所述的装置,其特征在于,所述验证执行模块,包括:密文检测子模块、密文读取子模块、密文解密子模块、编号确定子模块、编号检测子模块和验证执行子模块;
    所述密文检测子模块,被配置为检测所述调用请求中是否携带有与所述第i个验证步骤对应的密文信息;
    所述密文读取子模块,被配置为当携带有所述密文信息时,读取所述密文信息;
    所述密文解密子模块,被配置为通过所述私有密钥对所述密文信息进行解密得到所述未加密信息;
    所述编号确定子模块,被配置为根据所述未加密信息的信息内容确定所述第i个验证步骤对应的步骤编号;
    所述编号检测子模块,被配置为检测所述调用请求调用的实际步骤编号是否与所述第i个验证步骤对应的步骤编号相匹配;
    所述验证执行子模块,被配置为当所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配时,则执行所述第i个验证步骤。
  15. 根据权利要求14所述的装置,其特征在于,所述验证执行模块,还包括:信息读取子模块和时间检测子模块;
    所述信息读取子模块,被配置为当所述未加密信息还包括时间信息时,读取所述未加密信息中包括的所述时间信息;
    所述时间检测子模块,被配置为根据所述时间信息检测接收到所述调用请求的时刻是否处于有效时段内;
    所述验证执行子模块,还被配置为当接收到所述调用请求的时刻处于所述有效时段内,且所述实际步骤编号与所述第i个验证步骤对应的步骤编号相匹配时,执行所述第i个验证步骤。
  16. 根据权利要求14所述的装置,其特征在于,所述验证执行子模块,包括:第一验证子模块;和/或,第二验证子模块;和/或,第三验证子模块;和/或,第四验证子模块;
    所述第一验证子模块,被配置为在所述第i个验证步骤是配置参数验证步骤时,根据所述待验证终端的配置参数对所述待验证终端进行验证;
    所述第二验证子模块,被配置为在所述第i个验证步骤是性能参数验证步骤时,根据所述待验证终端的性能参数对所述待验证终端进行验证;
    所述第三验证子模块,被配置为在所述第i个验证步骤是订单验证步骤时,根据所述待验证终端的基本信息和订单数据库对所述待验证终端进行验证,所述订单数据库中包含有至少一台终端的基本信息;
    所述第四验证子模块,被配置为在所述第i个验证步骤是地理位置验证步骤时,根据所述待验证终端对应的地理位置和唯一标识对所述待验证终端进行验证。
  17. 根据权利要求16所述的装置,其特征在于,
    所述第三验证子模块,还被配置为在所述订单数据库中查询是否存在与所述待验证终端的基本信息相匹配的基本信息;若存在与所述待验证终端的基本信息相匹配的基本信息,则确定所述第i个验证步骤验证成功。
  18. 根据权利要求16所述的装置,其特征在于,
    所述第四验证子模块,还被配置为检测所述待验证终端是否符合预定条件,所述预定条件是指在预定时段内,接收到来自不同的地理位置但与所述待验证终端具有相同的唯一标识的待验证终端发送的调用请求;若所述待验证终端不符合所述预定条件,则确定所述第i个验证步骤验证成功。
  19. 根据权利要求12至18任一所述的装置,其特征在于,所述装置还包括:
    查询接收模块,被配置为接收携带有用户账号的验证查询请求;
    结果查询模块,被配置为查询是否存在与所述用户账号对应的验证结果;
    请求响应模块,被配置为当存在所述验证结果时,使用所述验证结果对所述验证查询请求进行响应。
  20. 一种防伪验证装置,其特征在于,所述装置包括:
    密文接收模块,被配置为接收服务器发送的与第i个验证步骤对应的密文信息,所述 第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
    请求发送模块,被配置为根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求;
    结果接收模块,被配置为接收所述服务器发送的指示失败或成功的验证结果。
  21. 根据权利要求20所述的装置,其特征在于,所述请求发送模块,包括:请求生成子模块和请求发送子模块;
    所述请求生成子模块,被配置为生成用于调用所述第i个验证步骤的调用请求,所述调用请求中携带有所述服务器发送的与所述第i个验证步骤对应的密文信息;
    所述请求发送子模块,被配置为向所述服务器发送所述调用请求;
    其中,所述密文信息是所述服务器通过私有密钥对未加密信息进行加密得到的;
    当1≤i≤n时,所述未加密信息包括所述待验证终端的关联信息和所述第i个验证步骤对应的步骤编号;
    或者,当i=1时,所述未加密信息包括所述待验证终端的关联信息;当i≥2时,所述未加密信息包括所述待验证终端的关联信息和已成功调用的第i-1个验证步骤对应的步骤编号。
  22. 根据权利要求20或21所述的装置,其特征在于,所述装置还包括:
    账号获取模块,被配置为获取与所述待验证终端关联的用户账号;
    账号发送模块,被配置为向所述服务器发送所述用户账号;
    结果返回模块,被配置为接收所述服务器在查询到与所述用户账号对应的验证结果时返回的验证结果。
  23. 一种防伪验证装置,其特征在于,包括:
    处理器;
    用于存储所述处理器的可执行指令的存储器;
    其中,所述处理器被配置为:
    生成与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
    向所述待验证终端发送所述密文信息;
    接收所述待验证终端发送的用于调用所述第i个验证步骤的调用请求;
    在所述调用请求是根据与所述第i个验证步骤对应的密文信息发起的调用请求时,执行所述第i个验证步骤;
    在所述第i个验证步骤验证成功且i≠n时,计算i=i+1并执行所述生成与所述第i个 验证步骤对应的密文信息的步骤;
    在所述第i个验证步骤验证失败时,将失败的验证结果发送给所述待验证终端;
    在所述第i个验证步骤验证成功且i=n时,将成功的验证结果发送给所述待验证终端。
  24. 一种防伪验证装置,其特征在于,包括:
    处理器;
    用于存储所述处理器的可执行指令的存储器;
    其中,所述处理器被配置为:
    接收服务器发送的与第i个验证步骤对应的密文信息,所述第i个验证步骤是用于对待验证终端进行验证的全部n个验证步骤中按照预定次序排列的一个验证步骤,1≤i≤n;
    根据所述密文信息向所述服务器发送用于调用所述第i个验证步骤的调用请求;
    接收所述服务器发送的指示失败或成功的验证结果。
  25. 一种防伪验证系统,其特征在于,所述系统包括待验证终端,以及与所述待验证终端通过无线网络或者有线网络相连的服务器;
    所述服务器包括如权利要求12至19任一所述的防伪验证装置,所述待验证终端包括如权利要求20至22任一所述的防伪验证装置;
    或者,
    所述服务器包括如权利要求23所述的防伪验证装置,所述待验证终端包括如权利要求24所述的防伪验证装置。
PCT/CN2014/091426 2014-07-21 2014-11-18 防伪验证方法、装置和系统 WO2016011739A1 (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2016535330A JP6163610B2 (ja) 2014-07-21 2014-11-18 偽造防止検証方法、装置、プログラム、及び記録媒体
MX2015002443A MX360075B (es) 2014-07-21 2014-11-18 Método, dispositivo y sistema de verificación contra falsificación.
RU2015108340/08A RU2603549C2 (ru) 2014-07-21 2014-11-18 Способ, устройство и система верификации для защиты от подделок
BR112015003462A BR112015003462A2 (pt) 2014-07-21 2014-11-18 método de verificação antifalsificação, dispositivo e sistema
KR1020157001202A KR101688182B1 (ko) 2014-07-21 2014-11-18 위조 방지 검증 방법, 장치, 시스템, 프로그램 및 저장매체
US14/641,569 US9426130B2 (en) 2014-07-21 2015-03-09 Methods, devices and systems for anti-counterfeiting authentication

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410348001.5 2014-07-21
CN201410348001.5A CN104158659B (zh) 2014-07-21 2014-07-21 防伪验证方法、装置和系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/641,569 Continuation US9426130B2 (en) 2014-07-21 2015-03-09 Methods, devices and systems for anti-counterfeiting authentication

Publications (1)

Publication Number Publication Date
WO2016011739A1 true WO2016011739A1 (zh) 2016-01-28

Family

ID=51884073

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/091426 WO2016011739A1 (zh) 2014-07-21 2014-11-18 防伪验证方法、装置和系统

Country Status (8)

Country Link
EP (1) EP2978162B1 (zh)
JP (1) JP6163610B2 (zh)
KR (1) KR101688182B1 (zh)
CN (1) CN104158659B (zh)
BR (1) BR112015003462A2 (zh)
MX (1) MX360075B (zh)
RU (1) RU2603549C2 (zh)
WO (1) WO2016011739A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111400344A (zh) * 2020-03-19 2020-07-10 上海东普信息科技有限公司 电子面单打印方法、装置、设备及存储介质
CN111544893A (zh) * 2020-04-30 2020-08-18 福建天晴在线互动科技有限公司 一种基于游戏中防止代码流程伪造的加固方法及其系统

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107205094B (zh) * 2017-06-29 2019-05-07 珠海格力电器股份有限公司 设备的控制方法及装置、电子设备、终端
CN108804263B (zh) * 2018-05-03 2021-08-24 北京金山安全软件有限公司 终端验证的方法、装置及计算机可读介质
CN110033286A (zh) * 2019-04-09 2019-07-19 安谋科技(中国)有限公司 产品防伪验证方法、装置、可读介质、系统和设备
CN110751303B (zh) * 2019-10-30 2023-04-25 南宁市指搜信息技术有限公司 一种基于云计算的智能设备全生命周期监测查询系统
CA3163595A1 (en) * 2019-12-31 2021-07-08 Satish S. Suggala A system and method for determining authenticity of a mobile device
CN113706091B (zh) * 2021-07-14 2024-03-22 广州赛宝认证中心服务有限公司 智能远程审核方法、装置、系统、计算机设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101388767A (zh) * 2008-10-14 2009-03-18 苏盛辉 基于轻量级数字签名方案的证书防伪方法
CN101777105A (zh) * 2010-01-25 2010-07-14 上海北大方正科技电脑系统有限公司 一种基于bios的计算机开机防伪验证方法
CN103903146A (zh) * 2012-12-26 2014-07-02 北大方正集团有限公司 一种防伪信息验证的方法及装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH103256A (ja) * 1995-10-16 1998-01-06 Sony Corp 暗号化方法、暗号化装置、記録方法、復号化方法、復号化装置及び記録媒体
JPH10145354A (ja) * 1996-11-14 1998-05-29 Nippon Telegr & Teleph Corp <Ntt> 機能遠隔変更方法
JP3524304B2 (ja) * 1996-11-21 2004-05-10 株式会社日立製作所 信号処理方法
JP2001211151A (ja) * 2000-01-25 2001-08-03 Sony Corp データ処理装置、データ処理方法およびコンテンツデータ検証値付与方法、並びにプログラム提供媒体
US7380130B2 (en) * 2001-12-04 2008-05-27 Microsoft Corporation Methods and systems for authentication of components in a graphics system
US8843412B2 (en) * 2005-05-05 2014-09-23 Oracle International Corporation Validating system property requirements for use of software applications
US20070228166A1 (en) * 2006-04-04 2007-10-04 Ho Chung Lui System for detecting couterfeiting products using camera
US8332645B2 (en) 2006-09-11 2012-12-11 Yeda Research And Development Co. Ltd Method, apparatus and product for RFID authentication
JP5070005B2 (ja) * 2007-11-01 2012-11-07 株式会社日立製作所 演算装置および演算方法ならびにコンピュータシステム
WO2010053036A1 (ja) * 2008-11-05 2010-05-14 日本電気株式会社 データ参照システム、データベース提示分散システム、及びデータ参照方法
US8151333B2 (en) * 2008-11-24 2012-04-03 Microsoft Corporation Distributed single sign on technologies including privacy protection and proactive updating
US8326759B2 (en) * 2009-04-28 2012-12-04 Visa International Service Association Verification of portable consumer devices
US7891560B2 (en) * 2009-05-15 2011-02-22 Visa International Service Assocation Verification of portable consumer devices
JP5334693B2 (ja) * 2009-06-04 2013-11-06 アライドテレシスホールディングス株式会社 ネットワーク管理方法、ネットワーク管理プログラム、ネットワークシステム及び中継機器
US8423770B2 (en) * 2009-09-24 2013-04-16 Kezzler As Method and system for providing secure codes for marking on items
US8839459B2 (en) * 2010-09-22 2014-09-16 Qualcomm Incorporated Product authentication using end-to-end cryptographic scheme
US8627422B2 (en) * 2010-11-06 2014-01-07 Qualcomm Incorporated Authentication in secure user plane location (SUPL) systems
US10009319B2 (en) * 2011-02-07 2018-06-26 Qualcomm Incorporated Methods, apparatuses and articles for identifying and authorizing location servers and location services using a proxy location server
JP5961638B2 (ja) * 2011-02-17 2016-08-02 ターセーラ, インコーポレイテッド アプリケーション証明のためのシステムおよび方法
EP2705725B1 (en) 2011-05-06 2017-07-19 Certicom Corp. Managing data for authentication devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101388767A (zh) * 2008-10-14 2009-03-18 苏盛辉 基于轻量级数字签名方案的证书防伪方法
CN101777105A (zh) * 2010-01-25 2010-07-14 上海北大方正科技电脑系统有限公司 一种基于bios的计算机开机防伪验证方法
CN103903146A (zh) * 2012-12-26 2014-07-02 北大方正集团有限公司 一种防伪信息验证的方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111400344A (zh) * 2020-03-19 2020-07-10 上海东普信息科技有限公司 电子面单打印方法、装置、设备及存储介质
CN111400344B (zh) * 2020-03-19 2023-04-18 上海东普信息科技有限公司 电子面单打印方法、装置、设备及存储介质
CN111544893A (zh) * 2020-04-30 2020-08-18 福建天晴在线互动科技有限公司 一种基于游戏中防止代码流程伪造的加固方法及其系统
CN111544893B (zh) * 2020-04-30 2023-09-01 福建天晴在线互动科技有限公司 一种基于游戏中防止代码流程伪造的加固方法及其系统

Also Published As

Publication number Publication date
RU2015108340A (ru) 2016-09-27
MX360075B (es) 2018-10-19
KR101688182B1 (ko) 2016-12-20
MX2015002443A (es) 2016-03-03
EP2978162A1 (en) 2016-01-27
CN104158659B (zh) 2015-11-11
KR20160021068A (ko) 2016-02-24
RU2603549C2 (ru) 2016-11-27
EP2978162B1 (en) 2021-10-13
BR112015003462A2 (pt) 2017-07-04
JP2016533684A (ja) 2016-10-27
CN104158659A (zh) 2014-11-19
JP6163610B2 (ja) 2017-07-12

Similar Documents

Publication Publication Date Title
WO2016011739A1 (zh) 防伪验证方法、装置和系统
JP6374010B2 (ja) 情報交信方法、装置および電子機器
EP3657370B1 (en) Methods and devices for authenticating smart card
WO2016050037A1 (zh) 操作授权方法及装置
CN109146470B (zh) 生成付款码的方法及装置
WO2017020630A1 (zh) 一种处理订单信息的方法、装置和系统
CN105847243B (zh) 访问智能摄像头的方法及装置
US9426130B2 (en) Methods, devices and systems for anti-counterfeiting authentication
WO2015196665A1 (zh) 绑定账号与令牌密钥的方法、装置
CN109039990B (zh) 基于验证码进行行为验证的方法及装置
CN104967511A (zh) 加密数据的处理方法及装置
CN106097494A (zh) 智能锁的开锁方法及装置
CN106454800B (zh) 身份验证方法、装置及系统
JP6101863B2 (ja) 音声サービスでの情報送信方法、装置、プログラム、及び記録媒体
CN105281907B (zh) 加密数据的处理方法及装置
TWI761843B (zh) 門禁控制方法及裝置、電子設備和儲存介質
EP3016349B1 (en) Method and apparatus for verifying terminal and computer program product
WO2017177571A1 (zh) 一种执行业务处理的方法、装置及系统
CN109039860A (zh) 发送和展示消息的方法及装置、身份认证的方法及装置
US9667784B2 (en) Methods and devices for providing information in voice service
CN103905546B (zh) 一种终端登录远程服务器的方法和装置
WO2023245356A1 (zh) 电子设备的充电方法、充电装置、电子设备及存储介质
CN115017490A (zh) 身份验证方法、装置、设备、存储介质和计算机程序产品

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2016535330

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20157001202

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: MX/A/2015/002443

Country of ref document: MX

ENP Entry into the national phase

Ref document number: 2015108340

Country of ref document: RU

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112015003462

Country of ref document: BR

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

Ref document number: 14897904

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 112015003462

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20150218

122 Ep: pct application non-entry in european phase

Ref document number: 14897904

Country of ref document: EP

Kind code of ref document: A1