Ana içeriğe geç

Encryption at Rest

Türkçe karşılığı
bekleyen veri şifrelemesi
Okunuşu
inkripşın et rest

Günlük kullanımda çoğunlukla İngilizcesi tercih edilir.

Güncellendi 2 dk okuma

Bu sayfayı paylaşın

Bağlantıyı gönderin, tanımı bağlantısıyla birlikte alıntılayın ya da kendi sitenizde bir kart olarak gösterin.

https://softwaredictionary.org/tr/terimler/encryption-at-rest

Kısaca

Encryption at rest, diskler, veritabanları ve yedekler gibi depolanan verileri şifreli tutar; çalınan bir disk ya da kopyalanan bir dosya anahtarsız okunamaz.

Encryption at rest (beklemedeki veri şifreleme) nedir?

Beklemedeki veri (data at rest), depolamada duran veridir: diskteki dosyalar, veritabanındaki satırlar, bulut depolamadaki nesneler, yedekler ve anlık görüntüler (snapshot). Encryption at rest bu veriyi orada, genellikle AES ile şifreli tutar ve yalnızca yetkili bir program okuduğunda çözer. Kaybolan bir dizüstü bilgisayar, çalınan ya da atılan bir disk, sızdırılan bir yedek veya bir veri merkezine fiziksel erişimi olan biri gibi depolamanın kendisine yönelik tehditlere karşı korur.

Birkaç düzeyde uygulanabilir. BitLocker, FileVault ya da LUKS gibi tam disk şifreleme bütün bir cihazı korur; bulut servisleri de diskleri ve nesneleri şifreler, örneğin Amazon S3 2023'ten beri bütün yeni nesneleri varsayılan olarak şifreliyor. Veritabanları, sorguları değiştirmeden veri dosyalarını şifreleyen saydam veri şifreleme (transparent data encryption, TDE) sunar; uygulama düzeyinde şifreleme ise kimlik numaraları gibi hassas alanları daha veritabanına ulaşmadan şifreler.

Zor olan kısım anahtarları yönetmektir. Çoğu sistem zarf şifreleme (envelope encryption) kullanır: her veri parçası kendi veri anahtarıyla şifrelenir, o anahtar da bir anahtar yönetim servisinden (KMS) ya da donanım güvenlik modülünden (HSM) hiç çıkmayan bir ana anahtarla şifrelenir, yani sarmalanır. Korunan tek bir anahtar dolabında duran ofis anahtarları gibi, veri anahtarları da ana anahtar olmadan işe yaramaz; ana anahtarın her kullanımı kaydedilir ve onu yok etmek veriyi kalıcı olarak okunamaz hâle getirir. PCI DSS gibi standartlar saklanan kart numaralarının okunamaz olmasını şart koşar ve encryption at rest bunu karşılamanın yaygın bir yoludur.

Encryption at rest sıklıkla aktarım hâlindeki şifrelemeyle (encryption in transit) karıştırılır. TLS veriyi ağ üzerinde taşınırken korur, encryption at rest ise depolanırken; arada uygulama bellekte çözülmüş veriyle çalışır, bu yüzden sistemlerin ikisine de ihtiyacı vardır. Disk ve veritabanı şifrelemesi, veritabanı parolasını çalan ya da SQL injection istismar eden bir saldırganı da durdurmaz; çünkü veritabanı kabul ettiği her sorgu için veriyi çözer. Uygulama düzeyinde ya da uçtan uca şifreleme bu açığı daraltır.

Önemli noktalar

  • Encryption at rest, disklerde, veritabanlarında ve yedeklerde saklanan veriyi korur.
  • Çalınan disklere, sızdırılan yedeklere ve fiziksel erişime karşı savunur.
  • Disk, depolama, veritabanı ya da uygulama düzeyinde çalışabilir.
  • Zarf şifreleme ana anahtarları bir KMS'te ya da HSM'de tutar.
  • Aktarım hâlindeki şifrelemeyi tamamlar ve çalışan uygulama üzerinden gelen saldırıları durdurmaz.

Örnek

Bir anahtar yönetim servisiyle zarf şifreleme (Python, AWS KMS)python
import os, boto3
from cryptography.hazmat.primitives.ciphers.aead import AESGCM

kms = boto3.client("kms")
# KMS returns a fresh data key twice: in plaintext and wrapped by the master key
key = kms.generate_data_key(KeyId="alias/app-data", KeySpec="AES_256")
nonce = os.urandom(12)
ciphertext = AESGCM(key["Plaintext"]).encrypt(nonce, b"passport U1234567", None)

# Store only the wrapped key next to the data; the plaintext key is discarded
record = {"data": ciphertext, "nonce": nonce, "wrapped_key": key["CiphertextBlob"]}

# Reading it later: KMS unwraps the key, checks permissions and logs the call
data_key = kms.decrypt(CiphertextBlob=record["wrapped_key"])["Plaintext"]
print(AESGCM(data_key).decrypt(record["nonce"], record["data"], None))

Sık sorulan sorular

Encryption at rest ile aktarım hâlindeki şifreleme arasındaki fark nedir?

Genellikle TLS ile yapılan aktarım hâlindeki şifreleme, veriyi sistemler arasında taşınırken korur. Encryption at rest ise veriyi disklerde, veritabanlarında ya da yedeklerde saklanırken korur. Farklı anları kapsarlar; bu yüzden hassas sistemler ikisini de kullanır.

Encryption at rest saldırganlara karşı korur mu?

Yalnızca bazı saldırılara karşı. Çalınan diskleri, yedekleri ve anlık görüntüleri korur; ama uygulama üzerinden ya da geçerli veritabanı kimlik bilgileriyle içeri giren bir saldırgan veriyi zaten çözülmüş hâlde görür. Bu yüzden erişim kontrolü, en az ayrıcalık ve güvenli kod yine gereklidir.

Buluttaki veriler varsayılan olarak şifreli mi saklanır?

Büyük bulut platformlarında evet: Amazon S3, Google Cloud Storage ve Azure Storage gibi servisler saklanan veriyi sağlayıcının yönettiği anahtarlarla otomatik olarak şifreler. Bir KMS'teki müşteri tarafından yönetilen anahtarlar, anahtarları kimin kullanabileceği üzerinde ek kontrol ve her kullanımın kaydını sağlar.

İlgili sayfalar

Kaynaklar

Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin

Daha fazla

Ayarlar