(Полагаю, нет, но почему это так? Есть ли способ сделать это возможным?)
Из заданного равностороннего треугольника T1 (с тремя его вершинами A,B,C, лежащими в конечном поле $\mathbb F_N^D $) другой равносторонний треугольник T2 может быть построен путем зеркального отражения одной из 3 вершин на ребре между двумя другими вершинами. Это будет повторяться несколько раз.
Имея всего два случайных треугольника T1 и T2 (и $\mathbb F_N^D $) может ли противник вычислить кратчайший путь из T1 в T2?
(Предположим, что существует способ и по модулю $N$ и размеры $Д$ выбираются достаточно высоко, чтобы проверка всего треугольника заняла слишком много времени)
Или он может сделать это (намного) быстрее, чем просто применять его шаг за шагом?
(как например на EC генератор $г$ не нужно применять $м$ раз, если мы хотим вычислить $г^м$. Я ищу более чем одномерную технику, которую нельзя свести к проблеме с одним измерением и которую необходимо вычислять шаг за шагом. «Длина» «кратчайшего пути» будет количеством необходимых (треугольных) вычислений)
Чтобы отразить точку A на ребре BC, мы ищем точку $S$ и переменная $г$ с
$$S = B + г (C-B)$$
Позволять $v$ направление ребра BC:
$$v = \vec{v} = C-B$$
Этот $S$ позволит нам вычислить направление от $А$ к $BC$ и с этим вычислить зеркальную точку $A_M$
$$A_M = A + 2(SA)$$
Сделать это $S-A$ должны быть ортогональны $v$. Таким образом, скалярное произведение должно быть равно 0:
$$(SA)' v = 0$$
$$(B+rv-A)' v = 0$$
$$(B-A)' v = -rv'v$$
$$r = \frac{(BA)'v}{-(v'v)}$$
(так же, как и в евклидовом пространстве, за исключением конечного поля $г$ нужно вычислить с обратным $(-(v'v))^{-1}$ над $N$)
Редактировать: fgrieu указал, что существует гораздо более простой способ вычисления отражения равностороннего треугольника:
$$A_M = A' = B+C-A$$
(окончание редактирования)
Я сделал несколько тестов для 2 измерений и простых чисел $N$.
Конечное поле $\mathbb F_N^2 $ может построить равносторонний треугольник только в том случае, если $N$ имеет корень для $3$.
Равносторонний треугольник с заданной длиной ребра может произвести $2 Н^2$ другие треугольники (каждый имеет одинаковую длину ребра).
Каждая длина ребра имеет два таких множества. В итоге $2(N-1) (2N^2)$ которые не пересекаются друг с другом.
(Я только что вычислил квадрат длины ребра между двумя точками, как в евклидовом пространстве)
В евклидовом пространстве, отражающем треугольник вокруг точки ($С$) будет выглядеть так:
Фрист зеркало $А$ в $CB$. Затем зеркало $В$ в $CA_M$ и так далее. Если это равносторонний треугольник, он снова совпадет после того, как сделает это 6 раз.
В конечном поле $\mathbb F_{11}^2 $ это может выглядеть так:
Это также совпадет после того, как вы сделаете это 6 раз (около 1 балла).
Делая это только в одном направлении, оно совпадет после $2N$
Существует ли подобный криптографический алгоритм?
Почему это не безопасно? Либо это? Помогут ли дополнительные измерения?
Есть идеи, как сделать его более безопасным?