Конкурсы ко Дню народного единства — 4 ноября

автор: Ведерников Иван Кимович

Преподаватель информатики ГПОУ «ЧТОТиБ»

Кодирование информации

Введение.

В наш век интернет-технологий, когда мы доверяем все свои данные интернет-сервисам, нужно знать и понимать, как они их хранят и обрабатывают.

Но зачем это вообще нужно знать? Чтобы попросту не попасть в ситуацию, когда ваши личные данные, пароли от аккаунтов или банковских карт окажутся в руках мошенников. Как говорится: «Доверяй, но проверяй».

Важные аспекты в хранении данных, будь то на внешних серверах или домашнем компьютере, – это прежде всего кодирования и шифрование. Но чем они отличаются друг от друга? Давайте разбираться!

Ни для кого не секрет, что компьютер может хранить информацию, но он не может хранить её в привычной для нас форме: мы не сможем просто так написать на флэшки реферат, не можем нарисовать на жестком диске картинку так, чтобы её мог распознать компьютер. Для этого информацию нужно преобразовать в язык понятный компьютеру, и именно этот процесс называется кодированием. Когда мы нажимаем на кнопку на клавиатуре мы передаем код символа, который может распознать компьютер, а не сам символ.

Кодирование информации.

Кодирование информации (англ. information coding) — отображение данных на кодовые слова.   

Обычно в процессе кодирования информация преобразуется из формы, удобной для непосредственного использования, в форму, удобную для передачи, хранения или автоматической обработки. В более узком смысле кодированием информации называют представление информации в виде кода. Средством кодирования служит таблица соответствия знаковых систем, которая устанавливает взаимно однозначное соответствие между знаками или группами знаков двух различных знаковых систем.

Виды кодов.

  • Код фиксированной длины (англ. fixed-length code) — кодирование каждого символа производится с помощью строк одинаковой длины. Также он называется равномерным или блоковым кодом.
  • Код переменной длины (англ. variable-length code) — кодирование производится с помощью строк переменной длины. Также называется неравномерным кодом.
    • Префиксный код — код, в котором, никакое кодовое слово не является началом другого. Аналогично, можно определить постфиксный код — это код, в котором никакое кодовое слово не является концом другого.

Все вышеперечисленные коды являются однозначно декодируемыми — для такого кода любое слово, составленное из кодовых слов, можно декодировать только единственным способом.

История кодирования.

Самым первым способом символьной шифровки считается метод Гая Юлия Цезаря, который жил в первом веке до нашей эры. Он основывается на методе замены букв сообщения, подлежащего шифрованию, на другие, отстоящие в алфавите от шифруемой буквы на определённое число элементов. При этом алфавит может считываться по замкнутому кругу. Например, если взять слово «байт», то при сдвиге на две буквы вперёд получится код «гвлф». Процесс декодирования выполняется в обратном порядке.

 В 1791 году учёный Клод Шапп предложил использовать оптический семафор-телеграф. В нём разные положения планки семафора кодировали буквы алфавита. Информация взята с сайта биржи.

Шифрование.

Шифрование — обратимое преобразование информации в целях сокрытия от неавторизованных лиц, с предоставлением, в это же время, авторизованным пользователям доступа к ней. Главным образом, шифрование служит задачей соблюдения конфиденциальности передаваемой информации. Важной особенностью любого алгоритма шифрования является использование ключа, который утверждает выбор конкретного преобразования из совокупности возможных для данного алгоритма.

Методы шифрования.

  • Симметричное шифрование использует один и тот же ключ и для зашифровывания, и для расшифровывания.
  • Асимметричное шифрование использует два разных ключа: один для зашифровывания (который также называется открытым), другой для расшифровывания (называется закрытым).

Эти методы решают определённые задачи и обладают как достоинствами, так и недостатками. Конкретный выбор применяемого метода зависит от целей, с которыми информация подвергается шифрованию.

История шифрования.

Шифрование берет своё начало ещё из древних времен. Примерно 1300 лет до нашей эры был создан один из первых методов шифрования – Атбаш. Принцип шифрования заключается в простой подставке символов по формуле:, где:

  • n – количество символов в алфавите
  • i – порядковый номер символа.

Шифр получил своё название в честь первой, последней, второй и предпоследней буквы Еврейского алфавита — «алеф», «тав», «бет», «шин». Такой шифр имеет низку криптографическую стойкость, потому как алгоритм шифрования довольно прост.

С тех самых пор шифрование активно развивалось вместе с развитием нашей цивилизации

Хоть шифры и менялись, но их принцип нет – для расшифровки сообщения требуется ключ. В случае с Абашем ключом может считать последовательность порядковых номеров исходных символов, но этот ключ ещё надо как-то передать. Методы шифрования, которые используются сейчас, научились-таки передавать ключи по открытым и незащищённым каналам связи. Казалось бы, передача ключей шифрования по обычным каналам — это добровольное жертвование своими данными, но не всё так просто. Разберём это на примере популярного алгоритма шифрования «RSA», разработанного в 1977 году.

Первым делом выбирается два случайный простых числа, которые перемножаются друг на друга – именно это и есть открытый ключ.

К слову: Простые числа — это те числа, которые могут делиться без остатка либо на 1, либо на себя.

Длина таких чисел может быть абсолютно любая. К примеру, возьмем два простых числа 223 и 13. Их произведение 2899 – будет являться открытым ключом, который мы и будем передавать по открытому каналу связи. Далее нам необходимо вычислить функцию «Эйлера» для произведения этих чисел.

Функция Эйлера – количество натуральных чисел, меньших чем само число и, которые будут являть взаимно простыми числами с самим числом.

Возможно, звучит непонятно, но давайте это разберем на небольшом примере:

 φ (26) [фи от двадцати шести] = какому-то числу чисел, которое всегда будет меньше 26, а сами числа должны иметь только один общий делитель единицу с 26.

Определения и различия.

Кодирование — это процесс преобразования данных таким образом, чтобы они могли передаваться без опасности по каналу связи или храниться без опасности на носителе. Например, компьютерное оборудование не манипулирует текстом, оно просто манипулирует байтами, поэтому кодировка текста — это описание того, как текст должен быть преобразован в байты. Аналогично, HTTP не позволяет безопасно передавать все символы, поэтому может возникнуть необходимость кодировать данные с помощью base64 (используются только буквы, цифры и два безопасных символа).

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

Шифрование, с другой стороны, применяет преобразование к части данных, которые могут быть обращены только с определенным (и секретным) знанием того, как их расшифровать. Акцент делается на том, чтобы затруднить кому-либо, кроме предполагаемого получателя, чтение исходных данных. Алгоритм кодирования, который держится в секрете, — это форма шифрования, но довольно уязвимая (требуется умение и время, чтобы разработать любой вид шифрования, и по определению вы не можете позволить кому — то другому создать такой алгоритм кодирования для вас-или вам придется убить их). Вместо этого наиболее часто используемый метод шифрования использует секретные ключи: алгоритм хорошо известен, но процесс шифрования и дешифрования требует наличия одного и того же ключа для обеих операций, и тогда ключ хранится в секрете. Расшифровка зашифрованных данных возможна только с помощью соответствующего ключа.

Цели кодирования и шифрования информации.

Основными целями являются: 

  1. Увеличение скорости передачи данных, что означает большую эффективность коммуникации. 
  1. Преобразование информационных данных в самую удобную для электронных вычислительных машин форму. 
  2. Сокращение избыточной информации ведёт к снижению требований к скорости передачи. 
  3. Уменьшение объёмов памяти для хранения информации. Существенное улучшение защиты от помех при трансляции информации.
  4. Существенное улучшение защиты от помех при трансляции информации. 

Заключение.

Источники.

  1.  Wikipedia.com
  2.  Habr.com
  3.  Coderoad.ru
  4.  Spravochnik.ru
Кодирование информации

Следите за новостями в соцсетях

Вконтакте MAX Телеграм Одноклассники

А также подписывайтесь на канал Научно-образовательный вестник «Pedproject.Moscow» в MAX