MaterStudiorum.ru - домашняя страничка студента.
Минимум рекламы - максимум информации.


Авиация и космонавтика
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Банковское дело
Безопасность жизнедеятельности
Биографии
Биология
Биология и химия
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Издательское дело и полиграфия
Инвестиции
Иностранный язык
Информатика
Информатика, программирование
Исторические личности
История
История техники
Кибернетика
Коммуникации и связь
Компьютерные науки
Косметология
Краткое содержание произведений
Криминалистика
Криминология
Криптология
Кулинария
Культура и искусство
Культурология
Литература и русский язык
Литература(зарубежная)
Логика
Логистика
Маркетинг
Математика
Медицина, здоровье
Медицинские науки
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Москвоведение
Музыка
Муниципальное право
Налоги, налогообложение
Наука и техника
Начертательная геометрия
Новейшая история, политология
Оккультизм и уфология
Остальные рефераты
Педагогика
Полиграфия
Политология
Право
Право, юриспруденция
Предпринимательство
Промышленность, производство
Психология
Психология, педагогика
Радиоэлектроника
Разное
Реклама
Религия и мифология
Риторика
Сексология
Социология
Статистика
Страхование
Строительные науки
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Управленческие науки
Физика
Физкультура и спорт
Философия
Финансовые науки
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
Экология
Экономика
Экономико-математическое моделирование
Экономическая география
Экономическая теория
Эргономика
Этика
Юриспруденция
Языковедение
Языкознание, филология
    Начало -> Информатика, программирование -> Кодування файлу

Название:Кодування файлу
Просмотров:102
Раздел:Информатика, программирование
Ссылка:none(0 KB)
Описание: Міністерство освіти і науки України Житомирський державний технологічний університет Лабораторна робота №3 з курсу "Системне програмування" на тему: "Кодування файлу"

Университетская электронная библиотека.
www.infoliolib.info

Часть полного текста документа:

Міністерство освіти і науки України

Житомирський державний технологічний університет

Лабораторна робота №3

з курсу "Системне програмування"

на тему: "Кодування файлу"

м. Житомир

2011 р.


Содержание

1. Технічне завдання

2. Вимоги до програми

3. Код програми

Висновок

Список використаної літератури


1. Технічне завдання

Програма повинна забезпечувати шифруванні і дешифруванні будь-яких файлів по довільному алгоритму з використанням пароля.

 

2. Вимоги до програми

1.  Назва програми: Encode.

2.  Iнтерфейс - командний рядок, в який вводяться режим роботи програми, пароль, а також імена файлів.

encode </e | /d> <File_to_code> [distination_file] [/p=password] Наприклад: encode /e myfile.txt myfile.cod /p=mypassword, де /e або /d - ключ який визначає шифрування або дешифрування; myfile.txt - специфікація файлу який має бути зашифрований; myfile.cod - специфікація файлу в який має бути записано зашифровану послідовність; /p=mypassword - пароль для шифрування.

3.  Режим шифрування - ключ /e, режим дешифрування - ключ /d.

4.  При невірному завданні параметрів програма повинна виводити інформацію про вірне завдання параметрів. Наприклад: encode </e | /d> <File_to_code> <distination_file> [/p=password]

5.  Зашифрований файл повинен складатися із заголовку і кодованих даних.

6.  Заголовок повинен містити: сигнатуру виду файлу; номер версії програми; рядок Copyright, із якого зрозуміло, якою програмою файл був зашифрований; контрольну суму, що повинна використатися в алгоритмі дешифрування; імя вихідного файлу для його відновлення при дешифруванні іншу інформацію на розсуд розробника.

7.  Необхідно рахувати контрольну суму, яка буде контролювати правильність дешифрування. Найпростішій метод підрахунку контрольної суми - це сумування всіх байтів файлу.

8.  Для виконання кодування даних можна використати будь який алгоритм. Найпростішим може бути алгоритм Гамування (гаммирования). Базується він на бітовій операції XOR.

3. Код програми

програма кодування пароль гамування бітовий

#include <string.h>

#include <io.h>

#include <conio.h>

#include <stdio.h>

#include <stdlib.h>

#include <fcntl.h>

#include <sys\types.h>

#include <sys\stat.h>

#include <alloc.h>

#include <errno.h>

#define BUFSIZE 10000

char* buffer;

//структура для збереження заголовку

struct Header

{

char signat[3]; //сiгнатуру виду файлу;

int version; //номер версії програми;

char CopyRight[30]; //рядок Copyright

char filename[13];// імя вихідного файлу

unsigned long CRC; //контрольна сума

}header;

unsigned long Cryptographer(int count, char* pass, unsigned long conf, char* argv);

/***************************************************************************/

void main( int argc, char **argv )

{

int source, target;

int i;

int count;

unsigned long CRCM = 0;

clrscr();

//перевірка кількості аргументів командного рядка

if( argc != 5 )

{

printf( "\nUsage:"

"\tMYENCODE\n"

"\t[d:][\\path]\\oriuginal_file\n"

"\t[d:][\\path]\\target_file\n"

"\tpassword\n"

"\tidenteficator( \e or \d )\n" );

getch();

exit( 1 );

}

//відкриваємо вихідний файл

source = open( argv[ 1 ], O_BINARY | O_RDONLY );

//обробка помилки відкриття файлу

if( source == -1 )

{

printf( "\nOpen source file error: %d", errno );

getch();

exit( 2 );

}

//створюємо новий файл куди зпишим код

target = open( argv[ 2 ],

O_BINARY | O_WRONLY | O_CREAT | O_EXCL,

S_IREAD | S_IWRITE );

//перевіряємо на наявність одноіменного файлу

//та запитуємо користувача про необхідність його заміни новим

if( errno == EEXIST )

{

printf( "\nFile already exists. ............




 
     

Вечно с вами © MaterStudiorum.ru