В чем разница между кодированием и шифрованием?
В чем разница между кодированием и шифрованием?
Ответы:
Кодирование преобразует данные в другой формат с использованием общедоступной схемы, так что ее можно легко изменить.
Шифрование преобразует данные в другой формат таким образом, что только определенные лица могут отменить преобразование.
Для резюме -
Кодирование предназначено для обеспечения удобства использования данных и использует общедоступные схемы.
Шифрование предназначено для сохранения конфиденциальности данных, и, следовательно, возможность отменить преобразование (ключи) ограничены определенными людьми.
Подробнее в ИСТОЧНИКЕ
Кодирование - это процесс преобразования данных таким образом, чтобы их можно было безопасно передавать по каналу связи или безопасно хранить на носителе данных. Например, компьютерное оборудование не манипулирует текстом, оно просто манипулирует байтами, поэтому кодировка текста - это описание того, как текст должен быть преобразован в байты. Точно так же HTTP не позволяет безопасно передавать все символы, поэтому может потребоваться кодирование данных с использованием base64 (используются только буквы, цифры и два безопасных символа).
При кодировании или декодировании упор делается на то, чтобы у всех был один и тот же алгоритм, и этот алгоритм обычно хорошо документирован, широко распространен и довольно легко реализуется. Со временем любой сможет декодировать закодированные данные .
Шифрование, с другой стороны, применяет преобразование к фрагменту данных, которое можно отменить только при наличии определенных (и секретных) знаний о том, как их расшифровать. Акцент делается на том, чтобы кому-либо, кроме предполагаемого получателя, было трудно прочитать исходные данные. Алгоритм кодирования, который держится в секрете, является формой шифрования, но довольно уязвим (требуются навыки и время, чтобы разработать любой вид шифрования, и по определению вы не можете попросить кого-то другого создать такой алгоритм кодирования для вас - иначе вы бы придется их убить). Вместо этого наиболее часто используемый метод шифрования использует секретные ключи: алгоритм хорошо известен, но процесс шифрования и дешифрования требует наличия одного и того же ключа для обеих операций, а затем ключ хранится в секрете. Расшифровка зашифрованных данных возможна только с помощью соответствующего ключа .
Кодировка:
Цель: цель кодирования - преобразовать данные, чтобы их можно было правильно (и безопасно) использовать в системе другого типа.
Используется для: Поддержания удобства использования данных, т. Е. Для обеспечения их правильного использования.
Механизм извлечения данных: нет ключа, и его можно легко изменить, если мы знаем, какой алгоритм использовался при кодировании.
Используемые алгоритмы: ASCII, Unicode, кодирование URL, Base64.
Пример: двоичные данные отправляются по электронной почте или просматриваются специальные символы на веб-странице.
Шифрование:
Цель: цель шифрования - преобразовать данные, чтобы сохранить их в секрете от других.
Используется для: Поддержания конфиденциальности данных, т. Е. Для гарантии того, что данные не могут быть использованы кем-либо, кроме предполагаемого получателя (ей).
Механизм получения данных: исходные данные можно получить, если мы знаем используемый ключ и алгоритм шифрования.
Используемые алгоритмы: AES, Blowfish, RSA.
Пример: отправка кому-либо секретного письма, которое только он должен иметь возможность читать, или безопасная отправка пароля через Интернет.
Ссылочный URL: http://danielmiessler.com/study/encoding_vs_encryption/
Кодирование - это процесс помещения последовательности символов в специальный формат для передачи или хранения.
Шифрование - это процесс преобразования данных в секретный код. Шифрование - самый эффективный способ обеспечить безопасность данных. Чтобы прочитать зашифрованный файл, у вас должен быть доступ к секретному ключу или паролю, который позволяет вам его расшифровать. Незашифрованные данные называются обычным текстом; зашифрованные данные называются зашифрованным текстом
Считайте кодирование способом хранения или передачи данных между разными системами. Например, если вы хотите сохранить текст на жестком диске, вам придется найти способ преобразовать ваши символы в биты. В качестве альтернативы, если все, что у вас есть, - это вспышка, вы можете закодировать свой текст с помощью Морзе. Результат всегда «читабелен», если вы знаете, как он хранится.
Шифрование означает, что вы хотите сделать свои данные нечитаемыми, зашифровав их с помощью алгоритма. Например, Цезарь делал это, заменяя каждую букву другой. Результат здесь нечитаем, если вы не знаете секретный «ключ», с помощью которого он был зашифрован.
Я бы сказал, что обе операции преобразуют информацию из одной формы в другую, разница в том, что:
Итак, если он включает (симметричные или асимметричные) ключи (также известные как «секрет»), это шифрование, в противном случае - кодирование.
Кодирование -》 пример данных - 16,
тогда кодировка - 10000 означает, что это двоичный формат или ASCII или UNCODED и т. Д. Которые могут быть легко прочитаны любой системой, чтобы понять его реальный смысл
Шифрование -》 пример данных - 16, Тогда encryprion - 3t57 или может быть что угодно, в зависимости от того, какой алгоритм используется для шифрования, который может быть легко прочитан любой системой, НО только тот, кто может понять его реальное значение, у кого есть его ключ дешифрования
Кодирование предназначено для поддержания удобства использования данных и может быть отменено с помощью того же алгоритма, который кодировал контент, т.е. ключ не используется.
Шифрование предназначено для сохранения конфиденциальности данных и требует использования ключа (хранимого в секрете) для возврата к открытому тексту.
Также есть два основных термина, которые вносят путаницу в мир хеширования и запутывания безопасности.
Хеширование предназначено для проверки целостности содержимого путем обнаружения всех его модификаций посредством очевидных изменений в выходных данных хеширования.
Обфускация используется для того, чтобы люди не понимали смысла чего-либо, и часто используется с компьютерным кодом, чтобы помочь предотвратить успешный обратный инжиниринг и / или кражу функциональности продукта.
Подробнее в статье @ Danielmiessler
Шифрование преобразует данные в нечитаемый формат (возможно, содержащий специальные нечитаемые символы).
Кодирование помогает преобразовать эти данные в читаемый формат (символы), чтобы их можно было сохранить для будущего использования, то есть, возможно, во время дешифрования.