P. 1
APOSTILA Criptografia[1]

APOSTILA Criptografia[1]

|Views: 2,437|Likes:
Published by Ana Tyler

More info:

Published by: Ana Tyler on Aug 13, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

07/08/2013

pdf

text

original

Criptografia 

Objetivos  
• Garantir que uma mensagem ou informação só será lida e compreendida pelo  destinatário autorizado para isso   Confidencialidade   o Garantir que o acesso à informação seja feito somente por pessoas  autorizadas   Integridade   o Garantia de que os dados não foram alterados desde sua criação   Disponibilidade   o Garantia de que a informação estará disponível para as pessoas autorizadas  quando estas precisarem da informação   Não‐repúdio/irrefutabilidade/irretratabilidade   o Previne que alguém negue o envio e/ou recebimento de uma mensagem   o Autenticação de usuários por senha não garante o não‐repúdio, pois não prova  a autoria da operação, não é possível sabermos quem digitou a senha   Autenticidade   o Garantia da origem da informação   Usabilidade   o Prevenir que um serviço tenha sua usabilidade deteriorada devido à segurança   Tempestividade  o Possibilidade de comprovar que um evento eletrônico ocorreu em um  determinado instante.  “entidade protocolizadora digital”  Vulnerabilidade   o Fraqueza que pode ser explorada para violar um sistema ou informações que  este contém   o Pontos fracos na segurança   Princípios Criptográficos by Tanenbaum (TRF 2ª Região)   o Redundância = mensagens devem conter redundância   o Atualidade = algum método deve ser implementado para anular ataques de  repetição   Texto pleno / texto claro (plaintext)  o Mensagem antes de ser criptografada   Texto cifrado ou criptografado   o Texto resultante de um algoritmo de criptografia sobre um texto pleno   Chave   o Mensagem utilizada por alguns algoritmos de criptografia para gerar o texto  cifrado   Cifra   o Algoritmo de encriptação que combina a informação contida na chave para  codificar um texto cifrado de forma que não seja possível obter o texto pleno  original sem a posse desta mesma chave  Criptoanálise   o Técnicas para decodificar uma mensagem sem possuir a chave   Esteganografia = “arte” de ocultar a existência da mensagem   1   

Princípios Básicos  
• • • •

• • •

Conceitos  
• • • •

• •

 cifra de césar que desloca o alfabeto três letras à frente. Lembre‐se que você pode utilizar  qualquer deslocamento C1.  Cifra de Vigenère     É uma cifra de substituição polialfabética (utiliza mais de um alfabeto) que utiliza 26  alfabetos e uma chave alfabética. porém a análise  de período pode ser utilizada para quebrar a cifra. A primeira coluna corresponde a um deslocamento zero e a última a 25:      2    . A análise de freqüência não quebra a cifra. Desses. o ROT‐13 é o mais conhecido. Não usa chaves. quem souber o algoritmo sabe decifrar e são computacionalmente  fáceis de quebrar   • A cifra de substituição consiste em deslocar o alfabeto algumas letras para frente   • A cifra de permutação (transposição) consiste em embaralhar as letras da própria  mensagem   o JOÃO = ÃOJO   Cifra de César   É uma cifra de substituição monoalfabética (utiliza apenas um alfabeto).   Também conhecida como ROT‐X que consiste em deslocar o alfabeto para a direita X  casas. C3276. C666. A cifra de César pode ser facilmente quebrada  utilizando análise de freqüência.Tipos de Criptografia (a criptografia garante o sigilo)   Segredo Baseado em Algoritmos   Baseia‐se em usar um processo que apenas os envolvidos conheçam para cifrar o texto  pleno.  Utilizando C3 na frase MANEH GAY obtemos PDQHK JDB. A tabela de 26 alfabetos abaixo é a utilizada  na cifra. O exemplo  abaixo mostra uma C3. ou seja.

  tornando‐a mais vulnerável a furtos. utiliza  uma chave numérica.  Cifra Garrafa de Cerveja   É baseada naquela música que os bêbados estadunidenses cantam: 99 garrafas de  cerveja na parede blábláblá. entre outros)   o Criptografam um texto pleno bit a bit   o São mais rápidos que os de bloco   • Vantagem da criptografia simétrica   o Rapidez na criptografia e decriptogtafia das informações   • Desvantagem   o A chave secreta deve ser transmitida ou comunicada para o receptor. 3DES. a primeira letra da mensagem será substituída por uma  que esteja 4 posições à frente:    OneTime Pads   Descrição do livro CISSP:   Consiste em escolher aleatoriamente uma chave alfabética sem repetições do tamanho da  mensagem (impossível para mensagens longas. Segundo o  nosso amigo Tanenbaum a cifra é inquebrável.gris. a mensagem MANEH GAY com a chave JOAO é cifrada da seguinte forma:  O processo de decifrar é exatamente o oposto..   Descrição do Tanenbaum:   Consiste em escolher uma chave de bits aleatória.   o São mais lentos que os de fluxo   • De Fluxo (RC4.  utilizando ASCII. por exemplo. RC2.Uma mensagem é cifrada combinando a linha da chave com a linha da coluna. e fazer o XOR entre a chave e a mensagem bit a bit.   3    . Utilizando uma chave 4321. Podem ser de  blocos ou de fluxo:   • De Bloco (DES.br/artigos/GRIS‐2005‐A‐004. converter a mensagem original em bits..pdf  Criptografia Simétrica  Utiliza a mesma chave para criptografar e decriptografar as mensagens. O Processo de encriptar uma mensagem é análogo ao da cifra de  Vigenère. ao invés de usar uma chave alfabética. utiliza‐se longas chaves aleatórias com  períodos grandes) e somar modulo 26 cada caractere da mensagem a cada caractere da chave. por  exemplo.dcc.    Cifra de Gronsfeld (ou Grosfeld?)   É uma variação da cifra de Vigenère que. entre outros)   o Pegam um bloco de n bits do texto pleno como entrada e o transforma em um  bloco de n bits de texto cifrado. Para maiores informações consulte o link abaixo:   http://www.ufrj.

  o As chaves são de 56 bits + 8 bits para preencher.  • Uma pequena mudança de 1 bit no texto claro produz textos cifrados bastante  diferentes  • O mesmo ocorre quando a mudança de 1 bit é na chave utilizada  4    . Uma pequena  mudança no texto claro deve produzir uma mudança significativa no texto cifrado. após vários  passos. Os mesmos passos. em uma saída cifrada de 64 bits. mas somente 56 bits são  usados  Opera em 16 rounds além da permutação inicial e da permutação final (que é a inversa  da inicial)  Utiliza XOR e S‐Boxes (estrutura Feistel)  O DES é um algoritmo ultrapassado e já foi quebrado  64 bits chave (56+8) 64  Escolha permutada 1  • • •   64 bits texto claro  64      Permutação Inicial  64                Round 1  64  Round 2  K1  48  Escolha permutada 56 56  Shift circular à esquerda   K2  48  Escolha permutada 48  Escolha permutada 56 56  Shift circular à esquerda …  Round 16  64  32‐bit swap  64  K16  56 56  Shift circular à esquerda   Permutação Final  64      64 bits texto cifrado  Efeito Avalanche    É uma propriedade desejável em qualquer algoritmo criptográfico.    O DES possui tal propriedade. com as mesmas  chaves são utilizados para decifrar o texto.DES – Data Encryption Standard  • Algoritmo criptográfico de bloco que utiliza blocos de 64 bits e chaves de 56 bits  o O algoritmo transforma uma entrada de 64 bits do texto claro.

. D(K2 (E (K1. 2112 chaves distintas.Triple DES – 3DES    Já que o DES foi quebrado. consumiria  muito tempo  Com três chaves distintas = 168 bits (EDE)  o C = E(K3.  • Com duas chaves distintas = 112 bits (encripta – decifra – encripta = EDE)  o É um método compatível com o DES tradicional  o C = E (K1.D(K2. o texto cifrado gerado é idêntico  o Ele não esconde padrões de dados de maneira adequada  o Pode gerar repetições que facilitam os ataques  Ocorre a propagação de erros  Observação TST 2007:  o O texto claro com baixa entropia é um texto com muitas repetições  Entropia é a medida de desordem  o Muitas repetições = muitos padrões iguais = texto cifrado igual (devido à  característica do ECB de gerar código igual para textos iguais)    Tempo =2  P2  cifrar  C2      .  o O criptoanalista pode se aproveitar da regularidade  A característica mais significante é que se o mesmo bloco‐b de texto claro aparece  mais de uma vez na mensagem.O Triple DES é basicamente o DES 3 vezes. que utiliza blocos de 64 bits e  chaves de 56.. 112 ou 168 bits.P)))  o Pode ser compatível com o DES se fazendo K3=K2 ou K1=K2  • Modos de Operação das Cifras de Bloco  Electronic Codebook (ECB)  • • Cada bloco de 64 bits é cifrado independentemente com a mesma chave  É um método bom para pequenas quantidades de dados. É um algoritmo  largamente utilizado.E(K1. P)))  o Um ataque de força bruta é impraticável.   Tempo =N  PN  cifrar CN    K  Tempo =N  CN  • • •     K    Tempo =1  P1  cifrar  C1  K  K  decodificar PN    5    . Para mensagens longas pode  ser um método inseguro. foi desenvolvido o 3DES.

.  ⊕  .. se repetido na mensagem.  K  decifrar  IV  ⊕ P1    ⊕ P2  CN‐1  ⊕ PN  6    . é conhecido também como hash com chave  Ocorre a propagação de erros  Tempo =1                            K  K  cifrar  C1  Tempo =1  C1    decifrar  K  decifrar  K  cifrar  C2  Tempo =2  C2  K  cifrar  CN  Tempo =N  CN  IV  P1    Tempo =2  P2  Tempo =N  PN  CN‐1  • • • ⊕  ⊕ .. mas imprevisível para  terceiros  É um modo apropriado para cifrar mensagens longas  O CBC permite a construção de MAC – message authentication code  o MAC é semelhante ao hash.. produz  diferentes blocos de texto cifrado  A entrada do algoritmo de codificação é o XOR do bloco de texto claro atual com o  anterior  Utiliza um vetor de inicialização (IV) para cifrar o primeiro bloco  o IV deve ser conhecido pelo transmissor e pelo receptor.  Cipher Block Chaining (CBC)  Chaining (CBC)  • • • Técnica na qual o mesmo bloco de texto claro.

Cipher Feedback (CFB)  • • • Possibilita o DES funcionar como um algoritmo de fluxo  Utiliza um vetor de inicialização para o primeiro passo  A entrada é “shift register” (vetor de inicialização IV)  o IV é cifrado  o Os s bits mais significantes da saída da cifra passam por um XOR com o  primeiro segmento do texto claro (P1) e produz o  primeiro segmento cifrado  C1  O “shift register” é deslocado em s bits e C1 é colocado em seus bits  menos significativos. e assim sucessivamente          7    .

Output Feedback (OFB)  • • • Modo semelhante ao Cipher Feedback mode  A vantagem é que este método não propaga erros  A diferença é a entrada nos passos 2 em diante:        8    .

 o bloco CK pode ser cifrado independente dos outros blocos  É tão seguro quanto os outros modos e é simples  • • • • •           9    . o contador é incrementado em 1  Cifrar:  o Contador + chave são cifrados  o Saída passa por XOR com o bloco de texto claro = texto cifrado  Decifrar:  o Contador + chave são cifrados  o A saída passa por XOR com o bloco cifrado e a saída é o texto claro  O CTR permite paralelismo (hardware e software) o que aumenta o throughput  Permite pré‐processamento  Permite acesso aleatório  o Ou seja.Counter Mode (CTR)  • • • Temos um contador de tamanho igual ao tamanho do bloco de texto claro  Para cada bloco a ser cifrado.

 CFB.Blowfish   • • Algoritmo de bloco que utiliza chaves de 32 até 448 bits com um bloco de 64 bits   Opera em 16 rounds   AES – Advanced Encryption Standard  • • • • • Algoritmo Rijndael  Cifra de bloco desenvolvida para substituir o DES (3DES)  o Pode operar nos modos ECB. CBC. OFB e CTR (assim como qualquer outro  algoritmo de bloco)  Utiliza chaves de 128. 192 ou 256 bits e blocos de 128 bits  Não utiliza a estrutura Feistel  O AES foi desenvolvido para ter as seguintes características  o Resistência a todos os ataques conhecidos  o Velocidade/código compacto em várias plataformas  o Simplicidade de design  Cada round utiliza 4 funções separadamente  o Substituição de bytes  o Permutação  o Operações aritméticas de corpos finitos (finite fields)  o XOR com uma chave  • Key size  4/16/128 6/24/192 8/32/256  (words/bytes/bits)  Plaintext block size 4/16/128 4/16/128 4/16/128  Rounds  10  12  14  10    .

      11    .

  RC4 – Rivest Cipher 4 ou Ron’s Code 4  • • Utiliza chaves de 8 a 2048 bits. pois torna o algoritmo  vulnerável a uma série de ataques  Para cifrar e decifrar. basta utilizar XOR entre a chave e o texto claro/cifrado  Gerador de chave Key stream Fluxo de  texto claro  • •         ⊕   Fluxo de  texto cifrado  12    . entre  outros  Utiliza um gerador pseudo‐randômico para gerar um fluxo de bits que é utilizado como  chave – o key stream  o A utilização do mesmo key stream é um risco. pelo Kerberos.Cifras de Fluxo    São cifras que operam bit a bit ou byte a byte e são mais rápidas que as cifras de bloco. é também suportado pelo SSL/TLS. por padrão 128 bits  É o algoritmo utilizado nos protocolos WEP (wired equivalency protection) e no WPA  (wi‐fi protected access).

Criptografia Assimétrica  • • • Também conhecida como criptografia de chave pública  Utiliza duas chaves diferentes. uma pública e a outra privada  A criptografia assimétrica permite garantir a confidencialidade e/ou a autenticidade da  mensagem (os métodos serão descritos mais detalhadamente nos próximos tópicos)    Chave pública de Manoel Chave Privada de Manoel                              MSG Algoritmo   Criptográfico  João MSG cifrada Algoritmo   Criptográfico  Manuel MSG original  Método que garante  confidencialidade Chave Privada de Manoel Chave Pública de Manoel  MSG Algoritmo   Criptográfico  Manuel MSG assinada Algoritmo   Criptográfico  João MSG original  Método que garante  autenticidade   13    .

6.n} . 5.RSA (Rivest. Suporta chaves de até 2048 bits. Adleman)   É um algoritmo de blocos baseado na fatoração de números primos muito grandes e  exige chaves de pelo menos 1024 bits para ser seguro o que o torna lento em comparação com  os algoritmos simétricos. 2.                p = 3 . Escolha p e q   primos e p ≠ q  Calcule n = p x q  Calcule z = (p – 1)x(q ‐1)  Escolha e. z e e são primos entre si  ‐1 5. 4.n}    • •   Cifrar  Texto claro M < n  e Texto cifrado C = M mod n  Decifrar  • • Texto cifrado C  d Texto claro M = C  mod n  EXEMPLO:  1. 4. 2. Chave privada PR = {d. ou seja.   Normalmente é utilizado em conjunto com algum algoritmo simétrico. Chave pública PU = {e. Calcule d ≡ e (mod z)   d x e = 1 mod z  6. ele é utilizado  para codificar a chave privada (chamada de chave de sessão) que será utilizada pelo algoritmo  simétrico. tal que mdc(z. 3.  É utilizado pelo protocolo PGP – pretty good privacy. Shamir. O emissor deve conhecer e e n enquanto  que o receptor deve conhecer d e n.  M = C3mod20    14    . 3.  É muito utilizado em assinaturas digitais em conjunto com algum algoritmo de  hash.e) = 1 e  1 < e < z. q = 11  n = 3 x 11 = 33  z = (3‐1)x(11‐1) = 20  escolhi e = 7  e x d = 1 mod z    7d=1(mod20)   d=3  C = M7mod20 .      Gerar a Chave    1.

 ao invés de  logaritmos discretos. no exemplo é facilmente calculado.    Elliptic Curve Cryptography – ECC  • É um método semelhante ao Diffie‐Hellman para troca de chaves que. por exemplo.q(YB). é baseado em curvas elípticas.. XB=233    A calcula YA = 397mod353 = 40  B calcula YB = 3233mod353 = 248    A calcula K = 24897mod353 = 160  B calcula K = 40233mod353 = 160    • O atacante tem em mãos q.α. YA e YB  o Para achar a chave K ele teria que conseguir calcular. YA e YB  a b •   Ele teria que calcular 3 mod353=40 ou 3 mod353=258.)  Elementos públicos  q   número primo  α   α < q e α é uma raiz primitiva de q  Usuário B  Escolhe XB   XB < q  (mantém em segredo)  Calcula YB   YB = αXBmod q (público)  Cálculo da chave secreta por B  K = (YA)XBmod q          Usuário A    Escolhe XA   XA < q  (mantém em segredo)    Calcula YA   YA = αXAmod q (público)     Cálculo da chave secreta por A    K = (YB)XAmod q  • Um atacante teria acesso a q.. XA=97. o que é computacionalmente impraticável    EXEMPLO:    q=353.Diffie­Hellman Key Exchange  • É um algoritmo que permite a troca segura de uma chave secreta entre dois  usuários  o Baseado em logaritmos discretos (. α. α=3.   XB=dlog α. mas  para números grandes é impraticável.      15    .

 não precisa ser  reversível.M)  • MAC = message authentication code  • C = função MAC  • K = chave secreta  • M = mensagem  o A envia a mensagem + MAC para B  o B faz o mesmo cálculo que A (MACB=C(K.  A e B compartilham uma chave secreta K  o A calcula o MAC da mensagem que quer enviar para B  MACA=C(K.M)) e compara MACA recebido  com o MACB calculado  o Se os MACs forem iguais então a mensagem é integra (MACA = MACB) e  autêntica (só A e B sabem K)  HMAC – Hash Message Authentication Code  • • Algoritmo para calcular Message Authentication Codes baseado em funções hash  Ele é independente da função hash utilizada.Message Authentication Codes – MAC (garantem integridade e autenticidade)  • • • Método que utiliza uma chave secreta e a mensagem para gerar um pequeno  bloco de tamanho fixo (checksum criptográfico / MAC) que é anexado à mensagem  O algoritmo MAC. diferente dos algoritmos criptográficos. em geral são funções um para muitos. A figura abaixo (Wikipédia) ilustra o HMAC de  forma simplificada:      • K = chave  • • • • m = mensagem  ipad = 00110110 = 36 em hexadecimal. o opad é repetido  o número de bits do bloco/8 vezes  h é a função hash        16    . ou seja. podemos utilizar o HMAC com  qualquer função hash que desejarmos. o ipad é repetido  o número de bits do bloco/8 vezes  opad = 01011100 = 5C em hexadecimal.

 Ele produz um message digest de 512 bits.      17    . A tabela abaixo resume bem as várias versões  existentes.   Tais algoritmos recebem uma entrada de tamanho variável e produzem uma saída de  tamanho fixo.  dada uma entrada x. Na prática sabemos que colisões acontecem. o que seria uma  colisão. duas entradas diferentes nunca vão gerar saídas iguais. ou seja.   Na teoria. guarda‐se o hash da  senha). muito utilizado por softwares P2P. A FCC considerou em uma de suas provas o SHA‐1 como o algoritmo de hash mais  seguro existente.  MD5 (RFC 1321)   É um algoritmo de hash que produz uma saída (resumo da mensagem.   Apesar de largamente utilizado. várias colisões já foram detectadas   SHA (Secure Hash Algorithm)     Algoritmo de hash largamente utilizado. a função gera uma saída y e a partir de y é praticamente impossível gerar  a entrada x. na verificação de integridade  de arquivos e em logins (ao invés de guardar a senha no banco de dados. fingerprint ou  message digest) de 128 bits. Entenda “praticamente impossível” como matematicamente improvável.      Tabela emprestada do Stallings  Whirlpool    Algoritmo de hash cuja função de compressão é baseada em um algoritmo  criptográfico simétrico de bloco. o AES (Rijndael).Algoritmos de Hash (garantem integridade)   Os algoritmos de hash são baseados em funções matemáticas de um sentido.

   Utiliza‐se a criptografia assimétrica e os algoritmos de hash   Garante a integridade.   Certificados Digitais   “A Certificação Digital é um processo que garante. normalmente. por exemplo)  que guarda informações sobre seu titular e é atestado (garantido) por uma Autoridade  Certificadora. a chave dela é cross‐certified por outra CA   • A validade de um certificado é verificada junto à autoridade certificadora que o emitiu. então a mensagem é integra e autêntica. garantindo o não‐repúdio. a identidade de  uma pessoa ou de um computador. de forma única. autenticidade. a autenticidade e o não‐repúdio das mensagens assinadas   Funcionamento:   o Calcula‐se o message digest da mensagem usando uma função de hash   o Cifra‐se o message digest com a chave privada do emissor   o Junta‐se a message digest cifrada com a mensagem original e envia para o  receptor   o O receptor decifra o message disgest usando a chave pública do emissor   o O receptor calcula o message digest da mensagem recebida usando a mesma  função de hash do emissor.”   “Um Certificado Digital é um documento (um arquivo em seu computador. se o message digest obtido for idêntico ao enviado  pelo emissor.Assinatura Digital (Integridade. como CA (Autoridade Certificadora). nãorepúdio)   • • • • O propósito da assinatura digital é detectar modificações não‐autorizadas nos dados e  autenticar a identidade dos signatários. A  Certificação Digital se baseia na existência de documentos chamados Certificados Digitais para  cada indivíduo a ser autenticado. A certificação digital é garantida por um terceiro de  confiança: uma instituição conhecida.       18    .”   • Amarram indivíduos a suas respectivas chaves públicas   • Autoridade certificadora (CA)   o Verifica a identidade de uma pessoa e emite um certificado que atesta que a  chave pública é desta pessoa   o Assina o certificado com sua própria chave privada   • Verifica‐se a procedência da mensagem se a chave pública do emissor decifrar os  dados   • Os certificados são enviados para um repositório que guarda os certificados e as listas  de certificados revogados   • Os certificados são revogados quando:   o A chave secreta do usuário foi comprometida   o Dados pessoais do usuário são alterados   o Usuário não quer mais ser certificado   o O certificado da CA foi comprometido   o O usuário violou a política de segurança   • Para verificar a assinatura da CA.  nunca de forma independente da CA.

 se está confiando também.  tamanho das chaves. em toda a PKI. o repassa para a CA Intermediária emitir o certificado. desde a AC Raiz. que recebe as  solicitações de emissão de certificados dos usuários que os requerem e. uma grande “cadeia de confiança” em que. revogar ou renovar certificados. técnicas.   Portal ICP‐Brasil: https://www.Infra­estrutura de Chaves Públicas (ICP) / Public Key  Infrastructure  (PKI)  Uma PKI é um conjunto de regras. A DPC é revisada e republicada várias vezes e suas  diretrizes determinam como ela vai agir para emitir. É uma CA intermediária que emite os certificados para os  usuários finais. ela emite seu próprio certificado).     19    . tempo máximo de publicação da LCR  (Lista dos Certificados Revogados).  documentos exigidos. são os componentes que solicitarão e utilizarão certificados emitidos pelas CAs  daquela PKI. Uma PKI é. associada a uma AC. ligado as CAs.. mas a AC Raiz não pode emitir  certificados para usuários finais (como sites ou pessoas físicas). etc.   • Autoridades Certificadoras Intermediárias (CA): São subordinadas à CA Raiz e têm  seus certificados emitidos por esta.  quando se confia em um de seus componentes.br/  Uma PKI é formada por:   • Uma Autoridade Certificadora Raiz (CA Raiz): o topo da PKI. práticas e procedimentos que existe para gerar  garantias aos seus usuários. caso o pedido  seja considerado válido. critérios para a emissão dos certificados. em suma.   • DPC (Declaração de Práticas de Certificação): documento. As CAs são entidades públicas ou privadas com  estrutura física segura o suficiente para guardar. sigilosamente. validade dos certificados. Ela é o gênese de toda a confiança. os dados de seus  clientes (certificados). Confiar num certificado de um usuário qualquer requer confiança em  todos os níveis daquele certificado. A CA Raiz emite  certificados atestando a autenticidade das CAs intermediárias e a CA Raiz é auto‐ certificada (ou seja.   • Usuários: pessoas/empresas/sites que se beneficiam do “universo de confiança” da  PKI. todos os componentes da  PKI confiam na CA Raiz.gov. como: algoritmos usados.icpbrasil. que  especifica os critérios técnicos da estrutura de certificação.   • Autoridades de Registro (AR): é uma instituição.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->