Questions on Cryptography Stack Exchange are expected to relate to cryptography within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.
If this question can be reworded to fit the rules in the help center, please edit the question.

2

I'd say ease of use. A password with a newline or control character in it would be somewhat awkward to type in. Since nobody will ever use those, why not disable them and spare an unlucky user the pain of figuring out why his password is not being accepted the next time he types it in?
–
ThomasMar 20 '13 at 12:03

I think the programmer is usually to blame when the filters are too arbitrary and restricted. There are usually no cryptographic reasons for such restrictions, except possibly if the code has an algorithm for estimating the password strength that for some reason only works with a limited character set.
–
Henrick HellströmMar 20 '13 at 12:15

2

The traditional reason to prevent special characters in passwords is that sometime the password might need to be entered on a device/context (e.g. physical terminal, bootloader) different from the one where the password is defined on (e.g. some full-blown GUI), and special characters might be difficult or impossible to key in the former environment. Users of AZERTY keyboards often learn the hard way it is safer to choose passwords that key-in identically on a QWERTY keyboard. ^ is especially problematic, for it is a dead key on only some keyboards. This really belongs to security.se
–
fgrieuMar 20 '13 at 13:43

Some keyboards lack some characters, and outside ASCII you'll need to be careful about encoding.
–
CodesInChaosMar 20 '13 at 18:04