La Criptografía
|
|
Bienvenido a JavaScript, la solución de encriptación de alta-seguridad de datos que ejecuta completamente en su navegador de Internet. Para usar la página, su navegador debe apoyar el lenguaje JavaScript. Veamos...
Si la caja sobre dice "Su navegador apoya JavaScript", usted está en el negocio. JavaScrypt ejecutase completamente en su navegador--nada se envía a cualquier sitio de Internet cuando usted lo usa. Usted puede, si usted desea, úselo cuando no esta conectado a Internet. Las utilidades de encriptación de JavaScrypt usan la Norma Avanzada de Encriptación (Advanced Encryption Standard: AES) adoptó por Estados Unidos como la Norma 197 de Procesamiento de Información Federal. AES apoya llaves de longitudes importantes de 128, 192, y 256 dígitos binarios; JavaScrypt usa la llave de 256 dígito binario exclusivamente. Si usted ya está familiarizado con la encriptación, procede directamente a las páginas que llevan a cabo los varios componentes de JavaScript. Si usted es un recién venido, usted puede preferir trabajar a través de la guía didáctica de JavaScrypt que demuestra cómo ellos se usan. Los componentes de JavaScrypt
¿Por qué encriptar con JavaScript?A primera vista, JavaScript puede parecer una opción extraña por llevar a cabo la encriptación. Estos programas son bastante grandes y complicados, y transmitiendo y ejecutándolos ellos toman más mucho tiempo que se requeriría para un applet de Java o para acceder un programa de CGI en un servidor de Internet. Yo escogí JavaScript por dos razones: la seguridad y la transparencia. La seguridad. La sola razón para la encriptación es proteger el secreto. Esto significa que el proceso no puede involucrar cualquier enlace cuya seguridad es sospechosa. Si los mensajes fueran encriptados por un servidor de Internet, ellos tendrían que pasar a través de la red de Internet dónde cualquier sitio intermedio podría interceptarlos. Aun cuando algún mecanismo como HTTP seguro pudiera prevenir los datos de ser interceptado absolutamente, usted todavía tendría ninguna manera de estar seguro que el sitio que realizó la encriptación no guardó una copia en un archivo, convenientemente etiquetado con su dirección de Internet. Para tener cualquier grado de seguridad, es esencial que todo el proceso se haga en su computadora, sin involucrar cualquier transmisión o interacción con otros sitios en la Internet. Un navegador de Internet con JavaScript hace este posible, desde que los programas integrado en estas páginas ejecutadas completamente en su propia computadora y no transmite nada a través de Internet. El resultado sólo aparece en las cajas del texto, mientras permitiéndole cortar y pegarlo a otra aplicación. De allí en, la seguridad depende de usted. La seguridad nunca es absoluta. Podrían comprometerse datos encriptados con estas páginas en una variedad de maneras, mientras incluyendo pero no podría limitarse a lo siguiente:
Uno puede fustigar a sí mismo en una fiebre fina de paranoia que se preocupa por las cosas así. Una manera de gobernar fuera los riesgos más probables es ejecutar estas páginas y el programa JavaScript en una computadora sin conexión de la red en absoluto localizada en las premisas seguras bajo su mando. Y mira cualquier archivo creado por su navegador de Internet muy cuidadosamente. Usted puede encontrar allí las cosas más interesantes. . . . La transparencia. Cualquier herramienta de seguridad sólo es tan buena como su diseño y aplicación. Los medios de la transparencia que, en el ser, todas las partes son visibles para que usted pueda juzgar para usted si la herramienta merece su confianza. En el caso de un programa, esto significa que ese código de la fuente completo debe estar disponible, y que usted puede verificar que el programa que usted está ejecutando corresponde al código de la fuente proporcionado. La misma naturaleza de JavaScript logra esta transparencia. Los programas son incluidos en las páginas de Internet con que usted actúa recíprocamente; para examinarlos usted sólo necesita guardar la página en un archivo en su computadora y léalo con un editor del texto; cualquier componente de JavaScript de la página puede examinarse en el formulario de código de fuente. JavaScript está un idioma de programación interpretado que elimina el riesgo de ejecutar un programa diferente del código de la fuente pretendido: con un idioma interpretado lo que usted leyó es lo que usted ejecuta. La transparencia es importante aun cuando usted no sabe bastante sobre programar o seguridad para determinar si los programas contienen cualquier falla. Ellos pueden ser examinados por alguien con la especialización requerida y usted puede formar sus propias conclusiones basadas en su análisis. Los reconocimientosLa aplicación de JavaScript de AES (Rijndael) el algoritmo de encriptación se desarrolló por Fritz Schneider; se ha modificado ligeramente para el uso en JavaScrypt. Si usted desea integrar encriptación de AES en una utilidad de JavaScript de su propio, usted puede preferir empezar con la versión original. La aplicación de JavaScript de algoritmo MD5 se desarrolló por Henri Torgemane; por favor vea el archivo de código de fuente md5.js para examinar el código, incluso el aviso de los derechos de propiedad literaria y condiciones de uso. El algoritmo MD5 se desarrolló por Ron Rivest.
adaptado por ing. Rafal Swiecki correo Noviembre, 2004, |