This repository contains the source code used in our privacy and utility analysis of the Topics API for the Web from the Privacy Sandbox.
With the Topics API for the Web, Google aims to replace third-party cookies for personalized advertising. Find more details about our analysis in our paper Interest-disclosing Mechanisms for Advertising are Privacy-Exposing (not Preserving):
@inproceedings{topicsweb24_beugin,
title={Interest-disclosing Mechanisms for Advertising are Privacy-Exposing (not Preserving)},
author={Yohan Beugin and Patrick McDaniel},
booktitle={Proceedings on {Privacy} {Enhancing} {Technologies} {Symposium} ({PETS})},
year={2024},
month={july},
}
- Clone this topics_analysis
repository and the
sandbox_dependencies
submodule at once with:
git clone --recurse-submodules git@github.com:yohhaan/topics_analysis.git
(SSH)git clone --recurse-submodules https://github.com/yohhaan/topics_analysis.git
(HTTPS)
A Dockerfile
is provided under .devcontainer/
(for direct integration with
VS Code). To
manually build the image and deploy the Docker container, follow the
instructions below:
Requirement: Docker
- Build the Docker image:
docker build -t topics_analysis .devcontainer/
- Deploy a Docker container:
docker run --rm -it -v ${PWD}:/workspaces/topics_analysis \
-w /workspaces/topics_analysis \
--entrypoint bash topics_analysis:latest
Note: some commands to reproduce our results may take a long time to execute
depending on the amount of resources of your machine. We recommend running the
above command to deploy a Docker container in a
screen
session that you can then
detach and attach to your terminal as needed.
- Fetch the required Privacy Sandbox dependencies:
cd sandbox_dependencies
./fetch_all.sh
cd ..
Refer to the instructions provided in petsymposium-artifact2024.1/template.md to reproduce our analysis of the Topics API for the Web.