¿El cifrado de disco completo en la unidad SSD reduce su vida útil?

55

Me gustaría suponer que una implementación de cifrado de disco completo introduciría escrituras adicionales cada vez que el equipo se inicia en marcha y parada. Dado que se considera que los discos de estado sólido tienen una capacidad promedio menor para las escrituras antes de la falla, ¿puede una solución de cifrado de disco completo reducir la vida útil esperada del disco en el que se implementa?

Si mis suposiciones son incorrectas, entonces supongo que este es un punto discutible. Gracias por adelantado.

Bill VB
fuente
esto es un duplicado exacto de superuser.com/questions/57573/...
1
@JarrodRoberson te refieres a esta pregunta? superuser.com/questions/39719/… De cualquier manera, todas las preguntas relacionadas tienen respuestas inferiores, por lo que no las cerraría como engañadas de ellas
Ivo Flipse
@IvoFlipse el quid de la pregunta que marqué como estados duplicados "... ¿Esto pondrá efectivamente la unidad en un estado completamente utilizado y cómo afectará esto la nivelación de desgaste y el rendimiento de la unidad? ..." eso es exactamente esto la misma pregunta.

Respuestas:

49

Piense en el cifrado como un adaptador. Los datos simplemente se codifican antes de ser escritos o decodificados antes de ser leídos. La única diferencia es que se pasa una clave en algún momento (generalmente cuando se inicializa la unidad / controlador) para usarla para el cifrado / descifrado.

Aquí hay un gráfico (aproximado) que reuní para mostrar el patrón básico:

Esquema que demuestra el cifrado completo de la unidad

Como puede ver, no hay necesidad de realizar lecturas o escrituras adicionales porque el módulo de cifrado cifra los datos antes de que los datos se escriban en los platos y los descifra antes de enviarlos al proceso que realizó la lectura.

La ubicación real del módulo de cifrado puede variar; puede ser un controlador de software o un módulo de hardware en el sistema (p. ej., controlador, BIOS, módulo TPM) o incluso en el propio disco. En cualquier caso, el módulo está "en el medio del cable" entre el software que realiza las operaciones de archivo y los datos reales en los platos de la unidad.

Synetech
fuente
24
¡Esta respuesta es lógicamente incorrecta! Depende de cuántos bloques cifre el sistema operativo a la vez. Suponga que encripta 4K a la vez, simplemente modificando un byte causará escrituras en 8 bloques de 512 bytes en SSD, mientras que sin encriptación, el sistema operativo (si se optimiza bien) solo necesita escribir en 1 bloque de 512 bytes. Entonces, el cifrado se agrega a las escrituras de disco 8x. En la práctica, el sistema operativo puede elegir un tamaño de bloque apropiado para el cifrado, pero la respuesta no aborda este problema y no hace ninguna afirmación al respecto. Entonces, en la práctica, esta respuesta puede ser correcta, pero lógicamente es incorrecta, al menos está incompleta.
icando
21
@icando, es una simplificación genérica. Además, de lo que estás hablando es de un cifrado de flujo . El programa de cifrado de disco completo más común / popular, TrueCrypt , utiliza cifrados de bloque . Si puede señalar un sistema de cifrado de disco completo que está mal diseñado y / o utiliza un cifrado de flujo que incurre en ese tipo de impacto, entonces hágalo y felizmente le explicaré la respuesta.
Synetech
1
Si el módulo de cifrado está en la unidad, puede estar seguro de que tiene en cuenta la naturaleza de los SSD (de lo contrario, el MFG es tonto y desea un reembolso). Si el módulo está en el BIOS, se puede actualizar fácilmente para incluir un mejor algoritmo si es necesario.
Synetech
1
En cuanto al software, es aún más fácil de actualizar. TrueCrypt, por ejemplo, se ha actualizado analizado en términos de desgaste de SSD [1] [2] y el principal problema no es el desgaste, sino que puede ser vulnerable a los ataques .
Synetech
99
La preocupación con el cifrado de disco completo es que DISCARD / TRIM generalmente está deshabilitado por razones de seguridad. Todas las unidades SSD tienen un tamaño de bloque lógico de 4 kb, la implementación subyacente real debajo de esta capa se mantiene en secreto por la mayoría de los fabricantes, incluso con las unidades más nuevas que muestran tamaños de página de 8 kb, todavía están 4 kb bajo las cubiertas con firmware haciendo traducciones. Nada de esto es una preocupación de que el firmware haga lo correcto con la concatenación de escrituras, por lo que la afirmación de que el cifrado agrega algo mucho menos escrituras 8X es ignorar el cifrado y el sistema de archivos y las estrategias de escritura del firmware.
24

Respuesta corta:
si el controlador de disco no usa compresión, la respuesta de Synetech es correcta y el cifrado no cambiará nada. Si el controlador usa compresión, entonces el cifrado probablemente reducirá la vida útil del disco (en comparación con un disco idéntico donde no se usa el cifrado).

Respuesta larga:
algunos controladores SSD usan compresión para minimizar la cantidad de datos escritos en los chips flash reales y para mejorar el rendimiento de lectura (los controladores SandForce son un buen ejemplo, puede haber otros). Esto funcionará mejor si los datos escritos en el disco son fácilmente comprimibles. Los archivos de texto, los archivos ejecutables, las imágenes sin comprimir (BMP, por ejemplo) y similares generalmente se pueden comprimir bastante, mientras que los archivos que ya están comprimidos o encriptados son casi imposibles de comprimir, ya que los datos se verán casi completamente aleatorios para el algoritmo de compresión en el controlador .

Tom's Hardware hizo una buena prueba sobre esto precisamente en un Intel SSD 520 que se puede encontrar en
http://www.tomshardware.com/reviews/ssd-520-sandforce-review-benchmark,3124-11.html

Lo que básicamente hacen es medir la amplificación de escritura (la proporción de la cantidad de datos escritos en flash y la cantidad de datos enviados al disco) del disco cuando se escriben datos completamente comprimibles y completamente aleatorios. Para datos completamente aleatorios, la amplificación de escritura es 2.9 *, lo que significa que por cada GB de datos enviados al disco, 2.9 GB se escriben en flash. El artículo señala que esto parece ser aproximadamente el mismo número medido en unidades que no usan compresión. Para datos completamente comprimibles, la relación es 0.17, que es bastante más baja.

El uso normal probablemente terminará en algún punto intermedio a menos que los datos estén encriptados. Las predicciones de por vida en el artículo son algo académicas, pero muestra que el cifrado definitivamente podría afectar la vida útil de un SSD con un controlador SandForce. La única forma de evitar esto sería si el controlador mismo puede hacer el cifrado después de que se haya producido la compresión.

* El artículo no especifica por qué 2.9 se considera un valor normal y realmente no lo he investigado. Una explicación lógica podría ser que la mayoría de los SSD usan MLC NAND, que es un poco propenso a errores (pueden producirse cambios de bits en otras partes de los bloques de borrado mientras escribo si recuerdo correctamente). Para corregir esto, los datos probablemente se escriben en varios lugares para que la recuperación o corrección siempre sea posible.

León
fuente
los datos cifrados no son más grandes, solo se cifran, el cifrado no hace que los datos crezcan en tamaño. ¿Quién usa la compresión automática de sistemas de archivos en 2012?
77
@JarrodRoberson: los controladores SandForce SSD comprimen datos para minimizar las escrituras. Bien puede haber otros ejemplos también.
John Bartholomew
@JohnBartholomew dije, sistemas de archivos, que vienen antes que los controladores de disco. Y para su punto no relacionado, el esquema de compresión SandForce supuestamente detecta datos "no comprimibles" o "precomprimidos" y no los comprime en sus intentos de minimizar las escrituras, este es un secreto, por lo que nunca lo sabremos con certeza. De cualquier manera, no ocupa más espacio , solo más tiempo en ese caso específico.
1
@JarrodRoberson: El punto es que si el controlador intenta comprimir todo, el rendimiento (en el tiempo y en el espacio) será peor si todos los datos que envía al disco están encriptados. Será peor en el tiempo porque el controlador perderá tiempo detectando que los datos no son comprimibles, y será peor en el espacio en comparación con dar al disco datos no cifrados (y, por lo tanto, en algunos casos, comprimibles).
John Bartholomew
44
@JarrodRoberson: No obtener el beneficio de menos escrituras suena exactamente como lo que estaba preguntando el OP y es una consecuencia directa del uso de cifrado.
Leo
6

El cifrado de disco completo no aumenta la cantidad de datos escritos en un disco, aparte de los metadatos que la capa de cifrado necesita almacenar junto con el sistema de archivos (que es insignificante). Si cifra 4096 bytes, se escriben 4096 bytes.

Michael Hampton
fuente
1

La respuesta depende de lo que quiere decir con "cifrado de disco completo".

Si simplemente quiere decir que todos los archivos y metadatos del sistema de archivos están encriptados en el disco, entonces no, no debería tener ningún impacto en la vida útil del SSD.

Sin embargo, si se refiere a un mensaje más tradicional "Todo el contenido del disco, incluido el espacio no utilizado, está encriptado", entonces sí, reducirá la vida útil, tal vez de manera significativa.

Los dispositivos SSD usan "nivelación de desgaste" para extender las escrituras a través del dispositivo para evitar el desgaste prematuro de algunas secciones. Pueden hacer esto porque los controladores modernos del sistema de archivos le dicen específicamente al SSD cuando los datos en un sector en particular ya no se usan (se han "descartado"), de modo que el SSD puede volver a poner ese sector a cero y proceder a usar cualquier sector tiene la menor cantidad de uso para la próxima escritura.

Con un esquema tradicional de cifrado de disco completo, ninguno de los sectores está sin usar. Los que no contienen sus datos todavía están encriptados. De esta forma, un atacante no sabe qué parte de su disco tiene sus datos y qué parte es solo ruido aleatorio, lo que hace que el descifrado sea mucho más difícil.

Para usar dicho sistema en un SSD, tiene dos opciones:

  1. Permita que el sistema de archivos continúe realizando descartes, en cuyo punto los sectores que no tienen sus datos estarán vacíos y un atacante podrá concentrar sus esfuerzos solo en sus datos.
  2. No permita que el sistema de archivos realice descartes, en cuyo caso su cifrado sigue siendo fuerte, pero ahora no puede nivelar significativamente el desgaste, por lo que las secciones más utilizadas de su disco se desgastarán, potencialmente significativamente por delante del resto.
Perkins
fuente