Bitlocker (V): AES – CBC + Difusor


Como planteé en el anterior post, existen numerosos elementos necesarios aplicar a la hora de determinar un mecanismo de cifrado, y estos deben garantizarse, de tal forma que el acceso a los datos cifrados deben ser controlados, tanto a nivel lógico, como el impedir los ataques que mediante manipulación arbitraria permitiera el acceso aleatorio a los datos y la obtención del mecanismo de cifrado.


Por mecanismos de rendimiento el mejor sistema que se puede emplear para el cifrado de datos de disco es AES-CBC, pero ya advertimos anteriormente el riesgo de posibles ataques al utilizar únicamente este mecanismo. La decisión finalmente establecía la utilización de AES-CBC para la encriptación primaria y una clave difusor independiente para texto plano. Este difusor tiene como objetivo fortificar frente a los ataques de manipulación, mejor que lo que puede realizar de forma única el algoritmo de AES-CBC.


 


 


 


        


 


 Figura 1 – Funciones de cifrado mediante AES-CBC + Difusor


 


La figura anterior describe los mecanismos empleados para el cifrado de los datos. Los datos en texto plano son corred con una clave del sector. Posteriormente se le aplican los difusores y finalmente se encripta con el modo AES-CBC. La clave del sector viene definida por la siguiente función:


 


KS:=E(KSEC, e(s)) || E(KSEC,e’(s))


 


donde E() es la función AES de encriptación, KSEC es la clave utilizada (128 o 256 bits, según lo elegido) y e(s) y e’(s), es la función de codificación utilizada en la capa AES-CBC teniendo en cuenta que e’ es como e solo que el último byte tiene el valor 128. La clave Ks se repite tantas veces como sea necesario hasta completar una clave del tamaño del bloque y se aplica una función corred sobre el texto plano.


 


El uso de dos difusores, muy similares pero aplicados en direcciones opuestas, permite la propiedad de difusión correcta en ambas direcciones. Los difusores vienen determinadas en una función donde intervienen el número de palabras del sector y un operador de 4 constantes (diferentes para cada difusor) en un array que especifica la rotación. Este mecanismo tiene como objetivo minimizar el impacto del cifrado en el rendimiento al utilizar un menor uso de ciclos por segundo para realizar el mismo.


 


Referencias Externas


 


——————————————————-


 


RFC 3602 AES – CBC


 


Algoritmo AES – CBC + Elephant


 


 

Un comentario sobre “Bitlocker (V): AES – CBC + Difusor”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *