İçeriğe geç

Bir kaydın yolculuğu

Bir makine bir yükleme oturumu açar: bölüm etiketi, kip (ilk yükleme ya da artımlı) ve JSON işaretçileri. Ardından NDJSON partilerini karşılıklı TLS üzerinden gönderir; partiler isteğe bağlı olarak zstd ile sıkıştırılabilir. Her parti bir SHA-256 Content-Digest taşır ve özet tutmazsa hiçbir şey saklanmaz. İlk yükleme oturumları commit anında, artımlı oturumlar ise doğrulanan her partide yayınlanır.

Her kayıt sıkıştırılır ve kendi rastgele 32 baytlık anahtarı ile 96 bitlik nonce kullanılarak AES-256-GCM ile mühürlenir. Anahtar ve nonce asla yeniden kullanılmaz. Ek doğrulanmış veri; kiracıyı, parçayı, partiyi ve kayıt kimliğini mühüre bağlar. Kriptografi yalnızca Go standart kütüphanesiyle yapılır.

Mühürlenmiş kayıtlar değişmez bir parça dosyasında toplanır; her parti bir parçadır. Parçanın kayıt anahtarları, ofsetleri, zaman damgaları ve sahip takma adları bir anahtar bloğunda toplanır. Anahtar bloğu, her sürümde yeniden üretilen parça başına bir veri anahtarıyla mühürlenir.

Veri anahtarı iki kez sarılır:

  • Dönem anahtarıyla (AES-256): her dönem için birincil HSM’de üretilir ve dışarı çıkarılamaz.
  • DR anahtarıyla (RSA-OAEP SHA-256, en az 3072 bit): özel anahtar DR HSM’inde durur.

Kayıt ve sahip kimlikleri yalnızca mühürlü anahtar bloklarının içinde açık durur. Eşleştirme, 32 baytlık kiracı anahtarı altında HMAC-SHA256 takma adlarıyla yapılır.

Veri Yer
Şifreli parçalar Özel IPFS ağı (CIDv1, sabitlenir ve CID döndürülmeden önce geri okunur)
Anahtar blokları S3 uyumlu ayrı bir depo
Katalog, anahtar günlükleri ve API durumu PostgreSQL
Dönem, kök, makbuz ve istemci CA anahtarları İki PKCS#11 HSM bölümü: birincil ve DR

Katalog yalnızca bölüm, gün aralığı, sayılar ve boyutlar gibi açık meta veriyi tutar. Açık metin yalnızca veri düzleminin belleğinde bulunur.

Düğümler 32 baytlık bir swarm anahtarını paylaşır ve o anahtar olmadan başlamaz. Önyükleme, DHT yönlendirmesi, sağlayıcı kayıtları, ağ geçidi, röle ve delik açma kapalıdır. Tasarımın hiçbir yerinde blokzincir yoktur.

Kaydı sildiğinizde ne olduğu Silme ve imha sayfasında anlatılır.