Upload
phungthu
View
217
Download
0
Embed Size (px)
Citation preview
Faculdade de Ciencia e Tecnologia
Curso de Engenharia Eletrica
PATRICIA LINS DE PAULA
Adocao de medidas de seguranca da informacao em
mensagens GOOSE em redes de automacao industrial de
subestacoes segundo IEC 62351
Salvador
2009
PATRICIA LINS DE PAULA
Adocao de medidas de seguranca da informacao em
mensagens GOOSE em redes de automacao industrial de
subestacoes segundo IEC 62351
Monografia apresentada ao Curso de Engenharia
Eletrica da AREA1, como requisito para a obtencao
parcial do grau de BACHAREL em Engenharia
Eletrica.
Orientador: Waslon Terllizzie Araujo Lopes
Doutor em Telecomunicacoes
Co-orientador: Daniel Pordeus Menezes
Mestre em Criptografia
Salvador
2009
Paula, Patrıcia Lins de
Adocao de medidas de seguranca da informacao em mensagens
GOOSE em redes de automacao industrial de subestacoes segundo
IEC 62351 / Patrıcia Lins de Paula - 2009
60.p
1. Telecomunicacoes. 2. Teoria da Informacao. I.Tıtulo.
CDD 521.7
CDU 621.391
PATRICIA LINS DE PAULA
Adocao de medidas de seguranca da informacao em
mensagens GOOSE em redes de automacao industrial de
subestacoes segundo IEC 62351
Monografia apresentada ao Curso de Engenharia
Eletrica da AREA1, como requisito para a obtencao
parcial do grau de BACHAREL em Engenharia
Eletrica.
Aprovado em 22 de dezembro de 2009
BANCA EXAMINADORA
Waslon Terllizzie Araujo Lopes
Doutor em Telecomunicacoes
Carlos Antonio Vieira Vasconcelos Junior
Mestre em Mecatronica
Artur Passos Dias Lima
Mestre em Telecomunicacoes
Dedico este trabalho aos futuros profissionais
de Engenharia Eletrica, instrumentos da
inspiracao, criatividade e motivacao da ener-
gia da vida, que prospera e progride o mundo.
Resumo
Redes integradas de automacao e controle distribuıdo sao largamente utilizadas
em ambientes industriais por permitir a interacao, controle, monitoramento e intervencao
nas plantas de processos, viabilizando o acompanhamento dos processos em tempo real
e garantindo menor tempo de resposta a intervencoes. Com a paulatina substitucao dos
algoritmos de criptografia de codigos fechados por protocolos abertos, os sistemas de au-
tomacao industrial, antes isolados e vulneraveis em varios aspectos de seguranca, como
ataques internos e externos, estao tambem sendo substituıdos por sistemas distribuıdos
(interconectados). Este trabalho visa apresentar conceitos basicos em criptologia, req-
uisitos de seguranca para sistemas interconectados, algoritmos de criptografia mais atu-
ais, conforme recomendacao da norma IEC 62351 para protecao de dados de mensagens
GOOSE, da IEC 61850, e incidentes em redes industriais; em seguida, serao apresentados
mecanismos para prevencao de ataques. O objetivo principal deste trabalho e apresentar a
adocao de medidas de seguranca da informacao em mensagens GOOSE a serem aplicadas
em redes de comunicacao industrial de subestacoes.
Palavras-chaves: Criptografia de chave publica. IEC 61850. IEC 62351. Protocolos de
seguranca. Seguranca da infomacao em redes industriais.
Abstract
Automation integrated networks and distributed control are widely used in
industrial environments by allowing interaction, control, monitoring and intervention in
process plants, for enable the monitoring of real-time processes and ensure shorter re-
sponse to interventions. With the gradual replacement of encryption algorithms code
closed for open protocols, the industrial automation systems, previously isolated and vul-
nerable in various aspects of security, such as internal and external attacks, they are
also being replaced by distributed systems (interconnected). This paper presents basic
concepts in cryptology, security requirements for interconnected systems, encryption al-
gorithms, according to the recommendations and solutions set out in IEC 62351 for data
protection GOOSE messages, standard IEC 61850, and most current incidents in indus-
trial networks, and then will be presented process control mechanisms to prevent attacks.
The main objective of this study is the adoption of measures for information security in
GOOSE messages to be applied in communication networks industrial substations.
Keywords: IEC 61850. IEC 62351. Information security in industrial networks. Public-
key cryptography. Security protocols.
Agradecimentos
Agradeco a Deus, pelas inspiracoes que me fizeram perseverar;
A meus pais, Daria e Luiz Sergio, pela compreensao, suporte, sobretudo emo-
cional, e amor incondicional;
A meu namorado Vinıcius, pela paciencia e companheirismo, frutos do amor
puro;
Ao Prof. Waslon Terllizzie, amigo e orientador deste trabalho, pelo suporte
tecnico e exemplo de etica e excelencia profissional;
Ao Daniel Pordeus, colega de empresa e co-orientador deste trabalho, pelas
discussoes tecnicas e comentarios valiosos, dignos de um especialista no assunto;
A todos os mestres e agentes facilitadores que contribuıram para minha con-
strucao intelectual e moral;
Ao IEEE, Instituto de Engenheiros Eletricistas e Eletronicos, pela sua missao
de colaborar para a engenharia de criacao, ao redor do mundo.
Sumario
Lista de Figuras 7
Lista de Tabelas 8
1 Introducao 9
1.1 Organizacao do Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2 Conceitos Basicos de Criptologia 14
2.1 Teoria da Informacao de Shannon . . . . . . . . . . . . . . . . . . . . . . . 18
2.2 A Cifra Padrao de Encriptacao de dados Avancado - AES (Advanced En-
cryption Standard) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3 Aspectos Gerais de Criptografia de Chave Publica e o Algoritmo RSA . . . 27
2.4 Algoritmo de Codigo de Autenticacao de Mensagens de Hash - (Hash Mes-
sage Authentication Code Algorithm - HMAC) . . . . . . . . . . . . . . . . 27
2.5 Algoritmo de Hash Seguro - (Security Hash Algorithm - SHA) . . . . . . . 29
2.6 Seguranca das Funcoes de Hash Criptografico e Codigos de Autenticacao
de Mensagens (MAC - Message Authentication Code) . . . . . . . . . . . . 32
2.7 Vulnerabilidades, ameacas e ataques de Seguranca da Informacao em redes
industriais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.8 Incidentes de seguranca da informacao em redes industriais . . . . . . . . . 37
2.9 Mecanismos de prevencao e combate a ataques (contramedidas de seguranca) 39
2.10 Gerenciamento de Chaves e Certificados . . . . . . . . . . . . . . . . . . . 41
2.11 Gerenciamento da Rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3 Seguranca da Informacao em mensagens GOOSE (Generic Object Oriented
Substation Event) - abordagem IEC TS 62351 44
4 Consideracoes Finais 52
5 Anexos 53
5.1 Artigo aprovado para o 10o Encontro de Engenharia Eletrica da Petrobras
intitulado “Estudo da Criptografia de Chave Publica aplicada a Sistemas
Operacionais Distribuıdos Industriais: Adocao de medidas de seguranca da
informacao em mensagens GOOSE em redes de automacao industrial de
subestacoes segundo IEC 62351 (seguranca para IEC 61850)”. . . . . . . . 53
Referencias Bibliograficas 54
Lista de Figuras
2.1 Processo simplificado de encriptacao e decriptacao de mensagens. . . . . . 15
2.2 Processo simplificado de criptografia de chave publica com fins de confi-
dencialidade (a) e autenticacao (b) do emissor. . . . . . . . . . . . . . . . . 15
2.3 Estrutura AES de encriptacao e decriptacao para um ciclo. . . . . . . . . . 23
2.4 Configuracao de uma S-box (matriz 4x4) e a substituicao de bytes; (a)
transformacao por substituicao de bytes e (b) transformacao por adicao de
chave da etapa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.5 (a) Transformacao de deslocamento de linhas e (b) transformacao de juncao
de colunas das Tecnicas de Confusao e Difusao na S-box [1]. . . . . . . . . 26
2.6 Algoritmo HMAC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.7 Estrutura geral da transformacao da funcao de hash criptografico SHA-512
(implementacao). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.8 Logica do processamento de um bloco de 1024 bits para o SHA-512 [1]. . . 31
2.9 Processo de Gerenciamento de Chaves (ciclo de vida). Contempla as fases
de geracao, distribuicao, armazenamento, uso, mudanca e destruicao de
chaves, sempre com o reinıcio do ciclo. . . . . . . . . . . . . . . . . . . . . 42
2.10 Ciclo contınuo do processo de seguranca da informacao. . . . . . . . . . . . 43
3.1 Matriz de relacionamentos entre a IEC 62351 e as normas IEC 60870 e 61850. 45
Lista de Tabelas
2.1 Parametros da cifra AES; tamanho da chave e do bloco da mensagem orig-
inal em palavras e bits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2 Comparacao entre os parametros das diversas versoes do algoritmo SHA [1]. 30
2.3 Quadro-resumo das ameacas e ataques de seguranca da informacao em
redes industriais relacionadas a confiabilidade e integridade. . . . . . . . . 36
2.4 Quadro-resumo das ameacas e ataques de seguranca da informacao em
redes industriais relacionadas a disponilidade e nao repudio. . . . . . . . . 37
3.1 Requisitos e medidas de seguranca previstas na IEC TS 62351. . . . . . . . 46
3.2 Tipos de mensagens GOOSE (esquerda) e alguns exemplos praticos (direita). 50
9
1 Introducao
Ate o advento da Internet e interconectividade de redes, era bastante corrente
a utilizacao de solucoes completamente isoladas em redes industriais (tambem conhecidas
como “ilhas de automacao” [2]); a partir de entao, tem sido uma tendencia crescente a
implementacao de conectividade neste tipo de sistemas, uma vez que e necessario dispor
de informacoes detalhadas, confiaveis e instantaneas para supervisao e monitoramento de
processos industriais [3]. Desta forma, a adocao de uma solucao eficaz para garantir a
seguranca da informacao e imprescindıvel para que junto com a conectividade nao haja
a vulnerabilidade das informacoes, tornando possıvel evitar a ocorrencia de sabotagens,
indisponibilidade de dispositivos e acessos indevidos (nao autorizados) as informacoes [4],
como os incidentes de seguranca da informacao em redes industriais [5, 6]. Por isso,
embora os equipamentos e dispositivos de uma subestacao, e.g., sejam projetados para
ter longa vida util, as falhas de seguranca da informacao sao crıticas para a continuidade
dos processos, justificando, portanto, a necessidade de criar um esquema criptografico
seguro, desenvolvendo cifras inquebraveis para os mais diversos invasores maliciosos e
provendo autenticacao da fonte [7]. Em particular, em sistemas de automacao industrial
[8] e interessante introduzir um esquema de autorizacao compartilhada, para prevenir
ataques internos, de forma que certo numero de usuarios participantes precise confirmar
o comando dado por um dos participantes, a fim de que seja executado.
As redes de automacao industrial compartilham algumas semelhancas com os
requisitos de seguranca da informacao de sistemas de informacao de escritorios, como
a importancia de preservar a integridade dos dados e disponibilidade, que representa
a garantia da continuidade da operacao, independente dos ataques; no entanto, possui
requisitos especıficos que precisam ser cumpridos, como o provimento de autenticidade,
controle de acesso e garantia de prioridade na entrega de pacotes de dados relacionados
com mensagens de alarme, e.g [9, 10].
Enquanto o impacto na disponibilidade ou integridade das informacoes, mesmo
que momentanea, pode prejudicar desde a competitividade da empresa no mercado ate
ser a responsavel por faze-la perder um grande negocio, de forma analoga, uma parada
de producao numa planta industrial ou interrupcao no fornecimento de energia para uma
carga crıtica tambem pode gerar prejuızos que impactem diretamente sobre os lucros
auferidos pela empresa; a interrupcao no trafego de dados geofısicos, e.g., para a area
de prospeccao e exploracao de pocos de petroleo, pode implicar numa perfuracao mal
planejada, que ira dispor de recursos financeiros, com a aquisicao, instalacao e disponi-
bilidade de centenas de equipamentos montados em uma infra-estrutura especial, alem
dos recursos humanos (dezenas de profissionais especialistas em geodesia, geofısica, ge-
ologia e as mais diversas engenharias). Isso ira impactar negativamente na vida util do
poco e provavelmente acelerar o processo de desgaste, corroborando para o baixo rendi-
mento da exploracao e vida util do poco, tornando inviaveis perfuracoes a curto prazo.
E comum comparar o impacto financeiro ou da imagem da empresa causado por uma
parada ou indisponibilidade temporaria dos sistemas com o investimento em seguranca
da informacao para preservar os requisitos anteriormente citados como imprescindıveis as
redes industriais.
Sendo assim, as unidades produtoras de uma industria sao claramente in-
fraestruturas crıticas, passıveis de ataques internos e externos. Entao, mais do que se
possa imaginar, a importancia da criptografia dos dados em redes de automacao indus-
trial nao se limita apenas a cifragem dos dados que circulam para evitar que o criptanalista
inimigo faca uma interceptacao e leia dados do tipo “disjuntor 874598 ligado”, que po-
dem nao ser nada relevantes; mas principalmente e justificavel por prevenir ameacas que
comprometam a integridade dos dados e confiabilidade das operacoes. Redes industriais
podem ser robustas, mas tecnicamente, em geral, sao fracas quanto a seguranca [8].
Esta implementacao de mecanismos de seguranca e apropriada as vantagens
operacionais da criptografia de chave publica, como a facilidade para o gerenciamento
de chaves e dificuldade para recuperacao da mensagem original dado o criptograma (o
que implica na complexidade do trabalho do criptanalista, que deve efetuar a fatoracao
de grandes numeros primos, considerada computacionalmente inexequıvel). Alem disso,
podem ser combinados os metodos de difusao e confusao previstos no Modelo de Crip-
tografia de Shannon [11, 12] para a construcao de cifras praticas, os quais permitem que a
mensagem cifrada tenha uma dependencia estatıstica da mensagem original desconhecida
para o criptanalista. E possıvel tambem que essa combinacao viabilize periodicas redis-
tribuicoes estatısticas dos seus bits, fazendo com que encontrar a chave secreta computa-
cionalmente e detectar os padroes dos algoritmos utilizados se torne uma tarefa bastante
ardua, visto que aparentemente nao se e apresentada nenhuma sequencia logica e nao se
10
dispoe de nenhuma pista que se esta no caminho correto. Estas tecnicas sao exemplificadas
a seguir.
Dada uma distribuicao estatıstica de bits:
X = x1; x2; x3; x4 (1.1)
Atraves da tecnica de confusao, e criado um criptograma o qual seja totalmente
descorrelacionado da mensagem original, de forma que o criptanalista, ao observar o texto
cifrado nao possa extrair a mensagem original:
Y = f(x1); f(x2); f(x3); f(x4) (1.2)
E atraves da tecnica de difusao, e criada uma redistribuicao estatıstica dos bits
no criptograma, de forma a complicar ainda mais a ardua tarefa do criptanalista:
Y = f(x2); f(x4); f(x1); f(x3) (1.3)
Existe uma serie de incidentes de seguranca publicados, inclusive no Instituto
Nacional de Padroes e Tecnologia (NIST - National Institute of Standards ans Technol-
ogy), que denotam arquiteturas inseguras, com ausencia de firewalls, vulnerabilidades
conhecidas publicamente de autenticacao de Controladores Logico-Programaveis (CLP),
softwares de Interface Homem-Maquina (IHM) e falhas no monitoramento em tempo real.
Estes incidentes indicam erro de projeto na especificacao dos requisitos mınimos de se-
guranca. O NIST tem um banco de dados intitulado Banco de Dados de Incidentes
de Seguranca Industrial (ISID - Information Security Incidents Database) que tem reg-
istrado o aumento dos incidentes com redes industriais com o passar dos anos; essas redes
conectam computadores que geralmente tem aplicacoes desenvolvidas de forma robusta e
confiavel, mas sem se preocupar muito com a protecao dos dados, ou possuem aplicacoes
que integram recursos de redes de escritorios, principalmente com a disposicao dos dados
via web, o que implica no excesso da informacao disponıvel e integracao a rede interna da
empresa, tornando-a mais vulneravel.
O desenvolvimento de um sistema criptografico usando curvas elıpticas e tambem
apropriado a encriptacao assimetrica, no caso de redes de automacao industriais, por
11
permitir uma implementacao de criptosistemas de chave publica mais rapidos, com um
tamanho de chave menor [1].
Sendo assim, a Criptografia, a qual pode ser definida como a ciencia de trans-
formar uma informacao legıvel para remetente e destinatario previamente definidos em
ilegıvel para acessos nao autorizados [13], e atualmente um pre-requisito indispensavel
para garantir a seguranca da informacao de redes abertas, a fim de aliar as funcional-
idades da interconectividade, sem por em risco a producao e os negocios, contudo nao
representa, definitivamente, a unica ferramenta disponıvel de seguranca [1, 13].
Os sistemas de automacao industrial, antes isolados e estaticos, com raras
modificacoes nas configuracoes gerais dos dispositivos e topologia da rede, tem a van-
tagem de nao ter a flexibilidade como um requisito essencial, e portanto sao evitadas
frequentes mudancas de permissoes como controle de acesso e regras, inclusive mudancas
de tecnologia; este tipo de redes deve ter uma longa vida util, com frequencia reduzida de
atualizacoes e interrupcoes da operacao para manutencao [2]. Estas caracterısticas, diante
da visao de seguranca da informacao, e preferıvel em relacao a constantes atualizacoes
e modificacoes automaticas, mas nao isenta a necessidade de implementacao de requisi-
tos de seguranca para sistemas interconectados e mecanismos para prevencao de ataques
(o que ratifica o diagnostico anterior); a estrutura estatica tambem reduz alertas falsos
provocados por intrusos [3]. Desta forma, justifica-se a adocao de um esquema de segu-
ranca eficaz, confiavel, mais protegido sobretudo a ataques internos, alem de intensificar
a protecao contra os riscos advindos da intervencao de acessos nao-autorizados, em todos
os nıveis; estas ameacas surgem com a combinacao de linguagens de programacao fracas,
geracao de pressupostos incorretos em relacao ao ambiente do sistema e erros inerentes a
intervencao humana.
Esta protecao dos sistemas deve incluir as estacoes de controle de operacao,
unidades de processos de producao, dispositivos de campo programaveis e componentes de
rede, como comutadores e roteadores. O desenvolvimento de controladores baseados em
redes Ethernet e protocolo TCP/IP - Transmission Control Protocol / Internet Protocol
ajuda a ampliar o horizonte para a utilizacao de arquiteturas mais abertas, cujas vanta-
gens vao desde a implementacao de meios mais atrativos de instalacao de dispositivos de
monitoramento remoto ate a facilidade de diagnosticar problemas, a partir do controle,
gerenciamento e organizacao da rede em camadas independentes da rede fısica [14].
12
Para a maior parte das companhias que trabalham com automacao industrial,
que lidam com a protecao, supervisao e monitoramento, controle e comando da producao,
um perıodo de instabilidade implica negativamente na habilidade para supervisionar a
planta de processos, e este fato pode ter consequencias desastrosas. Um gerenciamento
satisfatorio dos processos requer um entendimento claro das operacoes do sistema, das
infra-estruturas tecnicas utilizadas e um estudo dos impactos dos fatores de risco.
1.1 Organizacao do Texto
No capıtulo 2 sao apresentados conceitos basicos em criptologia, requisitos de
seguranca para sistemas interconectados, algoritmos de criptografia mais atuais e inci-
dentes em redes industriais.
No capıtulo 3 e abordado um resumo geral sobre Redes e Sistemas de Comu-
nicacao em Subestacoes, segundo a IEC 61850, e discutida a aplicacao dos algoritmos crip-
tograficos previstos na norma IEC 62351 para protecao de dados de mensagens GOOSE,
da IEC 61850.
No capıtulo 4 sao descritas as consideracoes finais do trabalho e as perspectivas
futuras do estudo relacionado ao tema deste trabalho.
13
14
2 Conceitos Basicos de Criptologia
Todo e qualquer indivıduo, a todo o momento, e emissor e receptor de in-
formacoes, i.e., alguem que frequentemente emite mensagens claras, originais ou texto
normal (plaintexts) para um ou varios receptores previamente definidos, os quais, por sua
vez, recuperam a mensagem original e interpretam-na. Quando esta informacao e trans-
mitida pessoalmente, e possıvel escolher algumas formas bem peculiares de preservar o
acesso da informacao apenas para os receptores desejados (falando em tom mais baixo,
e.g.), mas quando essa informacao e transmitida atraves de uma rede multiusuario, como
a Internet, e altamente recomendavel recorrer a algoritmos de criptografia (cryptography
algorithms) para proteger as mensagens [1, 13].
O processo de encriptacao se da basicamente da seguinte forma: a mensagem
original recebe uma especie de senha, que e uma chave de encriptacao (encryption key),
formando uma mensagem cifrada ou criptograma (ciphertext ou cryptogram), a qual e
ilegıvel para acessos nao-autorizados; ao chegar ao receptor, o mesmo utiliza uma chave
de decriptacao (decryption key) para recuperar a mensagem original (estas chaves nao sao
necessariamente diferentes). Durante o trafego de mensagens e esperado que criptanalistas
observem o fluxo de dados tentando recuperar mensagens claras atraves do conhecimento
do texto cifrado. Um esquema deste processo e mostrado na figura 2.1.
De uma forma geral, existem tres tipos de algoritmos de criptografia: chave sec-
reta (simetrico), chave publica (assimetrico) e hashing. No caso da criptografia simetrica,
os usuarios compartilham uma unica chave que deve ser mantida secreta, e por isso ex-
iste um esforco substancial para efetuar o gerenciamento das chaves (key management),
processo que inclui algumas etapas relativamente complexas (geracao, distribuicao, ar-
mazenamento, uso, mudanca e destruicao de chaves). Um dos algoritmos mais conhecidos
deste tipo de encriptacao e o Padrao de Encriptacao de Dados (DES - Data Encryption
Standard).
No caso da criptografia de chave publica, cada participante envolvido tem
uma chave secreta, que nao e compartilhada com nenhum outro usuario, e uma chave
publica, a qual todos tem acesso. Para o emitente enviar uma mensagem segura para um
Figura 2.1: Processo simplificado de encriptacao e decriptacao de mensagens.
dado participante, esta e encriptada utilizando uma chave publica, e entao o destinatario
decripta-a utilizando uma chave privada, e.g., RSA (Rivest-Shamir-Adleman), algoritmo
que leva as iniciais de seus desenvolvedores. Alem da confidencialidade, e possıvel ainda
obter autenticacao do emissor, quando a mensagem e encriptada com a chave secreta do
usuario e entao pode ser recuperada por qualquer receptor, de posse da chave publica.
Um esquema e apresentado na figura 2.2.
Figura 2.2: Processo simplificado de criptografia de chave publica com fins de confiden-
cialidade (a) e autenticacao (b) do emissor.
15
Por fim, o terceiro tipo de criptografia e a funcao de hash ou mensagem conden-
sada (“message digest”); ao contrario dos dois algoritmos anteriores, as funcoes de hash
criptografico podem ou nao envolver o uso de chaves (no caso do Codigo de Autenticacao
de Mensagens de Hash com o uso de chave, HMAC - Hash-keyed Message Authentication
Code, sao utilizadas chaves). A ideia dos algoritmos de hash e condensar uma mensagem
grande e aleatoria de forma a fixar seu tamanho. Este tipo de funcao calcula um teste de
verificacao por soma (checksum) de uma mensagem: se um checksum comum protege o
receptor de mudancas acidentais da mensagem, protegendo sua integridade, um checksum
criptografico protege o receptor de uma mudanca maliciosa da mensagem. Isso acon-
tece porque todos os algoritmos de hash criptografico sao cuidadosamente selecionados
por funcoes irreversıveis, i.e., dado um checksum criptografico para uma mensagem, e im-
possıvel recuperar a mensagem original a partir da mensagem condensada, e.g., Algoritmo
de Hash Seguro (SHA - Security Hash Algorithm) [1, 13].
Ao conjunto de mensagem cifrada, chaves e algoritmo de criptografia denomina-
se criptosistema (cryptosystem) e a capacidade de interpreta-lo, analise criptografica
(cryptanalysis). Juntas, a criptografia e a criptanalise formam a criptologia, que pode ser
definida como a ciencia das comunicacoes secretas [13]. O sistema criptografico (cifrado)
e um conjunto de transformacoes irreversıveis do espaco (conjunto de todas essas men-
sagens possıveis) de texto normal no espaco do criptograma, expresso matematicamente
por:
Y = F (X,Z) = FZ(X) (2.1)
Em que Y e o criptograma, FZ(X) e uma transformacao irreversıvel do espaco
de texto normal no espaco do criptograma, X e a mensagem original e Z e a chave [15].
O carater irreversıvel da transformacao implica que so e possıvel recuperar
a mensagem original a partir do criptograma, dado adicionalmente o conhecimento da
chave. Por isso, o criptanalista tem a ardua tarefa de descobrir a chave para interpretar
o texto plano.
Na extremidade receptora tem-se:
F−1(Y, Z) = F−1Z(Y ) = F−1Z (FZ(X)) = X (2.2)
16
Em que F−1(Y, Z) e a funcao inversa do espaco do criptograma no espaco do
texto normal, em funcao do criptograma e da chave.
Entre as varias vantagens da criptografia, destaca-se a capacidade de identi-
ficar o emissor das mensagens (autenticidade), que por sua vez possibilita o nao-repudio
do emissor sobre a autoria das mesmas; alem disso, a garantia de envio da mensagem orig-
inal ao receptor pre-definido sem alteracoes (integridade), alem do envio da mensagem
apenas para pessoas autorizadas a conhecer seu teor (confidencialidade) [13]. Contudo, o
objetivo principal da criptografia, seja utilizando a mesma chave secreta para cifrar a men-
sagem emitida e recebida (criptografia de chave secreta, simetrica ou convencional), seja
utilizando chaves diferentes, uma publica e outra privada (criptografia de chave publica
ou assimetrica), e alcancar a seguranca perfeita, i.e. estar certo de que mesmo que um
invasor intercepte a mensagem cifrada, sera impossıvel interpreta-la (indistinguishability),
ou, segundo [15], e o sistema no qual a mensagem original e o criptograma nao depen-
dem estatisticamente um do outro (nao se pode obter qualquer informacao a respeito da
mensagem original dado o criptograma). Alem disso, e preferıvel a utilizacao de cifras
computacionalmente seguras, que implica que admitindo a utilizacao maxima dos recur-
sos computacionais disponıveis, nao seja possıvel ainda assim decifra-la, o que na pratica
significa que nao e viavel para o criptanalista utilizar os recursos de que dispoe (computa-
cionais, financeiros, tempo) para quebrar a cifra (seja porque nao valera o esforco, seja
porque mesmo utilizando os recursos de que dispoe nao tera o exito desejado). Alguns
bancos utilizam tokens para acesso da conta bancaria pela Internet. Estes dispositivos
geram chaves randomicas de 8 caracteres que mudam a cada intervalo especificado de
tempo, muito curto (muitas vezes menos de 1 min), que devem ser informadas no site
apos a informacao da senha para acesso web. Para o criptanalista encontrar esta chave
por forca bruta, existem 108 possibilidades para serem testadas em menos de 1 min; fato
que a depender da potencia computacional de se disponha, pode fazer com que nao se
obtenha o exito desejado.
Neste ınterim, a chave e considerada a unica peca da informacao verdadeira-
mente privada e secreta; assim, admite-se que e impossıvel decodificar uma mensagem
sem conhecimento de sua chave.
17
2.1 Teoria da Informacao de Shannon
Um sistema de comunicacao pode ser definido como um aparato desenvolvido
com o objetivo de realizar a transmissao de sinais, seja voz ou dados, modulados por uma
portadora em banda basica, de um ponto a outro. A informacao transmitida tem um
limite [11] e e interessante que a mensagem transmitida seja tao curta e precisa quanto
possıvel, dimensionada de forma a torna-la inteligıvel para o receptor e imune a alteracoes
que firam a integridade da mesma [15].
E necessario conhecer os padroes naturais, embasados em modelagens matematicas,
de forma que sejam respeitados os limites mınimos para a informacao, como sera visto a
seguir.
Um primeiro conceito muito importante e a entropia. Do ponto de vista da
termodinamica, ela e definida em sua segunda lei, como uma medida do grau de desor-
dem de uma grandeza, e.g., se um copo de vidro escapa dos cuidados de uma pessoa e,
submetido a forca da gravidade, se estracalha em pedacos no chao, existe uma perda de
energia util, i.e., que pode ser convertida em trabalho, o qual seria capaz de recuperar
todos os estilhacos e junta-los de maneira perfeita, de forma a recuperar o formato do
copo original e faze-lo voltar as maos desajeitadas que o deixaram cair. Estes conceitos
de processo reversıvel e irreversıvel, e de energia util, estao diretamente relacionados com
a variacao da entropia, que e matematicamente expressa por [16]:
∆s =
∫
dQ
T(2.3)
Em que ∆S e a variacao da entropia, dQ e o calor infinitesimal trocado entre
o sistema e o meio ambiente e T e a temperatura do sistema.
Num sistema isolado, praticamente estatico, i.e., adiabatico (em que nao ha
trocas de temperatura do sistema com o ambiente), isobarico (que mantem a pressao
constante) e isocorico (que preserva seu volume), as transformacoes sao quase completa-
mente reversıveis (processos cıclicos); mas segundo enunciado por Kelvin, como disposto
a seguir, nao existe nenhum processo que envolva trocas de calor que seja completamente
reversıvel: “E impossıvel a construcao de um dispositivo que, por si so, i.e., sem inter-
vencao do meio exterior, consiga transformar integralmente em trabalho o calor absorvido
de uma fonte a uma dada temperatura uniforme”. Assim, como a grande maioria dos
18
sistemas reais nao e completamente isolada, a maioria das transformacoes tem um maior
ou menor grau de irreversibilidade, o qual e calculado pela entropia.
No domınio da Teoria da Informacao, a entropia esta relacionada com a medida
do grau de incerteza de uma mensagem, a qual e inversamente proporcional a probabil-
idade. Quanto maior a probabilidade de ocorrencia de um evento, menor a incerteza
associada e menor a surpresa do receptor ao recuperar a mensagem original; dizer que
“amanha sera um novo dia”, a menos que amanha seja o fim do mundo, nao traz nenhuma
incerteza associada, caracterizando-se um evento perfeitamente preditıvel. Ja afirmar que
“os elefantes do zoologico de Salvador alcaram voo”e um evento ainda nao registrado
e divulgado e muito improvavel de ocorrer, portanto a surpresa do receptor ao ler esta
mensagem e maxima (probabilidade nula). A maxima incerteza se da quando todos os
eventos forem equiprovaveis.
Esta medida pode ser quantificada pela quantidade de informacao de uma
mensagem, a qual pode ser expressa por [15]:
I(sk) = log
(
1
pk
)
(2.4)
Em que sk e o k-esimo evento de uma fonte de informacao cuja variavel
aleatoria discreta e s e pk e a probabilidade deste evento ocorrer.
Desta definicao e intuitivo concluir que se a probabilidade de um evento ocorrer
e maxima, nao sera ganha nenhuma informacao. Alem disso, nao ha perda de informacao
[15].
A entropia tambem e uma medida do conteudo medio de informacao por
sımbolo-fonte, i.e., segundo o primeiro Teorema de Shannon, o Teorema de Codificacao
da Fonte, pode-se obter maior eficiencia nas comunicacoes caso seja retirada redundancia
da mensagem, aproximando o comprimento medio da mensagem o mais possıvel da en-
tropia. Esta obtencao e feita a partir da atribuicao de sımbolos-fonte curtos para palavras-
codigo muito frequentes (provaveis) e sımbolos-fonte longos para palavras-codigo pouco
provaveis. Para realizar a codificacao, e necessario estabelecer o tamanho medio da
palavra-codigo, matematicamente expresso por:
Lmedio =
K−1∑
k=0
pklk (2.5)
19
Em que lk e o tamanho da palavra-codigo atribuıda ao k-esimo sımbolo de
informacao, medido em bits. A determinacao para o valor mınimo de Lmedio e [11]:
“Dada uma fonte discreta secreta sem memoria, com entropiaH(S), o tamanho
medio da palavra-codigo Lmedio correspondente a qualquer esquema de codificacao de fonte
sem distorcao e limitado como Lmedio ≤ H(S)”[11].
Ou seja, o limite mınimo em referencia e a propria entropia.
Alem disso, o codigo fonte precisa produzir palavras-codigo na forma binaria
e ser unicamente decodificavel. Desta forma, a media de I(sk) ao longo de um dado
alfabeto-fonte S e dada por [15]:
H(S) = E[I(sk)] =
K−1∑
k=0
pkI(sk) =
K−1∑
k=0
pklog21
pk(2.6)
Sendo assim, a fonte de informacao apresenta um comportamento proba-
bilıstico e geralmente as sentencas ou fragmentos da mensagem sao estatisticamente in-
dependentes, i.e., nao se pode inferir nada sobre nenhum conteudo enviado no instante
imediatamente anterior dado o conhecimento de um conteudo imediatamente posterior
(isto esta relacionado com o conceito de informacao mutua.
Do conceito de quantidade de informacao, e possıvel definir um bit (binary
digit), como a seguir [15]:
I(sk) = log2(p−1k ) = −log2pk; k = 0, 1, ..., K − 1 (2.7)
Assim, se a probabilidade do k-esimo evento ocorrer e de 50% (um de dois
eventos possıveis e equiprovaveis), a quantidade de informacao e igual a 1 bit.
Contudo, a grandeza definida como entropia analisa apenas eventos singulares.
Deseja-se saber, e.g., qual a incerteza do criptanalista da mensagem original dado o con-
hecimento do texto cifrado. Entao, surge o conceito da entropia condicional.
De forma analoga a definicao da quantidade de informacao quando apresentada
a entropia, surge o conceito de informacao mutua, com relacao a entropia condicional,
que pode ser definida como a quantidade de informacao associada a incerteza de uma
mensagem inicial, dado o conhecimento de uma mensagem posterior, matematicamente
expressa por:
20
I(X ; Y ) = H(X)−H(X|Y ) (2.8)
Em que H(X) e a entropia da mensagem original X e H(X|Y ) e a entropia
condicional da mensagem plana, dado o conhecimento do texto cifrado Y .
Shannon [11, 12] ainda define uma outra grandeza que e a distancia da uni-
cidade. Intuitivamente, ela representa a quantidade de amostras de texto cifrado que o
criptanalista precisa analisar para minimizar a incerteza com relacao a chave de crip-
tografia. Formalmente, e definido como “o menor N tal que a entropia condicional
(H|Z, Y1, Y2, ..., YN) ≈ 0”[8], matematicamente expresso por:
N0 ≈H(Z)
rlog(Ly)(2.9)
Em que r e a redundancia percentual da informacao da mensagem, Ly e o
tamanho do alfabeto do criptograma e H(Z) e a entropia da chave Z. A redundancia r,
por sua vez, e expressa por:
r = 1−
(
H(X)
Nlog(Lx)
)
(2.10)
Em que H(X) e a entropia da mensagem original e Lx e o tamanho do alfabeto
desta mensagem.
Este conceito e importante para definir o conceito de cifra computacionalmente
segura citado anteriormente, pois quanto maior a distancia da unicidade, maior a quanti-
dade de dados que o criptanalista precisara interceptar para quebrar a cifra, ou, de outra
forma, maior a entropia condicional H(X|Y ).
2.2 A Cifra Padrao de Encriptacao de dados Avancado
- AES (Advanced Encryption Standard)
A proposta Rijndael AES e atualmente o algoritmo do AES e e um tipo de
cifra a qual o comprimento do bloco e o tamanho da chave podem ser especificados
independentemente para 128, 192 ou 256 bits. A especificacao do AES usa o mesmo
tamanho da chave das tres alternativas, mas limita o comprimento do bloco em 128 bits.
21
O numero de parametros AES depende do tamanho da chave (Tabela 2.1). Para esta
abordagem, sera assumida uma chave de comprimento 128 bits, o qual e o tamanho mais
comumente aplicado.
Tamanho da chave (palavras - bits) 4 - 128 6 - 192 8 - 256
Tamanho do bloco da mensagem (palavras - bits) 4 - 128 4 - 128 4 - 128
Tabela 2.1: Parametros da cifra AES; tamanho da chave e do bloco da mensagem original
em palavras e bits.
A cifra AES Rijndael foi concebida para oferecer resistencia contra os ataques
criptanalıticos conhecidos, ser portavel para diversos ambientes, sejam eles hardware ou
software, prover velocidade e ter projeto simplificado, requisitando poucos recursos de
memoria.
A figura 2.3 mostra a estrutura geral de encriptacao e decriptacao em AES. A
entrada dos algoritmos de encriptacao e decriptacao e um unico bloco de 128 bits. Este
bloco e representado numa matriz quadrada de bytes. Este bloco e copiado para uma
matriz de estado, a qual e modificada a cada etapa de encriptacao ou decriptacao. Apos a
etapa final, o estado e copiado para uma matriz de saıda. Do mesmo modo, a chave de 128
bits e representada como uma matriz quadrada de bytes. Esta chave e entao expandida,
em que cada palavra tem quatro bytes e o no total 44 palavras para uma chave de 128
bits [1].
Uma caracterıstica desta estrutura e que ela nao e uma estrutura de Feistel,
em que metade do bloco de dados e usada para modificar a outra metade do bloco de
dados e em seguida, as metades sao trocadas. Rijndael processa o bloco de dados inteiro
em paralelo em cada etapa, utilizando uma rede de substituicoes e permutacoes (SPN,
Substitution Permutation Network) [1].
A chave que e fornecida como entrada e expandida em uma serie de 44 palavras
de 32 bits. Quatro palavras distintas (128 bits) servem como chave para cada etapa [1].
Quatro estagios diferentes sao utilizados, um de permutacao e tres de substi-
tuicao: (a) substituicao de bytes; (b) deslocamento de linhas; (c) mistura de colunas; (d)
adicao de chave em cada etapa [1].
A estrutura e simples. Tanto para a encriptacao quanto decriptacao, a cifra
inicia com um estagio de adicao da chave da etapa, seguido por nove etapas de quatro
22
Figura 2.3: Estrutura AES de encriptacao e decriptacao para um ciclo.
estagios citados anteriormente, alem de uma decima etapa de tres fases (substituicao de
bytes, deslocamento de linhas e mistura de colunas) [1].
Somente na fase de adicao da chave de etapa e feito uso da chave. Por esta
razao, a cifra comeca e termina com esta fase. Qualquer outra fase, aplicada no inıcio ou
no fim, e reversıvel, sem conhecimento da chave [1].
As outras tres fases juntas (substituicao de bytes, deslocamento de linhas e
mistura de colunas) utilizam os conceitos de confusao e difusao; embora utilizem tecnicas
previstas no Modelo Criptografico de Shannon que dificultam o trabalho do criptanalista,
isoladamente nao oferecem seguranca, porque nao usam a chave de encriptacao [1].
Observando o ciclo de forma completa, nota-se que as operacoes sao calculos
de OU Exclusivo criptografico em um bloco, seguido de cifragem do bloco (os outros tres
fases), e assim por diante, figurando um esquema eficiente e seguro.
Ao contrario de outras cifras de blocos este algoritmo nao e identico ao de
criptografia, caracterizando uma caracterıstica particular do AES.
23
A ultima etapa das tres fases (substituicao de bytes, deslocamento de linhas e
mistura de colunas) e necessaria para tornar a cifra reversıvel.
O AES usa aritmetica no campo finito, com o seguinte polinomio irredutıvel
[1]:
m(x) = x8 + x4 + x3 + x+ 1 (2.11)
AES define uma matriz 16 x 16 de valores de bytes, chamado de S-box (Figura
2.4), a qual contem uma permutacao de todos os 256 possıveis valores de 8 bits. Cada
byte individual de estado e mapeado em um byte da seguinte forma: o mais a esquerda e
usado como um valor de linha e o mais a direita e usado como um valor de coluna. Estes
valores servem como ındices para a S-box para selecionar um unico valor de 8 bits de
saıda. Para esta tarefa, e utilizada a funcao de transformacao que se segue, que e funcao
de transformacao para cada bit de cada byte na S-box. Cada elemento ci e o i-esimo bit
do byte e o x indica que a variavel esta atualizada com o valor da direita [1].
bi = bi⊕
b(i+4)mod8⊕
b(i+5)mod8⊕
b(i+6)mod8⊕
b(i+7)mod8⊕
ci (2.12)
O sımbolo⊕
e usado para indicar a funcao “ou exclusivo”(XOR - Exclusive
OR) ou disjuncao exclusiva; esta´e uma operacao logica em dois operandos que resulta
em um valor logico verdadeiro se e somente se um dos operandos tiver valor verdadeiro.
Em criptografia, e usado para misturar funcoes.
A transformacao inversıvel de byte faz uso do S-box inversa mostrada na Figura
2.4. A S-box inversa e construıda atraves da aplicacao da inversa da transformacao,
seguido por tomar o inverso multiplicativo sobre Corpos de Galois (GF - Galois Field)
GF (28). A transformacao inversa e dada pela equacao seguinte, que representa a funcao
de transformacao inversa para cada bit de cada byte na S-box [1]:
bi = b(i+2)mod8⊕
b(i+5)mod8⊕
b(i+7)mod8⊕
di (2.13)
A S-box e projetada para ser resistente a ataques conhecidos de criptografia,
pois tem uma baixa correlacao entre os bits de entrada e os bits de saıda, e a saıda nao
pode ser descrita como uma funcao matematica simples da entrada [1].
24
Figura 2.4: Configuracao de uma S-box (matriz 4x4) e a substituicao de bytes; (a) trans-
formacao por substituicao de bytes e (b) transformacao por adicao de chave da etapa.
Naturalmente, a S-box deve ser inversıvel, contudo isto nao significa que e uma
funcao auto-inversıvel.
Na transformacao de mudanca de linha para a frente, o deslocamento de linhas,
a primeira linha de estado nao e alterada. Para o deslocamento para a segunda linha,
um deslocamento circular de 1 byte e executada; para a terceira linha, 2 bytes, e assim,
sucessivamente. A figura 2.5 ilustra este processo [1].
A transformacao inversa para mudanca de linha executa o deslocamento cir-
cular na direcao oposta para cada uma das tres ultimas linhas.
A transformacao de mistura de colunas e operada individualmente. Cada byte
de uma coluna e mapeado em um novo valor que e funcao de todos os quatro bytes nessa
coluna. A transformacao pode ser definida pela multiplicacao de matriz no estado seguinte
25
Figura 2.5: (a) Transformacao de deslocamento de linhas e (b) transformacao de juncao
de colunas das Tecnicas de Confusao e Difusao na S-box [1].
[1].
Cada elemento da matriz produto e a soma dos produtos dos elementos de uma
linha e uma coluna (adicoes e multiplicacoes individuais no domınio de corpos finitos).
Os coeficientes da matriz na equacao direta sao baseados em um codigo linear
com distancia maxima entre palavras de codigo, o que garante uma boa mistura entre os
bytes de cada coluna. A transformacao de mistura dos dados da coluna combinada com
a transformacao de mudanca de linha garante que, apos algumas rodadas, todos os bits
de saıda dependerao de todos os bits de entrada [1].
Como acontece com qualquer codificacao de bloco, a AES pode ser usado para
construir um codigo de autenticacao de mensagem.
Para a funcao de adicionar chave de etapa, a funcao inversa e identica, pois a
operacao XOR (Exlusive-OR) e igual a sua invers [1]a.
26
Esta funcao direta e tao simples quanto possıvel, e afeta todos os bits do
Estado. A complexidade da rodada de expansao da chave, alem da complexidade das
outras fases da AES, garantir a seguranca [1].
2.3 Aspectos Gerais de Criptografia de Chave Publica
e o Algoritmo RSA
O esquema RSA e o algoritmo mais largamente aceitavel como proposta de
implementacao geral para encriptacao de chave publica.
A mensagem clara M e cifrada (C) em blocos cujo valor binario e inferior a
n, com uma chave publica < e, n > e decriptada com uma chave privada < d, n >. Logo,
emissor e receptor precisam conhecer o valor de n. Matematicamente, expressa-se [10]
por:
C = Memod(n) (2.14)
M = Cdmod(n) = (Me)dmod(n) = Medmod(n) = M (2.15)
O algoritmo e estabelecido pelas seguintes premissas: dados p e q dois numeros
primos privados, escolhidos, calcula-se o produto n = pq publico, para entao calcular as
chaves d e e atraves da funcao totiente de Euller [1].
2.4 Algoritmo de Codigo de Autenticacao de Men-
sagens de Hash - (Hash Message Authentication Code
Algorithm - HMAC)
O Algoritmo de Autenticacao de Dados (Data Authentication Algorithm) con-
siste num exemplo de Codigo de Autenticacao de Mensagem (MAC - Message Authenti-
cation Code) baseado no uso desta cifra de blocos simetrica. Recentemente, tem crescido
o interesse em desenvolver um MAC derivado de uma funcao de hash criptografico. As
motivacoes de interesse sao [17]:
27
1. Funcoes de hash criptografico como SHA geralmente sao executadas mais rapida-
mente em software que em cifras de bloco;
2. A biblioteca de codigos de funcoes de hash criptografico esta largamente disponıvel.
O projeto HMAC foi desenvolvido para uso, sem modificacoes, das funcoes de
hash disponıveis. Em particular, funcoes de hash com bom desempenho em software e
para os quais o codigo e livre e largamente disponıveis sao as melhores aplicacoes [17].
Alem disso, HMAC permite uma facil substituicao de uma funcao de hash
embutida quando funcoes mais rapidas ou seguras sao requeridas, preserva a performance
original de uma funcao de hash sem incorrer em uma degradacao significativa, usa e
permite um gerenciamento de chaves mais simples e colabora para um bom entendimento
da analise criptografica da forca do mecanismo de autenticacao baseado em disposicoes
razoaveis sobre a funcao de hash embutida [17].
Estes objetivos sao importantes para a aceitabilidade deste algoritmo, o qual
trata a funcao de funcao de hash como uma “caixa-preta”. Contudo, ha pelo menos dois
benefıcios: primeiro, uma implementacao existente de uma funcao de hash pode ser usada
como um modulo na implementacao do HMAC (e um pacote pronto para usar, sem que
seja necessario operar modificacoes); ademais, se for desejavel trocar uma dada funcao de
hash numa implementacao HMAC, tudo que e preciso e remover o modulo da funcao de
hash especıfico.
A Figura 2.6 ilustra os passos a serem seguidos no algoritmo HMAC [18].
Figura 2.6: Algoritmo HMAC.
28
2.5 Algoritmo de Hash Seguro - (Security Hash Algo-
rithm - SHA)
Uma funcao de hash criptografico consiste em obter uma saıda de tamanho
finito, fixo, calculada dada uma entrada de tamanho arbitrario, e de difıcil recuperacao
da mensagem original. Alem disso, a modificacao de um bit sequer na entrada (mensagem
original) implica na modificacao de praticamente metade dos bits na mensagem de saıda,
de uma forma completamente aleatoria. Sua utilizacao se aplica principalmente para
protecao da integridade de dados [1].
A assinatura digital e uma das aplicacoes da criptografia de chave publica,
a qual visa prover a autenticacao do emissor. O uso do hash neste caso promove a
compactacao do codigo, fazendo com que sejam obtidas altas taxas de transmissao de
dados. O processo e feito a partir da encriptacao da mensagem original com uma chave
privada, provendo o nao-repudio do emissor. A partir disso, qualquer receptor pode ter
acesso a mensagem original utilizando a chave publica, e pode verificar a autenticidade
do emissor comparando a mensagem decriptada com o valor esperado [1].
O SHA foi desenvolvido pelo NIST e publicado como uma norma em 1993 e e
geralmente referido como SHA-1.
SHA-1 produz um valor hash de 160 bits. Em 2002, NIST produziu uma versao
revisada da norma, que definiu tres novas versoes do SHA, com valores de hash de 256, 384
e 512 bits, conhecidas como SHA-256, SHA-384 e SHA-512 (vide Tabela 2.2). Estas novas
versoes possuem a mesma estrutura de base e usam o mesmo tipo de logica e aritmetica
modular operacoes binarias como SHA-1. Em 2005, o NIST anunciou a intencao de
eliminar progressivamente a aprovacao do SHA-1 e passar para uma dependencia das
outras versoes SHA ate 2010. Pouco tempo depois, uma equipe de investigacao encontrou
uma vulnerabilidade no SHA-1; um ataque, atraves de duas mensagens separadas, quebrou
o mesmo SHA-1 com 269 operacoes, menos que as 280 operacoes que se pensava precisar
para encontrar uma colisao com um hash SHA-1.
Sera apresentada uma descricao do algoritmo SHA-512, pois as demais versoes
do mesmo algoritmo sao analogas.
O algoritmo SHA-512 tem como entrada uma mensagem com um comprimento
maximo de 2128 bits e produz como saıda uma mensagem condensada de 512 bits. A
29
(bits) SHA-1 SHA-256 SHA-384 SHA-512
Tamanho da mensagem condensada 160 256 384 512
Tamanho da mensagem < 264 < 264 < 2128 < 2128
Tamanho do bloco 512 512 1024 1024
Tamanho da palavra 32 32 64 64
Numero de passos 80 64 80 80
Tabela 2.2: Comparacao entre os parametros das diversas versoes do algoritmo SHA [1].
entrada e processada em blocos de 1024 bits. A Figura 2.7 mostra os processos envolvidos
para a transformacao da funcao de hash criptografico SHA-512 [1].
Figura 2.7: Estrutura geral da transformacao da funcao de hash criptografico SHA-512
(implementacao).
A transformacao ilustrada na estrutura geral da Figura 2.7 e composta das
seguintes etapas:
• Passo 1: Sao acrescentados bits de enchimento, na faixa entre 1 e 1024.
• Passo 2: Um bloco de 128 bits e anexado a mensagem. Este bloco e tratado como
um inteiro sem sinal de 128 bits (byte mais significativo primeiro) e contem o com-
primento da mensagem original (antes do preenchimento). O resultado das duas
30
primeiras etapas produz uma mensagem que e um multiplo inteiro de 1024 bits de
comprimento.
• Passo 3: E iniciado o armazenamento de dados de hash. Um buffer de 512 bits e
usado para armazenar resultados intermediarios e finais da funcao de hash. O buffer
pode ser representado por oito registos de 64 bits. Esses valores sao armazenados
no formato onde o byte mais significativo de uma palavra esta a esquerda da posicao
do byte. Estas palavras foram obtidas tomando os primeiros sessenta e quatro bits
da parte fracionaria da raiz quadrada dos oito primeiros numeros primos.
• Passo 4: Composicao da mensagem em blocos de 1024 bits. O coracao do algoritmo
e um modulo que consiste de 80 etapas, cuja logica esta ilustrada na Figura 2.8.
Figura 2.8: Logica do processamento de um bloco de 1024 bits para o SHA-512 [1].
Cada etapa tem como entrada um bloco de 512 bits armazenado no buffer.
Cada etapa apresenta um valor de hash intermediario, Hi−1. Cada t etapa faz uso de um
bloco de 64 bits Wt, cujo valor e derivado do bloco de 1024 bits a ser processado (Mt).
Estas palavras representam os primeiros 64 bits da parte fracionaria da raiz quadrada dos
primeiros oitenta numeros primos. A saıda da octagesimo etapa e adicionada a entrada
31
da primeira (Hi−1) para produzir Hi. A adicao e feita de forma independente para cada
uma das oito palavras no buffer [1].
2.6 Seguranca das Funcoes de Hash Criptografico e
Codigos de Autenticacao de Mensagens (MAC -
Message Authentication Code)
Assim como nos algoritmos de criptografia simetrica e de chave publica, exis-
tem ataques nas funcoes de hash e MAC em duas categorias: os ataques de forca bruta e
criptanalise.
A natureza dos ataques de forca bruta difere um pouco para as funcoes de hash
e MAC.
Nas funcoes de hash, sua forca contra ataques de forca bruta depende uni-
camente do comprimento do codigo hash produzido pelo algoritmo. Existem tres pro-
priedades desejaveis [1]:
• Caminho unico (one-way): Para qualquer codigo h dado, e computacionalmente
inviavel encontrar x tal que H(x) = h.
• Resistencia fraca a colisao: Para qualquer bloco dado x, e computacionalmente
inviavel encontrar y 6= x com H(y) = H(x).
• Resistencia forte a colisao: E computacionalmente inviavel encontrar qualquer par
(x, y) tal que H(x) = H(y).
Um ataque de forca bruta contra um MAC e um compromisso mais difıcil,
porque requer conhecimento das mensagens pares MAC.
Dada uma mensagem fixa x com n bits de codigo hash h = H(x), um metodo
de forca bruta de encontrar uma colisao e escolher uma sequencia aleatoria y de bits e
verificar se H(y) = H(x). O atacante pode fazer isso varias vezes offline, dependendo do
tamanho relativo da chave e do MAC [1].
Se um atacante puder determinar a chave MAC, entao e possıvel gerar um
valor MAC valido para qualquer entrada x. Suponha que o tamanho da chave e k bits
32
e que o atacante tenha um texto conhecido. Em seguida, o atacante pode calcular o
enesimo bit MAC no texto conhecido para todas as chaves possıveis. Pelo menos uma
chave e garantida para produzir o MAC correto, i.e., a chave valida que foi inicialmente
utilizada para produzir o texto conhecido par MAC. No entanto, se mais de uma chave e
encontrada para produzir o valor correto, e necessario testar os valores MAC [1].
Um criptanalista tambem pode trabalhar sobre o valor MAC sem tentar re-
cuperar a chave. Aqui, o objetivo e gerar um valor MAC valido para uma determinada
mensagem ou para encontrar uma mensagem que corresponda a um determinado valor
de MAC. Em ambos os casos, o nıvel de esforco e comparavel ao que, para atacar a uma
forma ou de propriedade de colisao fraca resistencia de um codigo de hash. No caso do
MAC, o ataque nao pode ser realizado fora de linha sem entrada adicional, o atacante vai
exigir texto escolhido pares MAC ou o conhecimento da chave [1].
Tal como acontece com os algoritmos de criptografia, ataques de criptanalise
em funcoes de hash e algoritmos de MAC tentar explorar alguma propriedade do algoritmo
para realizar algum ataque mais eficiente que nao seja uma busca exaustiva, sendo essa
uma maneira de medir a resistencia de um algoritmo de criptografico.
Nos ultimos anos, tem havido um esforco consideravel, e alguns sucessos, no
desenvolvimento de ataques de criptanalise em funcoes de hash. Para o entendimento
deste fato e necessario olhar para a estrutura global de uma funcao de hash tipicamente
segura. Esta estrutura, referida como uma funcao de hash iterativa e a estrutura da
maioria das funcoes de hash em uso atualmente. A funcao hash leva uma mensagem de
entrada e divisorias de tamanho fixo de blocos de b bits cada. Se necessario, o ultimo bloco
e preenchido com b bits. O ultimo bloco tambem inclui o valor do comprimento total da
entrada para a funcao de hash. A inclusao do comprimento torna a tarefa do adversario
mais difıcil; ou o oponente deve encontrar duas mensagens de igual comprimento que a
hash para o mesmo valor ou duas mensagens de diferentes comprimentos que, juntamente
com seus valores de comprimento, hash para o mesmo valor [1].
33
2.7 Vulnerabilidades, ameacas e ataques de Seguranca
da Informacao em redes industriais
Um ataque pode ser definido como uma violacao intencional de um objetivo
de seguranca [8, 10]. Para que ele possa surgir, e necessario haver uma vulnerabilidade,
i.e, a oportunidade de se causar uma ameaca, que por sua vez e definida como a tentativa
de um criptanalista encontrar e explorar uma vulnerabilidade do sistema para causar um
dano (este termo tambem se aplica a exploracoes incidentais ou nao-intencionais) [1].
As ameacas de seguranca sao potenciais ataques, sobretudo contra bens, que
podem ser fısicos, virtuais (eletronicos) ou humanos. Os danos podem resultar de quebras
de seguranca, falhas em equipamentos, negligencias de operadores e desastres naturais.
Alguns exemplos sao [1]:
• “Empregado desapontado”(disgruntled employer): empregados (geralmente oper-
adores) que estao desmotivados e insatisfeitos com o trabalho, e que detem conheci-
mento sobre o funcionamento dos sistemas instalados e da rede, podem causar mais
danos que hackers;
• Espionagem industrial: consiste na analise sistematica do trafego da rede ou do
monitoramento de certos componentes especıficos da rede, geralmente com o intuito
de causar danos (e a propria tarefa do criptanalista);
• Vandalismo: causa danos em partes especıficas ou nos sistemas como um todo, sem
necessariamente ter um ganho envolvido e sem medir as consequencias que podem
advir deste ato;
• Hackers: pessoas mal intencionadas cujo intuito e causar danos nos sistemas, que-
brando esquemas de seguranca. Para obter conhecimento sobre a rede, podem
combinar tecnicas de monitoramento do trafego da rede e engenharia social.
Falhas de seguranca sao crıticas para garantir a continuidade das operacoes e
podem ser evitadas com o monitoramento do desempenho dos equipamentos e alarmes.
Falhas em equipamentos sao as ameacas mais frequentes em redes industriais,
que afetam diretamente a confiabilidade. O monitoramento do desempenho dos equipa-
34
mentos, previsao de falhas e deteccao de anormalidades em tempo real podem agir pre-
ventivamente para evitar impactos negativos na rede [1].
A negligencia dos operadores da rede e uma ameaca muito relevante e inerente
as redes industriais, por permitir facil acesso de pessoas nao-autorizadas simplesmente
por deixar “as portas abertas”ou pelo emprestimo de chaves e senhas. A negligencia
pode advir da complacencia, por considerar equivocadamente que nao haveria interesse de
ninguem em invadir a rede e sabotar o funcionamento dos equipamentos; da indolencia, por
nao considerar importante seguir os procedimentos basicos de seguranca da informacao,
como proteger chaves e senhas do conhecimento de pessoas nao autorizadas; ou ainda da
irritacao, visto que na visao de alguns operadores, as medidas de seguranca que precisam
ser adotadas acabam afetando o bom desempenho da supervisao dos processos [1].
Os desastres naturais, embora nao estejam diretamente ligados com acoes hu-
manas, sao fenomenos naturais, como tempestades e terremotos, que acabem dissemi-
nando falhas operacionais e gerando oportunidades de ataques, como vandalismo e ter-
rorismo.
Existem varios tipos de ataques a redes industriais, causados por ameacas
deliberadas; estes ataques sao geralmente motivados por benefıcios financeiros ou socio-
polıticos para os atacantes. Alguns exemplos sao [1]:
• Negacao de Servico (Denial of Service, DoS): ataque que gera indisponibilidade do
sistema;
• Interceptacao (eavesdropping): viola a confidencialidade da comunicacao, intercep-
tando o criptograma em parte ou em sua totalidade;
• “Homem no meio”(man-in-the-middle): age entre os extremos da comunicacao como
se o atacante fosse o legıtimo emissor ou receptor; com isso, as mensagens podem
ser modificadas, violando a integridade da informacao;
• “Quebrar o sistema”: viola os sistemas de autenticacao e controle de acesso, fazendo
com que seja possıvel ao atacante controlar o sistema, alterando os objetivos de
confidencialidade e integridade;
• Vırus: codigo malicioso injetado por pessoa mal intencionada (hacker). Geralmente
a disponibilidade de um micro e afetada, tornando seu desempenho moroso por
consumir altas potencias de processamento de dados;
35
• Worms: tambem visa executar um codigo malicioso, sem necessitar de acao por
parte do usuario, explorando rapidamente as vulnerabilidades do sistema e contam-
inando todos os terminais interconectados;
• Roubo: os atacantes tomam dados ou chaves que nao estao autorizados para faze-lo.
Geralmente, a motivacao provem de ganhos financeiros;
• Terrorismo: ataque pouco usual, mas que gera danos quase sempre irreversıveis.
Como a maioria dos ataques, embora possam ser tomadas acoes preventivas, ninguem
espera quando pode acontecer. O objetivo principal e mostrar vulnerabilidades ex-
istentes e de que forma podem ser exploradas para destruir a rede. Esta geralmente
associado com motivacoes polıticas e ate religiosas. Compreende acoes mais sofisti-
cadas, preferindo atacar um equipamento especıfico, crıtico, do que simplesmente
explodir uma subestacao, e.g.
Todos os ataques descritos anteriormente geram prejuızos para o bom fun-
cionamento das redes, inclusive industriais (alteracao da integridade das informacoes,
indisponibilidade, danos a confidencialidade dos dados), podendo inclusive levar os pro-
cessos a serem interrompidos ou alterados para um comportamento indesejado, contudo
estas ocorrencias podem ser evitadas ou terem seu grau de risco diminuıdo pela adocao de
mecanismos de prevencao e combate a ataques. Uma sıntese e apresentada nas Tabelas
2.3 e 2.4 [17].
CONFIDENCIALIDADE INTEGRIDADE
Escuta nao autorizada de in-
formacoes
Violacao de autorizacao e integri-
dade de dados
Invasao da rede Repeticao de informacoes
Analise de trafego Modificacao nao autorizada das
informacoes
Interceptacao e copia nao autor-
izada de dados
Vırus, worms
Tabela 2.3: Quadro-resumo das ameacas e ataques de seguranca da informacao em redes
industriais relacionadas a confiabilidade e integridade.
36
DISPONIBILIDADE NAO-REPUDIO
Vırus, worms Negacao de servico
Negacao de servico Copia nao autorizada de dados
Falhas em equipamentos Violacao da autorizacao e integridade
Exaustao de recursos computacionais Falhas em equipamentos
Tabela 2.4: Quadro-resumo das ameacas e ataques de seguranca da informacao em redes
industriais relacionadas a disponilidade e nao repudio.
2.8 Incidentes de seguranca da informacao em redes
industriais
Os incidentes de seguranca da informacao em redes industriais passaram a se
tornar mais frequentes devido a interconexao de redes e a disponibilidade dos dados em
tempo real. Este fato tornou as redes de automacao industrial mais vulneraveis a ataques
externos e internos, o que pode ser comprovado pelas notıcias a seguir.
Abril, 2007, Um funcionario da Corporacao Internacional de Ciencia Aplicada,
em San Diego, estava trabalhando como administrador de sistemas na Operacao do Sis-
tema Independente da California. Frustrado com uma disputa nao resolvida com seu
empregador, este funcionario tentou interromper o funcionamento de um Data-Center no
Centro de Operacao, desligando a fonte de energia de emergencia [5].
Setembro, 2007, Um vıdeo do governo norte-americano mostra o potencial
destrutivo causado por hackers que tomaram o controle de uma parte crucial da rede de
potencia norte-americana: uma turbina industrial em rotacao frenetica sai do controle ate
paralizar o sistema de potencia.
O vıdeo, produzido pelo Departamento de Seguranca de Homeland, foi feito
apenas para uso oficial. Ele mostra comandos calmamente desencadeados por hackers
simulados, tendo como reacao violenta o tremor de uma enorme turbina e sua auto-
destruicao.
“Falar sobre bits e bytes nao tem o mesmo impacto que ver algo pegando fogo”,
disse Amit Yoran, formado em seguranca cibernetica nos EUA.
O ataque a rede eletrica nunca aconteceu ate hoje. A demonstracao gravada
foi conduzida por pesquisadores do Governo numa exploracao de uma vulnerabilidade
37
perigosa em computadores de companhias de utilidades, conhecidos como Sistemas de
Aquisicao de Dados e Controle Supervisorio (SCADA, Supervisory Control and Data Ac-
quisition). A falha na programacao foi fixada calmamente e os fabricantes deste tipo de
equipamentos se aoressaram para tomar medidas de protecao.
Especialistas em sistemas industriais admitem que intrusos necessitariam ter
um conhecimento especializado para executar ataques, inclusive a habilidade de desligar
sistemas de emergencia.
Conselheiros de telecomunicacoes do Presidente Bush concluıram anos atras
que certas organizacoes como servico de inteligencia estrangeira ou grupos terroristas
bem fundados “podem conduzir um ataque estruturado no sistema de potencia eletroni-
camente, com um alto grau de anonimato e sem sequer por o pe na nacao alvo de ataques”.
O Departamento de Seguranca de Homeland tem trabalhado com industrias,
especialmente companhias eletricas e nucleares, para garantir medidas de seguranca. A
industria de eletricidade ainda esta trabalhando em seus planos internos, mas o setor
nuclear ja implementou medidas de seguranca em todas as suas plantas, disse o Governo
[19].
Fevereiro, 2008, Uma companhia que se orgulhava em prover “sistemas de
protecao total contra fogo”desapareceu em chamas. A fumaca comecou no armazem e se
alastrou por outras edificacoes em Dartmouth, Nova Escocia. O departamento local de
combate a incendio conteve o fogo, mas as edificacoes e seu conteudo foram perdidos. Foi
configurado ataque a rede industrial [5].
O termo seguranca, para muitas pessoas, pode ser sinonimo de estabilidade
financeira, protecao contra incendio e desastres naturais, contra acessos nao autorizados
as propriedades, dentre outros. No entanto, o termo seguranca tambem esta associado com
a protecao da propriedade intelectual, informacao de negocios crıticos, pessoas, instalacoes
e bens em larga acepcao [5].
Marco, 2008, “Trabalhadores operando redes que prestam suporte a infraestru-
turas crıticas, como telecomunicacoes, sistemas de potencias e transporte, necessitam de
melhor treinamento sobre como gerenciar sistemas em caso de ataques”, disse um oficial
do Departamento de Seguranca de Homeland [5].
A proposta principal da estrategia defense-in-depth e simples: que nenhum
38
mecanismo isolado oferece protecao adequada contra a variedade de atacantes e suas
armas. Por esta razao, e melhor criar uma serie de camadas de protecao, desenvolvidas
para impedir o acesso as informacoes pelos atacantes e repelir, ou simplesmente faze-los
abandonar o alvo e procurar outros menos protegidos [5].
2.9 Mecanismos de prevencao e combate a ataques
(contramedidas de seguranca)
Embora os esquemas criptograficos estejam protegidos por chaves de crip-
tografia, eles sempre estarao propıcios ao surgimento de novas vulnerabilidades, mesmo
porque a potencia computacional cresce em escala exponencial com os anos e as tenta-
tivas de quebrar os codigos pelos criptanalistas nao cessam, sao motivados pelos ganhos
financeiros ou de fama que podem ser obtidos e tem a sua disposicao uma informacao
[10].
Desta forma, cumpre-se desenvolver mecanismos de prevencao e combate a
ataques cada vez mais frequentes e perigosos.
Algumas medidas de preservacao da confidencialidade em redes industriais sao
[17]:
• Aplicacao e gerenciamento de senhas, certificados de seguranca, incluindo a imple-
mentacao de sistemas de deteccao de intrusao, listas de controle de acessos, anti-vırus
e programas espioes;
• Adocao de autenticacao por controle de acesso baseado em regras bem definidas;
• Estabelecimento de identidade, qualidade e mapeamento;
• Implementacao de Infraestrutura de Chave Publica (PKI, Public-Key Infraestruc-
ture) e protocolos como IEC 62351;
• Implementacao de assinatura digital;
• Adocao de mecanismos de seguranca na camada de transporte, aplicacao de rede
virtual privada (Virtual Private Network, VPN), WPA2/802.11.i para redes sem fio;
• Aplicacao de encriptacao simetrica e assimetrica (algoritmos: AES, HMAC);
39
• Estabelecimento de credenciais, conversao e renovacao;
• Implementacao de tecnicas de gerenciamento de chaves;
• Reportagem de vulnerabilidades e incidentes de seguranca da informacao em ocorrencia
na rede.
Existem basicamente uma divisao em tres regioes de seguranca em uma rede
industrial, que permite de forma bastante didatica reconhecer os perımetros da rede e
entao definir qual a melhor protecao a ser adotada, de forma bastante eficaz. As regioes
sao as seguintes: (1) perımetro de seguranca fısica, a qual compreende as seis faces do
cubıculo onde estao instalados os equipamentos, dispositivos e instrumentos fisicamente;
(2) perımetro de seguranca eletronica, a qual compreende a borda logica da rede, que quase
sempre e controlada remotamente, mesmo que so a nıvel de supervisao, e; (3) domınio
de seguranca, que engloba os dois perımetros anteriores, servindo como perspectiva de
seguranca, base para aplicacao das medidas cabıveis [17].
Uma vez feita esta classificacao, e possıvel mensurar os riscos e dimensionar
as protecoes adequadas para as ameacas detectadas, como visto anteriormente.
Um dos maiores desafios de seguranca em redes industriais e protege-las contra
sabotagens provenientes de ataques internos a rede, pelos proprios operadores. Uma das
formas de prevencao a este tipo de ataque e adotar o esquema da Autorizacao Compar-
tilhada [8].
Sistemas de automacao industrial modernos tem geralmente um numero limi-
tado de operadores com funcoes e um conjunto de autorizacoes (permissoes) bem definidas
para configurar e operar o sistema de automacao ou um dispositivo de automacao [8].
Isto da poder a um usuario interno individual atacar o sistema, caso haja
interesse e caso tenha permissao para tanto, uma vez que tenha sido autenticado [8].
A adocao deste esquema de seguranca prove flexibilidade no gerenciamento
dos usuarios, evitando a adocao de um super codigo no sistema de controle de acesso.
Alem disso, uma vez que as permissoes dos usuarios estao previstas na lista de controle
de acesso, existe uma restricao de acoes para os usuarios, que e outro aspecto positivo do
esquema [8].
O fato do esquema requerer a autorizacao de um certo percentual dos outros
40
participantes, operadores da rede, cada vez que e dado um comando crıtico por um deles,
nao representa um aspecto negativo, pois os operadores ja estariam atentos ao monitora-
mento e supervisao da rede, e aquela acao, teoricamente, seria dada por qualquer um
deles.
O tipo de distribuicao escolhida em [8] e do tipo chave-publica Diffie-Hellman;
a ideia e manter no servidor de automacao uma chave mestra que e um hash criptografico
da chave armazenada na lista de controle de acesso, e quando um usuario desta rede solici-
tar um comando crıtico, o servidor de automacao requisita confirmacao dos participantes,
fazendo com que eles submetam sua ”cota”da chave mestra, confirmando a autorizacao
da operacao. Entao, o servidor de automacao recalcula o polinomio gerado pelas chaves
enviadas pelos usuarios e compara este valor com o valor armazendo na lista de controle
de acesso e enfim valida a operacao [8].
Outro desafio encontrado e a limitacao da largura de banda nos canais de
comunicacao neste tipo de redes, a qual restringe cada vez mais o tamanho do overhead,
fazendo com que a insercao de informacoes adicionais como encriptacao e troca de chaves
fique comprometida.
As comunicacoes sem fio sao largamente utilizadas em diversas aplicacoes,
mas precisam ser implementadas com muito cuidado, tanto para evitar interferencia
eletromagnetica que ira causar ruıdo nas comunicacoes (o que impacta diretamente na
disponibilidade das informacoes), quanto porque requerem, na maioria das vezes, respostas
rapidas e confiaveis.
A necessidade de nıveis cada vez maiores de integracao entre os equipamentos
interconectados na rede e os sistemas adotados tambem e um importante desafio; com
o crescimento de sistemas abertos, em substituicao dos proprietarios, vem tambem o
crescimento da complexidade de sistemas computacionais distribuıdos e integrados.
2.10 Gerenciamento de Chaves e Certificados
O gerenciamento de chaves e um processo fundamental para a garantia dos
requisitos de seguranca de uma rede industrial. Isto acontece porque e atraves da chave
que os participantes poderao executar comandos e operar a rede. E seu identificador
pessoal. A Figura 2.9 ilustra o ciclo de vida do processo de gerenciamento de chaves, que
41
sera detalhado a seguir.
Figura 2.9: Processo de Gerenciamento de Chaves (ciclo de vida). Contempla as fases de
geracao, distribuicao, armazenamento, uso, mudanca e destruicao de chaves, sempre com
o reinıcio do ciclo.
Um servidor de automacao ou de chaves e o administrador da geracao de
chaves, e muitas vezes tambem o responsavel por esta distribuicao. Estas chaves sao envi-
adas de forma encriptada por um canal inseguro da rede; o servidor contem as informacoes
das permissoes de acesso de todos os participantes da rede, atraves de uma identificacao
secreta individual. Uma copia destas chaves e armazenada no servidor de automacao para
autenticacao dos usuarios [8].
Durante a utilizacao das chaves em vigor, pode acontecer de ser necessaria
tanto a adicao quanto remocao de usuarios. O administrador do sistema pode criar uma
nova chave para um novo usuario sem necessariamente informar a todos os demais (no
esquema de Autorizacao Compartilhada e necessario reenviar as cotas de chaves para os
participantes que serao responsaveis pela autorizacao dos comandos crıticos). O admin-
istrador tambem pode cancelar a inscricao de um usuario do grupo, destruindo a chave
que era utilizada; para garantir que nao havera o reuso desta chave, e vinculado ao valor
da chave destruıda uma informacao de que nao e mais valida para autenticar usuarios [8].
O processo de renovacao de chaves e feito de forma randomica, atraves de um
calculo de hash criptografico, e entao o ciclo se reinicia [8].
42
2.11 Gerenciamento da Rede
O gerenciamento da rede e um processo cıclico e essencial para a composicao
da infraestrutura de informacao. Este esquema e ilustrado na Figura 2.10.
Figura 2.10: Ciclo contınuo do processo de seguranca da informacao.
A primeira fase e a de elaboracao de uma polıtica de seguranca, a qual consiste
em estruturar e adotar medidas de seguranca que garantam os requisitos mınimos de
seguranca para operacao de uma rede industrial. Ela e apenas o primeiro passo para o
gerenciamento de uma rede [17].
A seguir, e necessario implanta-la e verificar se todas as condicoes previstas
em projeto satisfazem as necessidades reais [17].
O terceiro passo e treinar os participantes que irao operar a rede na polıtica de
seguranca adotada. Conforme visto anteriormente, sem a colaboracao dos participantes
internos a rede, todos os mecanismos de prevencao de falhas e ataques aos esquemas de
seguranca adotados de nada valem [17].
Em seguida, sao auditadas as operacoes na rede de forma a verificar, a par-
tir de um controle interno, se estao sendo praticadas as medidas indicadas na polıtica.
Neste ponto, as nao confomidades encontradas (incidentes de seguranca e pequenas falhas,
inclusive sistemicas) podem ser detectadas e retificadas [17].
Por fim, e feita uma avaliacao para testar se todas as ameacas estao sendo
combatidas com esta polıtica, e se o esquema adotado age com eficacia [17].
43
44
3 Seguranca da Informacao em mensagens
GOOSE (Generic Object Oriented Substation
Event) - abordagem IEC TS 62351
Protocolos de comunicacao definem regras bem especıficas para a permuta de
informacoes em qualquer nıvel; e.g. entre equipamentos e entre estes e unidades remotas
para posterior envio a um centro de controle numa rede industrial. A protecao destes
dados e fundamental para garantir os requisitos de seguranca mınimos neste tipo de rede
[20].
Protocolos baseados na “seguranca pela obscuridade”devem incorporar medi-
das de seguranca visando evitar erros gerados de forma inadvertida, mau funcionamento
dos equipamentos, falhas de comunicacao e sabotagem deliberada. Criptosistemas basea-
dos em algoritmos secretos nao sao validos por muito tempo; a propria complexidade
do sistema de potencia contribui para a necessidade de implementar sistemas cada vez
mais robustos, flexıveis e integrados; substituir, renovar e redistribuir chaves (proposta do
gerenciamento de chaves) e mais facil do que efetuar periodicas revisoes e atualizacoes de
algoritmos inteiros, visando garantir a confidencialidade. Alem disso, algoritmos fechados
representam um relevante entrave para a padronizacao de protocolos de comunicacao e
esquemas de seguranca, que possui vantagens associadas, como a reducao de custos, inter-
operabilidade de equipamentos e todas as outras que advem de sistemas abertos [1, 20].
O gerenciamento da infraestrutura de informacao, inclusive sua protecao, por-
tanto, torna-se tao importante quanto o da infraestrutura do sistema de potencia, visto
que embora desenvolvidas de forma independente, estao interligadas. Junto com a au-
tomacao industrial, condicao essencial para a continuidade operacional e confiabilidade
dos sistemas instalados, vem a interconexao que faz com que vulnerabilidades na in-
fraestrutura de informacao influam diretamente na confiabilidade da infraestrutura do
sistema de potencia [20].
Neste ınterim, a adocao do protocolo IEC 61850 visa aumentar a produtividade
dos dispositivos e dos sistemas como um todo, reduzindo custos e justificando para a area
de Planejamento de Investimentos e Operacoes a adocao de um sistema de comunicacao
de dados defensavel. Visa ainda promover o aumento no desempenho da seguranca e
disponibilidade da rede de dados, alem de vantagem competitivas com outros protocolos
[20].
Como requisito de seguranca, um dos focos principais da serie IEC TS 62351,
em especial da parte 6, que trata de requisitos de seguranca para IEC 61850, e a auten-
ticacao, a qual e a chave de tres de quatro ameacas primarias de seguranca: confidencial-
idade, integridade e nao-repudio [17].
As medidas de seguranca previstas nesta norma permitem atacar os requisitos
definidos na Tabela 3.1, com as acoes relacionadas na mesma referencia. A Figura 3.1
mostra as subdivisoes da norma e sua interrelacao com a IEC 61850. Estes requisitos sao
contemplados nos algoritmos AES e SHA, recomendados pela norma em questao [20, 17].
Figura 3.1: Matriz de relacionamentos entre a IEC 62351 e as normas IEC 60870 e 61850.
Para a aplicacao do padrao para comunicacao em subestacoes, a aproximacao
com as atividades de engenharia representa um diferencial para a obtencao de exito, a par-
tir de quando se tem conhecimento dos detalhes tecnicos dos equipamentos e instalacoes.
Isso porque o conhecimento das funcoes dos dispositivos de automacao industrial que
interoperam de forma distribuıda e basico para a aplicacao do protocolo [20].
O protocolo IEC 61850 utiliza a tecnologia de orientacao a objeto para definir
uma modelagem de dados orientada a informacao e nao ao dispositivo nem ao proto-
45
REQUISITOS MEDIDAS DE SEGURANCA
Autenticacao Minimizar a ameaca de ataques o
tipo homem-no-meio
Minimizar acoes descuidadas de
empregados desapontados
Atraves de assinaturas digitais,
garantir apenas acesso autorizado
a informacao
Confidencialidade Autenticacao de chaves
Integridade Deteccao de falsificacao (men-
sagens falsas)
Monitoramento Prever alto grau de deteccao de
intrusao
Prever um recurso de monitora-
mento de carga
Prover disponibilidade de compo-
nentes do sistema de informacao
Tabela 3.1: Requisitos e medidas de seguranca previstas na IEC TS 62351.
colo, portanto, as funcoes dos dispositivos de uma subestacao podem estar alocadas em
equipamentos diferentes fisicamente, inclusive geograficamente distribuıdos e conectados
em rede [20].
Redes industriais antigas, as quais ainda nao sao compatıveis ou desenvolvi-
das segundo o protocolo IEC 61850, precisam fazer uso de Unidades Terminais Remotas
(UTR) para se conectarem a equipamentos, adquirir e enviar estes dados a controladores e
registradores, para posterior tratamento. Com a IEC 61850 surgiu a padronizacao de co-
municacao destes dispositivos de forma direta, rapida e confiavel, com o compartilhamento
de informacoes entre equipamentos digitais [20].
Neste novo cenario, os Dispositivos Eletronicos Inteligentes (Intelligent Elec-
tronic Devices, IED), i.e., dispositivos que incorporam um ou mais processadores com
a capacidade de receber, enviar ou controlar dados entre si ou de uma fonte externa,
como reles digitais, apresentam um horizonte praticamente ilimitado de funcionalidades
e aplicacoes compatıveis com o novo protocolo; os cabos de comando e controle estao
46
sendo definitivamente substituıdos por redes de comunicacao interconectando os disposi-
tivos. Outra caracterıstica e a nocao de nos logicos (funcionalidades), ao inves de tratar
de numero de dispositivos [20].
Sendo assim, as funcoes de automacao sao subdivididas em sub-funcoes ou nos
logicos, os quais por sua vez podem ser alocados em diferentes dispositivos logicos, que
estao localizados em dispositivos fısicos [20].
Com tal interconexao, as informacoes requeridas pelos varios subsistemas sao
praticamente as mesmas, tornando o tempo de resposta a intervencoes muito mais curto.
Neste protocolo sao especificados modelos de comunicacao do tipo cliente-
servidor e de comunicacao de eventos; o primeiro agrupa um conjunto de servicos orienta-
dos a realizacao de diversas acoes automaticas e de sincronismo. O segundo, implementa
as aplicacoes de protecao utilizando uma comunicacao multicast ponto a ponto [20].
Os arquivos de configuracao do sistema geralmente estao localizados em local
diferente dos arquivos de controle, coleta de informacoes e operacao do sistema. Cada
dispositivo tem um endereco unico e especıfico [20].
Esta realidade estimula a reutilizacao e disponibilidade de recursos, ao passo
que se da o compartilhamento de informacoes em tempo real entre os varios subsistemas.
Isso se traduz em compatibilidade com o operador local, operador do centro de controle,
equipe de pos-operacao, de medicao de campo, manutencao e protecao [20].
Detectar falhas num sistema isolado e uma tarefa ardua, possıvel apenas com
o conhecimento completo do sistema, incluindo todos os seus elementos, alem do conhec-
imento do funcionamento integrado; na maioria dos casos, e necessario testar os equipa-
mentos, dispositivos ou instrumentos um a um, ate identificar o foco do problema. Num
sistema interconectado, monitorado e automatizado, o encargo das verificacoes e do con-
trolador microprocessado, que identifica os equipamentos e fornece o log de eventos. Neste
ponto, a adocao da IEC 61850 ainda oferece uma vantagem adicional: o historico de even-
tos e uma das funcoes mais basicas dos IED e a documentacao muito mais facil e rapida
[20].
A IEC 61850 vem entao trazer a grande vantagem da padronizacao; a uti-
lizacao de um modo de comunicacao padrao e justificada, entre outros motivos, pois a
grande oferta de dispositivos e protocolos de comunicacao, em sua maioria proprietarios,
47
gera complexidade e custos para a montagem, gerenciamento e manutencao dos sistemas.
Ao utilizar a rede Ethernet para redes industriais esta norma visa prover estabilidade e
confiabilidade para um tipo de rede que ainda deve durar muitos anos.
A norma e dividida em varias partes, tal como segue [20]:
• Parte 1 (Introducao e Visao Geral): introducao e visao geral da norma;
• Parte 2 (Glossario): colecao de termos;
• Parte 3 (Requerimentos Gerais): requerimentos de qualidade (confiabilidade, sus-
tentabilidade, disponibilidade do sistema, portabilidade, seguranca); condicoes am-
bientais; servicos auxiliares; outros padroes e especificacoes;
• Parte 4 (Gerenciamento do Projeto e Sistema): requerimentos de engenharia (classi-
ficacao de parametros, ferramentas de engenharia, documentacao); ciclo de vida do
sistema (visoes do produto, atualizacoes); garantia de qualidade (responsabilidades,
testes do equipamento);
• Parte 5 (Requerimentos de comunicacao para modelos de dispositivos e funcoes):
requerimentos basicos; abordagem de nos logicos; enlaces de comunicacao logicos;
performance; funcoes; cenarios dinamicos (requerimentos do fluxo de informacoes e
condicoes operacionais diferentes);
• Parte 6 (Linguagem de descricao de configuracao para comunicacao em subestacoes
eletricas relacionadas a IEDs): visao geral do processo de engenharia de sistemas;
definicao do sistema e configuracao de parametros de troca de arquivos, contendo:
descricao esquematica primaria, descricao da conexao de comunicacao, capacidade
de IEDs; alocacao de nos logicos de IEDs em sistemas primarios;
• Parte 7-1 (Estrutura de comunicacao basica para subestacao e alimentador, princıpios
e modelos): princıpios e modelos de comunicacao;
• Parte 7-2 (Estrutura de comunicacao basica para subestacao e alimentador, resumo
de interface de servico de comunicacao): especificacao do resumo de servicos de
comunicacao; modelo da estrutura de banco de dados do dispositivo;
• Parte 7-3 (Estrutura de comunicacao basica para subestacao e alimentador, classes
comuns de dados): classes de dados comuns e atributos relacionados;
48
• Parte 7-4 (Estrutura de comunicacao basica para subestacao e alimentador, classes
de nos logicos e dados compatıveis): definicao de classes
• Parte 8 (Mapeamento de servico de comunicacao especıfico, para MMS): mapea-
mento de servicos comumente utilizados para comunicacao na subestacao por com-
pleto;
• Parte 9 (Mapeamento de servico de comunicacao especıfico, Valores simples sobre
enlace): mapeamento de servicos utilizados para transmissao de valores analogicos
simplificados;
• Parte 10 (Teste de Conformidade): procedimentos de testes de conformidade; teste e
garantia de qualidade; documentacao requerida; teste de conformidade relacionada
ao dispositivo; certificacao de testes de facilidades, requerimentos e validacao dos
testes de equipamentos.
Optar por esta padronizacao traz diversos benefıcios, tais como: o forneci-
mento de solucoes para a maior parte das limitacoes dos protocolos existentes; o fato de
que diversos fornecedores mundiais participaram da elaboracao e revisao da norma, tor-
nando possıvel a permanencia da mesma por muito tempo atual, a necessidade de menor
quantidade de dispositivos para intercomunicacao [20].
Este processo de engenharia integrado visa promover o alto padrao de disponi-
bilidade de redes industriais e uma nova opcao de projeto para fornecedores de dispositivos
ligados a telemetria e telecontrole [20].
Entre as caracterısticas da rede estao: a redundancia da grande maioria das in-
terconexoes, a disponibilidade das conexoes entre dispositivos somente quando ha trafego
de dados e o fato da unidade de gerenciamento e controle da rede funcionar como uma
especie de servidor de automacao, diretamente conectado aos dispositivos [20].
A manutencao da integridade de dados visa preservar a confiabilidade na trans-
missao de dados, melhorando a deteccao de erros e prevenindo falhas; isso se traduz na
deteccao de erros na transmissao no ambiente ruidoso da subestacao; recuperacao de da-
dos por um enlace muito congestionado, e.g., alem do suporte operacional para enlaces
atraves da redundancia de equipamentos.
As condicoes ambientais devem ser consideradas no projeto de implementacao
da IEC 61850, no que tange as influencias climaticas, mecanicas e eletricas que possam
49
influenciar no controle e monitoramento de processos. Adicionalmente, quando um dis-
positivo faz parte de outro equipamento na subestacao, este ultimo tambem pode ser
considerada uma condicao ambiental [20].
As mensagens de evento da subestacao orientadas a objeto (GOOSE) sao o
padrao mais comum de comunicacao definida no protocolo IEC 61850, conforme ilustra a
Figura 3.2.
1a - Mensagens rapidas (trip) Disjuntor A aberto
1b - Mensagens rapidas No-break na bateria
2 - Mensagens de velocidade media QGBT 1 Fase R 217 V
3 - Mensagens de velocidade baixa Evaporador 1 Umidade 55%
4 - Mensagens de dados Transdutor A Fase R 219 V; Fase S 221 V
5 - Funcoes de transferencia de arquivos Log de alarmes
Tabela 3.2: Tipos de mensagens GOOSE (esquerda) e alguns exemplos praticos (direita).
Este tipo de mensagem e do tipo broadcast que trafega na Rede Local (LAN -
Local Area Network) com a identificacao do IED transmissor. Nao ha endereco de destino.
Se o IED transmissor falhar ou perder o contato com a LAN, todos os possıveis receptores
ficarao sem a atualizacao periodica dos dados, fazendo com que seja gerado um alarme.
Assim que o IED transmissor consegue restabelecer a comunicacao, o sistema transmite
a sequencia de alarmes [20, 17].
Desta forma, verifica-se a criticidade das mensagens GOOSE e a necessidade de
garantir a entrega integra destas mensagens (sua disponibilidade) e da qualidade do servico
(QoS), protegendo os dados transmitidos a partir da adocao de esquemas criptograficos.
A base da adocao destas medidas de seguranca da informacao e a autenticacao.
O algoritmo para geracao da chave de autenticacao e baseado na geracao de um MAC
reproduzıvel. O MAC deve ser gerado atraves de um calculo de hash SHA-256 (mensagem
condensada de 256 bits). A garantia da integridade das mensagens e feita com base na
limitacao da aceitacao de mensagens apenas por usuarios autenticados na rede, o que
garante o nao repudio do emissor [20, 17]. [17].
O valor do hash deve ser assinado digitalmente, i.e., o conteudo e primeiro
reduzido a uma mensagem condensada, que depois e criptografada com a chave privada
RSA do signatario do conteudo [17].
50
Observa-se finalmente que a interoperabilidade e um ponto marcante, mas
ainda em aperfeicoamento; a maioria dos fornecedores ainda esta em fase de adaptacao
ao novo padrao.
Os sistemas de automacao que utilizam o protocolo IEC 61850 podem trocar
mensagens na direcao horizontal, ao nıvel de bay ou vertical, ao nıvel de estacao. As
mensagens ao nıvel de bay tem criticidade maior que as mensagens ao nıvel de estacao.
As mensagens GOOSE e GSSE (Generic Substation State Event) pertencem a classe de
mensagens de maior criticidade, tendo em vista que necessitam maior requisito de tempo
e de seguranca por transportar informacoes de trip, intertravamento, dentre outras, dire-
tamente ligadas a confiabilidade e continuidade de operacao deste tipo de rede industrial
[20].
51
52
4 Consideracoes Finais
Pode-se concluir do presente trabalho que a adocao de esquemas criptograficos
em redes industriais de subestacoes e imprescindıvel para garantir o atendimento a req-
uisitos basicos de seguranca da informacao.
Os algoritmos indicados na IEC 62351 utilizam modelos dispostos na Teoria
da Informacao e sao compatıveis com o esperado para o atendimento aos requisitos de
seguranca da informacao de redes industriais. A IEC 62351 define a adocao de certas
medidas de seguranca descritas, para os equipamentos e dispositivos definidos na propria
norma, com o objetivo de preservar a integridade, confiabilidade, autenticidade e nao-
repudio de mensagens. Ainda, recomenda a utilizacao da criptografia de chave publica
e hash criptografico como solucao potencialmente eficaz na seguranca da informacao de
redes integradas de automacao e controle distribuıdo.
Alem disso, o sistema de comunicacao para mensagens GOOSE deve promover
confiabilidade e alto desempenho, por se caracterizar um fluxo de dados relacionado as
funcoes de protecao, intertravamento, automatismo, comandos e monitoracao, devendo
portanto ser priorizado.
Espera-se que os proximos trabalhos relacionados com o tema estudado seja
feita a aplicacao pratica dos esquemas seguros da IEC 62351 em subestacoes, conformes
com a IEC 61850, incluindo a execucao de testes, simulacoes e analise de resultados.
E oportuno que sejam exploradas as vulnerabilidades dos esquemas adotados,
para garantir confiabilidade da Polıtica de Seguranca adotada.
Alem disso, outra perspectiva para dar continuidade a este estudo e desen-
volver e verificar eficacia solucoes adicionais a criptografia para garantir os requisitos de
seguranca da informacao, como a adocao de Polıticas de Seguranca e conscientizacao de
operadores.
53
5 Anexos
5.1 Artigo aprovado para o 10o Encontro de Engen-
haria Eletrica da Petrobras intitulado “Estudo
da Criptografia de Chave Publica aplicada a Sis-
temas Operacionais Distribuıdos Industriais: Adocao
de medidas de seguranca da informacao em men-
sagens GOOSE em redes de automacao indus-
trial de subestacoes segundo IEC 62351 (segu-
ranca para IEC 61850)”.
Referencias Bibliograficas
[1] William Stallings. Cryptography and network security: principles and practice.
Prentice-Hall, 1999.
[2] Gerard Delmee. Instrumentacao Industrial. Editora Interciencia, Brasil.
[3] Reijo Savola. Information security management in industrial automation systems.
The Institute of Electrical and Electronics Engineers, Inc.
[4] Warwick Ford and Brian O Higgins. Interconectivity: public-key cryptography and
open systems interconnection. The Institute of Electrical and Electronics Engineers,
Inc.
[5] Cyber security: safety instrumented systems, 5 incidents.
[6] A defense-in-depth security strategy protects air liquide against hackers.
[7] Stamatios Kartalopoulos. A primer on cryptography in communication. The Institute
of Electrical and Electronics Engineers, Inc.
[8] Dacfey Dzung and Celine Briod. Shared authorization in industrial automation sys-
tems using threshold cryptography.
[9] Othman O. Khalifa, MD Rafiqul Islam, S. Khan, and Mohammed S. Shebani. Com-
munications cryptography.
[10] Dacfey Dzung and Celine Briod. Security for industrial communication systems.
[11] Claude Shannon. A mathematical theory of communication.
[12] Claude Shannon. A mathematical theory of secrecy systems.
[13] Fred Piper. Cryptography: a very short introduction. Oxford, 2002.
[14] Gunter Senfter. Tecnologia iec 61850: desafios e vantagens de sua implantacao.
[15] Simon Haykin. Sistemas de comunicacao analogicos e digitais. Bookman, 2004.
[16] P. M. C. Oliveira. Facilitando a compreensao da segunda lei da termodinamica.
[17] IEC TS 62351. Power system management and associated information exchange ?
Data and communications security. International Electrotechnical Comission, 2007.
[18] E. C. Gurjao. Aspectos de comunicacao da norma iec 61850.
[19] Us video shows hacker hit on power grids.
[20] IEC 61850. Communication networks and systems in substations. International Elec-
trotechnical Comission, 2004.
55