Anahtar yönetimi ve rotasyon
Anahtarlar, platformun "güven kökleridir. Güvenilir bir anahtar yönetim sistemi (KMS/HSM + süreçleri + telemetri), kriptografiyi bir kerelik entegrasyondan günlük bir operasyona dönüştürür: Anahtarlar düzenli olarak güncellenir, kullanımları şeffaftır, uzlaşmalar yerelleştirilir ve müşteriler kesinti olmadan önemli bir değişiklik yaşarlar.
1) Hedefler ve ilkeler
Kripto çevikliği: Büyük geçişler olmadan algoritmayı/anahtar uzunluğunu değiştirme yeteneği.
En az pozlama: özel anahtarlar KMS/HSM'den ayrılmaz; İmza/şifre çözme işlemleri - silindi.
Kısa ömürlü eserler: Belirteçler/oturum anahtarları haftalar değil, dakikalar-saatler yaşar.
Çift anahtarlı/Çift sertifikalı pencereler: arızaya karşı güvenli dönüşler.
Bölgesel ve kiracı izolasyonu: anahtarlar bölgeye ve kiracıya göre bölünür.
Tam denetlenebilirlik: değişmez işlem günlüğü, HSM kalifikasyonu, erişim kontrolü.
2) Anahtar sınıflandırma
Kök CA/Ana Anahtar: Son derece nadir kullanım, HSM'de tutulur, ara anahtarları veya veri anahtarı sarmalayıcılarını serbest bırakmak için kullanılır.
Çalışma: JWT/olay imzası, TLS, webhook imzası, yapılandırma şifrelemesi/PII.
Oturum/zaman: Kanal/diyalog için DPoP, mTLS bağlama, ECDH çıkışı.
Entegrasyon: Ortak anahtarlar (ortak) ve HMAC sırları.
Veri Anahtarları (DEK): KEK altında zarf şifreleme kullanın, açıkça saklanmaz.
3) Temel tanımlama ve kullanım politikası
Her anahtarın bir'çocuk'u vardır (anahtar belirteçlerde/başlıklarda tanımlanır):yaml key:
kid: "eu-core-es256-2025-10"
alg: "ES256" # или EdDSA, RSA-PSS, AES-GCM, XChaCha20-Poly1305 purpose: ["jwt-sign","webhook-sign"]
scope: ["tenant:brand_eu","region:EE"]
status: "active" # active next retiring revoked created_at: "2025-10-15T08:00:00Z"
valid_to: "2026-01-15T08:00:00Z"
Kurallar:'bir hedef - bir anahtar "(minimum paylaşım), açık uygulama ve zamanlama alanları.
4) Anahtar yaşam döngüsü (KMS/HSM)
1. Üret: HSM/KMS'de, ihracat politikası = reddedildi.
2. Yayınla: Asimetri için - JWKS/'çocuk'ile sertifika.
3. Kullanım: Kontrollü IAM ile uzaktan işlemler (işaret/şifre çözme).
4. Döndürme: 'next' tuşunu çalıştırın ve çift kabul özelliğini etkinleştirin.
5. Retire: eskiyi "retiring'e çevirin, sonra" revolved ".
6. Yok et: Anlaşmazlık penceresinden sonra malzemeyi (tasfiye protokolü ile) yok et.
5) Rotasyon: Stratejiler
Zamanlanmış: takvim (örneğin, JWT imzası için her 1-3 ayda, TLS-serts için 6-12 ayda bir).
Haddeleme: Yavaş yavaş tüketicileri değiştirme (JWKS zaten yeni bir anahtar içeriyor; Yayıcı, önbellekleri ısıttıktan sonra yeni imzalamaya başlar).
Zorla (güvenlik): uzlaşma üzerine derhal rotasyon; Kısa çift kabul penceresi, eserlerin agresif sona ermesi.
Bölge/kiracı başına kademeli: tüm dünyayı aynı anda "alkışlamamak" için.
Altın kural: önce yayın, sonra imza yenidir ve sadece sona erdikten sonra - eskisinin hatırlanması.
6) Çift anahtarlı pencere
JWKS'yi eski ve yeni'çocuk'ile yayınlıyoruz.
Doğrulayıcılar her ikisini de kabul eder.
N dakika/saat içinde yayıcı yeni imzalamaya başlar.
Çeklerin eski/yeni'çocuk "üzerindeki payını izliyoruz.
Hedef payına ulaştığında, retyrim eskidir.
yaml jwks:
keys:
- kid: "eu-core-es256-2025-10" # new alg: "ES256"
use: "sig"
crv: "P-256"
x: "<...>"; y: "<...>"
- kid: "eu-core-es256-2025-07" # old alg: "ES256"
use: "sig"
...
7) İmza ve doğrulama politikaları
Varsayılan algoritmalar: imza ES256/EdDSA; Gerektiğinde RSA-PSS.
'Hiç'/zayıf algoritmaların yasaklanması; Doğrulama tarafında beyaz liste.
Saat eğriliği: ± 300 c, log sapmalarına izin veriyoruz.
Anahtar sabitleme (dahili hizmetler) ve kısa bir TTL JWKS önbelleği (30-60 s).
8) Zarf şifreleme ve KDF
Verileri şu şekilde saklayın:
ciphertext = AEAD_Encrypt(DEK, plaintext, AAD=tenant region table row_id)
DEK = KMS. Decrypt (KEK, EncryptedDEK )//on access
EncryptedDEK = KMS. Encrypt (KEK, DEK )//on write
KEK (Anahtar Şifreleme Anahtarı), düzenli olarak döndürülen KMS/HSM'de saklanır.
DEK, nesne/toplu iş başına oluşturulur; KEK'i döndürürken, yeniden sarma gerçekleştiririz (hızlı bir şekilde, veri yeniden şifrelenmeden).
Akışlar için - ECDH + HKDF kısa ömürlü kanal tuşları çıkışı için.
9) Bölgesellik ve çok kiracılı
Anahtarlar ve JWKS bölgeselleştirilir: 'eu-core', 'latam-core' farklı anahtar kümeleridir.
IAM/denetimin kiracı/bölgeye göre ayrılması; Anahtarlar konutlar arasında "akmaz".
Güven alanı öneki ile 'kimlik' kodu: 'eu-core-es256-2025-10'.
10) Entegrasyon sırları (HMAC, API anahtarları)
KMS destekli Gizli Mağaza'da mağaza, kısa ömürlü istemci sırlarıyla sorun (rotasyon politikası ≤ 90 gün).
Döndürme sırasında iki aktif sır (çift gizli) desteği.
Webhooks için - zaman damgası + HMAC gövde imzası; Zaman penceresi ≤ 5 dakika.
11) Erişim kontrolü ve süreçleri
IAM matrisi: kim 'üretebilir', 'işaret', 'şifre çözebilir', 'döndürebilir', 'yok edebilir' (minimum roller).
4-göz prensibi: Hassas işlemler iki onay gerektirir.
Pencereleri değiştirin: Yeni bir anahtar etkinleştirmek ve kanarya bölgelerini test etmek için pencereler.
Runbooks: zamanlanmış ve zorlanmış rotasyonlar için yordam şablonları.
12) Gözlemlenebilirlik ve denetim
Metrikler:- 'sign _ p95 _ ms', 'decrypt _ p95 _ ms', 'jwks _ skew _ ms',
- 'kid','old _ kid _ usage _ ratio'ile tüketim,
- 'valid _ signature _ rate', 'decrypt _ failure _ rate'.
- Her imza/şifre çözme işlemi'kim/ne/ne/ne zaman/nerede/çocuk/amaç'dır.
- Anahtar durumunun geçmişi ve rotasyon/iptal istekleri.
- HSM yeterliliği, anahtar malzeme erişim kayıtları.
13) Oyun kitapları (olaylar)
1. İmza anahtarı uzlaşma
Eski'çocuk'un derhal iptal edilmesi (veya minimal bir pencereyle "emekli olma'ya çevrilmesi), yeni bir JWKS'nin yayınlanması, kısaltılmış TTL belirteçleri, zorla çıkış/RT engelliliği, entegrasyon sahiplerine iletişim, retro denetim.
2. Dönüşten sonra Mass 'INVALID _ SIGNATURE'
JWKS/saat eğriltme önbelleğini kontrol edin, çift kabul döndürün, pencereyi uzatın, istemcilere dağıtın.
3. KMS/HSM gecikmesinde artış
Yerel imza önbelleğini etkinleştirmeye izin verilmiyor; Bunun yerine - yayıcıda toplu/kuyruk, otomatik ölçeklendirme HSM proxy'si, kritik akışların önceliklendirilmesi.
4. Bir bölgenin başarısızlığı
Bölgesel izolasyon prosedürlerini etkinleştirmek; Diğer bölgelerden anahtarları "çekmeyin"; Düşmüş bir bölgedeki imzalara bağlı bozunma işlevleri.
14) Test etme
Sözleşme: JWKS doğruluğu, doğru'çocuk'/alg/kullanım, müşteri uyumluluğu.
Negatif: sahte imza, eskimiş'çocuk ", yanlış alg, saat eğriliği.
Kaos: anlık rotasyon, KMS yokluğu, zaman kayması.
Yükleme: tepe imzaları (JWT/webhooks), tepe şifre çözme (PII/ödemeler).
E2E: çift anahtarlı pencere: serbest bırakma - doğrulama - trafik aktarımı - eskisinin reddi.
15) Yapılandırma Örneği (YAML)
yaml crypto:
regions:
- id: "eu-core"
jwks_url: "https://sts. eu/.well-known/jwks. json"
rotation:
jwt_sign: { interval_days: 30, window_dual: "48h" }
webhook: { interval_days: 60, window_dual: "72h" }
kek: { interval_days: 90, action: "rewrap" }
alg_policy:
sign: ["ES256","EdDSA"]
tls: ["TLS1. 2+","ECDSA_P256"]
publish:
jwks_cache_ttl: "60s"
audit:
hsm_attestation_required: true two_person_rule: true
16) JWKS örneği ve yapılarda işaretleyiciler
JWT başlık parçası:json
{ "alg":"ES256", "kid":"eu-core-es256-2025-10", "typ":"JWT" }
JWKS (genel bölüm):
json
{ "keys":[
{"kty":"EC","use":"sig","crv":"P-256","kid":"eu-core-es256-2025-10","x":"...","y":"..."},
{"kty":"EC","use":"sig","crv":"P-256","kid":"eu-core-es256-2025-07","x":"...","y":"..."}
]}
17) Anti-desenler
"Yıllarca" uzun ömürlü anahtarlar ve tüm bölgelerde ortak.
Dual-accept olmadan'bir anda "rotasyon.
Özel anahtarları KMS/HSM'den "hız için" dışa aktarın.
Karıştırma görevleri: JWT'yi imzalayın ve verileri tek bir anahtarla şifreleyin.
HSM günlükleri/yeterlilik ve IAM kısıtlamaları yokluğu.
KEK rotasyonunda DEK için yeniden sarma mekanizması yoktur.
Gizli Mağaza yerine env'de manuel "sırlar".
18) Satış öncesi kontrol listesi
- KMS/HSM'deki tüm özel anahtarlar; IAM matrisi ve 4-göz prensibi ayarlanmıştır.
- Algoritma politikaları, anahtar uzunlukları ve yaşam süreleri onaylanmıştır.
- 'çocuk 'paylaşım izleme ile etkin çift anahtarlı süreç.
- JWKS kısa TTL ve önbellek ısınma ile yayınlanır; Müşteriler önemli ≥2 kabul eder.
- Zarf şifreleme: KEK döner, DEK kesinti olmadan yeniden sarar.
- Bölgesel izolasyon ve kiracılar tarafından ayrı anahtar setleri.
- Uzlaşma/yuvarlanma/kuvvet rotasyon oyun kitapları; antrenman koşuları.
- Metrikler ('old _ kid _ usage _ ratio', 'invalid _ signature _ rate') ve uyarılar etkinleştirilir.
- contract/negative/chaos/load/E2E test paketi geçti.
- Entegrasyonlar için dokümantasyon:'id 'shift, hangi pencereler ve hata kodları nasıl işlenir.
Sonuç
Anahtar yönetimi operasyonel bir disiplindir: Bir doğruluk kaynağı olarak KMS/HSM, çift anahtarlı, bölgesel ve kiracı izolasyonu, zarf şifreleme ve gözlemlenebilirlik ile düzenli ve güvenli rotasyonlar. Bu kuralları izleyerek, ölçeklenen, olaya dayanıklı ve denetçiye açıklaması kolay bir kripto konturu elde edersiniz - ve geliştiriciler ve entegratörler acı çekmeden herhangi bir değişiklik yaşarlar.