VikDemak

Дарю алгоритм отображения информации

В этой теме 3 сообщения

Алфавит - перечень символов, встречающихся в текстах. Каждый символ в алфавите встречается только один раз. Алфавит содержит не только прописные и строчные буквы, но символы знаков препинания, пробел, символы перевода каретки, символы новой строки и т.п. Каждый символ в алфавите имеет адрес, который изменяется от 1 - первый слева символ в алфавите, до N - последний слева символ в алфавите.

Рассмотрим пример.

Пусть имеем два слова: Путин, Медведев. В этих словах имеются следующие символы: П, у, т, и, н, М, е, д, в. Этот набор символов называется собственным алфавитом слов Путин и Медведев.

Задача: Найти алгоритм отображения слова Путин через слово Медведев и алгоритм восстановления слова Путин из слова Медведев.

Решение: Возьмем алфавит, состоящий из всех символов русского и английского языка, знаков препинания, пробела. Всего 190 символов, т.е. N = 190. Порядок символов в алфавите - случайный.

Запишем собственный алфавит в следующем виде:

17=П, 100=у, 34=т, 35=и, 144=н, 190=М, 88=е, 66=д, 1=в

П, у, т, и, н, М, е, д, в

В первой строке указаны адреса символов собственного алфавита в общем алфавите. Во второй строке указан собственный алфавит.

Для преобразования буквы "П" в букву "М" сравним адреса букв "П" и "М". Это числа 17 и 190. Для отображения буквы "П" через букву "М" необходимо к числу 17 прибавить число 190-17=173 и по адресу 190 считать букву "М". Число 173 запишем в вектор на первое место, так как это число отображает первые буквы.

Для отображения буквы "у" через букву "е" сравним адреса букв "у" и "е". Это числа 100 и 88. Для отображения буквы "у" через букву "е" необходимо к числу 100 прибавить неизвестное число x, такое чтобы получилось число 88. Решаем уравнение 100 + x = 88, отсюда x = -12. Наша задача получить все положительные числа для отображения. Поскольку, у нас получилось -12 < 1, то прибавим к нему количество чисел в алфавите -12 + 190 = 178. Таким образом, второе число отображающее букву "у" в букву "е" будет равно 178. Это число мы запишем на второе место в вектор 173, 178. Адрес буквы "е" вычисляется следующим образом: 100 + 178 - 190 = 88.

Для отображения буквы "т" через букву "д" сравним адреса букв "т" и "д". Это числа 34 и 66. Для отображения буквы "т" через букву "д" необходимо к числу 34 прибавить неизвестное число x, такое чтобы получилось число 66. Решаем уравнение 34 + x = 66, отсюда x = 32. Таким образом, третье число отображающее букву "т" в букву "д" будет равно 32. Это число мы запишем на третье место в вектор 173, 178, 32. Адрес буквы "д" вычисляется следующим образом: 34+32= 66.

Для отображения буквы "и" через букву "в" сравним адреса букв "и" и "в". Это числа 35 и 1. Для отображения буквы "и" через букву "в" необходимо к числу 35 прибавить неизвестное число x, такое чтобы получилось число 1. Решаем уравнение 35 + x = 1, отсюда x = -34. Наша задача получить все положительные числа для отображения. Поскольку, у нас получилось -34 < 1, то прибавим к нему количество чисел в алфавите -34 + 190 = 156. Таким образом, четвертое число отображающее букву "и" в букву "в" будет равно 156. Это число мы запишем на четвертое место в вектор 173, 178, 32, 156. Адрес буквы "в" вычисляется следующим образом: 35 + 156 - 190 = 1.

Для отображения буквы "н" через букву "е" сравним адреса букв "н" и "е". Это числа 144 и 88. Для отображения буквы "н" через букву "е" необходимо к числу 144 прибавить неизвестное число x, такое чтобы получилось число 88. Решаем уравнение 144 + x = 88, отсюда x = -56. Наша задача получить все положительные числа для отображения. Поскольку, у нас получилось -56 < 1, то прибавим к нему количество чисел в алфавите -56 + 190 = 134. Таким образом, пятое число отображающее букву "н" в букву "е" будет равно 134. Это число мы запишем на пятое место в вектор 173, 178, 32, 156, 134. Адрес буквы "е" вычисляется следующим образом: 144 + 134 - 190 = 88.

Предположим, что нам известно слово Медведев, алфавит и вектор чисел 173, 178, 32, 156, 134. Посмотрим, что получится при восстановлении.

Находим адрес буквы "М" (первой буквы в слове Медведев) в алфавите. Это число 190. Поскольку при отображении мы прибавляли неизвестное число, то при восстановлении необходимо вычитать числа вектора. Вычтем из числа 190 первое число вектора 190 - 173 = 17. Поскольку число положительное, то по адресу 17 в алфавите находим букву "П". Первая буква восстановлена.

Находим адрес буквы "е" (второй буквы в слове Медведев) в алфавите. Это число 88. Поскольку при отображении мы прибавляли неизвестное число, то при восстановлении необходимо вычитать числа вектора. Вычтем из числа 88 второе число вектора 88 - 178 = -90. Поскольку число меньше 1, то необходимо прибавить число N=190. Получим -90 + 190 = 100. По адресу 100 в алфавите находим букву "у". Вторая буква восстановлена. Всего восстановлено "Пу".

Находим адрес буквы "д" (третьей буквы в слове Медведев) в алфавите. Это число 66. Поскольку при отображении мы прибавляли неизвестное число, то при восстановлении необходимо вычитать числа вектора. Вычтем из числа 66 третье число вектора 66 - 32 = 34. По адресу 34 в алфавите находим букву "т". Третья буква восстановлена. Всего восстановлено "Пут".

Находим адрес буквы "в" (четвертой буквы в слове Медведев) в алфавите. Это число 1. Поскольку при отображении мы прибавляли неизвестное число, то при восстановлении необходимо вычитать числа вектора. Вычтем из числа 1 четвертое число вектора 1 - 156 = -155. Поскольку число меньше 1, то необходимо прибавить число N=190. Получим -155 + 190 = 35. По адресу 35 в алфавите находим букву "и". Четвертая буква восстановлена. Всего восстановлено "Пути".

Находим адрес буквы "е" (пятой буквы в слове Медведев) в алфавите. Это число 88. Поскольку при отображении мы прибавляли неизвестное число, то при восстановлении необходимо вычитать числа вектора. Вычтем из числа 88 пятое число вектора 88 - 134 = -46. Поскольку число меньше 1, то необходимо прибавить число N=190. Получим -46 + 190 = 144. По адресу 144 в алфавите находим букву "н". Пятая буква восстановлена. Всего восстановлено "Путин".

Числа в векторе использованы все, следовательно восстановление завершено. Количество чисел в векторе равно длине восстанавливаемой информации.

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

САМОЕ ВАЖНОЕ: адреса в алфавите должны начинаться с 1.

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

Можно использовать не один алфавит, а два и более.

Необходимым и достаточным условием для отображения произвольного текста через другой произвольный текст: Алфавит должен содержать собственный алфавит. Поскольку числа вектора зависят только от порядка следования символов в алфавите и не зависят от самих символов, то существует целый класс, равный факториалу от N, отображения одной и той же информации через другую одну и ту же информацию.

Этот алгоритм опубликован в 2009 г.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Алфавит - перечень символов, встречающихся в текстах. Каждый символ в алфавите встречается только один раз. Алфавит содержит не только прописные и строчные буквы, но символы знаков препинания, пробел, символы перевода каретки, символы новой строки и т.п. Каждый символ в алфавите имеет адрес, который изменяется от 1 - первый слева символ в алфавите, до N - последний слева символ в алфавите.

Рассмотрим пример.

Этот алгоритм опубликован в 2009 г.

Это нужно вот для чего:

Новый способ хранения персональных данных

В базе данных персональные данные должны сохраняться в следующем виде:

1) Вымышленные персональные данные, которые по внешнему виду не отличимы от действительных персональных данных. Например, реальная фамилия Петров может храниться в виде фамилии Медведевский или Obama или любой другой. Размер реальной фамилии и размер вымышленной фамилии между собой никак не связаны.

2) Набор целых чисел от 1 до 65535 в количестве, равному размеру реальных персональных данных. Например, для фамилии Петров - это 6 чисел, так как в фамилии Петров 6 букв, примерно таких: 111, 75, 71, 29, 100, 211.

Больше ничего в базе данных не должно сохраняться.

Для восстановления реальных данных из вымышленных необходимо в оперативной памяти компьютера хранить алфавит - перечень символов, используемых для отображения персональных данных. Максимум - это 65535 символов в кодировке Unicode. Порядок следования символов в алфавите имеет первостепенное значение. Набор чисел в приведенном выше примере для фамилии Петров - это связь между адресами букв реальной фамилии Петров в алфавите и адресами букв вымышленной фамилии Медведевский в алфавите. Алфавит отличается от шрифта тем, что символы в алфавите различаются только по коду и порядок следования символов произвольный. Начертания символов не имеет никакого значения для алфавита. В шрифте начертания символов имеет первостепенное значение и порядок следования символов единственный.

Адреса букв в алфавите и реальные буквы между собой никак не связаны.

Если хакеры украдут из базы данных вымышленную фамилию Медведевский или Obama и украдут набор чисел 111, 75, 71, 29, 100, 211, то восстановить реальную фамилию Петров не смогут, так как отсутствует алфавит. А украсть алфавит из оперативной памяти практически невозможно.

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Создайте учетную запись или войдите, чтобы комментировать

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти с помощью Facebook Войти Войти с помощью Twitter
Anti-Malware.ru Вконтакте   Anti-Malware.ru в Facebook   Anti-Malware.ru в Twitter   Anti-Malware.ru в LinkedIn   RSS
  • Сообщения

    • myrl48
      Создать и Оптимизировать сайт лучшей конверсии С чем половиной покупателей, допускающих к покупке продуктов в интернете либо еженедельно и ежемесячно, сайт электронной коммерции должен иметь огромное влияние на вашей нижней строке. Однако недостаточно создать магазин. Важно сделать все возможное, максимизировать конверсии и потенциал онлайн-продаж. Много идет в создание сайта электронной коммерции и получить максимальную отдачу от него. Прежде всего, убедиться он построен на оптимизированной платформе продаж с системой управления контентом, которая упрощает обновление и помогает быстро загружать сайт помимо технических деталей есть много способов, которыми убедиться конвертируете больше посещений сайта в продажи. Имейте красивый, отзывчивый дизайн Дизайн и макет сайта управляют пользовательским опытом, первое впечатление, которое потенциальные клиенты получают от бизнеса. Сайт - современный дизайн с четкими, высококачественными фотографиями, наилучшим образом продемонстрировать продукты и включить прожекторы продукта и призывы к действиям увеличения участия. Адаптивный дизайн больше не является опцией. Это абсолютная необходимость. Сайт должен адаптироваться просмотра на мобильных устройствах, планшетах и настольных компьютерах, обеспечивая плавный, связный опыт ваших посетителей на каждом этапе. Сделать сайт http://sozdat-sait.my1.ru/ продукты легко найти. Независимо от приходят пользователи в магазин просмотра и поиска определенного элемента, не расстраивайте их, заставляя работать на него. Добавление функции поиска поможет клиентам быстро найти именно то ищут, а организация ваших продуктов в логические, вложенные категории сделает просмотр легким. Продукт помещается в несколько категорий, и расширенные фильтры на странице добавлены, помочь вашим посетителям сузить поиск больше. Положите страницы детали продукта работы Максимально высокие качества, одинаковых размеров фото продукта, предлагая функциональность зум, позволить покупателям изучить продукты подробно. Добавьте параметры общего доступа, побудить посетителей распространять информацию о ваших продуктах на сайтах социальных сетей любят покупатели. Потратьте время, написать хорошие описания продуктов. Они четкими и лаконичными. Попробуйте включить маркированные точки, выделить ключевые особенности, не будучи многословным. Страницы сведений о продукте включать призыв к действию, например кнопку "Добавить в корзину", которую легко обнаружить, и ссылку на политику доставки и возврата. Оптимизировать сайт поисковых систем потратив время на поисковой оптимизации (SEO). Для начала, сделать некоторые исследования ключевых слов и планировать стратегию SEO вокруг ключевых слов. Создайте блог, публиковать полезные статьи, связанные с вашими продуктами, и делиться своими сообщениями в социальных сетях, управлять входящим трафиком. Вы узнать больше эффективной стратегии SEO, проверив наш предыдущий пост: Маркетинговая Стратегия онлайн: создайте бизнес, создайте бренд. Видео урок - http://sozdat-sait.my1.ru/blog/kak_povysit_konversii_i_juzabiliti_sajta/2017-11-09-1894
    • fafa
      Знаете в этом деле лучше отталкиваться от правила если есть средства, то лучше заплатить и все! Поэтому незачем что либо выдумывать или зря тратить свое время. Намного проще оплатить и чтобы конкретно сделали сайт под Ваши условия.
    • Ego Dekker
      ESET Cyber Security/ESET Cyber Security Pro были обновлены до версии 6.6.300.
    • Ego Dekker
      ESET NOD32 Antivirus для Linux был обновлён до версии 4.0.87.
    • vorobey
      А я не парюсь, сижу дома, играю и зарабатываю на этом сайте vulkanudachi777-club.com. И это все реально. Нужно только желание от вас.