PHP 7.2: Modern Şifrelemeyi Standart Kütüphanesine Ekleyen İlk Programlama Dili

PHP 7.2: Modern Şifrelemeyi Standart Kütüphanesine Ekleyen İlk Programlama Dili
Şubat 15 14:27 2017 Yazıyı Yazdır

PHP 7 ile birlikte özellikle performans bakımından büyük bir ivme kazanacak olan PHP uygulamaları, ayrıca 2017 sonu itibariyle daha güvenli kodlanabilecek. PHP 7.2 sürümü sayesinde PHP, modern şifreleme öğelerini standart kütüphanesinde barındıran ilk programlama dili olacak.

Modern Şifreleme nedir?

Bir şifreleme kütüphanesinin modern olduğunu söyleyebilmek için iki önemli gereksinime sahip olması gerekmektedir:

  1. Yan kanallı kriptoanalize karşı koymak için tasarlanmış hızlı primitiflerin kullanılması.
  2. Ön tanımlı olarak güvenli ve basit bir yüksek seviye API’nin kullanılması.

Güvenli Primitifler

Açık anahtar şifreleme ve dijital imzayı örneğin OpenSSL ve Golang’a uyguladığınızda, RSA ve NIST ECC’den birini kullanmaya zorlanmaktasınız. Doğrusunu söylemek gerekirse her ikisi de iyi bir seçim değil.

  • RSA kullanımı
    • e = d = 1
    • Geliştiricileri RSA-ECB kullanmaya zorluyor.
    • PKCS1c1.5 takviyesi
  • NIST Eliptik Eğri Kripgotrafi (Elliptic Curve Cryptography)
    • Geçersiz eğri saldırıları, saldırganın eğri üzerinde bulunmayan (x,y) koordinatlarını sunması halinde gizli anahtarların ele geçirilmesini sağlıyor.
    • ECDSA halinde, ECSDSA imzaları için tekrarlanan “k” değerleri daha önce gizli anahtarların verilmesine sebep oluyordu.
    • NIST Eğrileri yeterince sağlam değil.

Modern şifreleme güvenli primitiflerin kullanılmasına ihtiyaç duymaktadır. Açık anahtar şifrelemede primitifler RFC 7748 ve RFC 8032’de ana hatlarıyla belirtilmiştir.

Libsodium primitifleri şunları içermektedir:

  • X25519
  • Ed25519
  • Xsalsa20poly1305
  • BLAKE2
  • Argon2
  • SipHash-2-4
  • ChaCha20-Poly1305

Basit ve Güvenli Yüksek Seviye API

Libsodium’da açık anahtar şifrelemeyi kolaylaştırmak için şuna ihtiyacınız bulunmaktadır:

Bir mesajı deşifrelemek için:

Tüm bunlar ne anlama geliyor?

Eğer web uygulamalarınızı PHP ile geliştiriyorsanız, piyasaya sürüldüğü anda, modern şifreleme yeteneklerine sahip olmak için sürümü 7.2’ye güncelleyebilirsiniz. Böylelikle artık herhangi bir PHP eklentisi kullanmaya gerek olmaksızın, Ed25519 dijital imzalarını kullanan bir web uygulaması geliştirebilirsiniz.

Kaynak: Scott Arciszewski

daha fazla yazı

Yazar Hakkında

Atalay Keleştemur
Atalay Keleştemur

Atalay Keleştemur, siber istihbarat analisti ve PHP güvenlik uzmanı olarak görev yapmaktadır. Linux ve özgür yazılım gönüllüsüdür. Çeşitli kurumlarda sistem yöneticisi ve yazılım geliştiricisi olarak çalışmıştır. Siber İstihbarat isimli kitabın yazarıdır.

Daha Fazla Yazı
yorum yapın

Yorum Yok

Henüz yorum yapılmamış

İlk yorumu siz yapabilirsiniz.

Yorum ekleyin

Bilgileriniz güvende! E-posta adresiniz yayınlanmayacak. Diğer kişisel bilgileriniz üçüncü partilerle paylaşılmayacak.
* işaretli alanlar zorunludur.

Time limit is exhausted. Please reload CAPTCHA.