Ist diese Permutation sicher?
Vektor lassen${\bf d} \in \{ \pm 1 \}^n$sei die Nachricht, die wir senden möchten. In meinem System${\bf d}$wird mit ein multipliziert$n \times n$ Fourier-Matrix ${\bf F}$, folgendermaßen
$$ {\bf x} = {\bf F} {\bf d} $$
wo
$$ {\bf F} = \begin{pmatrix} 1 & 1 & 1 & \cdots & 1 \\ 1 & e^{jw} & e^{j2w}&\cdots & e^{j(n-1)w} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 1 & e^{j(n-1)w} &e^{j2(n-1)w}& \cdots & e^{j(n-1)(n-1)w} \end{pmatrix}$$Wir führen eine geheime Permutation durch$P$zum${\bf x}$vorausgesetzt, dass nur die rechtmäßigen Parteien die Permutation kennen und$P$ändert sich bei jeder Übertragung.
Multipliziert mit${\bf F}$helfen zu diffundieren?
Ist das eigentlich zerbrechlich?
Wenn ja, welche Art von Kryptoanalyse kann verwendet werden?
Antworten
Multiplizieren mit$F$kann nicht helfen. Es ist öffentlich bekannt und leicht umkehrbar. Daher kann ein Gegner es leicht rückgängig machen und ihm nur die permutierten Eingaben überlassen$\mathbf{Px}$.
Außerdem kann das Permutieren der Eingabe nicht IND-CPA-sicher sein. Dies liegt daran, dass Permutationsmatrizen Normen invariant lassen, was bedeutet:
$$\lVert \mathbf{Px}\rVert_p = \lVert \mathbf{x}\rVert_p$$Für alle$p$-norm (einschließlich der "$\ell_0$-norm", was das Hamming-Gewicht bedeutet). Dies bedeutet, dass die Frequenzanalyse verwendet werden kann, um die Verschlüsselung anzugreifen, indem lediglich die Eingabe permutiert wird. Im Allgemeinen sind diese Chiffren als Transpositions-Chiffren bekannt .
Das ist wie gesagt problematisch. Sie müssen eine Wahrscheinlichkeitsverteilung für diese komplexe Matrix angeben, aber das komplexe Feld ist unendlich. Dies impliziert dann, dass Sie auch einige Erkennungs-/Quantisierungsmechanismen sorgfältig definieren müssen.
Warum also komplexe Zahlen?