Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Реализация m-ичного (m = 8) поточного зашифрования/расшифрования файла

Ответить
Настройки темы
C/C++ - Реализация m-ичного (m = 8) поточного зашифрования/расшифрования файла

Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здраствуйте. очень нужна помощ. Реализация m-ичного (m = 8) поточного зашифрования/расшифрования файла с использованием схемы разворачивания ключа из PIN-кода (пароля) небольшой длины на основе генератора со сжатием (ЛРР с большими степенями образующих полиномов, от 163) Зарание спасибо.

Отправлено: 21:40, 23-09-2010

 

Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Проверьте на правильность и работоспособность



#include "stdafx.h"
#include <iostream>
#include <string.h>
#include <stdlib.h>
using namespace std;
unsigned char TaktLRR(unsigned char *f, unsigned int &State)
{
unsigned char Bit, Sj;
Bit=State&1;
Sj=(State&1)^(State&1<<(f[0]-f[1]))>>(f[0]-f[1]);
If(f[2]&&f[3])
{
Sj^=(State&1<<(f[0]-f[2]))>>(f[0]-f[2]);
Sj^=(State&1<<(f[0]-f[3]))>>(f[0]-f[3]);
}
State>>=1;
State=State|Sj<<(f[0]-1);
return Bit;
}
unsigned char GenByteLRP(unsigned char*f, unsigned int State_0)
{
int i=0;
unsigned int State=State_0;
unsigned char Byte=0,Bit;
for(i=0;i<8;i++)
{
Bit=TaktLRR(f,State);
Byte|=Bit<<I;
}
return Byte;
}
unsigned char Generate(unsigned char*Key1, unsigned char*Key2)
{
int i=0;
int masKey[32];
for(i=0;i<32;i++)
{
if(GenByteLRP(f1,Key1)=1)
{
masKey[i]=GenByteLRP(f2,Key2);
}
else
{
continue;
}
return masKey;
}

unsigned char Cript(unsigned char *Message, unsigned char len)
{
unsigned char cript = masKey;
unsigned char i;
while (len--)
{
cript ^= *Message++;
for (i = 0; i < 8; i++)
cript = cript & 0x80 ? (cript << 1) ^ 0x31 : cript << 1;
}
return cript;
}
int main()
{
unsigned char Key1[16];
unsigned char Key2[16];
unsigned char Message[];
unsigned char lenMessage;
cout<<’input message’;
cin.getline>>Message;
unsigned char f1[3]={4,3,2};
unsigned char f2[3]={6,3,1};
lenMessage=(int)strlen((char *)Message);
cout<<’input Key1’;
cin.getline(Key1,16);
cin.getline(0);
cout<<’input Key2’;
cin.getline(Key2,16);
cin.getline(0);
Generate(Key1,Key2);
Cript(Message,lenMessage);
stdout<<cript;
}

Отправлено: 09:41, 27-09-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Реализация m-ичного (m = 8) поточного зашифрования/расшифрования файла

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Реализация доступа к интернет. zubkoff.s Microsoft Windows NT/2000/2003 24 01-02-2010 11:28
C/C++ - Реализация Zoom`а в Borland C++ Builder DaRiYs Программирование и базы данных 2 21-12-2009 02:12
Реализация конвейера на Си! NEED HELP! st031 Программирование в *nix 2 24-01-2009 10:57
C/C++ - Реализация формулы... ganselo Программирование и базы данных 1 20-01-2009 19:38
Разное - Ситема терминалов (реализация) piling Microsoft Windows 2000/XP 2 13-02-2008 22:52




 
Переход