Exploramos dos de los desafíos que debió enfrentar el equipo de Chrome al implementar CHIPS y la manera en la que los comentarios de la comunidad cumplieron un rol crucial para mejorar el diseño de la propuesta.
Cookies con estado particionado independiente (CHIPS) es una tecnología de Privacy Sandbox que permite a los desarrolladores habilitar una cookie en el almacenamiento "particionado", con contenedores de cookies separados por sitio de nivel superior.
Los ejemplos de casos de uso de CHIPS incluyen cualquier situación en la que los subrecursos entre sitios requieran algún tipo de noción de sesión o estado persistente que se limite a la actividad de un usuario en un solo sitio de nivel superior, como widgets de chat de terceros, incorporaciones de mapas, balanceo de cargas de CDN de subrecursos, proveedores de CMS sin cabeza y mucho más.
CHIPS se está desarrollando con el objetivo de convertirse en un estándar de la Web abierta. Se está analizando en PrivacyCG y tuvo una prueba de origen de 7 meses durante la cual el equipo de Chrome recibió comentarios útiles. Durante el desarrollo, el equipo trabajó con partes interesadas clave para explorar esos comentarios, lo que dio como resultado un diseño actualizado que se adapta mejor al ecosistema web.
Exploremos dos de los desafíos que debió enfrentar el equipo de Chrome al implementar CHIPS y la manera en la que los comentarios de la comunidad cumplieron un rol crucial para mejorar el diseño de la propuesta.
Quita el prefijo de host y no hay requisitos de Domain
Para fomentar buenas prácticas de seguridad, el diseño de CHIPS requiere que las cookies solo se configuren y se envíen a través de protocolos seguros, y que las cookies particionadas se configuren con Secure
.
Junto con estos requisitos, la propuesta inicial no permitía el atributo Domain
en las cookies particionadas. Omitir Domain
en las cookies impedía compartirlas entre diferentes subdominios de terceros dentro de una partición.
Durante la prueba de origen, el equipo de Chrome recibió comentarios de socios y otras partes interesadas que indicaban que el requisito de no tener dominios dificultaba que los sitios con subdominios implementaran CHIPS. Por ejemplo, sería más difícil para shop.example.com
y pay.example.com
compartir los contenedores de cookies particionados. En otros casos, dificultaba los flujos de autenticación en contextos incorporados.
El equipo de Chrome evaluó estos comentarios y concluyó que quitar el requisito de no tener dominios no crearía desafíos de privacidad, pero mejoraría la usabilidad. En respuesta, el equipo del producto CHIPS abrió un debate en GitHub y pidió más comentarios sobre la eliminación de este requisito. Varias empresas que estaban probando CHIPS respondieron y comentaron públicamente sobre la importancia de este cambio para su caso de uso.
Chrome llevó los comentarios al grupo de la comunidad de privacidad del W3C y presentó la propuesta actualizada. Firefox y Edge aprobaron el cambio, y Safari no planteó ninguna inquietud. Al día siguiente, el equipo de Chrome actualizó Blink-Dev y presentó el plan para quitar el requisito en el repositorio de CHIPS en GitHub.
Inicialmente, el equipo de CHIPS propuso este requisito para garantizar que los sitios no reciban cookies de varios sitios de subdominios maliciosos o comprometidos, y mitigar la posibilidad de usar cookies de dominio como un canal para filtrar datos entre subdominios.
Si bien esto proporcionó beneficios de seguridad adicionales, Tableau destacó que presentaba desafíos para la adopción de CHIPS porque algunas arquitecturas de aplicaciones actuales dependen del uso compartido de cookies entre subdominios.
Después de que Chrome realizó este cambio, Tableau, la empresa detrás de la plataforma de análisis visual que ahora es propiedad de Salesforce, compartió lo siguiente:
Esta eliminación del cambio de nombre hace que el requisito sea mucho más coherente con los cambios anteriores para agregar el atributo "SameSite=None" y, por lo tanto, sea una cantidad más "conocida". Agradecemos que Google haya escuchado los comentarios, analizado las implicaciones y realizado el cambio para facilitar las transiciones. Lee Graber, arquitecto de Ingeniería de Software, Tableau
A través de este proceso, CHIPS se volvió más fácil de implementar para las partes interesadas y, al mismo tiempo, se mantuvo la privacidad de los usuarios.
Cómo pasar de un límite de cookies estático a uno dinámico
El otro desafío en la implementación de CHIPS fue el límite de cookies estáticas.
Para evitar un gran espacio en memoria para las cookies, el diseño inicial propuso un límite numérico de 10 cookies por sitio y por partición.
Akamai compartió comentarios públicos en los que indica que el límite propuesto para las cookies particionadas podría no ser suficiente para servicios como las CDN que ofrecen dominios de nivel superior para alojar el contenido de sus clientes (como customer.cdn.xyz). Por ejemplo, customer1.cdn.xyz y customer2.cdn.xyz podrían entregar contenido de terceros y cada uno podría establecer varias de sus propias cookies. Si varios sitios de clientes como este se incorporan en otro sitio web, es posible que se alcance el límite de 10 cookies por partición.
El equipo de Chrome escuchó comentarios similares en otros foros, en reuniones con socios y en debates del W3C, por lo que consideraron las mejores formas de resolver el desafío que presenta el límite de cookies en estos casos de uso.

Después de considerar cómo incorporar los comentarios de la comunidad, Chrome presentó una idea actualizada en TPAC 2022, en la que sugirió que CHIPS pasara de un límite estático de 10 cookies a un límite _dinámico_ de 10 KB en función de la memoria. El análisis mostró que este cambio debería abarcar el 99% de los casos de uso en la Web y respaldaría los principios de privacidad que Chrome intentaba lograr (limitar la información excesiva que se comparte sobre los usuarios en varios sitios) y, al mismo tiempo, mantener los usos clave.
Otros proveedores de navegadores se pronunciaron y dijeron que estaban de acuerdo con la solución actualizada, lo que fue importante para garantizar que CHIPS mantuviera la compatibilidad con varios navegadores en el PrivacyCG.
Como resultado, Chrome adoptó el nuevo límite y, además, incorporó la solución en el diseño de CHIPS.
Trabajar con la industria
Escuchamos a muchos socios durante el desarrollo de CHIPS y trabajar juntos fue fundamental en el esfuerzo por mejorar la privacidad en la Web.
Akamai disfruta de una relación de cooperación en varios frentes con otros líderes de la industria, como Google. Los comentarios que proporcionamos en el caso del programa CHIPS pueden parecer un detalle menor, pero el cambio será muy útil para garantizar un impacto negativo mínimo en los casos de uso positivos y, al mismo tiempo, lograr el objetivo final. Nuestras respectivas organizaciones trabajan para que Internet sea más rápida y segura a su manera, y toda la Internet es mejor cuando trabajamos juntos. Martin Meyer, arquitecto sénior de Akamai Technologies
CHIPS demostró que los comentarios del ecosistema son esenciales para mejorar las tecnologías de Privacy Sandbox. Las conversaciones abiertas en la Web en GitHub, las reuniones del W3C y la participación continua con el equipo de Chrome contribuyeron directamente a los cambios que ahora se lanzaron en la versión estable de Chrome. El equipo de Chrome está ansioso por escuchar estos comentarios sobre una variedad de propuestas, y esto marca una gran diferencia en la forma en que se desarrollan y lanzan las tecnologías en la Web.