SEGUNDO Massey [1] a história da criptologia mostra

Documentos relacionados
2 Teoria da Informação

Um Esquema de Codificação Homofônica Universal Utilizando o Algoritmo LZW

Codificação de Huffman

Teoria da Informação

Entropia, Entropia Relativa

Canais discretos sem memória e capacidade do canal

Compressão e Codificação de Dados. Primeiro Exame e Segundo Teste

Estudo sobre decodificação iterativa usando códigos de treliça

COMUNICAÇÃO DIGITAL INTRODUÇÃO À TEORIA DE INFORMAÇÃO

Sistemas discretos sem memória e codificação da fonte

Princípios Básicos de Teoria da Informação

6 Inserção Seletiva de Nulos

universidade federal de pernambuco departamento de estatística

TE111 Comunicação Digital

Produtos de potências racionais. números primos.

GBC083 - Segurança da Informação Aula 2 - Sigilo Perfeito. 28 de Março de 2016

TEORIA DE INFORMAÇÃO UM NANOCURSO

TÉCNICAS DE CODIFICAÇÃO DE SINAIS

Códigos perfeitos e sistemas de Steiner

Teoria da Informação

Segundo Exame e Repescagem de Testes. Mestrado em Engenharia Electrotécnica e de Computadores, IST 25 de Janeiro de 2014

Compressão Sem Perdas: Codificações Huffman e Aritmética. Adelar da Silva Queiróz Marcelo Teixeira Thiago da Silva Sodré

UNIVERSIDADE FEDERAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA. Medida e Probabilidade

Geração de uma Distribuição Discreta Usando Moedas Desbalanceadas

COM29008 LISTA DE EXERCÍCIOS #

Teoria da Informação ( ) Exame de Recurso ( ) Resolução. (1 p), (1 p), p = H(0,4;0,4;0,2) = 1,522

Teoria de distorção da taxa

TEORIA ERGÓDICA, SISTEMAS DINÂMICOS E MEDIDAS INVARIANTES

Eisencraft e Loiola 2.1 Probabilidade 37. Para resolver problemas de probabilidades são necessários 3 passos:

Universidade de Pernambuco Escola Politécnica de Pernambuco

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

SM - Sistemas Multimédia CODIFICAÇÃO DE FONTE (parte 2) 4.º / 6.º semestre LEIC (verão 2016/2017)

4 C odigos de Huffman 4.1 Arvores de c odigo folhas os internos n ıvel altura Arvore bin aria arvore bin aria ordenada

Números Primos: onde estão? Por que encontrá-los? Ana Cristina Vieira MAT/UFMG. Primos

Códigos de Permutação para Compressão de Dados e Modulação 13. Codificador de fonte. Decodificador. Figura 1.1: Modelo de um sistema de comunicações.

Aula 10: Decidibilidade

Aula 10: Decidibilidade

Avaliação de Desempenho

FACULDADE DE TALENTOS HUMANOS DEPARTAMENTO DE ENGENHARIA ELÉTRICA PROCEDIMENTOS EXPERIMENTAIS DE COMUNICAÇÃO DIGITAL II PARA TELECOMUNICAÇÃO

Avaliação e Desempenho Aula 5

Códigos Corretores de Erros e Cliques de Grafos

4.1. ESPERANÇA x =, x=1

Árvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo

Teoria dos Conjuntos. Matemática Discreta. Teoria dos Conjuntos - Parte I. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG.

Dado um inteiro positivo n, definimos U(n) como sendo o conjunto dos inteiros positivos menores que n e primos com n. Não é difícil ver que a

Aula de hoje Aula passada

ALGORITMO DE EUCLIDES

Teoria da Informação ( ) Exame de Recurso ( ) Resolução ( ) ( ) 2log2. log log

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo

Amostragem e distribuições por amostragem

Análise de Algoritmos

TE802 Processos Estocásticos em Engenharia. Informação sobre a disciplina Notes. Processos Estocásticos em Engenharia Conteúdo Notes.

Teoremas de uma, duas e três séries de Kolmogorov

TE802 Processos Estocásticos em Engenharia. Informação sobre a disciplina. TE802 Conceitos Básicos de Teoria de Probabilidade. Evelio M. G.

Notas sobre minorantes de complexidade

Nivio Ziviani. Conjunto de transparências elaborado por Nivio Ziviani, Patrícia Correia e Fabiano C. Botelho

UMA APLICAÇÃO DE CÓDIGOS CORRETORES DE ERROS EM CRIPTOGRAFIA

Notas sobre Sequências e Cardinalidade (1)

Chamamos de evento qualquer subconjunto do espaço amostral: A é um evento A Ω.

Sílvio A. Abrantes. Uns pequenos truques que facilitam alguns cálculos de Códigos e Teoria da Informação

EET-49 Comunicações II

Códigos de blocos lineares. Outubro de 2017

1.4.2 Probabilidade condicional

1 O esquema de Alamouti: Diversidade na transmissão

Notas sobre os anéis Z m

COMPRESSÃO E CODIFICAÇÃO SEM PERDAS. Mauro Nogueira Mônica Festa Paulo Antiquera

Fundamentos de Telecomunicações

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

Códigos convolucionais

Matemática I. 1 Propriedades dos números reais

Estatística e Modelos Probabilísticos - COE241

MD Lógica de Proposições Quantificadas Cálculo de Predicados 1

Processos Estocásticos e Cadeias de Markov Discretas

Conteúdo Teórico: 04 Esperança

Curso de Matemática Aplicada.

Um alfabeto é um conjunto de símbolos indivisíveis de qualquer natureza. Um alfabeto é geralmente denotado pela letra grega Σ.

2.3 Operações sobre uma variável aleatória - Esperança matemática

Contando o Infinito: os Números Cardinais

Universidade de Pernambuco Escola Politécnica de Pernambuco

Estruturas de Dados 2

Material Teórico - Módulo Equações do Segundo Grau. Equações de Segundo Grau: outros resultados importantes. Nono Ano do Ensino Funcamental

Física da Informação Probabilidades

Estruturas de Dados Tabelas de Espalhamento

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo

Lista 1 - PMR2300. Fabio G. Cozman 3 de abril de 2013

Sequências e Séries Infinitas. Copyright Cengage Learning. Todos os direitos reservados.

Teoria das Probabilidades

Limites Uma teoria abordando os principais tópicos sobre a teoria dos limites. José Natanael Reis

Modulação OFDM aplicada à Televisão Digital bibliografia: Megrich, A. Televisão Digital: Princípios e técnicas, Editora Érica Ltda

Teoria Ingênua dos Conjuntos (naive set theory)

Probabilidade, entropia, surpresa, e quantidade de informação 1

INTRODUÇÃO À TEORIA DA INFORMAÇÃO

Célia Borlido 07/09/2007 Encontro Nacional dos Novos Talentos em Matemática

4 TEORIA MATEMÁTICA DA COMUNICAÇÃO DE SHANNON

Estruturas de Dados 2

Propriedades das Linguagens Livres do Contexto

Probabilidade. Objetivos de Aprendizagem. UFMG-ICEx-EST. Cap. 2 - Probabilidade Espaços Amostrais e Eventos. 2.1.

Criptografia. Aula 4: Autenticação de mensagens e canais seguros. Manuel Barbosa (mbb at dcc.fc.up.pt) 2018/2019

Transcrição:

REVISTA DE TECNOLOGIA DA INFORMAÇÃO E COMUNICAÇÃO, NÚMERO 1, OUTUBRO 2011 14 Aspectos de Segurança de Cifras de Chave-Secreta Valdemar C. da Rocha Jr. Grupo de Pesquisa em Comunicações, Departamento de Eletrônica e Sistemas Universidade Federal de Pernambuco, Recife, Brasil E-mail: vcr@ufpe.br Resumo Este artigo apresenta uma abordagem tutorial sobre aspectos de segurança de cifras de chave-secreta, considerando ferramentas da teoria da informação aplicadas à substituição homofônica. I. INTRODUÇÃO SEGUNDO Massey [1] a história da criptologia mostra que a maioria dos sistemas de chave-secreta que foram quebrados, o foram explorando o afastamento da estatística do texto-claro daquela de uma seqüência completamente aleatória. Substituição homofˆonica é uma antiga técnica criptográfica para reduzir a redundância em uma mensagem a ser cifrada, ao custo de uma expansão do texto claro. Dito de maneira equivalente, a substituição homofônica visa converter uma seqüência de texto-claro, contendo redundância, em uma seqüência aleatória. Em 1988, Günther [2] introduziu uma importante generalização da substituição homofônica, a qual é denominada substituição homofˆonica de comprimentovariável, na qual os homofonemas, ou substitutos de uma letra em particular na mensagem, podem ser representados por palavras com comprimentos diferentes e possuirem diferentes probabilidades de ocorrência. Günther mostrou que esta técnica consegue remover toda a redundância da sequência homofonicamente codificada, produzindo o que Shannon denominou de uma cifra fortemente-ideal [3] e ao mesmo tempo reduzir a expansão do texto claro. O objetivo deste artigo é prover um tutorial revendo o tratamento de teoria da informação para o tipo de substituição homofônica de Günther, à luz das referências [1] e [4]. Salientamos, no entanto, que a abordagem aqui tratada é aplicável apenas a fontes cuja caracterização estatística é conhecida. Existem técnicas de substituição homofônica aplicáveis a fontes cuja caracterização estatística é desconhecida, ou seja, técnicas universais de substituição homofônica [5], mas que não serão consideradas no presente artigo. Na Seção II, apresentamos um tratamento cuidadoso do conceito de Shannon de cifra fortemente-ideal, por este prover a motivação para o uso de qualquer tipo de substituição homofônica. Na Seção III apresentamos os principais conceitos da substituição homofônica convencional e a terminologia associada. Na Seção IV apresentamos a definição da substituição homofônica de Günther, ou substituição homofônica de comprimento-variável, juntamente com a condição necessária e suficiente para tal substituição ser perfeita [1], isto é, para criar uma seqüência completamente aleatória. Na Seção V mostramos o resultado surpreendente de que a substituição homofônica perfeita pode ser alcançada pela introdução de menos de 2 bits de entropia em cada letra da fonte que é codificada, Os resultados da teoria da informação usados neste artigo são bastante básicos e podem ser encontrados em qualquer bom livro texto sobre teoria da informação, por exemplo, o livro de Gallager [7]. Entretanto, para benefício do leitor, disponibilizamos estes principais resultados no apêndice. Reiterando o que dissemos há pouco, a técnica de codificação homofônica, aplicada a uma fonte de informação, consiste na substituição de cada símbolo da fonte por um ou mais substitutos, chamados homofonemas, em um alfabeto de cardinalidade maior que o da fonte. Isto é feito com o objetivo de decompor a probabilidade de cada símbolo da fonte de tal maneira que os homofonemas correspondentes pareçam ter sido gerados aleatoriamente. Cada substituto de um símbolo da fonte é representado, numa correspondência um-a-um, por uma sequência finita de variáveis aleatórias de tal modo a produzir variáveis aleatórias estatisticamente independentes e identicamente distribuídas. A distribuição de probabilidade destas variáveis aleatórias em geral é uniforme, porém em outras situações pode haver a necessidade de se trabalhar com uma distribuição de probabilidades distinta da uniforme. Neste artigo iremos considerar sistemas binários e distribuições de probabilidade uniformes por uma questão de simplicidade e de utilidade prática, porém os procedimentos descritos são aplicáveis a alfabetos de codificação D-ários, nos quais D representa um número inteiro positivo maior que 2. II. CIFRAS FORTEMENTE-IDEAIS E INQUEBRÁVEIS O objetivo da substituição homofˆonica pode ser explicado considerando um sistema de cifra de chave-secreta como mostra o diagrama da Figura 1. Para facilitar a notação, denotemos por X n e Y n as sequências [X 1, X 2,...,X n ] e [Y 1, Y 2,...,Y n ] de texto-claro e de texto-cifrado, respectivamente. Como é costume e como a Figura 1 sugere, nós supomos sempre que a chave-secreta Z é estatisticamente independente da sequência de texto-claro X n para todo n. Chamaremos a cifra de não-expansiva se os dígitos do textoclaro e os dígitos do texto-cifrado assumirem valores no mesmo alfabeto D-ário e existir uma sequência crescente infinita de números inteiros positivos n 1, n 2, n 3,... tais que, quando Z é conhecido, X n e Y n determinam univocamente um ao outro para todo n S = {n 1, n 2, n 3,...}. Nós chamaremos também uma sequência de variáveis aleatórias completamente aleatória se cada um dos seus dígitos for estatisticamente independente dos dígitos precedentes e for igualmente provável de assumir qualquer um dos seus D possíveis

15 REVISTA DE TECNOLOGIA DA INFORMAÇÃO E COMUNICAÇÃO, NÚMERO 1, OUTUBRO 2011 valores. A proposição a seguir é provada no Apêndice, através de argumentos elementares de teoria da informação. Proposição 1: Se a sequência de texto-claro cifrada por uma cifra de chave-secreta não-expansiva for completamente aleatória, então a sequência de texto-cifrado será também completamente aleatória e estatisticamente independente da chave-secreta. Y 1, Y 2,... Figura 1. Cifrador X 1, X 2,... Z Gerador de Chave Um sistema de cifra de chave-secreta. Fonte de Texto Claro Shannon [3] definiu a função equivocação de chave f(n) de um sistema de cifra de chave-secreta como sendo a entropia condicional da chave dados os primeiros n dígitos do textocifrado, isto é, f(n) = H(Z Y n ). A função equivocação de chave f(n) é portanto uma medida do número de valores da chave-secreta Z que são consistentes com os primeiros n dígitos do texto-cifrado. Pelo fato de f(n) só poder decrescer quando n cresce, Shannon chamou a cifra de ideal se f(n) se aproxima de um valor não-nulo quando n tende a infinito, e de fortemente-ideal se f(n) for constante, isto é, se H(Z Y n ) = H(Z) para todo n, que é equivalente à afirmação de que a sequência de texto-cifrado é estatisticamente independente da chave-secreta. A prova do corolário a seguir é imediata e é apresentada no Apêndice. Corolário 1: (da Proposição 1) Se a sequência de textoclaro cifrada por uma cifra de chave-secreta não-expansiva for completamente aleatória, então o sistema de cifra será fortemente-ideal, qualquer que seja a distribuição de probabilidade da chave-secreta. Virtualmente todas as cifras não-expansivas úteis possuem a propriedade, que chamaremos não-degeneração, que mudando o valor da chave-secreta Z, sem mudar o valor da sequência de texto-claro X n, mudará o valor da sequência de textocifrado para todo n suficientemente grande, exceto para uma pequeníssima fração (frequentemente 0) de possíveis valores da chave para quaisquer valores dados de X n. Equivalentemente, uma cifra não-expansiva é não-degenerativa se H(Y n X n ) H(Z) for verdadeira para todo n suficientemente grande e para todas as distribuições de probabilidade de X n, quando todos os valores possíveis da chave-secreta Z forem igualmente prováveis. Porém, como é mostrado no Apêndice, H(Y n X n ) = H(X n Y n ) (1) é verdadeira para todo n numa cifra não-expansiva quando a sequência de texto-claro X 1, X 2,... é completamente aleatória. A seguinte conclusão é imediata. Corolário 2: (da Proposição 1) Se a sequência de textoclaro cifrada por uma cifra de chave-secreta não-expansiva for completamente aleatória e todos os valores possíveis da chave Y 1, Y 2.. Cifrador Não-Expansivo Z Gerador de Chave X 1, X 2.. Codificador Homofônico U 1, U 2.. Fonte de Mensagens Figura 2. Uso de substituição homofônica dentro de um sistema de cifra de chave-secreta. forem igualmente prováveis, então a entropia condicional da sequência de texto-claro dada a sequência de texto-cifrado satisfará H(X n Y n ) H(Z) para n suficientemente grande. Este corolário implica em particular que, num ataque de apenas texto-cifrado, o criptoanalista não pode fazer melhor para encontrar X n que tentar advinhar aleatoriamente fazendo escolhas entre as possibilidades dos valores da chave-secreta Z. Em outras palavras, o sistema de cifra é inquebrável em um ataque de apenas texto-cifrado quando o número de possíveis valores da chave-secreta é grande. O que foi visto até agora mostra que virtualmente toda cifra de chave-secreta não-expansiva pode ser usada como a cifra de um sistema de cifra inquebrável, desde que a fonte de textoclaro emita uma sequência completamente aleatória. Mas é precisamente o objetivo da substituição homofônica converter uma fonte que não é deste tipo em uma que o seja. Quando a codificação homofônica é perfeita, é então uma tarefa trivial a construção de sistemas de cifras de chave-secreta inquebráveis do tipo mostrado na Figura 2. III. SUBSTITUIÇÃO HOMOFÔNICA CONVENCIONAL Aqui e daqui por diante consideraremos a fonte de textoclaro da seção anterior como o resultado da codificação da verdadeira fonte de mensagens, cuja sequência de saída denotamos por U 1, U 2, U 3,..., na sequência de variáveis aleatórias X 1, X 2, X 3,.... Supomos que as variáveis aleatórias U i assumem valores num alfabeto de L letras, em que 2 L <. Salvo aviso em contrário, supomos que a fonte é sem-memória e estacionária ou, de modo equivalente, que U 1, U 2, U 3,..., é uma sequência de variáveis aleatórias L-árias estatisticamente independentes e identicamente distribuídas (i.i.d). O problema da codificação da verdadeira fonte de mensagens reduz-se então ao problema da codificação de uma única variável aleatória U = U 1. A fim de evitar complicações desnecessárias, supomos daqui por diante que todos os L valores de U têm probabilidade não-nula. Observamos que, quando L = D w para algum número inteiro positivo w e quando todos os L valores possíveis de U são igualmente prováveis, o esquema simples de codificação consistindo em alocar uma sequência distinta, dentre as D w sequências D-árias de comprimento w, para cada valor de U, torna a palavra-código X 1, X 2,..., X w completamente aleatória. Substituição homofˆonica convencional tenta alcançar este mesmo resultado, quando os valores de U não são igualmente prováveis, escolhendo quando possível um w

REVISTA DE TECNOLOGIA DA INFORMAÇÃO E COMUNICAÇÃO, NÚMERO 1, OUTUBRO 2011 16 apropriado, com D w > L, particionando as D w sequências D-árias de comprimento w em L subconjuntos, colocando estes sub-conjuntos em correspondência com os valores de U de tal maneira que o número de sequências em cada subconjunto seja proporcional à probabilidade do correspondente valor de U, e então escolhendo a palavra-código para um valor particular u de U através de uma escolha equiprovável no sub-conjunto de sequências que correspondem a u. Letras sucessivas da fonte de mensagens são independemente codificadas desta maneira. Quando este particionamento de sequências D-árias de comprimento w é possível, a palavracódigo X 1, X 2,..., X w é igualmente provável de ser qualquer uma das sequências D-árias de comprimento w de tal modo que a sequência X 1, X 2,...,X w é completamente aleatória. As diferentes palavras-código que representam o mesmo valor u de U são tradicionalmente chamadas de homofonemas de u, mas em breve usaremos esta terminologia num sentido ligeiramente diferente e mais fundamental. É fácil de ver que a substituição homofônica convencional, para a qual X 1, X 2,..., X w é completamente aleatório, é possível se e somente se cada valor u i de U tiver probabilidade n i /D w para algum número inteiro n i, em que n i representa o número de homofonemas que devem necessariamente ser alocados a u i. IV. SUBSTITUIÇÃO HOMOFÔNICA DE GÜNTHER A Substituição homofˆonica de comprimento variável introduzida por Günther [2] generaliza o esquema de substituição homofônica convencional, pelo fato das sequências D-árias usadas poderem ter comprimentos diferentes, e as sequências no subconjunto correspondente a um dado valor u de U poderem ser selecionadas com probabilidades diferentes como a palavra-código para u. O comprimento W da palavra-código X 1, X 2,...,X W para U pode ser assim uma variável aleatória. Para uma distribuição de probabilidade arbitrária para U, Günther [2] forneceu um algoritmo para tal substituição homofônica de comprimento variável com D = 2 que torna a palavra-código binária resultante completamente aleatória. Ele também observou que, quando L = 2 n, caso em que a codificação natural de um valor de U seria uma sequência binária de comprimento n, seu algoritmo forneceu algumas vezes um valor esperado de comprimento das palavras-código E(W) menor que n e assim seu algoritmo também realizava compressão de dados. A Figura 3 mostra um esquema de codificação com generalidade suficiente para incluir a substituição homofônica convencional e a substituição homofônica de comprimento variável, assim como também a codificação de fonte convencional, ou compressão de dados. Pelo termo canal homofˆonico da Figura 3, nos referimos a um canal sem memória cujo alfabeto de entrada {u 1, u 2,..., u L } coincide com o conjunto de possíveis valores de U, cujo alfabeto de saída {v 1, v 2,...} é finito ou infinito contável, e cujas probabilidades de transição P(V = v j U = u i ) possuem a propriedade de que para cada j existe exatamente um único i tal que P(V = v j U = u i ) 0. Nós consideraremos aqueles v j para os quais P(V = v j U = u i ) > 0 como sendo os homofonemas de u i, ao invés de considerar as palavras-código nas quais estes X 1,.. Figura 3. Codificador D-ário Sem-Prefixo V 1,... Canal U 1,... Homofônico Um esquema geral para substituição homofônica. Fonte de Mensagens L-ária v j são codificados como sendo os homofonemas. Pelo termo codificador D-ário sem prefixo da Figura 3, nos referimos a um dispositivo que aloca uma sequência D-ária para cada v j sob a restrição de que esta palavra-código não seja idêntica a uma outra palavra-código e nem forme o início, ou prefixo, de uma palavra-código mais longa. Esta restrição, que é satisfeita pelo esquema de codificação de Günther [2], assegura que, quando X 1, X 2,... é uma sequência de palavras-código, o final de cada palavra-código pode ser reconhecido sem precisar examinar nenhum dos símbolos seguintes desta sequência. É um fato conhecido em teoria da informação [7, pág. 49] que tal codificação é geral no sentido de que para qualquer código D-ário unicamente decodificável existe um código sem prefixo que possui exatamente os mesmos comprimentos de palavrascódigo. Quando o canal homofônico da Figura 2 é determinístico no sentido de que todas as probabilidades de transição são iguais a 1, de tal modo que podemos dizer que V = U, então a Figura 3 denota a situação usual de codificação de fonte, ou compressão de dados, considerada em teoria da informação. Quando o canal homofônico é não-trivial mas a codificação binária é trivialmente sem prefixo pelo fato de todas as palavras-código terem o mesmo comprimento m, ou seja, o código é um código de bloco, então a Figura 3 denota a situação da substituição homofônica convencional. No caso em que ambos, o canal homofônico é não-trivial e a codificação binária é sem prefixo não-trivial, então a Figura 3 denota a substituição homofônica como introduzida por Günther [2]. A Figura 4 fornece dois exemplos muito usados na literatura, do esquema de substituição homofônica genérico ilustrado na Figura 3, ambos para a mesma fonte binária de mensagens, ou seja, para L = 2. Em breve veremos que ambos esquemas na Figura 4 são perfeitos. O sistema na parte mais de cima desta figura exemplifica a substituição homofônica convencional usando sequências binárias de comprimento w = 2. O sistema na parte mais de baixo da Figura 4 ilustra a substituição homofônica de comprimento variável de Günther. Note que o esquema de comprimento variável tem um valor esperado de comprimento de palavra de E(W) = 3/2 dígitos comparado a E(W) = 2 para o esquema convencional. Esta redução no número de dígitos codificados é uma vantagem oferecida pela substituição homofônica de comprimento variável mesmo quando a substituição homofônica convencional perfeita for possível. Um esquema de substituição homofônica é definido como perfeito [1] se a sequência D-ária codificada X 1, X 2,... for completamente aleatória. Para o caso com fonte e canal sem memória considerado na Figura 3, isto é equivalente

17 REVISTA DE TECNOLOGIA DA INFORMAÇÃO E COMUNICAÇÃO, NÚMERO 1, OUTUBRO 2011 00 v 1 1 v 1 u 1 01 v 2 V v 2 1/3 10 v 3 v 3 u 2 1/3 11 P U (u 1 ) = 1/4 X 1, X 2 U v 4 Codificadores Binários Livres de Prefixo v 4 1/3 Canais Homofônicos 00 v 1 1 v 1 u 1 1 v 2 V v 2 2/3 U u 2 01 v 3 1/3 X 1, X 2 v 3 P U (u 2 ) = 3/4 Fonte de Mensagens Binária Sem-Memória P U (u 1 ) = 1/4 P U (u 2 ) = 3/4 Figura 4. Dois exemplos de substituição homofônica perfeita para a mesma fonte de mensagens, binária e sem memória. à condição de que a palavra-código X 1, X 2,..., X W para V = V 1 seja completamente aleatória. Daqui em diante todas as entropias serão assumidas como sendo em bits e todos os logaritmos serão entendidos como sendo na base 2. Proposição 2: Para o esquema de substituição homofônica da Figura 3 resulta H(U) H(V ) E(W)log D, (2) com igualdade à esquerda se e somente se o canal homofônico for determinístico, ou com igualdade à direita se e somente se o esquema de substituição homofônica for perfeito. Além disso, existe uma codificação D-ária de V, livre de prefixo, tal que o esquema é perfeito se e somente se P(V = v) for uma potência de D, cujo expoente é um número inteiro negativo, para todos os possíveis valores v de V. Quando esta condição for satisfeita, o esquema será perfeito se e somente se P(V = v i ) = D wi for verdadeiro para todos os valores v i de V, em que w i denota o comprimento da palavra-código D-ária alocada a v i. Prova: É um fato bem conhecido em teoria da informação que a expressão H(V ) E(W) log D é verdadeira para toda codificação D-ária de V livre de prefixo [7, pág. 50] e que a igualdade só pode ser alcançada se e somente se P(V = v) for uma potência de D cujo expoente é um número inteiro negativo, para todos os valores v de V. Além disso, a igualdade quando possível é alcançada por, e apenas por, um código D-ário livre de prefixo que aloca uma palavra-código de comprimento w para um valor v de V com P(V = v) = D w. É também bem conhecido [7, pág. 47] que X 1, X 2,...,X W é completamente aleatório para, e apenas para, tal código. Resta apenas verificar a igualdade à esquerda em (2). Pelo fato da saída V do canal homofônico determinar de modo único a entrada U, i.e., H(U V ) = 0, e porque H(U, V ) = H(U) + H(V U) = H(V ) + H(U V ), segue que H(V ) = H(U) + H(V U). (3) O fato de que H(V U) 0 agora nos dá a desigualdade à esquerda em (2). Esta desigualdade torna-se uma igualdade se e somente se H(V U) = 0, i.e., se e somente se a entrada U do canal também determinar de modo único a saída V do canal, que é equivalente a dizer que o canal homofônico é determinístico. Devido ao fato que, nos dois esquemas de substituição homofônica da Figura 4, os valores de V com probabilidade 1/4 são alocados palavras-código binárias (D = 2) de comprimento 2 e que ao único valor de V com probabilidade 1/2 é alocada uma palavra-código de comprimento 1, decorre da Proposição 2 que ambos os esquemas são perfeitos. Quando P(V = v i ) = D wi, para um número inteiro positivo w i, for verdadeiro pata todos os valores v i de V, é bem conhecido [7, pág. 48] que um código D-ário livre de prefixo pode ser construído no qual a palavra-código para v i tem comprimento w i, usando por exemplo a técnica empregada para a demonstração da condição de necessidade na desigualdade de Kraft [6, pág. 43]. V. SUBSTITUIÇÃO HOMOFÔNICA ÓTIMA Como mencionado anteriormente, a substituição homofônica é perfeita se os componentes X 1, X 2,...,X W do homofonema V forem estatisticamente independentes e equiprováveis. Em [1] a substituição homofônica foi definida como sendo ótima quando ela for perfeita e minimizar E(W), dentre substituições homofônicas perfeitas. Foi mostrado em [1, Proposição 3] que um esquema de substituição homofônica é ótimo se e somente se, para todo i, as probabilidades P V (v j ) = P V U (v j, u i ) = P V U (v j u i )P U (u i ), j 1, dos homofonemas forem iguais, em alguma ordem, aos termos da decomposição de P U (u i ) como uma soma finita de potências de 2, cujos expoentes são números inteiros negativos, quando isso for possível, ou como uma tal soma infinita em caso contrário. Em [1], o limitante superior H(V U) < 2 bits, independente de L, foi afirmado para a substituição homofônica ótima, porém a prova lá apresentada foi falaciosa. Posteriormente, em [4] foi apresentada uma prova válida deste resultado e além disso os autores fortaleceram o referido limitante superior, incluindo a sua dependência no número de termos da expansão de P U (u i ). Teorema 1: (Rocha-Massey [4]) Na substituição homofônica ótima de uma variável aleatória L-ária U, a entropia condicional H(V U) do homofonema V dado U é menor que 2 bits. Prova: Sejam p 1, p 2, p 3,... valores, possivelmente numa quantidade infinita, dos termos não-nulos em ordem decrescente da distribuição de probabilidade condicional P V U (. u i ). Pelo fato da substituição homofônica ser ótima, temos p j+1 p j /2 para todo j 1, o que implica em 1/2 < p 1 1. É suficiente considerarmos 1/2 < p 1 < 1. Denotando por H(V U = u i ) = h(p 1, p 2,...) a entropia em bits da distribuição de probabilidade (p 1, p 2, p 3,...), resulta H(V U = u i ) = h(p 1 ) + (1 p 1 )h(p 2 /(1 p 1 ), p 3 /(1 p 1 ),...). A condição 1/2 < p 1 < 1 implica que H(V U = u i ) < 1 + 1 2 h(q 1, q 2,...)

REVISTA DE TECNOLOGIA DA INFORMAÇÃO E COMUNICAÇÃO, NÚMERO 1, OUTUBRO 2011 18 em que (q 1, q 2, q 3,...) = (p 2 /(1 p 1 ), p 3 /(1 p 1 ),...). Desse modo temos q j+1 q j /2 para todo j 1, que implica em termos 1/2 < q 1 1. A iteração deste argumento produz H(V U = u i ) < 1 + 1 2 (1 + 1 2 (1 + 1 (1 +... ))) = 2, (4) 2 o qual implica em termos H(V U) < 2 bits. Suponhamos agora que P U (u i ) = N i /2 r para números inteiros positivos N i e r, com N i um número ímpar. É suficiente considerarmos 3 N i < 2 r, que implica em r 2 e que o número, n i, de termos na expansão de N i /2 r como uma soma de potências distintas de 2, cujos expoentes são números inteiros negativos, satisfaz 2 n i r. Isto por sua vez implica que o número de termos na soma em (4) é n i 1 e portanto que esta soma é no máximo 2 2 (ni 2). Ficou assim provado o seguinte limitante, o qual para n = 2 implica H(V U) < 1 bit. Teorema 2: (Rocha-Massey [4]) Na substituição homofônica binária ótima de uma variável aleatória L- ária U tal que P U (u i ) possa ser expressa como uma soma contendo no máximo n potências inteiras negativas de 2 distintas, para i = 1, 2,..., L, a entropia condicional H(V U) do homofonema V dado U satisfaz H(V U) < 2 2 (n 2) se n > 1 e H(V U) = 0 se n = 1. AGRADECIMENTO bits, O autor agradece o apoio parcial recebido do Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq), Projeto 304696/2010-2. A. Teoria da Informação VI. APÊNDICE Neste apêndice apresentamos um breve resumo de teoria da informação, contento a definição de entropia, de entropia condicional, de entropia conjunta e de informação mútua média. Seja X uma variável aleatória discreta, assumindo valores no conjunto {x 1, x 2,..., x K } com probabilidade P X (x i ), 1 i K. Definição 1: A entropia de Shannon, associada à variável aleatória X, é definida pela expressão K H(X) = P X (x i )log P X (x i ), para P X (x i ) 0. (5) i=1 Como consequência da definição de entropia resultam as desigualdades 0 H(X) log K, com igualdade à esquerda quando um dos valores de X ocorre com probabilidade 1 e os demais valores têm probabilidade igual a zero, ou com igualdade à direita quando P X (x i ) = 1/K, 1 i K. Seja Y uma variável aleatória discreta, assumindo valores no conjunto {y 1, y 2,...,y J } com probabilidade P Y (y j ), 1 j J. Definição 2: A entropia condicional H(X Y ) é definida pela expressão H(X Y ) = K i=1 j=1 J P XY (x i, y j )log P X Y (x i y j ), para P XY (x i, y j ) 0. Definição 3: A entropia conjunta H(X 1 X 2... X N ) das variáveis aleatórias X 1, X 2,..., X N é definida pela expressão H(X 1 X 2... X N ) = K K... P(x i1,..., x in )log P(x i1,..., x in ), i 1=1 i N=1 para P(x i1,..., x in ) 0, na qual para simplificar a notação usamos P X1,...,X N (x i1,..., x in ) = P(x i1,...,x in ). A entropia conjunta H(X 1 X 2...X N ) pode ser expressa em função da entropia e da entropia condicional da seguinte forma H(X 1 X 2... X N ) = H(X 1 ) + H(X 2 X 1 ) + + H(X N X 1... X N 1 ). Definição 4: A informação mútua média I(X; Y ), entre as variáveis aleatórias X e Y, é definida pela expressão I(X; Y ) = K J i=1 j=1 P XY (x i, y j )log P Y X(y j x i ). (6) P Y (y j ) Usando a função entropia e a função entropia condicional, a informação mútua média entre as variáveis aleatórias X e Y pode ser expressa, equivalentemente, das seguintes formas I(X; Y ) = B. Prova da Proposição 1 H(Y ) H(Y X) = H(X) H(X Y ). A definição na Seção II de uma cifra não-expansiva é equivalente à condição que e H(Y n X n, Z) = 0 (cifragem) (7) H(X n Y n, Z) = 0 (decifragem) (8) para todo n S, quaisquer que sejam as estatísticas de X n e de Z. Assim, com a ajuda das identidades decorre que H(X n, Y n, Z) = H(X n ) + H(Z X n ) + H(Y n X n, Z) = H(Y n ) + H(Z Y n ) + H(X n Y n, Z), H(Y n ) = H(X n ) + H(Z X n ) H(Z Y n ). Porém a independência estatística entre a chave-secreta Z e a sequência de texto-claro X n é equivalente a H(Z X n ) = H(Z) de tal forma que

19 REVISTA DE TECNOLOGIA DA INFORMAÇÃO E COMUNICAÇÃO, NÚMERO 1, OUTUBRO 2011 H(Y n ) = H(X n ) + H(Z) H(Z Y n ) é verdadeira para todo n S. Assim, a desigualdade H(Z Y n ) H(Z), que se verifica com igualdade se e somente se Y n e Z forem estatisticamente independentes, implica H(Y n ) H(X n ) (9) para todo n S, com igualdade se e somente se Y n e Z forem estatisticamente independentes. A suposição de que X n é completamente aleatório nos leva a H(X n ) = n log D bits e assim implica H(Y n ) n logd. Por outro lado, sabemos que Y n consistindo de n variáveis aleatórias D-árias implica em termos H(Y n ) n log D e que a igualdade somente ocorre se Y n for completamente aleatório. Assim, se X n for completamente aleatório, a igualdade é verificada em (9), que implica tanto que Y n é completamente aleatório como que Y n e Z são estatisticamente independentes para todo n S. Porém, a completa aleatoriedade de Y n e a sua independência estatística de Z implicam na total independência estatística das m variáveis aleatórias que compõem Y m e sua independência estatística de Z para todo m com 1 m < n. Pelo fato do conjunto S conter números inteiros positivos arbitrariamente grandes, decorre que a sequência de texto-cifrado Y 1, Y 2, Y 3,... é completamente aleatória e estatisticamente independente da chave Z, que é a afirmação da Proposição 1. C. Prova da expressão (1) para cifras não-expansivas A partir das identidades H(X n, Y n ) = H(X n ) + H(Y n X n ) = H(Y n ) + H(X n Y n ), e lembrando que se X n for completamente aleatório implica que Y n também será completamente aleatório, portanto H(Y n ) = H(X n ). Resulta assim que H(Y n X n ) = H(X n Y n ) será verdadeira para todo n numa cifra nãoexpansiva quando a sequência de texto claro for completamente aleatória. REFERÊNCIAS [1] H. N. Jendal, Y. J. B. Kuhn and J. L. Massey, An information-theoretic approach to homophonic substitution, pp. 382-394 in Advances in Cryptology-Eurocrypt 89 (Eds. J.-J. Quisquater and J. Vandewalle), Lecture Notes in Computer Science, No. 434. Heidelberg and New York: Springer, 1990. [2] Ch. G. Günther, A universal algorithm for homophonic coding, pp. 405-414 in Advances in Cryptology-Eurocrypt 88, Lecture Notes in Computer Science, No.330. Heidelberg and New York: Springer, 1988. [3] C. E. Shannon, Communication theory of secrecy systems, Bell System Tech. J., vol. 28, pp. 656-715, Oct., 1949. [4] V. C. da Rocha Jr. and J. L. Massey, On the entropy bound for optimum homophonic substitution, Proc. IEEE International Symposium on Information Theory, Ulm, Germany, 29 June - 4 July, 1997, p.93. [5] D. R. Simões and V. C. da Rocha Jr., A versatile universal homophonic coding scheme. Tenth International Symposium on Communication Theory and Applications, Ambleside, Inglaterra, 2009, págs. 1-6. [6] N. Abramson, Information Theory and Coding, McGraw Hill, 1963. [7] R.G. Gallager, Information Theory and Reliable Communications, New York: Wiley, 1968.