От дробного к двоичному с SEAL

Могу ли я преобразовать зашифрованный текст с дробным кодированием в двоичный?

Допустим, я шифрую 5 с фракционным кодированием. Тогда я могу массив, состоящий из E(1), E(0), E(1)? (5 = 101)

1 ответ

Решение

Давайте попробуем разобраться с открытым текстом. Тогда мы можем попытаться решить это с зашифрованным текстом.

  1. Если под "двоичной кодированной единицей" вы подразумевали двоичную кодировку 5, тогда да. Дробное кодирование 5 и двоичное кодирование 5 имеют открытый текст x^2+1.

  2. Если под "массивом, состоящим из E(1), E(0), E(1)", вы подразумевали 3 шифротекста, которые соответственно расшифровываются до 1, 0 и 1, то нет.

Извлечение k-го бита (обозначаемого m_k) числа m из его дробного / целочисленного / двоичного кодирования M (x) = m_ {n-1}x ^ {n-1} +... + m_k x ^ k +... + m_0 эквивалентно нахождению функции F такой, что для заданного k и любого m F(M(x))=m_k в \ZZ_2[x]/(x^n+1). Такую функцию нетривиально найти. Даже если он существует, он может иметь форму многочлена 2^n степени, который слишком глубок для гомоморфной оценки.

  1. Если под "массивом, состоящим из E(1), E(0), E(1)", вы имели в виду 1 зашифрованный текст, который расшифровывается в вектор [1, 0, 1], то нет.

Сначала нужно решить сценарий 2, описанный выше, и успешно извлечь эти отдельные биты. Все остальное - это просто зашифрованный текст, который можно легко сделать с помощью rotate_rows в ПЕЧАТИ.

Другие вопросы по тегам