51328

Методы шифрования текста при помощи аналитических преобразований

Лабораторная работа

Информатика, кибернетика и программирование

Цель работы: Научиться составлять программы шифрования текста, основываясь на алгебру матриц. Вывод: научился составлять программы шифрования текста, основываясь на алгебру матриц.

Русский

2014-02-09

68.61 KB

8 чел.

Цель работы: Научиться составлять программы шифрования текста, основываясь на алгебру матриц.

Изм.

Лист

№ докум.

Подпись

Дата

Лист

1

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

Разраб.

Карецкий

Пров.

Смулаковский

Н. Контр.

Утв.

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

Лит.

Листов

4

КОГУ 59П-3

 

Ход работы:  

program Project1;

unit LAB3;

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs,xpman, Grids, StdCtrls;

type

 TForm1 = class(TForm)

   mat: TStringGrid;

   Label1: TLabel;

   Button1: TButton;

   Label2: TLabel;

   Edit2: TEdit;

   Button2: TButton;

   Edit3: TEdit;

   Label3: TLabel;

   Button3: TButton;

   qw: TEdit;

   procedure Button1Click(Sender: TObject); //осуществлятся шифровка

   procedure Button2Click(Sender: TObject); //дешифровка

   procedure Button3Click(Sender: TObject); //заполнение матрицы

   procedure qwChange(Sender: TObject);     //если забито значение, то шифровать

   procedure Edit2Change(Sender: TObject);  //если есть значение, то дешифровать

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form1: TForm1;

 rus,text,rashifr,shifr,c:string;

 s:char;

 i,j,q,k,e,f,opr:integer;

 p,m:array [0..2,0..2] of integer;

 z,r:array[0..2]of integer;

implementation

{$R *.dfm}

//осуществлятся шифровка

procedure TForm1.Button1Click(Sender: TObject);

begin

edit2.Text:='';

edit3.text:='';

q:=0;

k:=0;

rus:='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';

text:=qw.text;

//if length(text)mod 4<>0 then

begin

//while  length(text)mod 4<>0 do

begin

text:=text+' ';

for i:=1 to length(text) do

Изм.

Лист

№ докум.

Подпись

Дата

Лист

2

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

for j:=1 to length(rus) do

if text[i]=rus[j] then begin

z[q]:=j;

q:=q+1;

if q=3 then

begin

for e:=0 to 2 do

begin

for f:=0 to 2 do

k:=k+m[f,e]*z[f];

shifr:=shifr+inttostr(k)+' ';

k:=0;

end;

q:=0;

end;

end;

end;

end;

edit2.text:=shifr;

end;

Изм.

Лист

№ докум.

Подпись

Дата

Лист

3

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

procedure TForm1.Button2Click(Sender: TObject);

begin

for i:=1 to 9 do

opr:=m[i,j]+i*k;

for i:=0 to 2 do

for j:=0 to 2 do

p[i,j]:=opr;

for i:=0 to 2 do

for j:=0 to 2 do

begin

r[i]:=p[i,j]*z[f];

rashifr:=rus[i];

end;

for i:=1 to length(rashifr) do

edit3.text:=rashifr;

edit3.Text:=text;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

with mat do

begin

for i:=0 to colcount-1 do

for j:=0 to rowcount-1 do

begin

k:=random(8)+1;

cells[i,j]:=inttostr(k);

m[j,i]:=k;

end;

end;

end;

procedure TForm1.qwChange(Sender: TObject);

begin

if qw.text<>'' then  button1.Enabled:=true;

end;

procedure TForm1.Edit2Change(Sender: TObject);

begin

if edit2.text<>'' then button2.enabled:=true;

end;

end.

Изм.

Лист

№ докум.

Подпись

Дата

Лист

4

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

Вывод: научился составлять программы шифрования текста, основываясь на алгебру матриц.


 

А также другие работы, которые могут Вас заинтересовать

14564. ТЕХНИЧЕСКАЯ ЭКСПЛУАТАЦИЯ ЭЛЕКТРОУСТАНОВОК 760.5 KB
  ЭЛЕКТРОБЕЗОПАСНОСТЬ И ТЕХНИЧЕСКАЯ ЭКСПЛУАТАЦИЯ ЭЛЕКТРОУСТАНОВОК Методические указания по выполнению практической работы предназначены для студентов специальности 140211 Электроснабжение бакалавров по направлению 140400 – Электроэнергетика и электротехника профи...
14565. БЕЗОПАСНОСТЬ ЖИЗНЕДЕЯТЕЛЬНОСТИ. Методические указания 252.5 KB
  БЕЗОПАСНОСТЬ ЖИЗНЕДЕЯТЕЛЬНОСТИ Методические указания рабочая программа и контрольные задания В методических указаниях отражены основные положения дисциплины называемой Безопасность жизнедеятельности БЖД : теоретические и медикобиологические о...
14566. КОМПЬЮТЕРНЫЙ ПРАКТИКУМ ПО АНАЛОГОВОЙ СХЕМОТЕХНИКЕ 1.09 MB
  КОМПЬЮТЕРНЫЙ ПРАКТИКУМ ПО АНАЛОГОВОЙ СХЕМОТЕХНИКЕ. Цель практикума Целью лабораторного практикума является приобретение навыков создания и анализа электронных схем на экране персонального компьютера с помощью пакета ASIMEC. Этот пакет содержит необходимые инст...
14567. Первый проект на AVR 96.5 KB
  Лабораторная работа №1 Первый проект на AVR Цель работы: написать для микроконтроллера программу мигания светодиодом на языке программирования С согласно варианта. В каждом языке программирования есть такое понятие Hello World. Это первая программа дающая общие понят...
14568. Операторы управления программой в Java 194.5 KB
  Лабораторная работа Java3 Тема: Операторы управления программой в Java. Цель изучить основные операторы Javaпрограмм. Операторы Как вы знаете любой алгоритм предназначенный для выполнения на компьютере можно разработать используя только линейные вычисления р
14569. Введение в OpenGL. Рисование простейших геометрических объектов. Работа с OpenGL при помощи GLUT 78.5 KB
  Лабораторная Работа № 1 Введение в OpenGL. Рисование простейших геометрических объектов. Работа с OpenGL при помощи GLUT. 1. Что такое GLUT OpenGL является мультиплатформенной библиотекой т.е. программы написанные с помощью OpenGL можно легко переносить на различные операц...
14570. Примитивы OpenGl 90 KB
  Лабораторная работа №2 Примитивы OpenGl Точки линии треугольники четырехугольники многоугольники простые объекты из которых состоят любые сложные фигуры. В предыдущей главе мы рисовали сферу конус и тор. OpenGL непосредственно не поддерживает функций для с...
14571. Используя принципы ООП реализовать программу для вычисления площади фигур 16.74 KB
  Отчет по лабораторной работе №2 по дисциплине: Объектноориентированное программирование Постановка задачи Используя принципы ООП реализовать программу для вычисления площади следующих фигур: Эллипс Прямоугольник Треугольник. В программе необх
14572. Ввод и взаимодействие с пользователем и анимация Взаимодействие с пользователем в OpenGL 50.5 KB
  Лабораторная работа №3 Ввод и взаимодействие с пользователем и анимация Взаимодействие с пользователем в OpenGL Функции библиотеки GLUT реализуют так называемый событийноуправляемый механизм. Это означает что есть некоторый внутренний цикл который запускается