Метод шифрации |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Метод шифрации |
Angelok |
Сообщение
#1
|
Гость |
Помогите с задачкой! Я начала решать следующим способом: перевожу коды в 2-ую систему и применяю xor, но у меня получаются одинаковые новые коды. Пожет кто-нибудь решал похожую?
Вот задачка: Один из методов шифрации сообщения является метод шифрования наложением гаммы. Алгоритм шифрования: берётся некоторое случайное число в диапазоне от 127 до 255 – это гамма. Код каждого символа строки заменяют кодом, получившимся в результате операции: новый код = старый код XOR гамма. Зашифруйте и дешифруйте сообщения пользователя. |
Angelok |
Сообщение
#2
|
Гость |
Вот что я сделала:
Код Uses crt; Var a,b,st,st1,a1,a2:string; x,i,k,t,r,y,cod,q: integer; Begin Clrscr; Randomize; Writeln ('Введите строку'); Readln(a); x:=127+random(128); Repeat t:=x mod 2; x:=x div 2; str(t;st); b:=b+st; Until x=0; Writeln(''Выберите что нужно сделать со строкой'); Writeln('1: зашифровать'); Writeln('2: дешифровать'); Reapeat readln(k); Until (k=1) or (k=2); q:=1; case k of 1: While q> length(a) do Begin t:=ord(a[i]); a1:=''; a2:=''; Reapeat r:=t mod 2; t:=t div 2; str(r,st1); a1:=st1+a1; Until t=0; For i:=1 to length(a1) do begin val(a1[i], x, cod); val(b[i],y,cod); str((x xor y), st); a2:=a2+st; end; For i:=length(a2) downto 1 do Write(a2[i]); Write(' '); q:=q+1; end; 2: begin end; Readkey; end. |
compiler |
Сообщение
#3
|
Человек Группа: Пользователи Сообщений: 1 050 Пол: Мужской Реальное имя: Станислав Репутация: 3 |
-------------------- Спасибо!
Удачи! |
Текстовая версия | 29.03.2024 22:22 |