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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.04.2009, 12:45   #1
NooDle
 
Регистрация: 08.01.2009
Сообщений: 9
Восклицание Хеширование для алгоритма TEA на Си.

Добрый день. Начали изучать криптоалгоритмы и задали задачу. Написать хеширование для криптоалгоритма TEA. Если есть смыслящие люди в криптографии помогите. Есть исходник данного алгоритма :
Код:
#include <stdint.h>

void encrypt (uint32_t* v, uint32_t* k) {
uint32_t v0=v[0], v1=v[1], sum=0, i; /* set up */
uint32_t delta=0x9e3779b9; /* a key schedule constant */
uint32_t k0=k[0], k1=k[1], k2=k[2], k3=k[3]; /* cache key */
for (i=0; i < 32; i++) { /* basic cycle start */
sum += delta;
v0 += ((v1<<4) + k0) ^ (v1 + sum) ^ ((v1>>5) + k1);
v1 += ((v0<<4) + k2) ^ (v0 + sum) ^ ((v0>>5) + k3);
} /* end cycle */
v[0]=v0; v[1]=v1;
}

void decrypt (uint32_t* v, uint32_t* k) {
uint32_t v0=v[0], v1=v[1], sum=0xC6EF3720, i; /* set up */
uint32_t delta=0x9e3779b9; /* a key schedule constant */
uint32_t k0=k[0], k1=k[1], k2=k[2], k3=k[3]; /* cache key */
for (i=0; i<32; i++) { /* basic cycle start */
v1 -= ((v0<<4) + k2) ^ (v0 + sum) ^ ((v0>>5) + k3);
v0 -= ((v1<<4) + k0) ^ (v1 + sum) ^ ((v1>>5) + k1);
sum -= delta; 
} /* end cycle */
v[0]=v0; v[1]=v1;
}

Последний раз редактировалось NooDle; 15.04.2009 в 12:47.
NooDle вне форума Ответить с цитированием
Старый 17.05.2009, 00:01   #2
fcuked
Новичок
Джуниор
 
Регистрация: 16.05.2009
Сообщений: 2
По умолчанию

[QUOTE=NooDle;241535]Добрый день. Начали изучать криптоалгоритмы и задали задачу. Написать хеширование для криптоалгоритма TEA. Если есть смыслящие люди в криптографии помогите. Есть исходник данного алгоритма :
Код:
#include <stdio.h>



void encrypt(int block[2], const int key[4])
{
    int sum = 0x00000000, i, y, z, Delta=0x9E3779B9;
    y = block[0];
    z = block[1];
    for (i = 0; i < 32; ++i) {
        sum += Delta;
        y += ((z << 4) + key[0]) ^ (z + sum) ^ ((z >> 5) + key[1]);
        z += ((y << 4) + key[2]) ^ (y + sum) ^ ((y >> 5) + key[3]);
    }
    block[0] = y;
    block[1] = z;
}

void decrypt(int block[2], const int key[4])
{
    int sum = 0xC6EF3720, i, y, z, Delta=0x9E3779B9;
    y = block[0];
    z = block[1];
    for (i = 0; i < 32; ++i) {
        z -= ((y << 4) + key[2]) ^ (y + sum) ^ ((y >> 5) + key[3]);
        y -= ((z << 4) + key[0]) ^ (z + sum) ^ ((z >> 5) + key[1]);
        sum -= Delta;
    }
    block[0] = y;
    block[1] = z;
}

int main()
{
    int block[2] = { 0x11111111, 0x22222222 },
    key[4] = { 0xA1B2C3D4, 0x12AB34CD, 0x32498761, 0xA0B1D5F6 };
    printf("%08X %08X\n", block[0], block[1]);
    encrypt(block, key);
    printf("%08X %08X\n", block[0], block[1]);
    decrypt(block, key);
    printf("%08X %08X\n", block[0], block[1]);
    return 0;
   
}

Последний раз редактировалось fcuked; 17.05.2009 в 00:40.
fcuked вне форума Ответить с цитированием
Старый 19.05.2009, 12:58   #3
bulrathi
Новичок
Джуниор
 
Регистрация: 19.05.2009
Сообщений: 1
По умолчанию

Вот бездельник
Я тебе на почту послал
bulrathi вне форума Ответить с цитированием
Старый 19.05.2009, 16:16   #4
fcuked
Новичок
Джуниор
 
Регистрация: 16.05.2009
Сообщений: 2
По умолчанию

Цитата:
Сообщение от bulrathi Посмотреть сообщение
Вот бездельник
Я тебе на почту послал
ааа пчелы мир порабощают
fcuked вне форума Ответить с цитированием
Старый 15.10.2010, 20:50   #5
Marinylka
Новичок
Джуниор
 
Регистрация: 15.10.2010
Сообщений: 1
Вопрос Криптоалгоритм Теа на языке СИ

Помогите написать программку,буду очень признательна!
Разработать криптосистему, состоящую из трех компонент:
1) блочный симметричный криптоалгоритм, на основе TEA.
2) алгоритм хеширования (для ключа) на основе блочного криптоалгоритма TEA.
3) алгоритм создания цепочек CBC (Cipher Block Chaining).
На языке Си
Marinylka вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хеширование для алгоритма TEA на C. NooDle Помощь студентам 0 13.04.2009 12:01
Создания алгоритма для программы на паскале Brunik Помощь студентам 0 09.04.2009 12:17
Оценка алгоритма Алежа Помощь студентам 7 20.01.2009 14:28