A method for authentication, comprising: receiving, by a mobile device, a user request to access a service provider application; in response to the user request to access the service provider application, requesting, by the mobile device, using the service provider application, identification and verification from a user via an identification and verification application residing within the mobile device; and receiving, by the identification and verification application on the mobile device, a positive identification and verification response; comprising: generating (240, S518), by a secure element or trusted execution environment at the request of a cryptogram generation module of the mobile device, a cryptogram using at least a user identification associated with the user, a timestamp, a device ID associated with the mobile device, a service provider application ID, and a service provider device ID, wherein the service provider device ID uniquely identifies the mobile device used at the time of registration and the user that registered with the service provider application; and transmitting (250, S520), by the mobile device, the generated cryptogram, the user ID, the timestamp, the device ID associated with the mobile device, the service provider application ID, and the service provider device ID to a service provider computer associated with the service provider application, wherein the service provider computer verifies the cryptogram by determining a plurality of data elements encoded within the cryptogram, and then comparing the determined plurality of data elements to the user ID, the timestamp, the device ID, the service provider application ID, and the service provider device ID received by the service provider computer. receiving, by a mobile device, a user request to access a service provider application; in response to the user request to access the service provider application, requesting, by the mobile device, using the service provider application, identification and verification from a user via an identification and verification application residing within the mobile device; and receiving, by the identification and verification application on the mobile device, a positive identification and verification response; comprising: generating (240, S518), by a secure element or trusted execution environment at the request of a cryptogram generation module of the mobile device, a cryptogram using at least a user identification associated with the user, a timestamp, a device ID associated with the mobile device, a service provider application ID, and a service provider device ID, wherein the service provider device ID uniquely identifies the mobile device used at the time of registration and the user that registered with the service provider application; and transmitting (250, S520), by the mobile device, the generated cryptogram, the user ID, the timestamp, the device ID associated with the mobile device, the service provider application ID, and the service provider device ID to a service provider computer associated with the service provider application, generating (240, S518), by a secure element or trusted execution environment at the request of a cryptogram generation module of the mobile device, a cryptogram using at least a user identification associated with the user, a timestamp, a device ID associated with the mobile device, a service provider application ID, and a service provider device ID, wherein the service provider device ID uniquely identifies the mobile device used at the time of registration and the user that registered with the service provider application; and transmitting (250, S520), by the mobile device, the generated cryptogram, the user ID, the timestamp, the device ID associated with the mobile device, the service provider application ID, and the service provider device ID to a service provider computer associated with the service provider application, wherein the service provider computer verifies the cryptogram by determining a plurality of data elements encoded within the cryptogram, and then comparing the determined plurality of data elements to the user ID, the timestamp, the device ID, the service provider application ID, and the service provider device ID received by the service provider computer.