Secure systems, software, and methods for verifying user-agent string by interrogation
AssigneeQuarri Technologies, Inc.
InventorJeffrey Anderson Davis
Life of this patent
Estimating the term…
Abstract
Provided are platforms, systems, and software for verifying a user-agent comprising: a software module configured to transmit a quiz to an unverified user-agent, the quiz comprising at least one user-agent verification question drawn from an inventory of user-agent verification questions; a software module configured to receive a response to the quiz, the response comprising a reported user-agent and a result for each question; and a software module configured to compare each result to a result expected from the reported user-agent to verify the reported user-agent. Also provided are methods of using the same.
Claims26
A non-transitory computer-readable storage media encoded with a computer program including instructions executable by a processor to create an application for verifying a user-agent string comprising:
- a. a software module configured to transmit a quiz to an unverified user-agent, the quiz comprising at least one user-agent verification question drawn from an inventory of user-agent verification questions and a cryptographically secured signature;
- b. a software module configured to receive a response to the quiz, the response comprising a reported user-agent string, the cryptographically secured signature, and a result for each question, wherein the user-agent string, which does not include any personally identifiable information, is reported by the user-agent to publicly characterize said user-agent;
- and
- c. a software module configured to compare each result to a result expected from the reported user-agent string to verify the fidelity of the reported user-agent string.
A non-transitory computer-readable storage media encoded with a computer program including instructions executable by a processor to create an application for verifying a user-agent string, the application comprising:
- a. an inventory of user-agent verification questions;
- b. a software module configured to generate a user-agent verification quiz, the quiz comprising at least one user-agent verification question drawn from the inventory of questions;
- c. a software module configured to transmit the quiz to an unverified user-agent, the transmitted quiz comprising a cryptographically secured signature;
- d. a software module configured to receive a response to the quiz, the response comprising a reported user-agent string, wherein the user-agent string, which does not include any personally identifiable information, is reported by the user-agent to publicly characterize said user-agent, a result for each question, and the cryptographically secured signature;
- e. a software module configured to validate the response;
- f. a software module configured to compare each result to a result expected from the reported user-agent string;
- and
- g. a software module configured to provide a verification token to the user-agent if each result matches the corresponding expected result.
A computer-implemented system comprising:
- a. a digital processing device comprising an operating system configured to perform executable instructions and a memory device;
- b. a computer program including instructions executable by the digital processing device to create an application for verifying a user-agent string, the application comprising:
- i. a software module configured to transmit a quiz to an unverified user-agent, the quiz comprising at least one user-agent verification question drawn from an inventory of user-agent verification questions and a cryptographically secured signature;
- ii. a software module configured to receive a response to the quiz, the response comprising a reported user-agent string, wherein the user-agent string, which does not include any personally identifiable information, is reported by the user-agent to publicly characterize said user-agent, a result for each question, and the cryptographically secured signature;
- and
- iii. a software module configured to compare each result to a result expected from the reported user-agent string to verify the fidelity of the reported user-agent string.
A computer-implemented method for verifying a user-agent string comprising the steps of:
- a. generating, by a computer, a user-agent verification quiz, the quiz comprising at least one user-agent verification question drawn from an inventory of user-agent verification questions;
- b. transmitting, by the computer, the quiz to an unverified user-agent, the transmitted quiz comprising a cryptographically secured signature;
- c. receiving, at the computer, a response to the quiz, the response comprising a reported user-agent string, wherein the user-agent string, which does not include any personally identifiable information, is reported by the user-agent to publicly characterize said user-agent, a result for each question, and the cryptographically secured signature;
- d. validating, by the computer, the response to the quiz utilizing the cryptographically secured signature;
- and
- e. comparing, by the computer, each result to a result expected from the reported user-agent string to verify the fidelity of the reported user-agent string.
Dependencies are inferred from the claim text.