trab. estructura de dats.docx

11
INTRODUCCIÓN A menudo es necesario almacenar el valor de los campos de un objeto en el disco y a continuación, más tarde, recuperar estos datos. Aunque esto es fácil de lograr sin confiar en la serialización, este enfoque es a menudo embarazoso y propenso a errores y se vuelve progresivamente más complejo al necesitar realizar el seguimiento de una jerarquía de objetos. El almacenamiento persistente nos permite guardar datos de manera duradera que si se realiza en base de datos proporciona grandes ventajas.

Transcript of trab. estructura de dats.docx

Page 1: trab. estructura de dats.docx

INTRODUCCIÓN

A menudo es necesario almacenar el valor de los campos de un objeto en el disco y a continuación, más tarde, recuperar estos datos. Aunque esto es fácil de lograr sin confiar en la serialización, este enfoque es a menudo embarazoso y propenso a errores y se vuelve progresivamente más complejo al necesitar realizar el seguimiento de una jerarquía de objetos. El almacenamiento persistente nos permite guardar datos de manera duradera que si se realiza en base de datos proporciona grandes ventajas.

Page 2: trab. estructura de dats.docx

El almacenamiento persistente surge ante la necesidad de guardar datos de programa de forma duradera para recuperarlos en otro momento. El término 'persistencia' es sinónimo de 'durabilidad' y 'permanencia'. Obviamente, el almacenamiento persistente en bases de datos supone grandes ventajas sobre el almacenamiento en memoria y el almacenamiento tradicional en el sistema de ficheros.

La persistencia de datos es la representación residual de datos que han sido de alguna manera nominalmente borrados o eliminados. Este residuo puede ser debido a que los datos han sido dejados intactos por un operativo de eliminación nominal, o por las propiedades físicas del medio de almacenaje. La persistencia de datos posibilita en forma inadvertida la exhibición de información sensible si el medio de almacenaje es dejado en un ambiente sobre el que no se tiene control.

Con el correr del tiempo, se han desarrollado varias técnicas para contrarrestar la persistencia de datos. Dependiendo de su efectividad y de su intención, a menudo se los clasifica como compensación o purga/higienización. Métodos específicos incluyen la sobre escritura, la desmagnetización, el cifrado, y la destrucción física.

Estructura de datos persistente  

Una estructura de datos persistente es una estructura de datos que conserva

siempre la versión anterior de sí mismo cuando se modifica. Estas estructuras de

datos son efectivamente inmutable , ya que sus operaciones no (visiblemente)

actualiza la estructura en el lugar, sino que siempre dan una nueva estructura

actualizada. 

Una estructura de datos es parcialmente persistente si todas las versiones se

puede acceder pero sólo la versión más reciente pueden ser modificados. La

estructura de datos es totalmente persistente si cada versión se puede tanto

acceder y modificar. Si también hay una operación de fusionar o unir que puede

crear una nueva versión a partir de dos versiones anteriores, la estructura de

datos se llama confluently persistente. Las estructuras que no son persistentes se

llaman efímeras .

Este tipo de estructuras de datos son particularmente comunes en lógica y la

programación funcional , y en una puramente funcional, programa de todos los

Page 3: trab. estructura de dats.docx

datos es inmutable, por lo que todas las estructuras de datos son

automáticamente totalmente persistente.

Mientras que la persistencia se puede lograr mediante la copia simple, este es

ineficiente en el uso de CPU y memoria RAM, porque la mayoría de las

operaciones hacen sólo pequeños cambios en una estructura de datos. Un

método mejor es aprovechar la similitud entre las versiones nuevas y antiguas

para compartir estructura entre ellos, tales como el uso de la misma sub-árbol en

una serie de estructuras de árbol . Sin embargo, debido a que rápidamente se

convierte en inviable para determinar el número de versiones anteriores que

comparten partes de la estructura, y porque a menudo es deseable para descartar

las versiones antiguas, esto requiere un entorno con la recolección de basura.

Causas de la persistencia

Muchos sistemas operativos, administradores de archivos y otros programas proveen facilidades que hacen que el archivo no sea inmediatamente eliminado cuando el usuario solicita esa acción. En su lugar, el archivo es trasladado a un área de retención que permite al usuario fácilmente revertir la acción si ha cometido un error.

Incluso cuando no se proporciona un área de retención de archivos eliminados explícita, o cuando el usuario no la usa, los equipos normales realmente no quitan el contenido de un archivo cuando se lo intenta eliminar. En lugar de eso, simplemente eliminan la entrada del archivo del índice del sistema de archivos porque esto requiere menos trabajo y por lo tanto es una solución más rápida. Los contenidos del archivo y los verdaderos datos permanecen en el medio de almacenamiento. Los datos permanecerán allí hasta que el sistema operativo reutilice el espacio para nuevos datos. En algunos sistemas, suficientes metadatos del sistema de archivos son conservados para facilitar la recuperación de los datos por programas utilitarios fácilmente disponibles. Aun cuando la recuperación se ha tornado imposible, los datos, hasta que sean sobrescritos, pueden ser leídos por programas que leen los sectores del disco directamente. Los forenses informáticos a menudo emplean dichos programas.

Del mismo modo, el reformateo, el reparticionamiento o la imagen recreada de un sistema no siempre garantiza escribir sobre todas las áreas del disco aunque todos harán que el disco parezca vacío o en el caso de la imagen recreada, vacío

Page 4: trab. estructura de dats.docx

a excepción de los archivos presentes en la imagen, al ser examinados con la mayoría de los programas.

Contramedidas

Habitualmente se reconocen 3 niveles de eliminación de datos persistentes:

- Compensación:

Compensación es la remoción de los datos sensibles de un medio de almacenamiento de tal manera que hay seguridad de que los datos no podrán ser reconstruidos utilizando las funciones normales del sistema o programas de recuperación de archivos/datos. Los datos pueden aún ser recuperables, pero eso requerirá técnicas especiales de laboratorio.

- Purga:

Purga ohigienización es la remoción de datos sensibles de un dispositivo de almacenamiento con el objeto de que los datos no puedan ser reconstruidos utilizando alguna de las técnicas conocidas. La purga, proporcional a la sensibilidad de los datos, generalmente se efectúa antes de dejar libres de control a los dispositivos de almacenamiento, en los casos en que se descartan viejos medios de almacenamiento o se trasladan dichos medios a computadoras con diferentes requerimientos de seguridad.

- Destrucción:

El medio de almacenamiento es físicamente destruido. Su efectividad varía. Dependiendo de la densidad de grabación del medio y/o de la técnica de destrucción, esta técnica puede dejar datos recuperables por métodos de laboratorio. A su vez, la destrucción física cuando se utilizan los métodos apropiados, es generalmente considerada como el método más seguro posible.

Page 5: trab. estructura de dats.docx

Métodos específicos

- Sobre escritura:

Un método común de contrarrestar los datos persistentes es sobre escribir el medio de almacenaje con nuevos datos. Esto se llama a menudo limpieza o trituración de un archivo o de un disco. Es una opción popular y de bajo costo de algunos programas debido a que a menudo puede ser implementado simplemente en dichos programas y puede ser selectivamente dirigido solo hacia una parte del medio de almacenaje. La sobre escritura es generalmente un método aceptable de compensación siempre y cuando el medio de almacenaje sea grabable y no esté dañado.

La técnica de sobre escritura más simple escribe los mismos datos en todas partes, a menudo simplemente una muestra de ceros. Como mínimo, esto evitará que los datos sean recuperados simplemente por la lectura del medio de almacenaje utilizando las funciones habituales del sistema.

Para contrarrestar técnicas de recuperación de datos más avanzadas, a menudo se prescriben muestras de sobre escritura específicas. Estas pueden ser muestras que intentan erradicar cualquier traza de firmas. Por ejemplo, escribiendo en forma repetida, muestras alterantes de unos y ceros puede ser más efectiva que utilizar sólo ceros. Frecuentemente se indican combinaciones de muestras.

Un desafío de la sobre escritura es que ciertas áreas del disco pueden ser inaccesibles por degradación de los medios o por otros errores. La sobre escritura por software puede ser problemática en medios de alta seguridad que requieren controles más fuertes de la mezcla de datos que la que puede proveer el programa en uso. El uso de técnicas avanzadas de almacenamiento también puede hacer inefectivo la sobre escrituración basada en archivos.

- De magnetización

De magnetización es la remoción o reducción del campo magnético de un disco o controlador utilizando un dispositivo llamado de magnetizador que ha sido diseñado para el medio de almacenaje que se desea borrar. Aplicado a medios magnéticos, la de magnetización puede purgar el medio rápida y efectivamente.La de magnetización a menudo torna los discos duros inoperables, ya que borra el formateo de bajo nivel que solamente es efectuado en las fábricas durante la fabricación.

Page 6: trab. estructura de dats.docx

- Cifrado

El cifrado de datos antes de que sea almacenado en el medio puede mitigar las preocupaciones sobre la persistencia de datos. Si la clave criptográfica es suficientemente fuerte y cuidadosamente controlada (ej., no sujeta a persistencia de datos) puede hacer irrecuperable en forma efectiva cualquier dato del medio. Aún si la clave está almacenada en el medio, puede resultar más fácil o rápido sobre escribir solamente la clave en lugar de sobre escribir todo el disco.

El cifrado puede hacerse sobre la base de archivo, por archivo o sobre todo el disco. Sin embargo, si la clave es almacenada, aunque sea temporariamente, en el mismo sistema que los datos, puede pasar a ser un dato remanente y recuperada por un atacante

- Destrucción física

Una cuidadosa destrucción física de todo el medio de almacenaje es generalmente considerado como el método más seguro de contrarrestar la persistencia de datos. Sin embargo, el proceso generalmente lleva tiempo y es engorroso. La destrucción física puede requerir métodos extremadamente cuidadosos ya que aún un muy pequeño fragmento del medio puede contener grandes cantidades de información.

Las técnicas de destrucción específica incluyen:

Rotura física del medio por molienda, trituración, etc. Incineración. Cambio de estado (ej., licuefacción o vaporización de un disco sólido). Aplicación de químicos corrosivos, tales como ácidos, a las superficies de

grabación. Para medios magnéticos, la elevación de la temperatura por encima de la

temperatura de Curie. Para muchos medios de almacenaje eléctrico volátil y no volátil, la

aplicación de extremadamente altos voltajes, muy por encima de las especificaciones operacionales.

Page 7: trab. estructura de dats.docx

Complicaciones

- Áreas inaccesibles

Los medios de almacenaje pueden tener aéreas que son inaccesibles por métodos normales. Por ejemplo, los discos magnéticos pueden desarrollar “sectores averiados” después de que los datos han sido grabados, y las cintas tienen brechas entre las distintas grabaciones. Los discos duros modernos a menudo tienen un remapeo automático de sectores marginales o pistas que el sistema operativo no puede siquiera detectar. Los intentos de contrarrestar la persistencia de datos por sobre escritura puede no ser exitosa en tales situaciones, ya que los datos persistentes pueden persistir in estas áreas nominalmente.

- Medios de almacenaje avanzados

Sistemas de almacenaje de datos con características más sofisticadas pueden hacer que la sobre escritura sea inefectiva, especialmente la basada en la sobre escritura por archivo.

Los sistemas de archivos con journaling incrementan la integridad de los datos al registrar las operaciones de escritura en múltiples ubicaciones y mediante la aplicación de semántica de tipo transaccional. En estos sistemas, los datos persistentes pueden persistir en ubicaciones “fuera” de las ubicaciones de almacenamiento nominal del archivo.

Algunos sistemas de archivos implementan copy-on-writeo control de versiones con la intención de que al escribir en un archivo nunca se sobrescriba los datos ya ubicados.

Tecnologías tales como RAID y técnicas de anti fragmentación pueden hacer que los datos del archivo sean escritos en múltiples ubicaciones, ya sea por diseño (tolerancia de falla), o como datos persistentes.

El wearlevelling es una técnica que también puede derrotar el borrado de los datos, al relocalizar los bloques escritos entre el momento en que originalmente fueron escritos y el momento en que se están sobrescribiendo.

- Medios ópticos

Los medios ópticos no son magnéticos y no son afectados por la de magnetización. Los medios ópticos de escritura única (CD-R, DVD-R, etc.)

Page 8: trab. estructura de dats.docx

tampoco pueden ser purgados por sobre escritura. Los medios ópticos de lectura/escritura tales como CD-RW y DVD-RW, pueden ser sobrescritos. Métodos para higienizar exitosamente los discos ópticos incluyen la de laminación-abrasión de la capa metálica, trituración, electro destrucción (como por exposición a microondas), y la sumersión en solventes poli carbonatados (p.ej., acetona).