I recently got doubtful to the usefulness of psuedorandom generators(PRG) in cryptography.
Based on Kereckhoff's principle, we always assume that the used algorithms are made public. So, when we use a PRG to generate a long key from a short key, we are broadcasting the PRG algorithm too.
When we use the output of a PRG as the key for a symmetric key encryption, Doesn't it mean that the adversary still only needs to check exhaustively the space of the seed? if so, whats the merit in using a PRG? (I know that the output of a PRG must be IND from a truely random sequence, but based on what I explained, I think it is not important since I think the space of their input plays the main role for security of encryptions not the space of their output.)
One more question is that, is the length of the seed important?
The encryption method that made me skeptikal is an encryption scheme which works only by different rounds of permutations sequentially (i.e., it devides the message into blocks, permutes the blocks, and then permutes the bits within each block). Both keys are completely Pseudorandom.