Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 63, средняя оценка - 4.90
MrKawaii
1 / 1 / 0
Регистрация: 14.05.2012
Сообщений: 12
#1

Шифрование текста - C++

27.05.2012, 12:06. Просмотров 9416. Ответов 16
Метки нет (Все метки)

Здравствуйте, пытаюсь зашифровать слово, через ключ.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
using namespace std;
 
int main()
{
    char str[] = "qwe";   // "пример"
    char key[] = "a2c";  // "пример"
 
    for(int i=0; i<3; i++)
       str[i] = str[i]^key[i];
        cout << str;
 
    return 0;
}
Получаются разные символы типо сердечек и тому подобное, так и должно быть?
И как сделать обратно, то есть расшифровать полученное в исходный текст?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.05.2012, 12:06     Шифрование текста
Посмотрите здесь:

Шифрование текста - C++
необходимо создать программу что бы зашифровать и расшифровать данный текст путем замены буквы на следующую по алфавиту. помогите...

Шифрование и дешифрование текста - C++
Народ вот програма для шифрования текста мне нужно переделать так штоб били подпрограми: 1) на меню пользователя cout&lt;&lt;&quot; Меню...

Шифрование текста. XOR - C++
Помогите с шифрование текста...с числоми вроде получалось. Что значит эта ошибка и как ее испрвить?..) #include &lt;iostream&gt; #include...

Шифрование текста в файле - C++
проблема в то что в процессе работы программа должна считывать текст в файле и кодировать его. Прога работает нормально,т.е. кодирует...

Курсовая: шифрование текста. - C++
Здравствуйте. В связи с рядом причин(главная конечно лень xD ), свою курсовую я умудрился взять только сейчас. Сдача через 2 недели....

Написать программу: шифрование текста - C++
Чтобы зашифровать текст, записанный с помощью русских букв и знаков препинания, его можно переписать, заменив каждую букву непосредственно...

Задача на шифрование текста, язык Cи. - C++
Произвести шифрование текста согласно вводимому ключу , который представляет из себя последовательность символов ( изначально 1,2,3,4,5,6...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
17.09.2012, 20:48     Шифрование текста #2
Да, так и должно быть. Чтобы расшифровать слово, нужно выполнить обратную операцию.
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
17.09.2012, 20:52     Шифрование текста #3
"Наложить" гамму на шифртекст повторно, учитывая тождество
x ^ y ^ y = x
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 290
17.09.2012, 20:56     Шифрование текста #4
Не хочу новую тему создавать, напишу сюда. Хочу написать свой криптор на С++ который будет кодировать другие программы, либо файлы. Какие кодировки можете посоветовать? Или как это вообще реализовать?. У меня есть книга хорошая "Аграновский А.В., Хади Р.А - Практическая криптография, алгоритмы и их программирование - 2009", но я не знаю с чего начинать. Может найдется человек который уже делал что-нибудь подобное и подскажет?
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
17.09.2012, 21:14     Шифрование текста #5
Цитата Сообщение от DebieCooepr Посмотреть сообщение
Хочу написать свой криптор на С++ который будет кодировать другие программы, либо файлы.
шифрование и кодирование - разные вещи.

Цитата Сообщение от DebieCooepr Посмотреть сообщение
Какие кодировки можете посоветовать?
смотрите в сторону государственных стандартов. не просто так эти алгоритмы возведены до такой степени, например

цифровая подпись ГОСТ Р 34.10-2001 на эллиптических кривых
блочный симметричный шифр ГОСТ 28147-89
блочный симметричный шифр (американский гос.стандарт) AES
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 290
17.09.2012, 21:27     Шифрование текста #6
П.С. Я никак не могу понять один момент, каким образом криптор работает с каким-нибудь файлом или программой?. Я вот подумал, а не придется ли мне сразу получить каким-нибудь образом исходный код какова-нибудь файла, закриптовать, и что дальше?) Мне ведь этот зашифрованный файл еще и открывать придется и он должен будет расшифроваться при запуске. Или как-то по другому?
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
17.09.2012, 21:27     Шифрование текста #7
Если ты хочешь кодировать-декодировать файлы, то их без труда можно найти введя в гугл один запрос. Если хочешь шифровать, то нужно ознакомиться с методами шифровки и определить, что для тебя приемлемо (шифрование с открытым ключом и тп). Ну а от этого дальше плясать.
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 290
17.09.2012, 21:37     Шифрование текста #8
Мне нужен именно собственноручный криптор, а не готовенький код в интернете). С ознакомлением проблем не будет, у меня много литературы по этому поводу + гугл. Короче говоря, я хочу написать свою программу для криптозащиты.
veverix
39 / 39 / 2
Регистрация: 14.09.2012
Сообщений: 85
17.09.2012, 21:37     Шифрование текста #9
Я использовал шифрацию по ключу, запоролся на записи в файл.

Что делал:

1. Функция создания ключа. Ключ желательно подлиннее, поскольку чем длиннее ключ, тем сложнее найти его. Генерация в массив char, например. unsigned char key[32] - 512-битный ключ.

2. Функция шифрации/дешифрации. Включает некоторые битовые обратимые операции, так же опционально еще что-то (например может добавлять в ключ MAC-адрес если нужно привязать файл к компьютеру)

Способы шифрации:

1. Логическая операция xor.
2. Ассемблерная операция ror (сдвиг вправо с переносом вылетающего бита влево, на пустое место)
3. Перенос местами байтов в участке кода.

Из файла считываются строки == ключу, шифруются и записываются в память. После чего входящий файл многократно перезаписывается рандомными данными (чтобы избежать восстановления) и затем заполняется шифрованными байтами.
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
17.09.2012, 21:39     Шифрование текста #10
Например ты читаешь какой нибудь текст в программе через криптор и хочешь его зашифровать, ты считываешь файл, затем переводишь всё в биты (нолики и единички ) и только потом можно использовать шифрование, так как все алгоритмы шифрования основываются на изменении бит по какому либо правилу. Ну вот если простым языком, то как то так.
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 290
17.09.2012, 21:41     Шифрование текста #11
"Посредством криптора шифруется оригинальный программный файл и в его начало записывается код, при запуске выполняющий расшифровку и выполнение зашифрованной программы."
Во, нашел в интернете. Вот что я хочу написать и услышать совета бывалых)
veverix
39 / 39 / 2
Регистрация: 14.09.2012
Сообщений: 85
17.09.2012, 21:57     Шифрование текста #12
Цитата Сообщение от DebieCooepr Посмотреть сообщение
"Посредством криптора шифруется оригинальный программный файл и в его начало записывается код, при запуске выполняющий расшифровку и выполнение зашифрованной программы."
Во, нашел в интернете. Вот что я хочу написать и услышать совета бывалых)
Это только один способ, когда ключ прячется в файле. Я решил для начала хотя бы шифровать на ключ, не задумываясь о способах его прятания и считывания, чего и тебе желаю.
Ну а так, в принципе, можно ключ прятать и в файле. Только чтобы его не шифровать нужно его байты раскидать по файлу в заранее известные места, ну и, разумеется, размер файла в таком случае должен быть больше чем максимальный номер байта.

То есть, допустим, 32-битный ключ, байты в [7][3][10][12] номерах. Размер файла не меньше 12 байт.

Еще возможен алгоритм, когда ключ ставится в начало файла, затем идет шифрация всего остального, а сам ключ шифруется на заранее известные байты (допустим, на последние).
Topotun
87 / 46 / 7
Регистрация: 16.09.2012
Сообщений: 192
17.09.2012, 22:50     Шифрование текста #13
Предлагаю ознакомиться сначала с основами криптографии, а потом уже от простого к сложному идти.
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 290
18.09.2012, 00:39     Шифрование текста #14
Я уже достаточно узнал) Счас начну знакомиться с основами, дойду до сложного, тему подыму.) Просто мы в универе криптографию вобще не проходим, решил просто для себя, для общего развития так сказать).
Спасибо всем за помощь.
windows98a
0 / 0 / 0
Регистрация: 13.06.2013
Сообщений: 2
13.06.2013, 14:33     Шифрование текста #15
Пример хорошего шифрования
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
13.06.2013, 15:22     Шифрование текста #16
Цитата Сообщение от windows98a Посмотреть сообщение
Прежде чем писать свои алгоритмы шифрования и утверждать, что шифр получился хорошим, необходимо проанализировать криптостойкость хотя бы с помощью известных атак. А так, пустые слова и никому ненужный алгоритм. Есть проверенные гос. стандарты, проверенные многими криптоаналитиками, к чему огород городить.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2015, 19:17     Шифрование текста
Еще ссылки по теме:

Шифрование текста путем замены букв - C++
Чтобы зашифровать текст, записанный с помощью латинских букв, его можно переписать, заменив каждую букву непосредственно следующей за ней...

Шифрование текста с применением магического квадрата - C++
Задание: Магический квадрат. 11 8 5 10 2 13 16 3 14 1 4 15 7 12 9 6 Алгоритм:

Шифрование/дешифрование текста: шифр Цезаря - C++
8. Написать программу, которая позволяет зашифровывать и расшифровывать с помощью «шифра Цезаря» сообщение, написанное на русском языке....

Шифрование текста методом замены букв - C++
Ребята, помогите. Завтра сдавать отчет, а я похерил исходники. Осталась сама программа, а дизассемблеровать сложно и нет времени. А...

Шифрование текста путем замены символов - C++
Здравствуйте! Нужна Ваша помощь. Нужно провести шифрование предложения заменой символов в си++. Есть работа в Паскале, а как в си++сделать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Vasaabiii
0 / 0 / 0
Регистрация: 01.06.2015
Сообщений: 1
09.06.2015, 19:17     Шифрование текста #17
Написал программу для шифрования текста, не могу разобраться почему не работает. Нужна помощь.




C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
#include <string>
#include <cstdlib>
#include <cmath>
#include <windows.h>
#include <conio.h>
#include <stdio.h>
using namespace std;
main()
{(0, "");*input, *output; int reglen=17, buflen=1000, inpathlen=1001, outpathlen=1001;reg[reglen], regbuf, buffer[buflen], i, j, counter=0;inpath[inpathlen], outpath[outpathlen], 
c;("Ââåäèòå ГЇГіГІГј ГЄ ГґГ*éëó, êîòîðûé áóäåò Г§Г*øèôðîâГ*Г* (äî 1000 ñèìâîëîâ):\n");
for (i=0; i<inpathlen; i++)
{[i]=getche();(inpath[i]==13) {break;};
};[i]='\0';("\n Ââåäèòå ГЇГіГІГј õðГ*Г*ГҐГ*ГЁГї Г§Г*øèôðîâГ*Г*Г*îãî ГґГ*éëГ* (äî 1000 ñèìâîëîâ):\n");
for (i=0; i<outpathlen; i++)
{[i]=getche();(outpath[i]==13) {break;};
};[i]='\0';=fopen(inpath, "r");=fopen(outpath, "a+");(input==NULL)
{("\n ГЋГёГЁГЎГЄГ* ïðè îòêðûòèè ГґГ*éëГ*");
}if (output==NULL)
{("\n ГЋГёГЁГЎГЄГ* ïðè ñîçäГ*Г*ГЁГЁ ГґГ*éëГ*");
}
{("\n\n Ââåäèòå êëþ÷ ГЁГ§ 17 ñèìâîëîâ (Гў ГЄГ®Г*öå ââîäГ* Г*Г*æìèòå Enter):\n");
for (i=0; i<reglen; i++)
{=getche();[i]=static_cast<int>(c);(i==reglen-1) {break;};
};("\n Èä¸ò îáðГ*áîòêГ* ГґГ*éëГ*...");
for (i=0; i<buflen; i++)
{(!feof(input)) {fscanf(input, "%c", &buffer[i]); counter++;};
};(i=0; i<counter; i++)
{[i]=buffer[i]^reg[0];=reg[0]^reg[1]^reg[2]^reg[3]^reg[7]^reg[12]^reg[14];(j=0; j<reglen; j++)
{[j]=reg[j+1];
};[reglen]=regbuf;
};(i=0; i<counter-1; i++)
{(output, "%c", buffer[i]);
};
};("\n ÂûïîëГ*ГҐГ*Г®.");();();
};
Yandex
Объявления
09.06.2015, 19:17     Шифрование текста
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru