Patent ID: 8898759

Claim:
A method performed by a server device, the method comprising: storing, in a memory associated with the server device, registration information associated with a device application hosted by a user device, the registration information including context information associated with the user device and a first integrity code generated at a prior point in time as a result of a registration operation associated with the device application; receiving, by the server device and from the device application, a request to receive a service, where the request includes at least two of: information associated with a user of the user device, information associated with the user device, and information associated with the device application; generating, by the server device and using a data integrity algorithm, a second integrity code based on at least one of the information associated with the user of the user device, the information associated with the user device, and the information associated with the device application; comparing, by the server device, the second integrity code with the first integrity code stored in the memory; retrieving, from the memory, the context information associated with the user device when the second integrity code matches the first integrity code, where the context information includes location information, associated with the user device, at the prior point in time; comparing, by the server device, the location information, at the prior point in time, to location information, associated with the user device, at a current point in time; and sending, to the device application, a notification that services may be received when the location information, at the prior point in time, matches the location information at the current point in time, wherein storing the registration information includes: receiving, from the user device, a registration request that includes the information associated with the user device, the information associated with the user, and the information associated with the device application, wherein the information associated with the device application includes an identifier associated with the device application, comparing the identifier associated with the device application with identifiers associated with a plurality of trusted applications stored in the memory, wherein, when the identifier, associated with the device application, matches at least one identifier of the identifiers associated with the plurality of trusted applications: generating, based on at least one of the information associated with the device application, the information associated with the user device, and the information associated with the user, the first integrity code using the data integrity algorithm.