Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблемы с blowfish 
:(
    Опции темы
admsasha
Дата 25.3.2007, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Код

#include <string.h>
#include <stdio.h>
#include <openssl/blowfish.h>

int main(int argc, char *argv[]){
    BF_KEY key;
    unsigned char keybuf[]="SECRETKEY!";
    unsigned char plain[128]="This is plain!";
    unsigned char encrypted[128];
    unsigned char decrypted[128];
    unsigned char ivec[8];

    BF_set_key(&key, strlen((char*)keybuf), keybuf);

    printf("plain=[%s]\n", plain);

    memset(ivec, 0, sizeof(ivec));
    BF_cbc_encrypt(plain, encrypted, strlen((char*)plain), &key, ivec, BF_ENCRYPT);

    printf("encrypted=[%s]\n", encrypted);

    memset(ivec, 0, sizeof(ivec));
    BF_cbc_encrypt(encrypted, decrypted, strlen((char*)plain), &key, ivec, BF_DECRYPT);

    printf("decrypted=[%s]\n", decrypted);

    return 0;
}


собираю
Код

>g++ -Wall -ansi proba.cpp  -o proba
/root/tmp/ccECB2QF.o(.text+0xc5): In function `main':
: undefined reference to `BF_set_key'
/root/tmp/ccECB2QF.o(.text+0x12e): In function `main':
: undefined reference to `BF_cbc_encrypt'
/root/tmp/ccECB2QF.o(.text+0x197): In function `main':
: undefined reference to `BF_cbc_encrypt'
collect2: ld returned 1 exit status


Что не слинковал ?



PM MAIL WWW ICQ Jabber   Вверх
W4FhLF
Дата 25.3.2007, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


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

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



lib не подключил.


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
admsasha
Дата 25.3.2007, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(W4FhLF @  25.3.2007,  22:28 Найти цитируемый пост)
lib не подключил. 

какую ? пример строки сборки подскажи....
PM MAIL WWW ICQ Jabber   Вверх
MAKCim
Дата 25.3.2007, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

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



libblowfish.so или libopenssl.so или что-то в этом роде

Это сообщение отредактировал(а) MAKCim - 25.3.2007, 16:54


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
admsasha
Дата 25.3.2007, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Собрал так
g++ -Wall -ansi  proba.cpp /usr/lib/libcrypto.so  -o proba

всё заработало, но не то что я хотел.... незнаю куда писать, задам сюда же....

есть Perl скрипт с кодированием

Код

sub encrypt{
    my $salt=shift;
    my $pass=shift;
    my $cipher = new Crypt::CBC($salt,'Blowfish');
    my $crypted_block = $cipher->encrypt_hex($pass);
    $cipher->finish();
    return $crypted_block;
}

нужна аналогия на C++

например на 
encrypt("qqq","1234");
вывод: 52616e646f6d4956fe86b7d2ab811a43cdd2798756fc1f01

<b>Добавлено через 4 минуты и 2 секунды</b>
Так для дешифровки
Код

sub decrypt{
    my $salt=shift;
    my $pass=shift;
    my $cipher = new Crypt::CBC($salt,'Blowfish');
    my $depass = $cipher->decrypt_hex($pass);
    $cipher->finish();
    return $depass;
}



M
MAKCim
Модератор: Пожалуйста, один топик - один вопрос.


Это сообщение отредактировал(а) MAKCim - 25.3.2007, 17:28
PM MAIL WWW ICQ Jabber   Вверх
MAKCim
Дата 25.3.2007, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

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



admsasha, 
Код

new Crypt::CBC($salt,'Blowfish');

что есть Crypt::CBC?
из какой библиотеки? из libcrypto.so?

Это сообщение отредактировал(а) MAKCim - 25.3.2007, 17:27


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
admsasha
Дата 25.3.2007, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Код

use Crypt::Blowfish;
use Crypt::CBC;

Подробнее незнаю :-(

Это сообщение отредактировал(а) admsasha - 25.3.2007, 17:40
PM MAIL WWW ICQ Jabber   Вверх
jonie
Дата 29.3.2007, 01:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

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



узнавать подробнее : http://search.cpan.org/ 


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

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

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


 




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


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

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