ВУЗ:
Составители:
6
(сложение или вычитание с контролем выхода за границы типа данных)
соответствующих элементов массива ключа.
3.5 Ключ шифрования перед записью в файл преобразуйте с помощью алгоритма
шифрования XOR. Пример модуля консольного приложения с реализацией подобного
алгоритма приведен ниже.
program Crypt;
{$APPTYPE CONSOLE}
uses Windows;
var
key, text, longkey, result : string;
i : integer;
toto, c : char;
F : TextFile;
begin
writeln('Enter the key:');
readln(key);
writeln('Enter the text:');
readln(text);
for i := 0 to (length(text) div length(key)) do
longkey := longkey + key;
for i := 1 to length(text) do
begin
// XOR алгоритм
toto := chr((ord(text[i]) xor ord(longkey[i])));
result := result + toto;
end;
writeln('The crypted text is:');
writeln(result);
write('Should i save it to result.txt ?');
read(c);
if c
in ['Y','y'] then
begin
AssignFile(F,'result.txt');
Rewrite(F);
Writeln(F,result);
CloseFile(F);
end;
end.
3.6. Разработайте приложение, в котором зашифрованный текст хранится в файле
текстового формата вместе с ключом.
Перед записью в файл зашифрованного текста и ключа предварительно
перемешайте записываемые массивы (в получаемом массиве выделяются
фиксированные позиции для хранения символов ключа; для корректной сборки ключа
необходимо указать длину ключа в символах и шаг фиксированных позиций, т.е. через
сколько символов шифрованного текста находятся символы ключа; указанные
признаки можно записать в качестве первых двух байтов файла или же в других
позициях файла).
Расшифровка содержимого файла состоит из следующих шагов:
- считывание характеристик ключа,
- сборка ключа,
- расшифровка текста.
6 (сложение или вычитание с контролем выхода за границы типа данных) соответствующих элементов массива ключа. 3.5 Ключ шифрования перед записью в файл преобразуйте с помощью алгоритма шифрования XOR. Пример модуля консольного приложения с реализацией подобного алгоритма приведен ниже. program Crypt; {$APPTYPE CONSOLE} uses Windows; var key, text, longkey, result : string; i : integer; toto, c : char; F : TextFile; begin writeln('Enter the key:'); readln(key); writeln('Enter the text:'); readln(text); for i := 0 to (length(text) div length(key)) do longkey := longkey + key; for i := 1 to length(text) do begin // XOR алгоритм toto := chr((ord(text[i]) xor ord(longkey[i]))); result := result + toto; end; writeln('The crypted text is:'); writeln(result); write('Should i save it to result.txt ?'); read(c); if c in ['Y','y'] then begin AssignFile(F,'result.txt'); Rewrite(F); Writeln(F,result); CloseFile(F); end; end. 3.6. Разработайте приложение, в котором зашифрованный текст хранится в файле текстового формата вместе с ключом. Перед записью в файл зашифрованного текста и ключа предварительно перемешайте записываемые массивы (в получаемом массиве выделяются фиксированные позиции для хранения символов ключа; для корректной сборки ключа необходимо указать длину ключа в символах и шаг фиксированных позиций, т.е. через сколько символов шифрованного текста находятся символы ключа; указанные признаки можно записать в качестве первых двух байтов файла или же в других позициях файла). Расшифровка содержимого файла состоит из следующих шагов: - считывание характеристик ключа, - сборка ключа, - расшифровка текста.
Страницы
- « первая
- ‹ предыдущая
- …
- 4
- 5
- 6
- 7
- 8
- …
- следующая ›
- последняя »