criptseg1-2

Upload: inspetor-miranda-james

Post on 03-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/28/2019 CriptSeg1-2

    1/43

    Criptografia e

    Segurana na

    Informtica

    Pedro A. D. Rezende

    Cincia da Computao

    Universidade de Braslia

  • 7/28/2019 CriptSeg1-2

    2/43

    No existe nada de demonaco na tcnica,mas existe o mistrio da sua essncia.

    a essncia da Tcnica,

    enquanto destino de revelao,

    que o perigo

    Martin Heidegger, 1995

    citado em Cibercultura, de Andr Lemos

    Editora Meridional, Porto Alegre, 2002

    Quem tem ouvidos, oua o que o Esprito diz s igrejas.Ao vencedor darei um prmio: o man escondido.

    Darei tambm uma pedrinha branca a cada um.

    Nela est escrito um nome novo,

    que ningum conhece.

    S quem recebeu.

    Apocalipse de So Joo, Captulo 2 Versculo 17

    i

  • 7/28/2019 CriptSeg1-2

    3/43

    ndice0: Introduo...............................................................ii

    1: Fundamentos............................................................ 1

    2: Elementos de Protocolos.......................................213: Protocolos Importantes.........................................34

    4: Tcnicas Criptogrficas........................................59

    5: Algoritmos Criptogrficos Importantes..............79

    6: Enfoques para Implementao...........................123

    7: Exemplos de Aplicaes......................................155

    Apndices........................................................A, B, C

    Notao -

    Conceito: Negrito

    Explicao; Termo a definir; Anglicismo: Itlico

    Descrio de algoritmo: Font Arial

    Objeto matemtico; Cdigo fonte em C: Font Courier

    Canal de comunicao digital inseguro:

    Canal presumido seguro (sigilo e/ou integridade):

    Passo presumido executado antes do protocolo:

    Ponto de confiana para algum agente do protocolo:

    Conjunto das sequncias de smbolos do alfabeto : ()*

    Para todo...; Existe...: ;

    ii

    0: ...

  • 7/28/2019 CriptSeg1-2

    4/43

    0: Introduo

    No mundo hoje, somos levados a crer que podemos comprar solues prontas de preferncia feitas sobmedida para atender nossas necessidades. Mas a essncia do que se busca nem sempre pode ser encontrada na

    prateleira, embrulhada em pacote. Essas notas iniciam-se com um comentrio sobre a natureza da busca desegurana para a informtica. Creio que a essncia dessa busca no pode ser encapsulada e apresentada em formade algoritmo. Por isso, no posso me propor apresentar-lhes roteiros ou receitas para segurana na informtica.Proponho, ao invs disso, ajud-los a desenvolver sensibilidade sobre como usar o conhecimento e as ferramentasat hoje acumulados, nessa busca. Para guiar-nos em minha proposta, compilei nas sesses seguintes um resumodos conceitos, tcnicas e procedimentos mais eficazes hoje conhecidos para a construo de mecanismoscriptogrficos de proteo a dados digitais, e de meios para esses mecanismos se integrarem a sistemas deinformao que se queira proteger. Comeamos observando que a segurana de que falamos no dos bits. Os bitsno podem sofrer dano, pois so apenas smbolos. Bits apenas ocorrem em sequncias que representam dados.Quem pode sofre dado so aqueles para quem tais sequncias de bits representam valor.

    Na sesso 1 veremos os principais conceitos tcnicos ou cientficos, inclusive de natureza lingistica epsicolgica, relacionados com a construo e funcionamento de ferramentas para a proteo a dados os serviosbsicos de segurana computacional. Na sesso 2 abordaremos como mecanismos de proteo contra ameaas osprotocolos so concebidos, para tornarem vivel o uso destas ferramentas. Na sesso 3 estudaremos ofuncionamento dos mecanismos que tem se mostrado eficazes, ou seja, os principais protocolos criptogrficos de

    padro aberto hoje em uso. Em seguida exploraremos na sesso 4 as formas como os servios bsicos soescolhidos e montados em protocolos especficos, para ento examinarmos em mais detalhes, na sesso 5, as peas

    principais desses protocolos os algoritmos criptogrficos inclusive quanto s formas mais elementares de seavaliar a segurana que ofecerem. Detalhes de segurana externos aos protocolos que influem nas suas escolhas soabordados na sesso 6, e uma viso do estado atual da aplicao da criptografia, principalmente na internet, seroferecida na sesso 7. Assim, faremos uma abordagem top-down at os algoritmos criptogrficos e tcnicas parasua implementao, e da retornamos, por via reversa, de novo a uma viso de conjunto do assunto.

    Enquanto discorro sobre conceitos, protocolos e algoritmos criptogrficos, buscarei situ-los, por meio decomentrios, no cenrio real, onde deve configurar-se claro o carter global e integrador do significado dasegurana na informtica, de cuja compreenso evolui tal sensibilidade. Estas notas representam portanto apenasum esforo para resumir descries de conceitos, protocolos e algoritmos, no havendo a pretenso de faz-las

    passar por texto didtico autnomo. Referncias bibliogrficas esto espalhadas ao longo das notas e devem serbuscadas por quem julgar necessria uma apresentao textual mais discursiva do assunto. Espera-se do leitoralgum conhecimento da aritmtica modular (aritmtica dos processadores digitais), do funcionamento bsico desistemas operacionais e das redes de computadores, e noes de complexidade de algoritmos. E por que esseconhecimento esperado?

    A criptografia uma rea de especializao da matemtica e da engenharia que oferece tcnicas de proteo amecanismos de acesso e integridade de dados, e ferramentas de avaliao da eficcia dessas tcnicas. Estastcnicas e ferramentas so de natureza puramente sinttica, no podendo, portanto, serem destinadas a fornecer ouinduzir, por si mesmas, confiana no significado da informao que tais dados supostamente veiculam. Acriptografia pode oferecer segurana na informtica somente onde e quando a confiana no significado dainformao veiculada pelos dados protegidos j tenha sido obtida ou fornecida por outros meios. Portanto, acriptografia no oferece nenhuma soluo mgica para problemas de segurana na informtica. O que oferece sotruques para manipulao de probabilidades que nos permitem escolher o terreno e o maneira como poderemos nosdefender no mundo dos bits.

    Para explicar minha crena sobre a natureza do assunto que iremos tratar, escolhi um texto de um experientecriptlogo, Bruce Schneier, divulgadas em uma lista de discusso eletrnica em novembro de 96([email protected]), cuja traduo transcrevo abaixo

    Porque a criptografia mais difcil do que parece

    iii

  • 7/28/2019 CriptSeg1-2

    5/43

    Do correio eletrnico telefonia celular, do acesso seguro a servidores WEB moeda eletrnica, acriptografia parte essencial dos sistemas de informao de hoje. A criptografia ajuda a imputar responsabilidade,

    promover a justia, prover acurcia e privacidade. Pode prevenir fraudes em comrcio eletrnico e garantir avalidade de transaes financeiras. Usada apropriadamente, protege a anonimidade e fornece provas de identidadede pessoas. Pode impedir vndalos de alterarem sua pgina na internet e competidores industriais de lerem seusdocumentos confidenciais. Com o comrcio seguindo sua marcha pelas redes de computadores, a criptografia setornar cada vez mais vital.

    Mas a criptografia hoje existente no mercado no fornece a segurana que apregoa seu marketing. A maioriadesses sistemas so projetados e implementados no por criptgrafos, mas por engenheiros que pensam que acriptografia como qualquer outra tecnologia de computadores. No . Voc no pode tornar um sistema segurosimplesmente acrescentando criptografia como uma medida adicional. Voc precisa saber o que est fazendo acada passo do caminho, da concepo at a implementao do sistema.

    Bilhes de dlares so gastos em segurana de computadores, e quase todo este dinheiro desperdiado emprodutos inseguros. Afinal, criptografia fraca parece idntica criptografia forte na vitrine de software. Doisprodutos de encriptao de correio eletrnico no mercado tm interface de usurio praticamente idnticas,enquanto um deles seguro e o outro permite bisbilhotagem. Uma tabela contendo comparaes entre recursos

    pode sugerir que dois produtos tenham funcionalidade similar, embora um possa ter furos comprometedores desegurana e o outro no. Um criptgrafo experiente pode reconhecer a diferena. Determinados tipos de criminosostambm podero.

    A segurana de computadores hoje em dia um castelo de cartas; pode se manter de p por agora, mas novai durar. Muitos produtos inseguros ainda no foram quebrados porque ainda esto em sua infncia, mas medidaem que se tornem mais e mais usados, tornar-se-o alvos atraentes para criminosos. A imprensa divulgar osataques, minando a confiana do pblico nesses sistemas. No final, produtos sobrevivero no mercado de acordocom a robustez de sua segurana.

    Os ataques a sistemas de informao so dos mais variados tipos. Toda forma de comrcio j inventado temsido alvo de fraudes, desde as balanas propositadamente descalibradas, o dinheiro falso, as faturas frias, etc. Ocomrcio eletrnico tambm sofrer fraudes, personificao, bloqueio de servio, e falsificaes. No se podecaminhar pelas ruas usando uma mscara que imita o rosto de outra pessoa sem ser percebido, mas no mundodigital muito fcil personificar outrem. Ocorre que a informatizao torna os riscos maiores ainda, permitindoataques automatizados, impossveis de serem conduzidos contra sistemas no automatizados. Um ladro pode se

    sustentar retirando um centavo por ms de cada dono de carto de crdito Visa. Apenas com a criptografia fortepode-se proteger tais sistemas contra estes tipos de ataques.

    Violaes contra a privacidade constituem outro tipo de ataque. Alguns ataques contra a privacidade sodirecionados: algum da imprensa pode tentar ler a correspondncia eletrnica de uma figura pblica, ou umacompanhia pode tentar interceptar as comunicaes de um competidor. Pode-se tambm tentar ataques de colheita,

    buscando informaes interessantes num mar de dados: vivas ricas, usurios de AZT, pessoas que visitamdeterminada pgina na internet, etc.

    O vandalismo eletrnico um problema cada vez mais srio. J foram pichadas as pginas digitais da agnciade servio secreto dos EUA, enviadas cartas-bomba digitais a provedores da internet, e cancelados centenas delistas de discusso eletrnicas, alm de ataques que bloqueiam o acesso a computadores que se comunicam pormeio de determinados protocolos. E como divulgado, ladres e vndalos rotineiramente invadem redes de

    computadores. Quando as salvaguardas de segurana no so adequadas, os invasores correm poucos riscos deserem flagrados. Os atacantes no seguem regras, podendo atacar sistemas usando tcnicas no antecipadas pelosprojetistas e analistas de sistemas, como no exemplo de arrombadores que entram numa casa abrindo um buraco naparede, evitando os alarmes e trancas das portas e janelas.

    Vndalos cibernticos tambm abrem buracos em paredes de bits. Roubam dados tcnicos, subornam agentes,modificam programas e mancomunam. Tiram vantagens de tecnologias mais avanadas que a dos sistemas quequerem atacar, e at descobrem novos mtodos matemticos para atac-los. Geralmente dispem de mais tempo doque algum honesto normalmente teria para desmontar e examinar um sistema. O SecurID foi usado durante anosat que algum olhou mais atentamente dentro de seu gerenciador de chaves: seus cdigos binrios aindacontinham rtulos!. As chances favorecem os atacantes, que s precisa encontrar um ponto vulnervel no sistema,enquanto os defensores precisam proteger seu sistema de toda vulnerabilidade possvel.

    iv

  • 7/28/2019 CriptSeg1-2

    6/43

    O que a criptografia pode e no pode fazer

    A garantia de 100% de segurana uma falcia, mas podemos trabalhar em direo a 100% de aceitao deriscos. Fraudes existem nas formas usuais de comrcio: dinheiro pode ser falsificado, cheques adulterados ouroubados, nmeros de carto de crdito copiados. Mesmo assim esses sistemas ainda tm sucesso porque seus

    benefcios e convenincias compensam as perdas. Cofres, fechaduras e cortinas mecanismos de privacidade noso perfeitos mas com freqncia so bons o suficiente. Um bom sistema criptogrfico atinge o equilbrio entre oque possvel e o que aceitvel.

    A criptografia forte pode resistir com sucesso a ataques que lhe so direcionados at um certo ponto o pontoonde se torna mais fcil obter, de alguma outra maneira, a informao que ele protege. Um sistema criptogrfico,no importa quo seguro, no ir impedir que algum vasculhe seu lixo. Mas pode perfeitamente prevenir ataquesde colheita de dados: ningum conseguir vasculhar suficientes latas de lixo para montar a lista de todos osusurios de AZT do pas.

    A boa notcia sobre criptografia que j temos os algoritmos e protocolos para proteger nossos sistemas. Am notcia que esta foi a parte mais fcil: implementaes bem sucedidas requerem especializao considervel.As reas de segurana na informtica que interagem com pessoas gerncia de chaves, segurana da interfacehomem/mquina e controle de acesso freqentemente desafiam anlise. As disciplinas de infra-estrutura dechaves pblicas, segurana do software, segurana de computadores, segurana de redes e projeto de hardware

    inviolvel so tambm pouco compreendidas.

    Companhias muitas vezes fazem mal a parte fcil e implementam algoritmos e protocolos inseguros. Masmesmo assim, na prtica raramente a criptografia quebrada por causa, ou atravs, de sua matemtica; outras peasdo sistema so mais fceis de serem quebradas. O protocolo mais seguro j inventado poder facilmente sucumbir aum ataque simples se no for dado ateno a detalhes mais complexos e sutis sobre sua implementao. Asegurana do browserNetscape 1.0 caiu devido a uma falha no seu gerador de nmeros randmicos. As falhas

    podem estar em qualquer lugar: no modelo de ameaas, no projeto do sistema, na implementao do software ou dohardware, ou na gerncia do sistema. Segurana uma cadeia, onde um nico elo fraco pode quebrar todo osistema. Bugs fatais segurana podem estar em partes do software distantes dos mdulos que implementamservios de segurana, e uma deciso de projeto que no tenha nada a ver com segurana poder criar uma falha desegurana.

    Uma vez encontrada uma falha de segurana, pode-se consert-la. Mas encontrar as falhas, para incio deconversa, pode ser extremamente difcil. Segurana diferente de qualquer outro requisito de projeto, porque nelefuncionalidade no igual a qualidade: se um editor de texto imprime corretamente, sabe-se que a funo deimpresso funciona. Segurana diferente: s porque um cofre reconhece a combinao correta para abri-lo, nosignifica que seu contedo est seguro contra um chaveiro ou arrombador. Nenhuma quantidade de testes betarevelar todas as falhas de segurana de um sistema, e no haver nenhum teste possvel que prove a ausnciadestas falhas.

    Modelos de ameaas

    Um bom projeto comea por um modelo de ameaas. O que o sistema est sendo concebido para proteger, dequem e durante quanto tempo? O modelo de ameaas deve levar em considerao todo o sistema, no apenas osdados que est sendo projetado para proteger, mas tambm e principalmente as pessoas que iro us-lo e como irous-lo. O que motivar os atacantes? Que tipo de abusos podem ser tolerados? Deve um tipo de ataque ser

    prevenido ou basta que seja detectado? Se o pior acontecer e alguma hiptese fundamental sobre a segurana dosistema for violada, que tipo de salvamento ps-desastre pode ser conduzido? Respostas a estas questes no

    podem ser padronizadas, como os algoritmos e protocolos. So diferentes para cada sistema, e com freqncia,projetistas no dedicam tempo a construir um modelo realista das ameaas ou a analisar os riscos.

    Modelos de ameaas permitem a desenvolvedores de produtos e consumidores determinar quais medidas desegurana so necessrias: ter sentido encriptar todo seu disco rgido se voc no guarda seus documentos de

    papel num cofre? Como pode algum de dentro da companhia fraudar o sistema de comrcio? Qual exatamente ocusto para se neutralizar a inviolabilidade de um carto inteligente? No se pode especificar um sistema segurosem conhecimento sobre contra o que, e de quem, se deseja proteg-lo.

    v

  • 7/28/2019 CriptSeg1-2

    7/43

    Projeto de sistemas

    O projeto de um sistema criptogrfico seguro deve ser feito somente aps o modelo de ameaas ter sidocompreendido. Este trabalho o tema central da criptologia, e muito especializado. A criptografia mescla vriasreas da matemtica: teoria dos nmeros, teoria da complexidade, teoria da informao, teoria da probabilidade,lgebra abstrata, anlise formal, dentre outros. Poucos podem contribuir apropriadamente para esta cincia, ondeum pouco de conhecimento muito perigoso: criptgrafos inexperientes quase sempre projetam sistemas falhos.Bons criptgrafos sabem que nada substitui a reviso extensiva feita por colegas e anos de anlise. Sistemas dequalidade usam algoritmos e protocolos publicados e bem compreendidos: usar elementos no provados em um

    projeto no mnimo arriscado.

    O projeto de sistemas criptogrficos tambm uma arte. O projetista precisa atingir um equilbrio entresegurana e acessibilidade, anonimidade e responsabilizao, privacidade e disponibilidade. A cincia sozinha nogarante segurana: somente a experincia e a intuio nascida da experincia podem guiar o criptgrafo no projetode sistemas criptogrficos e na busca de falhas em sistemas existentes.

    Bons sistemas de segurana so feitos de pequenos mdulos independentemente verificveis (e que tenhamsido verificados!), cada um provendo algum servio que claramente se resuma a uma primitiva. Existem vriossistemas no mercado que so muito grandes para serem verificados em tempo razovel.

    Implementao

    Existe uma distncia enorme entre um algoritmo matemtico e sua implementao concreta em hardware ouem software. Projetos de sistemas criptogrficos so muito frgeis. S porque um protocolo logicamente seguro,no significa que permanecer seguro quando o implementador comear a definir estrutura de dados e a descrever a

    passagem de bits de um lado para outro. Fechado nunca ser totalmente fechado: esses sistemas tm que serperfeitamente implementados, seno iro falhar. Uma interface mal projetada pode tornar um encriptador dearquivos de disco completamente inseguro. Uma interface de sincronizao mal projetada pode deixar um furo numsistema para comunicaes seguras. Confiana excessiva na inviolabilidade de hardware, tais como os chips decartes selados, pode tornar intil um sistema de comrcio eletrnico. Como estes problemas no aparecem em

    testes, por vezes aparecem em produtos j lanados no mercado.

    Implementadores esto sempre sob presso de oramentos e prazos. Cometem os mesmos erros vezes a fio,em muitos produtos diferentes. Usam geradores de seqncias randmicas ruins, no checam condies de erroapropriadamente, e deixam informaes secretas em arquivos de swap. Muitas destas falhas no podem serestudadas em livros acadmicos porque no so tecnicamente interessantes. A nica maneira de aprender sobreestas falhas fazendo e quebrando sistemas de segurana, um aps o outro, numa corrida sem fim.

    Procedimentos e Gerncia

    No final da estria, muitos sistemas de segurana so quebrados por pessoas que os usam, e a maioria dasfraudes contra sistemas de comrcio so praticadas por quem os opera. Usurios honestos tambm causam

    problemas, porque geralmente no ligam para segurana. Eles querem simplicidade, convenincia, ecompatibilidade com sistemas legados (inseguros) e em uso. Eles escolhem senhas fracas, anotam-nas, passam-nas

    para parentes e amigos, largam computadores com sesses abertas, etc. muito difcil vender fechaduras parapessoas que no querem ser molestadas pela responsabilidade de carregar chaves. Sistemas bem projetados tm quelevar em conta as pessoas, e as pessoas so os elementos mais difceis de serem abstrados no projeto.

    A onde est realmente o custo com segurana. No est nos algoritmos. A criptografia forte no mais caraque a fraca. O grosso do custo tambm no est em projeto e implementao: sai bem mais barato projetar eimplementar um bom sistema do que cobrir as perdas com um sistema inseguro. A maior parte de seu custo est emfazer com que as pessoas o utilizem. difcil convencer o consumidor sobre a importncia de sua privacidadefinanceira, quando o mesmo est disposto a trocar um detalhado registro de suas compras por um milsimo de umaviagem ao Hava. difcil construir um sistema de autenticao robusto sobre um outro sistema que permite ser

    penetrado por meio do conhecimento do nome de solteira da me de algum. A segurana rotineiramenteultrapassada por vendedores, gerentes, executivos e qualquer um que esteja querendo apenas tocar o servio.

    vi

  • 7/28/2019 CriptSeg1-2

    8/43

    Mesmo quando o usurio compreende a necessidade de um sistema de segurana robusto, no ter meios decomparar dois sistemas. Revistas de computao comparam produtos de segurana listando seus recursos efuncionalidade, e no avaliando sua segurana. Propagandas de produtos fazem asseres que simplesmente no sesustentam. Um produto mais robusto, isto , melhor testado (e portanto mais caro), estar nestas condies emdesvantagem para a comercializao. As pessoas confiam no governo para zelar pela sua segurana e bem estar, emcoisas para as quais no detm conhecimento suficiente para fazerem sua prpria avaliao industrializao dealimentos, aviao, medicamentos, medicina, etc. Com a criptografia entretanto, os governos fazem geralmente ocontrrio.

    Problemas

    Quando cai um avio, so abertos inquritos, feitas anlises e laudos tcnicos. Informao sobre o acidente amplamente divulgada, e muitos aprendem algo com o acidente. Pode-se obter das autoridades, laudos sobreacidentes areos desde o incio da histria da aviao. Mas quando o sistema eletrnico de transaes financeirasde um banco penetrado e fraudado, quase sempre o episdio acobertado. Se alguma informao chega at os

    jornais, os detalhes so omitidos. Ningum analisa o ataque, e ningum aprende nada com os erros. O banco tentaremendar o problema em segredo, na esperana de que a clientela no perca a confiana num sistema que nomerece esta confiana.

    Remendar sistemas de segurana para tapar furos em resposta a ataques bem sucedidos no suficiente. Ainformao move muito depressa. Uma falha em algum sistema, descrita na internet, pode ser explorada pormilhares em um dia. Os sistemas para hoje precisam antecipar futuros ataques. Qualquer sistema de grande porte seja para comunicaes autenticadas, armazenamento seguro de dados ou comrcio eletrnico deveria ter vidatil de cinco anos ou mais. Para permanecer seguro, precisa ser capaz de resistir ao futuro: ataques maisinteligentes, com maior capacidade computacional e motivaes crescentes para se subverter um sistema que estconsolidado por longo uso. No haver tempo para se fazerupgrades enquanto este estiver em uso.

    A histria tem nos ensinado: nunca subestime a quantidade de recursos em dinheiro, tempo e esforo quealgum esteja disposto a gastar para subverter um sistema. Use sistemas de defesa ortogonais, com vrias maneirasde se fazer a mesma coisa. Autenticao segura pode significar assinaturas digitais pelo usurio via teclado, SSL

    para proteger a transmisso, IPSec pelo firewall para o destino, junto com pontos de auditoria mltiplos ao longo

    do caminho para gerar rastros e produzir evidncias. A quebra de alguma parte dar ao atacante uma alavanca, masno causar o colapso de todo o sistema.

    sempre melhor assumir o pior. Assuma que seus adversrios so melhores do que realmente so. Assumaque a cincia e a tecnologia podero em breve fazer coisas que hoje ainda no podem. D a si mesmo um margemde erro. D a si mesmo mais segurana do que hoje precisa. Quando o inesperado acontecer, voc estar contente

    por ter agido assim. (Bruce Schneier)

    Creio ser a busca de segurana para a informtica semelhante busca metafsica do homem pelo significadoda vida. Um movimento de impulso difuso entre o compreensvel e o desejvel, no horizonte cambiante do

    possvel. Terei atingido meu objetivo se ao final pudermos reconhecer o contexto onde as ferramentascriptogrficas podem ser teis. Este contexto formado pelas esferas de atitude, motivao e compreenso dosriscos por parte de quem usa a informtica, para dela se obter confiabilidade. Poderemos ento conviver, econvencer outros da necessidade de convivncia, com o dilema que h na verso digital da segunda lei datermodinmica, expressa pela equao de Nemeth

    Segurana = 1 / Convenincia

    A sabedoria de cada um ser enriquecida na medida em que puder discernir a dose certa com que uma outrafora humana relacionada segurana a parania pode contribuir ao delicado equilbrio desta lei.

    vii

  • 7/28/2019 CriptSeg1-2

    9/43

    1: Fundamentos

    Desafios e demandas sociais por segurana computacional:Safety- proteo contra acidentes (Leis de Murphey)

    Security- proteo contra ataques e 'incidentes' (Primeira Hiptese

    Metafsica de Descartes)

    1 - Security: desafio 1- Padronizao de mecanismos e protocolos

    Instituies financeiras...Transaes eletrnicas.

    Corporaes..........Gerncia, Comrcio eletrnico, etc.

    Telecomunicaes Provimento de servios.

    Comunidades........Internet, Redes proprietrias, etc.

    Governo................Administrao, Militar, Espionagem, etc.

    3 - Security: desafio 2- Norma jurdica e Norma cultural

    ClassificadaGovernos

    Organizaes militares

    SensvelComrcio, Indstria

    Comunidades

    Virtual InternaSistemas operacionais

    Bancos de dados

    Virtual ExternaRedes de computadores

    Telecomunicaes

    3 - Security: desafio 3- Mudana no perfil da impunidade(Estudo por Securicor Consult. Ltd, Londres, 1993)

    Crimes rastreados dentre ocorridos............~ 1% ;

    Crimes denunciados dentre rastreados.......~15% ;

    Crimes denunciados com suspeito(s).........~61% ;

    Suspeitos julgados e condenados...............~ 3% ;

    Crimes punidos com priso........................ ~0,0003%

    Pedro Rezende 1998-2011 1 v 2.3

  • 7/28/2019 CriptSeg1-2

    10/43

    Processo de segurana computacional - Security

    Demanda bsica de mecanismos de proteo:

    Tipo de proteo Ameaa bsica Ao Indevida

    Privacidade Vazamento ou desvalorizao (Read)

    Integridade Fraude, adulterao ou perda (Write)

    Legitimidade Acesso indevido execuo (eXec)

    Disponibilidade Bloqueio ilegtimo de servio (eXec)

    Componentes principais do processo:

    1 - Poltica de segurana de dados

    Planejamento - Avaliao e anlise de riscos e custos.

    Especificao para implementao de salvaguardas e servios.

    Atribuio documentada de autorizaes e responsabilidades.

    2 - Servios bsicos para segurana computacional (security)

    Autorizao..........identificao para controle de acesso.

    Cifragem..............codificao para sigilo ou privacidade.

    Autenticao........validao de origem e/ou integridade de contedo.

    Certificao.........autenticao recursiva com validao objetiva.

    3 - Controle e Auditoria

    Monitoramento..........gerenciadores (rede, backup) logs, IDS, etc.

    Rastreamento.............antivirus, firewalls, proxies, IDS, etc.

    Avaliao...................testes de penetrao,anlise estatstica,relatrios, reviso de polticas, deestratgias, etc.

    Pedro Rezende 1998-2011 2 v 2.3

  • 7/28/2019 CriptSeg1-2

    11/43

    Ataques a sistemas informticos

    Classificao de ataques (Warwick Ford):Subjacentes Primrios Ameaas bsicas

    Por penetrao Por Implantao

    1 - Ataques primrios por penetrao -

    Personificao:.................... invaso no permetro de login

    Desvio de controle:..............explorao de falhas na plataforma

    Violao de autoridade:.......uso indevido de privilgios

    2 - Ataques primrios por implantao -

    Gancho: (backdoor).....uso derecurso no documentado

    Infeco:......................exploit, verme, vrus.

    Embuste:......................c. de tria, spoof, smurf, (spear) phishing

    Ameaas:

    AtaquesPrimrios: Penetrao Implantao

    AtaquesSubjacentes:

    Pedro Rezende 1998-2011 3 v 2.3

    Vazamento Fraude Bloqueio Uso indevido

    Gancho, Virus,Spoof, Troiano,

    etc.

    Personificao,Desvio,

    Violao.

    Escuta ativa,Refutao.

    Sobrecargaintencional,

    Fraude.

    Quadro-resumo (Warwick Ford)

    Escuta passiva,Anlise de trfego,Descuido, Grampo,

    Varredura.

    Furto de sesso,Replay,

    Espelhamento,Fraude.

  • 7/28/2019 CriptSeg1-2

    12/43

    Vulnerabilidades e pontos de ataque

    Ataques mais freqentes a sistemas computacionais em 89-(em ~3000 casos; Computer Security Conference, ordem decrescente)

    1 - Violao de autoridade:..........abuso de usurio legtimo.

    2 - Personificao:.......................uso de senha vazada.

    3 - Desvio de Controle:................hacking, cracking.

    4 - Gancho ou Embuste:..............mascaramento de funcionalidade.

    5 - Grampo, Escuta, Varredura:...garimpagem no trfego de dados.

    Meios externos de ataque (Counterintelligence DoD, 94) - via Internet (rede aberta).........................................80% dos casos

    outros meios:...........................................................20% dos casos

    Riscos de invaso de redes (NCSA, 95) - Redes de companhias conectadas Internet:..........24% invadidas

    Redes privadas no conectadas Internet:.............3% invadidas

    Recursos que demandam medidas especficas (ver Apndice B)

    Cabeamento

    Dispositivos de interconexo (gateways, routers, bridges, etc).

    Estaes de trabalho.

    Servidores (de autenticao, de terminais, de aplicativos, etc).

    Software de rede e aplicativos

    Arquivos de configurao e de Banco de Dados.

    Pedro Rezende 1998-2011 4 v 2.3

  • 7/28/2019 CriptSeg1-2

    13/43

    Tipos de Ataque ao TCP/IP

    Hierarquia de servios e protocolos hoje usados na Internet-

    Camada NFSarquiv

    PMAPportas

    NIS

    Aplic XDR

    TEL-NETlogin

    FTPtransf.

    arquivo

    SMTPe-mail

    HTTPwww

    Gopherdire-trio

    DNSnome

    domino

    NTPsincro-nizao

    TFTPtransf.

    arquivo

    RIProtea-mento

    RPCprocedimento remoto

    Transp TCP UDP

    Rede IP

    ISO 8802-2

    Enlace Ethernet ISO8802-3

    ISO8802-5

    ISO9314

    HDLC:ISO3309

    LAP-B:ITUX.25

    ITUQ.921/2

    LAP-D:ITU

    Q.921

    SLIP PPP:rfc 1331

    ATM:ITUI.361

    CSMA/CDTokenRing FDDI

    .8885 FrameRelay ISDN Assncrona

    .

    Riscos nos protocolos de enlace - Escuta passiva (sniffers) ............via interfaces em modo promscuo

    Sobrecarga (denial of service).. ..via escuta ativa (broadcast storm)

    Riscos nos protocolos de rede - Spoofingde endereo IP:....identificao falsa da origem do pacote

    Ataques ao ICMP:..............uso malicioso de mensagens de controle doIP (Redirect, Destination Unreachable,Source Quench, etc)

    Ataques de fragmentao:.subverso dos filtros de firewall em redes

    cuja implementao TCP pode reconstruir pacotes fragmentados.

    Riscos nos protocolos de rede (continua) -

    Ataques de roteamento (source routing):....uso de opes do IP parahabilitar ataques de escuta ativa, espelhamento ou roubo de sesso.

    Pedro Rezende 1998-2011 5 v 2.3

  • 7/28/2019 CriptSeg1-2

    14/43

    Riscos nos protocolos de transporte - Ataques de nmero sequencial:...simulao do handshake para

    abertura de sesso TCP, conjugado ao spoofing de endereo IP.

    Spoofing de UDP:..........................simulao de datagramas paraabertura ou roubo de sesso (sequestro) em aplicativos que usam UDP e

    que no implementam autenticao e criptografia .

    Riscos nos protocolos de aplicao - Ataques a login remoto:. escuta passiva de sesses TELNET ou "ser-

    vios r-" vazam senhas que podem habilitar ataques de personificao

    Ataques ao DNS:.............modificaes fraudulentas de tabelas

    in-addr.arpa, podem habilitar ataques via servios remotos "r-".

    Ataques ao RIP ou EGP: roteadores com filtragem deficiente podem

    sofrer spoofings que habilitam espelhamento e escuta ativa nas redes.

    Ataques via SMTP, HTTP:falta de autenticao habilita mensagens

    forjadas. Extenses habilitam ataques por implantao contra servidor

    e/ou cliente (SQL injection, Cross-site scripting, etc.)

    FTP, TFTP:.....................configurao e filtragem seguras so

    complexas. Protocolo usado em quase todo ataque externo via IP.

    NIS, NFS, NTP: ..............fraudes noNTP podem habilitar ataques de

    replay na rede. Servios baseados em RPC podem ser alvo de sniffers.

    X-Windows, Finger, Whois: aplicativos que facilitam outros ataques se

    mal configurados ou indevidamente habilitados. Etc...

    Pedro Rezende 1998-2011 6 v 2.3

  • 7/28/2019 CriptSeg1-2

    15/43

    Polticas de segurana

    Roteiro Tpico de planejamento para segurana - Quais recursos e ativos virtuais podem ou devem ser protegidos?

    De quem (security) e de que (safety) se quer proteg-los?

    Qual a probabilidade de acidentes (safety) e incidentes (security)?

    Como medir o valor a proteger representado nesses recursos e ativos?

    Quais aes podem proteg-los tm custo/benefcio aceitvel?

    Que planos de contingncia, reavaliao, terceirizao, etc. decorrem?

    Salvaguardas no computacionais -

    1 - Segurana fsica:................controle de acesso fsico, blindagem, etc.

    2 - Segurana funcional:..........recrutamento, treinamento, motivao

    3 - Segurana administrativa:. .auditoria, fiscalizao, contingncia4 - Segurana na mdia:...........backup,destruio de material, etc.

    5 - Radiao ou engenharia reversa: blindagem no encapsulamento

    6 - Controle de ciclos:..............reavaliao da poltica de segurana

    Servios bsicos (para Security) -Servios computacionais bsicos, implementveis comPrimitivas

    Criptogrficas, para montagem de mecanismos de proteo contra

    efeitos da Hiptese Metafsica de Descartes. Podem ser classificados:

    1 - Autorizao:.......................servio bsico para controle de acesso.

    2 - Cifragem:............................servio bsico para sigilo ou privacidade.

    3 - Autenticao:......................servio bsico para integridade.

    4 - Certificao:.......servio bsico paraautenticao recursiva objetiva.

    Pedro Rezende 1998-2011 7 v 2.3

  • 7/28/2019 CriptSeg1-2

    16/43

    Primitivas criptogrficas: Notao

    Autorizao:

    para identificao visando principalmente controle de acessoAgente controle Objeto

    usurio, hardware ou mdia, servio ou dados que osoftware identificvel agente identificado quer acessar

    Cifragem (Encriptao + Decriptao) com chave secreta:para sigilo durante transmisso no tempo ou no espao de dados

    Emissor chave compartilhada Receptor

    Autenticao com chave secreta (usando hash criptogrfico (MAC) ):para validaosubjetiva de origem e/ou de integridade de dados transmitidos.

    Emissor chave compartilhada Receptor

    Pedro Rezende 1998-2011 8 v 2.3

    chave k chavek

    m

    Funo bloqueadoraid + senha ouidentificador

    chave k chavek

    Processos

    Funoencriptadora

    Recursos

    Funo decisria

    m

    Funodecriptadora

    texto pleno |dado claro

    texto pleno |dado claro

    Autenticador: s = h(m||k) [h(_): funo de hash](m a transmitir)

    Funoautenticadora

    m

    h(_||k);s =? h(m||k)(m recebido)

    Funoverificadora

    texto | dado origem e integridade?

    c

    m||s

    login

    log

    Legenda: canais fora de banda canais em banda ||

    requer sigilo e integridade requer integridade canal inseguro concatenao

    chave k chaveksegredo kcompartilhado

    c k(_)k(c) = k(k(m)) = mCriptograma c = k(m) [cifragem simtrica]

    |

    'ou' lgico

  • 7/28/2019 CriptSeg1-2

    17/43

    Primitivas criptogrficas: Notao

    Cifragem com chaves assimtricas (pblica + privada):

    para sigilo durante transmisso de dados sem segredo prvio compartilhadoEmissor par de chaves Receptor

    Autenticao com chaves assimtricas (privada + pblica):para validao objetiva de origem e/ou integridade de dados transmitidos

    Emissor par de chaves Receptor

    Certificao:autenticao assimtrica recursiva para transitividade de validaes objetivas

    Emissor par de chaves Receptor

    Pedro Rezende 1998-2011 9 v 2.3

    chave e chaved

    chaved chavee

    segredo d no-compartilhado

    Relao identificadora:

    id ? identificador

    registro: id ||

    identificador

    chave e(verifica)

    certificado

    Funocertificadora

    chave d(autentica)

    Funoverificadora

    chave d chavee

    m

    Criptograma c = e(m) [assimtrica: d(e(_))=_]

    chave e chavedFuno

    encriptadoram

    Funodecriptadora

    texto pleno|dado claro

    texto pleno|dado claro

    Funoautenticadora

    s e(_);e(s) =? h(m)

    (m recebido)

    Funoverificadora

    texto | dado origem e integridade ?

    c

    m||s

    c d(_)d(c) = d(e(m)) = m

    Autenticador s = d(h(m)) [assimtrica: e(d(_))=_ ]

    (m a transmitir)

    |'ou' lgico

    Legenda: canais fora de banda canais em banda ||

    requer sigilo e integridade requer integridade canal inseguro concatenao

  • 7/28/2019 CriptSeg1-2

    18/43

    Modelos de Autorizao - Controle de Acesso

    Sistemas de autorizao discricionrios -Baseados no modelo de matriz de acesso de Lampson, vem o sistema

    a ser controlado como um conjunto de estados formados por sujeitos, objetos

    e permisses. As propriedades do mecanismo so definidas como transies

    de estado permitidas (possveis autorizaes). Aborda a questo pelo aspecto

    do armazenamento de permisses. (Lampson, B.: "Protection". OS Riview, Jan 1974)

    Sistemas de autorizao mandatrios -Baseados no modelo de classificao de relaes sujeito-objeto de Bell

    e LaPadula, vem o sistema como um conjunto de estados onde as transies

    possveis so determinadas por axiomas e regras. Aborda a questo pelo

    aspecto dos fluxos de informaes. (Bell, D. & LaPadula, J.: Lampson: "Security

    Computer Systems. Mathematical Foundation". MITRE Corp., Bedford, 1974)

    Elementos de um modelo de controle de acesso - Sujeitos:.........agentes ativos no sistema computacional;

    Objetos:.........agentes passivos, capazes de representar informaes de

    valor para algum outro agente (inclusive externo ao sistema);

    Permisses (modos de acesso): formas de acesso que causam fluxo de

    informaes entre objeto e sujeito (e/ou vice-versa) atravs do sistema. Autorizao: conjunto das permisses (modos de acesso), outorgadas a

    um determinado sujeito do sistema, sobre certo(s) objeto(s) do sistema;

    Privilgio (direito administrativo): permisso que pode causar

    modificaes em autorizaes aplicveis no sistema.

    Poltica: regras para a criao de autorizaes, inclusive programveis

    para quando forem criados novos objetos ou agentes no sistema;

    Axioma: poltica embutida na implementao do controle de acesso.

    Pedro Rezende 1998-2011 10 v 2.3

  • 7/28/2019 CriptSeg1-2

    19/43

    Elementos de controle de acesso

    Modelos especficos (C.,F.,M.& S.: "Database Security") -Modelos para bancos de dados podem exigir adequaes, como para

    tratar mltiplas instncias de um objeto com distintos requisitos de

    autorizao. Vrias extenses dos modelos bsicos existem, por exemplo:

    Harrison-Ruzzo-Ullman: modelo de matriz dependente de contexto.

    Take-Grant:....generaliza o modelo de matriz usando grafos, com enfoque nocontrole da propagao de autorizaes e privilgios;

    Wood et al.: orientado para a gerncia do controle de acesso em BDs multi-

    camadas que seguem a arquitetura ANSI/SPARC.

    Biba, Dion e outros: estendemo modelo mandatrio para BDs

    Modelo hbrido RBAC (Role Based Access Control)

    Com uma camada adicional, para tipos de sujeitos (papis), possvelmesclar elementos dos modelos mandatrio e discricionrio (ex: SELinux)

    Pedro Rezende 1998-2011 11 v 2.3

    Quadro-resumo (Castano, Fugino, Martela, Samarati)

    Processoscomuns

    Cotroleadministrativo(de privilgios)

    AdministradoresSujeitos: Usurios

    Log

    Objetos:

    Acessoautorizado

    Acessoautorizado

    Requisio para operao administrativaRequisio de acesso

    Autorizaese polticas

    Axiomas

    Controle de permisses(Funo decisria)

  • 7/28/2019 CriptSeg1-2

    20/43

    Controle de acesso

    Mecanismos para implementao de controle de acesso:

    1 - Listas de controle de acesso (ACL): banco de dados associado a

    objetos do sistema, descrevendo autorizaes permitidas

    (controle de acesso com autorizao discricionria).

    2 - Capacidades:......................... banco de dados associado a objeto(s),

    descrevendo relaes de permisso com outros objetos.

    3 - Rtulos de segurana:..........atributo associado a objeto(s) quedetermina as possveis autorizaes pertientes conforme

    classificao de capacidades (autorizao mandatria).

    Mecanismos para controle de acesso discricionrio -1 - Alocao de autorizaes (critrio de necessidade de conhecimento).

    2 - Autorizao e gerncia de direitos administrativos (privilgios).3 - Identificao e autenticao de agentes.

    4 - Monitoramento de acessos.

    5 - Preveno (on-line) contra acesso no autorizado.

    Mecanismos para identificao: (ver Apndice B)

    1 - O que (s) o agente pode dizer:...

    senha, passphrase;

    2 - O que (s) o agente pode fazer:...

    assinatura de punho digitalizada, timbre de voz, etc;

    3 - O que (s) o agente pode mostrar:...

    marca biomtrica (impresso digital, padro de retina, etc),

    chave privada, token ou carto inteligente, etc.

    Pedro Rezende 1998-2011 12 v 2.3

  • 7/28/2019 CriptSeg1-2

    21/43

    Classificao de sistemas de controle de acesso

    Arco-ris (publicaes doNational Computer Security Center)-Definem padres de segurana computacional de sistemas para o

    Department of Defense dos EUA -ISO 15408 (Common criteria)

    1 - "Orange book".........DoD 5200.28 STD,.

    2 - "Red Book"...............NCSC-TG-005,

    interpreta o orange book no contexto de redes de computadores.

    Trusted Computer Standards Evaluation Criteria:Oorange bookclassifica sistemas stand-alone em classes e nveis.

    Classe D - Untrusted

    Nenhuma proteo para o hardware ou para o sistema operacional

    (Ex. MS DOS, Win95, Win98, MacOS, etc)

    Nvel C1 -Discrecionary Security ProtectionIdentifica usurios por login e senha, com permisses de acesso a

    recursos e dados. Login nico "root" para administrao (Ex.Unix)

    Nvel C2-Discrecionary Access Controls

    C1 com controles adicionais: de acesso por nveis de autorizao, de

    auditoria, e de direitos administrativos. (Ex.Unix comerciais, WinNT)

    Nvel B1-Labeled Security Protection

    Objetos sob controle de acesso mandatrio tem suas permisses pr-

    codificadas no sistema. (Ex: AT&T V/LMS, UNISYS 1100, HP UX )

    Nvel B2- Structured Protection

    Todos os objetos acessveis so rotulados para controle mandatrio.

    Modelo formal de segurana documentado (Ex: Honeywell Multics).

    Pedro Rezende 1998-2011 13 v 2.3

  • 7/28/2019 CriptSeg1-2

    22/43

    Trusted Computer Standards Evaluation Criteria (cont)

    Nvel B3- Security Domains Level

    Mecanismos de segurana devem ser modularmente testveis.

    Controle e gerenciamento de memria por hardware.

    Mecanismo de restaurao e canais de comunicao protegidos em hw.

    Classe A - Verified Design Level

    B3 com especificao formal do projeto de software e consistncia do

    modelo de segurana formalmente verificvel. Controle na fabricao e

    transporte do hardware (Ex: Honeywell SCOMP)

    O nvel de segurana C2 -

    Esta classe, que se tornou critrio aceitvel para padro de segurana

    na maioria das aplicaes comerciais, tem como caracterstica principal as

    seguintes propriedades:

    1 - Domnio:..........................sistema operacional protegido, quando em

    execuo, contra vazamentos interprocessos, por meio da

    compartimentao de memria.

    2 - Kernel do sistema:..........protegido contra adulteraes em disco.

    3 - Poltica de segurana:....parmetros configurveis em nveis de

    segurana, globalmente aplicveis no controle de acesso.

    4 - Controle de acesso:.........autorizao controlada por listas de

    permisses, com registro configurvel de acessos em log

    5 - Autenticao:..................comgranularidade a nvel de objeto, por

    mdulo protegido, com suas operaes rastreveis via log.

    6 - Log: ................................quando em execuo, acesso restrito a

    nveis de administraoeprotegido de adulteraes em disco.

    Pedro Rezende 1998-2011 14 v 2.3

  • 7/28/2019 CriptSeg1-2

    23/43

    Cifragem para sigilo

    rea da Criptografia que estuda recodificaes reversveis1- Cifra: Conjunto Kde funes simblicas inversveise:MC; e-1:CM, onde:

    mMpode codificar (representar) um texto m numalinguagem L; mM, eK [e(m)=coculta o significado de m em L ].

    - Um par de funes e, e-1pode ser indexado (ou parametrizado) por uma chave

    kou por um par de chaves (e,d) em K. M dito espao de mensagens, C, espao

    de criptogramas, K, espao de chaves. [Se K parametrizado, um par de funes

    e, e-1 pode ser indexado por mais de uma chave k(ou par de chaves (e,d)) em K]2- Algoritmo de Cifra: implementao f de uma cifra K, f:KMKC, onde

    fencripta m: f calcula e(m)=c [=f(e, m), denotado e(m) ou k(m)]; e

    fdecripta c: f calcula e-1(c)=m [=f(e-1, c), denotado d(c) ou k(c)].

    3-Criptografia s. s.: Arte de implementar cifras robustas, i.e., cifras que permitemcontrole do custo, invivel, para se obterm decdesconhecendo-se k(ou d).

    4-Criptoanlise: Arte de se subverter tal controle (i.e., atacar e quebrarcifras).

    Classificao de Algoritmos de Cifra (por Premissas de Sigilo) -1 - Algoritmo Restrito (implementa cifra secreta):Presumido ser desconhecido de

    quem o ataca: a robustez da cifradepende do sigilo de f (e das chaves, se

    existirem, pois neste caso o projeto da cifra ignora o princpio de Kerkhoffs).2 -AlgoritmoSimtrico (implementa cifra de chaves secretas):Projetado para que

    a robustez da cifra no dependa do sigilo def, mas onde d facilmentededutvel de e;neste caso, um par de funes e, e-1 geralmente indexado

    por uma chavek(dita secreta): a robustez de f depende do sigilo de k, da

    equiprobabilidade de qq chave kter sido escolhida em K, e deKser grande.

    3 - AlgoritmoAssimtrico (implementa cifra de chaves pblicas):Projetado para

    que a robustez da cifrano dependa do sigilo nem defnem dee;neste caso,

    para qualquer par (e, d), tem que ser invivel deduzir-se d (chave privada) de

    e (chave pblica) ou dec

    : a robustez def

    depende do sigilo de d, da

    equiprobabilidade de qq par(e,d) ter sido escolhido em K, e deKser grande.

    Pedro Rezende 1998-2011 15 v 2.3

  • 7/28/2019 CriptSeg1-2

    24/43

    Criptografia Pr-computacional

    Cifras de substituio -

    1 - Monoalfabticas:. M=()*;=alfabeto de L e deM,fsubstitui cada letra

    mi dem pore(mi). e uma bijeo de no alfabeto de C (geralmente

    tambm ), e kexpressa esta bijeo (por exemplo, por meio de uma listaque emparelha cada letra de com sua substituta, mapeada por e(_)).

    Exemplo: Cifra de Csar: = { ,a,b,...,z},e=rotao de porkposies.

    2 - Poligrmicas:.....M=C=(n)*,=alfabeto de L, n=alfabeto de Me de C={blocos de n letras de}. fsubstitui os blocos denletras de m por outrosblocos, conforme mapeados bijetivamente pore(_). (chaves longas)

    3 - Polialfabticas:.. .M=C=K=(n)*,f uma cifra poligrmica que se

    decompe em n substituies monoalfabticas, indexadas pelas n letras

    da chave k, que se repetem em cada bloco de m(n ditoperodo da cifra).

    Ex: Vigenre (1538): e = n rotaes distintas de , repetidas em cada

    bloco de m; Variante (com XOR): f= XOR da chave com cada bloco de m.

    4 - One-time pad (OTP): polialfabtica onde n o tamanho da mensagemm, a chave k gerada aleatoriamente e usada apenas uma vez.

    Cifras de transposio(usadas na 1 guerra mundial) -M=C=(n)*;K(n)(permutao de n posies). fpermuta entre si as

    letras de cada bloco de tamanhon dem,conforme a permutao de

    posies definida pore(n), e indexada pork. (d representaria a

    permutao inversa dee, a qual facilmente dedutvel dee, portanto acifra simtrica e basta um ndice kpara representar o pare, e-1).

    Cifras hbridas (combinam transposies e substituies) -Entre 1920 e o final da 2 guerra mundial, prevaleceram implementaeseletromecnicas, inspiradas no odmetro. Com o advento do computador,

    duas estratgias para projeto de cifras simtricas prevaleceram:

    Cifras de Bloco: procuram simular poligrmicas, com chaves menores.Cifras Encadeadas: procuram simular OTP, com chaves expansveis.

    Pedro Rezende 1998-2011 16 v 2.3

  • 7/28/2019 CriptSeg1-2

    25/43

    Exemplo de um algoritmo criptogrfico

    Implementao (em C) da cifra de Vigenre com XORk(m): f(e,m)= k XORm ;k(c):f(e-1,c) =k XORc

    /* uso:cripto chave arquivo_entrada arquivo_saida */

    void main (int argc, char *argv[])

    { FILE *entrada, *saida;

    char *key;

    int c;

    /*programa*/

    if ((key = argv[1]) && *key!=\0) {

    if ((entrada = fopen(argv[2],rb))!=NULL) {

    if ((saida = fopen(argv[3],wb))!=NULL) {

    while((c = getc(entrada))!=EOF) {

    if (!*key) key = argv[1];

    c ^= *(key++); /*XOR*/

    putc(c,saida);

    } fclose(saida);

    } fclose(entrada);

    }

    }

    }

    Considerada robusta at 1820, quando foi descoberto mtodo de ataque

    estatstico baseado no desvio na frequncia de coincidncias em deslocamentos

    sucessivos, quando o deslocamento coincide com o tamanho do bloco (ou seja, o

    tamanho da chave escolhida para cifragem).

    Pedro Rezende 1998-2011 17 v 2.3

  • 7/28/2019 CriptSeg1-2

    26/43

    Ataques a Algoritmos Criptogrficos

    Ameaas da Criptoanlise:Neutralizao do ocultamento do significado de m ou do sigilo da

    chave de decriptao k(ou d), a um custo vivel para o atacante.

    Tipos de ataques a cifras (em ordem cresceste de severidade) -

    1 - Criptograma conhecido: atacante tem acesso ae(mi), i = 1,2,3...

    2 - Texto pleno conhecido:. .acesso a instnciasde pares mi,e(mi), "

    3 - Texto pleno escolhido:....acesso a escolhas de miem e(mi), "

    4 - Texto pleno adaptativo:. escolhas iterativas de miem e(mi), "

    5 - Chave comparada:..........acesso a instncias mi,e1(mi),e2(mi), ...

    6 - Chave comprometida:....suborno, extorso, vazamento de k(oud).

    Tipos de ameaa a algoritmos criptogrficos -(em ordem crescente de severidade)

    1 - Deduo de informao:. .criptoanalista ganha informao sobre bits

    de uma chave, formato ou estatsticas relativas a um texto

    encriptado.

    2 - Deduo local:...................criptoanalista descobre o texto pleno oculto

    em um criptograma c.

    3 - Deduo global:................criptoanalista descobre algoritmo que

    calcula e-1(c)sem obter ou precisar de conhecerk(oud).

    4 - Quebra total:.....................criptoanalista descobre mtodo eficiente

    para obter a respectiva chave de decriptao k(oud).

    Pedro Rezende 1998-2011 18 v 2.3

  • 7/28/2019 CriptSeg1-2

    27/43

    Teoria da Informao aplicada Criptografia

    Estruturas de linguagens naturais escritas num alfabeto :

    Entropia (incerteza) lingstica -

    (Shannon, 1949)

    Definies de entropia (como 'medida de informao') numa Linguagem:

    1 - Definio intuitiva: Dada um texto (sequncia de frases) mL,

    representado por uma escrita m *, a entropia de m em L, denotada por

    H(m), (uma medida d)o espao mnimo necessrio para se reescrever

    m numa codificao que, aplicada a L, seja capaz de distinguir os

    possveis significados das frases com a mesma sintaxe de m em L.

    2 -Definio formal: Medida logartmica ponderada do inverso da

    probabilidade dos possveis significados de m em L dado seu contexto

    (si = um possvel significado de m conhecido apenas seu contexto).

    H(m) = p(s ) log p(s )( )i ii

    j 1

    1=

    Pedro Rezende 1998-2011 19 v 2.3

    LexL = LxicaCadeias de palavras de L

    SinL

    = SintticaSubconjunto de Lex

    L

    formado por frasessintaticamente corretas

    SemL

    = SemnticaRelao de equivalnciaem Sin

    Ldas frases com

    significado idntico em L

    L

    Contexto damensagem

    Mensagem escrita m

    H(m)

    rvore de derivaosinttica de m em L

    Contedosemntico de m

    Exemplo:H("sexta-feira") = log

    2(7)

    * = todas as sequnciasde letras no alfabeto

    Intuitivamente, a entropia de uma linguagem L o espao mnimo necessriopara codificar mensagens com significado em L

  • 7/28/2019 CriptSeg1-2

    28/43

    Entropia em Criptoanlise

    Taxa rde uma linguagem escrita L:rL = H(m)/|m|

    Razo mdia entre a entropia de textos m de L e tamanho de suas escritas m.

    Redundncia DLeredundncia relativa dLde uma linguagem L:DL = log2(||)-rL

    Redundncia relativa dL a normalizao de DL, dada por dL =DL/log2(||).

    dL proporcional ao desvio padro na distribuio de freqncia de letras de

    em textos escritos de L, e densidade de suas escritasem *

    Estimativas de taxa e redundncia da lingua inglesa(Schneier)rENG 1.3bits / letra [ = { ,a,b,...,z}] ;

    DENG 3.4bits / letra ; dENG 6.7bits / caracter [ = ASCII]

    Distncia de Unicidade UK,L de um sistema criptogrfico- UmSistema Criptogrfico a aplicao de uma cifra a uma linguagem:

    formalmente, um par (f:KxMKxC, L), abrevidamente denotado por (K,L).

    - A quantidade de distintos significados que poderiam ser ocultados num

    criptograma gerado com uma chave de Ksobre uma mensagem m de tamanho

    n, isto , o nmero de possveis decriptaes em L de e(m), dada por:

    2(H(K)- d

    L*n)

    +1

    - ADistncia de Unicidade de um sistema criptogrfico, denotada UK,L , o

    limiar para tamanho de mensagens m acima do qual o nmero de possveis

    significados do correspondente criptograma em (K,L) estimadamente > 1:

    UK,L = H(K)/dL

    Se f preserva o comprimento das mensagens, criptogramas de tamanho maiorque UK.L podem, em tese, ser deduzidos estatisticamente; menores, no podem.

    Pedro Rezende 1998-2011 20 v 2.3

  • 7/28/2019 CriptSeg1-2

    29/43

    Distribuio de freqncia de letras

    Frequncias do Portugus (arquivo genrico de 64KB)

    0

    0,02

    0,04

    0,06

    0,08

    0,1

    0,12

    0,14

    0,16

    0,18

    as

    cii

    32

    A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

    00,02

    0,04

    0,06

    0,08

    0,1

    0,12

    0,14

    0,16

    0,18

    as

    cii

    32

    A E O S I R T D C M N U P L V G F B Q H Z J X K W Y

    frequncia do ingls

    0

    0,02

    0,04

    0,06

    0,08

    0,1

    0,120,14

    0,16

    0,18

    as

    cii

    32

    E T A I N O S R H D L U C F M W Y P B G V K Q J X Z

    Pedro Rezende 1998-2011 21 v 2.3

  • 7/28/2019 CriptSeg1-2

    30/43

    2: Elementos de Protocolos

    O que um Protocolo? um algoritmo distribudo, em que a execuo dos passos alternada entre

    dois ou mais agentes executores.

    Premissas implcitas no conceito de protocolo computacional:0 - H umpropsito especificado que motiva a execuo do protocolo;

    1 - Os agentes executores devem conhecera especificao completa,

    2 - Esses agentes devem concordar emseguir sua parte no protocolo;

    3 - O protocolo deve serinambguo, sem margem a mal entendidos, e

    4 - completo, com uma ao especificada para cada situao possvel;

    Interface com o Direito: (Miguel Reale, Marcos da Costa) O Direito composto de trs dimenses: Norma, Valor e Fato. Com a informtica, o que muda a dificuldade de se estabelecer o Fato No Direito, fato de interesse jurdico se estabelece por correlaes

    entre ato, efeito (que causou dano) e autoria (que causou o ato).

    Pedro Rezende 1998-2011 22 v 2.3

    Algoritmo

    Seqncia de passos do agente executor

    Protocolo com 2 agentes

    Agente A Agente B

    INCIOINCIO

    FIM FIM

    Tempo

  • 7/28/2019 CriptSeg1-2

    31/43

    Protocolos Computacionais

    Especificao de protocolo:Uma especificao abstrai oprocesso que realiza o propsito do protocolo,

    dos mecanismos pelos quais este processo pode ser implementado. Assim,

    neste captulo, no mais distinguiremos m (texto) de m (escrita que codifica

    m), ou k, e ou d (chaves) de e, e-1 (funes de cifra correspondentes)

    Protocolo Criptogrfico -

    Tem como propsito proteger algum interesse de certo(s) agente(s) em certosprocessos de comunicao nos quais esse interesse conflita com alguma

    caracterstica da comunicao. Usa criptografia para manipular pontos, modos e

    momentos em que alguma confiana presumida no processo. Para isso, um

    protocolo criptogrfico pode buscar atingir um ou mais dos seguintes objetivos:

    1 - Transferir sigilo ou detectar adulterao:.......relativo ao propsito.

    2 - Prevenir vazamentos que o vulneram:............durante a execuo.

    3 - Prevenir ou detectar trapaas ou desavenas: entre interlocutores.

    4 - Prevenir perigosas inferncias ou conluios:...relativo s premissas.

    Alocao de Confiana -Conforme seu propsito e premissas, um protocolo pode especificar a ao

    de um agente auxiliar, desinteressado a priori no propsito (TTP ver A-7),

    para resolver impasses entre agentesprincipais (interessados no propsito).

    1 - Protocolo arbitrado:..........usa agente auxiliar TTP para, durante a

    execuo, impedirouprevenirtrapaas entre principais.

    2 - Protocolo ajuizvel:...........usa TTP para, aps a execuo, detectar

    trapaas entre principais, e/ou para resolverdesavenas entre estes.

    3 - Protocolo autoverificvel:sem TTP, supondo que a execuo elimina

    possveis vantagens para trapaas ou desavenas entre principais.

    Pedro Rezende 1998-2011 23 v 2.3

  • 7/28/2019 CriptSeg1-2

    32/43

    Ao da Confiana em Protocolos Criptogrficos

    Resoluo de impasses-Quando o protocolo no possibilita a um agente principal deduzir a lisura dos

    outros principais ao longo da execuo, um TTP tende a nele cumprir funo

    semelhante a uma instituio que goza de 'f pblica' (cartrio, tribunal, etc).

    1- Arbitragem:..decises do TTP quanto lisura, em seus papis, dos

    agentes principais do protocolo (que no se confiariam em relao ao

    propsito deste), condicionantes continuidade da execuo do mesmo.

    2 - Mediao:.....julgamento pelo TTP de disputas que possam surgir aps

    a execuo de um protocolo ajuizvel, baseado em evidncias

    produzidas durante execuo do mesmo.

    Exemplo de protocolo no computacional arbitrado -

    Pedro Rezende 1998-2011 24 v 2.3

    CompradorA VendedorB1- Proposta

    2- Resposta

    rbitro(Agncia)

    Detran Banco

    Compra de Automvel

    8- Veculo,Novo DUT

    3- Cheque 3- Veculo, DUT

    4- DUT, Vistoria

    6-Novo DUT

    5- Deposito cheque

    7-Crdito

    8- Transferncia docrdito menos taxa

  • 7/28/2019 CriptSeg1-2

    33/43

    Protocolos criptogrficos

    Dificuldades da arbitragem em protocolos criptogrficos-

    1 - Impessoalidade:..........programas-rbitro nem sempre inspiram a

    confiana necessria: podem ocultar 'falhas' de programao.

    2 - Custo: ........................o custo de criao e manuteno de um servio

    de arbitragem geralmente recai no servio de comunicao.

    3 - Gargalo.......................toda transao passa pela arbitragem.

    4 - Tempo de execuo....a arbitragem consome tempo considervel.

    5 - Vulnerabilidade..........ponto de alto risco no protocolo, atrai ataques.

    Mediao e autoverificao em protocolos criptogrficos

    A mediao apresenta dificuldades listadas acima em 1, 2 e 5.

    A autoverificao apresenta as seguintes dificuldades:

    1 - Natureza do problema:. nem todo tipo de problema de security(premissas de confiana + objetivos de proteo) encontra soluo

    em protocolos criptogrficos autoverificveis.

    2 - Anlise exaustiva:........a autoverifio s eficaz enquanto novas

    formas de ataque que subvertem o protocolo forem desconhecidas.

    Conceitos semiolgicos fundamentais (ver Apndice B) Apresentao:. .Conhecer algo ou algum (por exemplo, via cadastramento);

    Identificao:...Convencer-se de que se re-conheceu algo ou algum;

    Autenticao:...Convencer-se, e a outrem(s), de que se reconheceu algo / algum.

    Subjetiva: convencer o reconhecido; Objetiva: convencer o reconhecido e outros;

    Assinatura (sentido jurdico): Convencer-se, e a outrem, de que se reconheceu

    algo que pode representar a manifestao da vontade de algum.

    Para fazer prova jurdica, a assinatura deve convencer terceiros (juiz, juri, etc.)

    Pedro Rezende 1998-2011 25 v 2.3

  • 7/28/2019 CriptSeg1-2

    34/43

    Elementos (subrotinas) de protocolos criptogrficos

    Esquema de distribuio de chaves secretas-

    Premissas e limitaes em I:

    a - O esquema I supe que agentes principais (A e B) confiam um no outro

    (e no gerenciador de chaves) em relao ao sigilo das chaves.

    b - A transmisso de chaves requer sigilo e integridade. Geradas por um

    TTP (AS B), se o propsito de I incluir controle de acesso ( rede).

    c - I no prov para A a identificao positiva de B, nem vice-versa;

    d - Sem prvia identificao mtua de A e B, ou se uma chave for vazada

    ou quebrada (comprometida), um atacante poder personificar A ou B e

    escalar ataques subjacentes, como escuta ativa,spoofing, replay, etc.

    e - A privacidade na comunicao em rede com cifra simtrica requer uma

    chave distinta para cada par de agentes. [n2-n pares, se n agentes]

    f- A distribuio de chaves pelo esquema I reduz a quantidade de chavesnecessrias, mas no pode ser feita pelo canal a ser protegido.

    Pedro Rezende 1998-2011 26 v 2.3

    Agente A Agente B

    6: criptograma c' = kA.B(m)

    4: criptograma c = kA.B(m)

    Gerenciadorde chaves S

    (p/ controle de acesso)

    I: para sigilo em rede fechada com cifragem simtrica

    2: Solicitachave (A,B)

    3: Chave kA.B 3: ChavekA.B

    2: Solicitachave (A,B)

    0: Escolheu-se algoritmo, gerenciador

    7: decripta c':kA.B(c) = m 5: decripta c:kA.B(c) = m

    Requer sigilo e integridade

    1: Requisio de servio

  • 7/28/2019 CriptSeg1-2

    35/43

    Esquema de distribuio de chaves pblicas -

    Premissas e limitaes em II:

    a - A origem e a integridade de A||EA, B||EB (relaes identificadoras de A e B)precisa ser certificadas no armazenamento e distribuio das respectivas

    chaves pblicas, para neutralizar ataques despoofing, espelhamento, replay.

    b - As chaves pblicas distribudas em II se expem ao nvel 4 de criptoanlise

    (texto pleno escolhido)

    c - Dentre os algoritmos criptogrficos robustos conhecidos, os assimtricos so

    de 103 a 104 vezes mais lentos que os simtricos.

    Envelope Digital: uso racional das primitivas de cifragem -

    Pedro Rezende 1998-2011 27 v 2.3

    1: B || EB

    0: Escolheu-se algoritmo assimtrico

    0: Escolhe-se um algoritmo simtrico e um assimtrico

    Banco dechaves pblicas

    tituladas

    II: para sigilo em rede fechada com cifragem assimtrica

    0.2: cadastrou-se Acomo titular da

    chave pblica EA

    1:A l B||EB 1: B l A||EA

    0.2: cadastrou-se Bcomo titular da

    chave pblica EB

    Agente A Agente B4: criptograma c = EB (m)

    6: criptograma c' = EA (m')0.1: A gerou parDA, EA

    2. Aproduz m ;cifra m->EB(m)

    7: decriptac' : m' =DA (EA(m'))

    Agente A Agente B

    3:Envelope: k(m) || EB(k)2: gera chave de sesso kencripta m com k, encripta kcomEB

    0.1 B gerou EB, DB4: Decripta DB (EB (k)) = k; k(k(m)) = m

    III: Esquema de envelope digital

    Requer integridade

    0.1: B gerou parDB, EB2. Bproduz m' ; cifra m'->EA(m')

    7: decriptac: m = DB (EB(m))

  • 7/28/2019 CriptSeg1-2

    36/43

    Esquema de Assinatura Digital

    Funes semiolgicas da assinatura de punho -

    1 - Inforjabilidade: confiana do verificador na identificao de

    autoria e do autor, na de possveis falsificaes de um documento

    2 - Inviolabilidade: confiana do verificador na integridade do

    contedo lingustico vinculado, pela assinatura, vontade do autor.

    3 - Irrecuperabilidade: confiana de ambos na inviabilidade de reuso

    (transferncia desse vnculo por troca de contedo ou assinatura)

    4 - Irrefutabilidade: confiana do verificador na inviabilidade tcnica

    de negao da autoria da assinatura pelo autor (perante ajuizamento)

    Autenticao com chaves assimtricas:

    Premissas de Confiana no esquema de Assinatura Digital:

    1- S o titular de um par de chaves controla o uso de sua chave privada;

    2- O usurio de uma chave pblica confia na titularidade dessa chave;

    3- Presume-se que o titular manifesta, ou pode manifestar, sua vontade no

    contedo lingustico de um documento assinado com sua chave privada.

    Objetivo do esquema de Assinatura Digital:

    Autenticao objetiva no Direito, 'oponvel a terceiros' para validar origem e

    integridade de mensagens (documentos) assinada(o)s, aproximando as funessemiolgicas da assinatura de punho (a irrefutabilidade, apenas precariamente).

    Pedro Rezende 1998-2011 28 v 2.3

    3: mensagem (documento) assinada(o): m || s

    0.0: Escolheu-se algoritmo assimtrico p/ assinatura

    0.2: Publicou-se A || EA (A o titular de EA)

    s = Assinatura digitalde A(com DA)sobre m

    4: Separa m|| s; identifica A em m;calcula m -> h(m); s -> EA(s);

    5: verificao: h(m) =? EA(s)

    0.1:A gerou EA, DA;

    1:gera m; calcula m -> h(m);

    2: lavra: DA(h(m)) = s

    Agente BAgente A

    IV: Esquema de assinatura digital

  • 7/28/2019 CriptSeg1-2

    37/43

    Autenticao usando cifra simtica-

    Combinando os dois servios bsicos da criptografia assimtrica

    Premissas de confiana e limitaes dos esquemas V e VI:

    V: rbitro J opera como caixa-preta para verificao indireta (subjetiva).

    VI: II.a,b,c, com II.c agravado. Irrefutabilidade relativa, como em IV.

    Pedro Rezende 1998-2011 29 v 2.3

    0.1: Escolha de rbitro e algoritmo simtricoAgente Aencripta m

    Agente B decripta c

    rbitro J

    0.2: A solicita a Jsuachave deassinatura kA(compartilhadacom J)

    0.3: kA

    3: m||s =kB (c)

    1: kA(m)

    V: esquema arbitrado de assinatura eletrnica

    0.3: kB

    2: c = kB (m||s)

    r = "comprovante" de

    (data e) origem de m;s = r,kA(m) = assinatura

    0.0: Escolheram-se algoritmos

    Agente A Agente B

    5: A, c || c'

    0.2: Publicou-se A||EA ;B||EB

    VI: assinatura + envelope digitais

    Arbitragem:4. B solicita a J verificar se

    s =?r,kA(m)

    0.1: Gerou-se EA, DA;

    1: produz m, m -> h(m)2: lavra DA(h(m)) = s;

    3: gera k; cifra m||s -> k(m||s) = c;4: envelopa k-> EB (k ) = c'

    0.1: Gerou-se EB, DB ;

    5: separa c || c', decripta c':DB

    (c') = k

    ;6:decripta c:k(c) = m||s ; separa m||s ;7: identifica A em m; calcula m->h(m)8: s -> EA(s); verifica h(m) =? EA(s)

    Requer sigilo e integridade

    0.2: B solicita a Jsuachave de

    assinatura kB(compartilhada

    com J)

  • 7/28/2019 CriptSeg1-2

    38/43

    Cifragem unidirecional

    Funo Unidirecional (One-way function) -Funo simblica com a qual fcil (vivel) calcular a imagem de umargumento, e difcil (invivel) calcular um argumento (pr-imagem) de uma

    imagem. Servem para cifragem unidirecional (p. ex., hash criptogrfico).

    Funo unidirecional com segredo (trapdoor function) - uma funo unidirecional para a qual existe alguma informao acerca da

    imagem que torna fcil o clculo de sua inversa. conceito fundamental

    para gerao de chaves assimtricas.

    Hash critogrfico -- Sinnimos:Digest, Fingerprint, ou Checksum Criptogrfico; Cheque de

    Integridade, Cifra Unidirecional, etc.- Definio: Funo unidirecional h( ) com imagens de tamanho fixo e

    argumentos de tamanho varivel, custo computacional de inverso

    estatisticamente controlado (a nveis inviveis), e resistente a coliso.

    - Resistncia a coliso: Quando difcil (isto , estatisticamente controlado

    a nveis de custo inviveis) encontrar dois argumentos que produzam o

    mesmo valor (imagem) dela funo de hash (vide ataque de aniversrio)

    - Cdigo de autenticao de mensagem (MAC): Esquema em que um hash

    criptogrfico h( ) usado com chave secreta k, para validao subjetiva (entre

    emissor e receptor) da integridade de m || h(m||k) durante transmisso. (Se umterceiro tambm conhece k, essa integridade no pode ser verificada por MAC)

    Pedro Rezende 1998-2011 30 v 2.3

    m _

    Hash resistente a coliso

    h( )h-1(_)m'

    h(m)=h(m) difcil

    m ch(m) fcil

    h-1(c) difcil

    One-way function

    Argumento Imagem

  • 7/28/2019 CriptSeg1-2

    39/43

    Autenticao: Resumo sobre uso adequado

    Checksum, CRC (Check Redundancy Code):

    Destinado a detectar erros involuntrios de transmisso ou armazenagem de

    dados (safety). Incuo em canais sujeitos a escuta ativa (ex: rede aberta).

    Hash, Checksum,Digest ou FingerprintCriptogrfico:

    Funo unidirecional h( ) com imagem de tamanho fixo e resistente a

    coliso, usada em esquemas de autenticao que empregam ndices para

    representar mensagens (ou documentos) em primitivas criptogrficas.MAC: mensagem m || h(m||k) autenticador da mensagem

    Assinatura digital: mensagem m || DA(h(m)) autenticador da mensagem

    MAC(Message Authentication Code):

    Esquema de autenticao adequado a protocolos cujo propsito permita que

    a validao de origem e integridade do contedo autenticado possa ser

    verificado subjetivamente, entre os agentes principais, portanto, com base emsegredo compartilhado (k) presumidamente apenas entre emissor e receptor.

    Por exemplo, em protocolos destinados a sistemas ou redes fechadas.

    Assinatura digital:Esquema de autenticao adequado a protocolos cujo propsito exija que a

    validao de origem e integridade do contedo autenticado seja verificvelobjetivamente, isto , tambm por terceiros alm dos principais. Portanto,

    adequado onde tal validao no se baseie em compartilhamento de segredo,

    e sim em segredo no compartilhado (d). Por exemplo, em protocolos para

    rede aberta, ou protocolos que devam produzir elementos de prova jurdica.

    OBS: a irrefutabilidade da assinatura digital de natureza tcnica: sustenta-

    se nas premissas de confiana do esquema e de sanidade da implementao.

    Se presentes, sustentam a irretratabilidade jurdica da autoria da assinatura.

    Pedro Rezende 1998-2011 31 v 2.3

  • 7/28/2019 CriptSeg1-2

    40/43

    Preveno contra ataque de replay e certas fraudes temporais:

    Preveno contra personificao e replay em II.b e III.b

    Pedro Rezende 1998-2011 32 v 2.3

    2: h(m)

    0.2: Publicou-se B||EB ; A||EA

    0.0: Acordo sobre uso do protocolo

    Agente A assina Agente B protocoliza

    0.1: Gerou-se EA, DA;

    1: produz m, m->h(m) ;7: verifica selo temporal t comEB8: lavra DA( h(m) || B || t ) = s ; m || s

    0.1: Gerou-se EB, DB;

    3: produz T ;4: T -> h(T,h(m)) = x ;5: lavra DB(T || h(m) || x ) = t

    VII: possvel implementao de selo temporal

    t = selo temporal; T = tempo de relgio GMT

    Certificadora dechaves pblicas S

    gerou(DS, ES )

    VIII: distribuio de chaves certificadas (esboo do SSL one way):

    1: A Solicita CB

    0.0: Escolheu-se certificadoras e protocolo

    A armazenou ES B gerou (DB, EB )

    4: EB (k)

    6: k(m)

    5: decripta DB (EB (k)) =k ;

    iniciafluxo de dados cifrados

    3: verifica h(cB) =? ES (sB);

    B em 2: =? B em CBSe sim, gera k ;envelopa k -> EB (k)

    integridade da origem e

    contedo presumidos

    k = chave de sesso

    2: B envia CB

    6: h(m) || B || t

    0.1: A Recebe ES

    0.1: B Recebe ES0.2: B Registra chave pblica EB;

    S prepara cert. cB = S ||B || EBsB = DS(h(cB)) ; CB = cB || sB ;

    0.3: S emite CB(S cerifica B como titular de EB)

  • 7/28/2019 CriptSeg1-2

    41/43

    Limitaes da autenticao em rede aberta

    Resumo de problemas na distribuio de chaves criptogrficasa - Espelhamento em I e V pode ser feito por personificao do gerenciador

    de chaves, e em II, III, IV, VI e VII, por escuta ativa. A eficcia dos

    protocolos que usam chaves pblicas depende de autenticidade destas.

    b - No esquema VIII, o intruso precisa antes atacar S falsificando a

    titularidade das chaves de A e B, ou fazerspoofingdo servidor S

    forjando ES, para habilitar o espelhamento entre A e B. Certificado digital: um documento eletrnico, emitido e digitalmente

    assinado por uma entidade certificadora, cujo propsito atestar uma relao

    identificadora, representada em seu contedo. No padro X.509 esta relao

    entre uma chave pblica e um nome: o do titular (subject) desta chave e da

    chave privada correspondente. Neste caso o certificado serve (tambm) para

    distribuir esta chave pblica, nele contida e titulada, junto a outros atributos

    dessa titulao, como por exemplo o uso pretendido para esta chave pblica.

    Pedro Rezende 1998-2011 33 v 2.3

    0: Escolhe algoritmo, solicita chave pblica

    para B finge serA

    (Conexo fracamente autenticada)

    para A finge serB

    Ataque de espelhamento (man in the middle) com chaves pblicas

    3: X escuta chavepblica EA

    4: X Falsifica chave EB (=

    EX)

    3: escuta chavepblica EB

    Agente A vaza m1

    Agente B vaza m2

    1, 2: X intercepta troca de chaves pblicas

    4: X Falsifica chave EA (= EX)

    5: A enviaEX(m1)

    7: X enviaEB (m1)

    6: m1 = DX (EX (m1)) 9: m2 = DX (EX (m2))

    8: B enviaEX (m2)

    [_ =perda deintegridade]Intruso X

    10: X enviaEA(m2)

  • 7/28/2019 CriptSeg1-2

    42/43

    Seqncias randmicas

    Conceito

    Uma definio formal de randomicidade ou aleatoriedade, se existisse, seria

    paradoxal (o padro de no seguir nenhum padro?) A ocorrncia ou no desequncias aleatrias na natureza uma questo de natureza filosfica, mas

    que produz uma lista de propriedades necessrias aleatoriedade. Algumas

    dessas propriedades so mensurveis (i.e.: entropia mxima, aperiodicidade,

    etc.), enquanto outras no (i.e., irreprodutibilidade).

    Seqncias pseudo-randmicas (B. Schneier)So seqncias que exibem as propriedades mensurveis de aleatoriedade

    conhecidas. So usadas na criptografia, geralmente onde um protocolo

    requer um segredo inicial. As principais propriedades mensurveis so:

    Distribuio homognea: satisfaz medidas estatsticas

    uniformes, incluindo os modelos de Markov de qualquer ordem.

    Subsequncias de mesmocomptimento (bits)

    Probabilidade deocorrncia

    0, 1 1/2

    00, 01, 10, 11 1/4

    000,.., 111 1/8

    0000,.., 1111 1/16

    0..00,.., 1..11 1/2n

    Entropia mxima:.....a seqncia no deve ser comprimvel por um

    algoritmo de compresso genrico. (exceto sua semente, por seu

    gerador pseudo-randmico, se houver)

    Aperiodicidade:...... ..a sequncia no deve conter perodo (repeties

    de uma subsequncia de tamanho prximo ao da seqncia)

    Pedro Rezende 1998-2011 34 v 2.3

  • 7/28/2019 CriptSeg1-2

    43/43

    3: Protocolos Importantes

    Necessidade de protocolos criptogrficosCriptografia no cria confiana a partir do nada. Suas primitivas so capazes

    apenas de transformar certas premissas de confiana, em mecanismos de

    proteo a certos valores, em situaes onde tais premissas estejam presentes.

    Autorizao.........transforma premissa de sigilo e integridade (da senha) ou

    de posse de um entificador nico (token ou chave) em identificao de um

    agente cadastrado, para fins de atribuio de permisses de acesso.Cifragem transforma premissa de sigilo e integridade de uma chave

    para a do sigilo de uma mensagem cifrada, durante a transmisso desta.

    Autenticao.......transforma premissa de sigilo (de uma chave secreta ou

    privada) e de integridade (destas ou de uma chave pblica) em validao

    de origem e integridade em transmisses do contedo autenticado.

    Certificao........transforma premissas de sigilo e integridade (de chaves

    assimtricas) em autenticao recursiva com validao objetiva.

    Um protocolo criptogrfico processa suas premissas de confiana, quando

    presentes em situaes que demandam proteo adequada a seu propsito,

    para defesa de quem as controla, onde a sua implementao for eficaz.

    Protocolos bsicos -Autenticao para controle de acessoO desenho de um protocolo bsico presume condies mnimas de confiana

    presentes onde o mesmo ir operar. Essas condies, por sua vez, dependem

    da arquitetura da plataforma onde a proteo bsica almejada. Protocolos

    bsicos podem ser classificados conforme o tipo de plataforma a que servem

    Login: autenticao e controle de acesso para sistema fechado;