Then, on a tangential note: are there classes of problems harder than NP, that we could switch to for cryptography et al. if it turned out that P = NP?
There are classes of problems harder than NP. However, the problem of cracking any useful encryption algorithm is always going to be in NP. If it weren't, then decrypting a message would not be possible in polynomial time.
A problem harder than NP would not even be verifiable in polynomial time, which I believe would limit their practicality.
If it was verifiable in NP time, and P = NP, then wouldn't it also be verifiable in polynomial time?
Is that correct? I'm not sure. NP problems are verifiable in deterministic polynomial time. That includes the hardest of NP problems (NP-complete problems, e.g. travelling salesman and graph coloring). Are there problems that are "harder" than that? I never learned about anything outside NP—I know there are other complexity classes out there (like probabilistic classes), but I don't know how they compare to NP. My guess is that anything outside NP is essentially a non-deterministic problem altogether, meaning the "answer" isn't formally a simple "yes" or "no."