KMS — cryptographic keylarni yaratish, saqlash, ishlatish, rotation qilish, bekor qilish va audit qilishni markazlashtiradigan tizim. To‘liq nomi Key Management System yoki cloud xizmatlarida Key Management Service sifatida ishlatiladi.
Encryption algoritmi kuchli bo‘lsa ham key noto‘g‘ri boshqarilsa ma’lumot himoyasi buziladi. KMS key lifecycle va access policy’ni nazorat qiladi.
Key lifecycle
Key odatda quyidagi bosqichlardan o‘tadi:
- generation;
- activation;
- usage;
- rotation;
- disable;
- revoke;
- archive;
- destruction.
Har bosqich policy, owner va audit bilan boshqariladi.
Key generation
Cryptographic key xavfsiz random generator orqali yaratiladi.
Key material user tanlagan oddiy matndan olinmaydi.
Algorithm va key size security talabiga mos tanlanadi.
Generation KMS yoki unga ulangan HSM ichida bajarilishi mumkin.
Master key
KMS ko‘pincha data’ni bevosita master key bilan shifrlamaydi.
Master key boshqa data keylarni himoya qilish uchun ishlatiladi.
Bu envelope encryption modelini yaratadi.
Master key kamroq operationda ishlatiladi va qat’iy accessga ega.
Data key
Application katta ma’lumotni tez symmetric data key bilan shifrlaydi.
KMS data keyning plaintext va master key bilan encrypted nusxasini yaratishi mumkin.
Application plaintext data keyni memory’da qisqa vaqt ishlatib, keyin tozalaydi.
Storage’da faqat encrypted data key saqlanadi.
Envelope encryption
Jarayon:
- data key yaratiladi;
- data data key bilan shifrlanadi;
- data key KMS master key bilan shifrlanadi;
- ciphertext va encrypted data key birga saqlanadi;
- decryptda KMS data keyni ochadi;
- application data’ni local decrypt qiladi.
Bu katta faylni KMSga to‘liq yuborish zaruratini kamaytiradi.
Symmetric key
Symmetric key bir xil secret bilan encryption va decryption bajaradi.
KMS key materialni tashqariga chiqarmasdan encrypt/decrypt API berishi mumkin.
Data key modeli orqali bulk encryption application tomonida bajariladi.
Asymmetric key
Public-private key juftligi:
- digital signature;
- signature verification;
- encryption;
- decryption
uchun ishlatilishi mumkin.
Public key tashqariga beriladi, private key esa KMS yoki HSM ichida qolishi mumkin.
Key alias
Application raw key ID o‘rniga alias ishlatishi mumkin.
Masalan:
alias/production-orders
Alias rotation yoki migrationda yangi keyga yo‘naltiriladi.
Ammo eski ciphertext qaysi key version bilan yaratilganini saqlashi kerak.
Rotation
Key rotation yangi cryptographic material yaratishni anglatadi.
Eski data avtomatik qayta shifrlanmasligi mumkin.
Variantlar:
- yangi yozuvlar yangi key bilan;
- eski data decrypt uchun eski key;
- background re-encryption;
- alias switch;
- version metadata.
Rotation va re-encryption alohida jarayonlar bo‘lishi mumkin.
Access policy
Kim qaysi key bilan qanday operation bajarishi aniq belgilanadi.
Masalan:
- application faqat decrypt;
- deployment faqat alias update;
- security admin policy boshqaradi;
- auditor faqat log o‘qiydi.
Key administrator va data decryptor rollari ajratilishi mumkin.
Separation of Duties
Bitta inson key policy’ni o‘zgartirib, ciphertextni decrypt qila olmasligi kerak.
Rolelar:
Bu insider risk va audit talablariga yordam beradi.
Audit
Har operation yoziladi:
Katta decrypt spike yoki noma’lum workload alert yaratishi mumkin.
Availability
KMS unavailable bo‘lsa application yangi data’ni encrypt yoki eski data’ni decrypt qila olmay qolishi mumkin.
Yechimlar:
- regional redundancy;
- encrypted data key cache;
- retry;
- timeout;
- offline recovery policy;
- multi-region design.
Plaintext master keyni local file’da saqlash availability muammosini xavfsizlik muammosiga aylantiradi.
Key deletion
Key o‘chirilsa u bilan shifrlangan data qayta ochilmasligi mumkin.
Shu sababli deletion:
bilan bajariladi.
Crypto-shredding ma’lumotni keyni yo‘q qilish orqali yaroqsiz qilishga tayanadi.
Bring Your Own Key
Tashkilot key materialni tashqarida yaratib KMSga import qilishi mumkin.
Bu compliance yoki ownership talabiga yordam beradi.
Import qilingan key rotation, backup va expirationi tashkilot zimmasida ko‘proq qolishi mumkin.
KMS va HSM
KMS key lifecycle, policy va API’ni boshqaradi.
HSM esa key materialni tamper-resistant hardware ichida himoya qiladi va cryptographic operation bajaradi.
KMS HSMga tayanishi mumkin, ammo ular bir xil tushuncha emas.
Context-bound encryption
KMS ayrim tizimlarda encryption context yoki additional authenticated data qabul qiladi. Ciphertext faqat ayni tenant, record yoki purpose kontekstida decrypt qilinadi. Context secret bo‘lmasligi mumkin, ammo encrypt va decryptda aynan mos kelishi kerak.
Key version
Har ciphertext bilan key ID yoki version metadata’si saqlanadi. Rotationdan keyin application eski data’ni qaysi key bilan ochishni biladi. Faqat aliasga tayanish tarixiy ciphertextni noto‘g‘ri keyga yo‘naltirishi mumkin.
Rate va quota
KMS operationlari quota va latencyga ega. Har database row readida alohida remote decrypt chaqirish throughputni pasaytirishi mumkin. Envelope encryption, local encrypted cache va batch design bilan KMSdan foydalanish miqdori boshqariladi.
Bog‘liq tushunchalar
Key Management System, Encryption key, Master key, Data key, Envelope encryption, Key rotation, HSM, Cryptography, Digital signature, Crypto-shredding