(substituições). Em cifras de substituição, as letras são alteradas para outras letras do mesmo alfabeto; ao codificar, as letras são alteradas para algo completamente diferente - imagens, símbolos de outros alfabetos, sequências de caracteres diferentes, etc. Uma tabela de correspondência inequívoca entre o alfabeto do texto fonte e os símbolos de código é compilada e, de acordo com esta tabela, ocorre a codificação um a um. Para decodificar, você precisa conhecer a tabela de códigos.
Há um grande número de códigos usados em diferentes áreas da vida humana. Códigos bem conhecidos são usados em sua maior parte para a conveniência de transferir informações de uma forma ou de outra. Se a tabela de códigos for conhecida apenas pelo transmissor e pelo receptor, então uma cifra bastante primitiva é obtida, que é facilmente passível de análise de frequência. Mas se uma pessoa está longe da teoria da codificação e não está familiarizada com a análise de frequência do texto, então é bastante problemático para ela adivinhar essas cifras.
A1Z26
A cifra mais simples. É denominado A1Z26 ou na versão russa A1Я33. As letras do alfabeto são substituídas por seus números ordinais.
"NoZDR" pode ser criptografado como 14-15-26-4-18 ou 1415260418.
Código Morse
Letras, números e alguns sinais estão associados a um conjunto de pontos e travessões, que podem ser transmitidos por rádio, som, batida, telégrafo luminoso e bandeiras de sinalização. Como os marinheiros possuem uma bandeira correspondente associada a cada letra, é possível transmitir uma mensagem com as bandeiras.
Braille
Braille é um sistema de leitura tátil para cegos, composto de caracteres de seis pontos chamados células. A célula tem três pontos de altura e dois pontos de largura.
Diferentes caracteres braille são formados colocando pontos em diferentes posições dentro de uma célula.
Por conveniência, os pontos são descritos ao ler da seguinte forma: 1, 2, 3 da esquerda de cima para baixo e 4, 5, 6 da direita de cima para baixo.
Ao compilar o texto, as seguintes regras são seguidas:
uma célula (espaço) é saltada entre as palavras;
nenhuma célula é ignorada após a vírgula e o ponto-e-vírgula;
um travessão é escrito junto com a palavra anterior;
o número é precedido por um sinal digital.
Páginas de código
Em missões e enigmas de computador, você pode codificar letras de acordo com seus códigos em várias páginas de código - tabelas usadas em computadores. Para textos cirílicos, é melhor usar as codificações mais comuns: Windows-1251, KOI8, CP866, MacCyrillic. Embora para criptografia complexa, você pode escolher algo mais exótico.
Você pode codificar com números hexadecimais ou convertê-los em decimais. Por exemplo, a letra Ё em KOI8-R tem o código B3 (179), em CP866 é F0 (240) e em Windows-1251 é A8 (168). E você pode pesquisar letras nas tabelas certas para encontrar uma correspondência nas da esquerda, então o texto acabará sendo digitado por "krakozyabras" do tipo èαᬫº∩íαδ (866 → 437) ou Êðàêîçÿáðû (1251 → Latim-1).
E você pode alterar a metade superior dos caracteres para a inferior em uma mesa. Então, para Windows-1251 em vez de "krakozyabra", você obtém "jp" jng ap ("em vez de" HELICÓPTERO "-" BEPRNK (R "pode ser codificado com um deslocamento reverso para baixo de 128 caracteres, e esta codificação será uma variante de a cifra - ROT128, não apenas para o alfabeto usual, mas para a página de código selecionada.
A hora exata da origem da cifra é desconhecida, mas alguns dos registros encontrados desse sistema datam do século XVIII. Variações dessa cifra foram usadas pela Ordem Rosacruz e pelos Maçons. Os últimos a usavam em seus documentos secretos e correspondência com bastante frequência, portanto, a cifra passou a ser chamada de cifra dos maçons. Mesmo nas lápides dos maçons, você pode ver as inscrições usando esta cifra. Um sistema de criptografia semelhante foi usado durante a Guerra Civil dos Estados Unidos pelo exército de George Washington, bem como por prisioneiros em prisões federais nas Confederações dos Estados Unidos.
Abaixo estão duas opções (azul e vermelho) para preencher a grade de tais cifras. As letras são dispostas em pares, a segunda letra do par é desenhada com um símbolo pontilhado:
Cifras de direitos autorais
Cifras, onde um caractere do alfabeto (letra, número, sinal de pontuação) corresponde a um (raramente mais) caractere gráfico, muitos foram inventados. A maioria deles é projetada para uso em filmes de ficção científica, desenhos animados e jogos de computador. Aqui estão alguns deles:
Homens dançando
Uma das cifras de substituição de direitos autorais mais famosas é "". Foi inventado e descrito pelo escritor inglês Arthur Conan Doyle em uma de suas obras sobre Sherlock Holmes. As letras do alfabeto são substituídas por caracteres que parecem homens em poses diferentes. No livro, os homenzinhos não foram inventados para todas as letras do alfabeto, então os fãs modificaram e retrabalharam criativamente os símbolos, e o seguinte código foi obtido:
Alfabeto de Thomas More
Mas tal alfabeto foi descrito em seu tratado "Utopia" por Thomas More em 1516:
Cifras da série animada "Gravity Falls"
Bill Shifra
Stanford Pines (redator do diário)
Alfabeto Jedi de Star Wars
Alfabeto alienígena de "Futurama"
Alfabeto criptônio do super-homem
Alfabetos Bionicle
A semântica do código HTML é sempre um assunto quente. Alguns desenvolvedores sempre tentam escrever código semântico. Outros criticam os adeptos dogmáticos. E alguns ainda não têm ideia do que é e por que é necessário. A semântica é definida em HTML em tags, classes, IDs e atributos que descrevem a finalidade, mas não especificam exatamente o conteúdo que contêm. Ou seja, estamos falando sobre a separação do conteúdo e seu formato.
Vamos começar com um exemplo óbvio.
Semântica de código ruim
Boa semântica de código
O texto do artigo, que foi escrito por alguém. Inco Gnito- seu autor.Título do artigo
Quer você pense que o HTML5 está pronto para usar ou não, provavelmente usando a tag Mas nem tudo é claramente representado com tags HTML5. Vamos dar uma olhada em um conjunto de nomes de classes e ver se eles atendem aos requisitos semânticos. Código não semântico. Este é um exemplo clássico. Cada workbench CSS para grade modular usa esses tipos de nomes de classe para definir itens de grade. Quer seja "yui-b", "grid-4" ou "spanHalf" - esses nomes estão mais perto de descrever a marcação do que descrever o conteúdo. No entanto, seu uso na maioria dos casos é inevitável ao trabalhar com modelos de grades modulares. Código semântico. O rodapé adquiriu um significado duradouro em web design. Este é o rodapé da página que contém elementos como navegação repetida, direitos de uso, informações do autor e assim por diante. Esta classe define um grupo para todos esses elementos sem sua descrição. Se você passou a usar HTML5, é melhor usar o elemento Código não semântico. Ele define o conteúdo com precisão. Mas por que o texto deveria ser grande? Para se destacar de outro texto menor? "standOut" (seleção) é mais apropriado neste caso. Você pode decidir alterar o estilo do texto realçado, mas não faça nada com seu tamanho; nesse caso, o nome da classe pode confundi-lo. Código semântico. Neste caso, estamos falando sobre como determinar o nível de importância de um elemento na interface do aplicativo (por exemplo, um parágrafo ou um botão). Um item de nível superior pode ter cores brilhantes e um tamanho maior, enquanto os itens de nível inferior podem conter mais conteúdo. Mas não há uma definição exata de estilos neste caso, então o código é semântico. Esta situação é muito semelhante ao uso de tags Código semântico. Se ao menos cada nome de classe pudesse ser definido tão claramente! Nesse caso, temos a descrição de uma seção que possui um conteúdo fácil de descrever, como "tweets", "paginação" ou "admin-nav". Código não semântico. Neste caso, estamos falando sobre como definir o estilo do primeiro parágrafo da página. Essa técnica é usada para atrair a atenção dos leitores para o material. Melhor usar o nome "intro", que não menciona o elemento. Melhor ainda, use um seletor para esses parágrafos, como o artigo p: primeiro do tipo ou h1 + p. Código não semântico. Este é um nome de classe muito genérico usado para organizar a formatação de elementos. Mas não há nada nele para descrever o conteúdo. Vários teóricos da semântica recomendam usar um nome de classe como "grupo" em tais casos. É muito provável que eles estejam certos. Visto que este elemento sem dúvida serve para agrupar vários outros elementos, o nome recomendado descreveria melhor sua finalidade sem entrar em detalhes. Código não semântico. A descrição do formato do conteúdo é muito detalhada. É melhor escolher um nome diferente que descreva o conteúdo, em vez de seu formato. Código semântico. A classe descreve muito bem o status do conteúdo. Por exemplo, a mensagem de sucesso pode ter um estilo completamente diferente da mensagem de erro. Código não semântico. Este exemplo está tentando definir o formato do conteúdo, não sua finalidade. "plain-jane" é muito semelhante a "normal" ou "regular". O ideal é que o CSS seja escrito de forma que não haja necessidade de nomes de classe como "regular" para descrever o formato do conteúdo. Código não semântico. Esses tipos de classes são comumente usados para definir os elementos do site que não devem ser incluídos em uma cadeia de links. Nesse caso, é melhor usar algo como rel = nofollow para links, mas não uma classe para todo o conteúdo. Código não semântico. Esta é uma tentativa de descrever o formato do conteúdo, não sua finalidade. Digamos que você tenha dois artigos em seu site. E você deseja dar a eles estilos diferentes. As resenhas de filmes terão um fundo azul e as notícias populares terão um fundo vermelho e uma fonte maior. Uma maneira de resolver o problema é esta: Outra forma é esta: Certamente, se você perguntar a vários desenvolvedores sobre qual código é mais consistente com os requisitos de semântica, a maioria apontará para a primeira opção. Ele se encaixa perfeitamente com o material desta lição: uma descrição do propósito sem referências de formatação. E a segunda opção indica o formato ("blueBg" é um nome de classe formado por duas palavras em inglês que significam "fundo azul"). Se, repentinamente, for tomada a decisão de alterar o design das resenhas de filmes - por exemplo, fazer um fundo verde, o nome da classe "blueBg" se tornará o pesadelo do desenvolvedor. E o nome "revisão de filme" permitirá que você mude de forma completamente tranquila os estilos de design, enquanto mantém um excelente nível de suporte de código. Mas ninguém afirma que o primeiro exemplo é melhor em todos os casos, sem exceção. Digamos que um determinado tom de azul seja usado em muitos lugares do site. Por exemplo, é o fundo de algumas áreas do rodapé e da barra lateral. Você pode usar o seguinte seletor: Crítica de filme, rodapé> div: nth-of-type (2), à parte> div: nth-of-type (4) (plano de fundo: # c2fbff;) Uma solução eficaz, já que a cor é determinada em um único lugar. Mas esse código torna-se difícil de manter, pois tem um seletor longo e difícil de visualizar. Você também precisará de outros seletores para definir estilos exclusivos, o que levará à repetição do código. Ou você pode adotar uma abordagem diferente e deixá-los separados: Crítica do filme (plano de fundo: # c2fbff; / * Definição de cor * /) rodapé> div: nth-of-type (2) (background: # c2fbff; / * E mais uma coisa * /) à parte> div: nth-of - type (4) (background: # c2fbff; / * E mais um * /) Este estilo ajuda a manter o arquivo CSS mais organizado (diferentes áreas são definidas em diferentes seções). Mas a repetição de definições tem um preço. Para sites grandes, a definição da mesma cor pode ir até vários milhares de vezes. Terrível! Uma solução seria usar uma classe como "blueBg" para definir a cor uma vez e inseri-la no código HTML quando quiser usar o design dado. Obviamente, é melhor chamá-lo de "mainBrandColor" ou "secondaryFont" para se livrar da descrição de formatação. Você pode sacrificar a semântica do seu código em favor da conservação dos recursos. 4.1. Fundamentos de criptografia A essência da criptografia pelo método de substituição é a seguinte. Deixe as mensagens em russo serem criptografadas e cada letra dessas mensagens está sujeita a substituição. Então, a carta MAS um conjunto de caracteres é comparado com o alfabeto original (substituição de cifra) M A, B - M B, ..., Z - M Z... As substituições de cifras são escolhidas de forma que quaisquer dois conjuntos ( M eu e M J, i ≠ j) não continha os mesmos elementos ( M I ∩ M J = Ø). A tabela na Figura 4.1 é a chave de cifra de substituição. Sabendo disso, você pode realizar a criptografia e a descriptografia. Figura 4.1. Tabela de substituição de cifras Ao criptografar cada letra MAS uma mensagem aberta é substituída por qualquer caractere do conjunto M A... Se a mensagem contém várias letras MAS, então cada um deles é substituído por qualquer caractere de M A... Devido a isso, com a ajuda de uma chave, você pode obter diferentes versões da cifra para a mesma mensagem aberta. Desde os sets M A, M B, ..., M Z não se cruzem em pares, então para cada símbolo do programa de cifra é possível determinar sem ambigüidade a qual conjunto ele pertence e, portanto, qual letra da mensagem aberta ele substitui. Portanto, a descriptografia é possível e uma mensagem aberta é determinada de forma única. A descrição acima da essência das cifras de substituição se aplica a todas as suas variedades, exceto em que as mesmas substituições de cifras podem ser usadas para criptografar caracteres diferentes do alfabeto original (ou seja, M I ∩ M J ≠ Ø, i ≠ j). O método de substituição é frequentemente implementado por muitos usuários enquanto trabalham em um computador. Se o esquecimento não mudar o conjunto de caracteres do alfabeto latino para o alfabeto cirílico no teclado, então, em vez das letras do alfabeto russo, ao inserir o texto, as letras do alfabeto latino serão impressas ("substituições de cifras") . Alfabetos estritamente definidos são usados para registrar as mensagens originais e criptografadas. Os alfabetos para registrar as mensagens originais e criptografadas podem ser diferentes. Os símbolos de ambos os alfabetos podem ser representados por letras, suas combinações, números, imagens, sons, gestos, etc. Como exemplo, podemos citar os dançarinos da história de A. Conan Doyle () e o manuscrito da escrita rúnica () do romance de J. Verne "Viagem ao Centro da Terra". As cifras de substituição podem ser divididas nas seguintes subclasses(variedades). Figura 4.2. Classificação de cifras de substituição I. Cifras regulares. As substituições de cifras consistem no mesmo número de caracteres ou são separadas umas das outras por um separador (espaço, ponto, hífen, etc.). Cifra do slogan. Para uma determinada cifra, a construção de uma tabela de troca de cifras é baseada em um slogan (chave) - uma palavra fácil de lembrar. A segunda linha da tabela de substituição de cifras é preenchida primeiro com a palavra do slogan (com as letras repetidas descartadas) e, em seguida, com o restante das letras não incluídas na palavra do slogan, em ordem alfabética. Por exemplo, se a palavra slogan "UNCLE" for selecionada, a tabela terá esta aparência. Figura 4.4. Tabela de cifras para cifras de slogan Quando a mensagem original "ABRAMOV" é criptografada usando a chave acima, o código de criptografia será semelhante a "ДЯПДКМИ". Quadrado polibiano. O código foi inventado pelo estadista grego, líder militar e historiador Políbio (203-120 aC). Com relação ao alfabeto russo e aos números indianos (árabes), a essência da criptografia era a seguinte. As letras são escritas em um quadrado de 6x6 (não necessariamente em ordem alfabética). Fig.4.5. Tabela de cifras para quadrado polybian A carta a ser criptografada é substituída pelas coordenadas do quadrado (linha-coluna) em que está escrita. Por exemplo, se a mensagem original for "ABRAMOV", o ciphergram será "11 12 36 11 32 34 13". Na Grécia antiga, as mensagens eram transmitidas por telégrafo óptico (com tochas). Para cada letra da mensagem, primeiro o número de tochas foi levantado, correspondendo ao número da linha da letra, e depois o número da coluna. Tabela 4.1. A frequência de ocorrência de letras da língua russa em textos Existem tabelas semelhantes para pares de letras (bigramas). Por exemplo, bigramas frequentemente encontrados são "para", "mas", "st", "por", "en", etc. Outra técnica para quebrar códigos de cifras é baseada na exclusão de possíveis combinações de letras. Por exemplo, nos textos (se forem escritos sem erros ortográficos), você não pode encontrar as combinações "chya", "shchy", "bъ", etc. Para complicar a tarefa de quebrar cifras inequívocas, mesmo nos tempos antigos, antes da criptografia, espaços e / ou vogais eram excluídos das mensagens originais. Outra forma que dificulta a abertura é a criptografia bigramas(em pares de letras). 4.3. Cifras poligrama Cifras de substituição de poligrama- são cifras nas quais uma substituição de cifra corresponde a vários caracteres do texto original de uma vez. Portas Bigram Cipher... A cifra Ports, representada por ele em forma de tabela, é a primeira cifra bigrama conhecida. O tamanho de sua mesa era de 20 x 20 células; na parte superior, o alfabeto padrão foi escrito horizontalmente e à esquerda verticalmente (não continha as letras J, K, U, W, X e Z). Quaisquer números, letras ou símbolos podiam ser escritos nas células da mesa - o próprio Giovanni Porta usava símbolos - desde que o conteúdo de nenhuma das células fosse repetido. Com referência ao idioma russo, a tabela de substituição de cifras pode ter esta aparência. Figura 4.10. Tabela de criptografia para portas de criptografia A criptografia é realizada com pares de letras da mensagem original. A primeira letra do par aponta para a string de criptografia, a segunda para a coluna. No caso de um número ímpar de letras na mensagem original, um caractere auxiliar ("caractere em branco") é adicionado a ela. Por exemplo, a mensagem original "AB RA MO B", criptografada - "002 466 355 093". A letra "I" é usada como símbolo auxiliar. Cifra Playfair (inglês "Fair play"). No início da década de 1850. Charles Wheatstone inventou a chamada "cifra retangular". Leon Playfer, um amigo próximo de Wheatstone, compartilhou esse código em um jantar formal em 1854 com o ministro do Interior, Lord Palmerston e o príncipe Albert. E como a Playfair era bem conhecida nos círculos militares e diplomáticos, o nome "cifra Playfair" foi anexado para sempre à criação de Wheatstone. Essa cifra se tornou a primeira cifra de bigrama alfabética (símbolos, não letras, eram usados na tabela de Portas de Bigram). A intenção era garantir o sigilo das comunicações telegráficas e foi usado pelas forças britânicas nas guerras anglo-boer e na primeira guerra mundial. Também foi usado pela Guarda Costeira australiana durante a Segunda Guerra Mundial. A cifra fornece criptografia de pares de caracteres (bigramas). Assim, esta cifra é mais resistente à quebra do que uma cifra de substituição simples, uma vez que a análise de frequência é mais difícil. Pode ser realizado, mas não para 26 caracteres possíveis (alfabeto latino), mas para 26 x 26 = 676 bigramas possíveis. A análise da frequência do bigrama é possível, mas muito mais difícil e requer muito mais texto cifrado. Para criptografar uma mensagem, é necessário dividi-la em bigramas (grupos de dois caracteres), enquanto se dois caracteres idênticos forem encontrados em um bigrama, então um caractere auxiliar previamente acordado é adicionado entre eles (no original - X, para o alfabeto russo - eu) Por exemplo, “mensagem criptografada” torna-se “para cifra eu comunicação eu" Para formar uma tabela chave, um slogan é selecionado e, em seguida, preenchido de acordo com as regras do sistema de criptografia Trisemus. Por exemplo, para o slogan "UNCLE", a tabela principal tem esta aparência. Figura 4.11. Tabela chave para cifra Playfair Em seguida, orientado pelas seguintes regras, é realizada a criptografia de pares de caracteres do texto original: 1. Se os caracteres do bigrama do texto original ocorrerem em uma linha, esses caracteres serão substituídos pelos caracteres localizados nas colunas mais próximas à direita dos caracteres correspondentes. Se um caractere for o último em uma linha, ele será substituído pelo primeiro caractere da mesma linha. 2. Se os caracteres do bigrama do texto original ocorrerem na mesma coluna, eles serão convertidos para os caracteres da mesma coluna, localizados imediatamente abaixo deles. Se o caractere for o caractere inferior de uma coluna, ele será substituído pelo primeiro caractere da mesma coluna. 3. Se os caracteres do bigrama do texto original estiverem em colunas e linhas diferentes, eles serão substituídos por caracteres localizados nas mesmas linhas, mas correspondendo a outros cantos do retângulo. Um exemplo de criptografia. O bigrama “para” forma um retângulo - é substituído por “RC”; O bigram "shi" está em uma coluna - é substituído por "yue"; O digrama "fr" está em uma linha - é substituído por "xs"; O bigrama "s" forma um retângulo - é substituído por "yzh"; O bigrama "an" está em uma linha - é substituído por "ba"; O bigrama "mas" forma um retângulo - é substituído por "am"; O bigrama "es" forma um retângulo - é substituído por "rt"; O bigrama "oya" forma um retângulo - é substituído por "ka"; O bigrama "sobre" forma um retângulo - é substituído por "pa"; O bigrama "shche" forma um retângulo - é substituído por "ela"; O bigrama "ni" forma um retângulo - é substituído por "an"; O bigrama "ela" forma um retângulo - é substituído por "gi". O programa de codificação é "zhb yue xs yzh ba am gt ka pashengi". Para descriptografar, é necessário usar a inversão dessas regras, descartando os símbolos eu(ou NS) se não fizerem sentido na mensagem original. Consistia em dois discos - um externo estacionário e um interno móvel, no qual as letras do alfabeto eram aplicadas. O processo de criptografia consistia em encontrar a letra do texto sem formatação na unidade externa e substituí-la pela letra da unidade interna abaixo dela. Depois disso, o disco interno foi deslocado em uma posição e a criptografia da segunda letra foi realizada usando o novo alfabeto cifrado. A chave dessa cifra era a ordem das letras nos discos e a posição inicial do disco interno em relação ao externo. Mesa Trisemus. Uma das cifras inventadas pelo abade alemão Trisemus era uma cifra poli-alfabética baseada na chamada "mesa Trissemus" - uma mesa com um lado igual a n, Onde n- o número de caracteres do alfabeto. A primeira linha da matriz contém letras na ordem de sua sequência no alfabeto, a segunda - a mesma sequência de letras, mas com um deslocamento cíclico uma posição para a esquerda, na terceira - com um deslocamento cíclico de duas posições para o esquerda, etc. Figura 4.17. Mesa Trisemus A primeira linha também é o alfabeto para letras de texto simples. A primeira letra do texto é criptografada na primeira linha, a segunda letra na segunda e assim por diante. Depois de usar a última linha, eles retornam à primeira. Portanto, a mensagem "ABRAMOV" assumirá a forma de "AVTGRUZ". Sistema de criptografia Vigenere. Em 1586, o diplomata francês Blaise Vigenère apresentou à comissão de Henrique III a descrição de uma cifra simples, mas bastante forte, baseada na tabela de Trissemus. Antes da criptografia, uma chave é selecionada entre os caracteres do alfabeto. O procedimento de criptografia em si é o seguinte. O i-ésimo caractere da mensagem aberta na primeira linha determina a coluna e o i-ésimo caractere da chave na coluna mais à esquerda determina a linha. Na interseção de uma linha e uma coluna, haverá o i-ésimo caractere a ser colocado na cifra. Se o comprimento da chave for menor que a mensagem, ela será reutilizada. Por exemplo, a mensagem original é "ABRAMOV", a chave é "UNCLE", a cifra é "DAPHY". Para ser justo, deve-se notar que a autoria desta cifra pertence ao italiano Giovanni Batista Bellazo, que a descreveu em 1553. A história "ignorou um fato importante e deu o nome de Vigenere à cifra, apesar de ele não ter feito nada para criá-la . " Bellazo sugeriu chamar uma palavra ou frase secreta senha(Senha italiana; liberdade condicional francesa - palavra). Em 1863, Friedrich Kasiski publicou um algoritmo para atacar essa cifra, embora alguns criptanalistas experientes já tenham conhecido casos de sua quebra da cifra. Em particular, em 1854, a cifra foi quebrada pelo inventor do primeiro computador analítico, Charles Babbage, embora esse fato só tenha se tornado conhecido no século 20, quando um grupo de cientistas analisou os cálculos e notas pessoais de Babbage. Apesar disso, a cifra de Vigenère teve a reputação de ser extremamente resistente à quebra "manual" por um longo tempo. Assim, o famoso escritor e matemático Charles Lutwidge Dodgson (Lewis Carroll) em seu artigo "Cifra Alfabética", publicado em uma revista infantil em 1868, chamou a cifra de Vigenere inquebrável. Em 1917, a popular revista científica Scientific American também descreveu a cifra de Vigenere como inquebrável. Máquinas rotativas. As ideias de Alberti e Bellazo foram utilizadas para criar máquinas rotativas eletromecânicas da primeira metade do século XX. Alguns deles foram usados em diferentes países até a década de 1980. A maioria deles usava rotores (rodas mecânicas), cuja posição relativa determinava o alfabeto cifrado atual usado para realizar a substituição. A mais famosa das máquinas rotativas é a máquina alemã da Segunda Guerra Mundial "Enigma". Os pinos de saída de um rotor são conectados aos pinos de entrada do próximo rotor, e quando o símbolo da mensagem original é pressionado no teclado, o circuito elétrico é fechado, como resultado do qual uma lâmpada com um símbolo de substituição de cifra acende pra cima. Figura 4.19. Sistema Rotary Enigma [www.cryptomuseum.com] A ação de cifragem da Enigma é mostrada para duas teclas pressionadas sucessivamente - a corrente flui através dos rotores, é “refletida” do refletor e, em seguida, novamente através dos rotores. Figura 4.20. Esquema de criptografia Observação. As linhas cinza mostram outros circuitos elétricos possíveis dentro de cada rotor. Carta UMA criptografado de maneiras diferentes com pressionamentos sucessivos de uma tecla, primeiro em G então em C... O sinal segue por uma rota diferente devido à rotação de um dos rotores após pressionar a letra anterior da mensagem original. 3. Descreva os tipos de cifras de substituição. Semântica(fr. sémantique do grego antigo σημαντικός - denotando) - a ciência de compreender certos signos, sequências de símbolos e outras convenções. Esta ciência é usada em muitos campos: linguística, proxêmica, pragmática, etimologia, etc. Não sei o que essas palavras significam e o que todas essas ciências fazem. E não importa, estou interessado na questão de usar semântica no layout dos sites. Não vou tocar no termo Web Semântica aqui. À primeira vista, pode parecer que os temas Semantic Web e Semantic HTML são quase a mesma coisa. Mas, na verdade, a Web Semântica é um conceito bastante filosófico e não tem muito em comum com a realidade atual. Na língua, cada palavra tem um significado específico, um propósito. Quando você diz "salsicha", quer dizer um produto alimentício que é carne picada (geralmente carne) em um invólucro oblongo. Em suma, você quer dizer salsicha, não leite ou ervilhas. HTML também é uma linguagem, suas "palavras", chamadas tags, também têm um certo significado e propósito lógico. Portanto, antes de mais nada código HTML semântico é um layout com o uso correto de tags HTML, utilizando-os para os fins a que se destinam, da forma como foram concebidos pelos desenvolvedores da linguagem HTML e dos padrões da web. microformats.org é uma comunidade que trabalha para dar vida às ideias idealistas da Web Semântica, trazendo a marcação de página para mais perto desses ideais semânticos. Se no meu site as informações são exibidas da mesma forma que no design, por que você ainda deveria quebrar seu cérebro e pensar em alguma semântica ?! Este é um trabalho extra! Quem precisa disso ?! Quem vai apreciar isso além de outro designer de layout? Muitas vezes ouvi essas perguntas. Vamos descobrir. Aumenta a disponibilidade de informações no site. Isso é importante principalmente para agentes alternativos, como: Os motores de busca estão constantemente melhorando seus métodos de pesquisa para que os resultados incluam as informações que realmente procurando por do utilizador. HTML semântico facilita isso porque se presta a uma análise muito melhor - o código é mais limpo, o código é lógico (você pode ver claramente onde estão os cabeçalhos, onde está a navegação, onde está o conteúdo). Bom conteúdo mais layout semântico de alta qualidade já é uma aplicação séria para boas posições nos resultados do mecanismo de pesquisa. ,
,
e assim por diante, mas para outros elementos da interface.
Mas...
MAS B ...
eu
M A M B ...
M eu
MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu
D eu E H MAS B EM G E Yo F Z º PARA eu M O NS R COM T Tenho F NS C H NS SCH B NS B NS YU
1
2
3
4
5
6
1
MAS B EM G D E
2
Yo F Z E º PARA
3
eu M H O NS R
4
COM T Tenho F NS C
5
H NS SCH B NS B
6
NS YU eu -
-
-
P / p No. Carta Frequência,% P / p No. Carta Frequência,%
1
O 10.97
18
B 1.74
2
E 8.45
19
G 1.70
3
MAS 8.01
20
Z 1.65
4
E 7.35
21
B 1.59
5
H 6.70
22
H 1.44
6
T 6.26
23
º 1.21
7
COM 5.47
24
NS 0.97
8
R 4.73
25
F 0.94
9
EM 4.54
26
NS 0.73
10
eu 4.40
27
YU 0.64
11
PARA 3.49
28
C 0.48
12
M 3.21
29
SCH 0.36
13
D 2.98
30
NS 0.32
14
NS 2.81
31
F 0.26
15
Tenho 2.62
32
B 0.04
16
eu 2.01
33
Yo 0.04
17
NS 1.90
MAS B EM G D E
(Yo)F Z E
(º)PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu
MAS 001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
025
026
027
028
029
030
031
B 032
033
034
035
036
037
038
039
040
041
042
043
044
045
046
047
048
049
050
051
052
053
054
055
056
057
058
059
060
061
062
EM 063
064
065
066
067
068
069
070
071
072
073
074
075
076
077
078
079
080
081
082
083
084
085
086
087
088
089
090
091
092
093
G 094
095
096
097
098
099
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
D 125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
SUA) 156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
F 187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
Z 218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
E (th) 249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
PARA 280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
eu 311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
M 342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
H 373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
O 404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
NS 435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
R 466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
COM 497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
T 528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
Tenho 559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
F 590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
NS 621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
C 652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
H 683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
NS 714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
SCH 745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
B 776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
NS 807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
B 838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
NS 869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
YU 900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
eu 931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
D eu E H MAS B
EM G E Yo F Z
º PARA eu M O NS
R COM T Tenho F NS
C H NS SCH B NS
B NS YU -
1
2
MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu
B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS
EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B
G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM
D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G
E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D
Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E
F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo
Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F
E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z
º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E
PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º
eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA
M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu
H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M
O NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H
NS R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O
R COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS
COM T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R
T Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM
Tenho F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T
F NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho
NS C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F
C H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS
H NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C
NS SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H
SCH B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS
B NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH
NS B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B
B NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS
NS YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B
YU eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS
eu MAS B EM G D E Yo F Z E º PARA eu M H O NS R COM T Tenho F NS C H NS SCH B NS B NS YU
A anotação
Layout semântico - o que é?
Por que e quem precisa de layout semântico?
HTML semântico para desenvolvedores da Web
Código semântico para usuários
HTML semântico para máquinas