Patent ID: 9367675
Filing Date: 2016-06-14
CPC Classification: G06F,H04L

Claim Text:
1. A method for verifying and calibrating time, comprising the steps of: a.) receiving, by a calibrating device, a first dynamic password and a user identifier sent from a client, computing a current time factor according to current time of a server and determining a first time factor; b.) obtaining, by the calibrating device, a seed according to the user identifier, generating a second dynamic password group and comparing a second dynamic password in the second dynamic password group with the first dynamic password, performing step d.) if the second dynamic password matches with the first dynamic password, performing step c.) if the second dynamic password does not match with the first dynamic password; c.) determining, by the calibrating device, a second time factor according to the current time factor and a first preset value, generating a third dynamic password group and comparing a third dynamic password in the third dynamic password group with the first dynamic password, performing step d.) if the third dynamic password matches with the first dynamic password; returning error information and performing step a.) if the third dynamic password does not match with the first dynamic password; d.) recording, by the calibrating device, time of current successful verification and a current time offset value, obtaining last calibrating time, obtaining a first time difference according to time of current successful verification and the last calibrating time and determining whether the first time difference is no less than a second preset value, performing step e.) if the first time difference is no less than a second preset value; returning successful verification information if the first time difference is less than a second preset value; e.) obtaining, by the calibrating device, a benchmark offset value and corresponding time of the benchmark offset value from a second storing place, determining whether the current time offset value belongs to an offset interval determined by the benchmark time offset value, performing step f.) if the current time offset value belongs to the offset interval determined by the benchmark time offset value; updating, by the calibrating device, the benchmark time offset value and returning successful verification information if the current time offset value does not belong to the offset interval determined by the benchmark time offset value; f.) computing, by the calibrating device, a benchmark offset according to the benchmark time offset value and corresponding time of the same, obtaining a time offset value of last successful verification and corresponding time of the last successful verification, computing a unit offset according to the time offset of last successful verification and corresponding time of the same and a current time offset and corresponding time of the same, determining whether the unit offset belongs to the interval determined by the benchmark offset, performing step g.) if the unit offset belongs to the interval determined by the benchmark offset; returning successful verification information if the unit offset does not belong to the interval determined by the benchmark offset; and g.) updating, by the calibrating device, a clock offset according to the current time offset value, storing calibrating time of this time to a first storing place, storing current time offset value and the current successful verification time to a third storing place to replace an original content and returning successful verification information; wherein the second preset value is a preset calibrating period, which represents a minimum time value required by calibrating time once.