Por quanto tempo um hash deixado em campo aberto pode ser considerado seguro?

Se eu deixasse um hash da família SHA2 no meu site - por quanto tempo seria considerado seguro? Quanto tempo eu teria antes de ter certeza de que alguém encontraria uma colisão e saberia o que estava hash?

Eu sei que a quantidade de tempo seria baseada no poder computacional de quem procura quebrá-lo. Também dependeria do comprimento da string, mas estou curioso para saber como os hashes são seguros.

Como muitos de nós administramos servidores da Web, precisamos constantemente estar preparados para o dia em que alguém possa chegar até o banco de dados que armazena os hashes do usuário. Então, afaste a segurança do servidor e o que você tem?

Esta é uma área um pouco teórica para muitas das pessoas com quem conversei, então eu adoraria ter mais informações sobre as expectativas médias de crack.

hash('sha256', 'mytext');
hash('sha256', 'thisismytext');
hash('sha256', 'xx$1sw@the4e');
hash('sha256', 'thisismyslightlylongertext');

db695168e73ae294e9c4ea90ff593e211aa1b5693f49303a426148433400d23f
b62c6ac579abf8a29e71d98aeba1447c66c69002cfd847b148584f886fd297ef
501f1b26abbc75594d06f0935c8bc502d7bcccf5015227bd6ac95041770acb24
3debc12761bbeb5b4460978ac2be5b104163de02ea799f0705399d0e5b706334

questionAnswers(3)

yourAnswerToTheQuestion