MD5 não é um algoritmo de hash seguro. Por que vocês o usam?
Antes de tudo, para Signature Authentication e tudo o mais que precisa ser seguro, não usamos MD5. Fornecemos hashes MD5 de arquivos como uma forma de detectar duplicatas de fontes confiáveis, bem como para outras finalidades em que não há um caso de uso vantajoso para o vetor de ataque que consiste em calcular hashes que colidem.
Como o MD5 é mais rápido de calcular e ainda mais amplamente disponível do que, por exemplo, o SHA1, foi feita uma concessão deliberada ao fornecer hashes MD5 para resultados de codificação. É claro que, como o MD5 não é seguro, você não deve usar esses hashes como base para nada sensível à segurança na sua aplicação.