Patent ID: 8205080

Claim:
A method comprising: combining a timestamp from an internal clock of a communication device with predetermined random data known by a service to create random data: combining a device identification of the communication device with at least one device capability of the communication device to create device information, the at least one device capability known by the service and stored in a device information database of the service, and the at least one device capability comprising at least one of a screen size of the communication device, a graphics capability of the communication device, an audio capability of the communication device, available memory of the communication device, processing power of the communication device, or a user preference of the communication device; combining the device information with the random data to create a data string; creating a cipher key from characteristics of the communication device by performing a hash on a string of the characteristics, the characteristics known by the communication device and the service, and the characteristics including one or more of an international mobile equipment identity (IMEI), an international mobile subscriber identity (IMSI), a version number of an operating system of the communication device, a version number of firmware of the communication device, a user identifier, an integrated circuit card identifier (ICC ID), a Bluetooth identifier, a mobile station international subscriber directory number (MSISDN), an IP number, a version of a recovery ROM, a version number of a software library, or a label of a software build configuration; encrypting the data string with the cipher key; and encoding the encrypted data string to create a device token.