Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 03.12.2014
Сообщений: 66
1

Как реализовать свое простое шифрование

13.03.2016, 11:17. Показов 1672. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет, пожалуйста подскажите как реализовать свое простое шифрование текста.
1. Допустим в переменной есть текст
PHP
1
$test = "Hello World!";
2. Нужно его зашифровать, допустим функция шифрования - буква "H"="R", "e"="q", "l"="m", "o"="t", " "="*", "W"="A", "r"="v", "d"="j", "!"="5", ну вы поняли, весь алфавит (каждая буква) изменяется на другую.

3. Результата должен быть
PHP
1
$result = "Rqmmt*Atvmj5"; (расшифровка как Hello World!)
4. Расшифровка такая-же, только обратная расстановка - буква "R"="H", "q"="e", "m"="l", "t"="o", "*"=" ", "A"="W", "v"="r", "j"="d", "5"="!".
Результата должен быть
PHP
1
$result = "Hello World!"; (шифровка Rqmmt*Atvmj5)
* Жирным выделены буквы из слова Hello World!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.03.2016, 11:17
Ответы с готовыми решениями:

Простое обратное шифрование
Здравствуйте. Может кто-то знает простые конструкции шифрования/хэширования, которые имеют обратный...

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

Свое простое popup на js
Приветствую! Помогите начать. Есть crm-система, espocrm. Есть возможность внедрить в нее...

Простое шифрование
Нужно написать программу, которая шифрует сообщение и расшифровывает его, даны примеры: крот ->...

16
2170 / 1653 / 840
Регистрация: 10.01.2015
Сообщений: 5,192
13.03.2016, 12:03 2
Кодируем
PHP
1
2
3
4
5
6
7
8
9
10
$str = 'Hello, world!';
function myEncode($str){
    $arr = str_split($str);
    $arr1 = array('h','g','R','t','s','b','r','g','j','k','1','2','3');
    $arr_new = array_replace($arr, $arr1);
    $arr_new = implode("", $arr_new);
    return $arr_new;
}
$y = myEncode($str);
echo $y;
Над декодингом еще работаю)))

Добавлено через 5 минут
Получите))
http://sandbox.onlinephpfuncti... eb2b0fa438

Добавлено через 8 минут
Немного дописал.
http://sandbox.onlinephpfuncti... 0d65deaa29
Думаю, поймете, что именно я сделал)))
1
Фрилансер
Эксперт JSЭксперт HTML/CSSЭксперт PHP
1846 / 1342 / 599
Регистрация: 12.01.2011
Сообщений: 5,432
13.03.2016, 12:05 3
PHP
1
2
3
4
5
6
7
8
9
10
$str = 'hgRtsbrgjk123';
function myEncode($str){
    $arr = str_split($str);
    $arr1 = array('H','E','L','L','O',',',' ','W','O','R','L','D','!');
    $arr_new = array_replace($arr, $arr1);
    $arr_new = implode("", $arr_new);
    return $arr_new;
}
$y = myEncode($str);
echo $y;
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
13.03.2016, 12:06 4
Azdeman, а если там будет не Hello world. И если количество символов другое. Это костыль какой то а не шифрование)

Добавлено через 17 секунд
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
 
function DEncode($input)
{
    $output = "";
    $n = strlen($input);
    while ($n--)
        $output .= chr(~ord($input[$n]));
    return $output;
}
 
$str = "Hello world!";
 
echo $str."<br>\r\n";
 
$str = DEncode($str);
 
echo $str."<br>\r\n";
 
$str = DEncode($str);
 
echo $str."<br>\r\n";
0
Фрилансер
Эксперт JSЭксперт HTML/CSSЭксперт PHP
1846 / 1342 / 599
Регистрация: 12.01.2011
Сообщений: 5,432
13.03.2016, 12:09 5
Цитата Сообщение от pav1uxa Посмотреть сообщение
а если там будет не Hello world.
Задание же именно по Hello word было ..
Ну а так да , согласен что костыль.
0
Заблокирован
13.03.2016, 12:15 6
ERTGER, есть функция для посимвольной замены.

Добавлено через 32 секунды
strtr
0
43 / 44 / 35
Регистрация: 13.01.2016
Сообщений: 155
13.03.2016, 12:20 7
Azdeman, я читал что для шифрования используют поразрядные операторы. А насколько такой способ безопасен (с ключом)? И какой способ шифрования лучше?
Может лучше таким способом делать, чем придумывать вышеописанное?
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
13.03.2016, 12:24 8
вон у меня поразрядовые операторы))
0
2170 / 1653 / 840
Регистрация: 10.01.2015
Сообщений: 5,192
13.03.2016, 12:27 9
Harma, тогда уж лучше делать по принципу генерации пароля.
Считаем длину входа, ну и т д. Думаю, разжевывать не надо.
Цитата Сообщение от pav1uxa Посмотреть сообщение
вон у меня поразрядовые операторы))
Да. Красиво. Только с кодировкой немного беда)) Вопросики на выходе. Но это не великая проблема.
0
0 / 0 / 0
Регистрация: 03.12.2014
Сообщений: 66
13.03.2016, 12:45  [ТС] 10
Там будет много разных слов, цифр и знаков, Hello World это для пирмера)

Добавлено через 11 минут
Пифагор, Это не то
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
13.03.2016, 13:07 11
Цитата Сообщение от Пифагор Посмотреть сообщение
Да. Красиво. Только с кодировкой немного беда)) Вопросики на выходе. Но это не великая проблема.
Так это ж шифрование, оно для безопасной передачи данных, а не для красоты

Не по теме:

ну это конечно шуточное такое. но как пример

0
2170 / 1653 / 840
Регистрация: 10.01.2015
Сообщений: 5,192
13.03.2016, 13:10 12
ERTGER, что не то?
Вы строку Hello World! дали. Вам сделали.

Универсальный код
http://sandbox.onlinephpfuncti... 9ea53cd7c1

Добавлено через 1 минуту
pav1uxa, я говорю, что скрипт красивый получился))
0
Hello Kitty
690 / 562 / 402
Регистрация: 12.02.2016
Сообщений: 1,436
Записей в блоге: 1
13.03.2016, 13:19 13
Цитата Сообщение от ERTGER Посмотреть сообщение
Всем привет, пожалуйста подскажите как реализовать свое простое шифрование текста.
для этого есть уже готовые функции . например

Добавлено через 1 минуту
http://php.net/mcrypt или http://php.net/openssl

Добавлено через 2 минуты
Цитата Сообщение от Пифагор Посмотреть сообщение
Универсальный код
как он работает?
0
2170 / 1653 / 840
Регистрация: 10.01.2015
Сообщений: 5,192
13.03.2016, 13:23 14
Цитата Сообщение от WhiteMind Посмотреть сообщение
как он работает?
Не понял вопроса? Принцип работы интересует? По мне, так все предельно понятно..
Другое дело, что он не компактный.
0
Hello Kitty
690 / 562 / 402
Регистрация: 12.02.2016
Сообщений: 1,436
Записей в блоге: 1
13.03.2016, 13:24 15
Цитата Сообщение от Пифагор Посмотреть сообщение
Не понял вопроса? Принцип работы интересует? По мне, так все предельно понятно..
Другое дело, что он не компактный.
мне не понятно
PHP
1
2
$y = myEncode($str);
echo $y."\n";
и
PHP
1
echo myDecode($y, $str);
0
2170 / 1653 / 840
Регистрация: 10.01.2015
Сообщений: 5,192
13.03.2016, 13:29 16
PHP
1
2
echo myDecode($y, $str);
//$y - закодированная строка, $str - ключ
Добавлено через 1 минуту

Не по теме:

WhiteMind, если Вы сравниваете свои и мои знания, то не теряйте время, а если проверяете мои - тем более не теряйте...

0
Hello Kitty
690 / 562 / 402
Регистрация: 12.02.2016
Сообщений: 1,436
Записей в блоге: 1
13.03.2016, 13:32 17
Цитата Сообщение от Пифагор Посмотреть сообщение
echo myDecode($y, $str);
//$y - закодированная строка, $str - ключ
а тут тогда что
PHP
1
2
$y = myEncode($str);
echo $y."\n";
Добавлено через 1 минуту
Цитата Сообщение от Пифагор Посмотреть сообщение
WhiteMind, если Вы сравниваете свои и мои знания, то не теряйте время, а если проверяете мои - тем более не теряйте...
я думал что $str это данные а не ключ .
вот и казалось странным передавать в декоде шифрованные данные + оригинальные данные
0
13.03.2016, 13:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.03.2016, 13:32
Помогаю со студенческими работами здесь

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

Как реализовать шифрование решёткой?
Создаю ячейки 6х10. Пользователь кликом заполняет 15 символов в разные ячейки, далее необходимо...

Как реализовать шифрование данных в БД
привет друзья прошу помогите тока не издевайтесь для меня серезная проблема. я написал систему база...

Как реализовать шифрование Гронсфельда
Шифр Гронсфельда является модификацией шифра Цезаря. Метод заключается в том, что каждый символ...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru