I'm curious how did you migrate passwords, I thought some more code are needed to migrate them automatically.
First I transformed all existing hashes:
(maptable [list 'sha512_sha1 (sha512 _)] hpasswords*)
(= hpasswords*.user (list 'sha512 (sha512 password)))
-----
But then how would they ever migrate beyond sha1? Would the hundred-year language save passwords in a way that gets more insecure every year?
I think arc's default assumption is that there's no difference between 'inside' and 'outside'. And this is how lisp used to be.
(sha512 (+ (sha1 pw) user-salt site-salt))
BTW, for security, it is also unsecure to pass unhashed passwords around network, unless use https.
Yes. Though you can get that with apache or nginx.