Все уже говорили об этом, но я добавлю одну вещь ... MD5 не предназначен для того, чтобы "затемнять" вещи, на самом деле, это действительно способ "нормализовать" данные. Независимо от того, с чего вы начнете, вы получите 32 символа, которые представляют исходную строку. Это невероятный способ убедиться, что оригинальная строка соответствует вашим ожиданиям. Вот почему он часто используется для сравнения файлов, поскольку независимо от исходного содержимого файла он все равно может быть представлен строкой из 32 символов. Итак, ответ на ваш вопрос на самом деле заключается в том, чтобы просто убедиться, что это один и тот же алгоритм на всех этих разных языках, так что вы можете рассчитывать на один и тот же результат независимо от того, где вы конвертируете исходную строку в ее аналог MD5.