You are on page 1of 3

July - 2014

MATRIX SHARING ALGORITHM


Thomas Mazzi
thomas_mazzi@hotmail.com
Introduction
Abstract
Matrix sharing is a protocol to exchange a secret key between two subject over a public
channel. The key shared is a square matrix, from which the algorithm takes the name.
Preliminary
The algorithm has been designed to allow the exchanging of very long keys, using only a
"light" math, avoiding complex calculations, modules, rings and primes. A simple math opened
to everybody, implementable on small computers without having to manage numbers of
extraordinary dimensions, implementable even on a simple spreadsheet.
Theory
Protocol explanation
Alice and Bob need to share a key over a public channel without any eavesdroppers can take
the possession. The first step is to share a random number generator and the respective seed.
Both Alice than Bob create an equal square matrix using the random number generator. The
numbers/elements of the matrix will be the same for Alice and Bob, having been generated by
the same generator starting from the same seed. The size of the matrix should be enough large
to guarantee the security of the protocol (ex. matrix size 100x100).
Example of matrix generation 5x5
After creation of the matrices, following her secret scheme, Alice begins to add and / or
subtract even repeatedly the various columns of the matrix to obtain a second one of identical
size.
In meantime, following his secret scheme (different from Alice's scheme), Bob will do the same
thing on row of original matrix to obtain a second one of identical size.
The patterns of addition and subtraction, applied to the columns and rows from Alice and Bob,
have to remain a secret and never shared. Such patterns will have to be stored for reuse at a
later time.
Example of matrix 5x5 calculation
Alice sums the columns 3 and 5 to obtain the column 1, etc. ...
Bob sums the rows 2 and 3 to obtain the row 1, etc. ...
The following table describes the schemes applied by Alice and Bob
The new matrices obtained by Alice and Bob must be swapped as described in following
diagram.

The schemes of Alice and Bob must be applied again to the swapped matrices. After this
second application of secret schemes, "magically" Alice and Bob share a common matrix,
exactly: two identical matrices as showed at the end of precedent flow diagram.
Comments
A possible third person who has intercepted messages related to the original generator or to
the matrices exchanged will not be able to easily reconstruct the secret schemes applied by
Alice and Bob.
Only after a laborious work by attempts, the eavesdroppers will be able to rebuild the secret
schemes.
As in example, only just a 5x5 matrix is pretty difficult to decrypt and at same time it permits
to share a 25 bytes key.
Surely 5x5 matrix in not enough to have an appropriate robustness to the current computing
technology, it is recommended an use of 100x100 or 250x250 matrices size.
The reconstruction of the secret schemas is a permutation problem, difficult to solve in a
reasonable time, particularly with large size matrices.

You might also like