Patent ID: 8707049

Claim:
An authentication method, wherein the method comprising the steps of: initiating user authentication to a key device connected to a host computer; generating a dynamic code by the key device using a time or event random factor; generating a first verification code by the key device on the basis of the dynamic code with a mechanism comprising one selected from the group consisting of combining the dynamic code with an identification code previously defined by a manufacturer or user of the key device, and transforming the combination into a first verification code by the key device, and transforming the dynamic code, and combining the transformed dynamic code with an identification code previously defined by a manufacturer or user of the key device to form a first verification code by the key device; outputting the dynamic code by the key device; obtaining the dynamic code by the user; producing a second verification code by the user with the same mechanism comprising one selected from the group consisting of combining the dynamic code with an identification code previously defined by a manufacturer or user of the key device, and transforming the combination into a second verification code by the user, and transforming the dynamic code, and the combining the transformed dynamic code with an identification code previously defined by a manufacturer or user of the key device to form a second verification code by the user; entering the second verification code on the host by the user; receiving the second verification code by the host; transmitting the second verification code by the host to the key device connected to the host; receiving the second verification code by the key device; collating the second verification code with the first verification code by the key device; if a match is found, authorizing access of the user to the key device via the host; otherwise, prohibiting access of the user to the key device; if the user gains the access to the key device, performing by the key device information security operations comprising presetting a user software fragment, which cannot be read out of the device and is used to perform data computation within the device, and presetting a software protection application interface function, which is an interface-level function between the device and the software developer application.