Cancelar Instalar &para todos los usuarios Exa&minar... Añadir icono de VeraCrypt al e&scritorio Donar ahora... Asociar los archivos .tc &con VeraCrypt &Abrir ubicación de destino al terminar Añadir VeraCrypt al Menú &Inicio Crear Punto de &Restauración de Sistema &Desinstalar &Extraer &Instalar Asistente de Instalación de VeraCrypt Desinstalar VeraCrypt &Ayuda Seleccione o escriba la ubicación donde desea extraer los archivos: Seleccione o escriba la ubicación donde desea instalar los archivos de VeraCrypt. Si la ubicación seleccionada no existe, ésta será creada automáticamente. Presione Desinstalar para eliminar VeraCrypt de este sistema. Abortar &Comparación &Probar Crear volumen cifrado y formatearlo Cifrar partición conservando datos Mostrar claves generadas (parte de ellas) Mostrar contenido del pool Descargar software de grabación de CD/DVD Crear un contenedor de archivos cifrado &GB Más información Volumen VeraCrypt o&culto Más información acerca de volúmenes ocultos Modo Directo Modo Normal &KB U&sar archivo-llave A&rchivos-llave Información de algoritmos hash Más información &MB Más informacion Más información sobre cifrado del sistema Más información Arranque múltiple Cifrar partición/unidad secundaria No &guardar nunca historial Abrir Volumen Externo &Pausa Formato Rápido &Mostrar contraseña &Mostrar contraseña Arranque simple Volumen VeraCrypt común &Oculto Normal Cifrar la partición/unidad del sistema entera Cifrar la partición de Windows Cifrar toda la unidad Asistente de creación de Volumen VeraCrypt Cluster IMPORTANTE: Mueva el ratón al azar todo lo posible dentro de esta ventana. Cuanto más lo mueva, mejor. Esto incrementa significativamente la fuerza criptográfica de las claves de cifrado. Luego presione Siguiente para continuar. &Confirmar: Hecho Algoritmo de Cifrado Sistema de archivos. Crea un disco cifrado virtual dentro de un archivo. Recomendado para usuarios sin experiencia. Opciones Algoritmo Hash Clave Cabecera: Quedan Clave Maestra: Seleccione esta opción si hay dos o más sistemas operativos instalados en este ordenador.\n\nPor ejemplo:\n- Windows XP y Windows XP\n- Windows XP y Windows Vista\n- Windows y Mac OS X\n- Windows y Linux\n- Windows, Linux y Mac OS X Cifra una partición en cualquier unidad interna o externa (ej: unidad flash). Opcionalmente, crea un volúmen oculto. Contenido actual del pool (parcial) Pasada Contraseña: Progreso: Pool Aleatorio: Seleccione esta opción si hay solo un sistema operativo instalado en este ordenador (aunque tenga varios usuarios). Velocidad Estado Las claves, sal y otros datos han sido generados con éxito. Si quiere generar nuevas claves, presione Volver y luego Siguiente. Si no, presione Siguiente para continuar. Cifra la partición/unidad donde Windows está instalado. Cualquiera que quiera acceder al sistema, leer y escribir archivos, etc. tendrá que introducir la contraseña antes de arrancar Windows. Opcionalmente, crea un sistema oculto. Seleccione esta opción para cifrar la partición donde está instalado el sistema operativo Windows que hay ahora mismo en ejecución. Modo de borrado seguro: Cerrar Permitir esquivar &autenticación de pre-arranque pulsando Esc (habilita el administrador de arranque) No hacer nada Montar &Automáticamente volumen VeraCrypt (especificado debajo) &Iniciar VeraCrypt &Detección automática Guardar contraseña de autenticación de pre-arranque en &caché (para montar volúmenes secundarios) Explorar... Explorar... Guardar contras&eñas y archivos en caché Salir cuando no haya volúmenes montados &Cerrar sesión de token (log out) después de montar un volumen con éxito Incluir el Asistente de Creación de Volúmenes VeraCrypt Crear &Crear Volumen No mo&strar texto en la pantalla de autenticación de pre-arranque (excepto el siguiente mensaje) Acelerar cifrado/descifrado AES usando instrucciones AES del procesador (si es posible) Usar Archivo-llave Usar Archivo-llave &Salir Ayuda sobre volúmenes favoritos No montar volumen seleccionado cuando se pulse la &tecla 'Montar volúmenes favoritos' Montar volumen seleccionado cuando el dispositivo anfitrión se &conecte Montar volumen seleccionado al inici&o Montar volumen seleccionado e&n modo de sólo lectura Montar &volumen seleccionado como medio extraíble Mover &abajo Mover arri&ba Abrir en el &explorador el volumen seleccionado cuando sea montado con éxito Elimina&r Configuración global Mostrar mensaje emergente tras desmontar con éxito usando atajos de teclado Reproducir notificación sonora tras desmontar con éxito usando atajos de teclado Alt Ctrl Mayus. Win Asignar Eliminar Archivos-llave No usar el siguiente número de procesadores para cifrado/descifrado: Más información Más información Más opciones Montar &Autom. &Opciones Montaje Montar volumen como sól&o lectura Archivos-llave Activado Guardar contraseñas en caché Desmontar volumen autom. cuando dejen de leerse/escribirse datos Si el usuario cierra sesión Si se entra en "ahorro de energía" Si se activa el salvapantallas Forzar desmontaje automático aunque el volumen tenga archivos abiertos Montar todos los volúmenes alojados en dispositivos Iniciar VeraCrypt en segundo plano Montar volúmenes como sólo lectura Montar volúmenes como medios extraíbles Abrir en el &explorador el volumen montado con éxito Usar icono distinto en la barra de tareas si hay volúmenes montados Eliminar contraseñas guardadas al desmontar automáticamente Eliminar contraseñas guardadas al salir Conservar modificaciones de fecha/hora de los contenedores Por defecto Seleccionar D&ispositivo Seleccionar A&rchivo Seleccionar &Librería Mostrar contraseña Mostrar contraseña Abrir en el &explorador el volumen montado Guardar &contraseña en caché &Desmontar Todo Propiedades del &Volumen Herramien&tas de volumen &Borrar Caché VeraCrypt - Volúmenes favoritos VeraCrypt - Atajos de teclado para sistema completo VeraCrypt Cambiar contraseña o archivo-llave Introducir Contraseña de Volumen VeraCrypt VeraCrypt - Opciones de Rendimiento VeraCrypt - Preferencias VeraCrypt - Opciones de cifrado del sistema VeraCrypt - Preferencias de token de seguridad Crear Disco Viajero VeraCrypt Propiedades de Volumen VeraCrypt Acerca de... Añadir/Eliminar Archivos-llave a/de Volumen Añadir Volumen Montado a Favoritos Añadir Volumen Montado a Favoritos del Sistema Analizar Fallo del Sistema Copia de Seguridad de Cabecera de Volumen Comparación Establecer Algoritmo de Derivación de Clave de Cabecera Cambiar Contraseña del Volumen Establecer Algoritmo de Derivación de Clave de Cabecera Cambiar Contraseña Borrar Historial de Volúmenes Cerrar Sesiones de Token de Seguridad Contactar Crear Sistema Operativo Oculto Crear Disco de Rescate Crear Nuevo Volumen Archivos-llave Por Defecto Cifrar la Partición/Unidad del Sistema Preguntas Frecuentes Guía del Usuario Página &Web Atajos de teclado Generador de Archivo-llave Idioma Información Legal Administrar Archivos-llave de Token de Seguridad Montar autom. todos los volúmenes alojados en cualquier dispositivo Montar Volúmenes Favoritos Montar Sin &Autenticación de Pre-Arranque Montar Volumen Montar Volumen con Opciones Noticias Ayuda en línea Tutorial del principiante Organizar Volúmenes Favoritos Organizar Volúmenes Favoritos del Sistema Rendimiento Descifrar Permanentemente la Partición/Unidad del Sistema Preferencias Actualizar Letras de Unidad Eliminar Todos los Archivos-llave de un Volumen Restaurar Cabecera de Volumen Continuar Proceso Interrumpido Seleccionar Dispositivo Seleccionar Archivo Continuar Proceso Interrumpido Cifrado del Sistema Propiedades Configuración Volúmenes Favoritos del Sistema Descargas Probar Vectores Tokens de seguridad Crear Disco Viajero Desmontar Todos los Volúmenes Montados Desmontar Volumen Verificar Disco de Rescate Historial de Versiones Propiedades de Volumen Asistente de Creación de Volumen Sitio Web de VeraCrypt Borrar Contraseñas Guardadas Aceptar Aceleración Hardware Atajo de teclado Configuración de Autoarranque (autorun.inf) Desmontar automáticamente Desmontar Todo: Opciones de Pantalla del Cargador de Arranque Confirmar Contraseña: Actual Mostrar este mensaje personalizado en la pantalla de pre-arranque (24 caracteres max.): Opciones de Montaje Predeterminadas Opciones de Atajos de Teclado Etiqueta del volumen favorito seleccionado: Opciones del Archivo Tecla a asignar: El procesador (CPU) en este ordenador soporta aceleración hardware para AES: Acciones a realizar al iniciar sesión en Windows minutos Montar volumen en letra de unidad: Ajustes de Montaje Nueva Contraseña: Paralelización basada en hilos Ruta de Librería PKCS #11 PKCS-5 PRF: Caché de Contraseñas Opciones de seguridad VeraCrypt en Segundo Plano Volumen VeraCrypt a montar (relativo a raíz del disco viajero): Tras la inserción del disco viajero: Crear archivos del disco viajero en (directorio raíz del disco viajero): Volumen Windows Añadir &Ruta Probar &Autom. &Continuar &Descifrar &Borrar Ci&frar &Exportar Generar y Guardar Archivo-llave &Generar Archivo-llave Aleatorio Descargar paquete de idioma AES acelerado por hardware: &Importar Archivo-llave a Token Añadir Archi&vos Usar Archivos-llave &Archivos-llave Elimina&r Eliminar &todo ¿Que es la protección de volumen oculto? Más información Montar volumen como unidad &extraíble Montar partición &usando cifrado del sistema sin autenticación de pre-arranque Paralelización: Comparación &Imprimir &Proteger volumen oculto contra daños por escritura en el volumen externo &Reiniciar Mostrar Contraseña Archivos &Token Usar copia de seguridad de cabecera insertada en &volumen si es posible Modo XTS Acerca de VeraCrypt VeraCrypt - Comparación de algoritmos de cifrado VeraCrypt - Probar Vectores Ayuda sobre línea de comandos VeraCrypt - Archivos-llave VeraCrypt - Generador de Archivos-llave VeraCrypt - Idioma VeraCrypt - Opciones de Montaje Propiedades del Archivo-llave del Nuevo Token de Seguridad VeraCrypt - Enriquecimiento del Pool Aleatorio Seleccionar Partición o Dispositivo VeraCrypt Archivos-llave de Token de Seguridad Se requiere contraseña/PIN de token de seguridad Paquete de idioma activo La velocidad se ve afectada por la carga de la CPU y las características del dispositivo de almacenamiento.\n\nÉstas pruebas tienen lugar en RAM. Buffer: Algoritmo de cifrado: Contr&aseña volumen oculto:\n(vacío para usar caché) Protección de Volumen Oculto Tamaño de la Clave: IMPORTANTE: Mueva el ratón al azar todo lo posible dentro de esta ventana. Cuanto más lo mueva, mejor. Esto incrementa significativamente la fuerza criptográfica del archivo-llave. PRECAUCIÓN: ¡si pierde un archivo-llave o si cambian sus primeros 1024 KB, será imposible montar los volúmenes que usan ese archivo-llave! bits Traducido por: Tamaño del texto plano: bits Contenido de Pool Actual Mezcla PRF: IMPORTANTE: Mueva el ratón al azar todo lo posible dentro de esta ventana. Cuanto más lo mueva, mejor. Esto incrementa significativamente la seguridad. Cuando lo haya hecho, pulse 'Continuar'. Clave Secundaria (hexadecimal) Token de seguridad: Orden: Por favor espere. Este proceso puede llevar mucho tiempo... Número de bloque: Texto cifrado (hexadecimal) Datos de la unidad (64-bit hexadecimal, tamaño de la unidad de datos es 512 bytes) Clave (hexadecimal) Texto Plano (hexadecimal) Nombre del Archivo-llave: Modo XTS &Sistema &Volúmenes Favor&itos &Herramientas Confi&guración A&yuda Página &Web &Acerca de... No se ha podido cambiar el atributo 'sólo lectura' de su antiguo volumen. Compruebe los permisos de acceso del archivo. Error: Acceso Denegado\n\nLa partición a la que está intentando acceder no contiene ningún sector o es el dispositivo de arranque. Administrador Para cargar el controlador de VeraCrypt necesita iniciar sesión con privilegios de administrador. Tenga en cuenta que para cifrar/formatear una partición/dispositivo necesita iniciar sesión con privilegios de administrador.\n\nEsto no se aplica a los volúmenes alojados en archivos. Para crear un volumen oculto necesita iniciar sesión con privilegios de administrador.\n\n¿Desea continuar? Tenga en cuenta que para formatear el volumen como NTFS necesita iniciar sesión con privilegios de administrador.\n\nSin los privilegios de administrador, sólo puede formatear el volumen como FAT. Algoritmo aprobado por FIPS (Rijndael, publicado en 1998) que podría ser usado por departamentos y agencias gubernamentales de EEUU para proteger información clasificada hasta el nivel Alto Secreto. Clave de 256-bit, bloque de 128-bit, 14 rondas (AES-256). El modo de operación es XTS. El volumen ya está montado PRECAUCIÓN: ¡Por lo menos un algoritmo de cifrado o hash falló durante el proceso automático de autoanálisis!\n\nLa instalación de VeraCrypt podría estar corrupta. PRECAUCIÓN: No hay suficientes datos en el Generador de Números Aleatorios para proporcionar la cantidad requerida de datos aleatorios.\n\nNo debería continuar. Seleccione 'Informar de un error' en el Menú Ayuda, y reporte este error. La unidad está dañada (hay algún defecto físico en ella) o un cable está dañado, o la memoria está funcionando incorrectamente.\n\nTenga en cuenta que el problema está en su hardware, no en VeraCrypt. Por tanto, por favor NO reporte esto como un error/problema de VeraCrypt y NO pida ayuda sobre esto en los foros de VeraCrypt. Contacte con el equipo de soporte técnico del fabricante de su ordenador para obtener asistencia. Gracias.\n\nNota: Si el error ocurre repetidamente en el mismo sitio, es muy probable que esté causado por un bloque defectuoso, lo que podría corregirse usando software de terceros (tenga en cuenta que, en muchos casos, el comando 'chkdsk /r' no puede corregirlo porque trabaja sólo a nivel del sistema de archivos; en algunos casos, la herramienta 'chkdsk' no puede ni detectarlo). Si está accediendo a una unidad de medios extraíbles, asegúrese de que haya un medio introducido en la unidad. La unidad/medio también podría estar dañada (podría haber un defecto físico en ella) o un cable podría estar dañado/desconectado. Su sistema parece estar usando controladores de chipset personalizados defectuosos que impiden el cifrado de la unidad del sistema completa.\n\nIntente actualizar o desinstalar cualquier controlador de chipset personalizado (que no sea de Microsoft) antes de continuar. Si esto no funciona, intente cifrar sólo la partición del sistema. Letra de unidad incorrecta. Ruta incorrecta. Cancelar No se puede acceder a la unidad. Asegúrese de que la unidad seleccionada existe y que no está siendo utilizada por el sistema. Precaución: El bloqueo de mayúsculas está activado. Esto puede provocar que introduzca su contraseña incorrectamente. Tipo de Volumen Podría suceder que alguien le obligara a revelar la contraseña de un volumen cifrado. Hay muchas situaciones en las que no podría negarse a revelar la contraseña (por ejemplo, debido a la extorsión). Usar el llamado "volumen oculto" le permite resolver estas situaciones sin revelar la contraseña de su volumen. Seleccione esta opción si quiere crear un volumen VeraCrypt normal. Tenga en cuenta que si desea que un sistema operativo sea instalado en un volumen alojado en una partición oculta, entonces la unidad del sistema entera no puede ser cifrada usando una única clave. Opciones de cifrado del volumen externo Opciones de cifrado del volumen oculto Opciones de cifrado AVISO: ¡Fallo al borrar la ruta del último volumen/archivo-clave seleccionado (almacenado por el selector de archivos)! Error: El contenedor ha sido comprimido a nivel del sistema de archivos. VeraCrypt no soporta contenedores comprimidos (la compresión de información cifrada es redundante e inefectiva).\n\nDeshabilite la compresión del contenedor siguiendo estos pasos:\n1) Click derecho en el contenedor desde el explorador de Windows (no desde VeraCrypt).\n2) Seleccione 'Propiedades'.\n3) En la ventana de 'Propiedades', click en 'Opciones Avanzadas'.\n4) En la ventana 'Atributos avanzados', desactive la opción 'Comprimir contenido para ahorrar espacio en disco' y haga click en 'Aceptar'.\n5) En 'Propiedades', click en 'Aceptar'. Falló la creación del volumen %hs El tamaño de %hs es %.2f bytes El tamaño de %hs es %.2f KB El tamaño de %hs es %.2f MB El tamaño de %hs es %.2f GB El tamaño de %hs es %.2f TB El tamaño de %hs es %.2f PB AVISO: El dispositivo/partición está siendo utilizado por el sistema operativo o una aplicación. Formatear el dispositivo/partición puede causar corrupción de datos e inestabilidad del sistema.\n\n¿Continuar? Aviso: La partición está siendo usada por el sistema operativo o una aplicación. Debería cerrar cualquier aplicación que pueda estar usando la partición (incluyendo antivirus).\n\n¿Continuar? Error: El dispositivo/partición contiene un sistema de archivos que no puede ser desmontado. El sistema de archivos puede estar en uso por el sistema operativo. Formatear el dispositivo/partición muy probablemente causará corrupción de datos e inestabilidad del sistema.\n\nPara solucionarlo, recomendamos que primero borre la partición y luego la vuelva a crear sin formatearla. Para hacerlo siga estos pasos:\n1) Click derecho en 'Mi PC' o 'Equipo' en el 'Menú inicio' y seleccione 'Administrar'. Aparecerá la ventana 'Administración de equipos'.\n2) En dicha ventana, seleccione 'Almacenamiento' > 'Administración de discos'.\n3) Click derecho en la partición que desea cifrar y seleccione 'Borrar la partición', 'Borrar Volumen' o 'Borrar unidad lógica'.\n4) Click en 'Aceptar'. Si Windows pregunta si quiere reiniciar el ordenador, hágalo. Entonces repita los pasos 1 y 2 y continúe desde el paso 5. 5)\nClick derecho en el área no asignada/espacio libre y seleccione 'Partición nueva', 'Volumen simple nuevo' o 'Unidad lógica nueva'.\n6) El 'Asistente de partición nueva' o 'Asistente de volumen simple nuevo' deberá aparecer; siga las instrucciones. Cuando en el asistente indique 'Formatear Partición', seleccione 'No formatear esta partición' o 'No formatear este volumen'. En el mismo asistente, click en 'Siguiente' y despues en 'Finalizar'.\n7) La ruta del dispositivo seleccinado en VeraCrypt podría ser incorrecta ahora. Por tanto, salga del Asistente de Creación de Volúmenes VeraCrypt (si aún está en ejecución) y ábralo de nuevo.\n8) Intente cifrar nuevamente el dispositivo/partición.\n\nSi VeraCrypt falla repetidamente al cifrar el dispositivo/partición, considere crear un contenedor de archivos en su lugar. Error: El sistema de archivos no pudo ser bloqueado y/o desmontado. Podría estar siendo usado por el sistema operativo o alguna aplicación (como un antivirus). Cifrar la partición podría causar corrupción de datos e inestabilidad del sistema.\n\nPor favor cierre cualquier aplicación que pueda estar usando el sistema de archivos (incluyendo antivirus) y reinténtelo. Si esto no funciona, siga los pasos que hay más abajo. AVISO: ¡Algunos de los dispositivos/particiones montados están en uso!\n\nIgnorar esto puede causar resultados no deseados incluyendo inestabilidad del sistema.\n\nSe recomienda encarecidamente que cierre cualquier aplicación que esté usando el dispositivo/partición. El dispositivo seleccionado contiene particiones.\n\nFormatear el dispositivo puede causar inestabilidad del sistema y/o corrupción de datos. Seleccione una partición en el dispositivo o elimine todas las particiones del dispositivo para permitir que VeraCrypt lo formatee con seguridad. El dispositivo secundario seleccionado contiene particiones.\n\nLos volúmenes VeraCrypt cifrados alojados en dispositivos pueden ser creados en dispositivos que no contienen particiones (incluyendo discos duros y unidades de estado sólido). Un dispositivo que contiene particiones puede ser cifrado por completo sin modificarlas (usando una única clave maestra) sólo si es la unidad donde Windows está instalado y desde la que arranca.\n\nSi desea cifrar el dispositivo secundario seleccionado usando una única clave maestra, necesitará eliminar antes todas las particiones del dispositivo para permitir que VeraCrypt lo formatee con seguridad (formatear un dispositivo que contiene particiones podría causar inestabilidad del sistema y/o corrupción de datos). Como alternativa, puede cifrar cada partición del dispositivo individualmente (cada partición será cifrada usando una clave maestra diferente).\n\nNota: Si desea eliminar todas las particiones de un disco GPT, podría necesitar convertirlo primero en un disco MBR (usando p.e. el Administrador de Equipos) para eliminar particiones ocultas. Aviso: si cifra el dispositivo entero (en lugar de cifrar sólo una de sus particiones), los sistemas operativos considerarán el dispositivo como nuevo, vacío y no formateado (ya que no contendrá tabla de particiones) y podrían iniciar espontáneamente el dispositivo (o preguntarle si desea hacerlo), lo que podría dañar el volumen. Además, no será posible montar consistentemente el volumen como favorito (p.e. cuando cambie el número de unidad) o asignarle una letra de volumen favorita.\n\nPara evitar esto, considere crear una partición en el dispositivo y cifrar la partición.\n\n¿Seguro que desea cifrar el dispositivo entero? IMPORTANTE: ¡Tenga presente que este volumen NO puede ser montado/accedido usando la letra de unidad %c:, la cual está actualmente asignada al mismo!\n\nPara montar este volumen, haga click en 'Montar Autom.' en la ventana principal de VeraCrypt (o también, en dicha ventana, click en 'Seleccionar Dispositivo', seleccione esta partición/dispositivo y pulse 'Montar'). El volumen será montado en una letra de unidad diferente, que podrá elegir de la lista de la ventana principal de VeraCrypt.\n\nLa letra original de unidad %c: debería usarse sólo en caso de que necesite eliminar el cifrado de la partición/unidad (p.e. si ya no necesitará cifrado). En ese caso, haga click derecho en la letra de unidad %c: en la lista de 'Equipo' (o 'Mi PC') y seleccione 'Formatear'. De otro modo, la letra de unidad %c: nunca debería ser usada (a menos que la elimine, como se describe p.e. en la FAQ de VeraCrypt, y la asigne a otra partición/dispositivo). El cifrado de volúmenes secundarios conservando datos no está soportado por la versión del sistema operativo que está usando actualmente (sólo está soportado en Windows Vista y versiones posteriores de Windows).\n\nLa razón es que esta versión de Windows no soporta la compresión del sistema de archivos (el sistema de archivos necesita ser comprimido para crear espacio para la cabecera del volumen y su copia de seguridad). La partición seleccionada no parece contener un sistema de archivos NTFS. Sólo las particiones con sistema de archivos NTFS pueden ser cifradas conservando datos.\n\nNota: La razón es que esta versión de Windows no soporta la compresión de otros tipos de sistemas de archivos (el sistema de archivos necesita ser comprimido para crear espacio para la cabecera del volumen y su copia de seguridad). La partición seleccionada no parece contener un sistema de archivos NTFS. Sólo las particiones con sistema de archivos NTFS pueden ser cifradas conservando datos.\n\nSi desea crear un volumen cifrado VeraCrypt dentro de esta partición, elija la opción "Crear volumen cifrado y formatearlo" (en lugar de la opción "Cifrar partición sin modificadión de datos"). Error: La partición es demasiado pequeña. VeraCrypt no puede cifrarla conservando datos. Para cifrar los datos de esta partición, siga estos pasos:\n\n1) Cree un volumen VeraCrypt en una partición/dispositivo vacío y móntelo.\n\n2) Copie en dicho volumen VeraCrypt todos los archivos de la partición que iba a ser cifrada originalmente. De esta forma, ud. creará una copia de seguridad cifrada de los datos.\n\n3) Cree un volumen VeraCrypt en la partición que quería cifrar originalmente y asegúrese de (en el asistente VeraCrypt) elegir la opción "Crear volumen cifrado y formatearlo" (en lugar de la opción "Cifrar partición conservando datos"). Tenga en cuenta que todos los datos almacenados en la partición serán borrados. Después de crear el volumen, móntelo.\n\n4) Copie todos los archivos del volumen VeraCrypt montado como copia de seguridad (el que fue creado en el paso 1) al volumen VeraCrypt montado que ha sido creado (y montado) en el paso 3.\n\nDespués de completar estos pasos, los datos estarán cifrados y, además, habrá una copia de seguridad cifrada de los datos. VeraCrypt sólo puede cifrar conservando datos una partición, un volumen dinámico o la unidad del sistema entera.\n\nSi desea crear un volumen VeraCrypt cifrado en el dispositivo secundario seleccionado, elija la opción "Crear volumen cifrado y formatearlo" (en lugar de la opción "Cifrar partición conservando datos"). Error: VeraCrypt sólo puede cifrar conservando datos una partición, un volumen dinámico, o la unidad del sistema entera. Por favor asegúrese de que la ruta especificada es válida. Error: No se puede comprimir el sistema de archivos (el sistema de archivos necesita ser comprimido para crear espacio para la cabecera del volumen y su copia de seguridad).\n\nPosibles causas y soluciones:\n\n- No hay suficiente espacio libre en el volumen. Asegúrese de que no hay ninguna otra aplicación escribiendo en el sistema de archivos.\n\n- Sistema de archivos corrupto. Intente comprobarlo y corregir los errores (click derecho en la letra de unidad correspondiente en 'Equipo', seleccione Propiedades > Herramientas > 'Comprobar ahora', asegúrese de que la opción 'Reparar automáticamente errores en el sistema de archivos' está activada y click en Iniciar).\n\nSi esto no funciona, siga los pasos que aparecen más abajo. Error: No hay suficiente espacio libre en el volumen por lo que el sistema de archivos no puede ser comprimido (el sistema de archivos necesita ser comprimido para crear espacio para la cabecera del volumen y su copia de seguridad).\n\nElimine cualquier archivo innecesario y vacíe la Papelera de Reciclaje para liberar al menos 256 KB e inténtelo de nuevo. Tenga en cuenta que debido a una característica de Windows, la cantidad de espacio libre reportada por el explorador de Windows podría ser incorrecta hasta que el sistema operativo se reinicie. Si reiniciar el sistema no ayuda, el sistema de archivos podría estar corrupto. Intente comprobarlo y corregir cualquier error (click derecho en la letra de unidad correspondiente en 'Equipo', seleccione Propiedades > Herramientas > 'Comprobar ahora', asegúrese de que la opción 'Reparar automáticamente errores en el sistema de archivos' está activada y click en Iniciar).\n\nSi esto no funciona, siga los pasos que aparecen más abajo. El espacio libre en la unidad %hs es %.2f bytes. El espacio libre en la unidad %hs es %.2f KB El espacio libre en la unidad %hs es %.2f MB El espacio libre en la unidad %hs es %.2f GB El espacio libre en la unidad %hs es %.2f TB El espacio libre en la unidad %hs es %.2f PB No se han podido obtener letras de unidad disponibles. Error: No se ha encontrado el controlador de VeraCrypt.\n\nCopie los archivos 'veracrypt.sys' y 'veracrypt-x64.sys' al directorio donde está ubicada la aplicación principal (VeraCrypt.exe). Error: Se está ejecutando una versión incompatible del controlador VeraCrypt.\n\nSi está intentando ejecutar VeraCrypt en modo portable (p.e. sin instalarlo) y ya hay instalada una versión diferente de VeraCrypt, debe desinstalar dicha versión primero (o actualizarla usando el instalador de VeraCrypt). Para desinstalarla, siga estos pasos: En Windows Vista o posterior, seleccione 'Menú Inicio' > Equipo > 'Desinstalar o cambiar un programa' > VeraCrypt > Desinstalar; en Windows XP, seleccione 'Menú Inicio' > Panel de control > 'Agregar o quitar programas' > VeraCrypt > Quitar.\n\nDel mismo modo, si está intentando ejecutar VeraCrypt en modo portable (p.e. sin instalarlo) y hay una versión diferente de VeraCrypt ejecutándose en modo portable, debe reiniciar el sistema primero y ejecutar únicamente esta nueva versión. Error: Fallo en la inicialización del algoritmo de cifrado. Error: Se ha detectado una clave débil o potencialmente débil. La clave será descartada. Inténtelo de nuevo. Ha ocurrido un error crítico y VeraCrypt debe cerrarse. Si esto fue causado por un error (bug) de VeraCrypt, nos gustaría arreglarlo. Para ayudarnos, puede enviarnos un informe de errores generado automáticamente conteniendo los siguientes datos:\n\n- Versión del programa\n- Versión del sistema operativo\n- Tipo de CPU\n- Nombre del componente VeraCrypt\n- Suma de verificación del ejecutable VeraCrypt\n- Nombre simbólico de la ventana de diálogo\n- Categoría del error\n- Dirección del error\n- Pila de llamadas VeraCrypt\n\nSi selecciona 'Sí', la siguiente URL (que contiene el informe completo del error) se abrirá en su explorador de Internet predeterminado.\n\n%hs\n\n¿Desea enviarnos dicho informe? Ha ocurrido un error crítico en su sistema, lo que requiere que VeraCrypt se cierre.\n\nTenga en cuenta que este error no ha sido causado por VeraCrypt (así que los desarrolladores de VeraCrypt no pueden solucionarlo). Compruebe su sistema por si hubiera problemas (p.e. configuración del sistema, conexión de red, componentes hardware defectuosos). Ha ocurrido un error crítico en su sistema, lo que requiere que VeraCrypt se cierre.\n\nSi el problema continúa, quizá quiera intentar desactivar o desinstalar aplicaciones que podrían estar causando esta situación, como antivirus o software de seguridad de Internet, "potenciadores" del sistema, "optimizadores", etc. Si esto no funciona, quizá le interese intentar reinstalar su sistema operativo (este problema podría estar causado también por malware). Error Crítico de VeraCrypt VeraCrypt ha detectado que el sistema operativo ha fallado recientemente. Hay varias razones potenciales por las que el sistema puede haber fallado (por ejemplo, un componente hardware defectuoso, un error (bug) en un controlador de dispositivo, etc.)\n\n¿Desea que VeraCrypt compruebe si ha sido un error de VeraCrypt lo que ha causado el fallo del sistema? ¿Desea que VeraCrypt continúe detectando fallos del sistema? VeraCrypt no ha encontrado el archivo de volcado del fallo del sistema. ¿Desea borrar el archivo de volcado del fallo de Windows para liberar espacio en disco? Para analizar el fallo del sistema, VeraCrypt necesita instalar las Herramientas de Depuración para Windows primero.\n\nDespués de hacer click en Aceptar, el instalador de Windows descargará el paquete de instalación de las Herramientas de Depuración de Microsoft (16 MB) de un servidor de Microsoft y las instalará (el instalador de Windows será enviado a la URL del servidor de Microsoft desde el servidor veracrypt.org, lo que asegura que esta característica funcione incluso si Microsoft cambiara la localización del paquete de instalación). Después de pulsar Aceptar, VeraCrypt analizará el fallo del sistema. Esto podría durar varios minutos. Asegúrese de que la variable de entorno 'PATH' incluye la ruta a 'kd.exe' (Depurador del Núcleo). Parece que lo más probable es que VeraCrypt no causara el fallo del sistema. Hay muchas razones potenciales por las que el sistema podría haber fallado (por ejemplo, un componente hardware defectuoso, un error en un controlador de dispositivo, etc.) Los resultados del análisis indican que actualizar el siguiente controlador podría resolver este problema: Para ayudarnos a determinar si hay un error (bug) en VeraCrypt o no, puede enviarnos un informe de errores generado automáticamente conteniendo los siguientes datos:\n\n- Versión del programa\n- Versión del sistema operativo\n- Tipo de CPU\n- Categoría del error\n- Nombre y versión del controlador\n- Pila de llamadas del sistema\n\nSi selecciona 'Sí', la siguiente URL (que contiene el informe completo del error) se abrirá en su explorador de Internet predeterminado. ¿Desea enviarnos dicho informe de errores? &Cifrar &Descifrar Descifrar &Permanentemente Salir Cree una unidad lógica para esta partición extendida, e inténtelo de nuevo. Un volumen VeraCrypt puede residir en un archivo (llamado contenedor VeraCrypt), el cual puede residir en un disco duro, en una unidad flash USB, etc. Un contenedor VeraCrypt es exactamente igual que cualquier otro archivo (puede ser, por ejemplo, movido o eliminado como cualquier archivo común). Haga click en 'Seleccionar Archivo' para elegir un nombre de archivo para el contenedor y la ubicación donde desea que el contenedor sea creado.\n\nAVISO: Si selecciona un archivo existente, VeraCrypt NO lo cifrará; el archivo será eliminado y reemplazado por el contenedor VeraCrypt recién creado. Ud. podrá cifrar archivos existentes (más tarde) moviéndolos al contenedor VeraCrypt que va a crear ahora. Seleccione la ubicación donde se creará el volumen externo (el volumen oculto será creado dentro de este volumen más adelante).\n\nUn volumen VeraCrypt puede residir en un archivo (llamado contenedor VeraCrypt), el cual puede residir en un disco duro, en una unidad flash USB, etc. Un contenedor VeraCrypt puede ser movido o borrado como cualquier archivo común. Haga click en 'Seleccionar Archivo' para elegir un nombre de archivo para el contenedor y la ubicación donde desea que el contenedor sea creado. Si selecciona un archivo existente, VeraCrypt NO lo cifrará; será eliminado y reemplazado por el contenedor recién creado. Ud. podrá cifrar archivos existentes (más tarde) moviéndolos al contenedor que va a crear ahora. Los volúmenes VeraCrypt cifrados alojados en dispositivos pueden ser creados en particiones de discos duros, unidades de estado sólido, tarjetas de memoria USB, y en cualquier otro dispositivo de almacenamiento soportado. Las particiones también pueden ser cifradas conservando datos.\n\nAdemás, estos volúmenes VeraCrypt pueden ser creados dentro de dispositivos que no contengan ninguna partición (incluyendo discos duros y unidades de estado sólido).\n\nNota: Un dispositivo que contiene particiones puede ser cifrado por completo conservando datos (usando una única clave) sólo si es la unidad donde Windows está instalado y desde la que arranca. Un volumen VeraCrypt alojado en dispositivo puede ser creado dentro de una partición de disco duro, unidad de estado sólido, tarjeta de memoria USB, y otros dispositivos de almacenamiento.\n\nAVISO: Tenga en cuenta que la partición/dispositivo será formateado y todos los datos almacenados en él se perderán. \nSeleccione la ubicación donde se creará el volumen externo (dentro de este volumen se creará el volumen oculto más adelante).\n\nLos volúmenes externos pueden ser creados dentro de particiones en discos duros, unidades de estado sólido, tarjetas de memoria USB, y en cualquier otro dispositivo de almacenamiento soportado. Los volúmenes externos pueden ser creados también dentro de dispositivos que no contienen particiones (incluyendo discos duros y unidades de estado sólido).\n\nAVISO: Tenga en cuenta que la partición/dispositivo será formateado y todos los datos almacenados en él se perderán. Seleccione la ubicación del volumen VeraCrypt en el que desea crear el volumen oculto. AVISO: ¡El archivo/dispositivo ya está en uso!\n\nIgnorar esto puede causar resultados no deseados incluyendo inestabilidad del sistema. Todas las aplicaciones que puedan estar usando el archivo/dispositivo (por ejemplo, antivirus o aplicaciones de copia de seguridad) deberían ser cerradas antes de montar el volumen.\n\n¿Continuar montando? Error: No se puede montar el volumen. El archivo/dispositivo ya está en uso. El intento de montarlo sin acceso exclusivo también falló. No se pudo abrir el archivo. Ubicación del volumen Archivos grandes ¿Tiene intención de almacenar archivos de más de 4 GB en este volumen VeraCrypt? Dependiendo de su elección, VeraCrypt elegirá un sistema de archivos adecuado para el volumen VeraCrypt (pero lo podrá cambiar en el siguiente paso). Como ud. está creando un volumen externo, debería considerar elegir 'No'. Si elige 'Sí', el sistema de archivos por defecto será NTFS, que no es tan adecuado como FAT para volúmenes externos (p.e., el máximo tamaño posible para el volumen oculto será mayor si el volumen externo es FAT). Normalmente, FAT es predeterminado para ambos volúmenes (por eso los volúmenes FAT no son sospechosos). Sin embargo, si el usuario planea almacenar archivos mayores de 4 GB (no permitidos en ese sistema de archivos), entonces FAT no será predeterminado. ¿Seguro que desea elegir 'Sí'? Modo de Creación de Volumen Esta es la forma más rápida de crear un volumen VeraCrypt alojado en partición o dispositivo (cifrar conservando datos, que es la otra opción, es más lenta ya que el contenido de cada sector debe ser leído primero, cifrado y después escrito). Cualquier dato almacenado en la partición/dispositivo seleccionado se perderá (los datos NO serán cifrados; serán sobreescritos con datos aleatorios). Si desea cifrar los datos existentes en una partición, elija la otra opción. La partición seleccionada entera y todos los datos que almacena serán cifrados conservando datos. Si la partición está vacía, debería elegir la otra opción (el volumen será creado mucho más rápido). Nota: &Reanudar &Aplazar &Iniciar &Continuar &Formatear &Borrar ¿Abortar formato? Mostrar más información No mostrar esto de nuevo El contenido de la partición/dispositivo ha sido borrado con éxito. El contenido de la partición donde el sistema original (del cual el sistema oculto es una copia) residía ha sido borrado con éxito. Asegúrese de que la versión de Windows que va a instalar (en la partición cuyos datos han sido borrados) es la misma que la que está ejecutando ahora. Esto es necesario porque ambos sistemas compartirán una partición de arranque común. La unidad/partición del sistema ha sido cifrada con éxito.\n\nNota: Si hay volúmenes VeraCrypt secundarios que necesita tener montados automáticamente cada vez que se inicie Windows, puede hacerlo montando cada uno de ellos y seleccionando 'Favoritos' > 'Añadir Volumen Montado a Favoritos del Sistema'). La unidad/partición del sistema ha sido descifrada con éxito. \n\nEl volumen VeraCrypt ha sido creado y está listo para usarse. Si desea crear otro volumen VeraCrypt haga click en Siguiente. Si no, haga click en Salir. \n\nEl volumen oculto VeraCrypt ha sido creado con éxito (el sistema operativo oculto residirá dentro de este volumen oculto).\n\nHaga click en Siguiente para continuar. Volumen Completamente Cifrado IMPORTANTE: PARA MONTAR EL VOLUMEN TRUECRYPT RECIÉN CREADO Y ACCEDER A SUS DATOS, HAGA CLICK EN 'Montar Autom.' EN LA VENTANA PRINCIPAL DE TRUECRYPT. Después de introducir la contraseña (y/o los archivos-llave), el volumen será montado en la letra de unidad seleccionada de la lista de la ventana principal (y podrá acceder a los datos cifrados a través de dicha letra).\n\nRECUERDE O APUNTE ESTAS INSTRUCCIONES. DEBERÁ SEGUIRLAS CADA VEZ QUE QUIERA MONTAR EL VOLUMEN Y ACCEDER A LOS DATOS ALMACENADOS EN ÉL. Alternativamente, en la ventana principal, haga click en 'Seleccionar Dispositivo', seleccione esta partición/volumen, y haga click en 'Montar'.\n\nLa partición/volumen ha sido cifrado correctamente (ahora contiene un volumen VeraCrypt completamente cifrado) y está listo para su uso. El volumen VeraCrypt ha sido creado con éxito. Volumen creado IMPORTANTE: Mueva el ratón al azar todo lo posible dentro de esta ventana. Cuanto más lo mueva, mejor. Esto incrementa significativamente la fuerza criptográfica de las claves de cifrado. Luego haga click en 'Formatear' para crear el volumen. Haga click en Formatear para crear el volumen externo. Para más información, lea la documentación. Formato del volumen externo Formato del volumen oculto Formato del volumen Se necesita Adobe Reader (o una herramienta compatible) para ver o imprimir la Guía de Usuario de VeraCrypt. Adobe Reader puede descargarse gratuitamente desde: www.adobe.com\n\n¿Desea, en su lugar, ver la documentacion en línea? Si selecciona esta opción, el asistente primero le ayudará a crear un volumen VeraCrypt normal y luego un volumen VeraCrypt oculto dentro de este. Los usuarios sin experiencia deberían seleccionar siempre esta opción. Si selecciona esta opción, creará un volumen oculto dentro de un volumen VeraCrypt existente. Se asumirá que ya ha creado ud. un volumen VeraCrypt que pueda alojar un volumen oculto. Modo de Creación de Volumen Volumen oculto creado El volumen oculto VeraCrypt ha sido creado con éxito y está listo para ser usado. Si todas las instrucciones han sido seguidas y las precauciones y requisitos listados en la sección "Precauciones y Requisitos de Seguridad Concernientes a los Volúmenes Ocultos" de la Guía del Usuario de VeraCrypt han sido seguidos, debería ser imposible demostrar que el volumen oculto existe, incluso si el volumen externo está montado.\n\nAVISO: SI NO PROTEGE EL VOLUMEN OCULTO (PARA INFORMARSE SOBRE CÓMO HACERLO, VAYA A LA SECCIÓN "PROTECCIÓN DE VOLÚMENES OCULTOS CONTRA DAÑOS" EN LA GUÍA DEL USUARIO DE TRUECRYPT), NO MODIFIQUE EL VOLUMEN EXTERNO. DE LO CONTRARIO, ¡PODRÍA SOBREESCRIBIR Y DAÑAR EL VOLUMEN OCULTO! Ha iniciado el sistema operativo oculto. Como habrá observado, el sistema operativo oculto parece estar instalado en la misma partición que el sistema operativo original. Sin embargo, en realidad, está instalado dentro de la partición trasera (en el volumen oculto). Todas las operaciones de lectura y escritura están siendo redirigidas transparentemente desde la partición del sistema original al volumen oculto.\n\nNi el sistema operativo ni las aplicaciones sabrán que los datos escritos y leídos desde la partición del sistema son en realidad escritos y leídos desde la partición trasera (desde un volumen oculto). Dichos datos son cifrados y descifrados al vuelo como siempre (con una clave de cifrado diferente de la que será utilizada para el sistema operativo señuelo).\n\n\nHaga click en Siguiente para continuar. El volumen externo ha sido creado y montado como la unidad %hc:. Ahora debería ud. copiar a este volumen externo algunos archivos susceptibles de ser buscados pero que realmente NO sean los que quiere ocultar. Estarán ahí por si alguien le obligara a revelar la contraseña para la primera partición tras la partición del sistema, donde los volúmenes externo y oculto (conteniendo el sistema operativo oculto) residirán. Ud. podrá revelar la contraseña para este volumen externo, y la existencia del volumen oculto (y del sistema operativo oculto) permanecerá en secreto.\n\nIMPORTANTE: Los archivos que copie al volumen externo no deben ocupar más de %s. De lo contrario, podría no haber suficiente espacio libre en el volumen externo para el volumen interno (y no se podrá continuar). Cuando termine de copiar, haga click en Siguiente (no desmonte el volumen). El volumen externo ha sido creado con éxito y montado como la unidad %hc:. Ahora debería ud. copiar a este volumen algunos archivos susceptibles de ser buscados pero que realmente NO sean los que quiere ocultar. Los archivos estarán ahí por si alguien le obligara a revelar su contraseña. Ud. revelará sólo la contraseña para este volumen externo, no la del volumen oculto. Los archivos que realmente le importan serán almacenados en el volumen oculto, que será creado más adelante. Cuando termine de copiar, haga click en Siguiente. No desmonte el volumen.\n\nNota: Después de pulsar Siguiente, el mapa de bits del cluster del volumen externo será escaneado para determinar el tamaño del área ininterrumpida de espacio libre al final del volumen. Este área alojará el volumen oculto, así que limitará su máximo tamaño posible. Escanear el mapa de bits del cluster asegura que ningún dato del volumen externo sea sobreescrito por el volumen oculto. Contenido del volumen externo \n\nEn los siguientes pasos, establecerá las opciones para el volumen externo (dentro del cual se creará el volumen oculto posteriormente). \n\nEn los siguientes pasos, creará un volumen VeraCrypt externo dentro de la primera partición tras la partición del sistema (como se explicó en uno de los pasos anteriores). Volumen externo En los siguientes pasos, establecerá las opciones y contraseña para el volumen oculto, que contendrá el sistema operativo oculto.\n\nObservación: El mapa de bits del cluster del volumen externo ha sido escaneado para determinar el tamaño del área ininterrumpida de espacio libre al final del volumen externo. Este área alojará el volumen oculto, así que limita su máximo tamaño posible. Ha sido determinado y confirmado que el máximo tamaño posible del volumen oculto es mayor que el tamaño de la partición del sistema (lo que es requerido, porque el contenido entero de la partición del sistema necesitará ser copiado al volumen oculto). Esto asegura que ningún dato almacenado en el volumen externo será sobreescrito por datos escritos al área del volumen oculto. IMPORTANTE: Por favor recuerde los algoritmos que seleccione en este paso. Tendrá que seleccionar los mismos algoritmos para el sistema señuelo. De otro modo, ¡el sistema oculto será inaccesible! (El sistema señuelo debe ser cifrado con el mismo algoritmo de cifrado que el sistema oculto.)\n\nNota: La razón es que el sistema señuelo y el sistema oculto compartirán un único cargador de arranque, el cual soporta sólo un único algoritmo, seleccionado por el usuario (para cada algoritmo, hay una versión especial del Cargador de Arranque de VeraCrypt). \n\nEl mapa de bits del cluster del volumen ha sido escaneado y el máximo tamaño posible del volumen oculto ha sido determinado. En los pasos siguientes establecerá las opciones, el tamaño y la contraseña para el volumen oculto. Volumen oculto Ahora el volumen oculto está protegido contra daños hasta que el volumen externo sea desmontado.\n\nAVISO: Si se intenta guardar cualquier dato en el área del volumen oculto, VeraCrypt comenzará a proteger contra escritura el volumen entero (tanto la parte oculta como la externa) hasta que sea desmontado. Esto podría crear corrupción del sistema de archivos en el volumen externo, lo cual (si se repite) podría afectar negativamente la negación plausible del volumen oculto. Por tanto, debería esforzarse todo lo posible por evitar escribir en el área del volumen oculto. Cualquier dato que vaya a guardarse en el área del volumen oculto no se guardará y se perderá. Windows informará de ello como un error de escritura ("Error de escritura demorada" o "El parámetro es incorrecto"). Ahora cada uno de los volúmenes ocultos dentro de los volúmenes recién montados están protegidos contra daños hasta que sean desmontados.\n\nAVISO: Si se intenta guardar cualquier dato en el área del volumen oculto protegido de cualquiera de estos volúmenes, VeraCrypt comenzará a proteger contra escritura el volumen entero (tanto la parte oculta como la externa) hasta que sea desmontado. Esto podría crear corrupción del sistema de archivos en el volumen externo, lo cual (si se repite) podría afectar negativamente la negación plausible del volumen oculto. Por tanto, debería esforzarse todo lo posible por evitar escribir en el área del volumen oculto. Cualquier dato que vaya a guardarse en las áreas de volumen oculto protegido no se guardará y se perderá. Windows informará de ello como un error de escritura ("Error de escritura demorada" o "El parámetro es incorrecto"). AVISO: ¡Se intentó guardar información en el área del volumen oculto dentro del volumen montado como %c:! VeraCrypt impidió que se guardaran esos datos para proteger el volumen oculto. Esto podría haber causado corrupción en el sistema de archivos del volumen externo y Windows podría haber informado de un error de escritura ("Error de escritura demorada" o "El parámetro es incorrecto"). El volumen entero (tanto la parte externa como la oculta) será protegido contra escritura hasta que sea desmontado. Si no es la primera vez que VeraCrypt ha impedido que se guarden datos en el área del volumen oculto de este volumen, la negación plausible de este volumen oculto podría estar afectada negativamente (debido a posibles inconsistencias correlacionadas inusuales dentro del sistema de archivos del volumen externo). Por tanto, debería considerar crear un nuevo volumen VeraCrypt (con Formato Rápido desactivado) y mover los archivos de este volumen al nuevo volumen; este volumen debería ser borrado con seguridad (tanto la parte externa como la oculta). Es muy recomendable reiniciar el sistema operativo ahora. Has indicado tu intención de almacenar archivos mayores de 4 GB en este volumen. Esto requiere que el volumen sea formateado como NTFS, lo cual, sin embargo, no será posible. Tenga en cuenta que cuando un sistema operativo oculto está ejecutándose, los volúmenes VeraCrypt no ocultos no pueden ser formateados como NTFS. La razón es que el volumen podría necesitar ser montado temporalmente sin protección contra escritura, para permitir al sistema operativo formatearlo como NTFS (mientras que formatear como FAT lo puede hacer VeraCrypt directamente y sin montar el volumen). Para más detalles técnicos, ver más abajo. Puede crear un volumen NTFS no oculto desde dentro del sistema operativo señuelo. Por razones de seguridad, cuando un sistema operativo oculto está ejecutándose, los volúmenes ocultos se pueden crear sólo en modo 'directo' (porque los volúmenes externos deben ser montados siempre en modo de sólo lectura). Para crear un volumen oculto con seguridad, siga estos pasos:\n\n1) Arranque el sistema señuelo.\n\n2) Cree un volumen VeraCrypt normal y, a este volumen, copie algunos archivos susceptibles de ser buscados pero que realmente NO sean los que quiere ocultar (el volumen se convertirá en el volumen externo).\n\n3) Arranque el sistema oculto e inicie el Asistente de Creación de Volúmenes VeraCrypt. Si el volumen está alojado en un archivo, muévalo a la partición del sistema o a otro volumen oculto (de otro modo, el volumen oculto recién creado podría ser montado como sólo lectura y no podría formatearse). Siga las instrucciones del asistente hasta seleccionar el modo 'directo' de creación de volúmenes ocultos.\n\n4) En el asistente, seleccione el volumen que creó en el paso 2 y siga las instrucciones para crear un volumen oculto dentro del mismo. Por razones de seguridad, cuando un sistema operativo oculto se está ejecutando, los sistemas de archivos locales no cifrados y los volúmenes VeraCrypt no ocultos son montados como sólo lectura (no se puede guardar ningún dato en esos sistemas de archivos y volúmenes VeraCrypt).\n\nSe pueden escribir datos a cualquier sistema de archivos que resida dentro de un volumen VeraCrypt oculto (siempre que dicho volumen oculto no esté ubicado en un contenedor almacenado en un sistema de archivos no cifrado o en cualquier otro sistema de archivos de sólo lectura). Hay tres razones principales por las que se deberían implementar contramedidas:\n\n- Habilita la creación de una plataforma segura para montar volúmenes VeraCrypt ocultos. Recomendamos oficialmente que los volúmenes ocultos sean montados sólo cuando un sistema operativo oculto se esté ejecutando. (Para más información, vea la sección 'Precauciones y Requisitos de Seguridad Concernientes a los Volúmenes Ocultos' en la documentación.)\n\n- En algunos casos, es posible determinar que, en un momento concreto, un sistema de archivos particular no se montó bajo (o un archivo particular del sistema de archivos no se guardó o leyó desde) una instancia particular de un sistema operativo (p.e. analizando y comparando registros de diario del sistema de archivos, fechas/horas de los archivos, logs de aplicaciones, logs de errores, etc). Esto podría indicar que un sistema operativo oculto está instalado en el ordenador. Las contramedidas previenen este problema.\n\n- Previene la corrupción de datos y permite la hibernación segura. Cuando Windows se reanuda tras una hibernación, asume que todos los sistemas de archivos montados están en el mismo estado que cuando el sistema hibernó. VeraCrypt lo asegura protegiendo contra escritura cualquier sistema de archivos accesible tanto desde el sistema señuelo como desde el oculto. Sin esta protección, el sistema de archivos podría corromperse al ser montado por un sistema mientras el otro sistema está hibernado. Nota: Si necesita transferir archivos con seguridad desde el sistema señuelo al sistema oculto, siga estos pasos:\n1) Inicie el sistema señuelo.\n2) Guarde los archivos a un volumen no cifrado o a un volumen VeraCrypt externo/normal.\n3) Inicie el sistema oculto.\n4) Si guardó los acrhivos a un volumen VeraCrypt, móntelo (será automáticamente montado como sólo lectura).\n5) Copie los archivos a la partición del sistema oculto o a otro volumen oculto. Su ordenador debe ser reiniciado.\n\n¿Desea reiniciarlo ahora? Ha ocurrido un error al obtener el estado del cifrado del sistema. No se pueden inicializar componentes de la aplicación para el cifrado del sistema. ¡Fallo al inicializar el generador de números aleatorios! No se pudo iniciar la aplicación. Fallo al registrar la clase Dialog. Error: Fallo al cargar la librería de sistema Rich Edit. Asistente de Creación de Volúmenes VeraCrypt El tamaño máximo posible de volumen oculto para este volumen es %.2f bytes. El tamaño máximo posible de volumen oculto para este volumen es %.2f KB. El tamaño máximo posible de volumen oculto para este volumen es %.2f MB. El tamaño máximo posible de volumen oculto para este volumen es %.2f GB. La contraseña/archivo-llave del volumen no puede cambiarse mientras el volumen está montado. Desmonte el volumen primero. El algoritmo de derivación de clave de cabecera no puede ser cambiado mientras el volumen está montado. Desmonte el volumen primero. &Montar Se requiere una versión más reciente de VeraCrypt para montar este volumen. Error: Asistente para la Creación de Volumen no encontrado.\n\nVerifique que el archivo 'VeraCrypt Format.exe' este en la misma carpeta que el archivo ' VeraCrypt.exe'. Si no es así, reinstale VeraCrypt o localice el archivo 'VeraCrypt Format.exe' en su disco y ejecútelo. &Siguiente > &Finalizar &Instalar E&xtraer No es posible conectar con el controlador de dispositivo VeraCrypt. VeraCrypt no puede funcionar si el controlador de dispositivo no está funcionando.\n\nTenga en cuenta que, debido a un problema de Windows, puede ser necesario terminar la sesión o reiniciar el sistema antes antes de que el controlador de dispositivo se pueda cargar. Ocurrió un error al cargar/preparar las fuentes. No se ha encontrado la letra de unidad, o no se ha especificado ninguna. Letra de unidad no disponible. ¡No seleccionó ningún archivo! No hay letras de unidad disponibles. ¡No hay ninguna letra de unidad libre para el volumen externo! La creación del Volumen no puede continuar. No se pudo determinar la versión del sistema operativo o está utilizando un sistema operativo no soportado. ¡No se ha seleccionado la ruta! ¡No hay suficiente espacio libre para el volumen oculto! La creación del volumen no puede continuar. Error: Los archivos que copió al volumen externo ocupan demasiado espacio. Por tanto, no hay suficiente espacio libre en el volumen externo para el volumen oculto.\n\nTenga en cuenta que el volumen oculto debe ser al menos tan grande como la partición del sistema (la partición donde el sistema operativo en ejecución está instalado). La razón es que el sistema operativo oculto necesita ser creado copiando el contenido de la partición del sistema al volumen oculto.\n\n\nEl proceso de creación del sistema operativo oculto no puede continuar. El controlador no puede desmontar el volumen. Algunos archivos situados en el volumen probablemente siguen abiertos. No se puede bloquear el volumen. Todavía hay archivos abiertos en él. Por lo tanto, no puede ser desmontado. VeraCrypt no puede bloquear el volumen porque está siendo usado por el sistema o alguna aplicación (puede haber archivos abiertos en el volumen).\n\n¿Quieres forzar el desmontaje del volumen? Seleccione un volumen VeraCrypt Especifique la ubicación y el nombre del archivo Seleccione librería PKCS #11 Memoria Insuficiente IMPORTANTE: Recomendamos encarecidamente que los usuarios sin experiencia creen un contenedor de archivos VeraCrypt en el dispositivo/partición seleccionado, en lugar de intentar cifrar el dispositivo/partición entero.\n\nAl crear un contenedor VeraCrypt (al contrario que al cifrar un dispositivo o partición) no hay, por ejemplo, riesgo de destruir una gran cantidad de archivos. Tenga en cuenta que un contenedor VeraCrypt (a pesar de que contiene un disco virtual cifrado) es exactamente igual que cualquier archivo normal. Para más información, vea el capítulo Tutorial del Principiante en la Guía de Usuario de VeraCrypt.\n\n¿Seguro que desea cifrar el dispositivo/partición entero? AVISO: ¡El archivo '%hs' ya existe!\n\nIMPORTANTE: TRUECRYPT NO CIFRARÁ EL ARCHIVO, PERO LO BORRARÁ. ¿Seguro que desea borrar el archivo y reemplazarlo por un nuevo contenedor VeraCrypt? CUIDADO: ¡TODOS LOS ARCHIVOS ACTUALMENTE ALMACENADOS EN %s '%hs'%s SERÁN BORRADOS Y SE PERDERÁN (NO SERÁN CIFRADOS)!\n\n¿Seguro que desea continuar con el formato? AVISO: No podrá montar el volumen o acceder a los archivos almacenados en él hasta que haya sido cifrado por completo.\n\n¿Seguro que desea comenzar a cifrar %s '%hs'%s? AVISO: Tenga en cuenta que si el suministro de energía se interrumpe repentinamente mientras se cifran datos existentes sin pérdida de información, o si el sistema operativo falla debido a un error de software o hardware mientras VeraCrypt cifra datos sin pérdida de información, se corromperán o perderán porciones de los datos. Por tanto, antes de comenzar a cifrar, asegúrese de que tiene copias de seguridad de los archivos que desea cifrar.\n\n¿Tiene dichas copias? CUIDADO: ¡TODOS LOS ARCHIVOS ALMACENADOS EN LA PARTICIÓN '%hs'%s (EN LA PRIMERA PARTICIÓN TRAS LA PARTICIÓN DEL SISTEMA) SERÁN BORRADOS Y SE PERDERÁN (NO SERÁN CIFRADOS)!\n\n¿Seguro que desea iniciar el formateo? AVISO: ¡LA PARTICIÓN SELECCIONADA CONTIENE UNA GRAN CANTIDAD DE DATOS! ¡Todos los archivos almacenados en la partición serán eliminados y se perderán (NO serán cifrados)! Borra cualquier archivo almacenado en la partición creando un volumen VeraCrypt dentro Contraseña Establecer Algoritmo de Derivación de Clave de Cabecera Añadir/Eliminar Archivos-llave a/de un Volumen Eliminar Todos los Archivos-llave de un Volumen Contraseña y/o archivo-llave cambiados con éxito.\n\nIMPORTANTE: Asegúrese de que ha leído la sección 'Cambiando contraseñas y archivos-llave' en el capítulo 'Precauciones y Requisitos de Seguridad' en la Guía de Usuario de VeraCrypt. IMPORTANTE: Si no destruyó su Disco de Rescate VeraCrypt, su partición/unidad del sistema aún puede ser descifrada usando la contraseña antigua (arrancando el Disco de Rescate VeraCrypt e introduciendo la contraseña antigua). Debería ud. crear un nuevo Disco de Rescate VeraCrypt y destruir el antiguo.\n\n¿Desea crear un nuevo Disco de Rescate VeraCrypt? Recuerde que el Disco de Rescate VeraCrypt aún usa el algoritmo anterior. Si considera el algoritmo anterior inseguro, debería crear un nuevo Disco de Rescate VeraCrypt y destruir el antiguo.\n\n¿Desea crear un nuevo Disco de Rescate VeraCrypt? Cualquier tipo de archivo (.mp3, .jpg, .zip, .avi...) puede usarse como archivo-llave. VeraCrypt nunca modifica el contenido del archivo. Puede seleccionar más de un archivo-llave (el orden no importa). Si añade una carpeta, todos los archivos no ocultos que contenga serán usados como archivos-llave. Haga click en 'Archivos Token' para seleccionar archivos-llave almacenados en token de seguridad o tarjetas inteligentes (o para importar archivos-llave a tokens o tarjetas). Archivos-llave agregados/eliminados con éxito. Archivo-llave exportado. Algoritmo de derivación de clave de cabecera establecido con éxito. Introduzca la contraseña y/o archivos-llave para el volumen secundario donde desea continuar el proceso de cifrado sin pérdida de datos.\n\nObservación: Después de pulsar Siguiente, VeraCrypt intentará encontrar todos los volúmenes secundarios donde el proceso de cifrado haya sido interrumpido y la cabecera del volumen pueda ser descifrada usando la contraseña y/o archivos-llave suministrados. Si se encuentra más de un volumen, necesitará seleccionar uno en el siguiente paso. Seleccione uno de los volúmenes listados. La lista contiene todos los volúmenes secundarios accesibles donde el proceso de cifrado haya sido interrumpido y cuya cabecera pudo ser descifrada usando la contraseña y/o archivos-llave suministrados. Es muy importante que elija una buena contraseña. Debería evitar elegir una que contenga sólo una palabra que se pueda encontrar en un diccionario (o una combinación de 2, 3, o 4 de estas palabras). No debería contener nombres ni fechas de nacimiento. No debería ser fácil de adivinar. Una buena contraseña es una combinación aleatoria de letras mayúsculas y minúsculas, números, y caracteres especiales como @ ^ = $ * + etc. Recomendamos la elección de una contraseña que consista en más de 20 caracteres (cuanto más larga, mejor). La máxima longitud posible es 64 caracteres. Elija una contraseña para el volumen oculto. Elija una contraseña para el sistema operativo oculto (es decir, para el volumen oculto). IMPORTANTE: La contraseña que elija para el sistema operativo oculto en este paso debe ser sustancialmente diferente de las otras dos contraseñas (es decir, de la contraseña para el volumen externo y de la del sistema operativo señuelo). Introduzca la contraseña para el volumen en el que desea crear un volumen oculto.\n\nTras pulsar Siguiente, VeraCrypt intentará montar el volumen. Tan pronto como el volumen sea montado, el mapa de bits del cluster será examinado para determinar el tamaño del área ininterrumpida de espacio libre (si la hay) cuyo final coincide con el final del volumen. Este área alojará el volumen oculto y por tanto limitará su máximo tamaño posible. La exploración del mapa de cluster es necesario para asegurar que ningún dato del volumen externo sea sobreescrito por el volumen oculto. \nElija una contraseña para el volumen externo. Esta será la contraseña que ud. podrá revelar a un enemigo si es obligado a hacerlo.\n\nIMPORTANTE: La contraseña debe ser sustancialmente diferente de la que elegirá para el volumen oculto.\n\nNota: La longitud máxima posible de la contraseña es 64 caracteres. Elija una contraseña para el volumen externo. Esta será la contraseña que ud. podrá revelar a cualquiera que le obligue a descubrir la contraseña para la primera partición tras la partición del sistema, donde los volúmenes externo y oculto (que contiene el sistema operativo oculto) residirán. La existencia del volumen oculto (y la del sistema operativo oculto) permanecerá en secreto. Tenga en cuenta que esta contraseña no es para el sistema operativo señuelo.\n\nIMPORTANTE: La contraseña debe ser sustancialmente diferente de la que elegirá para el volumen oculto (es decir, para el sistema operativo oculto) Contraseña del Volumen Externo Contraseña del Volumen Oculto Contraseña del Sistema Operativo Oculto AVISO: ¡Las contraseñas cortas son fáciles de romper usando técnicas de fuerza bruta!\n\nRecomendamos la elección de una contraseña de más de 20 caracteres.\n\n¿Seguro que desea utilizar una contraseña corta? Contraseña del Volumen Contraseña incorrecta o no es un volumen VeraCrypt Contraseña y/o archivo-llave incorrectos o no es un volumen VeraCrypt Mal montaje, contraseña incorrecta, o no es un volumen VeraCrypt. Mal montaje, contraseña y/o archivo-llave incorrectos, o no es un volumen VeraCrypt. Contraseña incorrecta o no se encontró el volumen VeraCrypt. Contraseña y/o archivo-llave incorrectos o no se encontró el volumen VeraCrypt. \n\nAviso: El bloqueo de mayúsculas está activo. Esto puede causar que introduzca su contraseña incorrectamente. \n\nAVISO: Se han encontrado archivos ocultos en una ruta de búsqueda de archivos-llave. Estos archivos no pueden ser usados como archivos-llave. Si necesita usarlos como archivos-llave, elimine su atributo 'Oculto' (click derecho en cada uno, seleccione 'Propiedades', desmarque 'Oculto' y pulse Aceptar). Nota: Los archivos ocultos sólo son visibles si la opción correspondiente está activada (Equipo > Organizar > 'Opciones de carpeta y búsqueda' > Ver). Si está intentando proteger un volumen oculto que contiene un sistema oculto, asegúrese de estar usando la distribución de teclado EEUU estándar cuando teclee la contraseña para el volumen oculto. Esto es necesario debido a que la contraseña necesita ser escrita en el entorno de pre-arranque (antes de que Windows se inicie) en el que las distribuciones de teclado Windows distintas a la de EEUU no estarán disponibles. VeraCrypt no ha encontrado ningún volumen en el que el cifrado haya sido interrumpido y la cabecera de volumen pueda ser descifrada usando la contraseña y/o archivo-llave suministrados.\n\nPor favor asegúrese de que la contraseña y/o archivo-llave son correctos y que la partición/volumen no esté siendo usada por el sistema o alguna aplicación (antivirus incluídos). \n\nRecuerde: Si está intentando montar una partición ubicada en una unidad del sistema cifrada sin autenticación de pre-arranque, o montar la partición del sistema cifrada de un sistema operativo que no se está ejecutando, puede hacerlo seleccionando 'Sistema' > 'Montar sin Autenticación de Pre-Arranque'. En este modo, no puede montar una partición ubicada en una unidad cuya parte está dentro del ámbito de la clave del cifrado del sistema activo.\n\nAntes de que pueda montar esta partición en este modo, necesita o arrancar un sistema operativo instalado en una unidad diferente (cifrado o no) o arrancar un sistema operativo no cifrado. < &Atrás ¡No se pueden listar los dispositivos raw de su sistema! El volumen '%hs' existe y es de sólo lectura. ¿Desea reemplazarlo? Seleccione el directorio de destino Seleccione Archivo-llave Seleccione ruta de búsqueda de archivos-llave. AVISO: ¡Sólo se recordará la ruta, no el nombre de los archivos! Diseñado por Ross Anderson, Eli Biham, y Lars Knudsen. Publicado en 1998. Clave de 256-bit, bloque de 128-bit. Modo de operación XTS. Serpent fue uno de los finalistas AES. Especifique el tamaño del contenedor que desea crear.\n\nSi crea un contenedor dinámico (archivo disperso), este parámetro especificará su máximo tamaño posible.\n\nTenga en cuenta que el mínimo tamaño posible de un volumen FAT es 292 KB. De un volumen NTFS, el mínimo es 3792 KB. Especifique el tamaño del volumen externo (primero creará un volumen externo y luego un volumen oculto en su interior). El mínimo tamaño posible para un volumen en el que se pretenda crear un volumen oculto es 340 KB. Especifique el tamaño del volumen oculto. El mínimo tamaño posible de un volumen oculto es 40 KB (o 3664 KB si se formatea como NTFS). El máximo tamaño posible que puede especificar para el volumen oculto se muestra más arriba. Tamaño del volumen externo Tamaño del volumen oculto Verifique que el tamaño del dispositivo/partición seleccionado que se muestra es correcto y haga click en Siguiente. El volumen externo y el oculto (que contiene el sistema operativo oculto) residirán dentro de esta partición. Debe ser la primera partición tras la partición del sistema.\n\nVerifique que el tamaño de la partición y su número mostrado más arriba son correctos, y si lo son, pulse Siguiente. \n\nRecuerde que el mínimo tamaño posible de un volumen en el que se pretende crear un volumen oculto es 340 KB. Tamaño del volumen Dinámico AVISO: FALLÓ LA AUTO-PRUEBA! Auto-prueba de todos los algoritmos superada El número de unidad de datos suministrado es demasiado largo o corto. La clave secundaria suministrada es demasiado larga o corta. El texto cifrado de prueba suministrado es demasiado largo o corto. La clave de prueba suministrada es demasiado larga o corta. El texto plano de prueba es demasiado largo o corto. Dos algoritmos en cascada operando en modo XTS. Cada bloque es cifrado primero con %hs (clave de %d-bit) y luego con %hs (clave de %d-bit). Cada algoritmo usa su propia clave. Todas las claves son independientes entre sí. Tres algoritmos en cascada operando en modo XTS. Cada bloque es cifrado primero con %hs (clave de %d-bit), luego con %hs (clave de %d-bit), y finalmente con %hs (clave de %d-bit). Cada algoritmo usa su propia clave. Todas las claves son independientes entre sí. Tenga en cuenta que, dependiendo de la configuración del sistema operativo, las características de ejecución y montaje automático podrían funcionar sólo si los archivos de disco viajero son creados en medios contra escritura del tipo CD/DVD. Esto no es un error de VeraCrypt (es una limitación de Windows). El disco viajero VeraCrypt ha sido creado con éxito.\n\nRecuerde que necesita privilegios de administrador para ejecutar VeraCrypt en modo portable. Recuerde también que, tras examinar el archivo del registro, se podría demostrar que VeraCrypt se ejecutó en un sistema Windows incluso si es ejecutado en modo portable. Disco Viajero VeraCrypt Diseñado por Bruce Schneier, John Kelsey, Doug Whiting, David Wagner, Chris Hall y Niels Ferguson. Publicado en 1998. Clave de 256-bit, bloque de 128-bit. Modo de operación XTS. Twofish fue uno de los finalistas AES. Más información en %hs Desconocido Ha ocurrido un error no especificado o desconocido (%d). Algunos volúmenes contienen carpetas o archivos en uso por el sistema o alguna aplicación.\n\n¿Forzar el desmontaje? &Desmontar ¡Fallo al desmontar! El volumen contiene carpetas o archivos en uso por el sistema o alguna aplicación.\n\n¿Forzar el desmontaje? No hay ningún volumen montado en la letra de unidad especificada. El volumen que trata de montar ya está montado. Ocurrió un error al intentar montar el volumen. Error al buscar la ubicación dentro del volumen. Error: Tamaño incorrecto del volumen. AVISO: Debería usar Formato Rápido sólo en los siguientes casos:\n\n1) El dispositivo no contiene datos importantes y no necesita negación plausible.\n2) El dispositivo ya ha sido cifrado por completo con seguridad.\n\n¿Seguro que desea usar Formato Rápido? Un contenedor dinámico es un archivo disperso NTFS pre-asignado cuyo tamaño físico (espacio en disco usado actualmente) crece conforme se van añadiendo nuevos datos.\n\nAVISO: El rendimiento de volúmenes alojados en archivos dispersos es significativamente peor que el de volúmenes comunes. Los volúmenes alojados en archivos dispersos son también menos seguros, porque se puede determinar qué sectores del volumen están sin usar. Además, estos volúmenes no pueden proporcionar negación plausible (alojar un volumen oculto). Tenga en cuenta también que si se escriben datos en un contenedor disperso cuando no haya suficiente espacio libre en el sistema de archivos anfitrión, el sistema de archivos cifrado podría corromperse.\n\n¿Seguro que desea crear un volumen alojado en un archivo disperso? Tenga en cuenta que el tamaño del contenedor dinámico reportado por Windows y VeraCrypt siempre será igual a su máximo tamaño. Para ver el tamaño físico actual del contenedor (el espacio que usa del disco), haga click derecho en el contenedor (desde el explorador de Windows, no en VeraCrypt), seleccione 'Propiedades' y observe el valor 'Tamaño en disco'.\n\nTenga en cuenta también que si mueve un contenedor dinámico a otro volumen o unidad, el tamaño físico del contenedor será extendido al máximo. (Puede evitar esto creando un nuevo contenedor dinámico en la ubicación de destino, montándolo y moviendo los archivos desde el antiguo contenedor al nuevo.) Caché de contraseñas borrada Las contraseñas (y/o archivos-llave procesados) almacenadas en la caché del controlador TrueCryp han sido borradas. VeraCrypt no puede cambiar la contraseña de un volumen exterior. Seleccione una letra de unidad libre de la lista. Seleccione un volumen montado en la lista de letras de unidad. Hay seleccionados dos volúmenes montados diferentes (uno en la lista de letras de unidad y el otro en el campo de texto bajo la lista).\n\nElija el volumen que quiso seleccionar: Error: No se puede crear autorun.inf ¡Error al procesar el archivo-llave! ¡Error al procesar la ruta del archivo-llave! La ruta del archivo-llave no contiene archivos.\n\nRecuerde que las carpetas (y los archivos que contengan) encontradas durante la búsqueda son ignoradas. VeraCrypt no soporta este sistema operativo. Error: VeraCrypt sólo soporta versiones estables de este sistema operativo (no versiones beta ni RC). Error: No se puede asignar memoria. Error: No se pudo obtener el valor del contador de rendimiento. Error: Mal formato de volumen. Error: Ha proporcionado una contraseña para un volumen oculto (no para un volumen normal). Por motivos de seguridad, un volumen oculto no puede ser creado dentro de un volumen VeraCrypt que contiene un sistema de archivos cifrado sin pérdida de datos (porque el espacio libre del volumen no ha sido llenado con datos aleatorios). VeraCrypt - Avisos Legales Todos los Archivos Volúmenes VeraCrypt Módulos de Librería El formateo NTFS no puede continuar. No se puede montar el volumen. No se puede desmontar el volumen. Windows falló al formatear el volumen como NTFS.\n\nSeleccione un tipo diferente de sistema de archivos (si es posible) y reinténtelo. Alternativamente, puede dejar el volumen sin formato (seleccione 'Ninguno' como sistema de archivos), salir del asistente, montar el volumen, y usar una herramienta del sistema o de terceros para formatear el volumen montado (el volumen permanecerá cifrado). Windows fallo al formatear el volumen como NTFS.\n\n¿Desea formatear el volumen como FAT en su lugar? Por defecto partición PARTICIÓN Dispositivo dispositivo DISPOSITIVO Volumen volumen VOLUMEN Etiqueta El tamaño de cluster seleccionado es muy pequeño para el tamaño del volumen. En su lugar se usará un cluster mas grande. Error: ¡No se puede obtener el tamaño del volumen!\n\nAsegúrese de que el volumen seleccionado no está siendo usado por el sistema o una aplicación. Los volúmenes ocultos no se deben crear dentro de contenedores dinámicos (archivos dispersos). Para garantizar la negación plausible, el volumen oculto necesita ser creado en un contenedor no dinámico. El Asistente de Creación de Volúmenes VeraCrypt puede crear un volumen oculto sólo dentro de un volumen FAT o NTFS. En Windows 2000, el Asistente de Creación de Volúmenes VeraCrypt puede crear un volumen oculto sólo en un volumen FAT. Nota: El sistema de archivos FAT es más adecuado para volúmenes externos que el NTFS (por ejemplo, el máximo tamaño posible del volumen oculto probablemente habría sido significativamente mayor si el volumen externo se hubiera formateado como FAT). Tenga en cuenta que el sistema de archivos FAT es más adecuado para volúmenes externos que el NTFS. Por ejemplo, el máximo tamaño posible del volumen oculto probablemente será significativamente mayor si el volumen externo es formateado como FAT (la razón es que el sistema de archivos NTFS siempre almacena datos internos en la mitad del volumen y, por tanto, el volumen oculto sólo puede residir en la segunda mitad del volumen externo).\n\n¿Seguro que desea formatear el volumen externo como NTFS? ¿Desea formatear el volumen como FAT en su lugar? Nota: Este volumen no puede ser formateado como FAT, porque excede el tamaño máximo de volumen soportado por el sistema de archivos FAT32 para el tamaño de sector aplicable (2 TB para sectores de 512-byte y 16 TB para sectores de 4096-byte). Error: La partición para el sistema operativo oculto (o sea, la primera partición tras la partición del sistema) debe ser al menos un 5% mayor que la partición del sistema (que es en la que está instalado el sistema operativo en ejecución). Error: La partición para el sistema operativo oculto (o sea, la primera partición tras la partición del sistema) debe ser al menos un 110% (2.1 veces) mayor que la partición del sistema (que es en la que está instalado el sistema operativo en ejecución). La razón es que el sistema de archivos NTFS siempre almacena datos internos en la mitad del volumen y, por tanto, el volumen oculto (que va a contener una copia de la partición del sistema) sólo puede residir en la segunda mitad de la partición. Error: si el volumen externo es formateado como NTFS, debe ser al menos un 110% (2.1 veces) mayor que la partición del sistema. La razón es que el sistema de archivos NTFS siempre almacena datos internos en la mitad del volumen y, por tanto, el volumen oculto (que va a contener una copia de la partición del sistema) sólo puede residir en la segunda mitad del volumen externo.\n\nNota: El volumen externo tiene que estar en la misma partición que el sistema operativo oculto (es decir, dentro de la primera partición tras la partición del sistema). Error: No hay ninguna partición tras la partición del sistema.\n\nRecuerde que antes de poder crear un sistema operativo oculto, ud. necesita crear una partición para él en la unidad del sistema. Debe ser la primera partición tras la partición del sistema (es decir, aquella en la que está instalado el sistema operativo en ejecución) y debe ser al menos un 5% mayor que ésta. Sin embargo, si el volumen externo (no confundir con la partición del sistema) se formatea como NTFS, la partición para el sistema operativo oculto debe ser al menos un 110% (2.1 veces) mayor que la partición del sistema (la razón es que el sistema de archivos NTFS siempre almacena datos internos en la mitad del volumen y, por tanto, el volumen oculto, que va a contener una copia de la partición del sistema, sólo puede residir en la segunda mitad de la partición). Observación: no es viable (y por tanto no está soportado) instalar sistemas operativos en dos volúmenes VeraCrypt que estén insertados dentro de una sola partición, porque usar el sistema operativo externo podría requerir que se escriban datos al área del sistema operativo oculto (y si estas operaciones de escritura fueran evitadas usando la protección de volúmenes ocultos, causaría intrínsecamente fallos del sistema, como 'pantallazos azules'). Para más información sobre cómo crear y administrar particiones, remítase a la documentación proporcionada con su sistema operativo o contacte con el equipo de soporte técnico del vendedor de su ordenador para obtener asistencia. Error: El sistema operativo en ejecución no está instalado en la partición de arranque (la primera partición activa). Esto no está soportado. Ha indicado su intención de almacenar archivos mayores de 4 GB en este volumen VeraCrypt. No obstante, ha elegido el sistema de archivos FAT, en el cual no se pueden almacenar archivos mayores de 4 GB.\n\n¿Seguro que desea formatear el volumen como FAT? Error: ¡No se puede acceder al volumen!\n\nAsegúrese de que el volumen seleccionado existe, que no está montado ni siendo usado por otra aplicación, que tiene permisos de lectura/escritura sobre el volumen, y que no está protegido contra escritura. Error: No se puede acceder al volumen y/o obtener información sobre el volumen.\n\nAsegúrese de que el volumen seleccionado existe, que no está siendo usado por el sistema o alguna aplicación, que tiene permisos de lectura/escritura sobre el volumen, y que no está protegido contra escritura. Error: No se puede acceder al volumen y/o obtener información sobre el mismo. Asegúrese de que el volumen seleccionado existe, de que no está siendo usado por el sistema o alguna aplicación, que tiene permisos de lectura/escritura sobre el volumen, y que no está protegido contra escritura.\n\nSi el problema continúa, podría ayudar seguir los pasos siguientes. Un error evitó que VeraCrypt cifrara la partición. Intente arreglar cualquier problema reportado previamente y reinténtelo. Si el problema continúa, podría ayudar seguir los siguientes pasos. Un error evitó que VeraCrypt continuara el proceso de cifrado de la partición.\n\nIntente arreglar cualquier problema reportado previamente y trate de continuar el proceso de nuevo. Recuerde que el volumen no puede montarse hasta que haya sido cifrado por completo. Error: ¡No se puede desmontar el volumen externo!\n\nEl volumen no puede ser desmontado si contiene carpetas o archivos que estén siendo usados por el sistema o una aplicación.\n\nCierre los programas que puedan estar usando las carpetas o archivos del volumen y pulse Reintentar. Error: ¡No se puede obtener información acerca del volumen externo! La creación del volumen no puede continuar. Error: ¡No se puede acceder al volumen externo! La creación del volumen no puede continuar. Error: ¡No se puede montar el volumen externo! la creación del volumen no puede continuar. Error: ¡No se puede obtener el mapa de bits de cluster del volumen! La creación del volumen no puede continuar. Alfabético/Categorizado Velocidad Media (Descendiendo) Algoritmo Cifrado Descifrado Media Unidad Tamaño Algoritmo de Cifrado Algoritmo de cifrado Tipo Valor Propiedad Localización bytes Oculto Externo Normal Sistema Oculto (sistema) Sólo Lectura Unidad del Sistema Unidad del Sistema (cifrando - %.2f%% hecho) Unidad del Sistema (descifrando - %.2f%% hecho) Unidad del Sistema (%.2f%% cifrado) Partición del Sistema Partición del sistema oculta Partición del Sistema (cifrando - %.2f%% hecho) Partición del Sistema (descifrando - %.2f%% hecho) Partición del Sistema (%.2f%% cifrado) Sí (¡daños evitados!) Ninguno Tamaño de Clave Principal Tamaño de Clave Secundaria (Modo XTS) Tamaño de Clave Tweak (Modo LRW) bits Tamaño de bloque PKCS-5 PRF Cuenta de iteraciones PKCS-5 Volumen Creado Última modificación de la cabecera (hace %I64d días) Versión del Formato del Volumen Copia de Seguridad de Cabecera Insertada Versión del Cargador de Arranque VeraCrypt Primero disponible Disco extraíble Disco Duro Sin cambios Modo Asistente Seleccione uno de los modos. Si no sabe cuál seleccionar, use el modo predeterminado. Seleccione esta opción si desea instalar VeraCrypt en este sistema. Nota: Puede actualizar sin descifrar incluso si la partición/unidad del sistema está cifrada o usa un sistema operativo oculto. Si selecciona esta opción, todos los archivos serán extraídos de este paquete pero no se instalará nada en el sistema. No la seleccione si pretende cifrar la partición o unidad del sistema. Esta opción puede ser útil, por ejemplo, si desea ejecutar VeraCrypt en modo portable. VeraCrypt no tiene por qué ser instalado en el sistema operativo bajo el cual se ejecuta. Después de haber extraído los archivos, puede ejecutar directamente el archivo 'VeraCrypt.exe' (con lo que VeraCrypt se ejecutará en modo portable). Opciones de instalación Aquí puede establecer varias opciones para controlar el proceso de instalación. Instalando Por favor espere mientras VeraCrypt está siendo instalado. VeraCrypt ha sido instalado con éxito VeraCrypt ha sido actualizado con éxito Por favor considere hacer una donación. Puede pulsar Finalizar en cualquier momento para cerrar el instalador. Opciones de Extracción Aquí puede establecer varias opciones para controlar el proceso de extracción. Por favor espere mientras los archivos son extraídos. Archivos extraídos con éxito Todos los archivos han sido correctamente extraídos a la ubicación de destino. Si la carpeta especificada no existe, se creará automáticamente. Los archivos de programa de VeraCrypt serán actualizados en la ubicación donde VeraCrypt está instalado. Si necesita seleccionar una ubicación diferente, desinstale VeraCrypt primero. ¿Desea ver las notas de publicación de la versión actual (la última estable) de VeraCrypt? Si nunca ha utilizado VeraCrypt, recomendamos que lea el capítulo Tutorial del Principiante en la Guía de usuario de VeraCrypt. ¿Desea ver el tutorial? Por favor seleccione una de las siguientes acciones a realizar: Reparar/Reinstalar Actualizar Desinstalar Para instalar/desinstalar VeraCrypt, debe ud. tener privilegios de administrador. ¿Desea continuar? El Instalador de VeraCrypt ya se está ejecutando en este sistema y está preparando o llevando a cabo la instalación o actualización de VeraCrypt. Antes de continuar, espere a que termine o ciérrelo. Si no puede cerrarlo, reinicie su ordenador antes de continuar. La Instalación falló. La Desinstalación falló. Este paquete de distribución está dañado. Intente descargarlo nuevamente (preferentemente desde la página oficial de VeraCrypt en www.veracrypt.org). No se puede escribir el archivo %hs Extrayendo No se puede leer información del paquete. No se puede verificar la integridad de este paquete de distribución. La Extracción falló. La instalación ha sido revertida. VeraCrypt ha sido instalado con éxito. VeraCrypt ha sido actualizado con éxito. VeraCrypt ha sido actualizado a una nueva versión. Antes de poder empezar a usarla, su ordenador debe ser reiniciado.\n\n¿Desea reiniciar ahora? ¡Fallo al actualizar VeraCrypt!\n\nIMPORTANTE: Antes de apagar o reiniciar el sistema, es muy recomendable que utilice Restaurar Sistema (Menú Inicio > Todos los programas > Accesorios > Herramientas del Sistema > Restaurar Sistema) para devolver su sistema al punto de restauración llamado 'Instalación de VeraCrypt'. Si Restaurar Sistema no está disponible, debería intentar reinstalar la versión original o la nueva de VeraCrypt antes de apagar o reiniciar el sistema. VeraCrypt ha sido desinstalado con éxito.\n\nHaga click en 'Finalizar' para eliminar el instalador y la carpeta %hs. Tenga en cuenta que la carpeta no se eliminará si contiene archivos que no hayan sido instalados por el instalador o creados por VeraCrypt. Eliminando entradas de registro de VeraCrypt Añadiendo entradas de registro Eliminando información específica de la aplicación Instalando Deteniendo Eliminando Agregando icono Creando punto de Restauración del Sistema ¡Fallo al crear punto de Restauración del Sistema! Actualizando cargador de arranque Ha fallado la instalación de '%hs'. %hs\n¿Desea continuar instalando? Ha fallado la desinstalación de '%hs'. %hs\n¿Desea continuar desinstalando? Instalación completada. La carpeta '%hs' no pudo ser creada No se puede detener el controlador de dispositivos VeraCrypt.\n\nCierre todas las ventanas abiertas de VeraCrypt primero. Si no funciona, reinicie Windows y reinténtelo. Se deben desmontar todos los volúmenes VeraCrypt antes de instalar/desinstalar VeraCrypt. Una versión obsoleta de VeraCrypt está instalada en este sistema. Debe ser desinstalada antes de instalar esta nueva versión de VeraCrypt.\n\nTan pronto como cierre este mensaje, se lanzará el desinstalador de la versión antigua. Tenga en cuenta que ningún volumen será descifrado al desinstalar VeraCrypt. Tras desinstalar la versión antigua de VeraCrypt, ejecute el instalador de la versión nueva otra vez. La instalación de las entradas del registro ha fallado La instalación del controlador de dispositivos ha fallado. Reinicie Windows e intente instalar VeraCrypt de nuevo. Iniciando el controlador de dispositivo VeraCrypt La desinstalación del controlador de dispositivo ha fallado. Recuerde que, debido a un problema de Windows, puede ser necesario terminar la sesión o reiniciar el sistema antes de que el controlador de dispositivo pueda ser desinstalado (o reinstalado). Instalando el controlador de dispositivo VeraCrypt Deteniendo el controlador de dispositivo VeraCrypt Desinstalando el controlador de dispositivo VeraCrypt Falló el registro de la librería de soporte del Control de Cuentas de Usuario. Falló el des-registro de la librería de soporte del Control de Cuentas de Usuario. Nota sobre el modo portable:\n\nRecuerde que el sistema operativo requiere que los controladores sean registrados con él antes de que puedan ser iniciados. Por tanto, el controlador VeraCrypt no es (ni puede ser) totalmente portable (mientras que las aplicaciones VeraCrypt sí lo son, no tienen que ser instaladas o registradas con el sistema operativo). Recuerde también que VeraCrypt necesita un controlador que proporcione cifrado/descifrado transparente al vuelo. Recuerde que si decide ejecutar VeraCrypt en modo portable (en lugar de ejecutar una copia instalada de VeraCrypt), el sistema le pedirá permiso para ejecutar VeraCrypt (ventana del Control de Cuentas de Usuario) cada vez que intente abrirlo.\n\nLa razón es que cuando ejecuta VeraCrypt en modo portable, VeraCrypt necesita cargar e iniciar el controlador de dispositivo VeraCrypt, el cual es necesario para proporcionar cifrado/descifrado claro al vuelo, y los usuarios sin privilegios de administrador no pueden iniciar controladores de dispositivo en Windows. Por tanto, el sistema le pedirá permiso para ejecutar VeraCrypt con privilegios de administrador.\n\nTenga en cuenta que si instala VeraCrypt en el sistema (en lugar de ejecutarlo en modo portable) el sistema NO le pedirá permiso para ejecutar VeraCrypt cada vez que intente abrirlo.\n\n¿Seguro que desea extraer los archivos? Aviso: este Asistente de Creación de Volúmenes tiene privilegios de administrador.\n\nSu nuevo volumen será creado con permisos que no le permitirán escribir en el volumen cuando esté montado. Si quiere evitarlo, cierre este Asistente de Creación de Volúmenes y abra uno nuevo sin privilegios de administrador.\n\n¿Desea cerrar este Asistente de Creación de Volúmenes? Error: No se puede mostrar la licencia. Externo(!) dias horas minutos s Abrir Desmontar Mostrar VeraCrypt Ocultar VeraCrypt Datos leídos desde el montaje Datos escritos desde el montaje Parte Cifrada 100% (totalmente cifrado) 0% (no cifrado) %.3f%% 100% Esperando Preparando Redimensionando Cifrando Descifrando Finalizando En Pausa Terminado Error Dispositivo desconectado Volúmenes favoritos del sistema guardados.\n\nPara que los volúmenes favoritos del sistema se monten cuando el sistema se inicie, seleccione 'Configuración' > 'Volúmenes Favoritos del Sistema' > 'Montar volúmenes favoritos del sistema cuando se inice Windows'. El volumen que está añadiendo a favoritos no es ni una partición ni un volumen dinámico. Por tanto, VeraCrypt será incapaz de montar este volumen favorito si el número de dispositivo cambia. El volumen que está añadiendo a favoritos es una partición no reconocida por Windows.\n\nVeraCrypt será incapaz de montar este volumen favorito si el número de dispositivo cambia. Establezca el tipo de partición a un tipo reconocido por Windows (use el comando SETID de la herramienta 'diskpart' de Windows). Luego añada la partición a favoritos de nuevo. VeraCrypt en Segundo Plano está deshabilitado o configurado para cerrarse cuando no hay volúmenes montados (o VeraCrypt se está ejecutando en modo portable). Esto puede evitar que sus volúmenes favoritos sean montados automáticamente cuando se conecten los dispositivos que los alojan.\n\nNota: Para habilitar VeraCrypt en Segundo Plano, seleccione Configuración > Preferencias y marque la casilla 'Activado' en la sección 'VeraCrypt en Segundo Plano'. Un contenedor almacenado en un sistema de archivos remoto compartido en red no puede ser montado automáticamente cuando su dispositivo anfitrión se conecte. El dispositivo mostrado no es ni una partición ni un volumen dinámico. Por tanto, el volumen alojado en el dispositivo no puede ser montado automáticamente cuando el dispositivo se conecte. Establezca el tipo de la partición mostrada a un tipo reconocido por Windows (use el comando SETID de la herramienta 'diskpart' de Windows). Luego elimine la partición de favoritos y añádala otra vez. Así permitirá que el volumen alojado en el dispositivo se monte automáticamente cuando el dispositivo se conecte. El dispositivo mostrado no es ni una partición ni un volumen dinámico. Por tanto, no se le puede asignar una etiqueta. Establezca el tipo de la partición mostrada a un tipo reconocido por Windows (use el comando SETID de la herramienta 'diskpart' de Windows). Luego elimine la partición de favoritos y añádala otra vez. Así permitirá a VeraCrypt asignar una etiqueta a la partición. Debido a una limitación de Windows, un contenedor almacenado en un sistema de archivos remoto compartido en red no puede ser montado como un volumen favorito del sistema (sin embargo, puede ser montado como un volumen favorito común cuando un usuario se conecte). Introduzca contraseña para %hs Introduzca contraseña para '%s' Introduzca contraseña para el volumen común/externo. Introduzca contraseña para el volumen oculto Introduzca contraseña para la cabecera almacenada en archivo de respaldo Se ha creado con éxito el archivo-llave. AVISO: ¡La cabecera de este volumen está dañada! VeraCrypt usó automáticamente la copia de seguridad de la cabecera insertada en el volumen.\n\nDebería reparar la cabecera del volumen seleccionando 'Herramientas' > 'Restaurar Cabecera de Volumen'. La copia de seguridad de la cabecera del volumen ha sido creada con éxito.\n\nIMPORTANTE: Restaurar la cabecera usando esta copia de seguridad también restaurará la contraseña actual del volumen. Es más, si son necesarios archivos-llave para montar el volumen, los mismos archivos-llave serán necesarios para montarlo de nuevo cuando se restaure la cabecera del volumen.\n\nAVISO: Esta copia de seguridad puede usarse SÓLO para restaurar la cabecera de éste volumen concreto. Si la usa para restaurar la cabecera de un volumen distinto, podrá montar el volumen pero NO será capaz de descifrar ningún dato almacenado en él (porque cambiará su clave maestra). La cabecera del volumen ha sido restaurada con éxito.\n\nIMPORTANTE: Recuerde que también puede haberse restaurado una contraseña antigua. Además, si cuando se creó la copia de seguridad de la cabecera se necesitaban archivos-llave para montar el volumen, esos archivos-llave serán necesarios de nuevo. Por razones de seguridad, tendrá que introducir la contraseña (y/o suministrar los archivos-llave) correcta para el volumen.\n\nNota: Si el volumen contiene un volumen oculto, tendrá que introducir la contraseña (y/o archivos-llave) para el volumen externo primero. Más tarde, si decide hacer copia de seguridad de la cabecera del volumen oculto, tendrá que introducir la contraseña (y/o archivos-llave) para el volumen oculto. ¿Seguro que desea crear una copia de seguridad de la cabecera del volumen para %hs?\n\nTras pulsar Sí, se le pedirá un nombre de archivo para la copia de seguridad.\n\nNota: Tanto la cabecera del volumen común como la del oculto serán re-cifradas usando sal nueva y almacenadas en el archivo de respaldo. Si no hay ningún volumen oculto dentro de este volumen, el área reservada para la cabecera del volumen oculto en el archivo será llenada con datos aleatorios (para preservar la negación plausible). Cuando restaure la cabecera del volumen desde el archivo de respaldo, necesitará introducir la contraseña (y/o archivos-llave) correcta que existía cuando la copia de seguridad fue creada. La contraseña (y/o archivos-llave) también determinará automáticamente el tipo de la cabecera de volumen a restaurar, es decir, común u oculto (recuerde que VeraCrypt determina el tipo mediante el proceso de prueba y error). ¿Seguro que quiere restaurar la cabecera de volumen de %hs ?\n\nAVISO: Restaurar una cabecera de volumen también restaura la contraseña que era válida cuando se hizo la copia de seguridad. Es más, si se necesitaban archivos-llave cuando se creó dicha copia de seguridad, estos archivos serán necesarios de nuevo para montar el volumen tras la restauración.\n\nDespués de aceptar, seleccionará el archivo de copia de segurida de la cabecera. ¿Este volumen contiene un volumen oculto? El volumen contiene un volumen oculto El volumen no contiene un volumen oculto Seleccione el tipo de copia de seguridad de cabecera de volumen que desea usar: Restaurar la cabecera de volumen desde la copia de seguridad insertada en el volumen Restaurar la cabecera de volumen desde un archivo de copia de seguridad externo El tamaño del archivo de copia de seguridad de la cabecera del volumen es incorrecto. No hay ninguna copia de seguridad insertada en este volumen (recuerde que sólo los volúmenes creados por VeraCrypt 6.0 o posterior contienen copias de seguridad de cabecera insertadas). Está intentando realizar copias de seguridad de la cabecera de la partición/unidad del sistema. Esto no está permitido. Las operaciones de copia de seguridad o restauración relacionadas con la partición/unidad del sistema sólo se pueden realizar usando el Disco de Rescate VeraCrypt.\n\n¿Desea crear un Disco de Rescate VeraCrypt? Está intentando restaurar la cabecera de un volumen virtual VeraCrypt pero ha seleccionado la partición/unidad del sistema. Esto no está permitido. Las operaciones de copia de seguridad o restauración relacionadas con la partición/unidad del sistema sólo se pueden realizar usando el Disco de Rescate VeraCrypt.\n\n¿Desea crear un Disco de Rescate VeraCrypt? Después de pulsar Aceptar, seleccionará un nombre de archivo para la nueva imagen ISO del Disco de Rescate VeraCrypt y la ubicación donde desea colocarla. La imagen del Disco de Rescate ha sido creada y almacenada en este archivo:\n%hs\n\nAhora hay que grabar dicha imagen en un CD o DVD.\n\nIMPORTANTE: Tenga en cuenta que el archivo debe ser grabado en el CD/DVD como una imagen de disco ISO (no como un archivo individual). Para obtener información sobre cómo hacerlo, lea la documentación de su software de grabación CD/DVD.\n\nTras grabar el Disco de Rescate, seleccione 'Sistema' > 'Verificar Disco de Rescate' para verificar que ha sido grabado correctamente. La imagen del Disco de Rescate ha sido creada y almacenada en este archivo:\n%hs\n\nAhora hay que grabar dicha imagen en un CD o DVD.\n\n¿Desea ejecutar el Grabador de Imágenes de Disco de Windows?\n\nNota: tras grabar el Disco de Rescate, seleccione 'Sistema' > 'Verificar Disco de Rescate' para verificar que ha sido grabado correctamente. Por favor inserte su Disco de Rescate VeraCrypt dentro de su unidad de CD/DVD y presione Aceptar para verificarlo. El Disco de Rescate VeraCrypt ha sido verificado con éxito. No se puede verificar el Disco de Rescate ha sido grabado correctamente.\n\nSi ha grabado el Disco de Rescate, expulse e inserte de nuevo el CD/DVD; después verifique otra vez. Si no funciona, pruebe con otro software de grabación y/o otro CD/DVD.\n\nSi está intentando verificar un Disco de Rescate VeraCrypt creado para otra clave maestra, contraseña, etc., por favor recuerde que ese Disco de Rescate fallará siempre esta verificación. Para crear un nuevo Disco de Rescate completamente compatible con su configuración actual, seleccione 'Sistema' > 'Crear Disco de Rescate'. Error creando Disco de Rescate VeraCrypt. No se puede crear un Disco de Rescate VeraCrypt cuando un sistema operativo oculto se está ejecutando.\n\nPara crear un Disco de Rescate VeraCrypt, arranque el sistema operativo señuelo y seleccione 'Sistema' > 'Crear Disco de Rescate'. No se puede verificar que el Disco de Rescate ha sido grabado correctamente.\n\nSi ha grabado el Disco de Rescate, expulse e inserte de nuevo el CD/DVD; después haga click en Siguiente para reintentarlo. Si no funciona, pruebe otro medio%s.\n\nSi no ha grabado aún el Disco de Rescate, hágalo y pulse Siguiente.\n\nSi está intentando verificar un Disco de Rescate VeraCrypt creado antes de iniciar este asistente, tenga en cuenta que dicho Disco de Rescate no se puede usar, porque fue creado para una clave maestra diferente. Necesita grabar el Disco de Rescate generado recientemente. y/o otro software de grabación de CD/DVD VeraCrypt - Volúmenes Favoritos del Sistema ¿Qué son los volúmenes favoritos del sistema? La partición/unidad del sistema no parece estar cifrada.\n\nLos volúmenes favoritos del sistema sólo pueden ser montados usando una contraseña de autenticación de pre-arranque. Por tanto, para habilitar el uso de los volúmenes favoritos del sistema, es necesario cifrar la partición/unidad del sistema primero. Desmonte el volumen antes de continuar. Error: No se puede establecer el temporizador. Comprobar Sistema de Archivos Reparar Sistema de Archivos Añadir a Favoritos Añadir a Favoritos del Sistema P&ropiedades Volumen Oculto Protegido N/A No Deshabilitado 1 2 o más Modo de Operación Etiqueta: Tamaño: Ruta: Letra de unidad: Error: La contraseña debe contener solamente caracteres ASCII.\n\nIntroducir otros caracteres en la contraseña puede hacer que sea imposible montar el volumen si la configuración de su sistema cambia.\n\nLos siguientes caracteres están permitidos:\n\n ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \\ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w k y z { | } ~ Aviso: La contraseña contiene caracteres ajenos a ASCII. Esto puede causar que sea imposible montar el volumen si la configuración de su sistema cambia.\n\nDebe sustituir todos los caracteres no-ASCII en la contraseña por caracteres ASCII. Haga click en 'Volúmenes' -> 'Cambiar Contraseña del Volumen'.\n\nLos siguientes caracteres son ASCII:\n\n ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \\ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w k y z { | } ~ AVISO: Recomendamos que evite extensiones de archivo que son usadas para archivos ejecutables (como .exe, .sys o .dll) y otras extensiones problemáticas similares. Usar estas extensiones hace que Windows y el software antivirus interfiera con el contenedor, lo que afecta negativamente el rendimiento del volumen y puede causar problemas serios.\n\nEs muy recomendable que elimine la extensión del archivo o la cambie (por ejemplo, a '.tc').\n\n¿Seguro que desea usar la extensión problemática? AVISO: Este contenedor tiene una extensión que es usada por archivos ejecutables (como .exe, .sys o .dll) o alguna otra extensión que es igualmente problemática. Esto probablemente hará que Windows y el software antivirus interfiera con el contenedor, lo que afectará negativamente el rendimiento del volumen y puede causar otros problemas serios.\n\nEs muy recomendable que elimine la extensión del archivo del contenedor o la cambie (por ejemplo, a '.tc' después de desmontar el volumen. Página Inicial AVISO: Parece que no ha aplicado ningún Service Pack a su instalación Windows. ¡No debería escribir en discos IDE mayores de 128 GB bajo un Windows XP sin Service Pack 1 o posterior! Si lo hace, los datos del disco (no importa si se trata de un volumen VeraCrypt o no) podrían resultar corruptos. Tenga en cuenta que esto es una limitación de Windows, no un error de VeraCrypt. AVISO: Parece que no ha aplicado Service Pack 3 o posterior a su instalación Windows. ¡No debería escribir en discos IDE mayores de 128 GB bajo un Windows 2000 sin Service Pack 3 o posterior! Si lo hace, los datos del disco (no importa si se trata de un volumen VeraCrypt o no) podrían resultar corruptos. Tenga en cuenta que esto es una limitación de Windows, no un error de VeraCrypt.\n\nNota: Podría necesitar habilitar el soporte LBA 48-bit en el registro: para más información, vea http://support.microsoft.com/kb/305098/EN-US AVISO: El soporte ATAPI LBA 48-bit está deshabilitado en su sistema. Por tanto, ¡no debería escribir en discos IDE mayores de 128 GB! Si lo hace, los datos del disco (no importa si es un volumen VeraCrypt o no) podrían resultar corruptos. Tenga en cuenta que esto es una limitación de Windows, no una limitación de VeraCrypt.\n\nPara habilitar el soporte LBA 48-bit, añada el valor de registro 'EnableBigLba' en la clave de registro HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\atapi\\Parameters y establézcala a 1.\n\nPara más información, vea http://support.microsoft.com/kb/305098 Error: No se pueden almacenar archivos de más de 4 GB en un sistema de archivos FAT32. Por tanto, los volúmenes VeraCrypt alojados en archivos (contenedores) almacenados en un sistema de archivos FAT32 no pueden ser mayores de 4 GB.\n\nSi necesita un volumen mayor, créelo en un sistema de archivos NTFS (o, si utiliza Windows Vista SP1 o posterior, en un sistema de archivos exFAT) o, en lugar de crear un volumen alojado en un archivo, cifre una partición o dispositivo completo. Aviso: Windows XP no soporta archivos mayores de 2048 GB (le informará de que "No hay suficiente espacio libre"). Por tanto, no puede crear un volumen VeraCrypt alojado en archivo (contenedor) mayor de 2048 GB bajo Windows XP.\n\nRecuerde que sí es posible cifrar la unidad entera o crear un volumen VeraCrypt alojado en una partición mayor de 2048 GB bajo Windows XP. AVISO: Si desea poder añadir más información al volumen externo en un futuro, debería considerar la elección de un tamaño menor para el volumen oculto.\n\n¿Desea continuar con el tamaño especificado? No hay ningún volumen seleccionado.\n\nPulse 'Seleccionar dispositivo' o 'Seleccionar archivo' para elegir un volumen VeraCrypt. No hay ninguna partición seleccionada.\n\nPulse 'Seleccionar Dispositivo' para seleccionar una partición desmontada que normalmente requiere autenticación de pre-arranque (por ejemplo, una partición ubicada en la unidad del sistema cifrada de otro sistema operativo, que no se esté ejecutando, o la partición del sistema cifrada de otro sistema operativo).\n\nNota: La partición seleccionada será montada como un volumen VeraCrypt normal sin autenticación de pre-arranque. Esto es útil p.e. para operaciones de reparación o copia de seguridad. AVISO: Si se activa 'Archivos-llave por defecto', los volúmenes que no usen estos archivos-llave no se podrán montar. Por tanto, tras activar los archivos-llave por defecto, recuerde desactivar la casilla 'Usar archivos-llave' (bajo el cuadro de texto de la contraseña) al montar dichos volúmenes.\n\n¿Seguro que desea guardar los archivos-llave y ubicaciones seleccionados como predeterminados? Montar dispositivos autom. Desmontar Todo Borrar Caché Desmontar Todo & Borrar Caché Desmontar Todo & Borrar Caché (forzar) Desmontar Todo, Borrar Caché & Salir (forzar) Montar Volúmenes Favoritos Mostrar/Ocultar ventana principal de VeraCrypt (Haga click aquí y pulse una tecla) Acción Atajo Error: Este atajo de teclado está reservado. Elija uno diferente. Error: Atajo de teclado ya asignado. AVISO: uno o más atajos de teclado VeraCrypt del sistema no funcionarán. Asegúrese de que el sistema operativo u otras aplicaciones no utilicen el mismo atajo que VeraCrypt. Se ha evitado la creación del archivo de paginación.\n\nTenga en cuenta que, debido a un problema de Windows, los archivos de paginación no pueden ubicarse en volúmenes VeraCrypt secundarios (incluyendo los volúmenes favoritos del sistema). VeraCrypt sólo soporta la creación de archivos de paginación en una unidad/partición cifrada del sistema. Un error o incompatibilidad impide que VeraCrypt cifre el archivo de hibernación. Por tanto, la hibernación ha sido evitada.\n\nNota: Cuando un ordenador hiberna (o entra en modo de ahorro de energía), el contenido de su memoria se escribe en un archivo de almacenamiento de hibernación que reside en la unidad del sistema. Puede que VeraCrypt no sea capaz de evitar que las claves de cifrado y los contenidos de archivos sensibles abiertos en la RAM sean guardados sin cifrar en el archivo de hibernación. Se ha impedido la hibernación.\n\nVeraCrypt no soporta la hibernación en sistemas operativos ocultos que usan una partición de arranque adicional. Recuerde que la partición de arranque es compartida por el sistema operativo señuelo y por el oculto. Por tanto, para evitar filtraciones de datos y problemas al reanudar tras la hibernación, VeraCrypt debe impedir que el sistema operativo oculto hiberne o escriba en la partición de arranque compartida. El volumen VeraCrypt montado como %c: ha sido desmontado. Los volúmenes VeraCrypt han sido desmontados. Los volúmenes VeraCrypt han sido desmontados y la caché de contraseñas ha sido borrada. Desmontado con éxito AVISO: Si VeraCrypt en Segundo Plano no está habilitado, tampoco lo estarán las siguientes funciones:\n\n1) Atajos de teclado\n2) Desmontaje automático (p.e. al cerrar sesión, retirar involuntariamente el dispositivo, etc.)\n3) Montaje automático de volúmenes favoritos\n4) Notificaciones (p.e., cuando se evita el daño a un volumen oculto)\n5) Icono en área de notificación.\n\nNota: Puede cerrar el Segundo Plano haciendo click derecho en el icono del área de notificación y seleccionando 'Salir'.\n\n¿Seguro que desea deshabilitar permanentemente VeraCrypt en Segundo Plano? AVISO: Si esta opción es deshabilitada, no se podrán desmontar automáticamente volúmenes que contengan archivos/directorios abiertos. ¿Seguro que desea deshabilitar esta opción? AVISO: los volúmenes que contengan archivos/directorios abiertos no se desmontarán autom.\n\n Para evitarlo, habilite la siguiente opción en esta misma ventana: 'Forzar desmontaje automático aunque el volumen tenga archivos abiertos' AVISO: Cuando la batería esté baja, Windows puede no enviar los mensajes apropiados a las aplicaciones en ejecución cuando el ordenador esté entrando en modo de ahorro de energía. Por tanto, VeraCrypt podría no desmontar autom. los volúmenes correctamente. Ha programado el proceso de cifrado de una partición/volumen. El proceso aún no ha sido completado.\n\n¿Desea continuar el proceso ahora? Ha programado el proceso de cifrado o descifrado de la partición/unidad del sistema. El proceso aún no ha sido completado.\n\n¿Desea iniciar (continuar) el proceso ahora? ¿Desea que se le pregunte si quiere o no continuar los procesos actualmente programados de cifrado de particiones/volúmenes secundarios? Sí, continuar preguntándome No, no preguntarme IMPORTANTE: Tenga en cuenta que puede continuar el proceso de cifrado de cualquier partición/volumen secundario seleccionando 'Volúmenes' > 'Continuar Proceso Interrumpido' en el menú de la ventana principal de VeraCrypt. Ha programado el proceso de cifrado o descifrado de la partición/unidad del sistema. Sin embargo, falló la autenticación de pre-arranque (o fue cancelada).\n\nRecuerde: Si descifró la partición/unidad del sistema en el entorno de pre-arranque, puede ser necesario finalizar el proceso seleccionando 'Sistema' > 'Descifrar Permanentemente la Partición/Unidad del Sistema' desde el menú de la ventana principal de VeraCrypt. AVISO: Si VeraCrypt sale ahora, las siguientes funciones serán deshabilitadas:\n\n1) Atajos de teclado\n2) Desmontaje automático (p.e. al cerrar sesión, retirar involuntariamente el dispositivo, etc.)\n3) Montaje automático de volúmenes favoritos\n4) Notificaciones (p.e., cuando se evita el daño a un volumen oculto)\n\nNota: Si no desea que VeraCrypt se ejecute en segundo plano, deshabilite VeraCrypt en Segundo Plano desde Preferencias (y si es necesario deshabilite también el inicio automático de VeraCrypt).\n\n¿Seguro que desea cerrar VeraCrypt? ¿Salir? VeraCrypt no tiene suficiente información para determinar si cifrar o descifrar. VeraCrypt no tiene suficiente información para determinar si cifrar o descifrar.\n\nNota: Si descifró la partición/unidad del sistema en el entorno de pre-arranque, puede ser necesario finalizar el proceso pulsando 'Descifrar'. ¿Desea interrumpir y posponer el proceso de cifrado de la partición/volumen?\n\nNota: tenga en cuenta que el volumen no puede ser montado hasta que haya sido cifrado por completo. Podrá continuar el proceso de cifrado desde el punto en que éste se detuvo. Puede hacerlo, por ejemplo, seleccionando 'Volúmenes' > 'Continuar Proceso Interrumpido' desde el menú de la ventana principal de VeraCrypt. ¿Desea interrumpir y posponer el proceso de cifrado de la partición/unidad del sistema?\n\nNota: podrá continuar el proceso desde el punto en que éste se detuvo. Puede hacerlo, por ejemplo, seleccionando 'Sistema' > 'Continuar Proceso Interrumpido' desde el menú de la ventana principal de VeraCrypt. Si desea revertir o terminar permanentemente el proceso de cifrado, seleccione 'Sistema' > 'Descifrar Permanentemente Partición/Unidad del Sistema'. ¿Desea interrumpir y posponer el proceso de descifrado de la partición/unidad del sistema?\n\nNota: podrá continuar el proceso desde el punto en que éste se detuvo. Puede hacerlo, por ejemplo, seleccionando 'Sistema' > 'Continuar Proceso Interrumpido' desde el menú de la ventana principal de VeraCrypt. Si desea revertir el proceso de descifrado (y empezar a cifrar) seleccione 'Sistema' > 'Cifrar Partición/Unidad del Sistema'. Error: Ha fallado la interrupción del proceso de cifrado/descifrado de la partición/unidad del sistema. Error: Ha fallado la interrupción del proceso de borrado. Error: Ha fallado la continuación del proceso de cifrado/descifrado de la partición/unidad del sistema. Error: Ha fallado el inicio del proceso de borrado. Inconsistencia resuelta.\n\n\n(Si reporta un error relacionado con esto, incluya en el reporte la siguiente información técnica:\n%hs) Error: Estado inesperado.\n\n\n(Si reporta un error relacionado con esto, incluya en el reporte la siguiente información técnica:\n%hs) No hay ningún proceso/tarea por retomar. AVISO: VeraCrypt en Segundo Plano está deshabilitado. Tras cerrar VeraCrypt, no será notificado si se impiden daños en el volumen oculto.\n\nNota: Puede cerrar el Segundo Plano en cualquier momento haciendo click derecho en el icono de VeraCrypt en el área de notificación y seleccionando 'Salir'.\n\n¿Habilitar VeraCrypt en Segundo Plano? Versión del paquete: %s Comprobando el sistema de archivos del volumen VeraCrypt montado como %hs... Intentando reparar el sistema de archivos del volumen VeraCrypt montado como %hs... PRECAUCIÓN: Este volumen está cifrado en modo CBC. Por cuestiones de seguridad, el modo CBC se considera obsoleto desde VeraCrypt 4.1.\n\nRecomendamos que mueva sus datos desde este volumen VeraCrypt a un nuevo volumem creado con esta versión de VeraCrypt. Después de hacerlo, debería borrar de forma segura o destruir el volumen antiguo. Para más información, vea el Historial de Versiones en la documentación, o las noticias de publicación de VeraCrypt 4.1 o superior. Aviso: Este volumen está cifrado con un algoritmo de cifrado tradicional (legacy).\n\nTodos los algoritmos de cifrado con bloque de 64 bit (como Blowfish, CAST-128 o Triple DES) están obsoletos. Se podrá montar este volumen usando versiones futuras de VeraCrypt. Sin embargo, no habrá más mejoras en las implementaciones de estos algoritmos de cifrado tradicional. Recomendamos que cree un nuevo volumen VeraCrypt cifrado con un algoritmo con bloque de 128 bit (como AES, Serpent, Twofish, etc.) y que mueva todos los archivos de este volumen al volumen nuevo. Su sistema no está configurado para montar automáticamente nuevos volúmenes. Puede ser imposible montar volúmenes VeraCrypt alojados en dispositivos. Se puede habilitar el montaje automático ejecutando el siguiente comando y reiniciando el sistema.\n\nmountvol.exe /E Asigne una letra de unidad a la partición/dispositivo antes de proceder ('Panel de Control' > 'Sistema y mantenimiento' > 'Herramientas Administrativas' - 'Crear y formatear particiones de disco duro').\n\nTenga en cuenta que este es un requisito del sistema operativo. Montar volumen VeraCrypt Desmontar todos los volúmenes VeraCrypt VeraCrypt no ha podido obtener privilegios de Administrador. Acceso denegado por el sistema operativo.\n\nCausa posible: el sistema operativo requiere que tenga permisos de lectura/escritura (o privilegios de administrador) sobre ciertas carpetas, archivos y dispositivos, para permitirle leer/escribir información de/en ellos. Normalmente, un usuario sin privilegios de administrador tiene permitido crear, leer y modificar archivos en su carpeta 'Mis documentos'. Error: La unidad usa un tamaño de sector no soportado.\n\nActualmente no es posible crear volúmenes alojados en dispositivos o particiones que usen sectores mayores de 4096 bytes. Sin embargo, recuerde que puede crear volúmenes alojados en archivo (contenedores) en estas unidades. Actualmente no es posible cifrar un sistema instalado en un disco con un tamaño de sector diferente a 512 bytes. El Cargador de Arranque de VeraCrypt requiere al menos 32 KB de espacio libre al principio de la unidad del sistema (el Cargador debe almacenarse en ese área). Por desgracia, su unidad no reúne esta condición.\n\nPor favor, NO reporte esto como un error/problema de VeraCrypt. Para solucionar este problema, necesitará reparticionar su disco y dejar libres los primeros 32 KB del disco (en la mayoría de los casos tendrá que borrar y crear la primera partición). Recomendamos que use el administrador de particiones de Microsoft que está disponible p.e. cuando está instalando Windows. Esta función no está soportada en la versión del sistema operativo que está utilizando. VeraCrypt no soporta el cifrado de la partición/unidad del sistema en la versión del sistema operativo que está utilizando. Antes de que pueda cifrar la partición/unidad del sistema en Windows Vista, necesita instalar Service Pack 1 o posterior para Vista (todavía no hay ningún Service Pack instalado en este sistema).\n\nNota: El Service Pack 1 para Windows Vista resuelve un problema que causaba una reducción de la memoria convencional libre durante el arranque del sistema. VeraCrypt ya no soporta el cifrado de la partición/unidad del sistema en Windows Vista sin ningún Service Pack. Antes de actualizar VeraCrypt, instale Service Pack 1 o posterior para Windows Vista. Error: Esta característica requiere que se instale VeraCrypt en este sistema (actualmente está ejecutando VeraCrypt en modo portable).\n\nInstale VeraCrypt y reinténtelo. AVISO: Windows no parece estar instalado en la unidad desde la que él mismo arranca. Esto no está soportado.\n\nDebería continuar sólo si está seguro de que Windows está instalado en la unidad desde la que arranca.\n\n¿Desea continuar? Su unidad del sistema tiene una Tabla de Particiones GUID (GPT). Actualmente, sólo se soportan unidades con Tabla de Particiones MBR. PRECAUCIÓN: ¡El Cargador de Arranque VeraCrypt ya está instalado en su unidad del sistema!\n\nEs posible que otro sistema en su ordenador esté ya cifrado.\n\nAVISO: CONTINUAR CON EL CIFRADO DEL SISTEMA ACTUAL PUEDE HACE QUE OTROS SISTEMAS NO PUEDAN INICIARSE Y SUS DATOS SEAN INACCESIBLES.\n\n¿Seguro que desea continuar? Fallo al restaurar el cargador original del sistema.\n\nUse su Disco de Rescate VeraCrypt ('Opciones de Reparación' > 'Restaurar cargador original del sistema') o un medio de instalación de Windows para reemplazar el Cargador de Arranque de VeraCrypt con el cargador del sistema de Windows. El cargador original del sistema no será guardado en el Disco de Rescate (causa probable: archivo de copia de seguridad perdido). Fallo al escribir el sector MBR.\n\nSu BIOS puede estar configurada para proteger el sector MBR. Revise la configuración de su BIOS (pulsando F2, Delete, o Esc, despues de encender su ordenador) buscando la protección MBR/Antivirus. La versión requerida del Cargador de Arranque VeraCrypt no está instalada actualmente. Esto puede impedir que algunos ajustes se guarden. Nota: En algunas situaciones, quizá le interese evitar que alguien (un adversario) que esté viéndole iniciar el ordenador pueda saber que usa VeraCrypt. Las siguientes opciones lo permiten pesonalizando la pantalla del cargador de arranque de VeraCrypt. Si activa la primera opción, no se mostrará ningún texto al arrancar (ni siquiera al introducir una contraseña errónea). El ordenador parecerá estar "congelado" mientras puede escribir su contraseña. Además, puede mostrarse un mensaje personalizado para confundir al adversario. Por ejemplo, falsos mensajes de error como "No se ha encontrado sistema operativo" (mensaje que muestra el cargador de arranque de Windows si no encuentra partición de arranque de Windows). No obstante, recuerde que si el adversario puede analizar el contenido del disco duro, puede darse cuenta de que contiene el cargador de arranque de VeraCrypt. AVISO: Tenga en cuenta que si activa esta opción, el cargador de arranque de VeraCrypt no mostrará ningún texto (ni siquiera si introduce una contraseña errónea). El ordenador parecerá "congelado" (sin responder) mientras ud. escribe su contraseña (el cursor NO se moverá ni aparecerá ningún asterisco al pulsar alguna tecla).\n\n¿Seguro que desea activar esta opción? Su partición/unidad del sistema parece estar completamente cifrada. VeraCrypt no soporta cifrar una unidad del sistema que ha sido convertida en un disco dinámico. La unidad del sistema contiene particiones extendidas (lógicas).\n\nPuede cifrar una unidad del sistema entera que contenga particiones extendidas sólo en Windows Vista y versiones posteriores de Windows. En Windows XP, puede cifrar la unidad del sistema entera si contiene únicamente particiones primarias.\n\nNota: se puede cifrar la partición del sistema en lugar de la unidad del sistema entera (y, además, puede crear volúmenes VeraCrypt alojados en cualquier partición secundaria en la unidad). AVISO: Como está utilizando Windows XP/2003, tras comenzar a cifrar la unidad, NO debe crear ninguna partición extendida (lógica) en ella (sólo puede crear particiones primarias). Cualquier partición extendida en la unidad podría ser inaccesible tras comenzar el cifrado (la unidad actualmente no contiene particiones de este tipo).\n\nNota: Si esta limitación no es aceptable, puede volver atrás y cifrar sólo la partición del sistema en lugar de la unidad entera (y, además, puede crear volúmenes VeraCrypt alojados en cualquier partición secundaria de la unidad).\n\nAlternativamente, si esta limitación no es aceptable, puede considerar actualizar a Windows Vista o alguna versión posterior de Windows (puede cifrar la unidad del sistema entera conteniendo particiones extendidas/lógicas sólo en Windows Vista o posterior). Su unidad del sistema contiene una partición no estándar.\n\nSi está usando un portátil, probablemente su unidad del sistema contenga una partición especial de recuperación. Tras cifrar la unidad del sistema entera (incluyendo dichas particiones), su sistema podría no arrancar si su ordenador está usando una BIOS diseñada inapropiadamente. También podría ser imposible usar cualquier partición de recuperación hasta que se descifre la unidad del sistema. Por tanto, recomendamos cifrar sólo la partición del sistema. ¿Desea cifrar la partición del sistema en lugar de toda la unidad?\n\nRecuerde que puede crear volúmenes VeraCrypt alojados en cualquier partición secundaria de la unidad (además de cifrar la partición del sistema). Como su unidad del sistema sólo contiene una única partición que ocupa la unidad entera, es preferible (más seguro) cifrar la unidad entera incluyendo el espacio libre "slack" que normalmente rodea estas particiones.\n\n¿Desea cifrar la unidad del sistema entera? Su sistema está configurado para almacenar archivos temporales en una partición secundaria.\n\nLos archivos temporales sólo deben guardarse en la partición del sistema. Los archivos de su cuenta de usuario no están almacenados en la partición del sistema.\n\nDichos archivos sólo deben guardarse en la partición del sistema. Hay archivos de paginación en particiones secundarias.\n\nLos archivos de paginación sólo deben ubicarse en la partición del sistema. ¿Desea configurar Windows para crear archivos de paginación sólo en la partición de Windows?\n\nTenga en cuenta que si selecciona 'Sí', el ordenador se reiniciará. Cuando lo haga, inicie VeraCrypt y trate de crear el SO oculto de nuevo. De otro modo, la negación plausible del sistema operativo oculto podría verse afectada negativamente.\n\nNota: Si un adversario analiza el contenido de estos archivos (que residen en una partición secundaria), podría averiguar que ud. usó este asistente en el modo de creación de sistemas ocultos (lo cual podría indicar la existencia de un sistema operativo oculto en su ordenador). Tenga en cuenta también que cualquiera de estos archivos almacenados en la partición del sistema serán borrados por VeraCrypt durante el proceso de creación del sistema operativo oculto. AVISO: Durante el proceso de creación del sistema operativo oculto, se requerirá reinstalar por completo el sistema actualmente en ejecución (para crear un sistema señuelo con seguridad).\n\nNota: El sistema operativo actualmente en ejecución y el contenido entero de la partición del sistema será copiado al volumen oculto (para crear el sistema oculto).\n\n\n¿Seguro que podrá instalar Windows usando un medio de Instalación de Windows (o una partición de servicio)? Por razones de seguridad, si el sistema operativo actual requiere activación debe ser activado antes de continuar. Recuerde que el sistema operativo oculto será creado copiando el contenido de la partición del sistema a un volumen oculto (así que si este sistema operativo no está activado, el sistema operativo oculto tampoco lo estará). Para más información, vea la sección "Precauciones y Requisitos de Seguridad Concernientes a los Volúmenes Ocultos" en la Guía del Usuario de VeraCrypt.\n\nImportante: antes de continuar, asegúrese de haber leído dicha sección.\n\n\n¿Cumple el sistema operativo en ejecución con esta condición? Su sistema usa una partición de arranque adicional. VeraCrypt no soporta la hibernación en sistemas operativos ocultos que usen una partición de arranque adicional (los sistemas señuelo se pueden hibernar sin problemas).\n\nTenga en cuenta que la partición de arranque podría estar compartida por ambos sistemas, el señuelo y el oculto. Por tanto, para evitar filtraciones de datos y problemas al reanudar tras la hibernación, VeraCrypt debe impedir que el sistema operativo oculto escriba en la partición de arranque compartida y que hiberne.\n\n\n¿Desea continuar? Si selecciona 'No', se mostrarán instrucciones para eliminar la partición de arranque adicional. \nLa partición de arranque adicional puede ser eliminada antes de instalar Windows. Para hacerlo, siga estos pasos:\n\n1) Arranque su disco de instalación de Windows.\n\n2) En la pantalla del instalador de Windows, haga click en 'Instalar ahora' > 'Personalizar (avanzada)'.\n\n3) Click en 'Opciones de Dispositivo'.\n\n4) Seleccione la partición del sistema principal y bórrela pulsando 'Eliminar' y 'Aceptar'.\n\n5) Seleccione la partición 'Reservada del Sistema', pulse 'Extender' y aumente su tamaño hasta que se pueda instalar en ella el sistema operativo.\n\n6) Click en 'Aplicar' y 'Aceptar'.\n\n7) Instale Windows en la partición 'Reservada del Sistema'.\n\n\nUn atacante podría preguntarle por qué eliminó la partición de arranque adicional, ud. puede responder que quería evitar cualquier posible filtración de datos en la partición de arranque no cifrada.\n\nNota: puede imprimir este texto pulsando el botón 'Imprimir'. Si guarda una copia de este texto o lo imprime (muy recomendable, salvo que su impresora almacene en su controlador interno copias de los documentos que imprime), debería destruir cualquier copia de este texto tras eliminar la partición de arranque adicional (de lo contrario, si una de estas copias fuera encontrada, indicaría que existe un sistema operativo oculto en este ordenador). Aviso: Hay espacio no asignado entre la partición del sistema y la primera partición tras ella. Después de crear el sistema operativo oculto, no debe crear ninguna partición nueva en ese espacio sin asignar. De lo contrario, podría ser iposible arrancar el sistema operativo oculto (hasta que elimine esas particiones nuevas). Este algoritmo no está soportado actualmente para el cifrado del sistema. Los archivos-llave no están soportados actualmente para el cifrado del sistema. Aviso: VeraCrypt no pudo restaurar la disposición de teclado original. Esto puede hacer que ud. introduzca incorrectamente la contraseña. Error: No se puede establecer la disposición del teclado para VeraCrypt al estándar de EEUU.\n\nRecuerde que la contraseña necesita ser escrita en el entorno de pre-arranque (antes de que Windows se inicie) donde no están disponibles disposiciones de teclado distintas a la de EEUU. Por tanto, la contraseña debe ser escrita siempre usando la disposición de teclado EEUU estándar. Como VeraCrypt cabió temporalmente la disposición de teclado al estándar de EEUU, no es posible escribir caracteres pulsando teclas mientras Alt derecho está pulsado. Sin embargo, puede escribir la mayoría de esos caracteres pulsando las teclas apropiadas mientras Mayúsculas está pulsada. VeraCrypt impidió que se cambiara la disposición de teclado. Nota: La contraseña tendrá que escribirse en el entorno de pre-arranque (antes de que Windows se inicie) donde no están disponibles disposiciones de teclado distintas a la de EEUU. Por tanto, la contraseña debe ser escrita siempre usando la disposición de teclado EEUU estándar. Sin embargo, es importante recordar que NO es necesario un teclado de EEUU real. VeraCrypt automáticamente se asegura de que ud. pueda escribir la contraseña con seguridad (ahora y en el entorno de pre-arranque) incluso si NO tiene un teclado de EEUU. Antes de cifrar la partición/unidad, debe crear un Disco de Rescate VeraCrypt (DRT) que sirve para los siguientes propósitos:\n\n- Restaurar el Cargador de Arranque VeraCrypt, clave maestra u otros datos críticos si resultan dañados (pero tenga en cuenta que tendrá que seguir introduciendo la contraseña correcta).\n\n- Si Windows resulta dañado y no arranca, el DRT permite descifrar permanentemente la partición/unidad antes de que Windows inicie.\n\n- El DRT contendrá una copia de seguridad del contenido actual de la primera pista de la unidad (normalmente, un cargador del sistema o un administrador de arranque) y le permitirá restaurarlo si es necesario.\n\nLa imagen ISO del DRT será creada en esta ubicación: Tras pulsar Aceptar, se lanzará el Grabador de Imágenes de Disco de Windows. Úselo para grabar la imagen ISO del Disco de Rescate VeraCrypt en un CD o DVD.\n\nDespués de hacerlo, vuelva al Asistente de Creación de Volumen VeraCrypt y siga sus instrucciones. La imagen del Disco de Rescate ha sido creada y almacenada en este archivo:\n%hs\n\nAhora debe grabarla en un CD o DVD.\n\n%lsDespués de grabar el Disco de Rescate, pulse Siguiente para verificar que ha sido grabado correctamente. La imagen del Disco de Rescate ha sigo creada y almacenada en este archivo:\n%hs\n\nAhora debería grabar la imagen a un CD/DVD o moverla a una ubicación segura para un uso posterior.\n\n%lsPulse Siguiente para continuar. IMPORTANTE: Recuerde que el archivo debe ser escrito en el CD/DVD como una imagen de disco ISO (no como un archivo individual). Para obtener información sobre cómo hacerlo, vaya a la documentación de su software de grabación de CD/DVD. Si no tiene ningún software de ese tipo que pueda grabar la imagen ISO a un CD/DVD, haga click en el enlace siguiente para descargar software gratuito de este tipo.\n\n Lanzar el Grabador de Imágenes de Disco de Windows AVISO: ¡Si ya ha creado un Disco de Rescate VeraCrypt en el pasado, no debe ser reutilizado para esta partición/unidad del sistema porque fue creado para una clave maestra diferente! Cada vez que cifre una partición/unidad del sistema, debe crear un nuevo Disco de Rescate VeraCrypt incluso si ha usado la misma contraseña. Error: No se puede guardar la configuración del cifrado del sistema. No se puede iniciar la prueba del cifrado del sistema. No se puede iniciar el proceso de creación del sistema operativo oculto. Modo de borrado En algunos medios de almacenamiento, cuando los datos son sobreescritos por otros datos, es posible recuperar la información sobreescrita con técnicas como el microscopio de fuerza magnética. Esto también se aplica a datos sobreescritos por su versión cifrada (lo que ocurre cuando VeraCrypt inicialmente cifra una partición o unidad no cifrada). Según estudios y publicaciones gubernamentales, se puede evitar (o dificultar) la recuperación de esos datos sobreescribiéndolos con datos no aleatorios y pseudoaleatorios un número suficiente de veces. Por tanto, si cree que un adversario podría usar estas técnicas para recuperar los datos que pretende cifrar, puede seleccionar uno de los modos de borrado (los datos existentes NO se perderán). Tenga en cuenta que el borrado NO se hará después de que la partición/unidad esté cifrada. Cuando lo esté, no se escribirá en ella ningún dato sin cifrar. Cualquier dato que se vaya a escribir se cifra al vuelo en memoria primero, y sólo entonces (ya cifrado) es escrito al disco. En algunos tipos de medios de almacenamiento, cuando los datos son sobreescritos por otros datos (p.e. cuando los datos son eliminados), es posible recuperar la información sobreescrita usando técnicas como el microscopio de fuerza magnética. Según algunos estudios y publicaciones gubernamentales, se puede evitar (o dificultar) la recuperación de datos sobreescritos sobreescribiendo los datos con datos no aleatorios seguros y pseudoaleatorios un número suficiente de veces. Por tanto, si cree que un adversario podría usar estas técnicas para recuperar los datos que van a ser borrados, puede seleccionar uno de los modos de borrado multi-pasada.\n\nNota: Cuantas más pasadas de borrado utilize, más se alargará el borrado de datos. Borrando \nNota: Puede interruptir el proceso de borrado, apagar su ordenador, iniciar el sistema operativo oculto de nuevo y reanudar el proceso (este asistente se lanzará automáticamente). Sin embargo, si lo interrumpe, el proceso de borrado tendrá que comenzar desde el principio. \n\nNota: Si interrumpe el proceso de borrado y luego intenta reanudarlo, el proceso entero tendrá que comenzar desde el principio. ¿Desea abortar el proceso de borrado? Aviso: El contenido entero de la partición/dispositivo seleccionado será borrado y se perderá. El contenido entero de la partición donde reside el sistema original será borrado.\n\nNota: El contenido entero de la partición que va a ser borrada ha sido copiado a la partición de este sistema oculto. AVISO: Tenga en cuenta que cuando elige p.e. el modo de borrado de 3 pasadas, el tiempo necesario para cifrar la partición/unidad será unas 4 veces mayor. Asimismo, si elige el modo de 35 pasadas, tardará unas 36 veces más (podría incluso tardar varias semanas).\n\nSin embargo, recuerde que el borrado NO se realizará después de que la partición/unidad esté cifrada por completo. Cuando la partición/unidad esté cifrada por completo, no se escribirá en ella ningún dato. Cualquier dato que se escriba será cifrado al vuelo en memoria primero, y sólo entonces el dato (cifrado) será escrito en el disco (por lo tanto el rendimiento NO será afectado).\n\n¿Seguro que desea usar el modo de borrado? Ninguno (El más rápido) 1 pasada (datos aleatorios) 3 pasadas (US DoD 5220.22-M) 7 pasadas (US DoD 5220.22-M) 35 pasadas ("Gutmann") Número de Sistemas Operativos AVISO: Los usuarios sin experiencia nunca deberían intentar cifrar Windows en configuraciones multi-arranque.\n\n¿Continuar? Al crear/usar un sistema operativo oculto, VeraCrypt soporta configuraciones multi-arranque sólo cuando se cumplen las siguientes condiciones:\n\n- El sistema operativo en ejecución debe estar instalado en la unidad de arranque, la cual no debe contener ningún otro sistema operativo.\n\n- Los sistemas operativos instalados en otras unidades no deben usar ningún cargador de arranque residente en la unidad en la que está instalado el sistema operativo en ejecución.\n\n¿Se cumplen las condiciones mencionadas? VeraCrypt no soporta esta configuración multi-arranque al crear/usar un sistema operativo oculto. Unidad de Arranque ¿El sistema operativo en ejecución está instalado en la unidad de arranque?\n\nNota: A veces, Windows no está instalado en la misma unidad que el cargador de arranque de Windows (partición de arranque). Si ese es el caso, seleccione 'No'. VeraCrypt actualmente no soporta cifrar un sistema operativo que no arranque desde la unidad donde está instalado. Número de Unidades de Sistema ¿Cuántas unidades contienen un sistema operativo?\n\nNota: Por ejemplo, si tiene cualquier sistema operativo (Windows, Mac OS X, Linux, etc.) instalado en su unidad primaria y cualquier sistema operativo adicional instalado en su unidad secundaria, seleccione '2 o más'. VeraCrypt actualmente no soporta cifrar una unidad entera que contiene varios sistemas operativos.\n\nPosibles soluciones:\n\n- Puede cifrar uno de los sistemas si vuelve atrás y elige cifrar sólo una partición de sistema (en lugar de elegir el cifrado de la unidad del sistema entera).\n\n- Alternativamente, puede cifrar la unidad entera si mueve algunos de los sistemas a otras unidades dejando sólo un sistema en la unidad que quiere cifrar. Varios sistemas en una única unidad ¿Hay algún otro sistema operativo instalado en la unidad en la que el sistema operativo en ejecución está instalado?\n\nNota: Por ejemplo, si el sistema operativo en ejecución está instalado en la unidad #0, que contiene varias particiones, y si una de las particiones contiene Windows y otra contiene cualquier sistema operativo adicional (Windows, Mac OS X, Linux, etc.), seleccione 'Sí'. Cargador de Arranque No-Windows ¿Hay un cargador de arranque no-Windows (o administrador de arranque Windows) instalado en el Master Boot Record (MBR)?\n\nNota: Por ejemplo, si la primera pista de la unidad de arranque contiene GRUB, LILO, XOSL, o algún otro administrador de arranque (o cargador de arranque) no-Windows, seleccione 'Sí'. Multi-Arranque VeraCrypt actualmente no soporta configuraciones multi-arranque cuando un cargador de arranque no-Windows está instalado en el MBR.\n\nSoluciones posibles:\n\n- Si usa un administrador de arranque para arrancar Windows y Linux, mueva el administrador (normalmente GRUB) desde el MBR a una partición. Luego inicie este asistente otra vez y cifre la partición/unidad del sistema. Recuerde que el Cargador de Arranque VeraCrypt se convertirá en su administrador de arranque primario y le permitirá lanzar el administrador original (p.e. GRUB) como su administrador de arranque secundario (pulsando Esc en la pantalla del Cargador de Arranque VeraCrypt) y así podrá arrancar Linux. Si el sistema operativo en ejecución está instalado en la partición de arranque, después de cifrarlo necesitará introducir la contraseña correcta incluso para iniciar cualquier otro sistema Windows no cifrado (ya que ambos compartirán un único cargador/administrador de arranque cifrado).\n\nPor el contrario, si el sistema operativo en ejecución no está instalado en la partición de arranque (o si el cargador/administrador de arranque de Windows no es usado por ningún otro sistema), después de cifrarlo no necesitará introducir la contraseña correcta para arrancar otros sistemas no cifrados -- sólo tendrá que pulsar Esc para iniciar el sistema no cifrado (si hay más de uno, tendrá que elegir cuál desea iniciar desde el menú del Administrador de Arranque VeraCrypt).\n\nNota: Normalmente, el primer sistema Windows instalado es el que está instalado en la partición de arranque. Cifrado del Área Protegida del Anfitrión Al final de muchos dispositivos existe un área que normalmente está oculta al sistema operativo (estas áreas son llamadas Áreas Protegidas del Anfitrión, o Host Protected Areas). Sin embargo, algunos programas pueden leer y escribir datos de/a estas áreas.\n\nAVISO: Algunos fabricantes de ordenadores pueden usar estas áreas para almacenar herramientas y datos para RAID, recuperación del sistema, instalación del sistema, diagnóstico u otros propósitos. Si estas herramientas o datos deben ser accesibles antes de arrancar, el área oculta NO debería ser cifrada (elija 'No' a continuación).\n\n¿Desea que VeraCrypt detecte y cifre ese área oculta (si existe) al final de la unidad del sistema? Tipo de Cifrado del Sistema Seleccione esta opción si solamente quiere cifrar la partición del sistema o la unidad del sistema entera. Puede ocurrir que sea ud. obligado por alguien a descifrar el sistema operativo. Hay situaciones en las que no podría negarse a hacerlo (por ejemplo, debido a la extorsión). Si selecciona esta opción, creará un sistema operativo oculto cuya existencia debería ser imposible de demostrar (siempre que se sigan ciertas directrices). De este modo, no tendrá que descifrar o revelar la contraseña del sistema operativo oculto. Haga click en el siguiente enlace para una explicación más detallada. Puede ocurrir que sea ud. obligado por alguien a descifrar el sistema operativo. Hay situaciones en las que no podría negarse a hacerlo (por ejemplo, debido a la extorsión).\n\nUsando este asistente, puede crear un sistema operativo oculto cuya existencia debería ser imposible de demostrar (siempre que se sigan ciertas directrices). De este modo, no tendrá que descifrar o revelar la contraseña para el sistema operativo oculto. Sistema Operativo Oculto En los siguientes pasos, creará dos volúmenes VeraCrypt (externo y oculto) en la primera partición tras la partición del sistema. El oculto contendrá el sistema operativo (SO) oculto. VeraCrypt creará el SO oculto copiando el contenido de la partición del sistema (donde el SO en ejecución está instalado) al volumen oculto. Al volumen externo, ud. copiará algunos archivos sensibles pero que NO sean los que quiere ocultar. Estarán ahí por si alguien le obliga a revelar la contraseña para la partición del SO oculto. Puede revelar la contraseña para el volumen externo que la contiene (la existencia del SO oculto permanecerá en secreto).\n\nFinalmente, en la partición del SO en ejecución instalará un nuevo SO, llamado SO señuelo, y lo cifrará. No debe contener datos sensibles y estará ahí por si alguien le obliga a revelar su contraseña de autenticación de pre-arranque. En total habrá tres contraseñas. Dos de ellas pueden ser reveladas (para el SO señuelo y para el volumen externo). Si usa la tercera, se iniciará el SO oculto. Detectando Sectores Ocultos Espere mientras VeraCrypt está detectando posibles sectores ocultos al final de la unidad del sistema. Esto puede durar bastante tiempo.\n\nNota: En casos muy raros, en algunos ordenadores, el sistema puede dejar de responder durante este proceso de detección. Si esto ocurre, reinicie el ordenador, inicie VeraCrypt, repita los pasos anteriores pero sáltese el proceso de detección. Recuerde que este problema no está causado por un error en VeraCrypt. Área a Cifrar Seleccione esta opción si desea cifrar la unidad en la que el sistema Windows en ejecución está instalado. La unidad entera, con todas sus particiones, será cifrada excepto la primera pista en la que residirá el Cargador de Arranque VeraCrypt. Cualquiera que desee acceder a un sistema o archivo almacenado en la unidad, deberá introducir la contraseña correcta cada vez que se inice el sistema. Esta opción no puede ser usada para cifrar una unidad secundaria o externa si Windows no está instalado ni se arranca desde ella. Recopilando Datos Aleatorios Claves Generadas VeraCrypt no ha encontrado ningún grabador CD/DVD conectado a su ordenador. VeraCrypt lo necesita para grabar un Disco de Rescate VeraCrypt arrancable que contenga una copia de seguridad de las claves de cifrado, cargador de arranque de VeraCrypt, cargador original del sistema, etc.\n\nEs muy recomendable grabar el Disco de Rescate VeraCrypt. No tengo grabador de CD/DVD pero guardaré la imagen ISO del Disco de Rescate en una unidad extraíble (como una unidad flash). Conectaré un grabador de CD/DVD a mi ordenador más tarde. Terminar el proceso ahora. Un grabador de CD/DVD está conectado a mi ordenador ahora. Continuar y grabar el Disco de Rescate. Siga estos pasos:\n\n1) Conecte un medio extraíble, como una unidad flash USB, a su ordenador.\n\n2) Copie el archivo de imagen del Disco de Rescate VeraCrypt (%s) al medio extraíble.\n\nSi necesita usar el Disco de Rescate VeraCrypt en el futuro, podrá conectar su unidad extraíble (conteniendo la imagen) a un ordenador con grabador de CD/DVD y crear un Disco de Rescate VeraCrypt arrancable grabando la imagen a un CD o DVD. IMPORTANTE: Recuerde que el archivo de imagen del Disco de Rescate VeraCrypt debe ser escrito en el CD/DVD como una imagen de disco ISO (no como archivo individual). Grabando Disco de Rescate Disco de Rescate Creado Prueba del Cifrado del Sistema Disco de Rescate Verificado \nEl Disco de Rescate ha sido verificado con éxito. Extráigalo de la unidad y guárdelo en un lugar seguro.\n\nPulse Siguiente para continuar. AVISO: Durante los siguientes pasos, el Disco de Rescate VeraCrypt no debe estar en la unidad. De otro modo, no será posible completar los pasos correctamente.\n\nExtráigalo de la unidad ahora y guárdelo en un lugar seguro. Luego pulse Aceptar. Aviso: Debido a limitaciones técnicas del entorno de pre-arranque (antes del inicio de Windows), los textos mostrados por VeraCrypt en dicho entorno no pueden ser localizados. La interfaz de usuario del Cargador de Arranque VeraCrypt está en inglés.\n\n¿Continuar? Antes de cifrar su partición o unidad del sistema, VeraCrypt necesita verificar que todo funciona correctamente.\n\nTras pulsar Probar, todos los componentes necesarios (por ejemplo, el componente de autenticación de pre-arranque o Cargador de Arranque VeraCrypt) serán instalados y su ordenador será reiniciado. Luego tendrá que introducir su contraseña en la pantalla del Cargador de Arranque que aparecerá antes de que se inicie Windows. Después de esto, será informado automáticamente de los resultados de esta prueba.\n\nEl siguiente dispositivo será modificado: Unidad #%d\n\n\nSi pulsa Cancelar ahora, no se instalará nada y la prueba no será realizada. NOTAS IMPORTANTES -- LÉALAS O IMPRÍMALAS (click en 'Imprimir'):\n\nRecuerde que ninguno de sus archivos será cifrado antes de que reinicie con éxito su ordenador e inicie Windows. De este modo, si algo falla, sus datos NO se perderán. No obstante, si algo va mal, podría encontrar dificultades al iniciar Windows. Por tanto, lea (y si es posible imprima) las siguientes directrices sobre qué hacer si Windows no puede iniciar tras reiniciar el ordenador.\n\n Qué hacer si no se puede iniciar Windows\n------------------------------------------------\n\nNota: Estas instrucciones son válidas sólo si no ha comenzado el cifrado.\n\n- Si Windows no se inicia tras introducir la contraseña correcta (o si ha introducido varias veces dicha contraseña pero VeraCrypt dice que la contraseña es incorrecta), no se alarme. Reinicie (apague y vuelva a encender) el ordenador, y en la pantalla del Cargador de Arranque VeraCrypt, pulse la tecla Esc (y si tiene varios sistemas, elija uno para iniciar). Windows debería iniciar (siempre que aún no esté cifrado) y VeraCrypt automáticamente le preguntará si desea desinstalar el componente de autenticación de pre-arranque o no. Tenga en cuenta que estos pasos NO funcionan si la partición/unidad del sistema está cifrada (nadie puede iniciar Windows o acceder a datos cifrados sin la contraseña correcta incluso si ha seguido los pasos anteriores).\n\n - Si los pasos anteriores no funcionan o si la pantalla del Cargador de Arranque VeraCrypt no aparece (antes de que se inicie Windows), introduzca el Disco de Rescate VeraCrypt en su unidad CD/DVD y reinicie su ordenador. Si la pantalla del Disco de Rescate VeraCrypt no aparece (o si no ve 'Opciones de Reparación' en la sección 'Controles de Teclado' de la pantalla del Disco de Rescate), es posible que su BIOS esté configurada para arrancar desde discos duros antes que desde unidades CD/DVD. Si ése es el caso, reinicie su ordenador, pulse F2 o Delete (en cuanto vea la pantalla de inicio de la BIOS), y espere hasta que aparezca una pantalla de configuración BIOS. Si dicha pantalla de configuración no aparece, reinicie el ordenador otra vez y comience a pulsar F2 o Delete reiteradamente en cuanto se reinicie el ordenador. Cuando aparezca una pantalla de configuración de la BIOS, configure su BIOS para que arranque desde la unidad de CD/DVD primero (para obtener información sobre cómo hacerlo, vaya a la documentación de su BIOS/placa base o contacte con el equipo de soporte técnico del fabricante para obtener asistencia). Luego reinicie su ordenador. La pantalla del Disco de Rescate VeraCrypt debería aparecer ahora. En dicha pantalla, seleccione 'Opciones de Reparación' pulsando F8 en su teclado. Desde el menú 'Opciones de Reparación', seleccione 'Restaurar cargador original del sistema'. Luego extraiga el Disco de Rescate de su unidad CD/DVD y reinicie su ordenador. Windows debería iniciar con normalidad (siempre que no esté cifrado).\n\n Tenga en cuenta que los pasos anteriores NO funcionarán si la partición/unidad del sistema está cifrada (nadie puede iniciar Windows o acceder a datos cifrados en la unidad sin la contraseña correcta incluso si se siguen los pasos anteriores).\n\n\nRecuerde que incluso si pierde su Disco de Rescate VeraCrypt y un atacante lo encuentra, éste NO será capaz de descifrar la partición o unidad del sistema sin la contraseña correcta. Prueba Completada La prueba ha sido completada con éxito.\n\nAVISO: Tenga en cuenta que si el suministro de energía es interrumpido repentinamente mientras se cifran los datos existentes sin pérdida de inforación, o si el sistema operativo falla debido a un error de software o hardware mientras VeraCrypt cifra los datos, podrían corromperse o perderse porciones de los datos. Por tanto, antes de empezar a cifrar, asegúrese de que posee copias de seguridad de los archivos que desea cifrar. Si no las tiene, copie los archivos ahora (puede hacer click en Aplazar, hacer la copia, ejecutar de nuevo VeraCrypt y seleccionar 'Sistema' > 'Continuar proceso interrumpido' para iniciar el cifrado).\n\nCuando esté listo, pulse Cifrar para empezar. Puede hace click en Pausa o en Aplazar en cualquier momento para interrumpir el proceso de cifrado o descifrado, salir de este asistente, reiniciar o apagar su ordenador, y luego continuar el proceso desde el punto en que se detuvo. Para evitar ralentizaciones cuando el sistema o alguna aplicación lea o escriba en la unidad del sistema, VeraCrypt automáticamente espera hasta que los datos sean leídos o escritos (ver Estado a continuación) y luego continúa cifrando o descifrando. \n\nPuede hacer click en Pausa o en Aplazar en cualquier momento para interrumpir el proceso de cifrado, salir de este asistente, reiniciar o apagar su ordenador, y luego continuar el proceso desde el punto en que se detuvo. Recuerde que el volumen no puede montarse hasta que esté cifrado por completo. Sistema Oculto Iniciado Sistema Original Windows crea (normalmente sin su conocimiento ni su consentimiento) varios archivos temporales, logs, etc. en la partición del sistema. También guarda el contenido de la RAM en archivos de hibernación y paginación ubicados en la partición del sistema. Por tanto, si un adversario analiza archivos almacenados en la partición donde reside el sistema original (del que es una copia el sistema oculto), podría hallar, por ejemplo, que ud. usó el asistente de VeraCrypt en modo de creación de sistema oculto (lo que podría indicar la existencia de un sistema operativo oculto en su ordenador).\n\nPara evitar estos problemas, VeraCrypt borrará el contenido entero de la partición donde reside el sistema original. Acto seguido, para lograr la negación plausible, tendrá que instalar un nuevo sistema en la partición y cifrarla. Con esto creará el sistema señuelo y el proceso de creación del sistema operativo oculto estará completo. El sistema operativo oculto ha sido creado con éxito. Sin embargo, antes de que pueda empezar a usarlo (y lograr la negación plausible), necesitará borrar (usando VeraCrypt) el contenido entero de la partición donde está instalado el sistema operativo en ejecución. Antes de que pueda hacer esto, debe reiniciar el ordenador y, en la pantalla del Cargador de Arranque VeraCrypt (que aparece antes del inicio de Windows), introducir la contraseña de autenticación de pre-arranque para el sistema operativo oculto. Cuando éste se inicie, el asistente de VeraCrypt será lanzado automáticamente.\n\nNota: Si elige terminar el proceso de creación del sistema operativo oculto ahora, NO podrá continuar el proceso y el sistema operativo oculto NO será accesible (porque el Cargador de Arranque VeraCrypt será eliminado). Ha programado el proceso de creación de un sistema operativo oculto. El proceso aún no ha sido completado. Para completarlo, debe reiniciar el ordenador y, en la pantalla del Cargador de Arranque VeraCrypt (que aparece antes del inicio de Windows), introducir la contraseña para el sistema operativo oculto.\n\nNota: Si elige terminar el proceso de creación del sistema operativo oculto ahora, NO podrá continuarlo más tarde. Reiniciar el ordenador y continuar Terminar permanentemente el proceso de creación del sistema operativo oculto No hacer nada y preguntar de nuevo después \nSI ES POSIBLE, IMPRIMA ESTE TEXTO (pulse 'Imprimir').\n\n\nCuándo y Cómo Usar el Disco de Rescate VeraCrypt (Tras Cifrar)\n-----------------------------------------------------------------------------------\n\n I. Cómo arrancar el Disco de Rescate VeraCrypt\n\nPara arrancar un Disco de Rescate VeraCrypt, insértelo en su unidad CD/DVD y reinicie su ordenador. Si no aparece la pantalla del Disco de Rescate VeraCrypt (o si no ve 'Opciones de Reparación' en la sección 'Controles de Teclado' de la pantalla), es posible que su BIOS esté configurada para arrancar desde discos duros antes que desde unidades CD/DVD. Si este es el caso, reinicie su ordenador, pulse F2 o Delete (en cuanto vea la pantalla de inicio de la BIOS), y espere hasta que aparezca una pantalla de configuración BIOS. Si no aparece, reinice el ordenador y pulse repetidamente F2 o Delete en cuanto se reinicie el ordenador. Cuando aparezca la pantalla de configuración, configure su BIOS para que arranque desde la unidad CD/DVD primero (si no sabe hacerlo, vaya a la documentación de su BIOS/placa base o contacte con el equipo de soporte técnico del fabricante para obtener asistencia). Luego reinicie su ordenador. La pantalla del Disco de Rescate VeraCrypt debería aparecer ahora. Nota: en dicha pantalla, puede seleccionar 'Opciones de Reparación' pulsando F8.\n\n\n II. Cuándo y Cómo Usar el Disco de Rescate VeraCrypt (Tras Cifrar) 1) Si la pantalla del Cargador de Arranque VeraCrypt no aparece tras iniciar su ordenador (o si Windows no arranca), el Cargador podría estar dañado. El Disco de Rescate VeraCrypt le permite restaurarlo y con ello volver a obtener acceso a su sistema y datos cifrados (pero recuerde que tendrá que seguir introduciendo la contraseña correcta). En la pantalla del Disco de Rescate, seleccione 'Opciones de Reparación' > 'Restaurar Cargador de Arranque VeraCrypt'. Luego pulse 'Y' para confirmar la acción, extraiga el Disco de Rescate de su unidad CD/DVD y reinicie su ordenador.\n\n 2) Si ha introducido varias veces la contraseña correcta pero VeraCrypt dice que no es correcta, la clave maestra u otros datos críticos podrían estar dañados. El Disco de Rescate VeraCrypt le permite restaurarlos y volver a obtener acceso a su sistema y datos cifrados (pero tendrá que seguir introduciendo la contraseña correcta). En la pantalla del Disco de Rescate, seleccione 'Opciones de Reparación' > 'Restaurar datos clave'. Luego introduzca su contraseña, pulse 'Y' para confirmar la acción, extraiga el Disco de Rescate de su unidad CD/DVD y reinicie su ordenador.\n\n 3) Si el Cargador de Arranque VeraCrypt está dañado, puede evitar su ejecución arrancando directamente desde el Disco de Rescate VeraCrypt. Inserte su Disco de Rescate en la unidad CD/DVD e introduzca su contraseña en la pantalla del Disco de Rescate.\n\n 4) Si Windows está dañado y no puede iniciarse, el Disco de Rescate VeraCrypt le permite descifrar permanentemente la partición/unidad antes de que Windows se inicie. En la pantalla del Disco de Rescate, seleccione 'Opciones de Reparación' > 'Descifrar permanentemente partición/unidad del sistema'. Introduzca la contraseña y espere a que se complete el descifrado. Luego puede arrancar su CD/DVD de instalación de Windows para repararlo. Nota: Alternativamente, si Windows está dañado (no puede iniciarse) y necesita repararlo (o acceder a sus archivos), puede evitar el descifrado de la partición/unidad del sistema siguiendo estos pasos: Si tiene varios sistemas operativos instalados en su ordenador, arranque alguno que no requiera autenticación de pre-arranque. Si no tiene varios sistemas operativos, puede arrancar un CD/DVD WinPE o BartPE o conectar su unidad del sistema a otro ordenador como una unidad secundaria o externa y arrancar el sistema operativo de ése ordenador. Después de arrancar un sistema, ejecute VeraCrypt, seleccione 'Seleccionar Dispositivo', seleccione la partición del sistema afectado, pulse 'Aceptar', seleccione 'Sistema' > 'Montar Sin Autenticación de Pre-Arranque', introduzca su contraseña de autenticación de pre-arranque y pulse 'Aceptar'. La partición se montará como un volumen VeraCrypt normal (los datos se cifrarán/descifrarán al vuelo).\n\n\n Recuerde que incluso si pierde su Disco de Rescate VeraCrypt y un atacante lo encuentra, éste NO podrá descifrar la unidad o partición del sistema sin la contraseña correcta. \n\nI M P O R T A N T E -- IMPRIMA ESTE TEXTO SI ES POSIBLE (Click en 'Imprimir').\n\n\nNota: Este texto se mostrará automáticamente cada vez que inicie el sistema oculto hasta que comience a crear el sistema señuelo.\n\n\n Cómo Crear un Sistema Señuelo con Seguridad\n----------------------------------------------------------------------------\n\nPara conseguir la negación plausible, es necesario crear el sistema operativo señuelo ahora. Para hacerlo, siga estos pasos:\n\n 1) Por razones de seguridad, apague su ordenador y déjelo apagado unos minutos (cuantos más mejor). Esto es requerido para borrar la memoria, que contiene datos sensibles. Luego encienda el ordenador pero no arranque el sistema oculto.\n\n 2) Instale Windows en la partición cuyo contenido ha sido borrado (es decir, en la partición donde estaba instalado el sistema original, del que se copió el sistema oculto).\n\nIMPORTANTE: CUANDO EMPIECE A INSTALAR EL SISTEMA SEÑUELO, EL OCULTO *NO* PODRÁ ARRANCAR (porque el Cargador de Arranque de VeraCrypt será borrado por el instalador de Windows). ESTO ES NORMAL Y ESPERADO. NO SE ALARME. PODRÁ ARRANCAR EL SISTEMA OCULTO EN CUANTO EMPIECE A CIFRAR EL SISTEMA SEÑUELO (porque VeraCrypt instalará automáticamente en ese momento el Cargador de Arranque VeraCrypt en la unidad del sistema).\n\nImportante: El tamaño de la partición del sistema señuelo debe permanecer igual que el del volumen oculto (esta condición se cumple ahora). Además, no debe crear ninguna partición entre la partición del sistema señuelo y la que contiene el sistema oculto.\n\n 3) Arranque el sistema señuelo (el que instaló en el paso 2) e instale VeraCrypt en él.\n\nTenga en cuenta que el sistema señuelo nunca debe contener datos importantes.\n\n 4) En el sistema señuelo, ejecute VeraCrypt y seleccione 'Sistema' > 'Cifrar Partición/Unidad del Sistema'. El Asistente de Creación de Volúmenes VeraCrypt debería aparecer.\n\nLos siguientes pasos se aplican a dicho asistente.\n\n 5) En el Asistente de Creación de Volúmenes VeraCrypt, NO seleccione la opción 'Oculto'. Deje seleccionada la opción 'Normal' y haga click en 'Siguiente'.\n\n 6) Seleccione la opción 'Cifrar la partición de Windows' y pulse 'Siguiente'.\n\n 7) Si sólo están instalados el sistema señuelo y el oculto en el ordenador, seleccione la opción 'Arranque simple' (si hay algún otro sistema instalado, seleccione 'Arranque múltiple'). Luego pulse 'Siguiente'.\n\n 8) IMPORTANTE: En este paso, PARA EL SISTEMA SEÑUELO, ¡DEBE SELECCIONAR EL MISMO ALGORITMO DE CIFRADO Y ALGORITMO HASH QUE EL SELECCIONADO PARA EL SISTEMA OCULTO! ¡DE LO CONTRARIO, EL SISTEMA OCULTO SERÁ INACCESIBLE! En otras palabras, el sistema señuelo debe ser cifrado con el mismo algoritmo de cifrado que el sistema oculto. Nota: La razón es que el sistema señuelo y el oculto compartirán un único cargador de arranque, que sólo soporta un algoritmo seleccionado por el usuario (hay una versión especial del Cargador de Arranque VeraCrypt para cada algoritmo).\n\n 9) En este paso, elija una contraseña para el sistema operativo señuelo. Ésta será la contraseña que podrá revelar a un adversario si se le pide o se le obliga a revelar su contraseña de autenticación de pre-arranque (la otra contraseña que puede revelar es la del volumen externo). La existencia de la tercera contraseña (la de autenticación de pre-arranque del sistema operativo oculto) permanecerá en secreto.\n\nImportante: la contraseña que elija para el sistema señuelo debe ser sustancialmente diferente de la que elija para el volumen oculto (es decir, para el sistema operativo oculto).\n\n 10) Siga el resto de las instrucciones del asistente para cifrar el sistema operativo señuelo.\n\n\n\n Tras la Creación del Sistema Señuelo\n------------------------------------------------\n\nTras cifrar el sistema señuelo, habrá completado el proceso de creación del sistema operativo oculto y podrá usar estas tres contraseñas:\n\n1) Contraseña de autenticación de pre-arranque para el sistema operativo oculto.\n\n2) Contraseña de autenticación de pre-arranque para el sistema operativo señuelo.\n\n3) Contraseña para el volumen externo.\n\n Si desea iniciar el sistema operativo oculto, sólo tendrá que introducir la contraseña para el sistema operativo oculto en la pantalla del Cargador de Arranque VeraCrypt (que aparece tras encender o reiniciar su ordenador).\n\nSi desea iniciar el sistema operativo señuelo, sólo tendrá que introducir la contraseña para el sistema operativo señuelo en la misma pantalla.\n\nLa contraseña para el sistema señuelo puede ser revelada a cualquiera que le obligue a revelar la contraseña de autenticación de pre-arranque. La existencia del volumen oculto (y del sistema operativo oculto) permanecerá en secreto.\n\n La tercera contraseña (para el volumen externo) puede ser revelada a cualquiera que le obligue a revelar la contraseña para la primera partición tras la partición del sistema, donde residen tanto el volumen externo como el oculto (con el sistema operativo oculto). La existencia del volumen oculto (y del sistema oculto) permanecerá en secreto.\n\n\n Si reveló la contraseña para el sistema señuelo a un adversario y éste le preguntó por qué el espacio libre de la partición del sistema (señuelo) contiene datos aleatorios, puede responder, por ejemplo: "La partición contuvo un sistema cifrado por VeraCrypt, pero olvidé la contraseña de autenticación de pre-arranque (o el sistema fue dañado y dejó de arrancar), así que tuve que reinstalar Windows y cifrar la partición otra vez."\n\n\n Si todas las instrucciones son seguidas y las precauciones y requisitos listados en la sección "Precauciones y Requisitos de Seguridad Concernientes a los Volúmenes Ocultos" en la Guía del Usuario de VeraCrypt son seguidos, debería ser imposible demostrar que el volumen oculto y el sistema operativo oculto existen, incluso si el volumen externo está montado o el sistema operativo señuelo es descifrado o iniciado.\n\nSi guarda o imprime una copia de este texto (altamente recomendado salvo que su impresora almacene internamente copias de los documentos que imprime), debería destruir todas las copias del mismo tras crear el sistema señuelo y tras haber comprendido toda la información contenida en el texto (de otro modo, si se encuentra una copia, podría indicar que hay un sistema operativo oculto en este ordenador).\n\n AVISO: SI NO PROTEGE EL VOLUMEN OCULTO (para saber cómo hacerlo, vaya a la sección "Protección de Volúmenes Ocultos Contra Daño" en la Guía de Usuario de VeraCrypt), NO ESCRIBA EN EL VOLUMEN EXTERNO (recuerde que el sistema operativo señuelo NO está instalado en el volumen externo). DE LO CONTRARIO, ¡PODRÍA SOBREESCRIBIR Y DAÑAR EL VOLUMEN OCULTO (Y EL SISTEMA OPERATIVO OCULTO QUE CONTIENE)! Clonando Sistema Operativo En los siguientes pasos, VeraCrypt creará el sistema operativo oculto copiando el contenido de la partición del sistema al volumen oculto (los datos que se copien serán cifrados al vuelo con una clave de cifrado diferente de la que se usará para el sistema operativo señuelo).\n\nTenga en cuenta que el proceso se realizará en el entorno de pre-arranque (antes del inicio de Windows) y puede tardar mucho en completarse; varias horas o incluso días (dependiendo del tamaño de la partición del sistema y del rendimiento de su ordenador).\n\nPodrá interrumpir el proceso, apagar su ordenador, iniciar el sistema operativo y luego continuar el proceso. No obstante, si lo interrumpe, el proceso de copiado tendrá que comenzar desde el principio (porque el contenido de la partición del sistema no debe cambiar durante la clonación). ¿Desea cancelar el proceso entero de cración del sistema operativo oculto?\n\nNota: NO podrá continuar el proceso más tarde si lo cancela ahora. ¿Desea cancelar la prueba del cifrado del sistema? Ha fallado la prueba del cifrado del sistema VeraCrypt. ¿Desea intentarlo de nuevo?\n\nSi selecciona 'No', el componente de autenticación de pre-arranque será desinstalado.\n\nNotas:\n\n- Si el Cargador de Arranque VeraCrypt no le pidió que introdujera la contraseña antes de que Windows se iniciara, es posible que su sistema operativo no arranque desde la unidad en la que está instalado. Esto no está soportado.\n\n- Si usó un algoritmo de cifrado distinto a AES y la prueba falló (e introdujo la contraseña), la causa puede ser un controlador diseñado inapropiadamente. Seleccione 'No', y trate de cifrar la partición/unidad del sistema otra vez, pero use el algoritmo de cifrado AES (que tiene los requisitos de memoria más bajos).\n\n- Para más posibles causas y soluciones, vea http://www.veracrypt.org/docs/?s=troubleshooting La partición/unidad del sistema no parece estar cifrada (ni parcial ni completamente). Su partición/unidad del sistema está cifrada (parcial o completamente).\n\nDescifre por completo su partición/unidad del sistema antes de continuar. Para ello, seleccione 'Sistema' > 'Descifrar Permanentemente la Partición/Unidad del Sistema' desde el menú de la ventana principal de VeraCrypt. Si la partición/unidad del sistema está cifrada (parcial o completamente), no puede usar una versión anterior de VeraCrypt (pero puede actualizarlo o reinstalar la misma versión). Su partición/unidad del sistema está siendo actualmente cifrada, descifrada, o modificada de otra manera. Interrumpa el proceso de cifrado/descifrado/modificación (o espere a que termine) antes de continuar. El Asistente de Creación de Volúmenes VeraCrypt ya está ejecutándose y está preparando o llevando a cabo el cifrado/descifrado de la partición/unidad del sistema. Antes de continuar, espere a que termine o ciérrelo. Si no puede cerrarlo, reinicie su ordenador antes de proceder. El proceso de cifrado o descifrado de la partición/unidad del sistema no ha sido completado. Espere a que se complete antes de continuar. Error: El proceso de cifrado de la partición/unidad del sistema no ha sido completado. Debe completarse primero. Error: El proceso de cifrado de la partición/volumen no ha sido completado. Debe completarse primero.\n\nNota: para continuar el proceso, seleccione 'Volúmenes' > 'Continuar Proceso Interrumpido' desde el menú de la ventana principal de VeraCrypt. La contraseña es correcta, VeraCrypt ha descifrado con éxito la cabecera del volumen y detectado que éste es un volumen de sistema oculto. No obstante, no puede modificar la cabecera de un volumen de sistema oculto de esta forma.\n\nPara cambiar la contraseña de un volumen de sistema oculto, arranque el sistema operativo residente en dicho volumen, y luego seleccione 'Sistema' > 'Cambiar Contraseña' desde el menú de la ventana principal de VeraCrypt.\n\nPara establecer el algoritmo de derivación de la clave de cabecera, arranque el sistema operativo oculto y seleccione 'Sistema' > 'Establecer Algoritmo de Derivación de Clave de Cabecera'. VeraCrypt no soporta el descifrado sin pérdida de datos de una partición de sistema oculto.\n\nNota: Si desea descifrar la partición del sistema señuelo, arranque el sistema señuelo y seleccione 'Sistema' > 'Descifrar Permanentemente Partición/Unidad del Sistema' desde el menú de la ventana principal de VeraCrypt. Error: Parámetro Incorrecto/inválido. Ha seleccionado una partición o un dispositivo pero el modo de asistente seleccionado es sólo para contenedores de archivos.\n\n¿Desea cambiar el modo de asistente? ¿Desea crear un contenedor de archivos VeraCrypt en su lugar? Ha seleccionado la partición/unidad del sistema (o la partición de arranque), pero el modo de asistente seleccionado es sólo para particiones/unidades secundarias.\n\n¿Desea instalar autenticación de pre-arranque (lo que significa que tendrá que introducir su contraseña antes de cada inicio de Windows) y cifrar la partición/unidad del sistema? ¿Seguro que desea descifrar permanentemente la partición/unidad del sistema? CUIDADO: Si descifra permanentemente la partición/unidad del sistema, se escribirán en ella datos no cifrados.\n\n¿Seguro que desea descifrar permanentemente la partición/unidad del sistema? Aviso: si usa algoritmos en cascada para el cifrado del sistema, pueden producirse estos problemas:\n\n1) Que el Cargador de Arranque VeraCrypt sea mayor de lo normal y no haya suficiente espacio en la primera pista de la unidad para hacer una copia de seguridad del Cargador. Por tanto, si resulta dañado (lo que a veces ocurre, por ejemplo, con procedimientos de activación antipiratería diseñados inapropiadamente), tendrá que usar el Disco de Rescate VeraCrypt para arrancar o reparar el Cargador de Arranque.\n\n2) Que en algunos ordenadores se tarde más en reanudar tras la hibernación.\n\nEstos problemas potenciales pueden evitarse eligiendo un algoritmo de cifrado sin cascada (como AES).\n\n¿Seguro que desea usar algoritmos en cascada? Si encuentra alguno de los problemas mencionados, descifre la partición/unidad (si está cifrada) y luego intente cifrarla de nuevo usando un algoritmo de cifrado sin cascada (como AES). AVISO: Por razones de seguridad, debería actualizar VeraCrypt en el sistema operativo señuelo antes de actualizarlo en el sistema operativo oculto.\n\nPara hacerlo, arranque el sistema señuelo y ejecute el instalador VeraCrypt en él. Luego arranque el sistema oculto y ejecute también el instalador en él.\n\nNota: El sistema señuelo y el sistema oculto comparten un único cargador de arranque. Si actualizó VeraCrypt sólo en el sistema oculto (pero no en el señuelo), el sistema señuelo podría contener un controlador VeraCrypt y aplicaciones VeraCrypt cuya versión sea diferente a la del Cargador de Arranque VeraCrypt. Esta discrepancia podría indicar que existe un sistema operativo oculto en este ordenador.\n\n\n¿Desea continuar? La versión del Cargador de Arranque VeraCrypt que arrancó este sistema operativo es diferente a la versión del controlador VeraCrypt (y la de las aplicaciones VeraCrypt) instalado en este sistema.\n\nDebería ejecutar el instalador VeraCrypt (cuya versión sea la misma que la del Cargador de Arranque VeraCrypt) para actualizar VeraCrypt en este sistema operativo. La versión del Cargador de Arranque VeraCrypt que arrancó este sistema operativo es diferente a la versión del controlador VeraCrypt (y de las aplicaciones VeraCrypt) instalado en este sistema. Recuerde que las versiones antiguas pueden contener errores corregidos en versiones recientes.\n\nSi no arrancó desde el Disco de Rescate VeraCrypt, debería reinstalar VeraCrypt o actualizarlo a la última versión estable (el cargador de arranque será actualizado también).\n\nSi arrancó desde el Disco de Rescate, debería actualizarlo ('Sistema' > 'Crear Disco de Rescate'). El Cargador de Arranque VeraCrypt ha sido actualizado.\n\nSe recomienda crear un nuevo Disco de Rescate VeraCrypt (que contendrá la nueva versión del Cargador de Arranque VeraCrypt) seleccionando 'Sistema' > 'Crear Disco de Rescate' después de reiniciar su ordenador. El Cargador de Arranque VeraCrypt ha sido actualizado.\n\nSe recomienda que arranque el sistema operativo señuelo y cree un nuevo Disco de Rescate VeraCrypt (que contendrá la nueva versión del Cargador de Arranque VeraCrypt) seleccionando 'Sistema' > 'Crear Disco de Rescate'. Fallo al actualizar el Cargador de Arranque VeraCrypt. VeraCrypt ha fallado al detectar el tamaño real de la unidad del sistema y, por tanto, se usará el tamaño reportado por el sistema operativo (que podría ser menor que el tamaño real). Recuerde que esto no es un error de VeraCrypt. PRECAUCIÓN: Parece que VeraCrypt ya ha tratado de detectar sectores ocultos en esta unidad del sistema. Si encontró algún problema durante el proceso de detección anterior, puede evitar los problema saltándose la detección de sectores ocultos ahora. Tenga en cuenta que si lo hace, VeraCrypt usará el tamaño reportado por el sistema operativo (que puede ser menor que el tamaño real de la unidad).\n\nRecuerde que este problema no es causado por un error de VeraCrypt. Saltarse la detección de sectores ocultos (usar tamaño reportado por el sistema operativo) Intentar detectar los sectores ocultos de nuevo Error: El contenido de uno o más sectores del disco no puede leerse (probablemente debido a un defecto físico).\n\nEl proceso de cifrado sin pérdida de datos puede continuar sólo cuando los sectores sean legibles de nuevo. VeraCrypt puede intentar hacer legibles esos sectores escribiendo ceros en ellos (con lo cual estos bloques de ceros serán cifrados). Sin embargo, tenga en cuenta que los datos almacenados en los sectores ilegibles se perderán. Si quiere evitarlo, puede intentar recuperar fragmentos de los datos corruptos usando herramientas de terceros.\n\nNota: En caso de sectores físicamente dañados (al contrario que con la corrupción de datos y errores de suma de verificación) la mayoría de los tipos de dispositivos de almacenamiento reasignan los sectores cuando se intenta escribir datos en ellos (así que los datos de los sectores dañados pueden permanecer sin cifrar en la unidad).\n\n¿Desea que VeraCrypt escriba ceros en los sectores ilegibles? Error: El contenido de uno o más sectores del disco no puede leerse (probablemente debido a un defecto físico).\n\nPara proceder con el descifrado, VeraCrypt tendrá que desechar el contenido de los sectores ilegibles (su contenido será reemplazado por datos pseudoaleatorios). Recuerde que, antes de continuar, puede intentar recuperar fragmentos de los datos corruptos usando herramientas de terceros.\n\n¿Desea que VeraCrypt descarte los datos de los sectores ilegibles? Nota: VeraCrypt ha reemplazado el contenido de %I64d sectores ilegibles (%s) con bloques cifrados de texto plano llenos de ceros. Introduzca contraseña/PIN para token '%s': Para permitir que VeraCrypt acceda a un token de seguridad o tarjeta inteligente, necesita instalar primero una librería de software PKCS #11 para el token o la tarjeta. Esta librería puede ser suministrada con el dispositivo o puede descargarse desde la web del vendedor o de terceros.\n\nTras instalar la librería, puede seleccionarla manualmente pulsando 'Seleccionar Librería' o puede dejar que VeraCrypt la encuentre y seleccione automáticamente pulsando 'Detección Automática' (sólo se buscará en el directorio del sistema Windows). Nota: Para el nombre de archivo y ubicación de la librería PKCS #11 instalada para su token o tarjeta, vaya a la documentación suministrada con el token, tarjeta, o software de terceros.\n\nPulse 'Aceptar' para seleccionar la ruta y nombre de archivo. Para permitir que VeraCrypt acceda a un token de seguridad o tarjeta inteligente, necesita seleccionar una librería de software PKCS #11 para el token/tarjeta primero. Para hacerlo, seleccione 'Configuración' > 'Tokens de Seguridad'. Falló la inicialización de la librería de token de seguridad PKCS #11.\n\nAsegúrese de que la ruta y archivo especificados dirigen a una librería PKCS #11 válida. Para especificar una ruta y nombre de archivo para la librería PKCS #11, seleccione 'Configuración' > 'Tokens de Seguridad'. No se han encontrado librerías PKCS #11 en el directorio de sistema de Windows.\n\nAsegúrese de que haya instalada una librería PKCS #11 para su token de seguridad o tarjeta inteligente (esta librería puede ser suministrada con el token/tarjeta o puede descargarse desde la web del vendedor o de terceros). Si está instalado en otro directorio distinto al del sistema de Windows, pulse 'Seleccionar Librería' para localizar la librería (p.e. en la carpeta donde está instalado el software del token/tarjeta). No se ha encontrado ningún token de seguridad.\n\nAsegúrese de que su token está conectado y el controlador de dispositivo correcto está instalado. No se ha encontrado archivo-llave del token de seguridad. Ya existe un archivo-llave de token de seguridad con el mismo nombre. ¿Desea borrar los archivos seleccionados? Ruta no válida de archivo-llave de token de seguridad. Error de token de seguridad Contraseña incorrecta para el token de seguridad. El token de seguridad no tiene suficiente memoria/espacio para la operación solicitada.\n\nSi está intentando importar un archivo-llave, debería seleccionar un archivo más pequeño o usar uno generado por VeraCrypt (seleccione 'Herramientas' > 'Generador de Archivo-llave'). Todas las sesiones de token de seguridad abiertas han sido cerradas. Seleccione Archivos-llave de Token de Seguridad Slot Nombre del token Nombre del archivo IMPORTANTE: Las contraseñas de autenticación de pre-arranque siempre son escritas con la disposición de teclado estándar de EEUU. Por tanto, podría ser imposible montar con contraseña de pre-arranque un volumen que use una contraseña escrita con cualquier otra disposición de teclado (esto no es un error de VeraCrypt). Para permitir que volúmenes así sean montados con contraseña de pre-arranque, siga estos pasos:\n\n1) Click en 'Seleccionar Archivo' o 'Seleccionar Dispositivo' y seleccione el volumen.\n2) Seleccione 'Volúmenes' > 'Cambiar Contraseña del Volumen'.\n3) Introduzca la contraseña actual para el volumen.\n4) Cambie la disposición de teclado a Inglés (EEUU) haciendo click en la barra de Idioma en la barra de tareas de Windows y seleccionando 'EN Inglés (EEUU)'.\n5) En VeraCrypt, en el campo de la nueva contraseña, escriba la contraseña de pre-arranque.\n6) Confirme la contraseña escribiéndola en el campo de confirmación y pulse 'Aceptar'.\nAVISO: Tenga en mente que si sigue estos pasos, la contraseña del volumen tendrá que ser escrita siempre usando la disposición de teclado EEUU (que se aplica automáticamente sólo en el entorno de pre-arranque). Los volúmenes favoritos del sistema serán montados usando la contraseña de autenticación de pre-arranque. Si algún favorito del sistema usa una contraseña diferente, no será montado. Recuerde que si necesita impedir que las acciones con volúmenes VeraCrypt normales (como 'Desmontar Todo') afecten a los volúmenes favoritos del sistema, debería activar la opción 'Permitir sólo a administradores ver y desmontar volúmenes favoritos del sistema en VeraCrypt'. Además, cuando VeraCrypt se ejecuta sin privilegios de administrador (por defecto en Windows Vista y posterior), los volúmenes favoritos del sistema no se mostrarán en la lista de letras de unidad de la ventana principal de VeraCrypt. IMPORTANTE: Tenga en cuenta que si esta opción se habilita y VeraCrypt no tiene privilegios de administrador, los volúmenes favoritos del sistema montados NO se mostrarán en la ventana principal de VeraCrypt y no se podrán desmontar. Si necesita desmontar un favorito del sistema haga click en el icono de VeraCrypt (en el menú Inicio) y seleccione 'Ejecutar como administrador' primero. La misma limitación se aplica a las funciones 'Desmontar Todo', 'Desmontar automáticamente', teclas de acceso rápido relacionadas, etc. Recuerde que esta configuración hace efecto sólo tras reiniciar el sistema operativo. Error analizando línea de comandos. Disco de Rescate Seleccionar &Archivo y Montar Seleccionar &Dispositivo y Montar Permitir sólo a administradores ver y desmontar volúmenes favoritos del sistema en VeraCrypt Montar volúmenes favoritos del sistema al inicio de Windows (en la fase inicial del proceso) Aviso: El sistema de archivos en el volumen montado como '%s' no se desmontó limpiamente y puede contener errores. Usar un sistema de archivos corrupto puede causar pérdida o corrupción de datos.\n\nNota: Antes de extraer o desconectar físicamente un dispositivo (como una unidad flash USB o un disco duro externo) en el que reside un volumen VeraCrypt, debería desmontar siempre el volumen en VeraCrypt primero.\n\n\n¿Desea que Windows intente detectar y corregir errores (si los hay) en el sistema de archivos? Aviso: Uno o más volúmenes favoritos del sistema no fue desmontado limpiamente y puede contener errores en el sistema de archivos. Vaya al visor de eventos del sistema para obtener más detalles.\n\nUsar un sistema de archivos corrupto puede causar pérdida o corrupción de datos. Debería comprobar los volúmenes afectados en busca de errores (click derecho en cada uno en VeraCrypt y seleccione 'Reparar Sistema de Archivos'). Aviso: Reparar un sistema de archivos dañado usando la herramienta de Microsoft 'chkdsk' podría causar pérdida de archivos en las áreas dañadas. Por tanto, es recomendable que primero copie los archivos almacenados en el volumen VeraCrypt a otro volumen VeraCrypt sin errores.\n\n¿Desea reparar el sistema de archivos ahora? El volumen '%s' ha sido montado como sólo lectura porque se denegó el acceso a escritura.\n\nAsegúrese de que los permisos de seguridad del contenedor le permiten escribir en él (click derecho en el contenedor y seleccione Propiedades > Seguridad).\n\nRecuerde que, debido a un problema de Windows, puede ver este aviso incluso tras ajustar los permisos apropiados. Esto no es culpa de un error de VeraCrypt. Una posible solución es mover su contenedor a su carpeta 'Mis Documentos'.\n\nSi desea mantener su volumen como sólo lectura, establezca el atributo sólo lectura del contenedor (click derecho en éste y seleccione Propiedades > Sólo lectura), lo que suprimirá este aviso. El volumen '%s' tuvo que ser montado como sólo lectura porque se denegó el acceso a escritura.\n\nAsegúrese de que ninguna otra aplicación (como el software antivirus) esetá accediendo a la partición/dispositivo donde se aloja el volumen. El volumen '%s' ha sido montado como sólo lectura porque el sistema operativo informó de que el dispositivo está protegido contra escritura.\n\nTenga en cuenta que algunos controladores personalizados de chipset causan que medios grabables parezcan erróneamente protegidos contra escritura. Esto puede solucionarse actualizando o desinstalando los controladores personalizados (no de Microsoft) que haya instalados en este sistema. Tenga en cuenta que la tecnología Hyper-Threading proporciona múltiples núcleos lógicos por cada núcleo físico. Cuando Hyper-Threading está activado, el número seleccionado representa el número de procesadores o núcleos lógicos. %d hilos Recuerde que AES acelerado por hardware está deshabilitado, lo que afectará a los resultados (peor rendimiento).\n\nPara habilitar la aceleración hardware, seleccione 'Configuración' > 'Rendimiento' y marque la casilla correspondiente. Recuerde que el número de hilos está actualmente limitado, lo que afectará a los resultados (peor rendimiento).\n\nPara utilizar toda la potencia de los procesadores, seleccione 'Configuración' > 'Rendimiento' y desmarque la casilla correspondiente. ¿Desea que VeraCrypt intente desactivar la protección contra escritura de la partición/unidad? AVISO: Esta configuración puede perjudicar el rendimiento.\n\n¿Seguro que desea aplicarla? Aviso: volumen VeraCrypt auto-desmontado Antes de eliminar o desactivar un dispositivo que contenga un volumen montado, debería desmontar el volumen en VeraCrypt primero.\n\nLos desmontajes espontáneos inesperados a menudo son causados por cables que fallan intermitentemente, carcasas defectuosas, etc. Probar Archivo-llave Retroceso Tabulador Limpiar Intro Pausa Bloqueo Mayúsculas Barra Espaciadora AvPag RePag Fin Inicio Flecha Izquierda Flecha Arriba Flecha Derecha Flecha Abajo Seleccionar Imprimir Ejecutar Imprimir Pant. Insertar Borrar Aplicaciones Detener/Sleep Bloq. Numérico Bloq. Scroll Explorador atrás Explorador adelante Explorador actualizar Explorador parar Explorador buscar Explorador favoritos Explorador inicio Silencio Bajar Volumen Subir Volumen Pista Siguiente Pista Anterior Stop Reproducir/Pausa Inicio Correo Seleccionar Medio Aplicación 1 Aplicación 2 Attn CrSel ExSel Reproducir Zoom Teclado numérico Mayúsculas Control Alt Win B KB MB GB TB PB B/s KB/s MB/s GB/s TB/s PB/s iv class='ctx'> NONSYS_INPLACE_ENC_WIPE_MODE_PAGE,
NONSYS_INPLACE_ENC_TRANSFORM_PAGE,
NONSYS_INPLACE_ENC_TRANSFORM_FINISHED_PAGE,
NONSYS_INPLACE_DEC_TRANSFORM_FINISHED_DRIVE_LETTER_PAGE,
FORMAT_PAGE,
FORMAT_FINISHED_PAGE,
SYSENC_HIDDEN_OS_INITIAL_INFO_PAGE,
SYSENC_HIDDEN_OS_WIPE_INFO_PAGE,
DEVICE_WIPE_MODE_PAGE,
DEVICE_WIPE_PAGE
};
#define TIMER_INTERVAL_RANDVIEW 30
#define TIMER_INTERVAL_SYSENC_PROGRESS 30
#define TIMER_INTERVAL_NONSYS_INPLACE_ENC_PROGRESS 30
#define TIMER_INTERVAL_SYSENC_DRIVE_ANALYSIS_PROGRESS 100
#define TIMER_INTERVAL_WIPE_PROGRESS 30
#define TIMER_INTERVAL_KEYB_LAYOUT_GUARD 10
enum sys_encryption_cmd_line_switches
{
SYSENC_COMMAND_NONE = 0,
SYSENC_COMMAND_RESUME,
SYSENC_COMMAND_STARTUP_SEQ_RESUME,
SYSENC_COMMAND_ENCRYPT,
SYSENC_COMMAND_DECRYPT,
SYSENC_COMMAND_CREATE_HIDDEN_OS,
SYSENC_COMMAND_CREATE_HIDDEN_OS_ELEV
};
+enum password_status
+{
+ very_weak = 0,
+ weak,
+ medium,
+ strong,
+ very_strong
+};
+
typedef struct
{
int NumberOfSysDrives; // Number of drives that contain an operating system. -1: unknown, 1: one, 2: two or more
int MultipleSystemsOnDrive; // Multiple systems are installed on the drive where the currently running system resides. -1: unknown, 0: no, 1: yes
int BootLoaderLocation; // Boot loader (boot manager) installed in: 1: MBR/1st cylinder, 0: partition/bootsector: -1: unknown
int BootLoaderBrand; // -1: unknown, 0: Microsoft Windows, 1: any non-Windows boot manager/loader
int SystemOnBootDrive; // If the currently running operating system is installed on the boot drive. -1: unknown, 0: no, 1: yes
} SYSENC_MULTIBOOT_CFG;
#define SYSENC_PAUSE_RETRY_INTERVAL 100
#define SYSENC_PAUSE_RETRIES 200
// Expected duration of system drive analysis, in ms
#define SYSENC_DRIVE_ANALYSIS_ETA (4*60000)
BootEncryption *BootEncObj = NULL;
BootEncryptionStatus BootEncStatus;
HWND hCurPage = NULL; /* Handle to current wizard page */
int nCurPageNo = -1; /* The current wizard page */
int nLastPageNo = -1;
volatile int WizardMode = DEFAULT_VOL_CREATION_WIZARD_MODE; /* IMPORTANT: Never change this value directly -- always use ChangeWizardMode() instead. */
volatile BOOL bHiddenOS = FALSE; /* If TRUE, we are performing or (or supposed to perform) actions relating to an operating system installed in a hidden volume (i.e., encrypting a decoy OS partition or creating the outer/hidden volume for the hidden OS). To determine or set the phase of the process, call ChangeHiddenOSCreationPhase() and DetermineHiddenOSCreationPhase()) */
BOOL bDirectSysEncMode = FALSE;
BOOL bDirectSysEncModeCommand = SYSENC_COMMAND_NONE;
BOOL DirectDeviceEncMode = FALSE;
BOOL DirectNonSysInplaceDecStartMode = FALSE;
BOOL DirectNonSysInplaceEncResumeMode = FALSE;
BOOL DirectNonSysInplaceDecResumeMode = FALSE;
BOOL DirectPromptNonSysInplaceEncResumeMode = FALSE;
BOOL DirectCreationMode = FALSE;
-volatile BOOL bInPlaceEncNonSys = FALSE; /* If TRUE, existing data on a non-system partition/volume are to be encrypted (or decrypted if bInPlaceDecNonSys is TRUE) in place (for system encryption, this flag is ignored) */
+int iIconX=0;
+int iIconY=0;
+HWND hDlgItemTooltip = NULL;
+HANDLE hIconTooltip = NULL;
+char tempPassword[MAX_PASSWORD + 1];
+int iPasswordStrength;
+
+volatile BOOL bInPlaceEncNonSys = TRUE; /* If TRUE, existing data on a non-system partition/volume are to be encrypted (or decrypted if bInPlaceDecNonSys is TRUE) in place (for system encryption, this flag is ignored) */
volatile BOOL bInPlaceDecNonSys = FALSE; /* If TRUE, existing data on a non-system partition/volume are to be decrypted in place (for system encryption, this flag is ignored) */
volatile BOOL bInPlaceEncNonSysResumed = FALSE; /* If TRUE, the wizard is supposed to resume (or has resumed) process of non-system in-place encryption/decryption. */
volatile BOOL bFirstNonSysInPlaceEncResumeDone = FALSE;
__int64 NonSysInplaceEncBytesDone = 0;
__int64 NonSysInplaceEncTotalSize = 0;
BOOL bDeviceTransformModeChoiceMade = FALSE; /* TRUE if the user has at least once manually selected the 'in-place' or 'format' option (on the 'device transform mode' page). */
int nNeedToStoreFilesOver4GB = 0; /* Whether the user wants to be able to store files larger than 4GB on the volume: -1 = Undecided or error, 0 = No, 1 = Yes */
int nVolumeEA = 1; /* Default encryption algorithm */
BOOL bSystemEncryptionInProgress = FALSE; /* TRUE when encrypting/decrypting the system partition/drive (FALSE when paused). */
BOOL bWholeSysDrive = FALSE; /* Whether to encrypt the entire system drive or just the system partition. */
static BOOL bSystemEncryptionStatusChanged = FALSE; /* TRUE if this instance changed the value of SystemEncryptionStatus (it's set to FALSE each time the system encryption settings are saved to the config file). This value is to be treated as protected -- only the wizard can change this value (others may only read it). */
volatile BOOL bSysEncDriveAnalysisInProgress = FALSE;
volatile BOOL bSysEncDriveAnalysisTimeOutOccurred = FALSE;
int SysEncDetectHiddenSectors = -1; /* Whether the user wants us to detect and encrypt the Host Protect Area (if any): -1 = Undecided or error, 0 = No, 1 = Yes */
int SysEncDriveAnalysisStart;
BOOL bDontVerifyRescueDisk = FALSE;
BOOL bFirstSysEncResumeDone = FALSE;
BOOL bDontCheckFileContainerSize = FALSE; /* If true, we don't check if the given size of file container is smaller than the available size on the hosting disk */
int nMultiBoot = 0; /* The number of operating systems installed on the computer, according to the user. 0: undetermined, 1: one, 2: two or more */
volatile BOOL bHiddenVol = FALSE; /* If true, we are (or will be) creating a hidden volume. */
volatile BOOL bHiddenVolHost = FALSE; /* If true, we are (or will be) creating the host volume (called "outer") for a hidden volume. */
volatile BOOL bHiddenVolDirect = FALSE; /* If true, the wizard omits creating a host volume in the course of the process of hidden volume creation. */
volatile BOOL bHiddenVolFinished = FALSE;
int hiddenVolHostDriveNo = -1; /* Drive letter for the volume intended to host a hidden volume. */
BOOL bRemovableHostDevice = FALSE; /* TRUE when creating a device/partition-hosted volume on a removable device. State undefined when creating file-hosted volumes. */
int realClusterSize; /* Parameter used when determining the maximum possible size of a hidden volume. */
int hash_algo = DEFAULT_HASH_ALGORITHM; /* Which PRF to use in header key derivation (PKCS #5) and in the RNG. */
unsigned __int64 nUIVolumeSize = 0; /* The volume size. Important: This value is not in bytes. It has to be multiplied by nMultiplier. Do not use this value when actually creating the volume (it may chop off sector size, if it is not a multiple of 1024 bytes). */
unsigned __int64 nVolumeSize = 0; /* The volume size, in bytes. */
unsigned __int64 nHiddenVolHostSize = 0; /* Size of the hidden volume host, in bytes */
__int64 nMaximumHiddenVolSize = 0; /* Maximum possible size of the hidden volume, in bytes */
__int64 nbrFreeClusters = 0;
__int64 nMultiplier = BYTES_PER_MB; /* Size selection multiplier. */
wchar_t szFileName[TC_MAX_PATH+1]; /* The file selected by the user */
wchar_t szDiskFile[TC_MAX_PATH+1]; /* Fully qualified name derived from szFileName */
@@ -204,135 +225,141 @@ volatile BOOL DiscardUnreadableEncryptedSectors = FALSE;
volatile BOOL bVolTransformThreadCancel = FALSE; /* TRUE if the user cancels/pauses volume encryption/format */
volatile BOOL bVolTransformThreadRunning = FALSE; /* Is the volume encryption/format thread running */
volatile BOOL bVolTransformThreadToRun = FALSE; /* TRUE if the Format/Encrypt button has been clicked and we are proceeding towards launching the thread. */
volatile BOOL bConfirmQuit = FALSE; /* If TRUE, the user is asked to confirm exit when he clicks the X icon, Exit, etc. */
volatile BOOL bConfirmQuitSysEncPretest = FALSE;
BOOL bDevice = FALSE; /* Is this a partition volume ? */
BOOL showKeys = FALSE;
volatile HWND hMasterKey = NULL; /* Text box showing hex dump of the master key */
volatile HWND hHeaderKey = NULL; /* Text box showing hex dump of the header key */
volatile HWND hRandPool = NULL; /* Text box showing hex dump of the random pool */
volatile HWND hRandPoolSys = NULL; /* Text box showing hex dump of the random pool for system encryption */
volatile HWND hPasswordInputField = NULL; /* Password input field */
volatile HWND hVerifyPasswordInputField = NULL; /* Verify-password input field */
HBITMAP hbmWizardBitmapRescaled = NULL;
wchar_t OrigKeyboardLayout [8+1] = L"00000409";
BOOL bKeyboardLayoutChanged = FALSE; /* TRUE if the keyboard layout was changed to the standard US keyboard layout (from any other layout). */
BOOL bKeybLayoutAltKeyWarningShown = FALSE; /* TRUE if the user has been informed that it is not possible to type characters by pressing keys while the right Alt key is held down. */
#ifndef _DEBUG
BOOL bWarnDeviceFormatAdvanced = TRUE;
#else
BOOL bWarnDeviceFormatAdvanced = FALSE;
#endif
BOOL bWarnOuterVolSuitableFileSys = TRUE;
Password volumePassword; /* User password */
Password outerVolumePassword; /* Outer volume user password */
char szVerify[MAX_PASSWORD + 1]; /* Tmp password buffer */
char szRawPassword[MAX_PASSWORD + 1]; /* Password before keyfile was applied to it */
+BOOL bNextButtonClicked = FALSE;
int volumePim = 0;
int outerVolumePim = 0;
BOOL bHistoryCmdLine = FALSE; /* History control is always disabled */
BOOL ComServerMode = FALSE;
Password CmdVolumePassword = {0}; /* Password passed from command line */
int CmdVolumeEA = 0;
int CmdVolumePkcs5 = 0;
int CmdVolumePim = 0;
int CmdVolumeFilesystem = FILESYS_NONE;
unsigned __int64 CmdVolumeFileSize = 0;
BOOL CmdSparseFileSwitch = FALSE;
BOOL CmdQuickFormat = FALSE;
BOOL CmdFastCreateFile = FALSE;
BOOL bForceOperation = FALSE;
BOOL bOperationSuccess = FALSE;
BOOL bGuiMode = TRUE;
BOOL bSystemIsGPT = FALSE;
KeyFile *FirstCmdKeyFile = NULL;
int nPbar = 0; /* Control ID of progress bar:- for format code */
wchar_t HeaderKeyGUIView [KEY_GUI_VIEW_SIZE];
wchar_t MasterKeyGUIView [KEY_GUI_VIEW_SIZE];
#define RANDPOOL_DISPLAY_COLUMNS 15
#define RANDPOOL_DISPLAY_ROWS 8
#define RANDPOOL_DISPLAY_BYTE_PORTION (RANDPOOL_DISPLAY_COLUMNS * RANDPOOL_DISPLAY_ROWS)
#define RANDPOOL_DISPLAY_SIZE (RANDPOOL_DISPLAY_BYTE_PORTION * 3 + RANDPOOL_DISPLAY_ROWS + 2)
unsigned char randPool [RANDPOOL_DISPLAY_BYTE_PORTION];
unsigned char lastRandPool [RANDPOOL_DISPLAY_BYTE_PORTION];
static unsigned char maskRandPool [RANDPOOL_DISPLAY_BYTE_PORTION];
static BOOL bUseMask = FALSE;
static DWORD mouseEntropyGathered = 0xFFFFFFFF;
static DWORD mouseEventsInitialCount = 0;
/* max value of entropy needed to fill all random pool = 8 * RNG_POOL_SIZE = 2560 bits */
static const DWORD maxEntropyLevel = RNG_POOL_SIZE * 8;
static HWND hEntropyBar = NULL;
wchar_t outRandPoolDispBuffer [RANDPOOL_DISPLAY_SIZE];
BOOL bDisplayPoolContents = TRUE;
volatile BOOL bSparseFileSwitch = FALSE;
volatile BOOL quickFormat = FALSE;
volatile BOOL fastCreateFile = FALSE;
volatile BOOL dynamicFormat = FALSE; /* this variable represents the sparse file flag. */
volatile int fileSystem = FILESYS_NONE;
volatile int clusterSize = 0;
SYSENC_MULTIBOOT_CFG SysEncMultiBootCfg;
wchar_t SysEncMultiBootCfgOutcome [4096] = {L'N',L'/',L'A',0};
volatile int NonSysInplaceEncStatus = NONSYS_INPLACE_ENC_STATUS_NONE;
LONGLONG nAvailableFreeSpace = -1;
BOOL bIsSparseFilesSupportedByHost = FALSE;
vector <HostDevice> DeferredNonSysInPlaceEncDevices;
+BOOL bChecklistA;
+BOOL bChecklistB;
+BOOL bChecklistC;
+BOOL bCheckboxPretest;
+
int iMaxPasswordLength = MAX_PASSWORD;
// specific definitions and implementation for support of resume operation
// in wait dialog mechanism
void CALLBACK ResumeInPlaceEncWaitThreadProc(void* pArg, HWND hwndDlg)
{
wchar_t szDevicePath[MAX_PATH] = {0};
RawDevicesDlgParam param;
param.devices = GetAvailableHostDevices (false, true, false);
param.pszFileName = szDevicePath;
DeferredNonSysInPlaceEncDevices.clear();
if ((IDOK == DialogBoxParamW (hInst,
MAKEINTRESOURCEW (IDD_RAWDEVICES_DLG), hwndDlg,
(DLGPROC) RawDevicesDlgProc, (LPARAM) &param)) && wcslen(szDevicePath))
{
foreach (const HostDevice &device, param.devices)
{
if (device.Path == szDevicePath)
{
OpenVolumeContext volume;
int status = OpenVolume (&volume, device.Path.c_str(), &volumePassword, hash_algo, volumePim, FALSE, FALSE, FALSE, TRUE);
if ( status == ERR_SUCCESS)
{
if ((volume.CryptoInfo->HeaderFlags & TC_HEADER_FLAG_NONSYS_INPLACE_ENC) != 0
&& volume.CryptoInfo->EncryptedAreaLength.Value != volume.CryptoInfo->VolumeSize.Value)
{
DeferredNonSysInPlaceEncDevices.push_back (device);
}
else if (volume.CryptoInfo->EncryptedAreaLength.Value == volume.CryptoInfo->VolumeSize.Value)
{
WCHAR szMsg[1024];
@@ -1387,153 +1414,75 @@ static BOOL ForceRemoveSysEnc (void)
e.Show (MainDlg);
return FALSE;
}
return TRUE;
}
else
return FALSE;
}
// Returns 0 if there's an error.
__int64 GetSystemPartitionSize (void)
{
try
{
return BootEncObj->GetSystemDriveConfiguration().SystemPartition.Info.PartitionLength.QuadPart;
}
catch (Exception &e)
{
e.Show (MainDlg);
return 0;
}
}
void ComboSelChangeEA (HWND hwndDlg)
{
int nIndex = (int) SendMessage (GetDlgItem (hwndDlg, IDC_COMBO_BOX), CB_GETCURSEL, 0, 0);
if (nIndex == CB_ERR)
{
SetWindowText (GetDlgItem (hwndDlg, IDC_BOX_HELP), L"");
}
else
{
wchar_t name[100];
- wchar_t auxLine[4096];
- wchar_t hyperLink[256] = { 0 };
- int cipherIDs[5];
- int i, cnt = 0;
nIndex = (int) SendMessage (GetDlgItem (hwndDlg, IDC_COMBO_BOX), CB_GETITEMDATA, nIndex, 0);
EAGetName (name, ARRAYSIZE(name),nIndex, 0);
- if (wcscmp (name, L"AES") == 0)
- {
- StringCbPrintfW (hyperLink, sizeof(hyperLink) / 2, GetString ("MORE_INFO_ABOUT"), name);
-
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("AES_HELP"));
- }
- else if (wcscmp (name, L"Serpent") == 0)
- {
- StringCbPrintfW (hyperLink, sizeof(hyperLink) / 2, GetString ("MORE_INFO_ABOUT"), name);
-
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("SERPENT_HELP"));
- }
- else if (wcscmp (name, L"Twofish") == 0)
- {
- StringCbPrintfW (hyperLink, sizeof(hyperLink) / 2, GetString ("MORE_INFO_ABOUT"), name);
-
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("TWOFISH_HELP"));
- }
- else if (wcscmp (name, L"Kuznyechik") == 0)
- {
- StringCbPrintfW (hyperLink, sizeof(hyperLink) / 2, GetString ("MORE_INFO_ABOUT"), name);
-
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("KUZNYECHIK_HELP"));
- }
- else if (wcscmp (name, L"Camellia") == 0)
- {
- StringCbPrintfW (hyperLink, sizeof(hyperLink) / 2, GetString ("MORE_INFO_ABOUT"), name);
-
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("CAMELLIA_HELP"));
- }
- else if (EAGetCipherCount (nIndex) > 1)
- {
- // Cascade
- cipherIDs[cnt++] = i = EAGetLastCipher(nIndex);
- while (i = EAGetPreviousCipher(nIndex, i))
- {
- cipherIDs[cnt] = i;
- cnt++;
- }
-
- switch (cnt) // Number of ciphers in the cascade
- {
- case 2:
- StringCbPrintfW (auxLine, sizeof(auxLine), GetString ("TWO_LAYER_CASCADE_HELP"),
- CipherGetName (cipherIDs[1]),
- CipherGetKeySize (cipherIDs[1])*8,
- CipherGetName (cipherIDs[0]),
- CipherGetKeySize (cipherIDs[0])*8);
- break;
-
- case 3:
- StringCbPrintfW (auxLine, sizeof(auxLine), GetString ("THREE_LAYER_CASCADE_HELP"),
- CipherGetName (cipherIDs[2]),
- CipherGetKeySize (cipherIDs[2])*8,
- CipherGetName (cipherIDs[1]),
- CipherGetKeySize (cipherIDs[1])*8,
- CipherGetName (cipherIDs[0]),
- CipherGetKeySize (cipherIDs[0])*8);
- break;
- }
-
- StringCbCopyW (hyperLink, sizeof(hyperLink), GetString ("IDC_LINK_MORE_INFO_ABOUT_CIPHER"));
-
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), auxLine);
- }
- else
- {
- // No info available for this encryption algorithm
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), L"");
- }
-
-
- // Update hyperlink
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_LINK_MORE_INFO_ABOUT_CIPHER), hyperLink);
- AccommodateTextField (hwndDlg, IDC_LINK_MORE_INFO_ABOUT_CIPHER, FALSE, hUserUnderlineFont);
+ SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("AES_HELP_NEW"));
}
}
static void VerifySizeAndUpdate (HWND hwndDlg, BOOL bUpdate)
{
BOOL bEnable = TRUE;
wchar_t szTmp[50];
__int64 lTmp;
__int64 i;
static unsigned __int64 nLastVolumeSize = 0;
GetWindowText (GetDlgItem (hwndDlg, IDC_SIZEBOX), szTmp, ARRAYSIZE (szTmp));
for (i = 0; i < (__int64) wcslen (szTmp); i++)
{
if (szTmp[i] >= L'0' && szTmp[i] <= L'9')
continue;
else
{
bEnable = FALSE;
break;
}
}
if (IsButtonChecked (GetDlgItem (hwndDlg, IDC_KB)))
nMultiplier = BYTES_PER_KB;
else if (IsButtonChecked (GetDlgItem (hwndDlg, IDC_MB)))
nMultiplier = BYTES_PER_MB;
else if (IsButtonChecked (GetDlgItem (hwndDlg, IDC_GB)))
nMultiplier = BYTES_PER_GB;
else
nMultiplier = BYTES_PER_TB;
if (bDevice && !(bHiddenVol && !bHiddenVolHost)) // If raw device but not a hidden volume
{
@@ -3744,130 +3693,178 @@ BOOL CALLBACK PageDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
PimValueChangedWarning = FALSE;
LocalizeDialog (hwndDlg, "IDD_VOL_CREATION_WIZARD_DLG");
burn (randPool, sizeof(randPool));
burn (lastRandPool, sizeof(lastRandPool));
burn (maskRandPool, sizeof (maskRandPool));
UpdateLastDialogId ();
switch (nCurPageNo)
{
case INTRO_PAGE:
SendMessage (GetDlgItem (hwndDlg, IDC_FILE_CONTAINER), WM_SETFONT, (WPARAM) hUserBoldFont, (LPARAM) TRUE);
SendMessage (GetDlgItem (hwndDlg, IDC_NONSYS_DEVICE), WM_SETFONT, (WPARAM) hUserBoldFont, (LPARAM) TRUE);
SendMessage (GetDlgItem (hwndDlg, IDC_SYS_DEVICE), WM_SETFONT, (WPARAM) hUserBoldFont, (LPARAM) TRUE);
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("INTRO_TITLE"));
ToHyperlink (hwndDlg, IDC_MORE_INFO_ON_CONTAINERS);
ToHyperlink (hwndDlg, IDC_MORE_INFO_ON_SYS_ENCRYPTION);
EnableWindow (GetDlgItem (hwndDlg, IDC_STD_VOL), TRUE);
EnableWindow (GetDlgItem (hwndDlg, IDC_HIDDEN_VOL), TRUE);
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDCANCEL), GetString ("CANCEL"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), FALSE);
UpdateWizardModeControls (hwndDlg, WizardMode);
break;
case SYSENC_TYPE_PAGE:
+ {
bHiddenVolHost = bHiddenVol = bHiddenOS;
- SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("SYSENC_TYPE_PAGE_TITLE"));
-
- SendMessage (GetDlgItem (hwndDlg, IDC_SYSENC_HIDDEN), WM_SETFONT, (WPARAM) hUserBoldFont, (LPARAM) TRUE);
- SendMessage (GetDlgItem (hwndDlg, IDC_SYSENC_NORMAL), WM_SETFONT, (WPARAM) hUserBoldFont, (LPARAM) TRUE);
+ wchar_t finalMsg[8024] = {0};
- DisableIfGpt(GetDlgItem(hwndDlg, IDC_SYSENC_HIDDEN));
+ try
+ {
+ StringCbPrintfW (finalMsg, sizeof(finalMsg),
+ GetString ("SYSENC_TYPE_PAGE_TITLE"),
+ GetSystemDriveLetter ());
+ }
+ catch (Exception &e)
+ {
+ e.Show (hwndDlg);
+ EndMainDlg (MainDlg);
+ return 0;
+ }
- CheckButton (GetDlgItem (hwndDlg, bHiddenOS ? IDC_SYSENC_HIDDEN : IDC_SYSENC_NORMAL));
+ SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), finalMsg);
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("SYSENC_HIDDEN_TYPE_HELP"));
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP_SYSENC_NORMAL), GetString ("SYSENC_NORMAL_TYPE_HELP"));
+ memset (finalMsg, 0, sizeof (finalMsg));
+ try
+ {
+ StringCbPrintfW (finalMsg, sizeof(finalMsg),
+ GetString ("SYSENC_INFO"),
+ GetSystemDriveLetter ());
+ }
+ catch (Exception &e)
+ {
+ e.Show (hwndDlg);
+ EndMainDlg (MainDlg);
+ return 0;
+ }
- ToHyperlink (hwndDlg, IDC_HIDDEN_SYSENC_INFO_LINK);
+ SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), finalMsg);
+ SetWindowTextW (GetDlgItem (hwndDlg, IDT_SYSENC_INFO_2), GetString ("SYSENC_INFO_2"));
+
+ if (bSystemIsGPT)
+ {
+ ShowWindow (GetDlgItem(hwndDlg, IDC_ADVANCE_INTRO), SW_HIDE);
+ ShowWindow (GetDlgItem(hwndDlg, IDC_INFORMATION_TIP), SW_HIDE);
+ }
+ else
+ {
+ EnableWindow (GetDlgItem(hwndDlg, IDC_ADVANCE_INTRO), TRUE);
+ iIconX = GetSystemMetrics (SM_CXSMICON);
+ iIconY = GetSystemMetrics (SM_CYSMICON);
+ hIconTooltip = LoadImage (NULL, MAKEINTRESOURCE (104), IMAGE_ICON, iIconX, iIconY, LR_DEFAULTCOLOR);
+ SendDlgItemMessage (hwndDlg, IDC_INFORMATION_TIP, STM_SETICON, (WPARAM) hIconTooltip, 0);
+
+ hDlgItemTooltip = GetDlgItem (hwndDlg, IDC_INFORMATION_TIP);
+ if (hDlgItemTooltip)
+ {
+ CreateToolTip (hwndDlg, hDlgItemTooltip, GetString ("ADV_FEATURES_INTRO_TOOLTIP"));
+ }
+ else
+ {
+ MessageBox (0, TEXT("Cannot find dialog item"), 0, 0);
+ }
+ }
+
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), !bDirectSysEncMode);
SetWindowTextW (GetDlgItem (MainDlg, IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (MainDlg, IDC_PREV), GetString ("PREV"));
SetWindowTextW (GetDlgItem (MainDlg, IDCANCEL), GetString ("CANCEL"));
+
+ // Start loading the password dictonary into memory ("need" is just a random word for initializing the process)
+ CheckWord("need");
break;
-
+ }
case SYSENC_HIDDEN_OS_REQ_CHECK_PAGE:
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("SYSENC_HIDDEN_OS_REQ_CHECK_PAGE_TITLE"));
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("SYSENC_HIDDEN_OS_REQ_CHECK_PAGE_HELP"));
SetWindowTextW (GetDlgItem (MainDlg, IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (MainDlg, IDC_PREV), GetString ("PREV"));
SetWindowTextW (GetDlgItem (MainDlg, IDCANCEL), GetString ("CANCEL"));
EnableWindow (GetDlgItem (MainDlg, IDC_NEXT), TRUE);
EnableWindow (GetDlgItem (MainDlg, IDC_PREV), bDirectSysEncModeCommand != SYSENC_COMMAND_CREATE_HIDDEN_OS && bDirectSysEncModeCommand != SYSENC_COMMAND_CREATE_HIDDEN_OS_ELEV);
ToHyperlink (hwndDlg, IDC_HIDDEN_SYSENC_INFO_LINK);
break;
case SYSENC_SPAN_PAGE:
SendMessage (GetDlgItem (hwndDlg, IDC_WHOLE_SYS_DRIVE), WM_SETFONT, (WPARAM) hUserBoldFont, (LPARAM) TRUE);
SendMessage (GetDlgItem (hwndDlg, IDC_SYS_PARTITION), WM_SETFONT, (WPARAM) hUserBoldFont, (LPARAM) TRUE);
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("SYS_ENCRYPTION_SPAN_TITLE"));
SetWindowTextW (GetDlgItem (hwndDlg, IDT_WHOLE_SYS_DRIVE), GetString ("SYS_ENCRYPTION_SPAN_WHOLE_SYS_DRIVE_HELP"));
CheckButton (GetDlgItem (hwndDlg, bWholeSysDrive ? IDC_WHOLE_SYS_DRIVE : IDC_SYS_PARTITION));
DisableIfGpt(GetDlgItem(hwndDlg, IDC_WHOLE_SYS_DRIVE));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDCANCEL), GetString ("CANCEL"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
break;
-
case SYSENC_PRE_DRIVE_ANALYSIS_PAGE:
Init2RadButtonPageYesNo (SysEncDetectHiddenSectors);
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("SYSENC_PRE_DRIVE_ANALYSIS_TITLE"));
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("SYSENC_PRE_DRIVE_ANALYSIS_HELP"));
break;
case SYSENC_DRIVE_ANALYSIS_PAGE:
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("SYSENC_DRIVE_ANALYSIS_TITLE"));
SetWindowTextW (GetDlgItem (hwndDlg, IDT_SYSENC_DRIVE_ANALYSIS_INFO), GetString ("SYSENC_DRIVE_ANALYSIS_INFO"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDCANCEL), GetString ("CANCEL"));
EnableWindow (GetDlgItem (MainDlg, IDC_NEXT), FALSE);
EnableWindow (GetDlgItem (MainDlg, IDC_PREV), FALSE);
EnableWindow (GetDlgItem (MainDlg, IDCANCEL), FALSE);
LoadSettings (hwndDlg);
if (HiddenSectorDetectionStatus == 1)
{
// Detection of hidden sectors was already in progress but it did not finish successfully.
// Ask the user if he wants to try again (to prevent repeated system freezing, etc.)
char *tmpStr[] = {0, "HIDDEN_SECTOR_DETECTION_FAILED_PREVIOUSLY", "SKIP_HIDDEN_SECTOR_DETECTION", "RETRY_HIDDEN_SECTOR_DETECTION", "IDC_EXIT", 0};
switch (AskMultiChoice ((void **) tmpStr, FALSE, MainDlg))
{
case 1:
// Do not try again
LoadPage (MainDlg, SYSENC_DRIVE_ANALYSIS_PAGE + 1);
return 0;
case 2:
@@ -4331,155 +4328,197 @@ BOOL CALLBACK PageDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
hPasswordInputField = GetDlgItem (hwndDlg, IDC_PASSWORD_DIRECT);
hVerifyPasswordInputField = NULL;
ToNormalPwdField (hwndDlg, IDC_PASSWORD_DIRECT);
SetPassword (hwndDlg, IDC_PASSWORD_DIRECT, szRawPassword);
SetFocus (GetDlgItem (hwndDlg, IDC_PASSWORD_DIRECT));
SendMessage (GetDlgItem (hwndDlg, IDC_PIM), EM_LIMITTEXT, MAX_PIM, 0);
SetPim (hwndDlg, IDC_PIM, volumePim);
ShowWindow (GetDlgItem( hwndDlg, IDC_PIM_ENABLE), PimEnable? SW_HIDE : SW_SHOW);
ShowWindow (GetDlgItem( hwndDlg, IDT_PIM), PimEnable? SW_SHOW : SW_HIDE);
ShowWindow (GetDlgItem( hwndDlg, IDC_PIM), PimEnable? SW_SHOW : SW_HIDE);
ShowWindow (GetDlgItem( hwndDlg, IDC_PIM_HELP), PimEnable? SW_SHOW : SW_HIDE);
SetCheckBox (hwndDlg, IDC_KEYFILES_ENABLE, KeyFilesEnable);
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString (bInPlaceEncNonSys ? (bInPlaceEncNonSysResumed ? "NONSYS_INPLACE_ENC_RESUME_PASSWORD_PAGE_HELP" : "NONSYS_INPLACE_DEC_PASSWORD_PAGE_HELP") : "PASSWORD_HIDDENVOL_HOST_DIRECT_HELP"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString (bInPlaceEncNonSys ? "PASSWORD" : "PASSWORD_HIDVOL_HOST_TITLE"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), !bInPlaceEncNonSys);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
}
break;
case PASSWORD_PAGE:
{
wchar_t str[1000];
+ EnableWindow(GetDlgItem(hwndDlg, IDC_VERIFY), FALSE);
+
hPasswordInputField = GetDlgItem (hwndDlg, IDC_PASSWORD);
hVerifyPasswordInputField = GetDlgItem (hwndDlg, IDC_VERIFY);
ToNormalPwdField (hwndDlg, IDC_PASSWORD);
ToNormalPwdField (hwndDlg, IDC_VERIFY);
if (SysEncInEffect ())
{
ToBootPwdField (hwndDlg, IDC_PASSWORD);
ToBootPwdField (hwndDlg, IDC_VERIFY);
- StringCbPrintfW (OrigKeyboardLayout, sizeof(OrigKeyboardLayout), L"%08X", (DWORD) GetKeyboardLayout (NULL) & 0xFFFF);
+ StringCbPrintfW(OrigKeyboardLayout, sizeof(OrigKeyboardLayout), L"%08X", (DWORD)GetKeyboardLayout(NULL) & 0xFFFF);
- if ((DWORD) GetKeyboardLayout (NULL) != 0x00000409 && (DWORD) GetKeyboardLayout (NULL) != 0x04090409)
+ if ((DWORD)GetKeyboardLayout(NULL) != 0x00000409 && (DWORD)GetKeyboardLayout(NULL) != 0x04090409)
{
- DWORD keybLayout = (DWORD) LoadKeyboardLayout (L"00000409", KLF_ACTIVATE);
+ DWORD keybLayout = (DWORD)LoadKeyboardLayout(L"00000409", KLF_ACTIVATE);
if (keybLayout != 0x00000409 && keybLayout != 0x04090409)
{
- Error ("CANT_CHANGE_KEYB_LAYOUT_FOR_SYS_ENCRYPTION", MainDlg);
- EndMainDlg (MainDlg);
+ Error("CANT_CHANGE_KEYB_LAYOUT_FOR_SYS_ENCRYPTION", MainDlg);
+ EndMainDlg(MainDlg);
return 1;
}
bKeyboardLayoutChanged = TRUE;
}
-
if (SetTimer (MainDlg, TIMER_ID_KEYB_LAYOUT_GUARD, TIMER_INTERVAL_KEYB_LAYOUT_GUARD, NULL) == 0)
{
Error ("CANNOT_SET_TIMER", MainDlg);
EndMainDlg (MainDlg);
return 1;
}
+
+ ShowWindow(GetDlgItem(hwndDlg, IDC_KEYFILES_ENABLE), SW_HIDE);
+ ShowWindow(GetDlgItem(hwndDlg, IDC_KEY_FILES), SW_HIDE);
+ ShowWindow(GetDlgItem(hwndDlg, IDC_PIM_ENABLE), SW_HIDE);
+
+ ShowWindow(GetDlgItem(hwndDlg, IDC_ADVANCE), SW_SHOW);
+ }
+ else
+ {
+ SetCheckBox (hwndDlg, IDC_PIM_ENABLE, PimEnable);
+
+ SetCheckBox (hwndDlg, IDC_KEYFILES_ENABLE, KeyFilesEnable && !SysEncInEffect());
+ EnableWindow (GetDlgItem (hwndDlg, IDC_KEY_FILES), KeyFilesEnable && !SysEncInEffect());
+ EnableWindow (GetDlgItem (hwndDlg, IDC_KEYFILES_ENABLE), !SysEncInEffect());
}
if (bHiddenVolHost)
{
StringCbCopyW (str, sizeof(str), GetString (bHiddenOS ? "PASSWORD_SYSENC_OUTERVOL_HELP" : "PASSWORD_HIDDENVOL_HOST_HELP"));
}
else if (bHiddenVol)
{
StringCbPrintfW (str, sizeof str, L"%s%s",
GetString (bHiddenOS ? "PASSWORD_HIDDEN_OS_HELP" : "PASSWORD_HIDDENVOL_HELP"),
GetString ("PASSWORD_HELP"));
}
else
{
- StringCbCopyW (str, sizeof(str), GetString ("PASSWORD_HELP"));
+ StringCbCopyW (str, sizeof(str), GetString ("PASSWORD_HELP_SYSENC"));
}
- SetPassword (hwndDlg, IDC_PASSWORD, szRawPassword);
- SetPassword (hwndDlg, IDC_VERIFY, szVerify);
+ SetPassword(hwndDlg, IDC_PASSWORD, szRawPassword);
+ SetPassword(hwndDlg, IDC_VERIFY, szVerify);
SetFocus (GetDlgItem (hwndDlg, IDC_PASSWORD));
- SetCheckBox (hwndDlg, IDC_PIM_ENABLE, PimEnable);
-
- SetCheckBox (hwndDlg, IDC_KEYFILES_ENABLE, KeyFilesEnable && !SysEncInEffect());
- EnableWindow (GetDlgItem (hwndDlg, IDC_KEY_FILES), KeyFilesEnable && !SysEncInEffect());
- EnableWindow (GetDlgItem (hwndDlg, IDC_KEYFILES_ENABLE), !SysEncInEffect());
-
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), str);
if (CreatingHiddenSysVol())
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("PASSWORD_HIDDEN_OS_TITLE"));
else if (bHiddenVol)
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString (bHiddenVolHost ? "PASSWORD_HIDVOL_HOST_TITLE" : "PASSWORD_HIDVOL_TITLE"));
else if (WizardMode == WIZARD_MODE_SYS_DEVICE)
- SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("PASSWORD"));
+ SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("CHOOSE_PASSWORD_TITLE"));
else
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("PASSWORD_TITLE"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
VerifyPasswordAndUpdate (hwndDlg, GetDlgItem (GetParent (hwndDlg), IDC_NEXT),
GetDlgItem (hwndDlg, IDC_PASSWORD),
GetDlgItem (hwndDlg, IDC_VERIFY),
NULL,
NULL,
KeyFilesEnable && FirstKeyFile!=NULL && !SysEncInEffect());
volumePassword.Length = (unsigned __int32) strlen ((char *) volumePassword.Text);
+
+ if(SysEncInEffect ())
+ {
+ /* Random pool parameter is here because random page is removed */
+
+ mouseEntropyGathered = 0xFFFFFFFF;
+ mouseEventsInitialCount = 0;
+ bUseMask = FALSE;
+
+ {
+ HCRYPTPROV hRngProv;
+ if (CryptAcquireContext (&hRngProv, NULL, MS_ENHANCED_PROV, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT | CRYPT_SILENT))
+ {
+ if (CryptGenRandom (hRngProv, sizeof (maskRandPool), maskRandPool))
+ bUseMask = TRUE;
+ CryptReleaseContext (hRngProv, 0);
+ }
+ }
+
+ SetTimer(GetParent(hwndDlg), TIMER_ID_RANDVIEW, TIMER_INTERVAL_RANDVIEW, NULL);
+ hRandPoolSys = GetDlgItem(hwndDlg, IDC_SYS_POOL_CONTENTS);
+ hEntropyBar = GetDlgItem(hwndDlg, IDC_ENTROPY_BAR);
+ SendMessage(hEntropyBar, PBM_SETRANGE32, 0, maxEntropyLevel);
+ SendMessage(hEntropyBar, PBM_SETSTEP, 1, 0);
+ SendMessage(GetDlgItem(hwndDlg, IDC_SYS_POOL_CONTENTS), WM_SETFONT, (WPARAM)hFixedDigitFont, (LPARAM)TRUE);
+
+ /* set default values */
+
+ hash_algo = bSystemIsGPT ? SHA512 : DEFAULT_HASH_ALGORITHM_BOOT;
+ RandSetHashFunction(hash_algo);
+
+ nWipeMode = TC_WIPE_NONE;
+ }
}
break;
case PIM_PAGE:
{
SendMessage (GetDlgItem (hwndDlg, IDC_PIM), EM_LIMITTEXT, SysEncInEffect()? MAX_BOOT_PIM: MAX_PIM, 0);
if (volumePim > 0)
{
SetPim (hwndDlg, IDC_PIM, volumePim);
PimValueChangedWarning = TRUE;
SetDlgItemTextW (hwndDlg, IDC_PIM_HELP, GetString (SysEncInEffect ()? "PIM_SYSENC_CHANGE_WARNING" : "PIM_CHANGE_WARNING"));
}
SetFocus (GetDlgItem (hwndDlg, IDC_PIM));
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString (SysEncInEffect () && hash_algo != SHA512 && hash_algo != WHIRLPOOL? "PIM_SYSENC_HELP" : "PIM_HELP"));
ToHyperlink (hwndDlg, IDC_LINK_PIM_INFO);
if (CreatingHiddenSysVol())
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("PIM_HIDDEN_OS_TITLE"));
else if (bHiddenVol)
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString (bHiddenVolHost ? "PIM_HIDVOL_HOST_TITLE" : "PIM_HIDVOL_TITLE"));
else if (WizardMode == WIZARD_MODE_SYS_DEVICE)
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("PIM"));
else
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("PIM_TITLE"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
}
@@ -4545,273 +4584,333 @@ BOOL CALLBACK PageDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
SendMessage (GetDlgItem (hwndDlg, IDC_SYS_POOL_CONTENTS), WM_SETFONT, (WPARAM) hFixedDigitFont, (LPARAM) TRUE);
SendMessage (GetDlgItem (hwndDlg, IDC_DISPLAY_POOL_CONTENTS), BM_SETCHECK, showKeys ? BST_CHECKED : BST_UNCHECKED, 0);
DisplayRandPool (hwndDlg, hRandPoolSys, showKeys);
break;
case SYSENC_KEYS_GEN_PAGE:
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("KEYS_GEN_TITLE"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
hMasterKey = GetDlgItem (hwndDlg, IDC_DISK_KEY);
hHeaderKey = GetDlgItem (hwndDlg, IDC_HEADER_KEY);
SendMessage (GetDlgItem (hwndDlg, IDC_DISK_KEY), WM_SETFONT, (WPARAM) hFixedDigitFont, (LPARAM) TRUE);
SendMessage (GetDlgItem (hwndDlg, IDC_HEADER_KEY), WM_SETFONT, (WPARAM) hFixedDigitFont, (LPARAM) TRUE);
SendMessage (GetDlgItem (hwndDlg, IDC_DISPLAY_KEYS), BM_SETCHECK, showKeys ? BST_CHECKED : BST_UNCHECKED, 0);
DisplayPortionsOfKeys (hHeaderKey, hMasterKey, HeaderKeyGUIView, MasterKeyGUIView, !showKeys);
break;
case SYSENC_RESCUE_DISK_CREATION_PAGE:
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("RESCUE_DISK"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
SetWindowTextW (GetDlgItem (hwndDlg, IDT_RESCUE_DISK_INFO), bSystemIsGPT? GetString ("RESCUE_DISK_EFI_INFO"): GetString ("RESCUE_DISK_INFO"));
+ SetWindowTextW(GetDlgItem(hwndDlg, IDT_RESCUE_DISK_INFO_2), GetString("RESCUE_DISK_INFO_2"));
+
SetCheckBox (hwndDlg, IDC_SKIP_RESCUE_VERIFICATION, bDontVerifyRescueDisk);
SetDlgItemText (hwndDlg, IDC_RESCUE_DISK_ISO_PATH, szRescueDiskISO);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), (GetWindowTextLength (GetDlgItem (hwndDlg, IDC_RESCUE_DISK_ISO_PATH)) > 1));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
break;
case SYSENC_RESCUE_DISK_BURN_PAGE:
{
wchar_t szTmp[8192];
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString (bDontVerifyRescueDisk ? "RESCUE_DISK_CREATED_TITLE" : "RESCUE_DISK_RECORDING_TITLE"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
if (bSystemIsGPT)
{
StringCbPrintfW (szTmp, sizeof szTmp,
GetString (bDontVerifyRescueDisk ? "RESCUE_DISK_EFI_EXTRACT_INFO_NO_CHECK" : "RESCUE_DISK_EFI_EXTRACT_INFO"),
szRescueDiskISO, GetString ("RESCUE_DISK_EFI_EXTRACT_INFO_NOTE"));
}
else
{
StringCbPrintfW (szTmp, sizeof szTmp,
GetString (bDontVerifyRescueDisk ? "RESCUE_DISK_BURN_INFO_NO_CHECK" : "RESCUE_DISK_BURN_INFO"),
szRescueDiskISO, IsWindowsIsoBurnerAvailable() ? L"" : GetString ("RESCUE_DISK_BURN_INFO_NONWIN_ISO_BURNER"));
}
SetWindowTextW (GetDlgItem (hwndDlg, IDT_RESCUE_DISK_BURN_INFO), szTmp);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
- /* The 'Back' button must be disabled now because the user could burn a Rescue Disk, then go back, and
- generate a different master key, which would cause the Rescue Disk verification to fail (the result
- would be confusion and bug reports). */
- EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), FALSE);
-
- if (bSystemIsGPT)
- {
- ShowWindow (GetDlgItem (hwndDlg, IDC_DOWNLOAD_CD_BURN_SOFTWARE), SW_HIDE);
- }
- else
- {
- if (IsWindowsIsoBurnerAvailable())
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_DOWNLOAD_CD_BURN_SOFTWARE), GetString ("LAUNCH_WIN_ISOBURN"));
-
- ToHyperlink (hwndDlg, IDC_DOWNLOAD_CD_BURN_SOFTWARE);
-
- if (IsWindowsIsoBurnerAvailable() && !bDontVerifyRescueDisk)
- LaunchWindowsIsoBurner (hwndDlg, szRescueDiskISO);
- }
+ /* The 'Back' button is enabled but user can't go back, instead warning is provided */
+ EnableWindow(GetDlgItem(GetParent(hwndDlg), IDC_PREV), TRUE);
+
}
break;
case SYSENC_RESCUE_DISK_VERIFIED_PAGE:
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("RESCUE_DISK_DISK_VERIFIED_TITLE"));
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("RESCUE_DISK_VERIFIED_INFO"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
// Rescue Disk has been verified, no need to go back
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), FALSE);
// Prevent losing the burned rescue disk by inadvertent exit
bConfirmQuit = TRUE;
break;
case SYSENC_WIPE_MODE_PAGE:
case NONSYS_INPLACE_ENC_WIPE_MODE_PAGE:
{
- if (nWipeMode == TC_WIPE_1_RAND)
- nWipeMode = TC_WIPE_NONE;
-
- SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("WIPE_MODE_TITLE"));
- SetWindowTextW (GetDlgItem (hwndDlg, IDT_WIPE_MODE_INFO), GetString ("INPLACE_ENC_WIPE_MODE_INFO"));
-
- PopulateWipeModeCombo (GetDlgItem (hwndDlg, IDC_WIPE_MODE),
- SystemEncryptionStatus == SYSENC_STATUS_DECRYPTING && !bInPlaceEncNonSys,
- TRUE,
- FALSE);
+ if (SysEncInEffect ())
+ {
+ /* Wipe mode page is now checklist page */
+ ShowWindow (GetDlgItem (hwndDlg, IDC_WIPE_MODE), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDT_WIPE_MODE), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDT_WIPE_MODE_INFO), SW_HIDE);
+
+ SetWindowTextW (GetDlgItem (hwndDlg, IDC_REMEMBER_PASSWORD), GetString ("REMEMBER_PASSWORD"));
+ SetWindowTextW (GetDlgItem (hwndDlg, IDC_STORE_RESCUE_DISK), GetString ("STORE_RESCUE_DISK"));
+ SetWindowTextW (GetDlgItem (hwndDlg, IDC_BACKUP_DATA), GetString ("BACKUP_DATA"));
+
+ SendMessage(GetDlgItem(hwndDlg, IDC_REMEMBER_PASSWORD), WM_SETFONT, (WPARAM)hUserBoldFont, (LPARAM)TRUE);
+ SendMessage(GetDlgItem(hwndDlg, IDC_STORE_RESCUE_DISK), WM_SETFONT, (WPARAM)hUserBoldFont, (LPARAM)TRUE);
+ SendMessage(GetDlgItem(hwndDlg, IDC_BACKUP_DATA), WM_SETFONT, (WPARAM)hUserBoldFont, (LPARAM)TRUE);
+
+ bChecklistA = FALSE;
+ bChecklistB = FALSE;
+ bChecklistC = FALSE;
+
+ SetWindowTextW(GetDlgItem(GetParent(hwndDlg), IDC_BOX_TITLE), GetString("CHECKLIST_TITLE"));
+
+ SetDlgItemText(hwndDlg, IDC_BROWSE, GetString ("OPEN_PATH_CHECKLIST_PAGE"));
+ SetWindowTextW (GetDlgItem (hwndDlg, IDT_STORE_RESCUE_DISK), GetString ("RESCUE_DISK_CHECKLIST_B"));
+ SetWindowTextW (GetDlgItem (hwndDlg, IDT_REMEMBER_PASSWORD), GetString ("RESCUE_DISK_CHECKLIST_A"));
+ SetWindowTextW (GetDlgItem (hwndDlg, IDT_BACKUP_DATA), GetString ("RESCUE_DISK_CHECKLIST_C"));
+
+ EnableWindow(GetDlgItem(hwndDlg, IDC_REMEMBER_PASSWORD), TRUE);
+ EnableWindow(GetDlgItem(hwndDlg, IDC_STORE_RESCUE_DISK), TRUE);
+ EnableWindow(GetDlgItem(hwndDlg, IDC_BACKUP_DATA), TRUE);
+
+ SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
+
+ SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), FALSE);
+ }
+ else
+ {
+ /* Hide elements from Checklist page and show Wipe mode page */
+ ShowWindow (GetDlgItem (hwndDlg, IDC_CHECKLIST_A), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDC_CHECKLIST_B), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDC_CHECKLIST_C), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDC_STORE_RESCUE_DISK), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDC_REMEMBER_PASSWORD), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDC_BACKUP_DATA), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDT_REMEMBER_PASSWORD), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDT_STORE_RESCUE_DISK), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDT_BACKUP_DATA), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDC_BROWSE), SW_HIDE);
+ ShowWindow (GetDlgItem (hwndDlg, IDC_RESCUE_DISK_ISO_PATH), SW_HIDE);
+
+ if (nWipeMode == TC_WIPE_1_RAND)
+ nWipeMode = TC_WIPE_NONE;
+
+ SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("WIPE_MODE_TITLE"));
+ SetWindowTextW (GetDlgItem (hwndDlg, IDT_WIPE_MODE_INFO), GetString ("INPLACE_ENC_WIPE_MODE_INFO"));
+
+ PopulateWipeModeCombo (GetDlgItem (hwndDlg, IDC_WIPE_MODE),
+ SystemEncryptionStatus == SYSENC_STATUS_DECRYPTING && !bInPlaceEncNonSys,
+ TRUE,
+ FALSE);
- SelectAlgo (GetDlgItem (hwndDlg, IDC_WIPE_MODE), (int *) &nWipeMode);
+ SelectAlgo (GetDlgItem (hwndDlg, IDC_WIPE_MODE), (int *) &nWipeMode);
- SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
+ SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("NEXT"));
- SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
- EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
- EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
+ SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
+ }
}
break;
case SYSENC_PRETEST_INFO_PAGE:
if (bHiddenOS)
{
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("HIDDEN_OS_CREATION_PREINFO_TITLE"));
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("HIDDEN_OS_CREATION_PREINFO_HELP"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("START"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), FALSE);
}
else
{
wchar_t finalMsg[8024] = {0};
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("SYS_ENCRYPTION_PRETEST_TITLE"));
try
{
StringCbPrintfW (finalMsg, sizeof(finalMsg),
GetString ("SYS_ENCRYPTION_PRETEST_INFO"),
- BootEncObj->GetSystemDriveConfiguration().DriveNumber);
+ GetSystemDriveLetter ());
}
catch (Exception &e)
{
e.Show (hwndDlg);
EndMainDlg (MainDlg);
return 0;
}
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), finalMsg);
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("TEST"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
}
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
break;
case SYSENC_PRETEST_RESULT_PAGE:
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("SYS_ENCRYPTION_PRETEST_RESULT_TITLE"));
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("SYS_ENCRYPTION_PRETEST_RESULT_INFO"));
+ ShowWindow (GetDlgItem (hwndDlg, IDC_CHECKBOX_PRETEST), SW_SHOW);
+ SetWindowTextW (GetDlgItem (hwndDlg, IDC_CHECKBOX_PRETEST), GetString ("PRETEST_CHECKBOX"));
+
+ bCheckboxPretest = FALSE;
+
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("ENCRYPT"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDCANCEL), GetString ("DEFER"));
- EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
- EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), FALSE);
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), FALSE);
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDCANCEL), TRUE);
+ HWND hTooltip;
+ hTooltip = GetDlgItem (GetParent (hwndDlg), IDC_PREV);
+ if (hTooltip)
+ {
+ CreateToolTip (hwndDlg, hTooltip, GetString ("PRETEST_BACK_BUTTON"));
+ }
+ else
+ {
+ MessageBox (0, TEXT ("Cannot find dialog item for tooltip!"), 0, 0);
+ }
+
break;
case SYSENC_ENCRYPTION_PAGE:
if (CreateSysEncMutex ())
{
try
{
BootEncStatus = BootEncObj->GetStatus();
bSystemEncryptionInProgress = BootEncStatus.SetupInProgress;
}
catch (Exception &e)
{
e.Show (hwndDlg);
Error ("ERR_GETTING_SYSTEM_ENCRYPTION_STATUS", MainDlg);
EndMainDlg (MainDlg);
return 0;
}
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE),
GetString (SystemEncryptionStatus != SYSENC_STATUS_DECRYPTING ? "ENCRYPTION" : "DECRYPTION"));
-
- SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("SYSENC_ENCRYPTION_PAGE_INFO"));
+
+ SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP),
+ GetString (SystemEncryptionStatus != SYSENC_STATUS_DECRYPTING ? "SYSENC_ENCRYPTION_PAGE_INFO" : "SYSENC_DECRYPTION_PAGE_INFO"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDCANCEL), GetString ("DEFER"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_PREV), GetString ("PREV"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT),
GetString (SystemEncryptionStatus != SYSENC_STATUS_DECRYPTING ? "ENCRYPT" : "DECRYPT"));
SetWindowTextW (GetDlgItem (hwndDlg, IDC_PAUSE),
GetString (bSystemEncryptionInProgress ? "IDC_PAUSE" : "RESUME"));
EnableWindow (GetDlgItem (hwndDlg, IDC_PAUSE), BootEncStatus.DriveEncrypted);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), FALSE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), !BootEncStatus.SetupInProgress);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDCANCEL), TRUE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDHELP), TRUE);
- ToHyperlink (hwndDlg, IDC_MORE_INFO_SYS_ENCRYPTION);
-
if (SystemEncryptionStatus == SYSENC_STATUS_DECRYPTING)
{
nWipeMode = TC_WIPE_NONE;
EnableWindow (GetDlgItem (hwndDlg, IDC_WIPE_MODE), FALSE);
EnableWindow (GetDlgItem (hwndDlg, IDT_WIPE_MODE), FALSE);
PopulateWipeModeCombo (GetDlgItem (hwndDlg, IDC_WIPE_MODE), TRUE, TRUE, FALSE);
SelectAlgo (GetDlgItem (hwndDlg, IDC_WIPE_MODE), (int *) &nWipeMode);
}
else
{
EnableWindow (GetDlgItem (hwndDlg, IDC_WIPE_MODE), !bSystemEncryptionInProgress);
PopulateWipeModeCombo (GetDlgItem (hwndDlg, IDC_WIPE_MODE), FALSE, TRUE, FALSE);
SelectAlgo (GetDlgItem (hwndDlg, IDC_WIPE_MODE), (int *) &nWipeMode);
}
+ if (nWipeMode == TC_WIPE_NONE)
+ {
+ ShowWindow (GetDlgItem(hwndDlg, IDC_WIPE_MODE), SW_HIDE);
+ ShowWindow (GetDlgItem(hwndDlg, IDT_FORMAT_OPTIONS), SW_HIDE);
+ ShowWindow (GetDlgItem(hwndDlg, IDT_WIPE_MODE), SW_HIDE);
+ }
+
PostMessage (hwndDlg, TC_APPMSG_PERFORM_POST_SYSENC_WMINIT_TASKS, 0, 0);
}
else
{
Error ("SYSTEM_ENCRYPTION_IN_PROGRESS_ELSEWHERE", MainDlg);
EndMainDlg (MainDlg);
return 0;
}
return 0;
case NONSYS_INPLACE_ENC_RESUME_PARTITION_SEL_PAGE:
{
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("FILE_TITLE"));
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("NONSYS_INPLACE_ENC_RESUME_VOL_SELECT_HELP"));
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), FALSE);
foreach (const HostDevice &device, DeferredNonSysInPlaceEncDevices)
{
SendMessage (GetDlgItem (hwndDlg, IDC_LIST_BOX), LB_ADDSTRING, 0, (LPARAM) device.Path.c_str());
}
// Deselect all
SendMessage (GetDlgItem (hwndDlg, IDC_LIST_BOX), LB_SETCURSEL, (WPARAM) -1, 0);
}
break;
case NONSYS_INPLACE_ENC_TRANSFORM_PAGE:
if (bInPlaceEncNonSysResumed)
{
WipeAlgorithmId savedWipeAlgorithm = TC_WIPE_NONE;
@@ -5237,132 +5336,180 @@ BOOL CALLBACK PageDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
if (bHiddenOS && IsHiddenOSRunning())
{
// Decoy system partition wipe
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("DEVICE_WIPE_PAGE_INFO_HIDDEN_OS"));
}
else
{
// Regular device wipe (not decoy system partition wipe)
SetWindowTextW (GetDlgItem (hwndDlg, IDC_BOX_HELP), GetString ("DEVICE_WIPE_PAGE_INFO"));
}
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_BOX_TITLE), GetString ("DEVICE_WIPE_PAGE_TITLE"));
SetWindowTextW (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), GetString ("WIPE"));
SetWindowTextW (GetDlgItem (hCurPage, IDC_WIPE_MODE), (wstring (L" ") + GetWipeModeName (nWipeMode)).c_str());
EnableWindow (GetDlgItem (hwndDlg, IDC_ABORT_BUTTON), FALSE);
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_PREV), TRUE);
break;
}
return 0;
case WM_HELP:
OpenPageHelp (GetParent (hwndDlg), nCurPageNo);
return 1;
case TC_APPMSG_PERFORM_POST_SYSENC_WMINIT_TASKS:
AfterSysEncProgressWMInitTasks (hwndDlg);
return 1;
case WM_CTLCOLORSTATIC:
{
+ if ((HWND)lParam == GetDlgItem (hwndDlg, PASSWORD_METER) && iPasswordStrength == 1)
+ {
+ // we're about to draw the static
+ // set the text colour in (HDC)lParam
+ SetBkMode ((HDC)wParam, TRANSPARENT);
+ SetTextColor ((HDC)wParam, RGB(255, 0, 0)); // password weak red
+ return (BOOL)GetSysColorBrush(COLOR_MENU);
+ }
+
+ if ((HWND)lParam == GetDlgItem (hwndDlg, PASSWORD_METER) && iPasswordStrength == 2)
+ {
+ // we're about to draw the static
+ // set the text colour in (HDC)lParam
+ SetBkMode ((HDC)wParam, TRANSPARENT);
+ SetTextColor ((HDC)wParam, RGB (255, 165, 0)); // password medium orange
+ return (BOOL) GetSysColorBrush (COLOR_MENU);
+ }
+
+ if ((HWND)lParam == GetDlgItem (hwndDlg, PASSWORD_METER) && iPasswordStrength == 3)
+ {
+ SetBkMode ((HDC)wParam, TRANSPARENT);
+ SetTextColor ((HDC)wParam, RGB (218, 218, 0)); // password strong yellow
+ return (BOOL) GetSysColorBrush (COLOR_MENU);
+ }
+
+ if ((HWND)lParam == GetDlgItem (hwndDlg, PASSWORD_METER) && iPasswordStrength == 4)
+ {
+ SetBkMode((HDC)wParam, TRANSPARENT);
+ SetTextColor((HDC)wParam, RGB(50, 205, 50)); // password very strong green
+ return (BOOL) GetSysColorBrush (COLOR_MENU);
+ }
+
if (PimValueChangedWarning && ((HWND)lParam == GetDlgItem(hwndDlg, IDC_PIM_HELP)) )
{
// we're about to draw the static
// set the text colour in (HDC)lParam
SetBkMode((HDC)wParam,TRANSPARENT);
SetTextColor((HDC)wParam, RGB(255,0,0));
// NOTE: per documentation as pointed out by selbie, GetSolidBrush would leak a GDI handle.
return (BOOL)GetSysColorBrush(COLOR_MENU);
}
}
return 0;
case WM_COMMAND:
if (nCurPageNo == INTRO_PAGE)
{
switch (lw)
{
case IDC_FILE_CONTAINER:
UpdateWizardModeControls (hwndDlg, WIZARD_MODE_FILE_CONTAINER);
return 1;
case IDC_NONSYS_DEVICE:
UpdateWizardModeControls (hwndDlg, WIZARD_MODE_NONSYS_DEVICE);
return 1;
case IDC_SYS_DEVICE:
UpdateWizardModeControls (hwndDlg, WIZARD_MODE_SYS_DEVICE);
return 1;
case IDC_MORE_INFO_ON_CONTAINERS:
Applink ("introcontainer");
return 1;
case IDC_MORE_INFO_ON_SYS_ENCRYPTION:
Applink ("introsysenc");
return 1;
}
}
if (nCurPageNo == SYSENC_TYPE_PAGE)
{
switch (lw)
{
case IDC_SYSENC_HIDDEN:
bHiddenOS = TRUE;
bHiddenVol = TRUE;
bHiddenVolHost = TRUE;
return 1;
case IDC_SYSENC_NORMAL:
bHiddenOS = FALSE;
bHiddenVol = FALSE;
bHiddenVolHost = FALSE;
return 1;
case IDC_HIDDEN_SYSENC_INFO_LINK:
Applink ("hiddensysenc");
return 1;
}
}
+ if (lw == IDC_ADVANCE_INTRO && nCurPageNo == SYSENC_TYPE_PAGE)
+ {
+ DialogBoxParamW(hInst,
+ MAKEINTRESOURCEW(IDD_ADVANCE_MBR), hwndDlg,
+ (DLGPROC)AdvanceDlgProcIntro, NULL);
+ return 1;
+ }
+
+ if (lw == IDC_ADVANCE && nCurPageNo == PASSWORD_PAGE)
+ {
+ DialogBoxParamW(hInst,
+ MAKEINTRESOURCEW(IDD_ADVANCE), hwndDlg,
+ (DLGPROC)AdvanceDlgProc, NULL);
+ return 1;
+ }
+
if (nCurPageNo == SYSENC_HIDDEN_OS_REQ_CHECK_PAGE && lw == IDC_HIDDEN_SYSENC_INFO_LINK)
{
Applink ("hiddensysenc");
return 1;
}
if (nCurPageNo == SYSENC_SPAN_PAGE)
{
switch (lw)
{
case IDC_WHOLE_SYS_DRIVE:
bWholeSysDrive = TRUE;
return 1;
case IDC_SYS_PARTITION:
bWholeSysDrive = FALSE;
return 1;
}
}
if (nCurPageNo == SYSENC_MULTI_BOOT_MODE_PAGE)
{
switch (lw)
{
case IDC_SINGLE_BOOT:
nMultiBoot = 1;
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
return 1;
case IDC_MULTI_BOOT:
nMultiBoot = 2;
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
return 1;
}
}
@@ -5647,112 +5794,180 @@ BOOL CALLBACK PageDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT),
bValidEntry);
bDeviceTransformModeChoiceMade = FALSE;
bInPlaceEncNonSys = FALSE;
return 1;
}
if (hw == CBN_SELCHANGE && nCurPageNo == VOLUME_LOCATION_PAGE)
{
LPARAM nIndex;
nIndex = MoveEditToCombo ((HWND) lParam, bHistory);
nIndex = UpdateComboOrder (GetDlgItem (hwndDlg, IDC_COMBO_BOX));
if (nIndex != CB_ERR)
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
else
EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), FALSE);
bDeviceTransformModeChoiceMade = FALSE;
bInPlaceEncNonSys = FALSE;
return 1;
}
if (hw == EN_CHANGE && nCurPageNo == SIZE_PAGE)
{
VerifySizeAndUpdate (hwndDlg, FALSE);
return 1;
}
if (hw == EN_CHANGE && nCurPageNo == PASSWORD_PAGE)
{
- VerifyPasswordAndUpdate (hwndDlg, GetDlgItem (GetParent (hwndDlg), IDC_NEXT),
- GetDlgItem (hwndDlg, IDC_PASSWORD),
- GetDlgItem (hwndDlg, IDC_VERIFY),
- NULL,
- NULL,
- KeyFilesEnable && FirstKeyFile!=NULL && !SysEncInEffect());
+ // If 'Next' button was clicked (and keyboard layout is not US), don't verify
+ if (!bNextButtonClicked)
+ {
+ VerifyPasswordAndUpdate (hwndDlg, GetDlgItem (GetParent (hwndDlg), IDC_NEXT),
+ GetDlgItem(hCurPage, IDC_PASSWORD),
+ GetDlgItem(hCurPage, IDC_VERIFY),
+ NULL,
+ NULL,
+ KeyFilesEnable && FirstKeyFile != NULL && !SysEncInEffect());
+
+ bNextButtonClicked = FALSE;
+ }
+
volumePassword.Length = (unsigned __int32) strlen ((char *) volumePassword.Text);
+
+ SendMessage (GetDlgItem (hwndDlg, PASSWORD_METER), WM_SETFONT, (WPARAM)hUserBoldFont, (LPARAM)TRUE);
+
+ memset (&tempPassword[0], 0, sizeof (tempPassword));
+
+ if (GetPassword (hCurPage, IDC_PASSWORD, tempPassword, iMaxPasswordLength + 1, FALSE, TRUE))
+ iPasswordStrength = PrintStrongness (tempPassword, strlen (tempPassword));
+ else
+ Error ("ERROR_GETTING_PWD", hwndDlg);
+
+ burn (tempPassword, sizeof (tempPassword));
+ if (iPasswordStrength == very_strong)
+ {
+ SetWindowTextW (GetDlgItem (hwndDlg, PASSWORD_METER), GetString ("VERY_STRONG_PASSWORD"));
+ EnableWindow (GetDlgItem (hwndDlg, IDC_VERIFY), TRUE);
+ }
+ else if (iPasswordStrength == strong)
+ {
+ SetWindowTextW (GetDlgItem (hwndDlg, PASSWORD_METER), GetString ("STRONG_PASSWORD"));
+ EnableWindow (GetDlgItem (hwndDlg, IDC_VERIFY), TRUE);
+ }
+ else if (iPasswordStrength == medium)
+ {
+ EnableWindow (GetDlgItem (hwndDlg, IDC_VERIFY), TRUE);
+ SetWindowTextW (GetDlgItem (hwndDlg, PASSWORD_METER), GetString ("MEDIUM_PASSWORD"));
+ }
+ else if (iPasswordStrength == weak)
+ {
+ EnableWindow (GetDlgItem (hwndDlg, IDC_VERIFY), FALSE);
+ SetWindowTextW (GetDlgItem (hwndDlg, PASSWORD_METER), GetString ("WEAK_PASSWORD"));
+ }
+ else
+ {
+ SetWindowTextW (GetDlgItem (hwndDlg, PASSWORD_METER), GetString ("VERY_WEAK_PASSWORD"));
+ }
return 1;
}
if (hw == EN_CHANGE && nCurPageNo == PIM_PAGE)
{
if (lw == IDC_PIM)
{
if(GetPim (hwndDlg, IDC_PIM, 0) != 0)
{
PimValueChangedWarning = TRUE;
SetDlgItemTextW (hwndDlg, IDC_PIM_HELP, GetString (SysEncInEffect ()? "PIM_SYSENC_CHANGE_WARNING" : "PIM_CHANGE_WARNING"));
}
else
{
PimValueChangedWarning = FALSE;
SetDlgItemTextW (hwndDlg, IDC_PIM_HELP, (wchar_t *) GetDictionaryValueByInt (IDC_PIM_HELP));
}
}
return 1;
}
if (lw == IDC_SHOW_PASSWORD && nCurPageNo == PASSWORD_PAGE)
{
HandleShowPasswordFieldAction (hwndDlg, IDC_SHOW_PASSWORD, IDC_PASSWORD, IDC_VERIFY);
return 1;
}
if (lw == IDC_SHOW_PIM && nCurPageNo == PIM_PAGE)
{
HandleShowPasswordFieldAction (hwndDlg, IDC_SHOW_PIM, IDC_PIM, 0);
return 1;
}
+ if (lw == IDC_CHECKLIST_A)
+ {
+ bChecklistA = GetCheckBox (hwndDlg, IDC_CHECKLIST_A);
+ bChecklistB = GetCheckBox (hwndDlg, IDC_CHECKLIST_B);
+ bChecklistC = GetCheckBox (hwndDlg, IDC_CHECKLIST_C);
+ }
+
+ if (lw == IDC_CHECKLIST_B)
+ {
+ bChecklistA = GetCheckBox (hwndDlg, IDC_CHECKLIST_A);
+ bChecklistB = GetCheckBox (hwndDlg, IDC_CHECKLIST_B);
+ bChecklistC = GetCheckBox (hwndDlg, IDC_CHECKLIST_C);
+ }
+
+ if (lw == IDC_CHECKLIST_C)
+ {
+ bChecklistA = GetCheckBox (hwndDlg, IDC_CHECKLIST_A);
+ bChecklistB = GetCheckBox (hwndDlg, IDC_CHECKLIST_B);
+ bChecklistC = GetCheckBox (hwndDlg, IDC_CHECKLIST_C);
+ }
+
+ if (lw == IDC_CHECKBOX_PRETEST)
+ {
+ bCheckboxPretest = GetCheckBox (hwndDlg, IDC_CHECKBOX_PRETEST);
+ }
+
if (lw == IDC_PIM_ENABLE)
{
PimEnable = GetCheckBox (hwndDlg, IDC_PIM_ENABLE);
if (!PimEnable)
volumePim = 0;
if (nCurPageNo == HIDDEN_VOL_HOST_PASSWORD_PAGE
|| nCurPageNo == NONSYS_INPLACE_ENC_RESUME_PASSWORD_PAGE
)
{
ShowWindow (GetDlgItem( hwndDlg, IDC_PIM_ENABLE), PimEnable? SW_HIDE : SW_SHOW);
ShowWindow (GetDlgItem( hwndDlg, IDT_PIM), PimEnable? SW_SHOW : SW_HIDE);
ShowWindow (GetDlgItem( hwndDlg, IDC_PIM), PimEnable? SW_SHOW : SW_HIDE);
ShowWindow (GetDlgItem( hwndDlg, IDC_PIM_HELP), PimEnable? SW_SHOW : SW_HIDE);
if (PimEnable)
{
SetFocus (GetDlgItem (hwndDlg, IDC_PIM));
}
}
return 1;
}
if (nCurPageNo == PASSWORD_PAGE
|| nCurPageNo == HIDDEN_VOL_HOST_PASSWORD_PAGE
|| nCurPageNo == NONSYS_INPLACE_ENC_RESUME_PASSWORD_PAGE)
{
if (lw == IDC_KEY_FILES)
{
if (SysEncInEffect())
{
Warning ("KEYFILES_NOT_SUPPORTED_FOR_SYS_ENCRYPTION", MainDlg);
return 1;
}
KeyFilesDlgParam param;
param.EnableKeyFiles = KeyFilesEnable;
@@ -6018,78 +6233,111 @@ BOOL CALLBACK PageDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
return 1;
}
if (lw == IDC_DISPLAY_KEYS && nCurPageNo == SYSENC_KEYS_GEN_PAGE)
{
showKeys = IsButtonChecked (GetDlgItem (hCurPage, IDC_DISPLAY_KEYS));
DisplayPortionsOfKeys (GetDlgItem (hwndDlg, IDC_HEADER_KEY), GetDlgItem (hwndDlg, IDC_DISK_KEY), HeaderKeyGUIView, MasterKeyGUIView, !showKeys);
return 1;
}
if (nCurPageNo == SYSENC_RESCUE_DISK_CREATION_PAGE)
{
if (lw == IDC_BROWSE)
{
wchar_t tmpszRescueDiskISO [TC_MAX_PATH+1];
if (!BrowseFiles (hwndDlg, "OPEN_TITLE", tmpszRescueDiskISO, FALSE, TRUE, NULL))
return 1;
StringCbCopyW (szRescueDiskISO, sizeof(szRescueDiskISO), tmpszRescueDiskISO);
SetDlgItemText (hwndDlg, IDC_RESCUE_DISK_ISO_PATH, szRescueDiskISO);
EnableWindow (GetDlgItem (MainDlg, IDC_NEXT), (GetWindowTextLength (GetDlgItem (hwndDlg, IDC_RESCUE_DISK_ISO_PATH)) > 1));
return 1;
}
if ( hw == EN_CHANGE )
{
GetDlgItemText (hwndDlg, IDC_RESCUE_DISK_ISO_PATH, szRescueDiskISO, sizeof(szRescueDiskISO));
EnableWindow (GetDlgItem (MainDlg, IDC_NEXT), (GetWindowTextLength (GetDlgItem (hwndDlg, IDC_RESCUE_DISK_ISO_PATH)) > 1));
return 1;
}
}
- if (nCurPageNo == SYSENC_RESCUE_DISK_BURN_PAGE && lw == IDC_DOWNLOAD_CD_BURN_SOFTWARE)
+ /* The password and rescue checkbox have to be clicked in order to enable the next button */
+ if ((nCurPageNo == SYSENC_WIPE_MODE_PAGE || nCurPageNo == NONSYS_INPLACE_ENC_WIPE_MODE_PAGE) &&
+ (lw == IDC_CHECKLIST_A || lw == IDC_CHECKLIST_B || lw == IDC_CHECKLIST_C))
{
- if (IsWindowsIsoBurnerAvailable())
- LaunchWindowsIsoBurner (hwndDlg, szRescueDiskISO);
- else
- Applink ("isoburning");
+ if (SysEncInEffect ())
+ {
+ if (bChecklistA && bChecklistB && bChecklistC)
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
+ else
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), FALSE);
+ }
+ }
- return 1;
+ if (lw == IDC_BROWSE && (nCurPageNo == SYSENC_WIPE_MODE_PAGE || nCurPageNo == NONSYS_INPLACE_ENC_WIPE_MODE_PAGE))
+ {
+ wchar_t tmpszRescueDiskISO [TC_MAX_PATH+1];
+
+ StringCbCopyW (tmpszRescueDiskISO, sizeof(tmpszRescueDiskISO), szRescueDiskISO);
+
+ //detects the last '\' in order to remove the name of the zip file and save file name
+ for (int i = wcslen(tmpszRescueDiskISO); i > 1; i--)
+ {
+ if (tmpszRescueDiskISO[i] == '\\')
+ {
+ for (int j = i + 1; i < wcslen(tmpszRescueDiskISO); i++)
+ tmpszRescueDiskISO[j] = '\0';
+ break;
+ }
+ }
+
+ if(!BrowseFile (hwndDlg, "RESCUE_DISK_PATH", tmpszRescueDiskISO))
+ return 1;
+
+ return 0;
+ }
+ if (nCurPageNo == SYSENC_PRETEST_RESULT_PAGE && lw == IDC_CHECKBOX_PRETEST)
+ {
+ if (bCheckboxPretest)
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), TRUE);
+ else
+ EnableWindow (GetDlgItem (GetParent (hwndDlg), IDC_NEXT), FALSE);
}
if ((nCurPageNo == SYSENC_WIPE_MODE_PAGE
|| nCurPageNo == NONSYS_INPLACE_ENC_WIPE_MODE_PAGE
|| nCurPageNo == DEVICE_WIPE_MODE_PAGE)
&& hw == CBN_SELCHANGE)
{
nWipeMode = (WipeAlgorithmId) SendMessage (GetDlgItem (hCurPage, IDC_WIPE_MODE),
CB_GETITEMDATA,
SendMessage (GetDlgItem (hCurPage, IDC_WIPE_MODE), CB_GETCURSEL, 0, 0),
0);
return 1;
}
if (nCurPageNo == DEVICE_WIPE_PAGE)
{
switch (lw)
{
case IDC_ABORT_BUTTON:
if (AskWarnNoYes ("CONFIRM_WIPE_ABORT", MainDlg) == IDYES)
WipeAbort();
return 1;
}
}
if (lw == IDC_NO_HISTORY)
{
if (!(bHistory = !IsButtonChecked (GetDlgItem (hCurPage, IDC_NO_HISTORY))))
ClearHistory (GetDlgItem (hCurPage, IDC_COMBO_BOX));
return 1;
}
@@ -6339,75 +6587,73 @@ BOOL CALLBACK MainDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
{
// The host file system is FAT32
if (nVolumeSize >= 4 * BYTES_PER_GB)
{
AbortProcess ("VOLUME_TOO_LARGE_FOR_FAT32");
}
}
/* Verify that the volume would not be too large for the operating system */
if (!IsOSAtLeast (WIN_VISTA)
&& nVolumeSize > 2 * BYTES_PER_TB)
{
AbortProcess ("VOLUME_TOO_LARGE_FOR_WINXP");
}
if (volumePassword.Length > 0)
{
// Check password length (check also done for outer volume which is not the case in TrueCrypt).
if (!CheckPasswordLength (NULL, volumePassword.Length, volumePim, FALSE, 0, Silent, Silent))
{
exit (1);
}
}
if (!KeyFilesApply (hwndDlg, &volumePassword, FirstCmdKeyFile, NULL))
{
exit (1);
}
volTransformThreadFunction (hwndDlg);
exit (bOperationSuccess? 0 : 1);
}
SHGetFolderPath (NULL, CSIDL_MYDOCUMENTS, NULL, 0, szRescueDiskISO);
- if (bSystemIsGPT)
- StringCbCatW (szRescueDiskISO, sizeof(szRescueDiskISO), L"\\VeraCrypt Rescue Disk.zip");
- else
- StringCbCatW (szRescueDiskISO, sizeof(szRescueDiskISO), L"\\VeraCrypt Rescue Disk.iso");
+ StringCbCatW (szRescueDiskISO, sizeof(szRescueDiskISO), L"\\VeraCrypt Rescue Disk.zip");
+
if (IsOSAtLeast (WIN_VISTA))
{
// Availability of in-place encryption (which is pre-selected by default whenever
// possible) makes partition-hosted volume creation safer.
bWarnDeviceFormatAdvanced = FALSE;
}
#ifdef _DEBUG
// For faster testing
StringCchCopyA (szVerify, ARRAYSIZE(szVerify), "q");
StringCchCopyA (szRawPassword, ARRAYSIZE(szRawPassword), "q");
#endif
PasswordEditDropTarget* pTarget = new PasswordEditDropTarget ();
if (pTarget->Register (hwndDlg))
{
SetWindowLongPtr (hwndDlg, DWLP_USER, (LONG_PTR) pTarget);
}
else
delete pTarget;
PostMessage (hwndDlg, TC_APPMSG_PERFORM_POST_WMINIT_TASKS, 0, 0);
}
return 0;
case WM_SYSCOMMAND:
if (lw == IDC_ABOUT)
{
DialogBoxW (hInst, MAKEINTRESOURCEW (IDD_ABOUT_DLG), hwndDlg, (DLGPROC) AboutDlgProc);
return 1;
}
return 0;
case WM_TIMER:
@@ -6627,105 +6873,103 @@ BOOL CALLBACK MainDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
case TIMER_ID_NONSYS_INPLACE_ENC_PROGRESS:
if (bInPlaceEncNonSys)
{
// Non-system in-place encryption
if (!bVolTransformThreadRunning && !bVolTransformThreadToRun)
{
KillTimer (hwndDlg, TIMER_ID_NONSYS_INPLACE_ENC_PROGRESS);
UpdateLastDialogId ();
}
UpdateNonSysInPlaceEncControls ();
}
return 1;
case TIMER_ID_KEYB_LAYOUT_GUARD:
if (SysEncInEffect ())
{
DWORD keybLayout = (DWORD) GetKeyboardLayout (NULL);
/* Watch the keyboard layout */
if (keybLayout != 0x00000409 && keybLayout != 0x04090409)
{
// Keyboard layout is not standard US
WipePasswordsAndKeyfiles (true);
SetPassword (hCurPage, IDC_PASSWORD, szRawPassword);
SetPassword (hCurPage, IDC_VERIFY, szVerify);
keybLayout = (DWORD) LoadKeyboardLayout (L"00000409", KLF_ACTIVATE);
+ // East Asian languages are not translated to US keyboard layout so we need to change keyboard layout
if (keybLayout != 0x00000409 && keybLayout != 0x04090409)
{
KillTimer (hwndDlg, TIMER_ID_KEYB_LAYOUT_GUARD);
Error ("CANT_CHANGE_KEYB_LAYOUT_FOR_SYS_ENCRYPTION", MainDlg);
EndMainDlg (MainDlg);
return 1;
}
-
+
bKeyboardLayoutChanged = TRUE;
-
wchar_t szTmp [4096];
StringCbCopyW (szTmp, sizeof(szTmp), GetString ("KEYB_LAYOUT_CHANGE_PREVENTED"));
StringCbCatW (szTmp, sizeof(szTmp), L"\n\n");
StringCbCatW (szTmp, sizeof(szTmp), GetString ("KEYB_LAYOUT_SYS_ENC_EXPLANATION"));
MessageBoxW (MainDlg, szTmp, lpszTitle, MB_ICONWARNING | MB_SETFOREGROUND | MB_TOPMOST);
- }
-
- /* Watch the right Alt key (which is used to enter various characters on non-US keyboards) */
- if (bKeyboardLayoutChanged && !bKeybLayoutAltKeyWarningShown)
- {
- if (GetAsyncKeyState (VK_RMENU) < 0)
+ if (bKeyboardLayoutChanged && !bKeybLayoutAltKeyWarningShown)
{
- bKeybLayoutAltKeyWarningShown = TRUE;
+ if (GetAsyncKeyState (VK_RMENU) < 0)
+ {
+ bKeybLayoutAltKeyWarningShown = TRUE;
- wchar_t szTmp [4096];
- StringCbCopyW (szTmp, sizeof(szTmp), GetString ("ALT_KEY_CHARS_NOT_FOR_SYS_ENCRYPTION"));
- StringCbCatW (szTmp, sizeof(szTmp), L"\n\n");
- StringCbCatW (szTmp, sizeof(szTmp), GetString ("KEYB_LAYOUT_SYS_ENC_EXPLANATION"));
- MessageBoxW (MainDlg, szTmp, lpszTitle, MB_ICONINFORMATION | MB_SETFOREGROUND | MB_TOPMOST);
+
+ wchar_t szTmp [4096];
+ StringCbCopyW (szTmp, sizeof(szTmp), GetString ("ALT_KEY_CHARS_NOT_FOR_SYS_ENCRYPTION"));
+ StringCbCatW (szTmp, sizeof(szTmp), L"\n\n");
+ StringCbCatW (szTmp, sizeof(szTmp), GetString ("KEYB_LAYOUT_SYS_ENC_EXPLANATION"));
+ MessageBoxW (MainDlg, szTmp, lpszTitle, MB_ICONINFORMATION | MB_SETFOREGROUND | MB_TOPMOST);
+ }
}
}
}
return 1;
-
case TIMER_ID_SYSENC_DRIVE_ANALYSIS_PROGRESS:
if (bSysEncDriveAnalysisInProgress)
{
UpdateProgressBarProc (GetTickCount() - SysEncDriveAnalysisStart);
if (GetTickCount() - SysEncDriveAnalysisStart > SYSENC_DRIVE_ANALYSIS_ETA)
{
// It's taking longer than expected -- reinit the progress bar
SysEncDriveAnalysisStart = GetTickCount ();
InitProgressBar (SYSENC_DRIVE_ANALYSIS_ETA, 0, FALSE, FALSE, FALSE, TRUE);
}
ArrowWaitCursor ();
}
else
{
KillTimer (hwndDlg, TIMER_ID_SYSENC_DRIVE_ANALYSIS_PROGRESS);
UpdateProgressBarProc (SYSENC_DRIVE_ANALYSIS_ETA);
Sleep (1500); // User-friendly GUI
if (bSysEncDriveAnalysisTimeOutOccurred)
Warning ("SYS_DRIVE_SIZE_PROBE_TIMEOUT", MainDlg);
LoadPage (hwndDlg, SYSENC_DRIVE_ANALYSIS_PAGE + 1);
}
return 1;
case TIMER_ID_WIPE_PROGRESS:
// Manage device wipe and update related GUI
if (bHiddenOS && IsHiddenOSRunning())
{
// Decoy system partition wipe
@@ -6982,140 +7226,153 @@ BOOL CALLBACK MainDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
}
catch (Exception &e)
{
e.Show (hwndDlg);
}
return 1; // Disallow close
}
else
return 1; // Disallow close
}
else if (bConfirmQuitSysEncPretest)
{
if (AskWarnNoYes (bHiddenOS ? "CONFIRM_CANCEL_HIDDEN_OS_CREATION" : "CONFIRM_CANCEL_SYS_ENC_PRETEST", MainDlg) == IDNO)
return 1; // Disallow close
}
else if (bConfirmQuit)
{
if (AskWarnNoYes ("CONFIRM_EXIT_UNIVERSAL", MainDlg) == IDNO)
return 1; // Disallow close
}
if (hiddenVolHostDriveNo > -1)
{
CloseVolumeExplorerWindows (hwndDlg, hiddenVolHostDriveNo);
UnmountVolume (hwndDlg, hiddenVolHostDriveNo, TRUE);
}
EndMainDlg (hwndDlg);
return 1;
case WM_COMMAND:
if (lw == IDHELP)
{
- OpenPageHelp (hwndDlg, nCurPageNo);
+ if (nCurPageNo == SYSENC_RESCUE_DISK_CREATION_PAGE ||
+ nCurPageNo == SYSENC_RESCUE_DISK_BURN_PAGE ||
+ nCurPageNo == SYSENC_RESCUE_DISK_VERIFIED_PAGE)
+ {
+ Applink("rescue");
+ }
+ else if (nCurPageNo == PASSWORD_PAGE)
+ {
+ Applink("passwords");
+ }
+ else
+ {
+ OpenPageHelp(hwndDlg, nCurPageNo);
+ }
return 1;
}
else if (lw == IDCANCEL)
{
PostMessage (hwndDlg, TC_APPMSG_FORMAT_USER_QUIT, 0, 0);
return 1;
}
else if (lw == IDC_NEXT)
{
if (nCurPageNo == INTRO_PAGE)
{
switch (GetSelectedWizardMode (hCurPage))
{
case WIZARD_MODE_FILE_CONTAINER:
if (CurrentOSMajor >= 6 && IsUacSupported() && IsAdmin() && !IsBuiltInAdmin() && !IsNonInstallMode())
{
static bool warningConfirmed = false;
if (!warningConfirmed)
{
if (AskWarnYesNo ("CONTAINER_ADMIN_WARNING", MainDlg) == IDYES)
exit (0);
warningConfirmed = true;
}
}
WaitCursor ();
CloseSysEncMutex ();
ChangeWizardMode (WIZARD_MODE_FILE_CONTAINER);
bHiddenOS = FALSE;
bInPlaceEncNonSys = FALSE;
nNewPageNo = VOLUME_TYPE_PAGE - 1; // Skip irrelevant pages
break;
case WIZARD_MODE_NONSYS_DEVICE:
WaitCursor ();
CloseSysEncMutex ();
if (!ChangeWizardMode (WIZARD_MODE_NONSYS_DEVICE))
{
NormalCursor ();
return 1;
}
bHiddenOS = FALSE;
nNewPageNo = VOLUME_TYPE_PAGE - 1; // Skip irrelevant pages
break;
case WIZARD_MODE_SYS_DEVICE:
WaitCursor ();
bHiddenVol = FALSE;
bInPlaceEncNonSys = FALSE;
SwitchWizardToSysEncMode ();
return 1;
}
}
else if (nCurPageNo == SYSENC_TYPE_PAGE)
{
if (bHiddenOS)
{
bWholeSysDrive = FALSE;
bHiddenVolDirect = FALSE;
}
if (!bHiddenOS)
- nNewPageNo = SYSENC_SPAN_PAGE - 1; // Skip irrelevant pages
+ nNewPageNo = PASSWORD_PAGE - 1; // Skip irrelevant pages
}
else if (nCurPageNo == SYSENC_HIDDEN_OS_REQ_CHECK_PAGE)
{
WaitCursor ();
try
{
BootEncObj->CheckRequirementsHiddenOS ();
if (CheckGapBetweenSysAndHiddenOS ())
Warning ("GAP_BETWEEN_SYS_AND_HIDDEN_OS_PARTITION", MainDlg);
}
catch (Exception &e)
{
e.Show (hwndDlg);
NormalCursor ();
return 1;
}
if (AskWarnYesNo ("DECOY_OS_REINSTALL_WARNING", MainDlg) == IDNO)
{
NormalCursor ();
return 1;
}
WarningDirect ((wstring (GetString ("HIDDEN_OS_WRITE_PROTECTION_BRIEF_INFO"))
+ L"\n\n"
+ GetString ("HIDDEN_OS_WRITE_PROTECTION_EXPLANATION")).c_str(), MainDlg);
if (!IsAdmin() && IsUacSupported())
{
// If UAC elevation is needed, we need to elevate the complete wizard process here, because
// we will need to switch to the non-sys-device mode, which requires the whole wizard process
// to have admin rights.
CloseSysEncMutex ();
@@ -7595,221 +7852,277 @@ BOOL CALLBACK MainDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
// The host file system is FAT32
if (nUIVolumeSize * nMultiplier >= 4 * BYTES_PER_GB)
{
Error ("VOLUME_TOO_LARGE_FOR_FAT32", hwndDlg);
return 1;
}
}
/* Verify that the volume would not be too large for the operating system */
if (!IsOSAtLeast (WIN_VISTA)
&& nUIVolumeSize * nMultiplier > 2 * BYTES_PER_TB)
{
Warning ("VOLUME_TOO_LARGE_FOR_WINXP", hwndDlg);
}
}
if (bHiddenVol && !bHiddenVolHost) // If it's a hidden volume
{
/* Ask for confirmation if the hidden volume is too large for the user to be
able to write much more data to the outer volume. */
if (((double) nUIVolumeSize / (nMaximumHiddenVolSize / nMultiplier)) > 0.85) // 85%
{
if (AskWarnNoYes ("FREE_SPACE_FOR_WRITING_TO_OUTER_VOLUME", hwndDlg) == IDNO)
return 1;
}
}
if (!(bHiddenVolDirect && bHiddenVolHost))
nNewPageNo = PASSWORD_PAGE - 1;
}
else if (nCurPageNo == PASSWORD_PAGE)
{
+ if (SysEncInEffect ())
+ {
+ wchar_t tmpPwd[MAX_PASSWORD + 1];
+ GetWindowText (GetDlgItem (hCurPage, IDC_PASSWORD), tmpPwd, iMaxPasswordLength + 1);
+ }
VerifyPasswordAndUpdate (hwndDlg, GetDlgItem (MainDlg, IDC_NEXT),
GetDlgItem (hCurPage, IDC_PASSWORD),
GetDlgItem (hCurPage, IDC_VERIFY),
volumePassword.Text,
szVerify,
KeyFilesEnable && FirstKeyFile!=NULL && !SysEncInEffect());
volumePassword.Length = (unsigned __int32) strlen ((char *) volumePassword.Text);
if (volumePassword.Length > 0)
{
// Password character encoding
if (SysEncInEffect () && !CheckPasswordCharEncoding (GetDlgItem (hCurPage, IDC_PASSWORD), NULL))
{
Error ("UNSUPPORTED_CHARS_IN_PWD", hwndDlg);
return 1;
}
- // Check password length (check also done for outer volume which is not the case in TrueCrypt).
+ // Check password length (check also done for outer volume which is not the case in TrueCrypt).
else if (!CheckPasswordLength (hwndDlg, volumePassword.Length, 0, SysEncInEffect(), SysEncInEffect()? hash_algo : 0, FALSE, FALSE))
{
return 1;
}
}
// Store the password in case we need to restore it after keyfile is applied to it
if (!GetPassword (hCurPage, IDC_PASSWORD, szRawPassword, iMaxPasswordLength + 1, FALSE, TRUE))
return 1;
if (!SysEncInEffect ())
{
if (KeyFilesEnable)
{
WaitCursor ();
if (!KeyFilesApply (hwndDlg, &volumePassword, FirstKeyFile, NULL))
{
NormalCursor ();
return 1;
}
NormalCursor ();
}
}
else
{
KillTimer (hwndDlg, TIMER_ID_KEYB_LAYOUT_GUARD);
if (bKeyboardLayoutChanged)
{
// Restore the original keyboard layout
if (LoadKeyboardLayout (OrigKeyboardLayout, KLF_ACTIVATE | KLF_SUBSTITUTE_OK) == NULL)
Warning ("CANNOT_RESTORE_KEYBOARD_LAYOUT", hwndDlg);
else
bKeyboardLayoutChanged = FALSE;
}
-
}
if (!PimEnable)
{
// PIM not activated. Skip PIM page
nNewPageNo = PIM_PAGE;
volumePim = 0;
if (!CreatingHiddenSysVol() && bHiddenVol && !bHiddenVolHost)
{
if ( (volumePim == outerVolumePim)
&& (volumePassword.Length == outerVolumePassword.Length)
&& (0 == memcmp (volumePassword.Text, outerVolumePassword.Text, volumePassword.Length))
)
{
Warning ("HIDDEN_CREDS_SAME_AS_OUTER", hwndDlg);
return 1;
}
}
- if (SysEncInEffect ())
- {
- nNewPageNo = SYSENC_COLLECTING_RANDOM_DATA_PAGE - 1; // Skip irrelevant pages
- }
-
if (bInPlaceEncNonSys)
{
nNewPageNo = NONSYS_INPLACE_ENC_RAND_DATA_PAGE - 1; // Skip irrelevant pages
}
else if (WizardMode != WIZARD_MODE_SYS_DEVICE
&& !FileSize4GBLimitQuestionNeeded ()
|| CreatingHiddenSysVol()) // If we're creating a hidden volume for a hidden OS, we don't need to format it with any filesystem (the entire OS will be copied to the hidden volume sector by sector).
{
nNewPageNo = FORMAT_PAGE - 1; // Skip irrelevant pages
}
}
+
+
+ if (SysEncInEffect ())
+ {
+ if (PimEnable)
+ nNewPageNo = PIM_PAGE - 1;
+ else
+ {
+ nNewPageNo = SYSENC_RESCUE_DISK_CREATION_PAGE - 1; // Skip irrelevant pages
+
+ wchar_t tmp[RANDPOOL_DISPLAY_SIZE + 1];
+ if (!bInPlaceEncNonSys)
+ {
+ /* Generate master key and other related data (except the rescue disk) for system encryption. */
+ try
+ {
+ WaitCursor();
+ BootEncObj->PrepareInstallation(!bWholeSysDrive, volumePassword, nVolumeEA, FIRST_MODE_OF_OPERATION_ID, hash_algo, volumePim, L"");
+ }
+ catch (Exception &e)
+ {
+ e.Show(hwndDlg);
+ NormalCursor();
+ return 1;
+ }
+ }
+ KillTimer(hwndDlg, TIMER_ID_RANDVIEW);
+ // Attempt to wipe the GUI field showing portions of randpool
+ wmemset(tmp, L'X', ARRAYSIZE(tmp));
+ tmp[ARRAYSIZE(tmp) - 1] = 0;
+ SetWindowText(hRandPoolSys, tmp);
+ NormalCursor();
+ }
+
+ }
}
else if (nCurPageNo == PIM_PAGE)
{
volumePim = GetPim (hCurPage, IDC_PIM, 0);
if (!SysEncInEffect() && (volumePim > MAX_PIM_VALUE))
{
SetFocus (GetDlgItem(hCurPage, IDC_PIM));
Error ("PIM_TOO_BIG", hwndDlg);
return 1;
}
if (!CreatingHiddenSysVol() && bHiddenVol && !bHiddenVolHost)
{
if ( (volumePim == outerVolumePim)
&& (volumePassword.Length == outerVolumePassword.Length)
&& (0 == memcmp (volumePassword.Text, outerVolumePassword.Text, volumePassword.Length))
)
{
Warning ("HIDDEN_CREDS_SAME_AS_OUTER", hwndDlg);
return 1;
}
}
if (volumePassword.Length > 0)
{
// Password character encoding
if (SysEncInEffect() && (volumePim > MAX_BOOT_PIM_VALUE))
{
SetFocus (GetDlgItem(hCurPage, IDC_PIM));
Error ("PIM_SYSENC_TOO_BIG", hwndDlg);
return 1;
}
// Check password length (check also done for outer volume which is not the case in TrueCrypt).
- else if (!CheckPasswordLength (hwndDlg, volumePassword.Length, volumePim, SysEncInEffect(), SysEncInEffect()? hash_algo : 0, TRUE, FALSE))
+ else if (!CheckPasswordLength (hwndDlg, volumePassword.Length, volumePim, SysEncInEffect(), SysEncInEffect()? hash_algo : 0, FALSE, FALSE))
{
return 1;
}
}
- if (SysEncInEffect ())
- {
-
- nNewPageNo = SYSENC_COLLECTING_RANDOM_DATA_PAGE - 1; // Skip irrelevant pages
- }
-
if (bInPlaceEncNonSys)
{
nNewPageNo = NONSYS_INPLACE_ENC_RAND_DATA_PAGE - 1; // Skip irrelevant pages
}
else if (WizardMode != WIZARD_MODE_SYS_DEVICE
&& !FileSize4GBLimitQuestionNeeded ()
|| CreatingHiddenSysVol()) // If we're creating a hidden volume for a hidden OS, we don't need to format it with any filesystem (the entire OS will be copied to the hidden volume sector by sector).
{
nNewPageNo = FORMAT_PAGE - 1; // Skip irrelevant pages
}
+
+ if (SysEncInEffect ())
+ {
+ nNewPageNo = SYSENC_RESCUE_DISK_CREATION_PAGE - 1; // Skip irrelevant pages
+
+ wchar_t tmp[RANDPOOL_DISPLAY_SIZE + 1];
+ if (!bInPlaceEncNonSys)
+ {
+ /* Generate master key and other related data (except the rescue disk) for system encryption. */
+ try
+ {
+ WaitCursor();
+ BootEncObj->PrepareInstallation(!bWholeSysDrive, volumePassword, nVolumeEA, FIRST_MODE_OF_OPERATION_ID, hash_algo, volumePim, L"");
+ }
+ catch (Exception &e)
+ {
+ e.Show(hwndDlg);
+ NormalCursor();
+ return 1;
+ }
+ }
+ KillTimer(hwndDlg, TIMER_ID_RANDVIEW);
+ // Attempt to wipe the GUI field showing portions of randpool
+ wmemset(tmp, L'X', ARRAYSIZE(tmp));
+ tmp[ARRAYSIZE(tmp) - 1] = 0;
+ SetWindowText(hRandPoolSys, tmp);
+ NormalCursor();
+ }
}
else if (nCurPageNo == HIDDEN_VOL_HOST_PASSWORD_PAGE
|| nCurPageNo == NONSYS_INPLACE_ENC_RESUME_PASSWORD_PAGE)
{
WaitCursor ();
if (!GetPassword (hCurPage, IDC_PASSWORD_DIRECT, (char*) volumePassword.Text, iMaxPasswordLength + 1, FALSE, TRUE))
{
NormalCursor ();
return 1;
}
volumePassword.Length = (unsigned __int32) strlen ((char *) volumePassword.Text);
hash_algo = (int) SendMessage (GetDlgItem (hCurPage, IDC_PKCS5_PRF_ID), CB_GETITEMDATA, SendMessage (GetDlgItem (hCurPage, IDC_PKCS5_PRF_ID), CB_GETCURSEL, 0, 0), 0);
volumePim = GetPim (hCurPage, IDC_PIM, 0);
// Store the password in case we need to restore it after keyfile is applied to it
if (!GetPassword (hCurPage, IDC_PASSWORD_DIRECT, szRawPassword, iMaxPasswordLength + 1, FALSE, TRUE))
{
NormalCursor ();
return 1;
}
if (KeyFilesEnable)
{
KeyFilesApply (hwndDlg, &volumePassword, FirstKeyFile, NULL);
}
if (!bInPlaceEncNonSys)
{
/* Mount the volume which is to host the new hidden volume as read only */
@@ -8771,70 +9084,90 @@ retryCDDriveCheck:
EnableWindow (GetDlgItem (MainDlg, IDC_NEXT), TRUE);
NormalCursor ();
}
break;
}
break;
}
}
}
}
else if (nCurPageNo == DEVICE_WIPE_PAGE)
{
if (AskWarnOkCancel (bHiddenOS && IsHiddenOSRunning() ? "CONFIRM_WIPE_START_DECOY_SYS_PARTITION" : "CONFIRM_WIPE_START", hwndDlg) == IDOK)
{
WipeStart ();
ArrowWaitCursor();
}
return 1;
}
LoadPage (hwndDlg, nNewPageNo + 1);
ovf_end:
return 1;
}
else if (lw == IDC_PREV)
{
if (nCurPageNo == SYSENC_SPAN_PAGE)
{
// Skip irrelevant pages when going back
if (!bHiddenOS)
nNewPageNo = SYSENC_TYPE_PAGE + 1;
}
+
+ if (nCurPageNo == SYSENC_RESCUE_DISK_CREATION_PAGE)
+ {
+ if (SysEncInEffect ())
+ {
+ nNewPageNo = (PimEnable? PIM_PAGE : PASSWORD_PAGE) + 1;
+ }
+ }
+
+ if (nCurPageNo == SYSENC_RESCUE_DISK_BURN_PAGE)
+ {
+ nNewPageNo = SYSENC_RESCUE_DISK_BURN_PAGE + 1; // Stay on the same page
+ Warning("RESCUE_DISK_BACK_BUTTON", hwndDlg);
+ }
+
+ if (nCurPageNo == SYSENC_PRETEST_RESULT_PAGE)
+ {
+ nNewPageNo = SYSENC_PRETEST_RESULT_PAGE + 1; // Stay on the same page
+ }
+
if (nCurPageNo == SYSENC_MULTI_BOOT_MODE_PAGE)
{
// Skip the drive analysis page(s) or other irrelevant pages when going back
if (bHiddenOS)
nNewPageNo = SYSENC_HIDDEN_OS_REQ_CHECK_PAGE + 1;
else if (bWholeSysDrive)
nNewPageNo = SYSENC_PRE_DRIVE_ANALYSIS_PAGE + 1;
else
nNewPageNo = SYSENC_SPAN_PAGE + 1;
}
else if (nCurPageNo == SYSENC_MULTI_BOOT_NONWIN_BOOT_LOADER_PAGE)
{
if (SysEncMultiBootCfg.NumberOfSysDrives == 1)
{
// We can skip SYSENC_MULTI_BOOT_ADJACENT_SYS_PAGE (it is implied that there are multiple systems on the drive)
nNewPageNo = SYSENC_MULTI_BOOT_NBR_SYS_DRIVES_PAGE + 1;
}
}
else if (nCurPageNo == HIDDEN_VOL_HOST_PRE_CIPHER_PAGE)
{
if (bHiddenOS)
{
if (!ChangeWizardMode (WIZARD_MODE_SYS_DEVICE))
{
NormalCursor ();
return 1;
}
// Skip irrelevant pages.
// Note that we're ignoring nMultiBoot here, as the multi-boot question pages are skipped
// when creating a hidden OS (only a single message box is displayed with requirements).
nNewPageNo = SYSENC_MULTI_BOOT_MODE_PAGE + 1;
}
else
{
@@ -8896,71 +9229,74 @@ ovf_end:
else if (nCurPageNo == SIZE_PAGE)
{
VerifySizeAndUpdate (hCurPage, TRUE);
}
else if (nCurPageNo == FILESYS_PAGE)
{
if (nNeedToStoreFilesOver4GB != Get2RadButtonPageAnswer())
fileSystem = FILESYS_NONE; // The user may have gone back and changed the answer, so default file system must be reselected
nNeedToStoreFilesOver4GB = Get2RadButtonPageAnswer();
nNewPageNo = (PimEnable? PIM_PAGE : PASSWORD_PAGE) + 1; // Skip PIM page if it is not enabled
}
else if (nCurPageNo == PASSWORD_PAGE)
{
// Store the password in case we need to restore it after keyfile is applied to it
GetPassword (hCurPage, IDC_PASSWORD, szRawPassword, iMaxPasswordLength + 1, FALSE, FALSE);
VerifyPasswordAndUpdate (hwndDlg, GetDlgItem (MainDlg, IDC_NEXT),
GetDlgItem (hCurPage, IDC_PASSWORD),
GetDlgItem (hCurPage, IDC_VERIFY),
volumePassword.Text,
szVerify,
KeyFilesEnable && FirstKeyFile!=NULL && !SysEncInEffect ());
volumePassword.Length = (unsigned __int32) strlen ((char *) volumePassword.Text);
nNewPageNo = SIZE_PAGE + 1; // Skip the hidden volume host password page
if (SysEncInEffect ())
{
- nNewPageNo = CIPHER_PAGE + 1; // Skip irrelevant pages
+ if (!bHiddenOS)
+ nNewPageNo = SYSENC_TYPE_PAGE + 1; // Skip irrelevant pages
+ else
+ nNewPageNo = CIPHER_PAGE + 1; // Skip irrelevant pages
KillTimer (hwndDlg, TIMER_ID_KEYB_LAYOUT_GUARD);
if (bKeyboardLayoutChanged)
{
// Restore the original keyboard layout
if (LoadKeyboardLayout (OrigKeyboardLayout, KLF_ACTIVATE | KLF_SUBSTITUTE_OK) == NULL)
Warning ("CANNOT_RESTORE_KEYBOARD_LAYOUT", hwndDlg);
else
bKeyboardLayoutChanged = FALSE;
}
}
else if (bInPlaceEncNonSys)
nNewPageNo = CIPHER_PAGE + 1;
}
else if (nCurPageNo == PIM_PAGE)
{
volumePim = GetPim (hCurPage, IDC_PIM, 0);
}
else if (nCurPageNo == HIDDEN_VOL_HOST_PASSWORD_PAGE
|| nCurPageNo == NONSYS_INPLACE_ENC_RESUME_PASSWORD_PAGE)
{
// Store the password in case we need to restore it after keyfile is applied to it
GetPassword (hCurPage, IDC_PASSWORD_DIRECT, szRawPassword, iMaxPasswordLength + 1, FALSE, FALSE);
memcpy (volumePassword.Text, szRawPassword, iMaxPasswordLength + 1);
volumePassword.Length = (unsigned __int32) strlen ((char *) volumePassword.Text);
if (!bInPlaceEncNonSys)
nNewPageNo = VOLUME_LOCATION_PAGE + 1;
}
else if (nCurPageNo == SYSENC_COLLECTING_RANDOM_DATA_PAGE
@@ -10599,35 +10935,544 @@ int WINAPI wWinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, wchar_t *lpsz
if (status == ERR_OS_ERROR)
handleWin32Error (NULL, SRC_POS);
else
handleError (NULL, status, SRC_POS);
AbortProcess ("NODRIVER");
}
if (!AutoTestAlgorithms())
AbortProcess ("ERR_SELF_TESTS_FAILED");
/* Create the main dialog box */
DialogBoxParamW (hInstance, MAKEINTRESOURCEW (IDD_VOL_CREATION_WIZARD_DLG), NULL, (DLGPROC) MainDialogProc,
(LPARAM)lpszCommandLine);
FinalizeApp ();
return 0;
}
static DWORD GetFormatSectorSize ()
{
if (!bDevice)
return TC_SECTOR_SIZE_FILE_HOSTED_VOLUME;
DISK_GEOMETRY_EX geometry;
if (!GetDriveGeometry (szDiskFile, &geometry))
{
handleWin32Error (MainDlg, SRC_POS);
AbortProcessSilent();
}
return geometry.Geometry.BytesPerSector;
}
+
+/* This function is called when advanced dialog in intro page is open */
+BOOL CALLBACK AdvanceDlgProcIntro (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam)
+{
+ WORD lw = LOWORD(wParam);
+
+ switch (msg)
+ {
+ case WM_INITDIALOG:
+
+ bHiddenVolHost = bHiddenVol = bHiddenOS;
+
+ SendMessage (GetDlgItem (hwndDlg, IDC_SYSENC_HIDDEN), WM_SETFONT, (WPARAM) hUserBoldFont, (LPARAM) TRUE);
+ SendMessage (GetDlgItem (hwndDlg, IDC_SYSENC_NORMAL), WM_SETFONT, (WPARAM) hUserBoldFont, (LPARAM) TRUE);
+
+ CheckButton (GetDlgItem (hwndDlg, bHiddenOS ? IDC_SYSENC_HIDDEN : IDC_SYSENC_NORMAL));
+
+ return 1;
+ case WM_COMMAND:
+ {
+ if (lw == IDCANCEL)
+ {
+ EndDialog(hwndDlg, lw);
+ return 1;
+ }
+
+ if(lw == IDOK)
+ {
+ if (bHiddenOS)
+ {
+ bWholeSysDrive = FALSE;
+ bHiddenVolDirect = FALSE;
+ }
+ EndDialog(hwndDlg, lw);
+ return 1;
+ }
+
+ if (lw == IDC_SYSENC_HIDDEN)
+ {
+ SendMessage (GetDlgItem (hwndDlg, IDC_SYSENC_NORMAL), BM_SETCHECK, BST_UNCHECKED, 0);
+
+ bHiddenOS = TRUE;
+ bHiddenVol = TRUE;
+ bHiddenVolHost = TRUE;
+ return 1;
+ }
+
+ if (lw == IDC_SYSENC_NORMAL)
+ {
+ SendMessage (GetDlgItem (hwndDlg, IDC_SYSENC_HIDDEN), BM_SETCHECK, BST_UNCHECKED, 0);
+
+ bHiddenOS = FALSE;
+ bHiddenVol = FALSE;
+ bHiddenVolHost = FALSE;
+ return 1;
+ }
+
+ if(lw == IDHELP)
+ {
+ Applink ("hiddensysenc");
+ return 1;
+ }
+ }
+ }
+ return 0;
+}
+
+/* AES, HASH, Pim and Wipe mode can be selected here */
+BOOL CALLBACK AdvanceDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam)
+{
+ WORD lw = LOWORD(wParam);
+ WORD hw = HIWORD(wParam);
+ int ea, hid;
+ wchar_t buf[100];
+ BOOL bNTFSallowed = FALSE;
+ BOOL bFATallowed = FALSE;
+ BOOL bEXFATallowed = FALSE;
+ BOOL bReFSallowed = FALSE;
+ BOOL bNoFSallowed = FALSE;
+ hCurPage = hwndDlg;
+
+ switch (msg)
+ {
+ case WM_INITDIALOG:
+ {
+ SetWindowTextW ( GetDlgItem (hwndDlg, IDT_IMPORTANT_NOTE), GetString ("ADV_FEATURES_NOTE"));
+ SetWindowTextW ( GetDlgItem (hwndDlg, IDT_PIM_INFO), GetString ("PIM_INFO"));
+ SetWindowTextW ( GetDlgItem (hwndDlg, IDT_WIPE_INFO), GetString ("WIPE_INFO"));
+
+ /* Encryption algorithms */
+
+ SendMessage(GetDlgItem(hwndDlg, IDC_COMBO_BOX), CB_RESETCONTENT, 0, 0);
+
+ for (ea = EAGetFirst (); ea != 0; ea = EAGetNext (ea))
+ {
+ if (EAIsFormatEnabled (ea) && (!SysEncInEffect () || bSystemIsGPT || EAIsMbrSysEncEnabled (ea)))
+ AddComboPair (GetDlgItem (hwndDlg, IDC_COMBO_BOX), EAGetName (buf, ARRAYSIZE(buf), ea, 1), ea);
+ }
+
+ SelectAlgo (GetDlgItem (hwndDlg, IDC_COMBO_BOX), &nVolumeEA);
+ ComboSelChangeEA (hwndDlg);
+ SetFocus (GetDlgItem (hwndDlg, IDC_COMBO_BOX));
+
+ /* Hash algorithms */
+ if (SysEncInEffect())
+ {
+ RandSetHashFunction(hash_algo);
+ for (hid = FIRST_PRF_ID; hid <= LAST_PRF_ID; hid++)
+ {
+ // Use blake2s for hashing
+ if (((hid == BLAKE2S) || !HashIsDeprecated(hid)) && (bSystemIsGPT || HashForSystemEncryption(hid)))
+ AddComboPair(GetDlgItem(hwndDlg, IDC_COMBO_BOX_HASH_ALGO), HashGetName(hid), hid);
+ }
+ }
+ else
+ {
+ hash_algo = RandGetHashFunction();
+ for (hid = FIRST_PRF_ID; hid <= LAST_PRF_ID; hid++)
+ {
+ if (!HashIsDeprecated(hid))
+ AddComboPair(GetDlgItem(hwndDlg, IDC_COMBO_BOX_HASH_ALGO), HashGetName(hid), hid);
+ }
+ }
+
+ if (CreatingHiddenSysVol())
+ Warning ("HIDDEN_OS_PRE_CIPHER_WARNING", MainDlg);
+
+ SetWindowText(GetDlgItem(hwndDlg, IDC_SHA512_HELP), GetString("SHA512_HELP"));
+ SelectAlgo(GetDlgItem(hwndDlg, IDC_COMBO_BOX_HASH_ALGO), &hash_algo);
+
+ /* file system options */
+ SetTimer(GetParent(hwndDlg), TIMER_ID_RANDVIEW, TIMER_INTERVAL_RANDVIEW, NULL);
+
+ hMasterKey = GetDlgItem(hwndDlg, IDC_DISK_KEY);
+ hHeaderKey = GetDlgItem(hwndDlg, IDC_HEADER_KEY);
+ hRandPool = GetDlgItem(hwndDlg, IDC_RANDOM_BYTES);
+
+ SendMessage(GetDlgItem(hwndDlg, IDC_RANDOM_BYTES), WM_SETFONT, (WPARAM)hFixedDigitFont, (LPARAM)TRUE);
+ SendMessage(GetDlgItem(hwndDlg, IDC_DISK_KEY), WM_SETFONT, (WPARAM)hFixedDigitFont, (LPARAM)TRUE);
+ SendMessage(GetDlgItem(hwndDlg, IDC_HEADER_KEY), WM_SETFONT, (WPARAM)hFixedDigitFont, (LPARAM)TRUE);
+
+ /* Quick/Dynamic */
+
+ if (bHiddenVol)
+ {
+ quickFormat = !bHiddenVolHost;
+ dynamicFormat = FALSE;
+ bSparseFileSwitch = FALSE;
+ }
+ else
+ {
+ if (bDevice)
+ {
+ dynamicFormat = FALSE;
+ bSparseFileSwitch = FALSE;
+ }
+ else
+ {
+ wchar_t root[TC_MAX_PATH];
+ DWORD fileSystemFlags = 0;
+
+ /* Check if the host file system supports sparse files */
+
+ if (GetVolumePathName (szFileName, root, array_capacity (root)))
+ {
+ GetVolumeInformation (root, NULL, 0, NULL, NULL, &fileSystemFlags, NULL, 0);
+ bSparseFileSwitch = fileSystemFlags & FILE_SUPPORTS_SPARSE_FILES;
+ }
+ else
+ bSparseFileSwitch = FALSE;
+ if (!bSparseFileSwitch)
+ {
+ dynamicFormat = FALSE;
+ }
+ }
+ }
+ SendMessage (GetDlgItem (hwndDlg, IDC_SHOW_KEYS), BM_SETCHECK, showKeys ? BST_CHECKED : BST_UNCHECKED, 0);
+ SetWindowText (GetDlgItem (hwndDlg, IDC_RANDOM_BYTES), showKeys ? L"" : L"******************************** ");
+ SetWindowText (GetDlgItem (hwndDlg, IDC_HEADER_KEY), showKeys ? L"" : L"******************************** ");
+ SetWindowText (GetDlgItem (hwndDlg, IDC_DISK_KEY), showKeys ? L"" : L"******************************** ");
+
+ SendMessage(GetDlgItem(hwndDlg, IDC_CLUSTERSIZE), CB_RESETCONTENT, 0, 0);
+ AddComboPairW(GetDlgItem(hwndDlg, IDC_CLUSTERSIZE), GetString("DEFAULT"), 0);
+ SendMessage(GetDlgItem(hwndDlg, IDC_CLUSTERSIZE), CB_SETCURSEL, 0, 0);
+ EnableWindow(GetDlgItem(hwndDlg, IDC_CLUSTERSIZE), TRUE);
+
+ /* Filesystems */
+ bNTFSallowed = FALSE;
+ bFATallowed = FALSE;
+ bEXFATallowed = FALSE;
+ bReFSallowed = FALSE;
+ bNoFSallowed = FALSE;
+
+ SendMessage(GetDlgItem(hwndDlg, IDC_FILESYS), CB_RESETCONTENT, 0, 0);
+ EnableWindow(GetDlgItem(hwndDlg, IDC_FILESYS), TRUE);
+
+ uint64 dataAreaSize = GetVolumeDataAreaSize (bHiddenVol && !bHiddenVolHost, nVolumeSize);
+
+ if (!CreatingHiddenSysVol())
+ {
+ if (dataAreaSize >= TC_MIN_NTFS_FS_SIZE && dataAreaSize <= TC_MAX_NTFS_FS_SIZE)
+ {
+ AddComboPair (GetDlgItem (hwndDlg, IDC_FILESYS), L"NTFS", FILESYS_NTFS);
+ bNTFSallowed = TRUE;
+ }
+
+ if (dataAreaSize >= TC_MIN_FAT_FS_SIZE && dataAreaSize <= TC_MAX_FAT_SECTOR_COUNT * GetFormatSectorSize())
+ {
+ AddComboPair (GetDlgItem (hwndDlg, IDC_FILESYS), L"FAT", FILESYS_FAT);
+ bFATallowed = TRUE;
+ }
+
+ //exFAT support added starting from Vista SP1
+ if (IsOSVersionAtLeast (WIN_VISTA, 1) && dataAreaSize >= TC_MIN_EXFAT_FS_SIZE && dataAreaSize <= TC_MAX_EXFAT_FS_SIZE)
+ {
+ AddComboPair (GetDlgItem (hwndDlg, IDC_FILESYS), L"exFAT", FILESYS_EXFAT);
+ bEXFATallowed = TRUE;
+ }
+
+ //ReFS write support activated by default starting from Windows 10
+ //We don't support it yet for the creation of hidden volumes
+ if ((!bHiddenVolHost) && IsOSVersionAtLeast (WIN_10, 0) && dataAreaSize >= TC_MIN_REFS_FS_SIZE && dataAreaSize <= TC_MAX_REFS_FS_SIZE)
+ {
+ AddComboPair (GetDlgItem (hwndDlg, IDC_FILESYS), L"ReFS", FILESYS_REFS);
+ bReFSallowed = TRUE;
+ }
+ }
+ else
+ {
+ // We're creating a hidden volume for a hidden OS, so we don't need to format it with
+ // any filesystem (the entire OS will be copied to the hidden volume sector by sector).
+ EnableWindow (GetDlgItem (hwndDlg, IDC_FILESYS), FALSE);
+ EnableWindow (GetDlgItem (hwndDlg, IDC_CLUSTERSIZE), FALSE);
+ }
+ if (!bHiddenVolHost)
+ {
+ AddComboPairW(GetDlgItem(hwndDlg, IDC_FILESYS), GetString("NONE"), FILESYS_NONE);
+ bNoFSallowed = TRUE;
+ }
+ if (fileSystem == FILESYS_NONE) // If no file system has been previously selected
+ {
+ // Set default file system
+
+ if (bFATallowed && !(nNeedToStoreFilesOver4GB == 1 && (bNTFSallowed || bEXFATallowed || bReFSallowed)))
+ fileSystem = FILESYS_FAT;
+ else if (bEXFATallowed)
+ fileSystem = FILESYS_EXFAT;
+ else if (bNTFSallowed)
+ fileSystem = FILESYS_NTFS;
+ else if (bReFSallowed)
+ fileSystem = FILESYS_REFS;
+ else if (bNoFSallowed)
+ fileSystem = FILESYS_NONE;
+ else
+ {
+ AddComboPair (GetDlgItem (hwndDlg, IDC_FILESYS), L"---", 0);
+ }
+ }
+
+ SendMessage(GetDlgItem(hwndDlg, IDC_FILESYS), CB_SETCURSEL, 0, 0);
+ SelectAlgo(GetDlgItem(hwndDlg, IDC_FILESYS), (int *)&fileSystem);
+
+ /* PIM and Wipe mode */
+ SetCheckBox(hwndDlg, IDC_PIM_ENABLE, PimEnable);
+
+ PopulateWipeModeCombo(GetDlgItem(hwndDlg, IDC_WIPE_MODE),
+ SystemEncryptionStatus == SYSENC_STATUS_DECRYPTING && !bInPlaceEncNonSys,
+ TRUE,
+ FALSE);
+ SelectAlgo(GetDlgItem(hwndDlg, IDC_WIPE_MODE), (int *)&nWipeMode);
+ SetFocus(GetDlgItem(GetParent(hwndDlg), IDOK));
+ }
+ return 1;
+ case WM_COMMAND:
+ if (lw == IDCANCEL)
+ {
+ EndDialog(hwndDlg, lw);
+ return 1;
+ }
+ if (lw == IDOK)
+ {
+ /* Save hash and encryption algo */
+ LPARAM nIndex;
+ nIndex = SendMessage (GetDlgItem (hCurPage, IDC_COMBO_BOX), CB_GETCURSEL, 0, 0);
+ nVolumeEA = (int) SendMessage (GetDlgItem (hCurPage, IDC_COMBO_BOX), CB_GETITEMDATA, nIndex, 0);
+
+ if (!bSystemIsGPT && SysEncInEffect ()
+ && EAGetCipherCount (nVolumeEA) > 1) // Cascade?
+ {
+ if (AskWarnNoYes ("CONFIRM_CASCADE_FOR_SYS_ENCRYPTION", hwndDlg) == IDNO)
+ return 1;
+
+ if (!bHiddenOS)
+ Info ("NOTE_CASCADE_FOR_SYS_ENCRYPTION", hwndDlg);
+ }
+
+ nIndex = SendMessage (GetDlgItem (hCurPage, IDC_COMBO_BOX_HASH_ALGO), CB_GETCURSEL, 0, 0);
+ hash_algo = (int) SendMessage (GetDlgItem (hCurPage, IDC_COMBO_BOX_HASH_ALGO), CB_GETITEMDATA, nIndex, 0);
+
+ RandSetHashFunction (hash_algo);
+
+ /* Save PIM and Wipe mode */
+ nWipeMode = (WipeAlgorithmId)SendMessage(GetDlgItem(hwndDlg, IDC_WIPE_MODE),
+ CB_GETITEMDATA,
+ SendMessage(GetDlgItem(hwndDlg, IDC_WIPE_MODE), CB_GETCURSEL, 0, 0),
+ 0);
+
+ PimEnable = GetCheckBox(hwndDlg, IDC_PIM_ENABLE);
+ SetCheckBox(hwndDlg, IDC_PIM_ENABLE, PimEnable);
+
+ EndDialog(hwndDlg, lw);
+ return 1;
+ }
+ if (lw == IDC_CIPHER_TEST)
+ {
+ LPARAM nIndex;
+ int c;
+
+ nIndex = SendMessage (GetDlgItem (hCurPage, IDC_COMBO_BOX), CB_GETCURSEL, 0, 0);
+ nVolumeEA = (int) SendMessage (GetDlgItem (hCurPage, IDC_COMBO_BOX), CB_GETITEMDATA, nIndex, 0);
+
+ for (c = EAGetLastCipher (nVolumeEA); c != 0; c = EAGetPreviousCipher (nVolumeEA, c))
+ {
+ DialogBoxParamW (hInst, MAKEINTRESOURCEW (IDD_CIPHER_TEST_DLG),
+ GetParent (hwndDlg), (DLGPROC) CipherTestDialogProc, (LPARAM) c);
+ }
+
+ return 1;
+ }
+
+ if (lw == IDC_BENCHMARK)
+ {
+ // Reduce CPU load
+ bFastPollEnabled = FALSE;
+ bRandmixEnabled = FALSE;
+
+ DialogBoxParamW (hInst,
+ MAKEINTRESOURCEW (IDD_BENCHMARK_DLG), hwndDlg,
+ (DLGPROC) BenchmarkDlgProc, (LPARAM) bSystemIsGPT);
+
+ bFastPollEnabled = TRUE;
+ bRandmixEnabled = TRUE;
+ return 1;
+ }
+
+ if (lw == IDC_WIPE_MODE && hw == CBN_SELCHANGE)
+ {
+ Warning ("WIPE_WARNING", hwndDlg);
+ return 1;
+ }
+
+ if (hw == CBN_SELCHANGE && lw == IDC_COMBO_BOX)
+ {
+ ComboSelChangeEA (hwndDlg);
+ SetWindowTextW (GetDlgItem (hCurPage, IDC_BENCHMARK), GetString ("IDC_BENCHMARK"));
+ return 1;
+ }
+
+ if (hw == CBN_SELCHANGE && lw == IDC_COMBO_BOX_HASH_ALGO)
+ {
+ ShowWindow (GetDlgItem (hwndDlg, IDT_HASH_ALGO), SW_SHOW);
+ if (SysEncInEffect())
+ {
+ HWND hHashAlgoItem = GetDlgItem (hCurPage, IDC_COMBO_BOX_HASH_ALGO);
+ int selectedAlgo = (int)SendMessage (hHashAlgoItem, CB_GETITEMDATA, SendMessage (hHashAlgoItem, CB_GETCURSEL, 0, 0), 0);
+
+ if (!bSystemIsGPT && !HashForSystemEncryption (selectedAlgo))
+ {
+ hash_algo = DEFAULT_HASH_ALGORITHM_BOOT;
+ RandSetHashFunction (DEFAULT_HASH_ALGORITHM_BOOT);
+ Info ("ALGO_NOT_SUPPORTED_FOR_SYS_ENCRYPTION", MainDlg);
+ SelectAlgo (GetDlgItem (hCurPage, IDC_COMBO_BOX_HASH_ALGO), &hash_algo);
+ }
+ }
+ return 1;
+ }
+
+ if (lw == IDC_PIM_ENABLE)
+ {
+ PimEnable = GetCheckBox (hwndDlg, IDC_PIM_ENABLE);
+ if (!PimEnable)
+ volumePim = 0;
+ return 1;
+ }
+ }
+ return 0;
+}
+
+void
+AddComboPairW (HWND hComboBox, const wchar_t *lpszItem, int value)
+{
+ LPARAM nIndex;
+ nIndex = SendMessageW(hComboBox, CB_ADDSTRING, 0, (LPARAM)lpszItem);
+ nIndex = SendMessage(hComboBox, CB_SETITEMDATA, nIndex, (LPARAM)value);
+}
+
+/* Acording to NIST, only a blacklist check and at least 8 character should be compulsary, no special character check... */
+int PrintStrongness (char input[], unsigned int length)
+{
+ unsigned int n = length;
+ int iReturnValue = 0;
+ if (n < 10)
+ {
+ burn (input, sizeof(input));
+ return iReturnValue = weak;
+ }
+ else if (CheckWord(input))
+ {
+ burn (input, sizeof(input));
+ return iReturnValue = weak;
+ }
+ //Tetermine the strength of the passsord
+ if ((n >= 13))
+ {
+ iReturnValue = very_strong;
+ }
+ //if 3 out of 4 paramters are true
+ else if (n >= 10)
+ {
+ iReturnValue = strong;
+ }
+ //if 2 out of 4 values are true
+ else if (n >= 8)
+ {
+ iReturnValue = medium;
+ }
+ else
+ {
+ iReturnValue = weak;
+ }
+ burn (input, sizeof(input));
+ return iReturnValue;
+}
+
+/* Check if password is in list
+Credits go Martin York from https://codereview.stackexchange.com/questions/52702/how-to-search-for-a-word-in-a-sorted-text-file-efficiently */
+BOOL CheckWord (char* search)
+{
+
+ bool isWordInDict(std::string const& word);
+ {
+ struct MyDict : std::set<std::string>
+ {
+ typedef std::set<std::string>::const_iterator const_iterator;
+ MyDict()
+ {
+ wchar_t path[TC_MAX_PATH];
+ wchar_t tmp[TC_MAX_PATH];
+ wchar_t destFileName[TC_MAX_PATH] = L"password1000000.txt";
+
+ if (GetModuleFileName (NULL, path, ARRAYSIZE (path)) == 0)
+ {
+ Error ("ERROR_GETTING_PATH", MainDlg);
+ }
+
+ StringCbCopyW(tmp, ARRAYSIZE(tmp), path);
+
+ //detects the last '\' in order to remove the name of the exe file. Afterwards add .txt file in the path
+ for (int i = wcslen(path); i > 1; i--)
+ {
+ if (tmp[i] == '\\')
+ {
+ for(unsigned int j = i + 1; j < wcslen(path); j++)
+ {
+ tmp[j] = '\0';
+ }
+ break;
+ }
+ }
+ StringCbCatW(tmp, sizeof(tmp), destFileName);
+
+ std::ifstream fin(tmp);
+ std::copy(std::istream_iterator<std::string>(fin), std::istream_iterator<std::string>(),
+ std::inserter(*this, end()));
+ }
+ };
+ static const MyDict dict;
+ MyDict::const_iterator find = dict.find(search);
+
+ return find != dict.end();
+ }
+}
+
+/* Credits go to Barmak Shemirani from https://stackoverflow.com/questions/31407492/c-tooltip-function-for-checkbox */
+void CreateToolTip(HWND hWndParent, HWND hControlItem, PTSTR pszText)
+{
+ if (!hControlItem || !hWndParent || !pszText)
+ return;
+
+ HWND hwndTip = CreateWindowEx(NULL, TOOLTIPS_CLASS, NULL,
+ WS_POPUP | TTS_NOFADE | TTS_ALWAYSTIP /*| TTS_BALLOON*/,
+ CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
+ hWndParent, NULL, GetModuleHandle(NULL), NULL);
+
+ if (!hwndTip)
+ return;
+
+ TOOLINFO toolInfo = { 0 };
+ toolInfo.cbSize = sizeof(toolInfo);
+ toolInfo.hwnd = hWndParent;
+ toolInfo.uFlags = TTF_IDISHWND | TTF_SUBCLASS;
+ toolInfo.uId = (UINT_PTR)hControlItem;
+ toolInfo.lpszText = pszText;
+ GetClientRect(hWndParent, &toolInfo.rect);
+ if (!SendMessage(hwndTip, TTM_ADDTOOL, 0, (LPARAM)&toolInfo))
+ {
+ MessageBox(0, TEXT("TTM_ADDTOOL failed\nWrong project manifest!"), 0, 0);
+ }
+}
diff --git a/src/Format/Tcformat.h b/src/Format/Tcformat.h
index f9328afd..a8237521 100644
--- a/src/Format/Tcformat.h
+++ b/src/Format/Tcformat.h
@@ -72,38 +72,46 @@ void ShowNonSysInPlaceEncUIStatus (void);
void UpdateNonSysInPlaceEncControls (void);
int MountHiddenVolHost ( HWND hwndDlg, wchar_t *volumePath, int *driveNo, Password *password, int pkcs5_prf, int pim, BOOL bReadOnly );
int AnalyzeHiddenVolumeHost (HWND hwndDlg, int *driveNo, __int64 hiddenVolHostSize, int *realClusterSize, __int64 *pnbrFreeClusters);
int ScanVolClusterBitmap ( HWND hwndDlg, int *driveNo, __int64 nbrClusters, __int64 *nbrFreeClusters);
static void WipeStart (void);
static void WipeAbort (void);
static void UpdateWipeProgressBar (void);
static void InitWipeProgressBar (void);
static void UpdateWipeControls (void);
static DWORD GetFormatSectorSize ();
extern BOOL showKeys;
extern volatile HWND hMasterKey;
extern volatile HWND hHeaderKey;
extern volatile BOOL bHiddenVolHost;
extern volatile BOOL bHiddenVolDirect;
extern BOOL bRemovableHostDevice;
extern BOOL bWarnDeviceFormatAdvanced;
extern HWND hCurPage;
extern HWND hProgressBar;
extern volatile BOOL bVolTransformThreadCancel;
extern volatile BOOL bInPlaceEncNonSysResumed;
extern volatile BOOL bFirstNonSysInPlaceEncResumeDone;
extern volatile BOOL bInPlaceEncNonSys;
extern volatile BOOL bInPlaceDecNonSys;
extern __int64 NonSysInplaceEncBytesDone;
extern __int64 NonSysInplaceEncTotalSize;
extern int nPbar;
extern volatile int WizardMode;
extern volatile BOOL bInPlaceEncNonSysResumed;
extern wchar_t HeaderKeyGUIView [KEY_GUI_VIEW_SIZE];
extern wchar_t MasterKeyGUIView [KEY_GUI_VIEW_SIZE];
extern volatile int NonSysInplaceEncStatus;
+BOOL CALLBACK AdvanceDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
+BOOL CALLBACK FinishDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
+void AddComboPairW (HWND hComboBox, const wchar_t *lpszItem, int value);
+int PrintStrongness (char* input, unsigned int length);
+BOOL CheckWord (char search[]);
+BOOL CALLBACK AdvanceDlgProcIntro (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
+void CreateToolTip (HWND hWndParent, HWND hControlItem, PTSTR pszText);
+
#ifdef __cplusplus
}
#endif
diff --git a/src/Release/Setup Files/Product64.wxs b/src/Release/Setup Files/Product64.wxs
index e20fd1dc..2f43edd1 100644
--- a/src/Release/Setup Files/Product64.wxs
+++ b/src/Release/Setup Files/Product64.wxs
@@ -835,73 +835,70 @@
<File Id="filBE0C2BED7FB2DD3D2FC511AC4D7D385A" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Protection of Hidden Volumes.html" DiskId="1" />
</Component>
<Component Id="cmp493A37205039E2A3A476A1A4F5360EBF" Guid="{3D92A6B0-B03F-4C86-8020-F756FBAADDC8}">
<File Id="filC70F6B9415FAADA8160DB4529D0BE54D" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Protection of Hidden Volumes_Image_027.jpg" DiskId="1" />
</Component>
<Component Id="cmpF36A771DF9B1C4CD8E82C08A6D3D0786" Guid="{C0D77203-5FAC-4052-A490-ABB0346384AF}">
<File Id="filE1423115AD04FF5AEC6F63AA963CB4D6" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Protection of Hidden Volumes_Image_028.jpg" DiskId="1" />
</Component>
<Component Id="cmp63F6A68C5538B45661168554BC3B93D1" Guid="{252A5E82-AD3A-49A7-8185-421735A09DCE}">
<File Id="fil5286E3B666BFB60D10FBA4CF8D8F6925" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Protection of Hidden Volumes_Image_029.jpg" DiskId="1" />
</Component>
<Component Id="cmp0158A6D8BED6391AC7150B6C6AE2A9F9" Guid="{5A0D3271-1439-4E71-B7F6-D645FEC8FD49}">
<File Id="fil2C5151D680BC4575AC607487970F87D8" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Protection of Hidden Volumes_Image_030.jpg" DiskId="1" />
</Component>
<Component Id="cmpDE45667E9E3CD9F800EAC1E02B57AAB7" Guid="{333167EF-38B6-49E2-A24A-04E08F7D87BE}">
<File Id="fil1B03C5F8575364F36A893E5EE4723659" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Protection of Hidden Volumes_Image_031.jpg" DiskId="1" />
</Component>
<Component Id="cmp632453049391BAACDD117A40EC442743" Guid="{75B50C72-2495-4A22-BFDA-5BFE041EB265}">
<File Id="fil37E6C8BC6738BF93446E4F2D13E312EC" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Random Number Generator.html" DiskId="1" />
</Component>
<Component Id="cmpCE16E453CAD75A461B4FEBF451A51B7B" Guid="{E68D3F57-0A30-4492-9088-F2D1B0C7934A}">
<File Id="filC3043FC38C97C7B8038FF12DD7882D85" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Reallocated Sectors.html" DiskId="1" />
</Component>
<Component Id="cmpC741D187A28A87BD33866C9AC09A1298" Guid="{FB850461-6BD1-495F-9C10-19A34CFA0F16}">
<File Id="filFFB70B91C00A69849F9E36950C6606B3" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\References.html" DiskId="1" />
</Component>
<Component Id="cmpB313B00E647A121B2CBE47F3048A18A7" Guid="{5985576D-6F6C-4D96-9B3E-9E0961CF9FAF}">
<File Id="fil2EB5F87C05CCC55D3964D595C85EF19E" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Release Notes.html" DiskId="1" />
</Component>
<Component Id="cmp400428F6494DE58618E3B92539548C39" Guid="{0A1869ED-25F1-4430-97A5-4C6EA8CDA7FC}">
<File Id="filEDEDEF956F04F36B4163989F9AB9285F" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Removable Medium Volume.html" DiskId="1" />
</Component>
<Component Id="cmpFB2313AB16EF2467366ED136C0E61CE6" Guid="{CFEC9559-9F85-46C6-9E98-AEBB573B96FE}">
<File Id="filE496203C4727FDF47F8352CB9722A8C7" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Removing Encryption.html" DiskId="1" />
</Component>
- <Component Id="cmp960F36632D3FB602421D1195E4EB6FE1" Guid="{321F49A5-8A1B-4881-A32D-12EDA99D1B85}">
- <File Id="fil324009D5856BF4C5270D40F1EC4110EB" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\RIPEMD-160.html" DiskId="1" />
- </Component>
<Component Id="cmpB4C7B1A7A3EC0CB2DE805AC5CC5FC0D7" Guid="{4534E8B2-114E-4173-AE3E-75E0D96EB573}">
<File Id="fil8CFD1CFDCBE261B6F91D9E587F8720C0" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Security Model.html" DiskId="1" />
</Component>
<Component Id="cmp00540BF93A805E0B9996945B61E1BC2F" Guid="{1D5B7A85-87F3-45AF-9C09-BA7E088A835D}">
<File Id="filA7A29851126AC571C090BB0FBEE83CB5" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Security Requirements and Precautions.html" DiskId="1" />
</Component>
<Component Id="cmp4C46C6668AD830D543AFE593D51676B3" Guid="{4CD21E9D-243F-4A58-A535-AA8EF9D2BFD1}">
<File Id="fil440C5158A3CD96689918C976DC917325" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Security Requirements for Hidden Volumes.html" DiskId="1" />
</Component>
<Component Id="cmp6EE914124966E3A0F695359116413DD4" Guid="{724FA79D-49BC-4075-ABF4-0C318AE39855}">
<File Id="filD229058EB41E2E150C0CA4D0EC1DF39B" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Security Tokens &amp; Smart Cards.html" DiskId="1" />
</Component>
<Component Id="cmp28E29B4CA17AB51913B756CD9397EEFE" Guid="{1B9083B9-8E76-44CA-AE3E-0771B1ABA62B}">
<File Id="filC173058120D357E87951F41755A9210B" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Serpent.html" DiskId="1" />
</Component>
<Component Id="cmp5DF24509F284FABC600232197F803DE5" Guid="{120A40CF-E44A-4F4F-9072-93248DABACA2}">
<File Id="fil01F3ACD810057C4A059A5C424E1B79E1" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\SHA-256.html" DiskId="1" />
</Component>
<Component Id="cmp09E31B885345FBEA1F473AF7A10FD88D" Guid="{1B1C80CF-6C3C-4C7D-BE7B-579042701D0F}">
<File Id="fil2E702CC679444D8DDB66A3FBDB32C807" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\SHA-512.html" DiskId="1" />
</Component>
<Component Id="cmpAE05C79A35A43ECCAC995A711DC4D60B" Guid="{151A493F-38A5-4EF1-9740-255B610B4117}">
<File Id="fil167B9CF3B9CD2FA5458778733095F780" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Sharing over Network.html" DiskId="1" />
</Component>
<Component Id="cmpB6D91209A93313D08150643F1738DED8" Guid="{270DF8A0-8859-49F3-BF05-2F155C3CA428}">
<File Id="filF3B75776C2FEC0F4397274BCA02330DB" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Source Code.html" DiskId="1" />
</Component>
<Component Id="cmpDB66E821EC13977824FB1069DF5DAA69" Guid="{D08B0614-2B88-4445-9B47-52BEA0E29E77}">
<File Id="filA67FBF7D25BFBA155A0E4570F404CBEE" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Standard Compliance.html" DiskId="1" />
</Component>
<Component Id="cmp159AB26E32632FC87229090B3AA89BF8" Guid="{B35B4FD4-D82C-47E9-BB2A-5539115F40CC}">
<File Id="filBFED47E502C7539F724D68EAF73A554D" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\Streebog.html" DiskId="1" />
</Component>
<Component Id="cmp5BE3E12343551B853E1B143371CBEBE6" Guid="{5ACC0589-AD8D-4BAC-BD40-201BAD7D07BC}">
<File Id="filA40C816E149FB745F49DAF482DF97F3B" KeyPath="yes" Source="$(sys.CURRENTDIR)\docs\html\en\styles.css" DiskId="1" />
@@ -1351,71 +1348,70 @@
<ComponentRef Id="cmp1E4F8137AD337BEA1B902E6B003AB953" />
<ComponentRef Id="cmp8D35F7D61B2B7DF0EDEAE2E56031E7CB" />
<ComponentRef Id="cmpDE2C66707086A509EABD0F9F6E8BDB1A" />
<ComponentRef Id="cmpA80443C3767E3E51F3DE88BFD0D7A33B" />
<ComponentRef Id="cmp214446AAABEBAC0C3827B8977083FAE2" />
<ComponentRef Id="cmp4AF022868FE6883520C700676C43B15D" />
<ComponentRef Id="cmpC27AA2C4496C9EFA95DCD663B031B5D0" />
<ComponentRef Id="cmp9CBBC8311BBFC54C8DC1162BB17E5AED" />
<ComponentRef Id="cmp033461B0777614621A2ED7B4E2B08D55" />
<ComponentRef Id="cmp0E43CDBBAE343957423AE2907AC16883" />
<ComponentRef Id="cmp8A8526D2061A14810E1B7A8A6E527DCD" />
<ComponentRef Id="cmpAE2DADEF126C59D8CCD3A18D8CDC49C8" />
<ComponentRef Id="cmp2F972A5C99F7EE708B7C232EE8647672" />
<ComponentRef Id="cmpB21F7D781FE7B006ABCA7974A21F29E2" />
<ComponentRef Id="cmpF345174585735CD7A31AE138DDE8B439" />
<ComponentRef Id="cmp06772C03A0ECA40F11F1D5C5ACD607D8" />
<ComponentRef Id="cmp79E890B8891FA87AA5B10A67E15E7E8E" />
<ComponentRef Id="cmp89C46AE8EC4175E62A9CFE3DF9DF924A" />
<ComponentRef Id="cmpC8F860B10D41961424874F69C6D84ED3" />
<ComponentRef Id="cmp285021B8CBC8E92B1CBCE4C88731083C" />
<ComponentRef Id="cmpABE9B0A93A9B14C0732EBD8CD17A11AE" />
<ComponentRef Id="cmpD9B960879A3227B971E33222CE13BC18" />
<ComponentRef Id="cmp3B3BB414D13FDBF2B0C7A9CEBD7D98F5" />
<ComponentRef Id="cmpB39B1096387C2617720F515D24953B37" />
<ComponentRef Id="cmp493A37205039E2A3A476A1A4F5360EBF" />
<ComponentRef Id="cmpF36A771DF9B1C4CD8E82C08A6D3D0786" />
<ComponentRef Id="cmp63F6A68C5538B45661168554BC3B93D1" />
<ComponentRef Id="cmp0158A6D8BED6391AC7150B6C6AE2A9F9" />
<ComponentRef Id="cmpDE45667E9E3CD9F800EAC1E02B57AAB7" />
<ComponentRef Id="cmp632453049391BAACDD117A40EC442743" />
<ComponentRef Id="cmpCE16E453CAD75A461B4FEBF451A51B7B" />
<ComponentRef Id="cmpC741D187A28A87BD33866C9AC09A1298" />
<ComponentRef Id="cmpB313B00E647A121B2CBE47F3048A18A7" />
<ComponentRef Id="cmp400428F6494DE58618E3B92539548C39" />
<ComponentRef Id="cmpFB2313AB16EF2467366ED136C0E61CE6" />
- <ComponentRef Id="cmp960F36632D3FB602421D1195E4EB6FE1" />
<ComponentRef Id="cmpB4C7B1A7A3EC0CB2DE805AC5CC5FC0D7" />
<ComponentRef Id="cmp00540BF93A805E0B9996945B61E1BC2F" />
<ComponentRef Id="cmp4C46C6668AD830D543AFE593D51676B3" />
<ComponentRef Id="cmp6EE914124966E3A0F695359116413DD4" />
<ComponentRef Id="cmp28E29B4CA17AB51913B756CD9397EEFE" />
<ComponentRef Id="cmp5DF24509F284FABC600232197F803DE5" />
<ComponentRef Id="cmp09E31B885345FBEA1F473AF7A10FD88D" />
<ComponentRef Id="cmpAE05C79A35A43ECCAC995A711DC4D60B" />
<ComponentRef Id="cmpB6D91209A93313D08150643F1738DED8" />
<ComponentRef Id="cmpDB66E821EC13977824FB1069DF5DAA69" />
<ComponentRef Id="cmp159AB26E32632FC87229090B3AA89BF8" />
<ComponentRef Id="cmp5BE3E12343551B853E1B143371CBEBE6" />
<ComponentRef Id="cmp0E081D9499DA225BB788494A1D86893D" />
<ComponentRef Id="cmpBC7134AF21BAE309E9FD1A52ADF92527" />
<ComponentRef Id="cmpB586F01E9F9657C498F2AB64E1F51BD7" />
<ComponentRef Id="cmp6EB049078039C276CADA69E7B79FDFA8" />
<ComponentRef Id="cmp3135BB68A1F44DDD9FE19B7D5FB4ED7B" />
<ComponentRef Id="cmp98ECAD990DF7B535B05EF6E840B7B2DF" />
<ComponentRef Id="cmpFE417CCCB859A1C3E4FB90A9C4E132F0" />
<ComponentRef Id="cmpD91C00B1B2AACF38761B45D0574884D7" />
<ComponentRef Id="cmp590EDE3CE6E09D0D43B35287E849B75A" />
<ComponentRef Id="cmp9D6F95F912C3B9C95E92E39BA1CE6BC9" />
<ComponentRef Id="cmpAD429D8A050A0D31B661626BDCA9C952" />
<ComponentRef Id="cmp3BDE199844AB81673ABB0E5E61E9B7B5" />
<ComponentRef Id="cmp0A4AB9AEF0D351FA5E63BCD67DC00607" />
<ComponentRef Id="cmpCC25F1CB6A1C9D8B47C407B818F73B59" />
<ComponentRef Id="cmpE0F5E8A2D6FEF181686370F0E1EAC632" />
<ComponentRef Id="cmp46B2E8BCD50BD668153E793EB737BC39" />
<ComponentRef Id="cmp0305CC2824E44F697B402E56A0CD1754" />
<ComponentRef Id="cmp0E00CBDCB82A904FD6AD82E458CA6AA7" />
<ComponentRef Id="cmp594B5E68E63675F4986F6717BC1F5950" />
<ComponentRef Id="cmp62748E79EC04EBE33DC46770AD65CDCE" />
<ComponentRef Id="cmpE1265CF3CC5E0B487E99D9D5936BB3F4" />
<ComponentRef Id="cmp1C162513D52824629D7C9FAF96054182" />
<ComponentRef Id="cmpB5FA2A488D2C7E59E0B52D18820CE00A" />
@@ -1674,36 +1670,36 @@
<!-- UNINSTALLATION ONLY CAs -->
<!-- Execute PreUninst_SetData before RemoveFiles action when uninstalling ONLY
and before DoPreUninstall to set the DoPreUninstall's Custom Action Data -->
<Custom Action="PreUninst_SetData" Before="DoPreUninstall">REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE</Custom>
<!-- Execute DoPreUninstall before RemoveFiles when uninstalling ONLY -->
<Custom Action="DoPreUninstall" Before="RemoveFiles">REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE</Custom>
<!-- Execute PostUninst_SetData after RemoveFiles action when uninstalling ONLY
and before DoPostUninstall to set the DoPostUninstall's Custom Action Data -->
<Custom Action="PostUninst_SetData" Before="DoPostUninstall">REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE</Custom>
<!-- Execute DoPostUninstall after RemoveFiles action when uninstalling ONLY -->
<Custom Action="DoPostUninstall" After="RemoveFiles">REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE</Custom>
<!-- Execute DoChecks after InstallFinalize action of first installation or repair or uninstall.
Since we schedule RemoveExistingProducts after InstallExecute, if we execute this CA at UPGRADINGPRODUCTCODE,
it will execute it twice : once when it installs new files (NOT Installed), and then when it removes unnecessary files (actual upgrade: UPGRADINGPRODUCTCODE).
Since the first time it executes, it will delete the RegKeys, the second time it executes will fail, and with
it the whole upgrade.
Therefore, we do not need to execute it at UPGRADINGPRODUCTCODE. -->
<Custom Action="DoChecks" After="InstallFinalize">(NOT Installed AND NOT REMOVE) OR REINSTALL OR (REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE)</Custom>
<!-- Set the ARP -->
<Custom Action="SetARPINSTALLLOCATION" After="InstallValidate"></Custom>
<!-- ScheduleReboot only after DoChecks, which sets ISREBOOTREQUIRED -->
<ScheduleReboot After="DoChecks">ISREBOOTREQUIRED = "1"</ScheduleReboot>
</InstallExecuteSequence>
</Product>
-</Wix> \ No newline at end of file
+</Wix>
diff --git a/src/Release/Setup Files/password1000000.txt b/src/Release/Setup Files/password1000000.txt
new file mode 100644
index 00000000..e6e50bf5
--- /dev/null
+++ b/src/Release/Setup Files/password1000000.txt