CHIPS'i geliştirmek için sektörle çalışma

Bu yazıda, Chrome ekibinin CHIPS'i uygularken karşılaştığı iki zorluk ve topluluk geri bildirimlerinin teklif tasarımının geliştirilmesinde nasıl önemli bir rol oynadığı açıklanmaktadır.

Milica Mihajlija
Milica Mihajlija
Jeremy Ney
Jeremy Ney

Bağımsız Bölümlendirilmiş Duruma Sahip Çerezler (CHIPS), geliştiricilerin bir çerezi, üst düzey site başına ayrı çerez kutularıyla "bölümlendirilmiş" depolamaya dahil etmelerini sağlayan bir Özel Korumalı Alan teknolojisidir.
CHIPS'in kullanım alanlarına örnek olarak, siteler arası alt kaynakların, kullanıcının tek bir üst düzey sitedeki etkinliğine (ör. üçüncü taraf sohbet widget'ları, harita yerleştirmeleri, alt kaynak CDN yük dengeleme, gözetimsiz İYS sağlayıcıları vb.) odaklanılan bir oturum veya kalıcı durum kavramını gerektirdiği durumlar bulunur.

CHIPS, açık web standardı olma hedefiyle geliştirilmektedir. PrivacyCG'de bu konu tartışılmakta ve 7 ay süreyle kaynak denemesi yapılmıştır ve bu süre içinde Chrome ekibi yararlı geri bildirimler almıştır. Geliştirme sırasında ekip, bu geri bildirimleri keşfetmek için kilit paydaşlarla çalıştı. Böylece, web ekosistemine daha iyi hizmet eden güncellenmiş bir tasarım ortaya çıktı.

Şimdi de Chrome ekibinin CHIPS'i uygularken karşılaştığı iki zorluğu ve topluluk geri bildiriminin teklif tasarımının geliştirilmesinde nasıl önemli bir rol oynadığını inceleyelim.

Ana makine ön eki kaldırılıyor ve Domain şartı yok

İyi güvenlik uygulamalarını teşvik etmek için CHIPS tasarımı, çerezlerin yalnızca güvenli protokoller tarafından ayarlanması ve güvenli protokoller üzerinden gönderilmesi ve bölümlendirilmiş çerezlerin Secure ile ayarlanmasını gerektirir.

İlk teklif, bu şartların yanı sıra bölümlendirilmiş çerezlerde Domain özelliğine izin vermiyordu. Çerezlerde Domain alanının atlanması, bunların bir bölüm içindeki farklı üçüncü taraf alt alan adları arasında paylaşılmasını engelledi.

Kaynak denemesi sırasında Chrome ekibi, iş ortaklarından ve diğer paydaşlardan, alan kullanmama gereksiniminin, alt alan adlarına sahip sitelerin CHIPS uygulamasını zorlaştırdığını duymuştur. Örneğin, shop.example.com ve pay.example.com adlı kullanıcıların bölümlendirilmiş kurabiye kavanozlarını paylaşmasını zorlaştırır. Diğer durumlarda, yerleştirilmiş bağlamlarda kimlik doğrulama akışlarını zorlaştırıyordu.

pay.example.com ve shop.example.com sitelerinin gösterildiği şema

Chrome ekibi bu geri bildirimi değerlendirdi ve alan adı olmaması şartını kaldırmanın gizlilikle ilgili zorluklara neden olmayacağına, ancak kullanılabilirliği artıracağına karar verdi. Bunun üzerine CHIPS ürün ekibi, GitHub'da bir tartışma açarak bu gereksinimin kaldırılmasıyla ilgili daha fazla geri bildirim gönderdi. CHIPS'i test eden pek çok şirket yanıt verdi ve bu değişikliğin kendi kullanım alanları açısından önemiyle ilgili herkese açık yorumlarda bulundu.

Chrome, geri bildirimi W3C'nin Gizlilik Topluluğu Grubu'na iletti ve güncellenen teklifi sundu. Firefox ve Edge, değişikliği onayladı ancak Safari herhangi bir endişe duymadı. Ertesi gün, Chrome ekibi Blink-Dev'i güncelledi ve şartın kaldırılmasına yönelik planı CHIPS GitHub deposunda paylaştı.

CHIPS ekibi başlangıçta bu gereksinimi, sitelerin kötü amaçlı veya güvenliği ihlal edilmiş alt alan adlarından siteler arası çerez almamasını garanti etmek ve alt alanlar arasında veri sızıntısı yapmak için alan adı çerezlerini kanal olarak kullanma olasılığını azaltmak amacıyla önermişti.

Bu ek güvenlik avantajları sağlasa da Tableau, bazı mevcut uygulama mimarileri alt alanlar arasında çerez paylaşımına dayandığından CHIPS'in benimsenmesinde zorluklara yol açtığını vurguladı.

Chrome bu değişikliği yaptıktan sonra, artık Salesforce'a ait olan görsel analiz platformunu geliştiren şirket Tableau şunları paylaştı:

Bu adlandırma değişikliğinin kaldırılması, "SameSite=None" özelliğini ve dolayısıyla daha "known" (bilinen) bir miktar ekleme şartını önceki değişikliklere göre çok daha uygun hale getirir. Google'ın geri bildiriminizi alması, sonuçları incelemesi ve geçiş sürecini kolaylaştırmak amacıyla bu değişikliği yapması için teşekkür ederiz. Lee Graber, Yazılım Mühendisliği Mimarı, Tableau

Bu süreç sayesinde CHIPS'in paydaşlar için uygulanması kolay hale getirilirken kullanıcıların gizliliğinin korunması sağlandı.

CHIPS'in uygulanmasındaki bir diğer zorluk da statik çerez sınırıydı.
Çerezlerin bellekte fazla yer kaplamasını önlemek için ilk tasarımda bölüm başına her site için 10 çerezlik sayısal sınır öneriliyordu.

Akamai, bölümlendirilmiş çerezler için önerilen sınırın, müşterilerinin içeriğini barındırması amacıyla üst düzey alan sunan CDN'ler (ör. customer.cdn.xyz) gibi hizmetler için yeterli olmayabileceğine dair herkese açık geri bildirimi paylaştı. Örneğin, hem customer1.cdn.xyz hem de customer2.cdn.xyz üçüncü taraf içeriği sunabilir ve her biri kendi çerezlerini ayarlayabilir. Bunun gibi birden fazla müşteri sitesi başka bir web sitesine yerleştirilirse, bölüm başına 10 çerez sınırına ulaşılabilir.

Chrome ekibi diğer forumlarda, iş ortağı toplantılarında ve W3C tartışmalarında da benzer geri bildirimler aldı. Bu nedenle, bu kullanım alanlarında ortaya çıkan çerez sınırı sorununu çözmenin en iyi yollarını düşündüler.

Tek bir alanın, istemcilerin makinelerinde sahip olduğu maksimum SameSite=None çerez sayısını gösteren şema
Tek bir alanın istemci makinelerinde sahip olduğu maksimum SameSite=None çerez sayısını gösteren şema

Chrome, topluluk geri bildirimlerinin nasıl ekleneceğini değerlendirdikten sonra TPAC 2022'de CHIPS'nin statik 10 çerez sınırından belleğe dayalı olarak _dynamic _10 kb'lık bir sınıra geçtiğini önerdi. Analiz, bu değişikliğin web'deki kullanım alanlarının% 99'unu kapsaması gerektiğini ve Chrome'un ulaşmaya çalıştığı (siteler arası kullanıcılar hakkında paylaşılan çok fazla bilgiyi sınırlamak) gizlilik ilkelerini korurken temel kullanımları koruyacağını ortaya koydu.

Diğer tarayıcı tedarikçileri de katılım vererek güncellenmiş çözümle anlaştıklarını belirtti. Bu da CHIPS'in PrivacyCG'de tarayıcılar arası desteği sürdürmesi açısından önemliydi.

Sonuç olarak, Chrome yeni sınırı uyguladı ve çözümü CHIPS tasarımına ekledi.

Sektörle çalışma

CHIPS'in gelişimi boyunca pek çok iş ortağından geri bildirimler aldık ve birlikte çalışmak, web'de gizliliği iyileştirme çabalarında hayati bir rol oynadı.

Akamai, Google gibi diğer sektör liderleriyle çeşitli cephelerde işbirliğine sahip. CHIPS programı örneğinde sağladığımız geri bildirim ufak bir ayrıntı gibi görünebilir, ancak bu değişiklik, nihai hedefe ulaşmaya devam ederken iyi kullanım alanlarında olumsuz etkiyi minimum düzeyde tutmak üzere çok faydalı olacaktır. İlgili kuruluşlarımız, kendi yöntemleriyle interneti daha hızlı ve daha güvenli hale getirmek için çalışıyor. Birlikte çalıştığımızda internetin tamamı daha iyi bir yer olacak. Martin Meyer, Akamai Technologies Kıdemli Mimar

CHIPS, Özel Korumalı Alan'daki teknolojilerin iyileştirilmesi için ekosistemden alınan geri bildirimlerin önemli olduğunu gösterdi. GitHub'da açık web görüşmeleri, W3C toplantıları ve Chrome ekibiyle devam eden etkileşim, Chrome'un kararlı sürümünde kullanıma sunulan değişikliklere doğrudan katkıda bulundu. Chrome ekibi bu geri bildirimleri çeşitli tekliflerde duymaya hevesli. Bu da teknolojilerin web'de geliştirilip kullanıma sunulma şekliyle ilgili büyük bir fark yaratıyor.