Agilidade Criptográfica no Microsoft Office 2007 Service Pack 2
O post anterior é um bom exemplo da necessidade de se ter agilidade criptográfica no sistema operacional e nas aplicações. Algoritmos de criptografia tem uma vida útil limitada e tem que ser periodicamente trocados por algoritmos mais novos, em períodos nem sempre previsíveis (um novo ataque por exemplo pode forçar a troca imediatamente). E a pior coisa que você quer nestas horas é ter que reescrever todas as suas aplicações para suportar um novo algoritmo.
Além disso, vários governos possuem requisitos específicos para algoritmos criptográficos, que podem incluir o uso de algoritmos específicos (alguns confidenciais) para a proteção de informações mais sensíveis. O governo americano por exemplo possui a Suite A, enquanto a Federação Russa exige o uso do GOST. Para atender a estes mercados as aplicações tem de permitir que estes governos nacionais incluam o suporte a estes algoritmos – mesmo que o desenvolvedor da aplicação jamais possa ter acesso aos mesmos.
Para permitir que algoritmos criptográficos possam ser facilmente plugáveis nas aplicações, o Windows Vista inclui uma nova plataforma criptográfica, chamada de Crypto Next Generation (CNG). Esta plataforma permite que qualquer algoritmo criptográfico possa ser plugado dentro do Windows e utilizado pelas aplicações rodando no sistema.
A CNG também permite que aplicações possam na medida do possível abstrair as funções de criptografia, de tal forma que as operações criptográficas possam ser usadas sem estarem amarradas a algum algoritmo específico. Aplicações codificadas para o CNG podem permitir por exemplo que o gerador de números randômicos ou uma cifra simétrica sejam substituídas sem qualquer alteração na aplicação, tornando-a “ágil” do ponto de vista de criptografia.
Depois deste longo preâmbulo, vamos ao que interessa. Uma das novidades no Service Pack 2 do Microsoft Office 2007 é a introdução de agilidade criptográfica na encriptação de arquivos OpenXML. Com o SP2 o Office 2007 passa a utilizar a CNG do Windows Vista para permitir que o usuário possa:
Configurar o algoritmo de encriptação simétrica, com suporte para cifras de bloco indo de 2 a 4096 bytes
Configurar o modo de operação da cifra de bloco (CBC ou CFB)
Configurar o algoritmo de hashing
Configurar o tamanho do salt para até 64k bytes
Cipher-block chaining (CBC or CFB)
Configurar o número de iterações de hashing para proteção da senha, de 100 mil para até 10 milhões
Com estes recursos uma organização pode definir a sua própria política para proteção dos arquivos encriptados, incluindo o uso do seu próprio algoritmo caso requerido por norma ou legislação.
Para quem tiver curiosidade, o formato de arquivo encriptado utilizado pelo Office 2007 está documentado em https://msdn.microsoft.com/en-us/library/cc313071.aspx, já que não faz parte da especificação OpenXML. A Microsoft divulgou também no Codeplex um conjunto de rotinas para trabalhar com arquivos OpenXML encriptados, sob licença open source MS-PL.
Comments
Anonymous
January 01, 2003
PingBack from http://microsoft.linkedz.info/2009/05/09/agilidade-criptografica-no-microsoft-office-2007-service-pack-2/Anonymous
January 01, 2003
No post anterior nós vimos porque agilidade criptográfica é tão importante para as aplicações atuais.