..
Desde su introducción, Java se ha reservado un papel importante en cuestiones de seguridad. Aunque con resultados contradictorios, los diseñadores han tratado de ofrecer sistemas de plataforma de seguridad implementadas directamente en términos de lenguaje, disponible para los desarrolladores.
En un proceso continuo de evolución y perfeccionamiento de la máquina virtual Java se ha convertido en una de las infraestructuras más importantes para el autónomo, web, móvil y mucho más, en este artículo nos centraremos en la evolución del modelo de seguridad, comúnmente llamada una caja de arena, al comentar el errores en el diseño y la situación actual.
Este artículo está dirigido a todo el mundo, ya sean programadores Java con experiencia que ayuna por completo los lectores sobre el tema. Algunas consideraciones serán más comprensibles para los que ya poseen alguna experiencia con este lenguaje, sin embargo, la lectura de este artículo es apto para cualquier lector.
El modelo original, conocida como la caja de arena se ha diseñado para confinar el código potencialmente malicioso en un entorno aislado, y muy restrictivos. Java desde su nacimiento, estaba muy orientada a la red y esta consideración llevó a diseñar un modelo de ejecución en que se descargó el código directamente desde el mando a distancia, la exposición del cliente a los problemas de seguridad significativos.
En su primera aplicación, se muestra esquemáticamente en la figura, la caja de arena sólo alrededor de distinguir entre el código de los códigos locales y remotos: el primero estaba disfrutando de un acceso completo a todos los recursos "críticos" del sistema, como, por ejemplo, los sistemas de archivos y dispositivos diversos, la remota de código Por el contrario, tenían un acceso limitado a los recursos, mediada por el mismo entorno limitado: applets, ahora desaparecido en gran parte de la web, he sido el ejemplo más conocido.

Este modelo incluye un conjunto de mecanismos de seguridad a diferentes niveles.
En primer lugar, Java es de tipo seguro, es decir, hay una relación explícita entre una variable y controlada y su tipo (entero, flotante, cadena, etc ..).
Aquellos que han programado en lenguajes de bajo / medio nivel como C y C + + saber cuántos problemas se pueden evitar este control: el conjunto de las conversiones implícitas entre los tipos, tales como indicadores de vacío entero o booleano para otras indicaciones, que son característicos de esas lenguas al mismo tiempo la principal fuente de errores de programación, igualmente comprometidos con los principiantes y expertos.
Para reducir al mínimo la posibilidad de que los desarrollos realizados errores, los diseñadores de Sun presentó algunos aspectos que hasta ahora sólo se encuentran en nichos o los idiomas de nivel universitario, como, por ejemplo, gestión de memoria automática (recolección de basura) y los controles en tiempo de ejecución memoria de acceso (punteros, elementos de la matriz, etc ...).
El segundo nivel de protección está garantizada por el compilador y el tiempo de ejecución, por la máquina virtual. Esto asegura que el código de bytes, el ensamblador de la máquina virtual de Java que se ejecuta con los permisos de ejecución adecuados. En particular, dos componentes clave, el SecurityManager y cargador de clases, definen un espacio de nombre local para evitar interferencias entre las diferentes instancias de la máquina virtual y gestionar los controles de acceso a los recursos críticos.
El modelo presentado es muy flexible y en la primera actualización del JDK (versión 1.1) se introdujo el concepto de código de confianza para permitir que las aplicaciones remotas, si se acompaña de una firma electrónica reconocida por el cliente, el acceso a los recursos del sistema. La solución, se indica en la figura siguiente, es poco más que un truco de la arquitectura anterior y por lo tanto requieren una reescritura completa en las próximas versiones.

| |
Grabación de CDs y DVDs (Ebook)
Guía para grabar CDs y DVDs con programas gratuitos. A tan sólo 25 €. |
| |
Paint Shop Pro (Primera)
Gráficos para la web y edición de fotos con Corel PSP conocidos. Descuento -10% hasta el 14/09/2011. |
| |
Webmaster Base (Primera)
Crear un sitio Web desde cero. A partir de 29 €. |