Разработка программы скрытия и извлечения информации в звуковых файлах

Приложение, позволяющее скрывать внутри аудио файла (контейнера) некое сообщение. Описание структуры wave файла. Алгоритмы шифрования сообщения, встраивания скрытой информации. Алгоритм разработанного приложения. Интерфейс конечного программного продукта.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 05.01.2013
Размер файла 336,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Оглавление

Введение

Цель и постановка задачи

Описание структуры wave файла

Алгоритмы шифрования сообщения

Алгоритм разработанного приложения

Интерфейс программного продукта

Заключение

Список использованных ресурсов

Введение

Задача надежной защиты и сокрытия информации идет из далекой глубины веков. Еще в античные времена применяли различные методы защиты важной информации от “посторонних глаз”. Это были скиталы, квадрат Полибия и первые сдвиговые шифры. Позже возникли шифры простой замены (рассказ Артура Конан Дойла “Пляшущие человечки”) и перестановочные шифры (решетка Кардано). В XVIII веке возник шифр “по книге”, который можно рассматривать как развитие шифра Цезаря (таким шифром пользуется герой Ю. Семенова - Штирлиц в романе “17 мгновений весны”)

Все эти шифры обладают относительной стойкостью и могут быть расшифрованы за конечный промежуток времени. Легче сделать вид, что никакой тайной информации и не было.

Способы и методы сокрытия самого существования секретных сообщений так же известны с давних времен. Данный подход получил название стеганография. Это слово происходит от греческих слов steganos (секрет, тайна) и graphy (запись) и, таким образом, означает буквально “тайнопись”.

Первые следы стеганографических методов теряются в глубокой древности. Так, например, общеизвестно, что в древней Греции тексты писались на дощечках, покрытых воском. Во избежание попадания сообщения к противнику, использовали следующее ухищрение: соскабливали воск с дощечек, писали сообщение прямо на поверхности дерева, потом снова покрывали дощечку воском. Таблички выглядели без изменений и потому не вызывали подозрений.

Хорошо известны различные способы скрытого письма между строк обычного не защищаемого письма: от применения молока до использования сложных химических реакций с последующей обработкой при чтении.

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

Компьютерные технологии дали новый импульс развитию и совершенствованию стеганографии, появилось направление в области защиты информации -- цифровая или компьютерная стеганография. Одновременно современный этап развития в области глобальных телекоммуникационных сетей и средств мультимедиа привел к разработке и новых методов, предназначенных для обеспечения безопасности и сохранности передачи данных по каналам телекоммуникаций, использования их в необъявленных целях. Эти методы, учитывая естественные неточности устройств оцифровки и избыточность аналогового видео или аудио сигнала, позволяют скрывать сообщения в файлах (контейнерах). Причем, в отличие от криптографии, данные методы скрывают сам факт наличия и передачи информации.

Таким образом, избыточность звуковых или других медиа-файлах открывает широкие возможности по сокрытию информации, т.к. из-за больших объемов скрываемой информации в звуковых (аудио) файлах в них можно хранить не только тексты-метки, но и документы, изображения, приложения.

Цель и постановка задачи

Разработать приложение, позволяющее скрывать внутри аудио файла (контейнера) некое сообщение.

Условия.

В данном проекте необходимым условием работы было выбрано расширение файла. Для корректной работы программы был выбран формат wav - т.к. данный формат файла-контейнера позволяет хранить несжатый звук и позволяет свободно использовать алгоритмы для его кодирования. В случае выбора контейнера неверного расширения, программа выдаст ошибку т.к. не сможет прочитать файл.

Так же для корректной работы программы размер скрываемой информации должен быть меньше доступного нам для изменения количества бит в самом звуковом файле.(Подробнее см. ниже) Расчёт производит сама программа в случае невыполнения данного условия выдаёт ошибку

"Не достаточный размер файла для кодирования"

Описание структуры wave файла

Звуковые WAVE файлы являются подмножеством файлов RIFF формата (ResourceInterchangeFileFormat), разработанного для хранения ресурсов мультимедиа. Основной элемент RIFF файла - т.н. чанк (chunk), имеющий следующую структуру

TPCMWaveFormat = record

wf: TWaveFormat;

wBitsPerSample: Word;

end;

Основные типы чанков имеют идентификаторы "RIFF" и "LIST" и могут состоять из вложенныхчанков (субчанков).

Рассмотрим для примера наиболее простой случай WAVE файла, состоящего из одного лишь RIFF-чанка, содержащего WAVE-форму (WAVE-form). Так как в стандартных условиях wave-файлы имеют один data-чанк, то рассмотрим именно файл с одним-единственным WAVE-чанком.

WAVE-форма наиболее простой категории - PCM имеет следующий вид:

<WAVE-форма> = 'WAVE' + <fmt-чанк> + <data-чанк>,где

'WAVE' - сигнатура WAVE-формы идентифицирующая вид данных;

<fmt-чанк> - чанк с информацией о звуковом сигнале, хранит основную информацию о данном формате;

<data-чанк> - чанкс звуковым сигналом;

<fmt-чанк>='fmt'+<ckSize>+<WaveFormat>+<fmt-specific>, где

'fmt ' - сигнатура fmt-чанка, определяющая конкретного представителя подмножества wave-файлов;

<ckSize> - размер ftm-чанка;

<WaveFormat> - структура WaveFormat, описанная ниже;

<fmt-specific> - структура с дополнительной информацией о формате, имеет переменную длину и зависит от wFormatCategory (см. ниже). В случае с PCM удобно пользоваться структурой WaveFormatEx, объединяющей в себе WaveFormat и два поля из fmt-specific. (Документация по Win32 SDK утверждает, что WaveFormatEx будет работать для ВСЕХ не-PCM форматов, что идет вразрез с утверждением MM Programmer`sReference о переменной длине fmt-specific.Так что вопрос с не-PCM форматами пока открыт) [25].

<data-чанк> = 'data' + <ckSize> + <звуковой сигнал>, где

'data' - сигнатура data-чанка, показывает начала звукового потока;

<ckSize> - размер блока данных;

<звуковой сигнал> - последовательность байт, описывающая сигнал.

CтруктураWaveFormat имеет следующий вид:

TWaveFormat = record

wFormatTag: Word; {типформата}

nChannels: Word;{число каналов 1-моно или 2-стерео}

nSamplesPerSec: Longint; {частота дискретизации}

nAvgBytesPerSec: Longint; {число бит в секунду}

nBlockAlign: Word; {размер единицы сэмпла}

end;

Рассмотрим данную структуру подробнее.

wFormatTag - категория формата.

От этого значения зависят значения остальных полей этой структуры, структура <fmt-specific> и data-чанка. Существует несколько категорий формата;

самая доступная - PCM (PulseCodeModulation) имеет wFormatTag = 1;

nChannels - 1 - моно, 2-стерео, вопрос о большем числе каналов открыт;

nSamplesPerSec - частота дискретизации (число сэмплов в секунду);

nAvgBytesPerSec - среднее число байт в секунду, используется для эффективной буферизации. Для PCM вычисляется по формуле:

(nChannels*nSamplesPerSec*nBitsPerSample)/8.

nBlockAlign - выравнивание данных в data-чанке. Для PCM вычисляется по формуле:

(nChannels*nBitsPerSample)/8.

<fmt-specific> - для категории PCM эта структура имеет одно значащее поле UINT nBitsPerSample, которое поведает нам о разрядности дискретизации. Если, например, nBitsPerSample = 12, то сэмпл хранится в старших 12 битах слова, а младшие 4 - нули. Следом идет поле WORD cbSize, используемое не-PCM форматом (так, формат ADPCM, например, хранит здесь некий коэффициент, необходимый для шифрования/дешифрования сигнала). Для PCM-формата это поле может отсутствовать [24, 25].

Непосредственно звуковые данные хранятся в чанке данных в формате PCM - простейшем и самом первом формате, разработанном корпорацией Microsoft для хранения звуковой информации любого качества.

Опишем схему размещения данных в data-чанкеwave файла.

В монофоническомwave-файле сэмплы расположены последовательно один за другим:

sample[0],sample[1],sample[2]...

В стереофоническомwave-файле сэмплы идут попарно:

left[0],right[0],left[1],right[1],left[2]...

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

Channel0 - байт для левого канала

Channel1 - байт для правого канала

8 bit mono:

-Sample1- -Sample2- -Sample3- -Sample4-

Channel0 Channel0Channel0Channel0

8 bit stereo:

--------Sample1------- --------Sample2-------

Channel0 Channel1 Channel0 Channel1

16 bit mono:

--------Sample1------- --------Sample2-------

Channel0 Channel0Channel0Channel0

(low byte) (high byte) (low byte) (high byte)

16 bit stereo:

-------------------Sample1---------------------

Channel0 Channel0 Channel1 Channel1

(low byte) (high byte) (low byte) (high byte)

Средние и крайние значения элемента дискретизации вычисляются следующим образом:

Разрядность Формат данных

------------------------------

1-8 bitbyte

8-16 bitshortint

например,

Формат Max Min Midpoint

------------------------------------------------

8 bit PCM 255 0 128

16 bit PCM 32767 -32768 0

Как видно, чем выше разрядность файла, тем выше возможная частота дискретизации, а, следовательно, и качество звука. Хотя человеческое ухо и не воспринимает сигналы с частотой выше 20000 Гц, однако различие в качестве звука ощущается по совокупности различных субъективных рецепторных ощущений

Поэтому на сегодняшний день существует огромное количество видов WAVE-файлов различающихся по максимальной частоте дискретизации звука от 8000 Гц (качество записи с телефонной линии) до 44100 Гц (качество компакт диска) и даже 96000 Гц (32-битный цифровой звук экстра качества)

Алгоритм шифрования сообщения

Существующие алгоритмы:

Все алгоритмы встраивания скрытой информации можно разделить на несколько подгрупп: Работающие с самим цифровым сигналом. Например, метод LSB. «Впаивание» скрытой информации. В данном случае происходит наложение скрываемого изображения (звука, иногда текста) поверх оригинала. Часто используется для встраивания ЦВЗ. Использование особенностей форматов файлов. Сюда можно отнести запись информации в метаданные или в различные другие не используемые зарезервированные поля файла. По способу встраивания информации стегоалгоритмы можно разделить на линейные (аддитивные), нелинейные и другие. Алгоритмы аддитивного внедрения информации заключаются в линейной модификации исходного изображения, а ее извлечение в декодере производится корреляционными методами. При этом ЦВЗ обычно складывается с изображением-контейнером, либо «вплавляется» (fusion) в него. В нелинейных методах встраивания информации используется скалярное либо векторное квантование. Среди других методов определенный интерес представляют методы, использующие идеи фрактального кодирования изображений. К аддитивным алгоритмам можно отнести:

А17 (Cox)

А18 (Barni)

L18D (Lange)

А21 (J. Kim).

А25 (С. Podilchuk).

Метод LSB

Эхо-методы применяются в цифровой аудиостеганографии и используют неравномерные промежутки между эхо-сигналами для кодирования последовательности значений. При наложении ряда ограничений соблюдается условие незаметности для человеческого восприятия. Эхо-методы устойчивы к амплитудным и частотным атакам, но неустойчивы к атакам по времени.

Метод расширенного спектра Метод встраивания сообщения, когда специальная случайная последовательность встраивается в контейнер, за тем, используя согласованный фильтр, данная последовательность детектируется. Данный метод позволяет встраивать большое количество сообщений в контейнер, и они не будут создавать помехи друг другу. Метод заимствован из широкополосной связи.

LSB стеганография.

Один из основных способов защиты информации это криптография. Известно, что предназначение криптографии - сделать невозможным чтение секретной информации, но есть и другой подход к защите данных. Можно не шифровать информацию, а сделать вид, что у нас её нет. Именно для этого и придумана стеганография. Википедия уверяет нас что, «стеганография (от греч.уфегбнпу -- скрытый и греч. гсбцщ -- пишу, буквально «тайнопись») -- это наука о скрытой передаче информации путём сохранения в тайне самого факта передачи.

LSB (LeastSignificantBit, наименьший значащий бит) -- суть этого метода заключается в замене последних значащих битов в контейнере (изображения, аудио или видеозаписи) на биты скрываемого сообщения. Разница между пустым и заполненным контейнерами должна быть не ощутима для органов восприятия человека.

Сравнение входного и выходного продукта.

Для проверки эффективности LSBалгоритма проведём сравнение: два файла, исходный и прошедший стенографию:

Вверху файл со встроенным сообщением, внизу исходный. На глаз, да и на ухо, разница слабо заметна.

Так же имеет смысл ознакомится с побитным изменением файла. Вверху файл со встроенным сообщением, внизу исходный. Красным выделен заголовок.

Алгоритм работы программы

Скрытие Информации

Для получения информации из входного файла используем стандартный класс WaveFileReader:

publicAudioStenographer(stringFileName)

{

WFR = newWaveFileReader(FileName);

}

Считаем, сколько бит скрываемой информации поместится в выбранныйы нами WAV файл

publiclongGetMaxSizeForCrypt(int Bits)

{

returnWFR.Length * Bits / 8;

}

Запускаемпроцессстенографии

publicvoid Crypt(stringInputFileName, stringOutputFileName, int Bits)

{

// Возвращение файла на начальную позицию

WFR.Seek(0, SeekOrigin.Begin);

// Считываем входной файл в массив байтов

StreamReader SR = newStreamReader(InputFileName);

BinaryReader BR = newBinaryReader(SR.BaseStream);

List<byte> BL = newList<byte>();

byte cur;

while (BR.BaseStream.Length != BL.Count)

{

cur = BR.ReadByte();

BL.Add(cur);

}

// Закрываемфайл

SR.Close();

Проверяем, что в контейнер уместиться всё сообщение

if (GetMaxSizeForCrypt(Bits) <BL.Count)

thrownewException("Не достаточный размер файла для кодирования " + Bits.ToString() + " битами");

Преобразуем входное сообщение в массив битов

BitArrayInputFileBits = newBitArray(BL.ToArray());

Создаём новый файл формата wave, выходной.

WaveFileWriter WFW = newWaveFileWriter(OutputFileName, WFR.WaveFormat);

// Считанный бит из входного файла

inticur;

// Текущая позиция во входном файла

intIPos = 0;

При считывание мы перезаписываем младшие биты, поэтому чтение производится справа налево.

// Маска для обнуления начальных бит

intMask = (~0 <<Bits);

// Пишемввыходнойфайл

byte[] AudioFile = newbyte[WFR.Length];

WFR.Read(AudioFile, 0, (int)WFR.Length);

for (int k = 0; k <WFR.Length; k++)

{

// Вытаскиваем нужное количество бит

icur = AudioFile[k];

intCurAnd = 0;

if (IPos<InputFileBits.Count)

{

for (inti = 0; i< Bits; i++)

{

CurAnd = (CurAnd<< 1) | (InputFileBits[IPos] ? 1 : 0);

IPos++;

}

}

icur = (icur& Mask) | CurAnd;

WFW.WriteByte((byte)icur);

}

WFW.Close();

Извлечение информации

Запускаем процесс извлечения сообщения

{

// Возвращение файла на начальную позицию

WFR.Seek(0, SeekOrigin.Begin);

// Считываем звуковой файл в массив байтов

byte[] AudioBytes = newbyte[WFR.Length];

WFR.Read(AudioBytes, 0, (int)WFR.Length);

List<byte> BL = newList<byte>(AudioBytes);

// Создаём массив битов, считая, что весь файл может войти в результат

BitArray BA = newBitArray(BL.Count * 8);

// Устанавливаем в нули

BA.SetAll(false);

// Количество ненулевых бит в результате

intLastNonZero = 0;

// Количество битов

intBitCount = 0;

Проходим по всем байтам файла

for (inti = 0; i<BL.Count; i++)

{

// Текущийбайт

byteCurByte = BL[i];

// Текущая маска, по которой будем слева направо выделять требуемый бит

byteCurMask = (byte)(1 << (Bits - 1));

// Считываем все биты маски

for (int j = 0; j < Bits; j++)

{

// Получаембит

boolCurBit = (CurByte&CurMask) != 0;

if (CurBit)

LastNonZero = BitCount;

// Устанавливаемего

BA.Set(BitCount, CurBit);

// Увеличиваем количество ненулевых

BitCount++;

// Сдвигаем маску

CurMask = (byte)(CurMask>> 1);

}

}

// Копируем в массив байт

byte[] ResBytes = newbyte[BA.Count / 8 + 1];

BA.CopyTo(ResBytes, 0);

Записываем в выходной файл полученные ненулевые биты

StreamWriter SW = newStreamWriter(OutputFileName);

BinaryWriter BW = newBinaryWriter(SW.BaseStream);

// Только те биты, в которых есть

for (inti = 0; i<LastNonZero / 8 + 2; i++)

{

BW.Write(ResBytes[i]);

}

BW.Close();

}

Интерфейс программного продукта

Главное окно программного продукта.

Контекстное меню содержит две кнопки. При вызове «О программе» появляется окно справки

Закрыть его и вернуться на главную форму проекта можно нажатием кнопки «Ок».

Для кодирования:

В верхней части программы.

В поле «звуковой файл» с помощью кнопки «…»выбираем звуковой файл формата wave, в который и будем скрывать наше сообщение.

Сообщение выбирается с помощью кнопки «…» в поле «входной файл».

Что бы выбрать название и месторасположение итогового файла мы используем кнопку «…» рядом с полем «выходной файл»

Что бы запустить процесс нажимаем кнопку «Кодирование»

Если программа выдает ошибку о недостаточном размере, можно изменить количество младших бит, которые будут перезаписаны в поле «Количество бит», вручную введя цифры с клавиатуры.

Для Декодирования:

В нижней части программы.

В поле «Входной файл» с помощью кнопки «…»выбираем файл, из которого будем извлекать сообщение.

В поле «выходной файл» с помощью кнопки «…» выбираем имя и месторасположение извлечённого сообщения.

В поле «Количество бит» вводим, сколько битов контейнера содержат сообщение.

Заключение

Анализ звуковых wave-файлов и алгоритмов сокрытия информации в файлах данного типа, осуществленный в работе, позволил создать приложение, скрывающее сообщение в звуковом файлес использованием наиболее выгодного в рамках курсового проекта алгоритма.

С помощью стеганографическая системы можно внедрять/извлекать из звуковых файлов не только текст, но и графику, звук, приложения (в звуковой файла можно записать до 10% информации от общего объема файла).

Анализ тенденций развития компьютерной стеганографии показывает, что в ближайшие годы интерес к развитию методов компьютерной стеганографии будет усиливаться. Предпосылки к этому уже сформировались сегодня. Общеизвестно, что актуальность проблемы информационной безопасности постоянно растет и стимулирует поиск новых методов защиты информации.

Ярким примером может послужить сложившаяся в интернете «война с пиратством». Правонарушители используют все возможности для распространения информации в сети Internet, и разобравшись с тем, какими путями они могут пойти для передачи частной информации (например, сохранить только изданную книгу в аудиофайле и распространять среди поклонников без разрешения автора или издательства, выкупившего книгу), появится шанс предотвратить правонарушение.

скрытие извлечение информация звуковой файл

Список использованных ресурсов

Audiocoding.ru -всё о сжатие аудио

Cyberforum.ru - форум начинающих и продолжающих программистов

Microsin.ru - свободный сайт радио

Microsoft Windows Multimedia Programmer`s Reference - электронная справка

VolkovichN.A., AssanovichB.A., VolkovichA.N. NewIntellectualAdaptiveApproachInDistanceLearning // Дистанционное обучение - образовательная среда XXI века: Материалы Междунар. науч-метод. Конф., 18 - 20 дек. 2001г. 2001г., Минск / Белорусский государственный университет информатики и радиоэлектроники - Мн.: Бестпринт, 2001 -С. 223-225

Wikipedia - свободная энциклопедия

Win32 SDK Programmer`s Guide - электронная справка

Ахо, Альфред, В., Хопкрофт, Джон, Ульман, Джефри, Д. Структуры данных и алгоритмы. : Пер. с англ.: Уч. пос. - М. : Издательский дом «Вильямс», 2000. - 384 с.: ил. - Парал. тит. англ.

Барсуков В.С., Романцов А.П. Компьютерная стеганография: вчера, сегодня, завтра. Internet-ресурс: kv.g.com.ua

Брэдли Д. Программирование на языке ассемблера для персональной ЭВМ фирмы IBM: Пер. с англ. - М.: Радио и связь, 1988. - 448 с.: ил.

Вирт Н. Алгоритмы и структуры данных: Пер. с. англ. - 2-е изд., испр.- СПб.: Невский Диалект, 2001. - 352 с.: ил.

Волкович А.Н. Мультимедийная программа «Народы и культура западного региона Беларуси» (Гродненский край) // Свежий ветер' 2001: Сб. науч. работ студ. ГрГУ им. Я. Купалы: В 2ч. Ч.1/ Под ред. А.И.Бутя. - Гродно ГрГУ, 2001. - С.142-145

Волкович А.Н. Современные технологии в учебно-воспитальном процессе (мультимедийная энциклопедия «Гродно») // «Новые математические методы и компьютерные технологии в проектировании, производстве и научных исследованиях» Материалы IV Республиканской научной конференции 19-22 марта 2001 марта./ Гомельский гос. ун-т. - Гомель.: 2001 - С. 130-131.

Волкович Н.А., Волкович А.Н. перспективы использования компьютера на уроках мировой и отечественной художественной культуры // ТехноОБРАЗ 2001: Технологии непрерывного образования и саморазвития личности: Материалы международной научной конференции. В 3 ч. - Ч. 3 / Отв. ред. проф. В.П. Тарантей. - Гродно: ГрГУ, 2001. - С. 26-29

Волкович Н.А., Рудикова Л.В., Волкович А.Н. Компьютер как дистанционная образовательная система // Стратегии коммуникативного поведения. Материалы докл. междунар. науч. конф., Минск 3-4 мая 2001 г.: В 3ч. Ч. 3 / Минск.гос. лингв. ун-т. - Мн.: 2001 - С. 153-155.

Гульев Игорь Создаем вирус и антивирус / Гульев Игорь - 2-е изд., стереотипное. - М.: ДМК, 1999. - 304с.: ил.

Дарахвелидзе П.Г., Марков Е.П. Delphi 4. - СПб.: БХВ - Санкт-Петербург, 1999. - 816 с., ил.

Домашев А.В., Попов В.О., Правиков Д.И., Прокофьев И.В., Щербаков А.Ю. Программирование алгоритмов защиты информации. Учебное пособие. - М.: «Нолидж», 2000. - 288 с., ил.

Зубков С.В. Assembler. Для DOS, Windowsи Unix. - ДМК, 1999. - 640 с., ил.

Кабардин О.Ф. Физика: Справ. Материалы: Учеб. Пособие для учащихся.- 3-е изд. - М.: Просвещение, 1991. - 367 с.: ил.

Калверт Чарльз Delphi 4. Энциклопедия пользователя: Пер. с. англ. - К.: Издательство «ДиаСофт» 1998. - 800 с.

Кнут, Дональд, Эрвин Искусство программирования, том 1. Основные алгоритмы, 3-е изд.: Пер. с англ.: Уч.пос. - М.: Издательский дом «Вильямс», 2000. - 720 с.: ил. - Парал. тит. англ.

Кнут, Дональд, Эрвин Искусство программирования, том 2. Получисленные алгоритмы, 3-е изд.: Пер. с англ.: Уч.пос. - М.: Издательский дом «Вильямс», 2000. - 832 с.: ил. - Парал. тит. англ.

Кнут, Дональд, Эрвин Искусство программирования, том 3. Сортировка и поиск, 2-е изд.: Пер. с англ.: Уч.пос. - М.: Издательский дом «Вильямс», 2000. - 832 с.: ил. - Парал. тит. англ.

Молдовян А. А., Молдовян Н.А., Советов Б.Я. Криптография. - СПб.: Издательство «Лань», 2001. - 224 с., ил. - (Учебники для вузов. Специальная Литература).

Нечаев В.И. Элементы криптографии (Основы теории защиты информации): Учеб. Пособие для ун-тов и пед. вузов / Под. Ред. В.А. Садовничего - М.: Высш. шк., 1999. - 109 с.

Программно-аппаратные средства обеспечения информационной безопасности. Защита программ и данных: Учеб. Пособие для вузов / П.Ю. Белкин, О.О. Михальский, А.С. Першаков и др. - М.: Радио и связь, 1999. - 168 с.: ил.

Рейсдорф Кент Delphi 4. Освой самостоятельно: Пер. с. англ. - М.: ЗАО «Издательство БИНОМ», Лаборатория Базовых Знаний, 1999. - 752 с.:, ил.

Тюкачев Николай, Свиридов Юрий Delphi 5. Создание мультимедийных приложений. - М.: «Нолидж», 2000. - 384 с., илл.

Размещено на Allbest.ru


Подобные документы

  • Разработка приложения с помощью среды Microsoft Visual Studio 2010 Express. Интерфейс приложения. Разработка конечного программного продукта, демонстрирующего работу многопоточного приложения, использующего взаимоисключение на основе критической секции.

    лабораторная работа [300,4 K], добавлен 21.07.2012

  • Спецификация требований к разрабатываемому приложению. Разработка структурной схемы интерфейса. Описание алгоритма шифрования DES. Разработка программного кода приложения "DES". Проведение исследования основных шагов для генерации ключей и шифрования.

    курсовая работа [398,4 K], добавлен 13.12.2022

  • Создание программного продукта на языке Pascal в визуальной среде программирования Borland Developer Studio в консольном приложении. Разработка типизированного файла для записи данных и их вывод на экран, добавление данных в конец файла, поиск информации.

    курсовая работа [1,0 M], добавлен 04.12.2011

  • Структура заданного исходного файла и структуры данных, соответствующие данным файла. Подпрограмма проверки принадлежности текста к одной из шести кодовых таблиц. Алгоритмы перекодировки файла в cp1251. Алгоритм сортировки записей исходного файла.

    курсовая работа [63,7 K], добавлен 12.12.2010

  • Схема работы и требования к программам шифрования и дешифрования. Алгоритмы и тексты программы шифрования и программы дешифрования, выполненные на языке программирования C/C++. Содержание файла с исходным текстом, с шифротекстом, с дешифрованным текстом.

    курсовая работа [24,7 K], добавлен 20.10.2014

  • Классическое, компьютерное и цифровое направления стенографии. Использование зарезервированных полей компьютерных форматов файлов. Алгоритмы встраивания скрытой информации. Стеганография и цифровые водяные знаки. Документация программного продукта.

    курсовая работа [37,7 K], добавлен 22.06.2011

  • Определение необходимых модулей программы, структуры файла базы данных. Описание разработки программы, отладка и тестирование. Разработка приложения Organizer.exe, меню и руководство пользователя. Алгоритм обработки событий главного меню (расписания).

    курсовая работа [901,8 K], добавлен 11.02.2014

  • Проблема скрытия и защиты информации от несанкционированного использования. История создания шифра. Решения задачи шифрования текста и кодирования данных. Тестирование полученного приложения и анализ работы программы с точки зрения пользователя.

    курсовая работа [3,0 M], добавлен 24.11.2013

  • Разработка программного приложения, производящего проверку синтаксиса простой программы: выбор метода создания синтаксического анализатора, описание требований к программному обеспечению, написание алгоритмов решения и тестирование конечного продукта.

    курсовая работа [579,7 K], добавлен 03.07.2011

  • Симметричные и асиметричные методы шифрования. Шифрование с помощью датчика псевдослучайных чисел. Алгоритм шифрования DES. Российский стандарт цифровой подписи. Описание шифрования исходного сообщения асимметричным методом с открытым ключом RSA.

    курсовая работа [101,1 K], добавлен 09.03.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.