• Nenhum resultado encontrado

10.15 Criptografia. 654 Álgebra Linear com Aplicações PRÉ-REQUISITOS:

N/A
N/A
Protected

Academic year: 2021

Share "10.15 Criptografia. 654 Álgebra Linear com Aplicações PRÉ-REQUISITOS:"

Copied!
10
0
0

Texto

(1)

654 Álgebra Linear com Aplicações

T1. Os métodos do Exercício 4 mostram que, para a transfor-mação do gato de Arnold, o número (p) é o menor número inteiro satisfazendo a equação

Isso sugere que uma maneira de determinar (p) é calcular

começando com n  1 e parando quando esse procedimento der a matriz identidade. Use essa ideia para calcular (p) com p  2, 3, . . . , 10. Compare seus resultados com as fórmulas dadas no Exercício 1, se aplicável. O que você pode conjetu-rar sobre

quando (p) for um número par? T2. Os autovalores e autovetores da matriz

da transformação do gato de Arnold são

Usando esses autovalores e autovetores, podemos definir

e escrever C  PDP1 e, portanto, Cn  PDnP1. Use um

computador para mostrar que

onde

e

De que maneira você pode usar esses resultados e suas con-clusões no Exercício T1 para simplificar o método de calcular (p)?

10.15

Criptografia

Nesta seção, apresentamos um método para codificar e decodificar mensagens. Também examinamos a aritmética modular e mostramos como a eliminação gaussiana pode ser utilizada, às vezes, para quebrar o código de um oponente.

PRÉ-REQUISITOS: Matrizes

Eliminação gaussiana Operações matriciais Independência linear

Transformações matriciais (Seção 4.9)

O estudo da codificação e decodificação de mensagens secretas é denominado

criptogra-fia. Embora os códigos secretos remontem aos primórdios da comunicação escrita, tem

havido um aumento recente de interesse no assunto devido à necessidade de manter a privacidade da informação transmitida ao longo de linhas públicas de comunicação. Na linguagem da criptografia, os códigos são denominados cifras, as mensagens não codifica-das são textos comuns e as mensagens codificacodifica-das são textos cifrados ou criptogramas. O processo de converter um texto comum num cifrado é denominado cifrar ou criptografar, e o processo inverso de converter um texto cifrado num comum é denominado decifrar.

(2)

10.15 Criptografia 655

As cifras mais simples, denominadas cifras de substituição, são as que substituem cada letra do alfabeto por alguma outra letra. Por exemplo, na cifra de substituição

a letra de texto comum A é substituída por D, a letra de texto comum B por E e assim por diante. Com essa cifra, a mensagem de texto comum

ROMA NAO FOI CONSTRUIDA EM UM DIA fica

URPD QDR IRL FRQVWUXLGD HP XP GLD

Uma desvantagem de cifras de substituição é que elas preservam as frequências de letras individuais, tornando relativamente fácil quebrar o código por métodos estatísticos. Uma maneira de superar esse problema é dividir o texto em grupos de letras e criptografar o texto comum grupo a grupo, em vez de uma letra de cada vez. Um sistema poligráfico é um sistema de criptografia no qual o texto comum é dividido em conjuntos de n letras, cada um dos quais é substituído por um conjunto de n letras cifradas. Nesta seção, estu-damos uma classe de sistemas poligráficos conhecidos como cifras de Hill, que têm por base transformações matriciais. (O nome é em referência a Lester S. Hill, que introduziu esses sistemas em dois trabalhos, “Cryptography in an Algebraic Alphabet,” American Mathematical Monthly, Vol. 36, junho-julho de 1929, páginas 306–312 e “Concerning Certain Linear Transformation Apparatus of Cryptography,” American Mathematical Monthly, Vol. 38, março de 1931, páginas 135–154.)

Daqui em diante, vamos supor que cada letra de texto comum e de texto cifrado, excetuando o Z, tem um valor numérico que especifica sua posição no alfabeto padrão (Tabela 1). Por motivos que ficarão claros adiante, damos a Z o valor de 0.

Nos casos mais simples de cifras de Hill, transformamos pares sucessivos de texto comum em texto cifrado segundo o procedimento seguinte.

Passo 1. Escolha uma matriz 2 2 com entradas inteiras

para efetuar a codificação. Condições adicionais sobre A serão impostas adiante.

Passo 2. Agrupe letras sucessivas de texto comum em pares, adicionando uma letra

adi-cional fictícia para completar o último par se o texto comum tiver um número ímpar de letras e substitua cada letra de texto comum por seu valor numérico.

Passo 3. Converta cada par p1 p2 de letras de texto comum sucessivamente num vetor coluna

e forme o produto Ap. Dizemos que p é o vetor comum e Ap, o correspondente vetor

cifrado.

Passo 4. Converta cada vetor cifrado em seu equivalente alfabético.

(3)

656 Álgebra Linear com Aplicações

 E X E M P L O 1 Cifra de Hill de uma mensagem

Use a matriz

para obter a cifra de Hill da mensagem de texto comum (em inglês) I AM HIDING

Solução Agrupando o texto comum em pares de letras e adicionando a letra fictícia G para completar o último par, obtemos

IA MH ID IN GG ou, equivalentemente, usando a Tabela 1,

9 1 13 8 9 4 9 14 7 7 Para codificar o par IA, efetuamos o produto matricial

que fornece o texto cifrado KC pela Tabela 1.

Para codificar o par MH, efetuamos o produto matricial

(1) No entanto, aqui temos um problema, pois o número 29 não possui equivalente alfabético (Tabela 1). Para resolver esse problema, fazemos o seguinte acordo.

Sempre que ocorrer um inteiro maior do que 25, ele será substituído pelo resto da divisão desse inteiro por 26.

Como o resto da divisão por 26 é um dos inteiros 0, 1, 2, . . . , 25, esse procedimento sem-pre fornece um inteiro com equivalente alfabético.

Assim, substituímos 29 por 3 em (1), pois 3 é o resto da divisão de 29 por 26. Segue da Tabela 1 que o texto cifrado do par MH é CX.

As contas para os demais vetores cifrados são

Esses vetores correspondem aos pares de texto cifrado QL, KP e UU, respectivamente. Coletando os pares, obtemos a mensagem cifrada completa

KC CX QL KP UU

que, normalmente, seria transmitida como uma única cadeia sem espaços,

KCCXQLKPUU 

Como o texto comum foi agrupado em pares e criptografado por uma matriz 2 2, dizemos que a cifra de Hill do Exemplo 1 é uma cifra de Hill de ordem 2. Evidentemente,

(4)

também é possível agrupar o texto comum em ternos e criptografar com uma matriz 3 3 de entradas inteiras, obtendo uma cifra de Hill de ordem 3. Em geral, para uma cifra de

Hill de ordem n, agrupamos o texto comum em conjuntos de n letras e codificamos com

uma matriz codificadora n n de entradas inteiras.

No Exemplo 1, substituímos os inteiros maiores do que 25 pelo seu resto pela divisão por 25. Essa técnica de trabalhar com os restos é a base de uma parte da Matemática denomi-nada aritmética modular. Tendo em vista sua importância em criptografia, vamos digredir por um momento para elaborar algumas das principais ideias dessa área.

Na aritmética modular, supomos dado um inteiro positivo m, denominado módulo, e consideramos “iguais” ou “equivalentes” em relação ao módulo quaisquer dois inteiros cuja diferença seja um múltiplo inteiro do módulo. Mais precisamente, temos a definição seguinte.

DEFINIÇÃO 1 Dados um número inteiro positivo m e dois inteiros a e b quaisquer, dizemos que a é equivalente a b módulo m, e escrevemos

a  b (mod m) se a  b for um múltiplo inteiro de m.

 E X E M P L O 2 Várias equivalências



Dado um módulo m arbitrário, pode ser provado que qualquer inteiro a é equivalente, módulo m, a exatamente um dos inteiros

0, 1, 2, . . . , m  1

Esse inteiro é denominado resíduo de a módulo m e escrevemos Zm  {0, 1, 2, . . . , m  1} para denotar o conjunto dos resíduos módulo m.

Se a for um inteiro não negativo, então seu resíduo módulo m é simplesmente o resto da divisão de a por m. Para um inteiro a arbitrário, o resíduo pode ser encontrado usando o teorema seguinte.

TEOREMA 10.15.1 Dados um inteiro a e um módulo m quaisquer, seja R  resto de

Então o resíduo r de a módulo m é dado por

(5)

658 Álgebra Linear com Aplicações

 E X E M P L O 3 Resíduos mod 26

Encontre os resíduos módulo 26 de (a) 87, (b) 38 e (c) 26.

Solução (a) Dividindo |87|  87 por 26, temos um resto de R  9, ou seja, r  9. Assim, 87  9 (mod 26)

Solução (b) Dividindo |38|  38 por 26, dá um resto de R  12, ou seja, r  26  12  14. Assim,

38  14 (mod 26)

Solução (c) Dividindo |26|  26 por 26, temos um resto de R  0. Assim, 26  0 (mod 26) 

Na aritmética usual, cada número não nulo a tem um recíproco, ou inverso multipli-cativo, denotado por a1, tal que

aa1  a1a  1

Na aritmética modular, temos o conceito correspondente definido a seguir.

DEFINIÇÃO 2 Dado um número a em Zm , dizemos que um número a1 em Z

m é um recíproco, ou inverso multiplicativo, de a módulo m se aa1  a1a  1 (mod m).

Pode ser provado que se a e m não têm fatores primos comuns, então a tem um único recíproco módulo m; reciprocamente, se a e m têm um fator primo comum, então a não tem recíproco módulo m.

 E X E M P L O 4 Recíproco de 3 mod 26

O número 3 tem um recíproco módulo 26, pois 3 e 26 não têm fatores primos em comum. Esse recíproco pode ser obtido encontrado o número x em Z26 que satisfaz a equação modular

3x  1 (mod 26)

Embora existam métodos gerais para resolver tais equações modulares, isso não será abordado, pois nos levaria para muito longe do nosso objetivo. Contudo, como 26 é rela-tivamente pequeno, essa equação pode ser resolvida experimentando, uma por uma, cada solução possível de 0 a 25. Dessa maneira, encontramos que x  9 é a solução, pois

3 · 9  27  1 (mod 26) Assim,

31  9 (mod 26)

 E X E M P L O 5 Um número sem recíproco mod 26

O número 4 não possui recíproco mod 26, pois 4 e 26 têm 2 como fator primo comum (ver Exercício 8). 

(6)

Cada cifra útil deve possuir um procedimento para decifrar. Para decifrar as cifras de Hill, usamos a inversa (mod 26) da matriz codificadora. Para ser preciso, se m for um inteiro positivo, dizemos que uma matriz A com entradas em Zm é invertível módulo m se existir

uma matriz B com entradas em Zm tal que

AB  BA  I (mod m) Suponha, agora, que

seja invertível módulo 26 e que essa matriz seja usada numa cifra de Hill de ordem 2. Se

é um vetor comum, então

c  Ap (mod 26)

é o correspondente vetor cifrado e

p  A1c (mod 26)

Assim, cada vetor comum pode ser recuperado do correspondente vetor cifrado pela mul-tiplicação à esquerda por A1 (mod 26).

Na criptografia, é importante saber quais matrizes são invertíveis módulo 26 e como obter suas inversas. Passamos a investigar essas questões.

Na aritmética comum, uma matriz quadrada A é invertível se, e só se, det(A) 0 ou, equivalentemente, det(A) tem um recíproco. O teorema seguinte é o análogo desse resul-tado em aritmética modular.

TEOREMA 10.15.2 Uma matriz quadrada A com entradas em Zm é invertível módulo m se, e só se, o resíduo de det(A) módulo m tem um recíproco módulo m.

Como o resíduo de det(A) módulo m tem um recíproco módulo m se, e só se, esse resíduo e m não têm fator primo comum, obtemos o corolário seguinte.

COROLÁRIO 10.15.3 Uma matriz quadrada A com entradas em Zm é invertível mó-dulo m se, e só se, m e o resíduo de det(A) mómó-dulo m não têm fatores primos comuns.

Como os únicos fatores primos de m  26 são 2 e 13, obtemos o corolário seguinte, que é útil em criptografia.

COROLÁRIO 10.15.4 Uma matriz quadrada A com entradas em Z26 é invertível mó-dulo 26 se, e só se, o resíduo de det(A) mómó-dulo 26 não é divisível por 2 ou 13.

Deixamos para o leitor verificar que se

tiver entradas em Z26 e se o resíduo de det(A)  ad  bc módulo 26 não for divisível por 2 ou 13, então a inversa de A (mod 26) é dada por

(2) onde (ad  bc)1 é o recíproco do resíduo de ad  bc (mod 26).

(7)

660 Álgebra Linear com Aplicações

 E X E M P L O 6 Inversa de uma matriz mod 26

Encontre a inversa de

módulo 26.

Solução

det(A)  ad  bc  5 · 3  6 · 2  3 de modo que, pela Tabela 2,

(ad  bc)1  31  9 (mod 26) Assim, por (2),

Conferindo,

Analogamente, A1 A  I (mod 26)



 E X E M P L O 7 Decifrando uma cifra de Hill de ordem 2

Decifre a cifra de Hill de ordem 2 dada, que foi criptografada pela matriz do Exemplo 6. GTNKGKDUSK

Solução Pela Tabela 1, o equivalente numérico do texto cifrado é 7 20 14 11 7 11 4 21 19 11

Para obter os pares de texto comum, multiplicamos cada vetor cifrado pela inversa de A (obtida no Exemplo 6), como segue.

Pela Tabela 1, os equivalentes alfabéticos desses vetores são ST RI KE NO WW que fornecem a mensagem

STRIKE NOW 

(8)

Como o objetivo de criptografar mensagens e informações é impedir que “oponentes” descubram seu conteúdo, os criptógrafos têm uma preocupação com a segurança de suas cifras, ou seja, quão facilmente podem ser decifradas pelos oponentes (ou quebradas). Concluímos esta seção discutindo uma técnica para quebrar cifras de Hill.

Suponha que consigamos algum texto comum e o cifrado correspondente de uma men-sagem de nosso oponente. Por exemplo, digamos que, examinando algum texto cifrado in-terceptado, fomos capazes de deduzir que a mensagem é uma carta que começa com DEAR SIR. Mostremos que, com alguns poucos desses dados, pode ser possível determinar a matriz decodificadora de um cifra de Hill e, consequentemente, ter acesso ao resto da mensagem.

É um resultado básico em Álgebra Linear que uma transformação fica completamente determinada por seus valores numa base. Esse princípio sugere que, se tivermos uma cifra de Hill de ordem n e se

p1 , p2 , . . . , pn

forem vetores comuns linearmente independentes cujos correspondentes vetores cifrados Ap1 , Ap2 , . . . , Apn

sejam conhecidos, então disporemos de informação suficiente para determinar a matriz A e, portanto, sua inversa A1 (mod m).

O próximo teorema, cuja prova é discutida nos exercícios, fornece uma maneira de fazer isso.

TEOREMA 10.15.5 Determinando a matriz decodificadora

Sejam p1 , p2 , . . . , pn vetores comuns linearmente independentes e sejam c1 , c2 , . . . , cn

os correspondentes vetores cifrados de uma cifra de Hill de ordem n. Se

for a matriz n n de vetores coluna pT

1 , p

T

2 , . . . p

T n e se

for a matriz n n de vetores linha cT

1 , c

T

2 , . . . c

T

n , então a sequência de operações

ele-mentares com as linhas que reduz C a I transforma P em (A1)T.

Esse teorema nos diz que, para encontrar a transposta da matriz decodificadora A1, devemos encontrar uma sequência de operações elementares com as linhas que reduza C a I e então aplicar essas mesmas operações com as linhas de P. O próximo exemplo ilustra um algoritmo simples para fazer isso.

 E X E M P L O 8 Usando o Teorema 10.15.5 Foi interceptada a cifra de Hill de ordem 2

IOSBTGXESPXHOPDE

Decifre essa mensagem, sabendo que ela começa com a palavra DEAR.

(9)

662 Álgebra Linear com Aplicações

Solução Pela Tabela 1, o equivalente numérico do texto comum conhecido é

e o equivalente numérico do texto cifrado correspondente é

de modo que os vetores comuns e correspondentes vetores cifrados são

Queremos reduzir

a I por operações elementares com as linhas e, simultaneamente, aplicar essas operações a

para obter (A1)T (a transposta da matriz decodificadora). Isso pode ser obtido adjuntando

P à direita de C e aplicando as operações com as linhas à matriz resultante [C | P] até que o lado esquerdo esteja reduzido a I. A matriz final, então, terá o formato [I | (A1)T ]. As

contas podem ser feitas como segue.

Formamos a matriz [C | P].

Multiplicamos a primeira linha por 91

 3.

Substituímos 45 pelo seu resíduo módulo 26.

Somamos 19 vezes a primeira linha à segunda.

Substituímos as entradas da segunda linha pelos seus resíduos módulo 26.

Multiplicamos a segunda linha por 51  21.

Substituímos as entradas da segunda linha pelos seus resíduos módulo 26.

Somamos 19 vezes a segunda linha à primeira.

Substituímos as entradas da primeira linha pelos seus resíduos módulo 26.

(10)

Assim,

e, portanto, a matriz decodificadora é

Para decifrar a mensagem, agrupamos primeiro o texto cifrado em pares e encontramos os equivalentes numéricos de cada letra, como segue.

Em seguida, multiplicamos os vetores cifrados sucessivamente pela esquerda por A1 e encontramos os equivalentes alfabéticos dos pares de texto comum resultantes.

Finalmente, construímos a mensagem a partir dos pares de texto comum: DE AR IK ES EN DT AN KS

DEAR IKE SEND TANKS 

Leitura recomendada

Os leitores interessados em aprender mais sobre criptografia podem consultar os livros listados a seguir. O primeiro é elementar e o segundo é mais avançado.

1. ABRAHAM SINKOV, Elementary Cryptanalysis, a Mathematical Approach (Mathematical Association of America, 2009).

Referências

Documentos relacionados

O TBC surge como uma das muitas alternativas pensadas para as populações locais, se constituindo como uma atividade econômica solidária que concatena a comunidade com os

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

A estabilidade do corpo docente permanente permite atribuir o conceito muito bom, segundo os parâmetros da área, para o item 2.2 (pelo menos 75% dos docentes permanentes foram

De seguida, vamos adaptar a nossa demonstrac¸ ˜ao da f ´ormula de M ¨untz, partindo de outras transformadas aritm ´eticas diferentes da transformada de M ¨obius, para dedu-

A taxa do INR ideal para os paci- entes com disfunção ventricular e insuficiência cardíaca também não foi estimada por meio de estudos prospectivos e randomizados, e a taxa

Apesar dos esforços para reduzir os níveis de emissão de poluentes ao longo das últimas décadas na região da cidade de Cubatão, as concentrações dos poluentes

Realizou-se estudo do tipo ecológico com o objetivo de investigar o perfil sociodemográfico e epidemiológico, a frequência de casos, os indicadores epidemiológicos

Este tipo de implante em forma de lâmina era indicado para ser utilizado unido a dentes ou implantes. Após o preparo de um leito ósseo (canaleta) com uma caneta de