I'm trying to educate my self in key management, how to store them, how to generate them, how to use them properly.

I've been trying to find how you would generate a key for symmetric encryption (say AES-128), there is enough to find for public key crypto but that's not what I'm looking for.

For what I understand so far is that simply generating a 128 bit random number through a crypto-secure RNG would be sufficient, Is this correct? or are there special algorithms for creating an aes key?

The key will probably be generated when we flash our embedded devices, so it will be done on a windows PC.

  • $\begingroup$ There are many algorithms, depending on what you need to create the key from. $\endgroup$
    – cpast
    May 7 '15 at 7:48
  • $\begingroup$ @cpast How do you mean, what i need? $\endgroup$
    – Vincent
    May 7 '15 at 9:51
  • $\begingroup$ A similar question with a good answer is here: crypto.stackexchange.com/questions/3332/… $\endgroup$
    – sor.rge
    May 7 '15 at 11:17
  • $\begingroup$ If you just want a good secret, read the number of bytes you need from /dev/random on Linux. On windows, someone else has to complete the answer. $\endgroup$
    – daruma
    Oct 6 '15 at 11:35

Browse other questions tagged or ask your own question.