PHP 8.1.31 Released!

Giriş

Bu eklenti, HMAC değerlerinin oluşturulması ve HKDF ve PBKDF2 gibi anahtar türetmeleri de dahil olmak üzere çeşitli aş algoritmaları kullanılarak keyfi uzunluktaki iletilerin doğrudan veya artımlı işlenmesi için kullanılabilen işlevler sağlar.

Kabaca üç aş algoritması sınıfı vardır ve algoritmaların tam listesi hash_algos() belgelemesinde bulunabilir.

  • Sağlama toplamı algoritmaları ("crc32b" veya "adler32" gibi): Bunlar, ileti hatalarının tespit edilmesi gibi durumlarda yararlı olan sağlama toplamlarını hesaplamak için kullanılır. Genellikle çok hızlıdırlar. Bu algoritmalar genellikle kolayca "tahmin edilebilir"dir ve karışıklık yaratmak için elle değiştirilebilen değerler üretir, bu nedenle bunlar kriptografik kullanım için tamamen uygun değildir.
  • Kriptografik olmayan algoritmalar (xxHash ailesi gibi): Bunlar genellikle aş tabloları için aş değerlerini hesaplamak için kullanılır, çünkü keyfi dizge girdileri üzerinde iyi bir dağıtım elde etmek üzere tasarlanmıştır. Ayrıca genellikle hızlıdırlar, ancak bunlar da kriptografik kullanım için uygun değildir.
  • Kriptografik algoritmalar (SHA-2 ailesi gibi): Bunlar, girdilerini temsil eden ancak tahmin edilebilir veya çatışmalara eğilimli olmayan aş değerleri üretmek için tasarlanmıştır. Başarım genellikle ikincil bir endişe kaynağıdır, ancak günümüz donanımı genellikle PHP'nin mevcut olduğunda kullanmaya çalıştığı bu algoritmalar için özel işlemeyi destekler. NIST'in Bilgisayar Güvenliği Kaynak Merkezi » Amerika Birleşik Devletleri Federal Bilgi İşleme Standartları tarafından onaylı geçerli algoritmaların açıklamasını sunmaktadır.
    Dikkat

    "md4", "md5" ve "sha1" gibi bazı erken dönem kriptografik algoritmaların çatışma saldırılarına karşı hassas olduğu kanıtlanmıştır ve bunların kriptografik uygulamalarda artık kullanılmaması genel olarak önerilmektedir.

Parolaları ele alırken aş işlevlerini kullanma konusunda en iyi uygulamalar hakkında bilgi edinmek için Güvenli Parola Karma İşlemi ile ilgili SSS'ye de bakılabilir.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top