BoringSSL, Google'ın OpenSSL kod tabanından ayrılan ve kendi ürünlerinin ihtiyaçlarına göre şekillendirdiği bir TLS/kripto kütüphanesidir. Chromium ve Android gibi Google projeleri tarafından kullanılır; bazı ağ yazılımları ve QUIC uygulamaları da bu kütüphaneye dayanır.
OpenSSL'den farkı
- Kararlı API/ABI garantisi yoktur. Proje, kendi kullanıcıları dışında uyumluluk sözü vermez; sürümler arası değişiklikler kırıcı olabilir.
- Daha küçük yüzey. Eski ve az kullanılan birçok özellik çıkarılmıştır.
- Sürüm paketleri sunmaz. Genellikle belirli bir commit kaynak koddan derlenerek kullanılır.
- Yeni TLS özellikleri (ör. Encrypted Client Hello gibi) bazen OpenSSL'den önce burada denenir.
Sitenizi ilgilendirir mi?
Sıradan bir web sitesi için seçim yapmanız gerekmez. Ziyaretçileriniz Chrome kullandığında tarayıcı tarafında BoringSSL devrededir; sunucunuzda ise genellikle dağıtımın sunduğu OpenSSL bulunur. Sertifikanız, bu iki kütüphane arasında farksız çalışır çünkü X.509 ve TLS standart protokollerdir.
Sunucuda kullanmak
Bazı geliştiriciler HTTP/3 (QUIC) desteği gibi nedenlerle Nginx'i BoringSSL ile derler. Bu yaklaşım resmi paket desteği dışındadır ve şunları gerektirir:
- Kaynak koddan derleme ve sürüm takibini kendiniz yapma.
- Güvenlik yamalarını manuel izleme.
- Modül uyumluluğunu her Nginx sürümünde yeniden test etme.
Kurumsal ortamlarda bu sorumluluk çoğu zaman gereksiz risk olduğundan, dağıtım paketlerindeki OpenSSL (veya HTTP/3 için dağıtımın desteklediği yapı) tercih edilir.
Kısa özet
- BoringSSL genel amaçlı "OpenSSL yerine" bir ürün değildir.
- Sunucunuzda hangi kütüphanenin kullanıldığını
nginx -Vveyaopenssl versionile kontrol edebilirsiniz. - Sertifika kurulumu için kütüphane seçimi değişmez; PEM dosyaları aynı kalır.
Ne zaman düşünülmeli?
Kendi ürününüze gömülü bir TLS yığını yazıyorsanız, QUIC tabanlı bir istemci geliştiriyorsanız veya Google'ın araçlarıyla çalışıyorsanız BoringSSL ile karşılaşırsınız. Bu durumlarda sürümü proje içine sabitleyip (vendoring) güncellemeleri kendiniz yönetmeniz beklenir.
Sertifika seçenekleri için SSL sertifikaları sayfasına, kurulum sonrası test için SSL kontrol aracına bakabilirsiniz.