Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2012, 09:55   #1
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию Аутентификация oracle, программа

Добрый день, необходимо разобраться с аутентификацией в oracle 10g, нашла программу: http://www.oxid.it/downloads/oracle_...s128_check.txt
Хотела на ее основе разобраться, что и как (не получается на основе примеров и найденных алгоритмов аутентифицироваться успешно), но она не компилится: первый косяк с переменной pos, но еще есть вот такой косяк:Error 8 error LNK2019: unresolved external symbol _AES_cbc_encrypt referenced in function "void __cdecl ORACLE_TNS_Decrypt_AES128_CBC(unsig ned char * const,unsigned char *,int,unsigned char *)" (?ORACLE_TNS_Decrypt_AES128_CBC@@YA XQAEPAEH1@Z)
Как исправить?
openssl скачала и подключила
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 06.05.2012, 10:17   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

В дистрибутиве ОраклКлиента должны идти примеры на некоторых ЯП, посмотри есть ли у тебя такие.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 06.05.2012, 18:28   #3
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

Код:
unsigned char deskey_fixed[]={ 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef};

int ORACLE_Hash (char* username, char *passwd, int passwd_len, unsigned char* oracle_hash)
{
	char ToEncrypt[256];
	char temp[256];
	DES_cblock iv,iv2;
	DES_key_schedule ks1, ks2;
	int len=0;
	int j,ulen,plen;

	memset (ToEncrypt,0,sizeof(ToEncrypt));

	strupr (username);
	strupr (passwd);

	ulen = strlen(username);
	plen = passwd_len;

	for (len=1,j=0; j<ulen; len++,j++)
	{
		ToEncrypt[len] = username[j];
		len++;
	}

	for (j=0; j<plen; len++,j++)
	{
		ToEncrypt[len] = passwd[j];
		len++;
	}

	len=len-1;
	memset (iv,0,8);
	memset (iv2,0,8);



	DES_set_key((DES_cblock*) deskey_fixed, &ks1);
	DES_ncbc_encrypt((unsigned char*) ToEncrypt, (unsigned char*) temp, len, &ks1, &iv, DES_ENCRYPT);

	DES_set_key((DES_cblock*) &iv, &ks2);
	DES_ncbc_encrypt((unsigned char*) ToEncrypt, (unsigned char*) temp, len, &ks2, &iv2, DES_ENCRYPT);

	memcpy (oracle_hash,iv2,8);

	return TRUE;
}
вылезают вот такие ошибки: Error 3 error LNK2019: unresolved external symbol _DES_ncbc_encrypt referenced in function "int __cdecl ORACLE_Hash(char *,char *,int,unsigned char *)" (?ORACLE_Hash@@YAHPAD0HPAE@Z) F:\My_work\C++\oracle_hash\oracle_h ash\oracle_hash.obj oracle_hash

Компилю VS 2010, openssl скачала установила OpenSSL-Win32, то что нужно было сделать с библиотеками, сделала The first thing to do (assuming a default installation of 'C:\OpenSSL') is to go to 'C:\OpenSSL\lib\VC' and copy all of the files to your Visual C++ 'lib' directory. This directory is sometimes located in a somewhat cryptic location such as 'C:\Program Files\Microsoft Visual Studio\VC98\lib' or 'C:\Program Files\Microsoft Visual C++\lib'.
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Идентификация и аутентификация Natali_1988ant Работа с сетью в Delphi 1 20.02.2012 21:03
SOAP Аутентификация rdama PHP 0 16.07.2010 09:37
Аутентификация репозитория Freemaks Операционные системы общие вопросы 5 04.07.2010 20:21
[C++] Аутентификация. Ветер Фриланс 4 25.05.2010 11:03
Аутентификация пользователя didar_ Общие вопросы Delphi 18 10.11.2009 17:11