Имя: Пароль:
1C
 
Подскажите по шифрованию SHA256
,
0 fly7
 
14.10.15
08:32
Необходимо зашифровать строку по алгоритму SHA256 и перевести в "hexadecimal representation"

The HMAC-SHA256 code must be generated using a secret key that was generated with your API key. This code must be converted to it's hexadecimal representation (64 uppercase characters).

шифрование сделал, а как перевести в "hexadecimal representation" не знаю... может кто сталкивался?

шифрование делал так

Функция ЗашифроватьSHA256(Строка, СекретныйКлюч)
    
    Соотв16 = Новый Соответствие;
    Соотв16.Вставить(0 , "0");
    Соотв16.Вставить(1 , "1");
    Соотв16.Вставить(2 , "2");
    Соотв16.Вставить(3 , "3");
    Соотв16.Вставить(4 , "4");
    Соотв16.Вставить(5 , "5");
    Соотв16.Вставить(6 , "6");
    Соотв16.Вставить(7 , "7");
    Соотв16.Вставить(8 , "8");
    Соотв16.Вставить(9 , "9");
    Соотв16.Вставить(10, "a");
    Соотв16.Вставить(11, "b");
    Соотв16.Вставить(12, "c");
    Соотв16.Вставить(13, "d");
    Соотв16.Вставить(14, "e");
    Соотв16.Вставить(15, "f");
    
    Текст = Новый COMОбъект("System.Text.UTF8Encoding");
    
    Криптография = Новый COMОбъект("System.Security.Cryptography.HMACSHA256");
    Криптография.Key = Текст.GetBytes_4(СекретныйКлюч);
    
    ХешБайт = Криптография.ComputeHash_2(Текст.GetBytes_4(Строка)).Выгрузить();
    
    Хеш = "";
    Для Каждого Байт Из ХешБайт Цикл
        Чс = Цел(Байт/16);
        Хеш = Хеш + Прав("0" + Соотв16.Получить(Чс) + Соотв16.Получить(Байт-Чс*16), 2);
    КонецЦикла;
    
    Возврат Хеш;
    
КонецФункции
1 ДенисЧ
 
14.10.15
08:39
вроде как sha уже взломали, и его не рекомендуется использовать...
2 fly7
 
14.10.15
08:42
(1) мне надо собирать стату с одного сайта, а там запрос через такое шифрование
3 Bigbro
 
14.10.15
11:05
судя по английским статьям в гуглопоиске по "hexadecimal" это обычное шестнадцатеричное представление. то есть то что у тебя уже есть плюс перевод в "uppercase" то есть большие буквы.
4 fly7
 
14.10.15
11:13
(3) не подходит... сайт пишет отлуп что ошибка сигнатуры
5 Shamandafil
 
14.10.15
11:22
(1) Раз так, то можно и мне биткойнов отсыпать?
Там как раз SHA-256 используется.
6 eklmn
 
гуру
14.10.15
11:29
почему UTF8Encoding ?
7 eklmn
 
гуру
14.10.15
11:29
попробуй ASCII
8 Serginio1
 
14.10.15
12:46
9 Serginio1
 
14.10.15
12:48
Да еще проблемы с переводом строки
http://catalog.mista.ru/public/238584/#com16
10 fly7
 
14.10.15
12:57
(5) могу только обменять на рубли
11 fly7
 
14.10.15
13:06
(7) одно и тоже получается, там не русских символов
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн