I recently got doubtful about the usefulness of pseudorandom generators (PRG) in cryptography.
Based on Kerckhoffs'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, what's the merit of using a PRG? (I know that the output of a PRG must be indistinguishable from a truly 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 in the security of encryptions not the space of their output.)
One more question is whether the length of the seed is important.
The encryption method that made me sceptical is an encryption scheme which works only by different rounds of permutations sequentially (i.e., it divides the message into blocks, permutes the blocks, and then permutes the bits within each block). Both keys are completely pseudorandom.