Задать вопрос

Как получить верный md5 от строки с кириллицой в другой кодировке?

Ruby
приходит строка с кирилицей.
это значение участвует для просчёта check sum
На клиенте рассчитывают в win1251
На сервере в utf-8

Пытаемся сконвертить строку в cp1251 и рассчитать, но результат отличается в случае расчёта от оригинальной cp1251

#cp1251
DIgest::MD5.hexdigest("ф") #cp1251 => 584b8d4f423c8ff41e226ea5b979fbbe

#utf8
DIgest::MD5.hexdigest("ф".encode("cp1251")) #=> 97a6dd4c45b23db9c5d603ce161b8cab

Кстати "ф".encode("cp1251") #=>\xF4
  • Вопрос задан
  • 3104 просмотра
Подписаться 2 Оценить 1 комментарий
Помогут разобраться в теме Все курсы
  • Thinknetica
    Профессиональная разработка на Ruby on Rails
    9 месяцев
    Далее
  • Хороший программист
    Интенсив по Ruby on Rails
    5 месяцев
    Далее
  • Thinknetica
    Оптимизация Ruby/Rails-приложений
    9 недель
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы