Гомоморфное шифрование

Антон Болдаков 2
Мессенджеры с гомоморфным шифрованием смогут передавать вашу личную переписку третьим лицам без фактической расшифровки текстов ваших сообщений, а так-же вставлять в ваши личные сообщения рекламу, для своих целей.

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

Напоминаем - западные соц-сети работает над внедрением этого типа шифрования, вместо используемого в ВатЦап "сквозного".

Итогом этой работы будет возможность просматривать и анализировать вашу личную переписку, без её дешифровки, а так же показывать вам в ваших личных чатах (даже приватных!) рекламу, основанную на вашей переписке с друзьями.

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

Тут совершенно нелишним будет напомнить о знаменитом скандале, когда американские журналисты выяснили, что американские соцсети передают ВСЮ личную информацию пользователей силовым спецслужбам США - причём представители ВатЦап ОФИЦИАЛЬНО подтвердили - это правда.

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

Гомоморфное шифрование исправляет эту "несерьёзность" - спецслужбы смогут читать ваши переписки не расшифровывая их.

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

Но другое дело - гомоморфноре шифрование. С ним я могу извлечь код от ваших денег не расшифровывая само ваше зашифрованное число.

Выглядит это примерно так: выберите себе произвольный вектор v (он будет вашим секретным ключом). Возможно найти такую матрицу A, что будет верно Av ~= xv, т.е. произведение A на v даст примерно вектор v умноженный на число x (для тех кто помнит немножко алгебру, v будет «примерным» собственным вектором, а x «примерным» собственным числом матрицы A). Если вы захотите зашифровать новое число y, то опять же можно будет найти матрицу B, такую что Bv ~= yv. Таким образом вы можете, имея только один секретный ключ v, зашифровать сколько угодно чисел, где шифром каждого числа будет матрица. Чтобы расшифровать число, мы умножим матрицу на секретный вектор v.

Можно доказать, предполагая сложность одной архаической задачи про поиск короткого вектора в решетке, что также сложно, имея матрицы A и B, со значимой вероятностью (отличимой от случайного угадывания) сказать какие числа x и y они шифруют (не зная, разумеется, секретного вектора v).

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

(AB)v = A (Bv) ~= A xv = x (Av) ~= (xy)v, она дает произведение x и y!

А расшифровка суммы A и B даст

(A + B)v = Av + Bv ~= xv + yv ~= (x + y)v, сумму x и y!

Иными словами - я выудил из зашифрованных гомоморфным шифрованием ваших личных данных - код от ваших денежек, и при этом - не расшифровывая ваших зашифрованных данных.

Согласитесь - это очень удобно, если я захочу присвоить себе ваши личные и чувствительные данные не читая их.