Messaggi in codice con le matrici

 

1. Considerate la seguente tabella di codifica:

A   B   C   D    E   F   G     H   I    J    K    L    M    N    O    P    Q   R     S     T   U   V
0   1   2   3   4   5    6   7   8   9  10  11  12  13  14  15  16  17  18  19 20  21

W   X     Y    Z    .      ,   !     ?      '    -    spazio
22  23  24  25  26  27 28  29  30  31    32

Volendo codificare il messaggio OTTIMO STRUMENTO si può scrivere innanzitutto la matrice 2 x 8 :

          

Si può inventare poi una matrice 2 x 2 a piacere, purché il determinante sia uguale a 1 o a -1:

                 

Moltiplicando le due matrici si ottiene come prodotto:

             

Applicando a quest'ultima matrice la riduzione secondo le classi di resto modulo 33 (perchè 32 sono i simboli utilizzati) si ottiene:

            

Questa è la matrice che sarà inviata come messaggio.

Chi riceve tale matrice può decodificarla, quindi, nel modo seguente:

innanzitutto, calcolando la matrice inversa della precedente 2 x 2,

           

poi, moltiplicandola per quella di arrivo, ottenendo

e, infine, ridurre quest'ultima, modulo 33

            

che permette di risalire al messaggio originale.

 

2. L'istruzione  mod (m, c) della TIV permette di calcolare rapidamente il resto della divisione di m per c, anche se m è una matrice, vale a dire il rappresentante più piccolo positivo della classe cui appartiene m, modulo c.

Il seguente programma riduce la matrice m, modulo c, e memorizza il risultato nella variabile n: