Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Поиск мануала и инструкций по функциям GMP  (Прочитано 1555 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн iamkisly

  • Автор темы
  • Любитель
  • *
  • Сообщений: 93
  • это я в 10 лет назад
    • Просмотр профиля
    • Электроника как хобби
Ведется поиск русского мануала по функциям GMP, и их обвязке.

или просто проконсультируйте ( пошагово чтоль ), как перенести
Base10StringToFGInt('65537',e);
Base256StringToFGInt(sD,d); // sD - строка которую следует зашифровать,
Base256StringToFGInt(sM,m); // sM - rsa_key
FGIntMontgomeryModExp(d,e,m,r); // само шифрование, результат в r
FGIntToBase256String(r,sR); // преобразование к string;

возможно, как-то так    mpz_t m, e, d, r;
    mpz_init(m);
    mpz_init(e);
    mpz_init(d);
    mpz_init(r);

    mpz_inp_str(d, sD, 16);
    mpz_inp_str(m, sM, 16);
    mpz_inp_str(e, "65537", 10);

    mpz_powm(r, d, e, m);

    mpz_out_str(sR, 16, r);

как видите по этой строчке:    mpz_inp_str(e, "65537", 10);я не совсем понимаю, что есть FILE.

Поэтому, если есть такая возможность - подскажите..

Пользователь решил продолжить мысль 12 Ноября 2010, 00:37:52:
и как я понимаю, mpz_inp_str возможно не та функция, что мне нужна. ведь из файла я ничего читать не собираюсь..
мне тут намекнули на использование структур, как всегда ничего не обьяснив.

Пользователь решил продолжить мысль 12 Ноября 2010, 11:09:10:
вот тестовая 100% рабочая прога.
из командной строки компилится и запускается
gcc -Wall -lgmp fab.c -o fab && ./fab
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <gmp.h>

int main()
{
   int num=0;
   mpz_t f_1;
   mpz_t f_2;

   mpz_init(f_1);
   mpz_init(f_2);
   mpz_set_ui(f_1,0);
   mpz_set_ui(f_1,111);
   printf("%10d: 0\n",++num);
int i;
   for( i = 0; i<64; i++){
       mpz_add(f_1,f_2,f_1);
       mpz_swap(f_1,f_2);
       char * res = mpz_get_str(NULL,10,f_2);
       printf("%10d: %s\n",++num, res);
       free(res);  }

   mpz_clear(f_1);
   mpz_clear(f_2);
   return 0;
}

в ide выдает эту непонятную ошибку  :( undefined reference to `__gmpz_init'
« Последнее редактирование: 12 Ноября 2010, 11:09:10 от kisly »

Оффлайн VestniK

  • Активист
  • *
  • Сообщений: 594
    • Просмотр профиля
Re: Поиск мануала и инструкций по функциям GMP
« Ответ #1 : 12 Ноября 2010, 12:30:03 »
Сдаётся мне, что та неизвестная IDE которая говорит undefined reference to `__gmpz_init' просто забывает скормить ключ -lgmp линкеру.

Оффлайн iamkisly

  • Автор темы
  • Любитель
  • *
  • Сообщений: 93
  • это я в 10 лет назад
    • Просмотр профиля
    • Электроника как хобби
Re: Поиск мануала и инструкций по функциям GMP
« Ответ #2 : 12 Ноября 2010, 13:39:15 »
где его в code::blocks прописать ?

 

Страница сгенерирована за 0.016 секунд. Запросов: 22.