This key exchange is broken.
The first thing one should do to break this key exchange is to reduceFor this problem to a simpler problem and then break the simpler problem. Suppose that $\mathbf{y}$ is a column vector. Then to break this key exchange, it suffices to produce an efficient algorithm that can always produce the vectorlet $M_{A}M_{B}\mathbf{y}$ using just$\langle M_{0}\rangle$ denote the public information.
Observe thatalgebra generated by $M_{A}M_{B}\mathbf{y}=M_{A}P_{B}X_{B}^{-1}\mathbf{y}=S_{A}X_{B}^{-1}\mathbf{y}$$M_{0}$.
In particular, if $\mathbf{z}=X_{B}^{-1}\mathbf{y}$, then $M_{A}M_{B}\mathbf{y}=S_{A}\mathbf{z}$ andSet $\mathbf{X}_{B}\mathbf{z}=\mathbf{y}$$Z_{A}=X_{A}^{-1},Z_{B}=X_{B}^{-1}$. An adversary will be able to recover $M_{A}M_{B}\mathbf{y}$ if the adversary can compute a pair (which we will call a pseudo private key) that behaves likeThen $(M_{B},\mathbf{z})$$M_{A}=P_{A}Z_{A},M_{B}=P_{B}Z_{B}$.
Let $\langle M_{0}\rangle$ be the algebra generated by $M_{0}$ In particular, $S_{B}=P_{B}Z_{B}P_{A}$.
A pseudo private key is a pair $(M_{B}^{p},\mathbf{z}_{E})$ wherematrix $M_{B}^{p}\in\langle M_{0}\rangle$ and$Z_{B}^{p}$ such that $M_{B}^{p}\mathbf{y}=P_{B}\mathbf{z}_{E}$$P_{B}Z_{B}^{p}\in\langle M_{0}\rangle$ and where $S_{B}=M_{B}^{p}P_{A}.$$S_{B}=P_{B}Z_{B}^{p}P_{A}$. The affine space of all pseudo keys can be computed simply by solving a system of linear equations.
Proposition: If $(M_{B}^{p},\mathbf{z}_{E})$$Z_{B}^{p}$ is a pseudo private key, then $M_{A}M_{B}\mathbf{y}=S_{A}\mathbf{z}_{E}$.
Proof:
$$S_{A}\mathbf{z}_{E}=M_{A}P_{B}\mathbf{z}_{E}=M_{A}M_{B}^{p}\mathbf{y} =M_{B}^{p}M_{A}\mathbf{y}=M_{B}^{p}P_{A}X_{A}^{-1}\mathbf{y}$$ $$=S_{B}X_{A}^{-1}\mathbf{y}=M_{B}M_{A}\mathbf{y}=M_{A}M_{B}\mathbf{y}.\square$$
It$$M_{B}M_{A}=P_{B}Z_{B}P_{A}Z_{A}=S_{B}Z_{A}=P_{B}Z_{B}^{p}P_{A}Z_{A}=P_{B}Z_{B}^{p}S_{A},$$ so the secret key $M_{B}M_{A}$ is not too hard to computerecoverable from a basis for the affine space of all pseudo private keyskey $(M_{B}^{p},\mathbf{z}_{E})$$Z_{B}^{p}$ and there will always be some pseudo private keythe public information $S_{A}$.