|   |   | 
| 
 | Как сделать хэш | ☑ | ||
|---|---|---|---|---|
| 0
    
        mrCreator 26.12.16✎ 08:17 | 
        Всем добрый день!
 подскажите пожалуйста как средствами 1С сделать хеш по такому шаблону: $hash = MD5(login.MD5(password).SALT) | |||
| 1
    
        DrZombi гуру 26.12.16✎ 08:25 | 
        (0) Что такое "MD5" ?
 Где описание логики работы функции? :) | |||
| 2
    
        DrZombi гуру 26.12.16✎ 08:26 | 
        Простой хэш своими руками :)
 http://tuzik87.ru54.com/site/creative/article/hash.html | |||
| 3
    
        Это_mike 26.12.16✎ 08:26 | 
        (1) дык этта... https://ru.wikipedia.org/wiki/MD5     | |||
| 4
    
        d546 26.12.16✎ 08:27 | 
        ХешированиеДанных (DataHashing)
 Свойства: ХешСумма (HashSum) ХешФункция (HashFunction) Методы: Добавить (Append) ДобавитьФайл (AppendFile) Конструкторы: По указанной хеш-функции Описание: Реализует инкрементальный расчет хеш-суммы по добавленным данным. Способ расчета и тип вычисляемого значения определяются типом хеш-функции. Доступность: Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер). См. также: ХешФункция | |||
| 5
    
        shpioleg 26.12.16✎ 08:27 | 
        Класс ХешированиеДанных курил?     | |||
| 6
    
        DrZombi гуру 26.12.16✎ 08:28 | 
        (3) Он, конечно. Но я думал ТС до этого сам должен был придти :DDDD
 Но судя по вопросам, он скромно не упомянул, что ему нужен код писаный на 1С :) http://1c-programmer-blog.ru/programmirovanie/md5-v-1s.html | |||
| 7
    
        mrCreator 26.12.16✎ 08:30 | 
        не совсем у меня возникла сложность понимания именно конструкции. 
 вот это я нашел на просторах интернета: Хеш = Новый ХешированиеДанных(ХешФункция.MD5); Хеш.Добавить(тСтрока); Возврат Хеш.ХешСумма; не могу понять как мне собрать вот такую конструкцию: MD5(login.MD5(password).SALT) | |||
| 8
    
        mrCreator 26.12.16✎ 08:32 | 
        Вот так верно будет или как?: 
 Хеш = Новый ХешированиеДанных(ХешФункция.MD5); Хеш.Добавить(password); Пароль = Хеш.ХешСумма; Хеш2 = Новый ХешированиеДанных(ХешФункция.MD5); Хеш2.Добавить("логин."+Пароль+"."+"соль"); ИтоговоаяСтрока = Хеш2.ХешСумма; | |||
| 9
    
        d546 26.12.16✎ 08:34 | 
        $hash = MD5(login.MD5(password).SALT)
 это хоть на каком языке? | |||
| 10
    
        d546 26.12.16✎ 08:36 | 
        Хеш2.Добавить("логин."+Пароль+"."+"соль");
 понравился перевод-интерпретация кода :) | |||
| 11
    
        mrCreator 26.12.16✎ 08:40 | 
        :) 
 Это у меня написано в описании API при подключении к стороннему WEB-сервису. Указано, что с забросом обязательно нужно передавать хэш такого вида.... | |||
| 12
    
        Asmody 26.12.16✎ 08:40 | 
        (8) точка в логине лишняя. 
 (9) php это | |||
| 13
    
        Это_mike 26.12.16✎ 08:41 | 
        (10) а госнаркоконтроль не возражает?     | |||
| 14
    
        mrCreator 26.12.16✎ 08:41 | 
        (12) а перед солью точка должна остаться?     | |||
| 15
    
        mrCreator 26.12.16✎ 08:46 | 
        Вот так должно получиться: 
 Хеш2.Добавить("логин."+Пароль+"."+"соль"); или вот так: Хеш2.Добавить("логин"+Пароль+"соль"); или так: Хеш2.Добавить("логин"+Пароль+"."+"соль"); | |||
| 16
    
        shpioleg 26.12.16✎ 08:47 | 
        Есть подозрение, что тебе 3 раза в 1С придется вызывать хеширование, чтобы итоговая сумма была в ХешСумма.
 В 1С метод Добавить принимает на вход строку или ДвоичныеДанные | |||
| 17
    
        shpioleg 26.12.16✎ 08:53 | 
В Хеш.ХешСумма должен быть результат | |||
| 18
    
        mrCreator 26.12.16✎ 08:56 | 
        Спасибо! 
 Это похоже на правду :) Буду пробовать... | |||
| 19
    
        mrCreator 26.12.16✎ 10:12 | 
        С результатом пришлось еще повозиться... 
 результат функции есть Двоичные данные (которые на самом деле являются шестнадцатиричными), которые нужно еще перевести в строку и метод xbase64строка() возвращает строку в неверном формате. Поиски нормального решения перевода не увенчались успехом и т.к. эта строка в моём случае всегда будет одной и той же, я решил воспользоваться обычным онлайн переводом из двоичных данных в строку https://www.calc.ru/kalkulyator-kodov.html и вот оно счастье у меня хэш в нормальном виде, таком каком он нужен :) Извращения дело добровольное | |||
| 20
    
        DrZombi гуру 26.12.16✎ 10:43 | 
        (11) Сперва разберись, на каком языке написано, что за Солд и что содержит... А потом к 1С переходи :)     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |