Поиск:

Ответ в темуСоздание новой темы Создание опроса
> dcpcrypt, sha256 хеш от строки, неверно считается хеш 
:(
    Опции темы
Kasiro
Дата 12.8.2010, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 11.7.2010

Репутация: нет
Всего: -1



Добрый день! В моей программе нужно получать sha-256 хеш строки. Для этой цели я поставил DCPCrypt. Написал код, всё компилируется без ошибок, для теста находил хеш от "1". Но найденный результат отличался от того который должен быть.

Код

Должно быть: 6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b
Получилось:  e79e418e48623569d75e2a7b09ae88ed9b77b126a445b9ff9dc6989a08efa079


Код:
Код

BYTE *Digest;

DCP_sha2561->Init();
DCP_sha2561->UpdateStr((String)"1");
DCP_sha2561->Final(Digest);

Edit1->Text=DigestToStr(Digest);


Код

UnicodeString TMainForm::DigestToStr(BYTE digest[32]){
UnicodeString res="";
for (int i=0; i < 32; i++) {
res=res + LowerCase(IntToHex(digest[i], 2));
}
return res;
}


Нутром чую я где-то накосячил, но где, немогу понять, помогите пожалуйста.

ЗЫ: Builder 2010, DCPcrypt v2 for Delphi 2009/2010 

Это сообщение отредактировал(а) Kasiro - 12.8.2010, 11:07
PM MAIL   Вверх
Kasiro
Дата 12.8.2010, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 11.7.2010

Репутация: нет
Всего: -1



Есть у кого нибудь идеи?
PM MAIL   Вверх
SenkraD
Дата 13.8.2010, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 3.2.2006
Где: Украина::Киев

Репутация: 9
Всего: 23



Kasiro,  а какая сигнатура у UpdateStr? Что по этоу поводу говорит документация? Она копирует строку, которая подаётся на вход или нет? Вы другие строки подавали на вход?

Да, с заметных косяков это:
Код
//(String)"1" - во первых это времменая переменная, а метод может
// не копировать входную строку, а только ссылатся!!! Во вторых, это -
// плохо кастовать литералы к классам, но это моё мнение


// лушче сделайте переменную
BYTE *Digest;
String source = "1";

DCP_sha2561->Init();
DCP_sha2561->UpdateStr(source);
DCP_sha2561->Final(Digest);

Edit1->Text=DigestToStr(Digest);



--------------------
 Имеющий язык - да не убоится спросить! 
user posted image
PM MAIL ICQ   Вверх
Kasiro
Дата 13.8.2010, 09:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 11.7.2010

Репутация: нет
Всего: -1



SenkraD, UpdateStr апдейтит входную строку, от которой вычисляется хеш. Пробовал подавать на вход разные строки, результат во всех случаях неправильный, даже пробовал находить хеш от файла, такой же результат... Изменил код на ваш, тоже самое.

Мне не принципиально использовать DCPCrypt, мне главное найти sha256 хеш, есть какие нибудь варианты? 
Я находил в сети много всего, пробовал на криптоапи, у меня получилось, но на следующий день, код не работал, что за чудеса такие...



PM MAIL   Вверх
Kasiro
Дата 14.8.2010, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 109
Регистрация: 11.7.2010

Репутация: нет
Всего: -1



Господа, какие ещё есть мнения?
Подскажите пожалуйста, диплом стоит((
PM MAIL   Вверх
0x00
Дата 23.8.2010, 07:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 192
Регистрация: 3.4.2006

Репутация: нет
Всего: нет



посмотри тут

Код

http://msdn.microsoft.com/en-us/library/system.security.cryptography.sha256(VS.71).aspx


и файл в аттаче

Это сообщение отредактировал(а) 0x00 - 23.8.2010, 07:08

Присоединённый файл ( Кол-во скачиваний: 12 )
Присоединённый файл  hmac_sha1.tar.gz 8,34 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0426 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.