argon2 ne demek?

# Argon2

[Argon2](https://www.nedemek.page/kavramlar/argon2), parola özetleme (password hashing) için tasarlanmış bir anahtar türetme fonksiyonu ve parola karma algoritmasıdır. Amacı, parola güvenliğini artırmak ve saldırılara karşı direnci yükseltmektir. Özellikle, kaba kuvvet (brute-force) ve gökkuşağı tabloları (rainbow tables) gibi saldırılara karşı dayanıklılığı hedefler.

Argon2, [Password Hashing Yarışması (Password Hashing Competition)](https://www.nedemek.page/kavramlar/password%20hashing%20yarışması)'nı kazanmıştır ve bu nedenle modern sistemlerde parola güvenliği için önerilen bir algoritmadır.

## Argon2'nin Temel Özellikleri

*   **Bellek Yoğunluğu:** Argon2, parola türetme işlemi sırasında önemli miktarda bellek kullanır. Bu, donanım maliyetlerini artırarak saldırganların paralel hesaplamalar yapmasını zorlaştırır.
*   **Zaman Maliyeti:** Bellek kullanımına ek olarak, Argon2'nin zaman maliyeti de ayarlanabilir. Bu, parola türetme işleminin ne kadar süreceğini kontrol etmeyi sağlar.
*   **Paralelizm:** Argon2, birden fazla işlemci çekirdeğini kullanabilir. Bu, performansı artırır ancak aynı zamanda bellek gereksinimini de artırır.
*   **Tuz (Salt):** Her parola için benzersiz bir tuz kullanır. Bu, aynı parolaların farklı özet değerlerine sahip olmasını sağlar ve [Gökkuşağı Tablosu Saldırıları](https://www.nedemek.page/kavramlar/gökkuşağı%20tablosu%20saldırıları)'na karşı koruma sağlar.
*   **Çeşitler:** Farklı kullanım senaryoları için optimize edilmiş üç temel çeşidi vardır:

    *   **Argon2d:** [Kripto Para](https://www.nedemek.page/kavramlar/kripto%20para) gibi GPU direncinin yüksek olduğu senaryolar için tasarlanmıştır ve veri kümelerine bağımlı bellek erişimi kullanır.
    *   **Argon2i:** Yan kanal saldırılarına karşı daha dirençli olan ve parolaları güvenli bir şekilde saklamak için idealdir. Veri kümelerine bağımsız bellek erişimi kullanır.
    *   **Argon2id:** Argon2i ve Argon2d'nin en iyi özelliklerini bir araya getiren hibrit bir yaklaşımdır. Çoğu kullanım durumu için önerilen çeşittir.

## Argon2 Parametreleri

Argon2'nin güvenliğini ve performansını ayarlamak için aşağıdaki parametreler kullanılır:

*   **Password (P):** Özetlenecek parola.
*   **Salt (S):** Rastgele oluşturulmuş bir dize. Her parola için benzersiz olmalıdır.
*   **Memory (m):** Algoritmanın kullanacağı bellek miktarı (KB cinsinden).
*   **Iterations (t):** Karma işleminin kaç kez tekrarlanacağı.
*   **Parallelism (p):** Kaç paralel iş parçacığı kullanılacağı.
*   **Key Length (K):** Türetilecek anahtarın uzunluğu (bayt cinsinden).
*   **Associated Data (X):** Ek veri (isteğe bağlı).

## Güvenlik Önerileri

*   Güçlü ve rastgele bir tuz kullanın.
*   Bellek (m) ve yineleme (t) değerlerini, sunucunuzun kaynaklarına ve güvenlik gereksinimlerinize göre dikkatlice ayarlayın.
*   Argon2id, çoğu uygulama için önerilen çeşittir.
*   Parolaları saklarken en güncel kütüphaneleri ve uygulamaları kullanın.

Kategoriler