An apparatus comprising: at least one processor ; memory storing a program of instructions; characterized in that the memory storing the program of instructions is configured to, with the at least one processor , cause the apparatus to at least: define a user pseudonym for a wireless device based on a persistent user identity, a current time period and a persistent, renewable user key of the wireless device, wherein the user pseudonym is periodically renewed; derive an authentication key for the wireless device based on the persistent user key, the persistent user identity and the current time period; receive at least one message from the wireless device, wherein each of the at least one message associated with the wireless device includes the user pseudonym for identifying the wireless device and the authentication key for verifying that the message originates from the identified wireless device; and find the user pseudonym and the authentication key of the wireless device at the current time period from a lookup table, wherein the lookup table comprises persistent user identities and persistent user keys along with authentication keys and user pseudonyms for each known wireless device at the current time period. at least one processor ; memory storing a program of instructions; characterized in that the memory storing the program of instructions is configured to, with the at least one processor , cause the apparatus to at least: define a user pseudonym for a wireless device based on a persistent user identity, a current time period and a persistent, renewable user key of the wireless device, wherein the user pseudonym is periodically renewed; derive an authentication key for the wireless device based on the persistent user key, the persistent user identity and the current time period; receive at least one message from the wireless device, wherein each of the at least one message associated with the wireless device includes the user pseudonym for identifying the wireless device and the authentication key for verifying that the message originates from the identified wireless device; and find the user pseudonym and the authentication key of the wireless device at the current time period from a lookup table, wherein the lookup table comprises persistent user identities and persistent user keys along with authentication keys and user pseudonyms for each known wireless device at the current time period. define a user pseudonym for a wireless device based on a persistent user identity, a current time period and a persistent, renewable user key of the wireless device, wherein the user pseudonym is periodically renewed; derive an authentication key for the wireless device based on the persistent user key, the persistent user identity and the current time period; receive at least one message from the wireless device, wherein each of the at least one message associated with the wireless device includes the user pseudonym for identifying the wireless device and the authentication key for verifying that the message originates from the identified wireless device; and find the user pseudonym and the authentication key of the wireless device at the current time period from a lookup table, wherein the lookup table comprises persistent user identities and persistent user keys along with authentication keys and user pseudonyms for each known wireless device at the current time period. <EOS>