Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 07.11.2009, 00:25   #1
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

Blo0DeX, ну она и делает то же самое, отличается тока типом одного из параметров
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
Старый 12.11.2010, 18:50   #2
Пользователь
 
Регистрация: 14.09.2010
Сообщений: 38
Сказал Спасибо: 5
Имеет 0 спасибок в 0 сообщенях
Кислый пока неопределено
По умолчанию

Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <gmp.h>

int main (int argc, char **argv)
{
    //var
    char rsakey[16] = {'1','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
    char* pack 	 = "123AAA45";
    printf("pack   = %s\n",pack);
    printf("rsakey = %s\n",rsakey);

    //begin*
    // инициализация переменных
    mpz_t m, e, d, r;
    mpz_init(m);
    mpz_init(e);
    mpz_init(d);
    mpz_init(r);

    
    mpz_init_set_str(m, rsakey, 16);
    mpz_init_set_str(d, pack, 16);
    //mpz_set_ui(e,65537); один хер.
    mpz_init_set_str(e, "65537", 10);
    mpz_powm(r, d, e, m);

    //mpz_get_str(sR, 16, r);
    //char* sR = mpz_get_str(NULL, 16, d);

    char sR[5000] = {};
    mpz_get_str(sR, 16, r);
    int k = strlen(sR);

    printf("результат = %s | размер %i\n",sR, k);
  
    mpz_clear(m);
    mpz_clear(e);
    mpz_clear(d);
    mpz_clear(r);
printf("Finish\n");
return 100500; //стопицот
}
Кислый вне форума   Ответить с цитированием
Старый 13.11.2010, 00:22   #3
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

Кислый, это ты к чему решил воскресить прошлогоднюю тему?
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
Старый 13.11.2010, 13:32   #4
Пользователь
 
Регистрация: 14.09.2010
Сообщений: 38
Сказал Спасибо: 5
Имеет 0 спасибок в 0 сообщенях
Кислый пока неопределено
По умолчанию

да к тому, что она послужила для меня отправной точкой в поиске решения ))
в принципе код рабочий, но смущает вот что: pack и rsakey должны состаять из символов 16й системы счисления.. (т.е. {'0','1','2','3','4','5','6','7','8','9','A','B',' C','D','E','F'}.

является ли это затруднением ?
учитывая что pack - это 132 байта. при этом как минимум 30 байт (логин и пасс ) могут содержать другие символы
Кислый вне форума   Ответить с цитированием
Старый 13.11.2010, 14:36   #5
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

Цитата:
Сообщение от Кислый Посмотреть сообщение
pack и rsakey должны состаять из символов 16й системы счисления
кому они это должны?
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
Старый 13.11.2010, 16:56   #6
Пользователь
 
Регистрация: 14.09.2010
Сообщений: 38
Сказал Спасибо: 5
Имеет 0 спасибок в 0 сообщенях
Кислый пока неопределено
По умолчанию

приведенному мною коду

Цитата:
pack = 123AAA45M
rsakey = 1123456789ABCDEF
результат = 0 | размер 1
F
Цитата:
pack = 123AAA45F
rsakey = 1123456789ABCDEF
результат = 100ef4fc65feff86 | размер 16
F
Добавлено через 1 час 1 минуту
xkor,
какие функции ты использовал ?
у меня мысть уже была организовать перевод str2hex, но это повлечет за собой необоснованное увеличение длинны pack

была мысль

Добавлено через 1 минуту
была мысль выставить base = 256, но выдает на гора ошибку :
Цитата:
Исключение в операции с плавающей точкой

Последний раз редактировалось Кислый, 13.11.2010 в 16:56. Причина: Добавлено сообщение
Кислый вне форума   Ответить с цитированием
Старый 13.11.2010, 18:01   #7
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

Кислый, у меня так:
delphi Код:
function RSAEncrypt_GMP(login, psw: AnsiString; var rsakey): TBytes; var   sD: AnsiString;   m,d,r: mpz_t;   count: Integer; begin   RSAkeyDecode(rsakey);   if length(login)>14 then setlength(login,14);   while length(login)<14 do login:=login+#0;   if length(psw)>16 then setlength(psw,16);   while length(psw)<16 do psw:=psw+#0;   sD:=#$24#0#0+login+psw+#0#0#0#0;   mpz_init(m);   mpz_import(m,128,1,1,0,0,rsakey);   mpz_init(d);   mpz_import(d,Length(sD),1,1,0,0,sD[1]);   mpz_init(r);   mpz_powm_ui(r,d,65537,m);   count:=32;   SetLength(Result,128);   mpz_export(Result[0],count,1,4,1,0,r);   mpz_clear(r);   mpz_clear(d);   mpz_clear(m); end;
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Основные форумы > Программинг


Опции темы
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 10:10.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!