Açarlary dolandyrmak we aýlanmak
Açarlar platformanyň "ynam kökleri". Ygtybarly açar dolandyryş ulgamy (KMS/HSM + prosessler + telemetriýa) kriptografiýany bir gezeklik integrasiýadan gündelik operasiýa öwürýär: açarlar yzygiderli täzelenýär, olaryň ulanylmagy aç-açan, eglişikler lokallaşdyrylýar, müşderiler bolsa açaryň çalşylmagyny başdan geçirýärler.
1) Maksatlar we ýörelgeler
Crypto agility: algoritmi/açaryň uzynlygyny uly göçmesiz üýtgetmek ukyby.
Least exposure: Şahsy açarlar KMS/HSM-den çykmaýar; Gol/transkript amallary - öçürildi.
Şort-lived artifacts: tokenler/sessiýa açarlary hepdelerde däl-de, minutlarda-sagatlarda ýaşaýar.
Dual-key/Dual-cert penjireleri: üznüksiz aýlanmalar.
Regional & tenant isolation: açarlar sebitlere we kärendeçilere bölünendir.
Doly auditability: üýtgewsiz amal žurnaly, HSM attestasiýasy, elýeterlilige gözegçilik.
2) Açarlaryň klassifikasiýasy
Kök (Root CA/Master Key): gaty seýrek ulanylýar, HSM-de saklanýar, aralyk açarlary ýa-da data-key gaplamalaryny çykarmak üçin ulanylýar.
Operasiýa: JWT/wakalaryň goly, TLS, webhuklaryň goly, konfigurasiýalary şifrlemek/PII.
Session/wagtlaýyn: Kanal/gepleşik üçin DPoP, mTLS-binding, ECDH-çykyş.
Integrasiýa: hyzmatdaşlaryň açarlary (köpçülige açyk) we HMAC-yň syrlary.
Data Keys (DEK): KEK astynda envelope-şifrlemäni ulanýarlar, aç-açan saklanmaýarlar.
3) Açarlary kesgitlemek we peýdalanmak syýasaty
Her açarda 'kid' bar (açar belliklerde/sözbaşylarda kesgitlenýä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"
Düzgünler: "bir maksat - bir açar" (iň az şaring), aýdyň ulanylýan ýerler we möhletler.
4) Açaryň ömri (KMS/HSM)
1. Generate: HSM/KMS-de, eksport syýasaty bilen = gadagan.
2. Publish: asimmetriýa üçin - JWKS/sertifikat c 'kid'.
3. Use: dolandyrylýan IAM bilen uzakdaky amallar (sign/decrypt).
4. Rotate: 'next' açaryny açyň we dual-accept-i açyň.
5. Retire: köne 'retiring' -e, soňra 'revoked' -e terjime ediň.
6. Destroy: Jedel penjiresinden soň materiallary ýok etmek (purge teswirnamasy bilen).
5) Aýlaw: strategiýalar
Hasaplanan: senenama (mysal üçin, JWT gol çekmek üçin her 1-3 aý, TLS-sertler üçin 6-12 aý).
Rolling: sarp edijileri kem-kemden üýtgetmek (JWKS eýýäm täze açary öz içine alýar; emitter, gyzdyrylandan soň täzesine gol çekip başlaýar).
Forced (security): eglişik edilende derrew aýlanmak; gysga penjire dual-accept, artefaktlaryň agressiw gutarmagy.
Staggered per region/tenant: bir wagtyň özünde bütin dünýäni "el çarpmazlyk" üçin.
Altyn düzgün: ilki neşir etmek, soňra täzesine gol çekmek, diňe gutarandan soň - köne düzgüni yzyna almak.
6) Dual-key penjiresi (işsiz çalşyk)
JWKS-i köne we täze 'kid' bilen çap edýäris.
Tassyklaýjylar ikisini hem kabul edýärler.
Emitter N minut/sagatdan soň täzesine gol çekip başlaýar.
Köne/täze 'kid' boýunça barlaglaryň paýyna gözegçilik edýäris.
Maksatly paýa ýetensoň, retairim köne.
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) Gol çekmek we tassyklamak syýasaty
Algoritmler: Gol ES256/EdDSA; RSA-PSS zerur ýerlerde.
'none '/gowşak algoritmleri gadagan etmek; tassyklamanyň tarapynda whitelisting.
Clock skew: 300 c ± rugsat berýäris, gyşarmalary ýazýarys.
Key pinning (içerki hyzmatlar) we gysga TTL JWKS-kesh (30-60 s).
8) Envelope-şifrlemek we KDF
Maglumatlary şu görnüşde saklaň:
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 (Key Encryption Key) KMS/HSM-de saklanýar, yzygiderli aýlanýar.
DEK obýekt/partiýa üçin döredilýär; KEK aýlananda re-wrap (çalt, maglumatlary gaýtadan şifrlemezden) ýerine ýetirýäris.
Akymlar üçin - ECDH + HKDF kanalyň gysga açarlaryny çykarmak üçin.
9) Sebitlilik we köp tenant
Açarlar we JWKS 'eu-core', 'latam-core' - dürli açarlar toplumy.
IAM/auditiň tenant/region boýunça bölünmegi; rezidensiýalaryň arasynda açarlar "akmaýar".
'kid' -ni ynam domeniniň prefiksi bilen kodlaň: 'eu-core-es256-2025-10'.
10) Integrasiýa syrlary (HMAC, API-açarlar)
KMS-backed Secret Store-da saklamak, şort-lived client secrets (rotation policy ≤ 90 gün) arkaly bermek.
Aýlanylanda iki sany işjeň syry (dual-secret) goldamak.
Webhuklar üçin - timestamp + HMAC beden goly; wagt penjiresi ≤ 5 minut.
11) Elýeterliligi dolandyrmak we prosesler
IAM matrisi: 'generate', 'sign', 'decrypt', 'rotate', 'destroy' (iň az rol).
4 göz ýörelgesi: duýgur amallar iki tassyklamany talap edýär.
Change windows: täze açary açýan penjireler we synag kanareýa sebitleri.
Runbooks: scheduled we forced rotasiýa proseduralarynyň şablonlary.
12) Gözegçilik we audit
Metrikler:- `sign_p95_ms`, `decrypt_p95_ms`, `jwks_skew_ms`,
- 'kid', 'old _ kid _ usage _ ratio',
- `invalid_signature_rate`, `decrypt_failure_rate`.
- Her gol/transkript amallary: 'who/what/when/where/kid/purpose'.
- Açarlaryň statuslarynyň we rotasiýa/revokasiýa haýyşlarynyň taryhy.
- HSM attestasiýasy, esasy materiallara girmegiň žurnallary.
13) Pleýbuklar (hadysalar)
1. Gol açaryny bozmak
Köne 'kid' -ni derrew revoke etmek (ýa-da iň az penjireli 'retiring' -e terjime etmek), täze JWKS-ni neşir etmek, gysgaldylan TTL bellikleri, fors-logout/RT maýyplygy, integrasiýa eýelerine aragatnaşyk, retro-audit.
2. Aýlanylandan soň köpçülikleýin 'INVALID _ SIGNATURE'
JWKS/clock skew keşini barlaň, dual-accept-i yzyna gaýtaryň, penjiräni uzadyň, müşderilere iberiň.
3. KMS/HSM gizlinligini ýokarlandyrmak
Gollaryň ýerli keshini açyp bolmaýar; ýerine - emiterde batch/queue, autoscaling HSM proxy, möhüm akymlaryň ileri tutulmagy.
4. Bir sebitiň ret edilmegi
Sebitleýin izolýasiýa amallaryny işjeňleşdirmek; beýleki sebitlerden açarlary "çekmezlik"; ýykylan sebitde gol bilen baglanyşykly funksiýalary peseltmek.
14) Synag
Contract: JWKS düzgünliligi, dogry 'kid '/alg/use, müşderileriň laýyklygy.
Negative: galp gol, köne 'kid', nädogry alg, clock skew.
Chaos: derrew aýlanmak, KMS-iň elýeterliligi, wagtyň "süýşmegi".
Ýüklemek: gollaryň iň ýokary derejesi (JWT/webhooks), şifrlemeleriň iň ýokary derejesi (PII/tölegler).
E2E: dual-key penjiresi: goýbermek - tassyklamak - traffigi geçirmek - könesini ret etmek.
15) Konfigurasiýa mysaly (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 we artefaktlarda markerleriň mysaly
JWT gider bölegi:json
{ "alg":"ES256", "kid":"eu-core-es256-2025-10", "typ":"JWT" }
JWKS (köpçülik bölegi):
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-patternler
Uzak ömürli açarlar "ýyllar üçin" we ähli sebitler üçin umumy.
Dual-accept bolmazdan "bir pursatda" aýlanmak.
"Çaltlyk üçin" KMS/HSM-den hususy açarlary eksport etmek.
JWT-e bir açar bilen gol çekmek we maglumatlary şifrlemek.
HSM we IAM-çäklendirmeleriň žurnallarynyň/attestasiýalarynyň ýoklugy.
KEK aýlananda DEK üçin re-wrap mehanizmi ýok.
"Secret Store" -yň ýerine env-de "syrlar".
18) Azyk önüminden öň çek-sanawy
- KMS/HSM-de ähli hususy açarlar; IAM-matrisa we 4 gözli prinsip sazlandy.
- Algoritmleriň syýasaty, açarlaryň uzynlygy we ömri tassyklandy.
- "kid" -iň paýnamalaryna gözegçilik etmek üçin goşulan dual-key prosesi.
- JWKS gysga TTL we gyzdyrylan keşler bilen çap edilýär; müşderiler ≥ 2 açary kabul edýärler.
- Envelope-şifrlemek: KEK aýlanýar, DEK re-wrap işsiz.
- Sebitleýin izolýasiýa we tenantlar boýunça açarlar.
- Eglişik/rolling/fors rotasiýa üçin pleýbuklar; okuw geçişleri.
- Metrikler ('old _ kid _ usage _ ratio', 'invalid _ signature _ rate') we alertler goşuldy.
- contract/negative/chaos/load/E2E synaglaryň toplumy geçdi.
- Integrasiýa üçin resminamalar: 'kid' çalşygyny nädip dolandyrmaly, haýsy penjireler we ýalňyşlyk kodlary.
Netije
Açarlary dolandyrmak - hakykat çeşmesi hökmünde KMS/HSM, dual-key bilen yzygiderli we howpsuz aýlanmalar, sebitleýin we tenant izolýasiýa, envelope-şifrlemek we gözegçilik etmek. Bu düzgünlere laýyklykda, hadysalara çydamly we auditora aňsatlyk bilen düşündirilýän kriptokonturany alarsyňyz - işläp düzüjiler we integratorlar islendik üýtgeşmäni agyrysyz başdan geçirýärler.