A method for secure identification retrieval, comprising: retrieving, by a server device, a value of a periodic variable; calculating, by the server device, a plurality of query tokens from a corresponding plurality of client device identifiers and the value of the periodic variable, each query token associated with a corresponding client device identifier in a first database; receiving, by the server device from a first client device, a first query token calculated from a client device identifier of the first client device and the value of the periodic variable; identifying, by the server device, a second query token of the calculated plurality of query tokens in the first database matching the first query token; responsive to the identification, retrieving, by the server device, from the first database, the associated client device identifier; retrieving, by the server device from a second database, one or more characteristics of the first client device according to the associated client device identifier; transmitting, by the server device to the first client device, the retrieved one or more characteristics; receiving, by the server device from a second client device, a third query token calculated from a client device identifier of the second client device and the value of the periodic variable; determining, by the server device, that an entry does not exist in the first database corresponding to the third query token; and responsive to the determination that an entry does not exist in the first database corresponding to the third query token, transmitting, by the server device to the second client device, one of a random data string or a null data string. retrieving, by a server device, a value of a periodic variable; calculating, by the server device, a plurality of query tokens from a corresponding plurality of client device identifiers and the value of the periodic variable, each query token associated with a corresponding client device identifier in a first database; receiving, by the server device from a first client device, a first query token calculated from a client device identifier of the first client device and the value of the periodic variable; identifying, by the server device, a second query token of the calculated plurality of query tokens in the first database matching the first query token; responsive to the identification, retrieving, by the server device, from the first database, the associated client device identifier; retrieving, by the server device from a second database, one or more characteristics of the first client device according to the associated client device identifier; transmitting, by the server device to the first client device, the retrieved one or more characteristics; receiving, by the server device from a second client device, a third query token calculated from a client device identifier of the second client device and the value of the periodic variable; determining, by the server device, that an entry does not exist in the first database corresponding to the third query token; and responsive to the determination that an entry does not exist in the first database corresponding to the third query token, transmitting, by the server device to the second client device, one of a random data string or a null data string.