چرا؟ یک کلید AES ایمن فقط 16 بایت (یا 32) بایت تصادفی است که از سیستم عامل CSPRNG می خوانید. اگر گنتروپی یا getrandom دارید ، از آن استفاده کنید. اگر / dev / urandom دارید ، از آن بخوانید. اگر CryptGenRandom را دارید ، از آن استفاده کنید.

البته ، رمزگذاری متقارن شما باید به منظور اطمینان از تأیید اعتبار انجام شود (یعنی شما باید از MAC استفاده کنید ، یا در سیستم های مدرن AEAD) بخاطر چسبندگی. این ممکن است به معنای آن باشد که شما به کلید رمزپایه بلکه کلید MAC نیز احتیاج دارید ، و شاید یک IV یا یک nonce باشد. سیستم های مدرن از KDF مانند HKDF استفاده می کنند ، آن را با استفاده از 256 بیت تصادفی کلید می زنند و سپس به اندازه تعداد بیت های مورد نیاز خود استخراج می کنند. اما این ایده خوبی نیست.

آیا این نمونه ای از مشکل XY است؟ واقعاً چه کاری انجام می دهید؟ قبل از پرسیدن این سؤال ، چه چیزی را در گوگل جستجو می کنید؟