Duda con seguridad de C++ "vs" Java[?]

Iniciado por .:BlackCoder:., 29 Abril 2010, 04:31 AM

0 Miembros y 1 Visitante están viendo este tema.

.:BlackCoder:.

Bueno la duda en general es que lenguaje es mas seguro de esos 2... O cual es, digamos mas facil de hack un programa hecho en uno de esos lenguajes. De antemano digo que estoy aprendiendo C++, y pes me "dolio" cuando lei esto...

"En Java no se permite los accesos ilegales a memoria, algo que sí se permitía en C++. Esto es algo muy importante puesto que este tipo de problema puede ocasionar la propagación de virus y otras clases de programas dañinos por la red.

El código Java pasa muchos tests antes de ejecutarse en una máquina. El código se pasa a través de un verificador de código de byte que comprueba el formato de los fragmentos de código y aplica un probador de teoremas para detectar fragmentos de código ilegal, código que falsea punteros, viola derechos de acceso sobre objetos o intenta cambiar el tipo o clase de un objeto.

Algunos de los conocimientos que podemos obtener de los códigos de byte si pasan la verificación sin generar ningún mensaje de error son:

    * El código no produce desbordamiento de operandos en la pila.

    * El tipo de los parámetros de todos los códigos de operación es conocido y correcto.

    * No ha ocurrido ninguna conversión ilegal de datos, tal como convertir enteros en punteros.

    * El acceso a los campos de un objeto se sabe si es legal mediante las palabras reservadas public, private y protected.

    * No hay ningún intento de violar las reglas de acceso y seguridad establecidas.

Por todo esto, y por no permitirlo mediante Java la utilización de métodos de un programa sin los privilegios del núcleo (kernel) del sistema operativo, la obligación de autentificación por clave pública para la realización de modificaciones, se considera Java un lenguaje seguro. Todo esto no lo incorporan ni C++ ni Smalltalk, por lo que Java es el único de los tres considerable como seguro."
"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja