Aynı masaüstü uygulamasının hem sürüm sayfasında hem bir ayna sitesinde indirilebildiğini düşünün. Dosya adı ve sürüm numarası aynıdır; yine de kullanıcı şu soruları yanıtlamalıdır: Dosyalar gerçekten aynı mı, kim yayımladı, beklenen kod ve derleme sürecinden mi geldi ve kendi cihazında çalıştırmaya uygun mu?

Bu sorular farklı kanıtlar gerektirir. Bütün doğrulama yöntemlerini “güvenlik sertifikası” diye adlandırmak, karşılayamayacakları beklentiler yaratır ve geliştiricilerin yayın sürecindeki boşlukları görmesini zorlaştırır.

Sağlama toplamı dosyaların eşleşip eşleşmediğini gösterir

İndirme sonrası karma değerini hesaplayıp beklenen değerle karşılaştırmak, içeriğin eşleşmesini denetler. Ancak beklenen değerin güvenilir bir kanaldan gelmesi önemlidir. Dosya ve sağlama toplamı aynı doğrulanmamış sayfadan geliyorsa uyuşmaları yayıncının kimliğini kanıtlamaya yetmez.

Tersine, farklı karma değerleri dosyaların farklı olduğunu gösterir ama tek başına kötü niyeti kanıtlamaz. Farklı derlemeler, yeniden paketleme veya yanlış indirme de buna yol açabilir. Dosyayı doğrulanmış sürüm saymayı bırakıp kaynağı, hedef platformu ve ilgili sağlama kaydını yeniden kontrol etmek gerekir.

Yayıncılar açık dosya adlarını, sürüm bilgisini ve sağlama listelerini birlikte yönetmelidir. Kullanıcı eski bir yazıdan karma değeri kopyalayıp başka platformun veya başka bir derlemenin kurulum paketiyle karşılaştırmak zorunda kalmamalıdır.

İmza doğrulamasında beklenen kimlik de denetlenmelidir

Dijital imza, imzalayanla imzalı veriyi ilişkilendirir; ancak doğrulama bu kimliğin beklenen kimlik olup olmadığını da belirlemelidir. Sigstore belgeleri imzanın yanı sıra ilgili kimlik ve sertifika veren kuruluş gibi koşulların da kontrolünü ister. Ayrım tam olarak budur. Sigstore doğrulama belgeleri

Kullanıcı “imza geçerli” gördüğünde hangi yayıncıya veya iş akışına ait olduğunu da doğrulamalıdır. Geliştirici, resmî paketleri hangi kimliklerin imzalayabileceğini belirtmelidir. Matematiksel olarak doğrulanabilen her imza, dosyaya kendiliğinden resmî sürüm statüsü kazandırmamalıdır.

Yayıncı sertifika veya imzalama yöntemi değiştirdiğinde de denetlenebilir bir açıklama sağlamalıdır. Kullanıcıdan o anda kaynağı belirsiz bir sertifikaya güvenmesini istemek, eksiksiz bir güncelleme süreci değildir.

Derleme kökeni paketi üretim sürecine bağlar

GitHub artifact attestation, derleme kökenini kaydedip çıktının depo ve iş akışı gibi bilgilerle ilişkisini doğrulamaya yardımcı olabilir. Dosyanın nasıl üretildiğine dair kanıt sağlar; ancak gerçek çıktıyla beklenen kimlik yine kontrol edilmelidir. GitHub derleme kanıtı belgeleri

SLSA derleme seviyeleri, köken kaydının bulunmasını, barındırılan platformun oluşturduğu imzalı köken kaydını ve daha sıkı derleme platformu korumalarını ayırır. Bir seviye belirtilirken kapsamı ve dayanağı açıklanmalı; sayı tüm yazılım risklerini kapsayan bir puan gibi kullanılmamalıdır. SLSA derleme seviyeleri

Kanıt Esas olarak yanıtladığı soru Tek başına kanıtlayamadığı
Sağlama toplamı Beklenen dosya içeriği alındı mı? Yayıncı kimliği ve programın güvenli davranışı
Dijital imza Hangi veriyi kim imzaladı? İmzalayanın güven koşullarınızı karşıladığı
Derleme kökeni kanıtı Çıktı hangi derleme sürecinden geldi? Tüm kaynak kodun ve bağımlılıkların sorunsuz olduğu
Yeniden üretilebilir derleme Belirlenen koşullarda aynı çıktı yeniden üretilebiliyor mu? Yazılımda açık veya uygunsuz davranış bulunmadığı

Bu kanıtlar birbirini tamamlayabilir. Geliştirici hangi kanıtların sağlandığını ve hangi kontrollerin bağımsız yapılması gerektiğini açıklamalıdır.

Yeniden üretilebilirlik açık girdiler ve ortam ister

Reproducible Builds projesi, aynı kaynak kodu, derleme ortamı ve talimatları verildiğinde belirlenen çıktının bayt bayt aynı üretilebilmesini yeniden üretilebilir derleme olarak tanımlar. Bu, “benim bilgisayarımda derleniyor” ifadesinden daha kesin bir doğrulama hedefidir. Yeniden üretilebilir derleme tanımı

Yayıncılara araç zincirini, bağımlılık kilit bilgilerini, derleme parametrelerini ve bunların çıktılarla ilişkisini saklamalarını öneriyoruz. Yeniden üretilebilirlik henüz sağlanmadıysa, farkları gizleyip başarı ilan etmek yerine ne kadarının yeniden oluşturulabildiğini doğru kaydetmek gerekir.

Açık deponun kapsamı da anlatılmalıdır. Depo temel kaynak kodunu içerebilir; ağırlıklı olarak derleme araçları, yapılandırmalar ve üst kaynakta üretilen uygulama paketleri de barındırabilir. Kullanıcı, hangi kısımları gerçekten inceleyip yeniden derleyebildiğini bilerek köken kanıtını değerlendirmelidir.

Kullanıcılar için bir indirme kontrol sırası

  1. Yalnızca arama reklamlarına veya iletilen bağlantılara dayanmak yerine projenin resmî girişinden sürüm deposunu doğrulayın.
  2. Sürüm notlarını okuyup işletim sistemini, işlemci mimarisini ve yayın kanalını kontrol edin.
  3. Dosyayı ilgili sağlama değeriyle karşılaştırın; imza veya köken kanıtı varsa beklenen kimliği ve kapsamı da doğrulayın.
  4. Bakım durumunu ve bilinen sınırlamaları inceleyin; “en son” etiketini doğrudan üretim kullanımına uygunluk saymayın.
  5. Bilgiler çelişiyorsa sürümü ve dosya adını saklayıp projenin destek kanalından açıklama isteyin.

Bu süreç her kullanıcının derleme mühendisi olmasını gerektirmez. Ürün, karmaşık kanıtları açık bir sürüm sayfasında düzenleyebilir: Dosya nereden geliyor, kime uygun, nasıl kontrol edilir ve sorun olduğunda nereye sorulur?

Geliştirici için bu bilgi zincirini sürekli korumak, bir defalık “doğrulandı” etiketi koymaktan daha değerlidir. Eski sürüm çekildiğinde, imzalama değiştiğinde veya güncelleme başarısız olduğunda ilgili açıklamalar bulunabilmelidir.

AlphaBiz’in açık depo açıklaması, derleme araçlarıyla üst kaynakta üretilmiş uygulama paketlerini ayırır. Bu tür masaüstü uygulamalarını tartışırken biz de açık depo, eksiksiz kaynak kodu ve yeniden üretilebilir yayını karıştırmadan gerçek inceleme kapsamını açıklamalıyız. AlphaBiz proje açıklaması

Geliştiriciler bir yayın kanıtı envanterini tamamlayarak, kullanıcılar ise sık kullandıkları bir uygulamanın tek bir indirmesini kontrol ederek başlayabilir. Sürüm sayfasında görmek istediğiniz doğrulama bilgilerini AlphaBiz Discussions alanında paylaşın.