Verifying ad requests
First Claim
Patent Images
1. A method comprising:
- receiving, by an ad verifier from a first entity involved in real-time transactions for sale of ad impressions, a first ad request and a first digital signature, wherein the first ad request comprises a first request for a first advertisement to be placed on a first ad space within a first piece of web content, the first ad request is generated in response to a loading of the first piece of web content, a first set of code of the first piece of web content indicates a presence of the first ad space, and the first digital signature is generated using a first key associated with a first publisher of the first piece of web content;
determining that the first publisher is associated with the first ad request;
selecting the first key, from a plurality of keys, based on the first publisher;
executing a signature generation algorithm using the first ad request and the first key, selected from the plurality of keys, to generate a second digital signature;
determining if the first digital signature matches the second digital signature;
responsive to determining the first digital signature matches the second digital signature;
verifying that the first ad request is associated with the first publisher that is associated with the first key;
transmitting, by the ad verifier to a second entity involved in the real-time transactions for sale of ad impressions, a first verification message corresponding to the first ad request;
wherein transmitting the first verification message is further responsive to;
identifying a first nonce included in the first ad request, wherein the first nonce serves as a first unique identifier of the first ad request;
determining that the first nonce included in the first ad request does not match any nonce included in a first set of previously received ad requests;
determining that the first ad request is not a duplicate of any of the first set of previously received ad requests;
receiving, by the ad verifier from a third entity involved in the real-time transactions for sale of ad impressions, a second ad request and a third digital signature, wherein the second ad request comprises a second request for a second advertisement to be placed on a second ad space within a second piece of web content, the second ad request is generated in response to a loading of the second piece of web content, a second set of code of the second piece of web content indicates a presence of the second ad space, and the third digital signature is generated using a second key associated with a second publisher of the second piece of web content;
determining that the second publisher is associated with the second ad request;
selecting the second key, from the plurality of keys, based on the second publisher;
executing the signature generation algorithm using the second ad request and the second key, selected from the plurality of keys, to generate a fourth digital signature;
determining if the third digital signature matches the fourth digital signature;
responsive to determining the third signature matches the fourth signature;
verifying that the second ad request is associated with the second publisher that is associated with the second key;
transmitting, by the ad verifier to a fourth entity involved in the real-time transactions for sale of ad impressions, a second verification message corresponding to the second ad request;
wherein transmitting the second verification message is further responsive to;
identifying a second nonce included in the second ad request, wherein the second nonce serves as a second unique identifier of the second ad request;
determining that the second nonce included in the second ad request does not match any nonce included in a second set of previously received ad requests;
determining that the second ad request is not a duplicate of any of the second set of previously received ad requests;
wherein the method is executed by at least one device including a hardware processor.
7 Assignments
0 Petitions
Accused Products
Abstract
A method for verifying an ad request includes verifying a signature including the ad request using symmetric or asymmetric keys. Using symmetric keys, after an ad request having a first signature is received, a signature generation algorithm is executed to generate a second signature. If the first signature matches the second signature, then the ad request is determined to be verified. Using asymmetric keys, after an ad request having a signature is received, a signature verification algorithm is executed to determine if the signature matches the ad request. If so, then the ad request is determined to be verified.
-
Citations
20 Claims
-
1. A method comprising:
-
receiving, by an ad verifier from a first entity involved in real-time transactions for sale of ad impressions, a first ad request and a first digital signature, wherein the first ad request comprises a first request for a first advertisement to be placed on a first ad space within a first piece of web content, the first ad request is generated in response to a loading of the first piece of web content, a first set of code of the first piece of web content indicates a presence of the first ad space, and the first digital signature is generated using a first key associated with a first publisher of the first piece of web content; determining that the first publisher is associated with the first ad request; selecting the first key, from a plurality of keys, based on the first publisher; executing a signature generation algorithm using the first ad request and the first key, selected from the plurality of keys, to generate a second digital signature; determining if the first digital signature matches the second digital signature; responsive to determining the first digital signature matches the second digital signature; verifying that the first ad request is associated with the first publisher that is associated with the first key; transmitting, by the ad verifier to a second entity involved in the real-time transactions for sale of ad impressions, a first verification message corresponding to the first ad request; wherein transmitting the first verification message is further responsive to; identifying a first nonce included in the first ad request, wherein the first nonce serves as a first unique identifier of the first ad request; determining that the first nonce included in the first ad request does not match any nonce included in a first set of previously received ad requests; determining that the first ad request is not a duplicate of any of the first set of previously received ad requests; receiving, by the ad verifier from a third entity involved in the real-time transactions for sale of ad impressions, a second ad request and a third digital signature, wherein the second ad request comprises a second request for a second advertisement to be placed on a second ad space within a second piece of web content, the second ad request is generated in response to a loading of the second piece of web content, a second set of code of the second piece of web content indicates a presence of the second ad space, and the third digital signature is generated using a second key associated with a second publisher of the second piece of web content; determining that the second publisher is associated with the second ad request; selecting the second key, from the plurality of keys, based on the second publisher; executing the signature generation algorithm using the second ad request and the second key, selected from the plurality of keys, to generate a fourth digital signature; determining if the third digital signature matches the fourth digital signature; responsive to determining the third signature matches the fourth signature; verifying that the second ad request is associated with the second publisher that is associated with the second key; transmitting, by the ad verifier to a fourth entity involved in the real-time transactions for sale of ad impressions, a second verification message corresponding to the second ad request; wherein transmitting the second verification message is further responsive to; identifying a second nonce included in the second ad request, wherein the second nonce serves as a second unique identifier of the second ad request; determining that the second nonce included in the second ad request does not match any nonce included in a second set of previously received ad requests; determining that the second ad request is not a duplicate of any of the second set of previously received ad requests; wherein the method is executed by at least one device including a hardware processor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
receiving, by a particular entity involved in real-time transactions for sale of ad impressions, a first ad request and a first digital signature, wherein the first ad request comprises a first request for a first advertisement to be placed on a first ad space within a first piece of web content, the first ad request is generated in response to a loading of the first piece of web content, a first set of code of the first piece of web content indicates a presence of the first ad space, and the first digital signature is generated using a first key associated with a first publisher of the first piece of web content; determining that the first publisher is associated with the first ad request; selecting the first key, from a plurality of keys, based on the first publisher; executing a signature generation algorithm using the first ad request and the first key, selected from the plurality of keys, to generate a second digital signature; determining if the first digital signature matches the second digital signature; responsive to determining the first digital signature matches the second digital signature; verifying that the first ad request is associated with the first publisher that is associated with the first key; forwarding, by the particular entity, the first ad request as a first verified ad request to a first downstream entity involved in the real-time transactions for sale of ad impressions; wherein forwarding the first ad request as the first verified ad request is further responsive to; identifying a first nonce included in the first ad request, wherein the first nonce serves as a first unique identifier of the first ad request; determining that the first nonce included in the first ad request does not match any nonce included in a first set of previously received ad requests; determininq that the first ad request is not a duplicate of any of the first set of previously received ad requests; receiving, by the particular entity, a second ad request and a third digital signature, wherein the second ad request comprises a second request for a second advertisement to be placed on a second ad space within a second piece of web content, the second ad request is generated in response to a loading of the second piece of web content, a second set of code of the second piece of web content indicates a presence of the second ad space, and the third digital signature is generated using a second key associated with a second publisher of the second piece of web content; determining that the second publisher is associated with the second ad request; selecting the second key, from the plurality of keys, based on the second publisher; executing the signature generation algorithm using the second ad request and the second key, selected from the plurality of keys, to generate a fourth digital signature; determining if the third digital signature matches the fourth digital signature; responsive to determining the third digital signature matches the fourth digital signature; verifying that the second ad request is associated with the second publisher that is associated with the second key; forwarding, by the particular entity, the second ad request as a second verified ad request to a second downstream entity involved in the real-time transactions for sale of ad impressions; wherein forwarding the second ad request as the second verified ad request is further responsive to; identifying a second nonce included in the second ad request, wherein the second nonce serves as a second unique identifier of the second ad request; determining that the second nonce included in the second ad request does not match any nonce included in a second set of previously received ad requests; determining that the second ad request is not a duplicate of any of the second set of previously received ad requests; wherein the method is executed by at least one device including a hardware processor. - View Dependent Claims (10, 14, 15, 16)
-
-
11. A method, comprising:
-
receiving, by a particular entity involved in real-time transactions for sale of ad impressions, a plurality of public keys, including a first public key and a second public key; receiving, by the particular entity, a first ad request and a first digital signature, wherein the first ad request comprises a first request for a first advertisement to be placed on a first ad space within a first piece of web content, the first ad request is generated in response to a loading of the first piece of web content, a first set of code of the first piece of web content indicates a presence of the first ad space, the first digital signature is generated using a first private key associated with a first publisher of the first piece of web content, and the first public key and the first private key are different; determining that the first publisher is associated with the first ad request; selecting the first public key, from the plurality of public keys, based on the first publisher; executing a signature verification method by applying the first public key to the first ad request and the first digital signature to determine if the first digital signature matches the first ad request; responsive to determining that the first digital signature matches the first ad request; verifying that the first ad request is associated with the first publisher that is associated with both the first private key and the first public key; forwarding, by the particular entity, the first ad request as a first verified ad request to a first downstream entity involved in the real-time transactions for sale of ad impressions; wherein forwardinq the first ad request as the first verified ad request is further responsive to; identifying a first nonce included in the first ad request, wherein the first nonce serves as a first unique identifier of the first ad request; determining that the first nonce included in the first ad request does not match any nonce included in a first set of previously received ad requests; determininq that the first ad request is not a duplicate of any of the first set of previously received ad requests; receiving, by the particular entity, a second ad request and a second digital signature, wherein the second ad request comprises a second request for a second advertisement to be placed on a second ad space within a second piece of web content, the second ad request is generated in response to a loading of the second piece of web content, a second set of code of the second piece of web content indicates a presence of the second ad space, the second digital signature is generated using a second private key associated with a second publisher of the second piece of web content, and the second public key and the second private key are different; determining that the second publisher is associated with the second ad request; selecting the second public key, from the plurality of public keys, based on the second publisher; executing the signature verification method by applying the second public key to the second ad request and the second digital signature to determine if the second digital signature matches the second ad request; responsive to determining that the second signature matches the second ad request; verifying that the second ad request is associated with the second publisher that is associated with both the second private key and the second public key; forwarding, by the particular entity, the second ad request as a second verified ad request to a second downstream entity involved in the real-time transactions for sale of ad impressions; wherein forwardinq the second ad request as the second verified ad request is further responsive to; identifying a second nonce included in the second ad request, wherein the second nonce serves as a second unique identifier of the second ad request; determining that the second nonce included in the second ad request does not match any nonce included in a second set of previously received ad requests; determining that the second ad request is not a duplicate of any of the second set of previously received ad requests; wherein the method is executed by at least one device including a hardware processor. - View Dependent Claims (12, 13, 17, 18, 19, 20)
-
Specification