The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
3DES через OpenSSL на чистом С , !*! kolyanchi, 26-Дек-17, 20:02  [смотреть все]
Нужна функция 3DES на чистом С, программирую на Ubuntu. Буду рад любой помощи!
  • 3DES через OpenSSL на чистом С , !*! pavlinux, 22:25 , 26-Дек-17 (1)
    > Нужна функция 3DES на чистом С...


    static void des3_ede_encrypt(struct crypto_tfm *tfm, u8 *dst, const u8 *src)
    {
        struct des3_ede_ctx *dctx = crypto_tfm_ctx(tfm);
        const u32 *K = dctx->expkey;
        const __le32 *s = (const __le32 *)src;
        __le32 *d = (__le32 *)dst;
        u32 L, R, A, B;
        int i;

        L = le32_to_cpu(s[0]);
        R = le32_to_cpu(s[1]);

        IP(L, R, A);
        for (i = 0; i < 8; i++) {
            ROUND(L, R, A, B, K, 2);
            ROUND(R, L, A, B, K, 2);
        }
        for (i = 0; i < 8; i++) {
            ROUND(R, L, A, B, K, 2);
            ROUND(L, R, A, B, K, 2);
        }
        for (i = 0; i < 8; i++) {
            ROUND(L, R, A, B, K, 2);
            ROUND(R, L, A, B, K, 2);
        }
        FP(R, L, A);

        d[0] = cpu_to_le32(R);
        d[1] = cpu_to_le32(L);
    }


    • 3DES через OpenSSL на чистом С , !*! kolyanchi, 00:51 , 27-Дек-17 (2)
      >[оверквотинг удален]
      >  }
      >  for (i = 0; i < 8; i++) {
      >   ROUND(L, R, A, B, K, 2);
      >   ROUND(R, L, A, B, K, 2);
      >  }
      >  FP(R, L, A);
      >  d[0] = cpu_to_le32(R);
      >  d[1] = cpu_to_le32(L);
      > }
      >

      Получается, какие библиотеки надо подключать при вводе этой функции в программу?

      • 3DES через OpenSSL на чистом С , !*! Аноним, 07:07 , 27-Дек-17 (3)
        >[оверквотинг удален]
        >>  for (i = 0; i < 8; i++) {
        >>   ROUND(L, R, A, B, K, 2);
        >>   ROUND(R, L, A, B, K, 2);
        >>  }
        >>  FP(R, L, A);
        >>  d[0] = cpu_to_le32(R);
        >>  d[1] = cpu_to_le32(L);
        >> }
        >>
        > Получается, какие библиотеки надо подключать при вводе этой функции в программу?

        Вы точно в С разбираетесь?

        • 3DES через OpenSSL на чистом С , !*! kolyanchi, 09:29 , 27-Дек-17 (4) –1
          >[оверквотинг удален]
          >>>   ROUND(L, R, A, B, K, 2);
          >>>   ROUND(R, L, A, B, K, 2);
          >>>  }
          >>>  FP(R, L, A);
          >>>  d[0] = cpu_to_le32(R);
          >>>  d[1] = cpu_to_le32(L);
          >>> }
          >>>
          >> Получается, какие библиотеки надо подключать при вводе этой функции в программу?
          > Вы точно в С разбираетесь?

          Если честно, я пока только в процессе обучения. А в чем тут дело?

          • 3DES через OpenSSL на чистом С , !*! Andrey Mitrofanov, 10:25 , 27-Дек-17 (5)
            >>> Получается, какие библиотеки надо подключать при вводе этой функции в программу?
            >> Вы точно в С разбираетесь?
            > Если честно, я пока только в процессе обучения. А в чем тут
            > дело?

            Обучение надо начинать с хеловорлдов и семи лет выноса пробивок перфокарт за Мастером.

            • 3DES через OpenSSL на чистом С , !*! kolyanchi, 10:50 , 27-Дек-17 (6)
              >>>> Получается, какие библиотеки надо подключать при вводе этой функции в программу?
              >>> Вы точно в С разбираетесь?
              >> Если честно, я пока только в процессе обучения. А в чем тут
              >> дело?
              > Обучение надо начинать с хеловорлдов и семи лет выноса пробивок перфокарт за
              > Мастером.

              Хеловорлды вроде прошёл. Но всё-таки, в чем проблема моего вопроса?

              • 3DES через OpenSSL на чистом С , !*! Andrey Mitrofanov, 10:57 , 27-Дек-17 (7)
                >> Обучение надо начинать с хеловорлдов и семи лет выноса пробивок перфокарт за
                >> Мастером.
                > Хеловорлды вроде прошёл. Но всё-таки, в чем проблема моего вопроса?

                + Ставите телегу криптографии поперёд лошади "подключения библиотеки в код".
                + Задаёте учебные вопросы в не относящихся к обучению форумах.
                + Уверены, что помощь рядом и придёт сама и сразу -- надо только протянуть руку и не заморачиваться.
                + Учиться не надо -- есть же гугль.  А нет, не  то---

                • 3DES через OpenSSL на чистом С , !*! kolyanchi, 12:47 , 27-Дек-17 (8)
                  >>> Обучение надо начинать с хеловорлдов и семи лет выноса пробивок перфокарт за
                  >>> Мастером.
                  >> Хеловорлды вроде прошёл. Но всё-таки, в чем проблема моего вопроса?
                  > + Ставите телегу криптографии поперёд лошади "подключения библиотеки в код".
                  > + Задаёте учебные вопросы в не относящихся к обучению форумах.
                  > + Уверены, что помощь рядом и придёт сама и сразу -- надо
                  > только протянуть руку и не заморачиваться.
                  > + Учиться не надо -- есть же гугль.  А нет, не
                  >  то---

                  Спасибо за критику. Буду разбираться.


          • 3DES через OpenSSL на чистом С , !*! pavlinux, 17:03 , 28-Дек-17 (10)
            > Если честно, я пока только в процессе обучения. А в чем тут дело?

            В криптографии, программирования - минимум. Сплошные битовые операции. Без знания "Полей Галуа" там делать нечего.

            Если хочется поиграть с числами, то тренироваться можно с реализации калькулятора без использования библиотек.

            sin(x), cos(x), tg(x),ctg(x)
            log[2](x), log[10](x), ln(x)
            e^x, x^y
            sqrt(x), x^(1/y)
            ...

            --

            Задание на лето:
            Тот же калькулятор, но с числами с вводом и выводом до 10000 цифр, или 10000.10000 если с мантиссой.

      • 3DES через OpenSSL на чистом С , !*! pavlinux, 16:58 , 28-Дек-17 (9)
        > Получается...

        Вы просили функцию 3DES.:)




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру