الإدارة والتناوب الرئيسيان
المفاتيح هي "جذور الثقة في المنصة. "نظام إدارة مفاتيح موثوق به (عمليات KMS/HSM + + القياس عن بعد) يحول التشفير من تكامل لمرة واحدة إلى عملية يومية: يتم تحديث المفاتيح بانتظام، واستخدامها شفاف، والتنازلات موضعية، والعملاء يواجهون تغييرًا رئيسيًا بدون توقف.
1) الأهداف والمبادئ
رشاقة التشفير: القدرة على تغيير الخوارزمية/طول المفتاح دون هجرات كبيرة.
الأقل تعرضاً: لا تترك المفاتيح الخاصة نظام إدارة كوسوفو/نظام إدارة الموارد البشرية ؛ عمليات التوقيع/فك التشفير - محذوفة.
القطع الأثرية قصيرة العمر: الرموز/مفاتيح الجلسة تعيش دقائق - ساعات، وليس أسابيع.
نوافذ ثنائية المفتاح/ثنائية الشهادة: دوران آمن للفشل.
العزل الإقليمي والمستأجر: يتم تقسيم المفاتيح حسب المنطقة والمستأجر.
قابلية المراجعة الكاملة: سجل المعاملات غير القابلة للتغيير، ومؤهلات HSM، ومراقبة الدخول.
2) التصنيف الرئيسي
Root CA/Master Key: استخدام نادر للغاية، محفوظ في HSM، يستخدم لإطلاق مفاتيح وسيطة أو أغلفة مفتاح البيانات.
التشغيل: توقيع JWT/حدث، TLS، توقيع webhook، تشفير config/PII.
الجلسة/الوقت: DPoP, mTLS-binding, ECDH-output for channel/dialour.
التكامل: مفاتيح الشريك (العامة) وأسرار HMAC.
مفاتيح البيانات (DEK): لا يتم تخزين تشفير المغلف المستخدم تحت KEK بشكل صريح.
3) سياسة تحديد الهوية والاستخدام الرئيسية
يحتوي كل مفتاح على «طفل» (يتم تحديد المفتاح في الرموز/الرؤوس):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"
القواعد: «هدف واحد - مفتاح واحد» (الحد الأدنى من المشاركة)، ومجالات التطبيق والتوقيت الصريحة.
4) دورة الحياة الرئيسية (KMS/HSM)
1. توليد: في HSM/KMS، مع سياسة التصدير = رفض.
2. نشر: لعدم التماثل - JWKS/شهادة مع «طفل».
3. الاستخدام: العمليات عن بعد (الإشارة/فك التشفير) باستخدام IAM الخاضع للرقابة.
4. تدوير: تشغيل المفتاح «التالي» وتمكين القبول المزدوج.
5. التقاعد: ترجمة القديم إلى «تقاعد»، ثم «إلغاء».
6. تدمير: تدمير المواد (باستخدام بروتوكول التطهير) بعد نافذة النزاع.
5) التناوب: الاستراتيجيات
الجدول الزمني: التقويم (على سبيل المثال، كل 1-3 أشهر لتوقيع JWT، 6-12 شهرًا لـ TLS-serts).
التدحرج: التبديل التدريجي للمستهلكين (يحتوي JWKS بالفعل على مفتاح جديد ؛ يبدأ الباعث في التوقيع على جديد بعد تسخين المخابئ).
القسري (الأمن): التناوب الفوري عند التوصل إلى حل وسط ؛ نافذة قصيرة مزدوجة القبول، انتهاء صلاحية القطع الأثرية.
متداخلة لكل منطقة/مستأجر: حتى لا «تصفق» للعالم بأسره في نفس الوقت.
القاعدة الذهبية: المنشور أولاً، ثم التوقيع جديد، وفقط بعد انتهاء الصلاحية - استدعاء القديم.
6) نافذة ثنائية المفاتيح
ننشر JWKS مع «الطفل» القديم والجديد.
تقبل جهات التحقق كليهما.
باعث في N دقائق/ساعات يبدأ التوقيع جديد.
نراقب حصة الشيكات على «الطفل» القديم/الجديد.
عند الوصول إلى الحصة المستهدفة، تكون إعادة التجديد قديمة.
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) سياسات التوقيع والتصديق
الخوارزميات الافتراضية: ES256/EdDSA التوقيع ؛ RSA-PSS عند الاقتضاء.
حظر الخوارزميات 'اللاوحيدة '/الضعيفة ؛ القائمة البيضاء على جانب التحقق.
انحراف الساعة: نسمح ± 300 درجة مئوية، انحرافات سجل.
تثبيت المفتاح (الخدمات الداخلية) ومخبأ TTL JWKS قصير (30-60 ثانية).
8) تشفير المغلف و KDF
تخزين البيانات مثل هذا:
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 (مفتاح التشفير الرئيسي) في KMS/HSM، ويتم تدويره بانتظام.
يتم إنشاء DEK لكل جسم/دفعة ؛ عند تدوير KEK، نقوم بإعادة الغلاف (بسرعة، بدون إعادة تشفير البيانات).
للتدفقات - ECDH + HKDF لإخراج مفاتيح القنوات قصيرة العمر.
9) الإقليمية والمتعددة المستأجرين
تم إضفاء الطابع الإقليمي على المفاتيح و JWKS: «eu-core» و «latam-core» هي مجموعات مختلفة من المفاتيح.
فصل الإدارة المتكاملة/مراجعة الحسابات حسب المستأجر/المنطقة ؛ المفاتيح لا «تتدفق» بين المساكن.
رمز "kid' مع بادئة مجال الثقة:" eu-core-es256-2025-10 ".
10) أسرار التكامل (HMAC، مفاتيح API)
تخزين في متجر Secret Store المدعوم من KMS، إصدار عبر أسرار العملاء قصيرة العمر (بوليصة التناوب ≤ 90 يومًا).
دعم سرين نشطين (سر مزدوج) أثناء التناوب.
بالنسبة للخطابات الشبكية - طابع زمني + توقيع هيئة HMAC ؛ نافذة زمنية ≤ 5 دقائق
11) مراقبة الوصول والعمليات
مصفوفة IAM: من يمكنه «التوليد»، «الإشارة»، «فك التشفير»، «الدوران»، «التدمير» (الحد الأدنى من الأدوار).
مبدأ العين الرباعية: تتطلب العمليات الحساسة تأكيدين.
تغيير النوافذ: نوافذ لتمكين مفتاح جديد واختبار مناطق الكناري.
دفاتر التشغيل: نماذج إجراءات التناوب القسري والمقرر.
12) قابلية الملاحظة ومراجعة الحسابات
المقاييس:- 'sign _ p95 _ ms',' decrypt _ p95 _ ms', 'jwks _ skew _ ms',
- الاستهلاك بواسطة «طفل»، «قديم _ طفل _ استخدام _ نسبة»،
- «invalid _ signature _ rate», «decypt _ fact _ rate».
- كل عملية توقيع/فك تشفير هي «من/ماذا/متى/أين/طفل/غرض».
- تاريخ المركز الرئيسي وطلبات التناوب/الإلغاء.
- مؤهل HSM، سجلات الوصول إلى المواد الرئيسية.
13) كتب اللعب (حوادث)
1. تسوية مفتاح التوقيع
الإلغاء الفوري لـ «الطفل» القديم (أو الترجمة إلى «التقاعد» مع الحد الأدنى من النافذة)، ونشر JWKS جديد، واختصار رموز TTL، وإعاقة الإجبار/RT، والاتصالات إلى مالكي الإدماج، والتدقيق الرجعي.
2. الكتلة «غير صالحة _ توقيع» بعد الدوران
تحقق من ذاكرة التخزين المؤقت JWKS/clock، وأعد القبول المزدوج، ومد النافذة، ووزعها على العملاء.
3. الزيادة في زمن انتقال نظام إدارة الكيمياء/الإدارة السليمة بيئياً
لا يسمح بتمكين مخبأ التوقيع المحلي ؛ بدلاً من ذلك - الدفعة/قائمة الانتظار عند الباعث، والقياس التلقائي لوكيل HSM، وتحديد أولويات التدفقات الحرجة.
4. فشل منطقة واحدة
تفعيل إجراءات العزل الإقليمية ؛ لا «تسحب» المفاتيح من مناطق أخرى ؛ تحلل الوظائف المرتبطة بالتوقيعات في منطقة ساقطة.
14) الاختبار
العقد: صحة JWKS، «طفل »/alg/استخدام صحيح، توافق العميل.
سلبي: توقيع مزيف، «طفل» عفا عليه الزمن، alg غير صحيح، انحراف الساعة.
الفوضى: التناوب الفوري، عدم توفر KMS، الانجراف الزمني.
الحمل: توقيعات الذروة (JWT/webhooks)، فك تشفير الذروة (PII/payouts).
E2E: نافذة مزدوجة المفاتيح: الإفراج - التحقق - نقل المرور - رفض النافذة القديمة.
15) مثال التكوين (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 والعلامات في القطع الأثرية
جزء رأس JWT:json
{ "alg":"ES256", "kid":"eu-core-es256-2025-10", "typ":"JWT" }
JWKS (الجزء العام):
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) الأنماط المضادة
مفاتيح طويلة العمر «لسنوات» ومشتركة في جميع المناطق.
التناوب «في لحظة واحدة» دون قبول مزدوج.
تصدير مفاتيح خاصة من KMS/HSM «للسرعة».
مهام الخلط: قم بتوقيع JWT وتشفير البيانات بمفتاح واحد.
عدم وجود سجلات/مؤهلات HSM وقيود IAM.
لا توجد آلية إعادة تغليف لـ DEK في دوران KEK.
«أسرار» يدوية في env بدلاً من Secret Store.
18) قائمة مرجعية قبل البيع
- جميع المفاتيح الخاصة في KMS/HSM ؛ تم ضبط مصفوفة IAM ومبدأ 4 عيون.
- تمت الموافقة على سياسات الخوارزمية والأطوال الرئيسية والعمر الافتراضي.
- تمكين عملية ثنائية المفتاح مع مراقبة مشاركة «الطفل».
- تم نشر JWKS مع تسخين TTL قصير ومخبأ ؛ العملاء يقبلون ≥2 الرئيسية.
- تشفير المغلف: تدور KEK، وتعيد تغليف DEK دون توقف.
- العزلة الإقليمية ومجموعات المفاتيح المنفصلة حسب المستأجرين.
- كتيبات اللعب المتعلقة بالتسوية/الدوران/تناوب القوة ؛ عمليات التدريب.
- يتم تمكين المقاييس («قديم _ طفل _ استخدام _ نسبة»، «غير صالح _ توقيع _ معدل») والتنبيهات.
- contract/negative/chaos/load/E2E اجتاز جناح الاختبار.
- وثائق التكامل: كيفية التعامل مع التحول «الطيبي»، أي النوافذ ورموز الخطأ.
استنتاج
الإدارة الرئيسية هي نظام تشغيلي: KMS/HSM كمصدر للحقيقة، وتناوب منتظم وآمن مع عزل مزدوج المفتاح وإقليمي ومستأجر وتشفير الظرف وقابلية المراقبة. من خلال اتباع هذه القواعد، تحصل على محيط تشفير يتميز بأنه مقاوم للحوادث ويسهل شرحه للمدقق - ويواجه المطورون والمتكاملون أي تغيير دون ألم.