Bekerja sama dengan industri untuk mengembangkan CHIPS

Menjelajahi dua tantangan yang dihadapi tim Chrome dalam menerapkan CHIPS dan bagaimana masukan komunitas memainkan peran penting dalam mengembangkan desain proposal.

Cookie Memiliki Status Partisi Independen (CHIPS) adalah teknologi Privacy Sandbox yang memungkinkan developer mengikutsertakan cookie ke dalam penyimpanan "terpartisi", dengan stoples cookie terpisah per situs tingkat atas.
Contoh kasus penggunaan untuk CHIPS mencakup skenario saat subresource lintas situs memerlukan beberapa gagasan tentang sesi atau status persisten yang dicakupkan ke aktivitas pengguna di satu situs tingkat teratas, seperti widget chat pihak ketiga, sematan peta, load balancing CDN subresource, penyedia CMS headless, dan lainnya.

CHIPS dikembangkan dengan tujuan menjadi standar web terbuka. Fitur ini sedang dibahas di PrivacyCG dan telah memiliki uji coba origin selama 7 bulan dan tim Chrome telah menerima masukan yang bermanfaat. Selama pengembangan, tim bekerja sama dengan pemangku kepentingan utama untuk mempelajari masukan tersebut, sehingga menghasilkan desain baru yang dapat melayani ekosistem web dengan lebih baik.

Mari kita pelajari dua tantangan yang dihadapi tim Chrome dalam menerapkan CHIPS dan bagaimana masukan komunitas memainkan peran penting dalam mengembangkan desain proposal.

Menghapus awalan host dan tanpa persyaratan Domain

Untuk mendorong praktik keamanan yang baik, desain CHIPS mengharuskan cookie hanya ditetapkan oleh dan dikirim melalui protokol yang aman, serta cookie yang dipartisi harus ditetapkan dengan Secure.

Bersama dengan persyaratan ini, proposal awal tidak mengizinkan atribut Domain pada cookie yang dipartisi. Dengan menghapus Domain pada cookie, Anda tidak dapat membagikannya di antara subdomain pihak ketiga yang berbeda dalam sebuah partisi.

Selama uji coba origin, tim Chrome mengetahui dari partner dan pemangku kepentingan lainnya bahwa persyaratan tanpa domain menyulitkan situs dengan subdomain untuk menerapkan CHIPS. Misalnya, akan mempersulit shop.example.com dan pay.example.com untuk berbagi stoples kue yang dipartisi. Dalam kasus lain, hal ini membuat alur autentikasi sulit dalam konteks tersemat.

Diagram yang menunjukkan situs pay.example.com dan shop.example.com

Tim Chrome mengevaluasi masukan ini dan menyimpulkan bahwa menghapus persyaratan tanpa domain tidak akan menciptakan tantangan privasi, tetapi akan meningkatkan kegunaan. Sebagai respons, tim produk CHIPS membuka diskusi di GitHub, mengundang lebih banyak masukan tentang penghapusan persyaratan ini. Beberapa perusahaan yang menguji CHIPS merespons dan memberikan komentar secara publik tentang pentingnya perubahan ini untuk kasus penggunaan mereka.

Chrome mempertimbangkan masukan dari Privacy Community Group W3C dan mempresentasikan proposal yang diperbarui. Firefox dan Edge menyetujui perubahan tersebut, sedangkan Safari tidak mengajukan masalah apa pun. Hari berikutnya, tim Chrome mengupdate Blink-Dev dan mempresentasikan rencana untuk menghapus persyaratan tersebut di repositori GitHub CHIPS.

Tim CHIPS awalnya mengusulkan persyaratan ini untuk menjamin bahwa situs tidak menerima cookie lintas situs dari subdomain yang berbahaya atau disusupi, serta mengurangi kemungkinan penggunaan cookie Domain sebagai saluran untuk membocorkan data di seluruh subdomain.

Meskipun penerapan ini memberikan manfaat keamanan tambahan, Tableau menyoroti tantangan dalam pengadopsian CHIPS karena beberapa arsitektur aplikasi saat ini mengandalkan berbagi cookie antar-subdomain.

Setelah Chrome melakukan perubahan ini, Tableau, perusahaan di balik platform analisis visual yang kini dimiliki oleh Salesforce, berbagi:

Penghapusan perubahan penamaan ini membuat persyaratan menjadi jauh lebih selaras dengan perubahan sebelumnya untuk menambahkan atribut `SameSite=None` sehingga menjadi kuantitas yang lebih 'diketahui'. Kami menghargai masukan yang Anda berikan kepada Google, yang mempelajari dampaknya, dan melakukan perubahan untuk membantu mendukung transisi yang lebih mudah. Lee Graber, Software Engineering Architect, Tableau

Melalui proses ini, CHIPS lebih mudah diterapkan bagi pemangku kepentingan sekaligus menjaga privasi pengguna.

Tantangan lain dalam menerapkan CHIPS adalah batas cookie statis.
Guna mencegah jejak memori yang besar untuk cookie, desain awal mengusulkan batas numerik 10 cookie per situs per partisi.

Akamai menyampaikan masukan publik bahwa batas yang diusulkan untuk cookie terpartisi mungkin tidak memadai bagi layanan seperti CDN yang menawarkan domain level teratas untuk menghosting konten pelanggan mereka (seperti customer.cdn.xyz). Misalnya, customer1.cdn.xyz dan customer2.cdn.xyz dapat menayangkan konten pihak ketiga dan masing-masing dapat menetapkan beberapa cookie mereka sendiri. Jika beberapa situs pelanggan seperti ini disematkan di situs lain, situs tersebut dapat mencapai batas 10 cookie per partisi.

Tim Chrome mendengar masukan serupa di forum lain, di seluruh rapat partner dan diskusi W3C, sehingga mereka mempertimbangkan cara terbaik untuk mengatasi tantangan terkait batasan cookie yang disajikan dalam kasus penggunaan tersebut.

Diagram yang menunjukkan jumlah maksimum cookie SameSite=None yang dimiliki satu domain pada komputer klien
Diagram yang menunjukkan jumlah maksimum cookie SameSite=None yang dimiliki satu domain di komputer klien

Setelah mempertimbangkan cara memanfaatkan masukan dari komunitas, Chrome mempresentasikan ide yang diperbarui di TPAC 2022, yang menunjukkan bahwa CHIPS beralih dari batas cookie statis 10 menjadi batas _dinamis _10 kb berdasarkan memori. Analisis menunjukkan bahwa perubahan ini akan mencakup 99% kasus penggunaan di web dan akan menjunjung prinsip privasi yang berusaha dicapai Chrome (membatasi terlalu banyak informasi yang dibagikan tentang pengguna lintas situs) sambil tetap mempertahankan penggunaan utama.

Vendor browser lain menimbang bahwa mereka setuju dengan solusi yang diperbarui, yang penting untuk memastikan CHIPS mempertahankan dukungan lintas browser di PrivacyCG.

Hasilnya, Chrome mengadopsi batas baru dan memasukkan solusi tersebut ke dalam desain CHIPS.

Bekerja sama dengan industri

Kami telah mendengar dari banyak partner selama pengembangan CHIPS dan bekerja sama sangat penting dalam upaya meningkatkan privasi di web.

Akamai memiliki hubungan kerja sama di beberapa bidang dengan para pemimpin industri lainnya seperti Google. Masukan yang kami berikan dalam kasus program CHIPS mungkin tampak seperti detail kecil, tetapi perubahan tersebut akan memastikan dampak negatif yang minimal terhadap kasus penggunaan yang baik, sambil tetap mencapai tujuan akhirnya. Organisasi masing-masing berupaya untuk membuat internet lebih cepat dan aman dengan cara kami sendiri, dan seluruh internet akan menjadi lebih baik jika kita bekerja sama. Martin Meyer, Senior Architect di Akamai Technologies

CHIPS telah menunjukkan bahwa masukan dari ekosistem sangat penting untuk meningkatkan kualitas teknologi di Privacy Sandbox. Membuka percakapan web di GitHub, rapat W3C, dan keterlibatan berkelanjutan dengan tim Chrome berkontribusi langsung pada perubahan yang sekarang telah diluncurkan di Chrome versi stabil. Tim Chrome ingin mendengar masukan ini dari berbagai proposal, dan hal tersebut berdampak besar pada cara teknologi dikembangkan dan diluncurkan di web.