tag:blogger.com,1999:blog-371892512024-03-04T20:54:37.374-08:00Seguridad de RedesLatin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.comBlogger47125tag:blogger.com,1999:blog-37189251.post-90015675494848914812013-05-27T11:18:00.000-07:002013-05-27T13:34:20.930-07:00Que es un Ataque del lado del Cliente?<div>
Cuando hablamos de un ambiente cliente-servidor se trata de una aplicación cliente ubicada normalmente en un equipo que se conectan a un servidor ubicado remotamente. Los servidores ofrecen servicios para que los clientes puedan interactuar con el. <br />
<br />
Los ataques del lado del cliente requieren interacción del usuario, tal como hacer click en un enlace, abrir un documento o entrar en una página web con código malicioso que toma ventaja de las vulnerabilidades de un navegador web (aplicación cliente). <br />
<br />
Este ataque puede también configurar un servidor en modo pasivo en el dispositivo de la victima, el cual envía una petición de conexión inversa y automática a una aplicación cliente ubicada remotamente en el host del perpetrador. Dicha petición contiene los parámetros necesarios para establecer el canal de comunicación con la aplicación cliente, estos son Dirección IP y el número del puerto puerto de envío de datos.
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEig0HIdt5oTvXYQdKbMrWt225a5u3qcUPRToYn9v88aQij9O8tNpmbtVOctMl91g1dcj5fS2e4J2u8eluKgRtloXqSacQZwGI4hCCR8fAh-s44PupzqM0VmiEsSKRhsNISd_xpv/s1600/Meterpreter.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="304" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEig0HIdt5oTvXYQdKbMrWt225a5u3qcUPRToYn9v88aQij9O8tNpmbtVOctMl91g1dcj5fS2e4J2u8eluKgRtloXqSacQZwGI4hCCR8fAh-s44PupzqM0VmiEsSKRhsNISd_xpv/s640/Meterpreter.jpg" width="640" /></a></div>
<br /></div>
<br />
<div style="background-color: white; color: orange; text-align: center;">
Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</div>
Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-77081821349840479542012-09-13T04:43:00.001-07:002013-08-07T01:55:24.827-07:00Comandos básicos de mySQL desde la Línea de Comandos de Windows<!--<title>Comandos básicos de mySQL desde la Línea de Comandos de Windows </title>-->
<br />
<h1>
Comandos básicos de mySQL desde la Línea de Comandos de Windows</h1>
<br />
<div style="text-align: justify;">
Para acceder a la línea de Comandos de Windows solo escribes <code>cmd</code> en el cuadro de las opciones de busqueda,
Debes saber en que directorio está instalado tu servidor MySQL, en mi caso está en <code>C:\AppServ\MySQL</code>, cuando encuetres el símbolo <code> ◄┘</code> indica un Enter.
<br />
<br />
Digitarémos los siguientes comandos:
<br />
<br />
<br />
C:\AppServ\MySQL> <code>cd bin ◄┘</code> <br />
C:\AppServ\MySQL\bin> <code>mysql.exe -h localhost -u root -p ◄┘ </code><br />
Enter password: <code>***** ◄┘</code>
<br />
<br />
Ahora hemos accedido a nuestra base de datos, por lo tanto crearemos nuestra primera base de datos:
<br />
<br />
<br />
mysql> <code>CREATE DATABASE authentication; ◄┘</code> <br />
mysql> <code> SHOW DATABASES; ◄┘</code>
<br />
<br />
El crear una tabla no la selecciona automáticamente para ser usada, así que tenemos que hacerlo de forma explicita, <br />
<br />
<br />
mysql> <code> USE authentication; ◄┘</code>
Database changed
<br />
<br />
allí podremos crear algunas tablas:<br />
<br />
<br />
mysql> <code> create table ctg_usertype <br />
(id_UserType int not null auto_increment, <br />
tx_UserType varchar(100),<br />
primary key(id_UserType)); ◄┘</code>
<br />
<br />
mysql> <code>create table tbl_users(<br />
id_user int not null auto_increment,<br />
tx_name varchar(50) not null,<br />
tx_lastname varchar(50),<br />
tx_function varchar(50),<br />
tx_email varchar(100),<br />
tx_username varchar(50), <br />
tx_password varchar(250),<br />
id_UserType int,<br />
primary key(id_user),<br />
foreign key(id_UserType) references ctg_usertype(id_UserType)); ◄┘</code>
<br />
<br />
una vez la tabla ha sido creada podemos verla con el siguiente comando
<br />
<br />
mysql> <code>show tables; ◄┘ </code> <br />
+--------------------------+ <br />
| Tables_in_authentication <br />
+--------------------------+<br />
| ctg_usertype <br />
| tbl_users <br />
+-------------------------+
<br />
<br />
para verificar que la tabla fue creada como se esparaba podemos usar el comando DESCRIBE:
<br />
<br />
mysql><code> DESCRIBE authentication; ◄┘</code>
<br />
<br />
Ahora vamos a insertar algunos registros
<br />
<br />
msql> <code>INSERT INTO ctg_usertype VALUES (1, 'admin'); ◄┘</code><br />
msql> <code>INSERT INTO ctg_usertype VALUES (2, 'user'); ◄┘</code><br />
msql> <code>INSERT INTO ctg_usertype VALUES (3, 'guest'); ◄┘</code>
<br />
<br />
msql><code> INSERT INTO tbl_users VALUES (1, 'admin', 'admin', 'administrator', admin@mydomain.com','admin', 's3cr3t', 1); ◄┘</code> <br />
msql><code> INSERT INTO tbl_users VALUES (5, 'Sujel', 'Murillo', 'tester', smurillo@mydomain.com','smurillo', '12345', 2); ◄┘</code><br />
msql><code> INSERT INTO tbl_users VALUES (6, 'test', 'test', 'temporal guest', guest@mydomain.com','guest', '12345', 2); ◄┘</code></div>
<br />
<br />
Para comprobar que se han agregado bien los registros vamos a utilizar:
<br/>
mysql> <code> SELECT * FROM ctg_usertype;</code><br/>
mysql> <code> SELECT * FROM tbl_users;</code>
<br />
<br />
<div style="color: orange; text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b>
</div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-40402696547031583102012-07-27T04:35:00.002-07:002012-07-27T04:56:14.943-07:00<h2>
<span style="font-size: x-large;">Cuaderno IV de Apuntes de PHP: Manipulación de Archivos (</span><span style="background-color: white; font-size: x-large;">Escritura, </span><span style="background-color: white; font-size: x-large;"> Lectura y </span><span style="background-color: white; font-size: x-large;">Eliminación</span><span style="background-color: white; font-size: x-large;">)</span></h2>
<h3>
<span style="background-color: white;"><span style="color: #e69138;">Funciones útiles para escribir en un archivo</span></span></h3>
<div class="separator" style="clear: both; text-align: justify;">
La siguiente imagen muestra el formulario con los campos de entrada de texto, el primero se llama "titulo" y el segundo es un cuadro de Area de Texto llamado "textoDelUsuario"</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjShA5b6S59OqTVhNip-XKZpu1DjgZ9Tif8mScBaqWnOhEsm7logcrrXTrG1iGcHpM03vS7o4hOWLTpot0EktXo3pOPwKqpPmeqWuIdwK2ccr4C1qc5cL_pkFvNNkVJP5zY-NHp/s1600/Curso17_form.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjShA5b6S59OqTVhNip-XKZpu1DjgZ9Tif8mScBaqWnOhEsm7logcrrXTrG1iGcHpM03vS7o4hOWLTpot0EktXo3pOPwKqpPmeqWuIdwK2ccr4C1qc5cL_pkFvNNkVJP5zY-NHp/s640/Curso17_form.png" width="640" /></a></div>
<br />
<span style="background-color: white;">El archivo de procesamiento de datos se llama<span style="color: purple;"> curso17_guardarText.php</span>. Aquí utilizaremos la variable <span style="color: purple;">$escribir</span> que hace las veces de buffer, almacenando </span><span style="background-color: white;"> </span><span style="background-color: white;">el nombre y el tipo de archivo que estamos creando, En este caso se llama</span><span style="background-color: white;"> </span><span style="background-color: white;">"NombreDelArchivo.txt", </span><br />
<span style="background-color: white;"></span><br />
<div style="font-size: x-small;">
<span style="color: red;"><?php</span></div>
<span style="color: #6aa84f; font-size: x-small;">//Prepara el archivo para escribir </span><br />
<div style="font-size: x-small;">
<span style="color: purple;">$escribir</span> = fopen("NombreDelArchivo.txt","a") or die ("Problemas al crear archivo"); </div>
<span style="color: #6aa84f; font-size: x-small;">//Dando forma al archivo</span><br />
<div style="font-size: x-small;">
fwrite($escribir,"Título: ".$_GET['titulo']); </div>
<div style="font-size: x-small;">
fwrite($escribir,"\n..................................................................................................\n\n"); </div>
<div style="font-size: x-small;">
fwrite($escribir, $_GET['textoDelUsuario']);</div>
<div style="font-size: x-small;">
fwrite($escribir,"\n____________________________________________________________\n\n");</div>
<span style="color: #6aa84f; font-size: x-small;">//Cierra el archivo</span><br />
<div style="font-size: x-small;">
fclose($escribir);</div>
<div style="font-size: x-small;">
echo "Datos guardados en el archivo: \"NombreDelArchivo.txt\" ";</div>
<div style="font-size: x-small;">
<span style="color: red;">?></span></div>
<span style="background-color: white;"><b>fopen</b>(</span><span style="background-color: white;">NombreDelArchivo.txt, "a"</span><span style="background-color: white;">)= es una función utilizada para crear y manipular archivos, el segundo parámetro <span style="color: purple;">a</span> </span><span style="background-color: white;">crea un nuevo archivo si este no existe, en el caso contrario, que el archivo con ese nombre exista agrega datos al final.</span><br />
<span style="background-color: white;"><b>die</b>("Mensaje que quieras escribir en caso de error")= termina la aplicación si se genera algún error, podemos escribir un mensaje de salida.</span><br />
<b>fwrite</b>(<span style="background-color: white;">NombreDelArchivo.txt, "Cadena a escribir"</span><span style="background-color: white;">)= Agrega al archivo de escritura la cadena de caracteres que tengamos en el segundo parámetro. </span><br />
<span style="background-color: white;"><b>fclose</b>(</span><span style="background-color: white;">NombreDelArchivo.txt) = Cierra el archivo </span><br />
<br />
<h3>
<span style="background-color: white;"><span style="color: #e69138;">Funciones útiles para Leer un archivo</span></span></h3>
Usaremos la variable <span style="color: purple;">$leer</span> para almacenar el nombre del archivo de lectura.<br />
<br />
<span style="color: red; font-size: xx-small;"><?php </span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: purple;">$leer</span>=fopen("NombreDelArchivo.txt","r") or die("No se pudo abrir el archivo NombreDelArchivo.txt");</span><br />
<span style="color: #6aa84f; font-size: x-small;"> // El while se ejecuta hasta que lee la última línea ubicada al final del archivo de texto (Mientras no sea la última línea)</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>while (!feof($leer)){</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>$linea = fgets($leer);</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>$saltoDeLinea = nl2br($linea);</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo $saltoDeLinea;</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>} </span><br />
<span style="color: red; font-size: xx-small;">?></span><br />
<br />
<b>feof</b>("<span style="background-color: white;">NombreDelArchivo.txt"</span><span style="background-color: white;">) indica cuando el puntero alcanza el final del archivo de texto</span><br />
<span style="background-color: white;"><b>fgets</b></span><span style="background-color: white;">("</span><span style="background-color: white;">NombreDelArchivo.txt"</span><span style="background-color: white;">) Obtiene la línea de donde se encuentra el puntero</span><br />
<span style="background-color: white;"><b>nl2br</b>($cadenaDeCaracteres) Convierte los /n a <br/> que son los saltos de línea de HTML y PHP</span><br />
<h3>
<span style="background-color: white;"><span style="color: #e69138;">Funciones útiles para Borrar un archivo</span></span></h3>
<span style="background-color: white;"></span><br />
Este primer archivo es útil para mostrar el cuadro que nos ayuda a seleccionar el archivo que deseamos borrar.<br />
<span style="background-color: white;"><span style="font-size: x-small;"><html></span></span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><head><title>Borrar Archivos</title></head> </span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="font-size: x-small;"> </span></span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><body></span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><form action=<span style="color: purple;">"curso19_borraArchivos.php"</span>, mode="post", name="frm"></span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><input type="file" name="archivo" /><br/></span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><input type="submit" value="Eliminar"/></span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span></form></span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span></body></span><br />
<span style="font-size: x-small;"></html></span><br />
<br />
Este es el archivo de entrega de datos "curso19_borraArchivos.php" donde se ejecuta el borrado del archivo.<br />
<span style="background-color: white;"><span style="color: red; font-size: x-small;"><?php</span></span><br />
<span style="font-size: x-small;"> $nombreArchivo = $_GET['archivo'];</span><br />
<span style="font-size: x-small;"> <span style="color: purple;"> unlink(</span>$nombreArchivo);</span><br />
<span style="font-size: x-small;"> echo "El archivo ". $nombreArchivo." ha sido borrado con exito";</span><br />
<span style="color: red; font-size: x-small;">?></span><br />
<br />
<b>unlink</b>(NombreDelArchivo.txt)= es una función utilizada para borrar archivos.<br />
<br />
<br />
<span style="background-color: white;">Los archivos de Texto de todas las lecciones los puedes descargar</span>
<a href="https://docs.google.com/open?id=0B674glazuxVlYS12Nk5nQm1nN0U" style="color: #ffbf05; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px;" target="_blank">Aquí.</a> .<br />
Lista con todos los cuadernos de Apuntes de PHP <a href="http://segweb.blogspot.co.at/p/apuntesdelcursodephpdecodigo-facilito.html" target="_blank">Aquí</a>.<br />
<br />
Mas información en <a href="http://php.net/manual/es/function.fopen.php" target="_blank">Manual de php en Castellano: Función fopen()</a><br />
<div style="text-align: center;">
<span style="color: orange;"><b><br /></b></span></div>
<div style="text-align: center;">
<span style="color: orange;"><b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b></span></div>
<br />
<br />
<br />
<br />Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-44780003373660982472012-07-23T09:20:00.000-07:002012-07-27T04:55:30.206-07:00<h2>
<span style="font-size: large;"><span style="background-color: white;">Cuaderno III de Apuntes de PHP:</span> Ejercicios resueltos con Formularios </span></h2>
<h3>
<span style="color: orange;"><span style="background-color: white;"><span style="font-size: large;">Envío</span></span><span style="background-color: white; font-size: large;"> de datos entre Formularios (Tutorial 14)</span></span></h3>
<div>
El video de implementación lo encuentras en <a href="http://www.youtube.com/watch?v=HPjD7GVPeL0&feature=autoplay&list=PLF02659CF8418C229&playnext=8" target="_blank">Tutorial PHP - 14. Formularios</a>. Creamos un formulario básico y lo he llamado<span style="color: #666666;"> curso14_form.php</span><span style="color: #999999;">. </span><br />
<br /></div>
<div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjc2cV2LAsExH_lQ4AUyOI2Wa7c7bg1zP6W1-r03eNRN0PJpmoBD3PIi-oL5zItuHDk71b3qRSRd72l-4wfMKySY2uhPRRoSLhsLbAjzc1pVcwuOdxjHY6P0ZW2_ZxYNPvfUY0P/s1600/Unbenannt.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="467" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjc2cV2LAsExH_lQ4AUyOI2Wa7c7bg1zP6W1-r03eNRN0PJpmoBD3PIi-oL5zItuHDk71b3qRSRd72l-4wfMKySY2uhPRRoSLhsLbAjzc1pVcwuOdxjHY6P0ZW2_ZxYNPvfUY0P/s640/Unbenannt.png" width="640" /></a></div>
<br />
En este caso h<span style="background-color: white;">emos utilizado el método </span><span style="background-color: white; color: magenta;">post</span><span style="background-color: white;"> para comunicar los dos archivos internamente, el segundo archivo llamado </span><span style="background-color: white;"><span style="color: #666666;">curso14_procesar.php</span></span><span style="background-color: white; color: #999999;">.</span><span style="background-color: white;"> </span><span style="background-color: white;">recibe</span><span style="background-color: white;"> los datos de entrada y los imprime en pantalla.</span></div>
<div>
<br /></div>
<div>
<div>
<span style="color: red; font-size: xx-small;"><?php</span></div>
<div>
<span style="font-size: xx-small;"><span style="color: #38761d;">// recibimos los valores del campo de texto con el método </span><span style="color: magenta;">$_POST </span></span></div>
<div>
<span style="font-size: xx-small;">$nombre =<span style="color: magenta;"> $_POST</span>['nombre'];</span></div>
<div>
<span style="font-size: xx-small;">$apellido =<span style="color: magenta;"> $_POST</span>['apellido'];</span></div>
<div>
<span style="font-size: xx-small;"><br /></span></div>
<div>
<span style="font-size: xx-small;">echo $nombre." ".<span style="background-color: white;"> $apellido;</span></span></div>
<div>
<div>
<span style="color: red; font-size: xx-small;">?></span></div>
<div class="separator" style="clear: both; font-size: small; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUz343-muEa2yzz0yJi2zoZZb9Q3iPBzGssGUZaqECjKY5DL4tfg_XPHVcv_PcdSq2PpGfT1kMOIhWYoppmfv9S3MuxXFSqRg-EfacXUQMTP0AV1PudALpPJokEpexYcn40cBK/s1600/Curso14_SalidaForm.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="114" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUz343-muEa2yzz0yJi2zoZZb9Q3iPBzGssGUZaqECjKY5DL4tfg_XPHVcv_PcdSq2PpGfT1kMOIhWYoppmfv9S3MuxXFSqRg-EfacXUQMTP0AV1PudALpPJokEpexYcn40cBK/s640/Curso14_SalidaForm.png" width="640" /></a></div>
<div style="font-size: small;">
<span style="color: red;"><br /></span></div>
El parámetro action soporta también method= <span style="background-color: white; color: #b45f06;">"get" </span><span style="background-color: white;">el cual envía los datos a través de la URL</span></div>
</div>
<div>
<span style="color: red; font-size: xx-small;"><?php</span></div>
<div>
<span style="font-size: xx-small;"><span style="color: #38761d;">// recibimos los valores del campo de texto con el método </span><span style="color: #b45f06;">$_GET</span></span></div>
<div>
<span style="font-size: xx-small;">$nombre = <span style="color: #b45f06;">$_GET</span>['nombre'];</span></div>
<div>
<span style="font-size: xx-small;">$apellido = <span style="color: #b45f06;">$_GET</span>['apellido'];</span></div>
<div>
<span style="font-size: xx-small;"><br /></span></div>
<div>
<span style="font-size: xx-small;">echo $nombre." ".$apellido;</span></div>
<div>
<span style="color: red; font-size: xx-small;">?></span></div>
<div>
<br />
Ahora la URL se ve así:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmc3l_XDHs4lruvYXjPUzt2HQo9IivXuLxkJlPNxYFZFZ-09JRu3ZkspANkxguGa6z7lTFE37lhjytezyEN2qsMp9Qp08gMkAG8Lw7Y-Y6eYJn-tgz1eJUhylN4_cyCxkVosFa/s1600/Curso14_SalidaForm_get.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="87" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmc3l_XDHs4lruvYXjPUzt2HQo9IivXuLxkJlPNxYFZFZ-09JRu3ZkspANkxguGa6z7lTFE37lhjytezyEN2qsMp9Qp08gMkAG8Lw7Y-Y6eYJn-tgz1eJUhylN4_cyCxkVosFa/s640/Curso14_SalidaForm_get.png" width="640" /></a></div>
<br />
<h3>
<span style="color: orange;">Diseño de una calculadora (Tutorial 15 y 16)</span></h3>
<div>
Este ejercicio es un repaso de todo lo aprendido anteriormente, el video de <a href="http://www.youtube.com/watch?feature=endscreen&v=X52ZPAVtihY&NR=1" target="_blank">Como crear una calculadora en PHP</a>, nos enseña a generar un formulario de inicio con tres campos de texto en blanco (c1,c2 y c3) el cual solicita al usuario los datos a operar y un menú desplegable llamado lista para seleccionar la operación, el resultado será mostrado en una segunda página llamada <span style="color: purple;">curso15_procesar.php</span>,el método de envío de datos es "post". </div>
<div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHg4X4JKfqj_wuCvls54OvwfD9TMczy7Kp1laz-dgK3sOz3r65FlSsuqPqfHcR5W1YaQQF4_SPVKXB6n4h1DuUzCWv2mLXgX7z47Kjt4sVhBl4mcnt0i701AUttWyQKRn1PhSv/s1600/Curso15_form2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="350" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHg4X4JKfqj_wuCvls54OvwfD9TMczy7Kp1laz-dgK3sOz3r65FlSsuqPqfHcR5W1YaQQF4_SPVKXB6n4h1DuUzCWv2mLXgX7z47Kjt4sVhBl4mcnt0i701AUttWyQKRn1PhSv/s640/Curso15_form2.png" width="640" /></a></div>
<br /></div>
En segundo archivo ejecutamos las<br />
<span style="background-color: white;"><br /></span><br />
<span style="background-color: white; color: red; font-size: xx-small;"><?php</span><br />
<span style="color: #6aa84f; font-size: x-small;">// recibimos los valores </span><span style="color: purple; font-size: x-small;">c1, c2 y c3 </span><span style="font-size: x-small;"><span style="color: #6aa84f;">de los campos de texto y</span><span style="color: purple;"> lista </span></span><span style="color: #6aa84f; font-size: x-small;">del menú desplegable con el método $_POST</span><br />
<span style="font-size: xx-small;">$c1 = $_POST['c1'];</span><br />
<span style="font-size: xx-small;">$c2 = $_POST['c2'];</span><br />
<span style="font-size: xx-small;">$c3 = $_POST['c3'];</span><br />
<span style="font-size: xx-small;">$operacion = $_POST['lista'];</span><br />
<span style="color: #6aa84f; font-size: x-small;">// en este caso utilicé funciones para repasar un poco</span><br />
<span style="font-size: xx-small;">function fsuma($c1,$c2,$c3){</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>$c4= $c1+$c2+$c3;</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>return $c4;</span><br />
<span style="font-size: xx-small;">};</span><br />
<span style="font-size: xx-small;">function fresta($c1,$c2,$c3){</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>$c4= $c1-$c2-$c3;</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>return $c4;</span><br />
<span style="font-size: xx-small;">};</span><br />
<span style="font-size: xx-small;">function fmultiplica($c1,$c2,$c3){</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>$c4= $c1*$c2*$c3;</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>return $c4;</span><br />
<span style="font-size: xx-small;">}</span><br />
<span style="font-size: xx-small;">function fdivide($c1,$c2,$c4){</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>$c4= $c1/$c2/$c3;</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>return $c4;</span><br />
<span style="font-size: xx-small;">}</span><br />
<span style="color: #6aa84f; font-size: x-small;">// Este if se utiliza para evitar que el usuario inserte campos en blanco</span><br />
<span style="font-size: xx-small;">if (isset($c1) && !empty($c1) &&</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>isset($c2) && !empty($c2) &&</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>isset($c3) && !empty($c3) )</span><br />
<span style="font-size: xx-small;">{</span><span class="Apple-tab-span" style="font-size: xx-small; white-space: pre;"> </span><span style="color: #6aa84f; font-size: x-small;">// Aquí </span><span style="background-color: white; color: #6aa84f; font-size: x-small;"> </span><span style="background-color: white; color: #6aa84f; font-size: x-small;">procesamos en realidad los</span><span style="background-color: white; color: #6aa84f; font-size: x-small;"> datos</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>switch($operacion){</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>case suma: $c4=fsuma($c1,$c2,$c3);</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>break;<span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>case resta:$c4=fresta($c1,$c2,$c3);</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>break;<span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>case multiplicación:$c4= fmultiplica($c1,$c2,$c3);</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>break;</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>case división:$c4= fdivide($c1,$c2,$c3);</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>default: $c4=0;</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo "La &nbsp;".$operacion." es igual a ".$c4;</span><br />
<span style="font-size: xx-small;">} else echo "Debes llenar todos los campos.";</span><br />
<span style="background-color: white;"><span style="color: red; font-size: xx-small;">?></span></span><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<span style="background-color: white;">Los archivos de Texto de todas las lecciones los puedes descargar </span><a href="https://docs.google.com/open?id=0B674glazuxVlYS12Nk5nQm1nN0U" target="_blank">Aquí.</a><br />
Lista con todos los cuadernos de Apuntes de PHP <a href="http://segweb.blogspot.co.at/p/apuntesdelcursodephpdecodigo-facilito.html" target="_blank">Aquí</a>.<br />
<br /></div>
<div style="text-align: center;">
<span style="color: orange;"><b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b></span></div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-84576672072241449242012-07-22T22:49:00.001-07:002012-07-26T07:42:31.627-07:00<h2>
<span style="font-size: x-large;">
Cuaderno II de Apuntes de PHP: Control de Flujo</span></h2>
<h3>
<span style="color: orange;">if</span></h3>
<div style="background-color: white;">
<div style="background-color: white;">
<span style="color: red; font-size: x-small;"><?php</span></div>
<div style="background-color: white;">
<span style="font-size: x-small;">if(8 != 7 && 1 < 5 ){</span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo "esto es verdad";</span></div>
<div style="background-color: white;">
<span style="font-size: x-small;">} elseif (5 == 5){</span></div>
<div style="background-color: white;">
<span class="Apple-tab-span" style="font-size: x-small; white-space: pre;"> </span><span style="font-size: x-small;">echo "la segunda condición es verdad";</span>
</div>
<div style="background-color: white;">
<span style="font-size: x-small;">}</span><span style="font-size: x-small;">else </span><span style="background-color: white; font-size: x-small;">{</span></div>
<div style="background-color: white;">
<span class="Apple-tab-span" style="font-size: x-small; white-space: pre;"> </span><span style="font-size: x-small;">echo "esto No es verdad";</span>
</div>
<div style="background-color: white;">
<span style="font-size: x-small;">}</span></div>
<div style="background-color: white;">
<span style="color: red; font-size: x-small;">?></span></div>
</div>
<div style="background-color: white;">
<span style="font-size: x-small;"><b>Salida en Pantalla:</b> esto No es verdad</span><br />
<h3>
<span style="color: orange;"><br /></span></h3>
<h3>
<span style="color: orange;">while</span></h3>
<div>
Permite repetir un conjunto de instrucciones mientras una condición se esté cumpliendo, recordar incrementar la variable de control para evitar caer en un blucle infinito.</div>
<div>
<div>
<span style="color: red; font-size: x-small;"><?php</span></div>
<div>
<span style="font-size: x-small;">$aumento=5;</span></div>
<div>
<span style="font-size: x-small;">while ($aumento <10){</span></div>
<div>
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo $aumento . ", ";</span></div>
<div>
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>$aumento++;</span></div>
<div>
<span style="font-size: x-small;">}</span></div>
<div>
<span style="color: red; font-size: x-small;">?></span></div>
</div>
<div>
<span style="font-size: x-small;"><b>Salida en pantalla: </b><span style="background-color: white;">5, 6, 7, 8, 9,</span></span></div>
<div>
<h3>
<span style="color: orange;"><br /></span></h3>
<h3>
<span style="color: orange;">do while</span></h3>
<div>
Permite realizar el conjunto de instrucciones antes de verificar la condición, cuando la condición se cumple sale del ciclo. si la condición nunca se cumple, igual ejecuta el bloque una sola vez.</div>
<div>
<span style="background-color: white; color: red; font-size: x-small;"><?php</span></div>
<div>
<div>
<span style="font-size: x-small;">$cuenta=10;</span></div>
<div>
<span style="font-size: x-small;">do {</span></div>
<div>
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo $cuenta . ", ";</span></div>
<div>
<span style="font-size: x-small;">} </span><span style="background-color: white; font-size: x-small;">while ($cuenta <9);</span></div>
<div>
<span style="color: red; font-size: x-small;">?></span></div>
</div>
<div>
<span style="font-size: x-small;"><b>Salida en pantalla: </b><span style="background-color: white;">10, </span></span></div>
</div>
<div>
<h3>
<span style="color: orange;"><br /></span></h3>
<h3>
<span style="color: orange;">for</span></h3>
<div>
Aunque la mona se vista de seda, mona se queda, este es un while pero mas bonito. </div>
<div>
<span style="background-color: white; color: red; font-size: x-small;"><?php</span></div>
<div>
<div>
<span style="font-size: x-small;">for (</span><span style="background-color: white; font-size: x-small;">$cuenta=1; $cuenta<5; </span><span style="background-color: white; font-size: x-small;">$cuenta++</span><span style="background-color: white; font-size: x-small;">){</span></div>
<div>
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo $cuenta . ", ";</span></div>
<div>
<span style="font-size: x-small;">} </span><span style="background-color: white; font-size: x-small;">;</span></div>
<div>
<span style="color: red; font-size: x-small;">?></span></div>
</div>
<div>
<span style="font-size: x-small;"><b>Salida en pantalla: </b><span style="background-color: white;">1</span></span><span style="background-color: white;"><span style="font-size: x-small;">, 2, 3, 4,</span></span><span style="background-color: white; font-size: x-small;"> </span></div>
</div>
<div>
<h3>
<span style="color: orange;"><br /></span></h3>
<h3>
<span style="color: orange;">foreach</span></h3>
<div>
Recorre todos los elementos de un vector . </div>
</div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"></span></span><br />
<div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="color: red;"><?php</span></span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="color: blue;">$vector1 </span>= array ("ele1","ele2","ele3");</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;">foreach ($vector1 as $eleX){</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo $eleX . ", ";</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;">} ;</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;">echo "<br>";</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="color: blue;">$dir</span> = array("Nombre"=>"Nena","Tel"=> 123456789);</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;">foreach ($dir as $tags => $datos){</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo $tags. ": ". $datos. "<br>";</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;">} ;</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="color: red;">?></span>
</span></span></div>
</div>
<span style="background-color: white;"><span style="font-size: x-small;">
</span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><b>Salida en pantalla: </b><span style="background-color: white;">el1, el2, el3,</span><span style="background-color: white;"> </span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;">
</span></span><span style="font-size: x-small;"> Nombre: Nena<br /> Tel: 123456789</span></div>
<div>
<div>
<h3>
<span style="color: orange;"><br /></span></h3>
<h3>
<span style="color: orange;">switch- case</span></h3>
</div>
<div>
Cuando una variable toma valores predefinidos y específicos, podemos usar esta forma:</div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"></span></span><br />
<div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="color: red;"><?php</span></span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="color: blue;">$var </span>= 10;</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;">switch ($var){</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"> case 1: echo "uno";</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"> <span style="background-color: white;">break;</span></span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"> case 10: echo "diez";</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"> break;</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"> case hola: echo "hola";</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"> break;</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"> default: echo "es otro valor";</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;">}</span></span></div>
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="color: red;">?></span></span></span></div>
</div>
<span style="background-color: white;"><span style="font-size: x-small;">
</span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><b>Salida en pantalla: </b><span style="background-color: white;">diez</span><span style="background-color: white;"> </span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;">
</span></span><span style="font-size: x-small;"></span><br />
<div>
<span style="font-size: x-small;"><span style="font-size: x-small;"><br /></span></span></div>
<span style="font-size: x-small;">
</span><br />
<div>
<span style="font-size: x-small;"><br /></span><br />
<span style="font-size: x-small;"><span style="color: orange; font-size: 19px; font-weight: bold;">Funciones</span></span></div>
<span style="font-size: x-small;">
</span><span style="background-color: white;"><span style="font-size: x-small;"></span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;"></span></span></span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;"><span style="color: red;"><?php</span></span></span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">
</span></span></span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">function fun($p1,$p2,$p3){</span></span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">
</span></span></span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>$suma = $p1 + $p2 + $p3;</span></span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">
</span></span></span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>$mult = $suma * 2;</span></span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">
</span></span></span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>return $mult;</span></span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">
</span></span></span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">};</span></span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">
</span></span></span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">echo fun(5,2,10);</span></span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">
</span></span></span></span><br />
<div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;"><span style="color: red;">?></span></span></span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;"><span style="background-color: white;"><span style="font-size: x-small;">
</span></span></span></span></div>
<span style="background-color: white;"><span style="font-size: x-small;">
<b>Salida en pantalla</b>: 34</span></span><span style="font-size: x-small;"> </span></div>
</div>
<div>
<br />
<span style="background-color: white;">Continuación</span>: <a href="http://segweb.blogspot.co.at/2012/07/enviar-los-datos-de-un-formulario.html" target="_blank">Cuaderno III de Apuntes de PHP: Enviar los datos de un Formulario (Tutorial 14)</a></div>
<div>
Lista con todos los cuadernos de Apuntes de PHP <a href="http://segweb.blogspot.co.at/p/apuntesdelcursodephpdecodigo-facilito.html" target="_blank">Aquí</a>.
</div>
<div style="color: orange;">
<div style="text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b></div>
</div>
</div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-9605296961326597502012-07-22T12:11:00.003-07:002012-08-02T00:16:45.604-07:00
<h1>
<b style="background-color: white;font-size: large;">Cuaderno I de Apuntes de PHP : Introducción</b></h1><br />
<div>
En esta entrada he escrito mis apuntes del <a href="http://www.youtube.com/playlist?list=PLF02659CF8418C229&annotation_id=annotation_458800&src_vid=R6PdB1SktCg&feature=iv" style="background-color: white;" target="_blank">Curso PHP Código Facilito</a><span style="background-color: white;">, para empezar solo necesitaras</span><a href="http://segweb.blogspot.co.at/2012/07/instala-tu-propio-servidor-web-en-solo.html" style="background-color: white;" target="_blank"> instalar un servidor Web y configurarlo</a><span style="background-color: white;">. Ahora podemos escribir </span><span style="background-color: white;"> nuestro código</span><span style="background-color: white;"> PHP y HTML en un editor de uso libre por lo tanto necesitamos</span><span style="background-color: white;"> </span><a href="http://download.tuxfamily.org/notepadplus/6.1.5/npp.6.1.5.Installer.exe" style="background-color: white;">Descargar Notepath++</a><span style="background-color: white;"> e instalarlo</span><span style="background-color: white;">.</span></div>
<div>
<div style="background-color: white;">
<br />
Todos los archivos que queremos publicar se guardan en: <span style="background-color: white; color: #999999;">C://AppServ/www</span><span style="background-color: white;">. Alli podemos crear una carpeta con el nombre que queramos, por ejemplo </span><span style="background-color: white; color: #999999;">miProyectoPHP</span><span style="background-color: white;">. El archivo con nuestro codigo lo debemos crear con</span><span style="background-color: white;"> una extención .php y</span><span style="background-color: white;"> </span><span style="background-color: white;"> por ejemplo </span><span style="background-color: white; color: #999999;">miCodigo.php. </span><span style="background-color: white;">Entonces el camino de acceso al archivo de código sería: </span><span style="background-color: white;"><span style="background-color: white; color: #999999;">C://AppServ/www/</span></span><span style="background-color: white; color: #999999;">miProyectoPHP/miCodigo.php</span></div>
<div style="background-color: white;">
<span style="background-color: white;"><br /></span><br />
<span style="background-color: white;">Para probar como funciona el código que hemos escrito, abrimos de nuevo el navegador </span><span style="background-color: white;">y en la barra de busqueda escribimos: </span><span style="background-color: white; color: #999999;">localhost:8000/miProyectoPHP/miCodigo.php</span></div>
<div style="background-color: white;">
<br />
<h3>
<span style="color: orange; font-size: large;">
Notas</span></h3>
</div>
<div style="background-color: white;">
<span style="background-color: white;">El código está limitado por la etiqueta de inicio</span><span style="color: red;"> <?php</span><span style="background-color: white;"> y la etquita de cierre </span><span style="color: red;">?></span><span style="background-color: white;">.</span></div>
<div style="background-color: white;">
Imprimir en pantalla: <span style="color: #6aa84f;">echo</span> "Texto entre comillas";</div>
<div style="background-color: white;">
<span style="color: #6aa84f;">print</span><span style="background-color: white;"> </span><span style="background-color: white;">"Texto entre comillas";</span></div>
<div style="background-color: white;">
Salto de Línea <span style="color: blue;"> <br/></span></div>
<div style="background-color: white;">
Espacio en blanco <span style="color: blue;"> &nbsp;</span></div>
<div style="background-color: white;">
Comentario corto <span style="color: #38761d;"> // Este es un comentario corto</span></div>
<div style="background-color: white;">
Comentario largo <span style="color: #38761d;"> /* Este comentario puede ocupar muchas líneas*/</span></div>
<br /><h3>
<span style="color: orange;">Variables (Tutorial 3)</span></h3>
<div style="background-color: white;">
Gurdan datos de diferentes típos, ya sean numericos, booleanos, cadenas de caracteres, etc. Se declaran por medio del simbolo $ seguido por el nombre o identificador de la variable, que no puede tener simbolos ni espacios. por Ejemplo:</div>
<br /><div style="background-color: white;">
<div style="background-color: white;">
<span style="color: red; font-size: x-small;"><?php</span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: blue;">$edad=</span> 20; <span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">//Variable numérica</span></span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: blue;">$nombre= </span>"Ana";<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">//Variable caddena de caracteres</span></span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: blue;">$registro</span> = true;<span class="Apple-tab-span" style="white-space: pre;"> </span> <span style="color: #274e13;"> // Variable Booleana(0 o nada >Falso y 1>verdadero)</span></span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo "Me llamo ";</span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo $nombre; </span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo " tengo ";</span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo $edad;</span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo " años, y mi registro es: ";</span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span>echo $registro;</span></div>
<div style="background-color: white;">
<span style="color: red; font-size: x-small;">?></span></div>
</div>
<div style="background-color: white;">
<span style="font-size: x-small;"></span></div>
<div style="background-color: white;">
<span style="font-size: x-small;"><b>Salida en navegador: </b>Me llamo Ana tengo 20 años, y mi registro es: 1 </span></div>
<div style="background-color: white;">
<br />
<h3>
<span style="color: orange; font-size: 19px; font-weight: bold;">Vectores o Arreglos </span><span style="background-color: white; color: orange;">(Tutorial 5)</span></h3>
La posición de los objetos de los<span style="color: orange;"><b> <u>Vectores predefinidos</u></b></span> se cuenta desde 0<br />
<br />
<span style="color: red; font-size: x-small;"><?php</span><br />
<span style="font-size: x-small;"><span style="color: blue;">$vectorNumeros</span> = array(1,2,3,4,5);</span><br />
<span style="font-size: x-small;"><span style="color: blue;">$vectorNombres</span> = array(</span><span style="background-color: white; font-size: x-small;">"Victoria"</span><span style="background-color: white; font-size: x-small;">,"Diana", "Maria", </span><span style="background-color: white; font-size: x-small;">"Pepa"</span><span style="background-color: white; font-size: x-small;">, "Luisa");</span><br />
<br />
<span style="font-size: x-small;">echo "El primer valor de mi arreglo es está en la posición 0: ";</span><br />
<span style="font-size: x-small;">echo $vectorNumeros[0];</span><br />
<span style="font-size: x-small;">echo $vectorNombres[0];</span><br />
<span style="font-size: x-small;"><span style="background-color: white; color: red;">?></span><span style="color: red;"> </span></span><br />
<span style="font-size: x-small;"><b>Salida en navegador: </b><span style="background-color: white;">El primer valor de mi arreglo es está en la posición 0: 1 Victoria</span></span><br />
<span style="font-size: x-small;"><span style="background-color: white;"><br /></span></span><br />
Los <span style="color: orange;"><b><u>Vectores asociativos o personalizados</u></b></span> requieren que insertemos una etiqueta para ubicar cada elemento del vector. En el siguiente ejemplo se han creado 2 vectores, uno de números (con etiquetas L1,L2,...) y otro de nombres(con etiquetas p1,p2,...).<br />
<span style="background-color: white; color: red; font-size: x-small;"><?php</span><br />
<span style="font-size: x-small;"><span style="color: blue;">$vectorAsociativoNumeros</span> = array("L1" => 11, </span><span style="background-color: white; font-size: x-small;">"L2" =></span><span style="background-color: white; font-size: x-small;"> </span><span style="background-color: white; font-size: x-small;">12,</span><span style="background-color: white; font-size: x-small;">"L3" =></span><span style="background-color: white; font-size: x-small;"> </span><span style="background-color: white; font-size: x-small;">13, </span><span style="background-color: white; font-size: x-small;">"L4" =></span><span style="background-color: white; font-size: x-small;"> </span><span style="background-color: white; font-size: x-small;">14,</span><span style="background-color: white; font-size: x-small;">"L5" =></span><span style="background-color: white; font-size: x-small;"> </span><span style="background-color: white; font-size: x-small;">15</span><span style="background-color: white; font-size: x-small;">);</span><br />
<span style="font-size: x-small;"><span style="color: blue;">$vector</span></span><span style="background-color: white; color: blue; font-size: x-small;">Asociativo</span><span style="background-color: white; color: blue; font-size: x-small;">Nombres</span><span style="background-color: white; font-size: x-small;"> =</span><span style="background-color: white; font-size: x-small;"> array("p1" =>"Victor","p2" =>"Diego","p3" => "Mario","p4" =>"Pepe", "p5" =>"Luis");</span><br />
<span style="font-size: x-small;">echo "</span><span style="background-color: white; font-size: x-small;"><br/></span><span style="background-color: white; font-size: x-small;">El último elemento de mi arreglo asociativo es: ";</span><br />
<span style="font-size: x-small;">echo $vectorAsociativoNumeros[L5];</span><br />
<span style="background-color: white; font-size: x-small;">echo "<br/>El último elementos de mi arreglo asociativo es: ";</span><br />
<span style="font-size: x-small;">echo $vectorAsociativoNombres[p5];</span><br />
<span style="background-color: white; color: red; font-size: x-small;">?></span><span style="color: red; font-size: x-small;"> </span><br />
<span style="background-color: white;"><br /></span><br />
<span style="background-color: white;">Las etiquetas y el tipo de datos dentro de los vectores, </span><span style="background-color: white;">puede ser creado según mas te acomode.</span><br />
<span style="background-color: white;"><span style="font-size: x-small;"></span></span><br />
<span style="font-size: x-small;"><span style="color: red;"><?php</span></span><br />
<span style="font-size: x-small;"><span style="color: blue;">$Mezcla</span> = array("Nombre" =>"Tatiana","Edad" => 21,"Direccion" => "Casa 1","ID" => 1111, "Cuenta" =>true);</span><br />
<span style="font-size: x-small;">echo "<br/>Nombre: ";</span><br />
<span style="font-size: x-small;">echo $Mezcla[Nombre];</span><br />
<span style="font-size: x-small;">echo "<br/>Edad: ";</span><br />
<span style="font-size: x-small;">echo $Mezcla[Edad];</span><br />
<span style="font-size: x-small;">echo "<br/>Activación: ";</span><br />
<span style="font-size: x-small;">echo $Mezcla[Cuenta];</span><br />
<span style="font-size: x-small;"><span style="color: red;">?></span></span><br />
<b><span style="font-size: x-small;">Salida en navegador:</span></b><br />
<span style="background-color: white;"><span style="font-size: x-small;"></span></span><span style="font-size: x-small;"> Nombre: Tatiana</span><br />
<span style="font-size: x-small;"> Edad: 21</span><br />
<span style="font-size: x-small;"> Activación: 1</span><br />
<span style="font-size: x-small;"><br /></span><br />
<h3>
<span style="color: orange; font-size: large; font-weight: bold;">Operadores </span><span style="background-color: white; color: orange;">(Tutorial 6)</span></h3>
<ul>
<li><span style="background-color: white;">Asignación: Solo hay uno y es "=", el cual permite asignar un valor a una variable</span></li>
<li><span style="background-color: white;">Aritméticos: +, - , *, /, %, ...</span></li>
<li><span style="background-color: white;"><span style="background-color: white;">Comparación: Igual(==). idéntico (===), Diferente (!= ó <>), </span> No idéntico (!==), <,<=, >,>=</span></li>
<li><span style="background-color: white;">Incremento o decremento: ++, --. Si se escriben el operador antes de la variable <span style="color: blue; font-size: x-small;"> ++$variable</span> el valor se incrementa antes de ser mostrada, si se escriben después <span style="color: blue; font-size: x-small;"> $variable++</span> , primero se opera y después se incrementa<span style="color: blue; font-size: x-small;">.</span></span></li>
<li><span style="background-color: white;">Lógicos: y (&& o and), o (|| o or), o exclusivo (xor)</span></li>
<li><span style="background-color: white;">Concatenación: Une dos cadenas por medio de un punto "." o con .= para signar datos a una variable ya existente, es muy útil a la hora de enviar correos</span></li>
</ul>
<span style="color: red; font-size: x-small;"> <?php</span><br />
<span style="font-size: x-small;"><span style="color: blue;"> $usuario</span> = array("Nombre" =>"Tatiana","Edad" => 21,"Direccion" => "Casa 1","ID" => 1111, "Cuenta" =>true);</span><br />
<span style="font-size: x-small;"><span style="color: blue;"> $texto</span> = "Mi nombre es "<span style="color: orange;"> </span><span style="color: red;"><b>.</b></span><span style="color: orange;"> </span><span style="color: blue;">$usuario</span>[Nombre]<b> <span style="color: red;">.</span></b> " y tengo "<span style="color: red;"><b>.</b></span> <span style="color: blue;">$usuario</span>[Edad] <span style="color: red;"><b>.</b></span> " años";</span><br />
<span style="font-size: x-small;"> echo<span style="color: blue;"> $texto</span>;</span><br />
<span style="font-size: x-small;"><span style="color: blue;"> $texto</span> <b><span style="color: red;">.=</span> </b>", ahora agregué esta línea";</span><br />
<span style="font-size: x-small;"> echo "<br />" <b><span style="color: red;">.</span></b> $texto;</span><br />
<span style="color: red; font-size: x-small;"> ?></span><br />
<br />
<b><span style="font-size: x-small;"> Salida en Pantalla</span></b><br />
<span style="font-size: x-small;"> Mi nombre es Tatiana y tengo 21 años<br /> Mi nombre es Tatiana y tengo 21 años, ahora agregué esta línea</span><br />
<ul>
<li><span style="background-color: white;">Control de Errores: @</span></li>
</ul>
<span style="color: red; font-size: x-small;"> <?php</span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span> echo "Ejemplo que NO omite errores";</span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span> <span style="color: blue;">error()</span>; <span style="color: #38761d;">// Produce un error porque no hemos definido la función error()</span></span><br />
<span style="color: red; font-size: x-small;"> ?></span><br />
<span style="font-size: x-small;"><b> Salida en Pantalla:</b> </span><span style="background-color: white; font-size: x-small;">Ejemplo que NO omite errores</span><br />
<span style="font-size: x-small;"> Fatal error: Call to undefined function error() in </span><br />
<span style="font-size: x-small;"> C:\AppServ\www\CodigoFacilitoPHP\curso06_errores.php on line 3</span><br />
<span style="color: red; font-size: x-small;"> <?php</span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span> echo "Ejemplo con control de errores";</span><br />
<span style="font-size: x-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span> <span style="color: magenta;">@</span> <span style="color: blue;">error()</span>; // No muestra en pantalla que hay un error porque no hemos definido la función</span><span style="background-color: white; color: red; font-size: x-small;"> </span><br />
<span style="background-color: white; color: red; font-size: x-small;"> </span><span style="background-color: white; color: red; font-size: x-small;"> </span><span style="background-color: white; color: red; font-size: x-small;"> ?></span><span style="background-color: white; color: red; font-size: x-small;"> </span><br />
<span style="font-size: x-small;"><b> Salida en Pantalla:</b> </span><span style="font-size: x-small;">Ejemplo con control de errores</span> <span style="background-color: white; font-size: x-small;"> </span><br />
<span style="background-color: white; font-size: x-small;"> </span><br />
<span style="background-color: white;">Continuación "<a href="http://segweb.blogspot.co.at/2012/07/cuaderno-ii-de-apuntes-de-php-control.html" target="_blank">Cuaderno II de apuntes de PHP: Controles de Flujo</a>"</span><br />
<span style="background-color: white;">Lista con todos los cuadernos de Apuntes de PHP <a href="http://segweb.blogspot.co.at/p/apuntesdelcursodephpdecodigo-facilito.html" target="_blank">Aquí</a>.
</span><br />
<span style="background-color: white;"><br /></span></div>
<div style="background-color: white; color: orange; text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b></div>
</div>
</div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-90558370263512858282012-07-17T03:38:00.004-07:002012-09-12T13:58:08.158-07:00<h1>
<title>Instala tu propio Servidor Web en solo 6 pasos</title>
<span style="font-size: large;">Instala tu propio Servidor Web en solo 6 pasos</span>
</h1>
<div>
<span style="background-color: white;">Para empezar solo necesitaras instalar un servidor Web y configurarlo. No te asustes es fácil, Usaremos el AppServ 2.6.0 que posee las siguientes herramientas:</span><br />
<br />
<ul style="font-family: Tahoma, Helvetica, Arial, sans-serif; font-size: 12px; line-height: 15px;">
<li>Apache 2.2.8</li>
<li>PHP 6.0.0-dev</li>
<li>MySQL 6.0.4-alpha</li>
<li>phpMyAdmin-2.10.3</li>
</ul>
<br />
Ademas en este <a href="http://www.youtube.com/watch?v=sEfcmo-THjM&list=PLF02659CF8418C229&index=1&feature=plpp_video" target="_blank">Video de instalación</a> te explican paso a paso como hacerlo, lo hacen con una versión anterior pero no cambia nada. Primero <a href="http://prdownloads.sourceforge.net/appserv/appserv-win32-2.6.0.exe?download" target="_blank">Descarga AppServ 2.6.0</a> , ejecuta el archivo y sigue las instrucciones.
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2WKgku2e7_sLUC2BBuuEAqccCS87X4Xbi0ODXL77Jy9Qi51A6rSbHn7mhCZdqpmVASzliKcTyhN9yiW12p8g8IUsrQY7Vf62mDMACf4G0JwnYvwCZY03def3fdZj_5jx1J9oh/s1600/Inst01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="252" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2WKgku2e7_sLUC2BBuuEAqccCS87X4Xbi0ODXL77Jy9Qi51A6rSbHn7mhCZdqpmVASzliKcTyhN9yiW12p8g8IUsrQY7Vf62mDMACf4G0JwnYvwCZY03def3fdZj_5jx1J9oh/s320/Inst01.png" width="320" /></a></div>
<br />
<div style="background-color: white;">
Click en Next, Acepta las condiciones de la licencia, y ubica la carpeta donde vas a<span style="background-color: white;"> instalar tu servidor Web</span><span style="background-color: white;">, </span><span style="background-color: white;">verifica</span><span style="background-color: white;"> que tu disco tenga al menos 77.5MB de espacio disponible . </span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTRhu_PR5yHa4daehxXFf2F4rX43tX1KJKYp5GNNAwIsW6cPINJAonmjqobcwuWD7xk0rGydcD42k-ZZ9i51mrDlm3L8swy8Yx6rRrkybdgoL3nQl0HhqDUkVvcw4YeLS3MFYY/s1600/Inst02.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="252" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTRhu_PR5yHa4daehxXFf2F4rX43tX1KJKYp5GNNAwIsW6cPINJAonmjqobcwuWD7xk0rGydcD42k-ZZ9i51mrDlm3L8swy8Yx6rRrkybdgoL3nQl0HhqDUkVvcw4YeLS3MFYY/s320/Inst02.png" width="320" /></a></div>
<br />
En la siguiente ventana todas las herramientas deben estar seleccionadas
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi10Lr5Xwet44EREszkt3XDM6zCuf4DcYf6nK4i5xL0z7Z8Vlef9g2hhe_Sh8NB96n4pbZ_QeLaCPg4kXc5-ixkOFZjh5BloNn-lw4aHiLiwLhA3tMttO_xG-HYJYbS3HV3Uc3j/s1600/Inst03.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="252" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi10Lr5Xwet44EREszkt3XDM6zCuf4DcYf6nK4i5xL0z7Z8Vlef9g2hhe_Sh8NB96n4pbZ_QeLaCPg4kXc5-ixkOFZjh5BloNn-lw4aHiLiwLhA3tMttO_xG-HYJYbS3HV3Uc3j/s320/Inst03.png" width="320" /></a></div>
<br />
<div style="background-color: white;">
Ahora escribimos el nombre del Servidor, en este caso es<span style="color: blue;"> localhost</span>, tu correo de administrador y el puerto debe ser 8000</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjihI7SG-_t69aBMZtcUmDgDzjO5KekzsMQTA3qJszdjCiKECtHOgDTBm5M6FsiXaouwcmwlTrJuGOF39IQ4n2aYuWcmIsDp0H-zOm7awBKyODSQQsrl2k6ht5qU_w6jv25Q3ot/s1600/Inst04.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="252" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjihI7SG-_t69aBMZtcUmDgDzjO5KekzsMQTA3qJszdjCiKECtHOgDTBm5M6FsiXaouwcmwlTrJuGOF39IQ4n2aYuWcmIsDp0H-zOm7awBKyODSQQsrl2k6ht5qU_w6jv25Q3ot/s320/Inst04.png" width="320" /></a></div>
<br />
<div style="background-color: white;">
Escribe el Password de root de MySQL, selecciona la casilla de Old Password Support e instala.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfFggGBm_Y3kFjvEWR2YHZRcTDywBifCOwYkhQv8bjva_071dkx19hwJ-pmO6T-xeLuui8KSoDGLp9DZZ1jlVDR99giApQloOrh0pxhRbuAVyrk_n2-2O0JLxY69Z7zBSbUP6b/s1600/inst05.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="252" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfFggGBm_Y3kFjvEWR2YHZRcTDywBifCOwYkhQv8bjva_071dkx19hwJ-pmO6T-xeLuui8KSoDGLp9DZZ1jlVDR99giApQloOrh0pxhRbuAVyrk_n2-2O0JLxY69Z7zBSbUP6b/s320/inst05.png" width="320" /></a></div>
<br />
<div style="background-color: white;">
El servidor arranca cuando termina la instalación</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEgJLel9w_DfRW9J2LUY82WxwvtObmeWiAhCpXh3yNcCn3ZfHrc8acZTO5MoOVTwKSZKeIE2gV4RC576IcHEJqHnXoQg-9NEqP_F7WoTQqf-P8FPy3vkJqJVJ2FmS6HKurmdLW/s1600/Inst06.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="251" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEgJLel9w_DfRW9J2LUY82WxwvtObmeWiAhCpXh3yNcCn3ZfHrc8acZTO5MoOVTwKSZKeIE2gV4RC576IcHEJqHnXoQg-9NEqP_F7WoTQqf-P8FPy3vkJqJVJ2FmS6HKurmdLW/s320/Inst06.png" width="320" /></a></div>
<br />
<div style="background-color: white;">
Ahora abres tu <span style="background-color: white;"> navegador favorito (Chrome, firefox,...) y en la barra de búsqueda escribes</span></div>
<span style="color: blue;">localhost:8000 </span><span style="background-color: white;">cuando oprimes enter te debe aparecer la siguiente información:</span><br />
<br />
<div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwTVMRqbZUuBpnjEqxfdF2u7CcKC7cFs1p8X0tmRDN3AD8GjQGvkKFXLtxssdywYQ0QMk2wOI2ccjzaXBhhlABUB0WOU7xSaXHia3UMPYFY-rYvXbqVu2x4_JW79NwBpgV06xX/s1600/Insta07.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="226" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwTVMRqbZUuBpnjEqxfdF2u7CcKC7cFs1p8X0tmRDN3AD8GjQGvkKFXLtxssdywYQ0QMk2wOI2ccjzaXBhhlABUB0WOU7xSaXHia3UMPYFY-rYvXbqVu2x4_JW79NwBpgV06xX/s320/Insta07.png" width="320" /></a></div>
<br />
<div>
Esto indica que el Servidor Web está bien instalado. Para empezar a escribir código PHP y HTML, t<span style="background-color: white;">e recomiendo <a href="http://download.tuxfamily.org/notepadplus/6.1.5/npp.6.1.5.Installer.exe" target="_blank">Descargar Notepath++</a> . </span><span style="background-color: white;"> Ahora te invito a que revises mi <a href="http://segweb.blogspot.co.at/2012/07/cuaderno-i-de-apuntes-de-php.html" target="_blank">Cuaderno I de Apuntes de PHP: Introducción.</a>.</span><br />
<span style="background-color: white;">Lista con todos los cuadernos de Apuntes de PHP <a href="http://segweb.blogspot.co.at/p/apuntesdelcursodephpdecodigo-facilito.html" target="_blank">Aquí</a>.
</span><br />
<span style="background-color: white;"><br /></span></div>
</div>
</div>
<div style="text-align: center;">
<span style="color: orange;"><b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b></span></div>
Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-47046160810372075472012-04-24T09:07:00.001-07:002014-03-23T02:06:03.647-07:00Manual de Protección IT Básica - IT Baseline Protection Manual - IT-Grundschutz <div style="text-align: justify;">
La seguridad en los sistemas y estructuras IT es un tema de relevante importancia que concierne no solo a las organizaciones gubernamentales y privadas, también a nosotros mismos.
<br />
<br />
Estamos en la era de la información, donde los datos se han convertido en un activo de valor apreciable. muchos procesos empresariales de vital importancia son controlados digitálmente. Además, la cantidad de información confidencial que es almacenada, manipulada y transmitida a través de redes o diferentes canales de comunicación es cada día mayor.</div>
<h3 style="color: orange; font-weight: normal;">
BSI
</h3>
<div style="text-align: justify;">
La Oficina Federal Alemana para la seguridad de las tecnologías de la Información (BSI - Bundesamt für Sicherheit in der Informationstechnik) es un organismo independiente y neutral que se encarga de las cuestiones relacionadas con seguridad informática. Fue fundada en Bonn (Alemania) en 1991 como entidad gubernamental con un presupuesto anual de aproximadamente € 65 millones y al rededor de 500 empleados.
<br />
La BSI ofrece numerosas herramientas disponibles para lograr un nivel adecuado de seguridad, como las normas básicas requeridas para gestionar la seguridad de la información, el Manual de referencia de protección IT, GSTOOL y la certificación ISO 27001 basada en la norma "IT-Grundschutz", la cual incluye un examen de gestión de seguridad de la información, así como especificaciones de las medidas de seguridad.
<br />
Las principales actividades de Investigación del BSI son:
<br />
<ul>
<li>Seguridad en Internet</li>
<li>Campañas de sensibilización para promover la seguridad IT</li>
<li>Asegurar el gobierno en Línea</li>
<li>Protección de líneabase IT </li>
<li>Certificación y acreditación (incluyendo CC)</li>
<li>Criptografía, la biometría</li>
<li>Monitorear seguridad</li>
<li>Protección de infraestructuras críticas</li>
<li>Colaboraciones nacionales e internacionales </li>
</ul>
</div>
<h3 style="color: orange;">
Manual básico de Protección IT del BSI
</h3>
<div style="text-align: justify;">
Esta es la publicación más conocida del BSI, fue publicado por primera vez en 1994 y describe con gran nivel de detalle diferentes temas relacionados con la gestión de seguridad de la información, ademas de medidas aplicables en diferentes áreas, no solo relacionadas con tecnología, también en la estructura organizacional, personal e infraestructura física de las organizaciones.
<br />
Varios capítulos de este manual fueron actualizados y reestructurados en el año 2005, de donde han resultado dos tomos separados: Los Estándares de seguridad del BSI y el catalogo de IT Grundschutz. Los catalogos Se compone de varios capitulos genéricos de recomendaciones para el establecimiento de un proceso de aplicación de IT de seguridad y recomendaciones técnicas detalladas para alcanzar el necesario nivel de seguridad de TI en dominio específico.
<br />
El catalogo IT-Grundschutz proporciona un método sencillo para que las organizaciones puedan implementar La norma SGSI (Sistema de Gestión de Seguridad de la Información). Se compone de dos manuales genéricos de recomendaciones de seguridad IT, los cuales son útiles al establecer procesos de implementación de seguridad IT, y recomendaciones técnicas detalladas para alcanzar un nivel de seguridad adecuado en un dominio específico.
<br />
El catalogo IT Grundschutz propone consta de los siguientes pasos en el proceso de implementación de un sistema de seguridad IT:
<br />
<ul>
<li>Inicio del proceso</li>
<li>Definición de los objetivos de seguridad según el entorno empresarial</li>
<li>Establecimiento de una estructura organizativa de seguridad </li>
<li>Provisión de recursos y presupuesto necesario</li>
<li>Creación del concepto de seguridad a nivel de la organización</li>
<li>Análisis de la infraestructura IT</li>
<li>Evaluación de los requisitos de protección</li>
<li>Planificación, Modelado y diseño del esquema de seguridad</li>
<li>Verificación del modelo y el diseño implementado</li>
<li>Análisis complementario de Seguridad</li>
<li>Aplicación física y realización</li>
<li>Mantenimiento, seguimiento y mejora del proceso</li>
<li> TI-Grundschutz Certificación (opcional)</li>
</ul>
</div>
<h3 style="color: orange;">
Los Catalogos IT Grundschutz</h3>
<div style="text-align: justify;">
Tienen una estructura modular y contienen secciones independientes para establecer una estructura de seguridad, así mismo, recomendaciones y medidas de seguridad para casos específicos. Describe también las amenazas principales que afectan a una organización y algunas medidas de protección. Así, las organizaciones pueden centrarse en los módulos que sean de interés según su área.
<br />
Los módulos del Catálogo de TI-Grundschutz se actualiza y amplía regularmente, teniendo en cuenta los últimos adelantos técnicos en cuanto a Sistemas IT se refiere. Se publican como un conjunto de hojas sueltas, en DVD y también en Internet.
<a href="https://www.bsi.bund.de/EN/Topics/ITGrundschutz/itgrundschutz_node.html">Link here</a>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcevtmCjmx2Eo0q8GNJR5-HRep4qsVV_O9dh7sdQD9AdZ0NjAIEV774fm4dzQXBLX49EU2z8cQy4A4-m4kJOtDW0Uj0mua7pccf_01PmSEnd3cWQm9HtvHa5kq2Up5bM7e4zqa/s1600/ITgrundschutz.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcevtmCjmx2Eo0q8GNJR5-HRep4qsVV_O9dh7sdQD9AdZ0NjAIEV774fm4dzQXBLX49EU2z8cQy4A4-m4kJOtDW0Uj0mua7pccf_01PmSEnd3cWQm9HtvHa5kq2Up5bM7e4zqa/s640/ITgrundschutz.jpeg" height="262" width="640" /></a></div>
<br />
<br />
Idea: Existe riesgos similares en muchos sistemas de información, así que se utiliza el principio de reutilización de los catálogos ya predefinidos con medidas de evaluación para los componentes IT similares. Los procesos de aplicación utilizan los siguientes elementos básicos de construcción :<br />
<ul>
<li> Reutilización</li>
<li> Capacidad de adaptación</li>
<li> Extensibilidad</li>
</ul>
</div>
<h5 style="color: orange;">
BSI 100-1: SGSI</h5>
<div style="text-align: justify;">
Sistemas de Gestión de Seguridad de la Información dirigida a el are directiva, es Compatible con la norma ISO 27001 y cumple con las estrategias y recomendaciones de ISO 13335 y 17799 (27002)
</div>
<h5 style="color: orange;">
BSI 100-2: Metodologia</h5>
<div style="text-align: justify;">
Imagen cuadro (Diapositiva 12)</div>
<div style="text-align: justify;">
Análisis de la estructura IT:<br />
<ul>
<li>¿Qué dispositivos hay en mi sistema de Informacion?</li>
<li>¿Cuáles son las dependencias entre estod dispositivos?</li>
<li>¿Como se relaciona Informacion?</li>
</ul>
Se define el ámbito de aplicación para la creación del concepto de seguridad, y su relacion en la totalidad la infraestructura, personas y componentes técnicos que hacen parte de la organización.
<br />
Se analiza el desempeño y las funciones en una aplicación particular. Por ejemplo, el procesamiento de la información o la utilización de recursos informáticos.
<br />
El analisis de la forma en que se relaciona la información incluye:
* La estructura IT de toda la organización
* La estructura IT de cada una de las áreas individuales (por ejemplo, el departamento de redes) o las aplicaciones informáticas (por ejemplo, el sistema de información del personal)
* Los procesos de negocio
<br />
Subtareas del Análisis Estructural:
<br />
* El registro de los procesos de negocio, aplicaciones y la información relacionada<br />
* Creación o actualización la topología de red <br />
* Evaluación de los sistemas IT <br />
* Encuesta de sistemas de TI <br />
* Creación y adaptacion de espacios seguros<br />
* Reducción de la complejidad formando pequeños grupos de evaluación<br />
Requisitos de protección:<br />
Evaluación de los requisitos de confidencialidad, integridad y disponibilidad (Normal - alto - muy alto)
<br />
la necesidad de protección no suele ser fácilmente cuantificable, por lo tanto está limitada a tres categorías:
<br />
<ul>
<li>"Normal": Los efectos de los daños son limitados y manejables.</li>
<li>"Alto": Los efectos de daño pueden ser ser sustanciales.</li>
<li>"Muy alto": Los efectos y alcance de daño puede ser amenazante y catastróficos para la existencia de la organización</li>
</ul>
Pasos de los Requisitos de protección<br />
<br />
<ul>
<li>Definición de las categorías Requisitos de protección </li>
<li>Solicitudes, incluyendo sus datos Sistemas de TI</li>
<li>Enlaces de comunicación</li>
<li>Aulas de informática</li>
<li>el uso de escenarios típicos de los daños</li>
<li>Documentación de los resultados</li>
</ul>
<br />
Requisitos de protección de los sistemas IT<br />
* Principio Máximo: En un sistema de TI pueden ejecutar múltiples aplicaciones. En esencia se determina el daño con la más grave y el Impacto de las necesidades de protección del sistema de TI.<br />
Efecto acumulativo: Causada por la acumulación de varios (por ejemplo, más pequeño) un daño
mayor daño total general. Los requisitos de protección del sistema de TI<br />
aumenta en consecuencia.<br />
Distribución de efecto: Una aplicación transfiere su exigencia de una alta protección no se basa en un sistema de TI, ya que ejecuta en este sistema de TI sólo pequeñas partes de la aplicación de TI.<br />
Con un diseño de sistema redundante es las necesidades de protección de los componentes individuales inferiores a los requisitos de protección de la aplicación en general.<br />
<br />
Comprobación de seguridad básica:<br />
- Objetivo de comparación<br />
<br />
- Posible implementación de todas las medidas<br />
<br />
Comparación real de las medidas Realizadas con las medidas Recomendadas para proceder a su implementación: <br />
<br />
Estado de la aplicación de medidas<br />
<ul>
<li><Sí> La medida se aplica plena y eficazmente.</li>
<li><Indispensable> hay otras medidas o La amenaza no existe.</li>
<li><parcialmente> La medida está parcialmente implementado.</li>
<li><No> La medida no se aplica.</li>
</ul>
<br />
Medidas<br />
A: medidas esenciales<br />
A + B: medidas más importantes<br />
A + B + C: las medidas pertinentes<br />
Z: medidas adicionales<br />
<br />
W: Conocimiento<br />
<br />
Comprobación de seguridad básica:<br />
- Deben compararse <br />
- Posible implementación de todas las medidas<br />
análisis complementario de seguridad:<br />
- Del mismo modo detallado análisis de riesgo<br />
- A diferencia de otros métodos: "Peligros" como una combinación de Amenazas y vulnerabilidades<br />
<br />
<h5>
Norma: BSI 100-3 Análisis de riesgos basados en los catalogos de IT Grundschutz</h5>
1. Preparación de Amenaza de resumen<br />
2. Identificación de los adicionales Peligros<br />
3. Evaluación de riesgos<br />
4. Medidas para la selección y tratamiento de los riesgos<br />
5. Consolidación del Concepto de seguridad<br />
<br />
El tratamiento de los riesgos<br />
Transferir<br />
Monitoreo... pag 30<br />
<br />
Herramienta de línea de base de TI de Protección<br />
Apoyo para <br />
• Aplicación de un análisis de GS<br />
<br />
• Generación de informes<br />
• Certificación<br />
Costo:<br />
• alrededor de € 900 para la versión de usuario único, <br />
• Versión de prueba gratuita por 30 días<br />
<br />
<br />
La certificación ISO 27001 con las bases IT GS<br />
<br />
sobre la base de la protección basal TI<br />
ISO 27001 + Protección de lineabase<br />
<br />
<br />
Fases de certificación de la norma ISO 27001 -<br />
<br />
Inicialización<br />
• Certificación de la aplicación<br />
• Autoridad para llevar a cabo una auditoría<br />
• Si es necesario. Coordinación de la Red de Información<br />
<br />
Realización de la auditoría<br />
• Revisión de la documentación<br />
• Preparación de las actividades de auditoría en el sitio<br />
• Llevar a cabo auditorías de los locales<br />
<br />
Re-certificación de la Auditoría<br />
• la ejecución de las actividades de auditoría en el sitio<br />
<br />
Revisión de las auditorías<br />
• Elaboración de informes de auditoría<br />
• Revisión<br />
<br />
IT de referencia la certificación de protección desde el año 2006<br />
<br />
Una certificación de las partidas del balance ...<br />
<br />
incluye tanto una revisión del SGSI y el hormigón<br />
Las medidas de seguridad sobre la base de la protección de referencia de TI,<br />
siempre incluye una certificación oficial de la ISO a la norma ISO 27001,<br />
Sin embargo, debido a los aspectos técnicos, además, examinados<br />
mucho más significativa que una pura certificación ISO.<br />
Autorizado por los auditores BSI ...<br />
cumplir todos los requisitos que la ISO es para los auditores de un SGSI (ISO 27006)<br />
<br />
Certificado de Protección de línea de base<br />
Nivel de Entrada: Auditor Certificado, medidas indispensables (A)<br />
<br />
Nivel Avanzado: Auditor Certificado, Medidas importantes (A + B)<br />
Certificado: Medidas relevantes (A + B + C), pruebas delSGSI despues de ISO 27001<br />
<br />
¿Por qué certificarce?<br />
<br />
Optimización de los procesos internos<br />
<ul>
<li>funcionamiento ordenado de TI efectivo</li>
<li>a medio plazo ahorro de costes</li>
</ul>
Nivel de seguridad de TI se puede medir<br />
<br />
Aumentar el atractivo para los clientes y socios de negocios con requisitos de alta seguridad<br />
Los empleados y la gestión se identifican con Los objetivos de TI de seguridad y se sienten orgullosos de nuestros logros<br />
<br />
Página 44<br />
Las experiencias con la certificación<br />
La certificación es adecuado para las pequeñas empresas, tales como<br />
adecuado para grandes centros de datos!<br />
La aplicación de la protección básica de TI: 6 - 12 meses<br />
Los gastos del auditor: 15 - 30 días<br />
<br />
Factores de éxito:<br />
<ul>
<li>Apoyo a la gestión</li>
<li>La comprensión, la cooperación y la activa El apoyo de la TI y los gerentes de telecomunicaciones</li>
<li>agrupación coherente</li>
<li>Herramienta de Apoyo</li>
</ul>
<br />
Página 45<br />
Licencia de Auditor ISO 27001<br />
La licencia es el punto de partida del Auditor y es válida por 5 años.<br />
De formación anual sobre la reunión libre de los auditores<br />
Una extensión de la validez<br />
es una nueva aplicación<br />
posible<br />
descargarse del sitio web: www.bsi.bund.de/gshb/zert/auditoren/lizensierungsschema.htm<br />
<br />
Guia de Segurida IT<br />
<br />
• Información básica para PYMEs<br />
• Las medidas de fracaso (50)<br />
• Listas de comprobación<br />
<br />
La protección básica GSTOOL<br />
• Formación de la metodología<br />
• Auto-estudio<br />
• cada 4 horas<br />
<br />
El proceso de seguridad de TI que ella propone-Grundschutz consta de los siguientes pasos:<br />
R.A. Fases método apropiado para<br />
<br />
La identificación de riesgos: Cada módulo de TI-Grundschutz contiene una lista de las amenazas típicas. Las amenazas también se clasifican en 5 catálogos de amenazas. Identificación de las amenazas adicionales se lleva a cabo durante el análisis de riesgo suplementario.<br />
<br />
La caracterización del riesgo es el resultado de la evaluación de las necesidades de protección. Para este propósito, las categorías de protección requisito se definen y escenarios posibles daños son asignados a estas categorías de protección requisito. Una caracterización del riesgo que se den más en el análisis de riesgo complementaria, cuando los riesgos se caracteriza con la ayuda de la decisión de asignar de la forma de manejar<br />
<br />
El análisis de riesgos: Para cada amenaza, contenida en un módulo, una descripción detallada de la rosca se proporciona.<br />
<br />
La evaluación del riesgo: Una evaluación de la exposición se realiza dentro de la evaluación de los requisitos de protección con la ayuda de escenarios de daños. Por las amenazas identificadas en el marco de un análisis de riesgo adicional, la evaluación de la exposición se lleva a cabo durante la fase de la evaluación de las amenazas.<br />
<br />
R.M. Fases método apropiado para la evaluación de riesgos:<br />
<br />
El tratamiento de riesgos: Los catálogos de dispositivos de seguridad recomendados. Descripción detallada de las garantías asignadas a cada módulo de TI Grundschutz. Asignación de las salvaguardias a las amenazas consideradas (cruzar las tablas de referencia).<br />
<br />
Aceptación del riesgo: El análisis de riesgos basado en TI-Grundschutz ", amenazas de manipulación" en la Parte C.</div>
<h5>
Fuentes:</h5>
<div>
https://www.bsi.bund.de/ContentBSI/grundschutz/intl/intl.html<br />
http://rm-inv.enisa.europa.eu/methods_tools/m_it_grundschutz.html<br />
http://de.wikipedia.org/wiki/IT-Grundschutz<br />
<br /></div>
<h5>
Informacion Adicional</h5>
<h4>
Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</h4>
Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-33231906706173041752012-04-24T04:36:00.001-07:002014-03-22T20:37:37.487-07:00ISO/IEC 27005 Gestion de riesgos de seguridad de la Información<div style="text-align: justify;">
Esta norma contiene recomendaciones y directrices generales para la gestión de riesgos en sistemas de seguridad de la Información. Es compatible con los conceptos generales especificados en la norma ISO/IEC 27001 y está diseñada como soporte para aplicar satisfactoriamente un SGSI basado en un enfoque de gestión de riesgos.</div>
<br />
la norma ISO/IEC 27005 reemplaza a la norma anterior, ISO13335-2 "Gestión de seguridad de la información y la tecnología de las comunicaciones". La norma fue publicada por primera vez en junio de 2008, aunque hay una nueva versión mejorada en el 2011. <br />
<br />
El riesgo se define como una amenaza que explota la vulnerabilidad de un activo pudiendo causar daños. El <b>riesgo IT</b> está relacionado con el uso, propiedad, operación, distribución y la adopción de las tecnologías de la Información en una organización. Aunque no existe un método concreto de como gestionar riesgos, se recomienda usar un proceso estructurado, sistemático y riguroso de análisis de riesgos para la creación del plan de tratamiento de riesgos.<br />
<br />
Los indicadores de riesgo muestran si la organización está sujeta o tiene una alta probabilidad de ser sometida a un riesgo que excede el riesgo permitido.<br />
<br />
<br />
<h3>
<span style="color: orange;">
Gestión de Riesgos en Tecnologías de la Información </span></h3>
<br />
Gestión del Riesgo es una actividad recurrente que se refiere al análisis, planificación, ejecución, control y seguimiento de las medidas implementadas y la política de seguridad impuesta.<br />
<br />
La actualización de establecimiento, mantenimiento y continua mejora de un SGSI ofrecen una clara indicación de que una empresa está utilizando un enfoque sistemático para la identificación, evaluación y gestión de riesgos de seguridad de la información.<br />
<br />
<h3 style="color: orange;">
Identificación de riegos </h3>
<br />
Un evento solo es un riesgo si existe un grado de incertidumbre asociado con el, por ejemplo:El valor de un activo puede cambiar su valor durante la ejecución de un proyecto, por experiencia esto es cierto, pero ¿cuanto puede cambiar? no lo sabemos, por lo tanto es un riesgo que debemos evitar en un proyecto pequeño. Por lo tanto debemos estar seguros de identificar el riesgo en realidad y no sus causas o efectos.<br />
<br />
Si consideramos otro ejemplo, debemos instalar una determinada aplicación de software en varias sucursales de una empresa, pero no todas las oficinas poseen la misma capacidad de almacenamiento o las ultimas actualizaciones de sistemas operativos<br />
<ul>
<li>¿Es un riesgo la instalación? No, es un requerimiento</li>
<li>¿Es un riesgo de que alguna sucursal termine sin usar la aplicación? No, este es un efecto en este proyecto, sin embargo puede ser un riesgo futuro que la sucursal no tenga la aplicación.</li>
<li>¿Es un riesgo que la aplicación no se pueda instalar por algún motivo? Si, es incierto, solo lo sabremos cuando lo intentemos </li>
</ul>
Ejemplos de Riesgos en IT<br />
<ul>
<li>Corrier aplicaciones en condiciones vulnerables</li>
<li>Sistemas operativos, vulnerables y sin actualizaciones</li>
<li>Diseñar aplicaciones inapropiadas, incompletas, con bugs y errores recurrentes</li>
<li>Tecnologías obsoletas</li>
<li>Mal rendimiento de la infraestructura IT</li>
</ul>
<br />
<h3>
<span style="color: orange;">Evaluación del riesgos</span></h3>
<br />
Es necesario establecer un vínculo entre los escenarios de riesgos IT y el impacto empresarial que estos generarían, para así comprender el efecto de los eventos adversos que se pueden desencadenar.<br />
<br />
La evaluación de riesgos se ejecuta en los puntos discretos de tiempo (por ejemplo una vez al año, en la demanda, etc) y - hasta que el rendimiento de la próxima evaluación - proporciona una visión temporal de los riesgos evaluados.<br />
<br />
La evaluación de riesgos se realiza a menudo en más de una iteración, la primera es una evaluación de alto nivel para identificar los riesgos altos, mientras que las iteraciones posteriores detallan en el análisis de los riesgos principales y tolerables. Varios factores ayudan a seleccionar eventos con cierto grado de riesgo:<br />
<ul>
<li>Probabilidad</li>
<li>Consecuencias</li>
<li>Ocurrencia</li>
<li>Urgencia</li>
<li>Maleabilidad</li>
<li>Dependencia</li>
<li>Proximidad </li>
</ul>
Adicionalmente la evaluación de riesgos requiere los siguientes puntos:<br />
<ol>
<li>Un estudio de vulnerabilidades, amenazas, probabilidad, pérdidas o impacto, y la supuesta eficiencia de las medidas de seguridad. Los directivos de la organización utilizan los resultados de la evaluación del riesgo para desarrollar los requisitos de seguridad y sus especificaciones.</li>
<li>El proceso de evaluación de amenazas y vulnerabilidades, conocidas y postuladas para estimar el efecto producido en caso de pérdidas y establecer el grado de aceptación y aplicabilidad en la operaciones del negocio.</li>
<li>Identificación de los activos y facilidades que pueden ser afectados por amenazas y vulnerabilidades.</li>
<li>Análisis de los activos del sistema y las vulnerabilidades para establecer un estimado de pérdida esperada en caso de que ocurran ciertos eventos y la probabilidades estimadas de la ocurrencia de estos. El propósito de una evaluación del riesgo es determinar si las contramedidas son adecuadas para reducir la probabilidad de la pérdida o el impacto de la pérdida a un nivel aceptable.</li>
<li>Una herramienta de gestión que proporcione un enfoque sistemático que determine el valor relativo de:</li>
<ul>
<li>La sensibilidad al instalar activos informáticos</li>
<li>La evaluación de vulnerabilidades</li>
<li>La evaluación de la expectativa de pérdidas</li>
<li>La percepción de los niveles de exposición al riesgo</li>
<li>La evaluación de las características de protección existentes </li>
<li>Las alternativas adicionales de protección</li>
<li>La aceptación de riesgos </li>
<li>La documentación de las decisiones de gestión. </li>
</ul>
</ol>
Decisiones para la implementación de las funciones de protección adicionales se basan normalmente en la existencia de una relación razonable entre costo/beneficio de las salvaguardia y la sensibilidad / valor de los bienes que deben protegerse. Las evaluaciones de riesgos pueden variar de una revisión informal de una instalación a escala microprocesador pequeño para un análisis más formal y plenamente documentado (por ejemplo, análisis de riesgo) de una instalación a escala de ordenadores. Metodologías de evaluación de riesgos pueden variar desde los enfoques cualitativos o cuantitativos a cualquier combinación de estos dos enfoques.<br />
<br />
<h3 style="color: orange;">
Análisis de Riesgo</h3>
<br />
Este es el paso principal en el marco de la norma ISO/IEC 27005. La mayor parte de las actividades primarias se prevé que el primer proceso de evaluación de riesgos. Este paso implica la adquisición de toda la información pertinente sobre la organización y la determinación de los criterios básicos, finalidad, alcance, límites y organización de las actividades de gestión de riesgos. El objetivo es por lo general el cumplimiento de los requisitos legales y proporcionar la prueba de la debida diligencia el apoyo de un SGSI que puede ser certificado. El alcance puede ser un plan de notificación de incidentes, un plan de continuidad del negocio.<br />
<br />
Los criterios incluyen la evaluación del riesgo, aceptación de riesgos y criterios de evaluación de impacto. Estos están condicionados por: <br />
<ul>
<li> requisitos legales y reglamentarios</li>
<li> el valor estratégico para el negocio de los procesos de información</li>
<li> expectativas de los interesados</li>
<li> consecuencias negativas para la reputación de la organización</li>
</ul>
Establecer el alcance y los límites, la organización debería ser estudiado: su misión, sus valores, su estructura y su estrategia, sus lugares y el medio ambiente cultural. Las limitaciones (presupuestarias, culturales, políticos, técnicos) de la organización deben ser recogidos y documentados como guía para los pasos a seguir.<br />
<br />
<h3 style="color: orange;">
Escenarios de riesgo</h3>
<div>
<br /></div>
Escenarios de riesgo es el corazón del proceso de evaluación de riesgos. Los escenarios pueden derivarse de dos maneras diferentes y complementarias:<br />
<ul>
<li> Enfoque de arriba hacia abajo de los objetivos generales de la empresa a los escenarios de riesgo más probable es que puede tener un impacto.</li>
<li> Enfoque de abajo hacia arriba, donde se aplica una lista de escenarios de riesgo genéricos a la situación</li>
</ul>
Cada uno de los escenarios de riesgo se analiza para determinar la frecuencia y el impacto, sobre la base de los factores de riesgo.<br />
<br />
<h3 style="color: orange;">
Respuesta a los Riesgos</h3>
<div>
<br /></div>
El propósito de definir una respuesta al riesgo es llevar el riesgo en nivel que se pueda tolerar. es decir, el riesgo residual debe ser dentro de los límites de tolerancia al riesgo. El riesgo puede ser manejado de acuerdo cuatro estrategia principales (o una combinación de ellos):<br />
<ul>
<li> Evitar el riesgo aislando las actividades que dan lugar al riesgo</li>
<li> Mitigar el riesgo adoptando medidas que detectan y reducen el impacto del riesgo</li>
<li> Transferir riesgos a otras áreas menos susceptibles o a otras entidades con mas experiencia (outsourcing)</li>
<li> Aceptar riesgos que se corren deliberadamente y que no se pueden evitar, sin embargo es necesario identificarlos, documentarlos y medirlos</li>
</ul>
<br />
<div style="text-align: center;">
<br /></div>
<div style="color: orange; text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o enlaces de referencia serán bienvenidos.</b></div>
Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-43607273132669899682012-04-23T22:17:00.000-07:002012-04-24T04:32:34.203-07:00ISO/IEC 27002 Código de prácticas para la gestión de seguridad de la información<h3>
</h3>
<ul></ul>
El objetivo de la norma ISO 27002 antes ISO 17799:2005), es definir un marco para la gestión de la información de seguridad. Esta norma se centra principalmente en los pasos necesarios para establecer el funcionamiento del SGSI y aplicarlo en la organización.<br />
<br />
Las medidas de seguridad necesarias se describen brevemente en aproximadamente 100 páginas de la norma. Las recomendaciones están destinados principalmente a nivel de gestión por lo tanto no contienen mucha información técnica.<br />
<br />
La implementación de las recomendaciones de seguridad en la norma ISO 27002 es una de las muchas maneras para cumplir los requisitos de la norma ISO 27001.<br />
<h3>
</h3>
<h3>
<span style="color: orange;">Contenido</span><br /> </h3>
<ul>
<li>Estructura con 11 áreas temáticas, clausulas o secciones de control</li>
<ul>
<li>Política de Seguridad</li>
<li>Organización de la seguridad de la información</li>
<li>Gestión de Activos</li>
<li>Seguridad de Recursos Humanos </li>
<li>Seguridad física y ambiental</li>
<li>Gestión de Comunicaciones y Operaciones</li>
<li>Control de Acceso</li>
<li>Adquisición de Sistemas de Información, Desarrollo y Mantenimiento</li>
<li>Gestión de Incidentes de Seguridad de la Información </li>
<li>Gestión de continuidad</li>
<li>Conformidad </li>
</ul>
<li>Por cada área se definen uno o más objetivos control, indican que se puede lograr, en total son 39 </li>
<li>Para cada objetivo de control se definen uno o varios controles de
seguridad, responden a ¿Cómo puede logar el objetivo de control? en
total son 133 controles</li>
</ul>
<div style="text-align: justify;">
<h3 style="color: orange;">
<b>Control</b></h3>
Es una
medida de seguridad que utilizan las empresas para gestionar el riesgo,
incluye políticas de seguridad,
procedimientos, directrices, prácticas y estructuras organizativas, las
que pueden ser administrativas, técnicas, de gestión, o de carácter
legal. También son como salvavidas, medidas correctivas
(countermeasure) o soluciones puntuales a situaciones concretas, por lo
tanto sin un SGSI los controles pueden tender a ser un poco
desorganizados y
desarticulados.<br />
<br />
<div style="text-align: justify;">
El
Anexo
A de la norma ISO/IEC 27001 enumera los controles de
seguridad de la información de la norma ISO/IEC 27002 (Código de mejores
Prácticas del SGSI), el cual proporciona información adicional y
asesoramiento
sobre la ejecución de los controles de seguridad.<br />
<br />
Varios
conjuntos adicionales de
controles puede ser
utilizados potencialmente dentro de la norma ISO/IEC 27001 e incluso
remplazar la norma
ISO/IEC 27002, sin embargo estas dos normas
suelen se utilizarse juntas en la práctica para satisfacer muchos de los
requisitos de la certificación, el problema es que pueden carecer de
algunos de los elementos del
sistema de gestión global. Lo contrario también es cierto, en otras
palabras, el cumplimiento certificado de la norma ISO/IEC 27001
garantiza que el SGSI está en operando correctamente, pero dice poco
sobre el estado absoluto de seguridad de la información dentro de la
organización<br />
<br />
Los
controles técnicos de seguridad, como Antivirus y Firewalls normalmente
no se auditan en la certificación de la norma ISO/IEC 27001: la
organización presume que se han adoptado todas las medidas de seguridad
de la información necesaria desde el SGSI y se considera adecuada cuando cumpla con los requisitos de la
norma ISO/IEC 27001.</div>
<br />
Cada control consiste en:</div>
<ul style="text-align: justify;">
<li>Declaración de Control </li>
<li>Guía de Implementación<span class="" id="result_box" lang="es"><span class="hps"> y Certificación</span></span></li>
<li>Información Adicional</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4Ou2ll__wMrOVYpveIOon92QaoDqkFmtbaAK-fkiSvoG_ytpJNXSulZaC9M4UkYglu13jzx7fJQML6CQ2mX0xinpE7JzgmRdnl3BMavsWROzhRI54jyoTOd9L62MYp7Hob1FT/s1600/controles27002.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4Ou2ll__wMrOVYpveIOon92QaoDqkFmtbaAK-fkiSvoG_ytpJNXSulZaC9M4UkYglu13jzx7fJQML6CQ2mX0xinpE7JzgmRdnl3BMavsWROzhRI54jyoTOd9L62MYp7Hob1FT/s640/controles27002.jpg" width="632" /></a></div>
<br />
<br />
<div style="text-align: justify;">
<br /></div>
<div style="color: orange; text-align: center;">
Si tienes información adicional sobre este tema, tus comentarios o enlaces de referencia serán bienvenidos.</div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-91704763009711907002012-04-23T21:23:00.002-07:002012-05-31T02:57:10.429-07:00La Familia 27000 y sus amigos<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: center;">
<div style="text-align: justify;">
Es un conjunto de normas aplicables a todas las organizaciones sin importar su tamaño o rubro. Ademas de enfocarse en la privacidad, la confidencialidad o los problemas técnicos de seguridad de los sistemas IT, va dirigida a evaluar los riesgos de seguridad de la información, con el fin de implementar medidas y controles adecuados según las necesidades, directrices y sugerencias de cada empresa.<br />
<br />
Las normas de la familia ISO/IEC 27000 proporcionan orientación sobre determinados aspectos de diseño, implementación y operación de un Sistema de Gestión de seguridad de la Información (SGSI), además ofrece recomendaciones de mejores prácticas, manejo de riesgos y los controles aplicables al SGSI, de forma análoga a los sistemas de gestión para el aseguramiento de la calidad (ISO 9000) y del protección del medio ambiente ( Serie ISO14000). <br />
<br />
Dada la naturaleza dinámica de la seguridad de la información, el concepto de SGSI incorpora actividades de retroalimentación y mejora continua, los cuales se resumen en el modelo Deming "Planificar-hacer-verificar-actuar", enfoque, que tratan de abordar los cambios en las amenazas, vulnerabilidades e impacto de los incidentes de seguridad de la información.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitXkctuh2W7mV7v23RL6TcJyAiCT-hZ75Z_iz6DxuLAvCmEepNsZhEltYdvTSWsRiQxEOxVx0FNhY7qMUfeCDIVM8N2avHOPZ_0NoPorQ6JaiD8oTV-Xiz5v_8r8HPRKyFbAGb/s1600/PDCA+Modelo.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="425" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitXkctuh2W7mV7v23RL6TcJyAiCT-hZ75Z_iz6DxuLAvCmEepNsZhEltYdvTSWsRiQxEOxVx0FNhY7qMUfeCDIVM8N2avHOPZ_0NoPorQ6JaiD8oTV-Xiz5v_8r8HPRKyFbAGb/s640/PDCA+Modelo.jpg" width="640" /></a></div>
<br />
<h3 style="color: orange;">
Seguridad de la información </h3>
<br />
Este término surgió a partir de prácticas y procedimientos seguidos para salvaguardar los sistemas de seguridad informática. Se define como la protección, uso, procesamiento, divulgación, alteración, modificación, lectura, inspección, registro o destrucción, almacenamiento y transmisión de información o de datos en los sistemas de una organización.<br />
<br />
La gestión de la Seguridad de la información se ha convertido en garantía de que las organizaciones utilizan sistemas de gestión de riesgos, Si bien se centra predominantemente en la información en forma digital, también abarca la forma analógica o física.<br />
<br />
Este es un enfoque interdisciplinario que se basa en varios campos, incluyendo la contabilidad, criptografía, ciencias forenses, Sistemas de gestión, ciencias de la computación, ingeniería de seguridad, la criminología, además de la informática.<br />
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
<h3>
<b style="background-color: white; color: orange;">Apéndice de Normalización</b></h3>
</div>
<span class="" id="result_box" lang="es"> <span class="hps">Las normas</span> <span class="hps">son el producto</span> <span class="hps">de la norma ISO</span><span class="hps">/IEC JTC1</span> <span class="hps atn">(</span>Comité Técnico Conjunto <span class="hps">1)</span> <span class="hps">SC27</span> <span class="hps atn">(</span>Sub-comité <span class="hps">27)</span>, <span class="hps">un organismo internacional</span> <span class="hps">que se reúne en</span> <span class="hps">persona</span> <span class="hps">dos veces al año</span>.</span><br />
<br />
<div style="text-align: justify;">
<b>Organismos Internacionales</b><br />
ISO Organización Internacional de Normalización<br />
IEC Comisión Electrotécnica Internacional<br />
CEN Comité Europeo de Normalización</div>
<div style="text-align: justify;">
ÖNORM Instituto Austriaco de Normas<br />
DIN Instituto Alemán de Normalización<br />
BSI British Standards Institution<br />
AFNOR Asociación Francesa de Normalización<br />
ANSI American National Standards Institute<br />
<br />
<h3 style="color: orange;">
<b>Como funcionan la aprobación y publicación de una norma:</b></h3>
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQRQKK0EqgUNHZDocnDpX-a4uqN-AVDVKrMXjEeDJmVRskZ19H2NNV-YAJEkH7H-fpA8w7gVldRCclT1_i2aNPqIiE6ds7xY9XIxlxMUy7Z40-zEVTPDns1MMv8ct3jEG-VRbZ/s1600/Normalizacion.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" height="233" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQRQKK0EqgUNHZDocnDpX-a4uqN-AVDVKrMXjEeDJmVRskZ19H2NNV-YAJEkH7H-fpA8w7gVldRCclT1_i2aNPqIiE6ds7xY9XIxlxMUy7Z40-zEVTPDns1MMv8ct3jEG-VRbZ/s400/Normalizacion.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">http://www.iso.org/iso/iso_technical_committee?commid=45306</td></tr>
</tbody></table>
</div>
<span class="" id="result_box" lang="es"></span><br />
<div style="text-align: justify;">
<span class="" id="result_box" lang="es"></span><br />
<span class="" id="result_box" lang="es"></span><br />
<span class="" id="result_box" lang="es"> <span class="hps">En la actualidad,</span> <span class="hps">once</span> <span class="hps">de las normas</span> <span class="hps">de la serie están</span> <span class="hps">publicados y disponibles</span>, mientras que <span class="hps">varios más</span> <span class="hps">están todavía en desarrollo</span>. <span class="hps">Los</span> <span class="hps">originales de</span> <span class="hps">normas ISO / IEC</span> <span class="hps">son vendidos directamente por</span> <span class="hps">la norma ISO</span>, mientras que <span class="hps">los puntos de venta</span> <span class="hps">asociados con</span> <span class="hps">diversos</span> <span class="hps">organismos nacionales de normalización</span> <span class="hps">también venden</span> <span class="hps">varias versiones</span>, incluyendo <span class="hps">traducciones</span> <span class="hps">locales.</span></span></div>
<br />
<div style="text-align: justify;">
IS 27000 Bases y Vocabulario del SGSI</div>
<div style="text-align: justify;">
<a href="http://segweb.blogspot.com/2012/04/la-familia-de-normas-iso-27001-y-sus.html" target="_blank">IS 27001</a> Requerimientos del SGSI</div>
<div style="text-align: justify;">
<a href="http://segweb.blogspot.com/2012/04/27002.html" target="_blank">IS 27002</a> Código de buenas prácticas para la gestión de seguridad de la información</div>
<div style="text-align: justify;">
IS 27003 Guía de implementación del SGSI</div>
<div style="text-align: justify;">
IS 27004 Medidas de gestión de la seguridad de la información</div>
<div style="text-align: justify;">
<a href="http://segweb.blogspot.com/2012/04/27005.html" target="_blank">IS 27005</a> Gestión de riesgos en seguridad de la información</div>
<div style="text-align: justify;">
IS 27006 Requerimientos para los organismos que proveen Auditorias y certificaciones SGSI</div>
<div style="text-align: justify;">
IS 27007 Guías de referencia para auditar un SGSI, No publicado aún,</div>
<div style="text-align: justify;">
IS 27011 SGSI para organizaciones que prestan servicios de telecomunicaciones</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<br /></div>
<div style="color: orange; text-align: justify;">
<b><br /></b></div>
<div style="color: orange;">
<b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia son bienvenidos. </b></div>
</div>
</div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-73821987377086455722012-04-22T11:01:00.000-07:002012-05-31T03:34:50.663-07:00ISO/IEC 27001 Requisitos para mejorar los Sistemas de Gestión de la seguridad de la Información (SGSI)<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: center;">
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
<h3 style="color: orange;">
</h3>
<span class="" id="result_box" lang="es"><span class="hps">ISO/IEC 27001</span> es una normativa </span><span class="" id="result_box" lang="es"><span class="hps">internacional</span> válida de</span><span class="" id="result_box" lang="es"><span class="hps">sde octubre del 2005 y </span></span><span class="" id="result_box" lang="es">se </span><span class="" id="result_box" lang="es"><span class="hps">deriva de la norma</span> <span class="hps">BS 7799-2 del grupo BSI (</span></span>British Standards Institution)<span class="" id="result_box" lang="es">. Esta norma esp<span class="hps">ecifica</span> <span class="hps">formalmente</span> <span class="hps">todo el proceso requerido para implementar y aplicar un </span></span><span class="" id="result_box" lang="es"><span class="hps">sistema de gestión de </span></span><span class="" id="result_box" lang="es"><span class="hps">seguridad de la información (SGSI). </span>S<span class="hps">er</span> <span class="hps">una especificación formal</span> <span class="hps">significa que</span> se deben reunir ciertos <span class="hps">requisitos específicos en busca de una</span></span><span class="" id="result_box" lang="es"><span class="hps"> certificación.</span></span><span class="" id="result_box" lang="es"> </span><span class="" id="result_box" lang="es"><span class="hps"> </span></span><br />
<span class="" id="result_box" lang="es"><span class="hps"><br /></span></span><br />
La gerencia de la organización determina el alcance
del SGSI y delimitación de la certificación a una sola unidad de negocio, por lo tanto La norma ISO/IEC 27001 no
significa necesariamente que el resto de la organización, fuera del área
de ámbito, tiene un enfoque adecuado para la gestión de seguridad de la
información.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitXkctuh2W7mV7v23RL6TcJyAiCT-hZ75Z_iz6DxuLAvCmEepNsZhEltYdvTSWsRiQxEOxVx0FNhY7qMUfeCDIVM8N2avHOPZ_0NoPorQ6JaiD8oTV-Xiz5v_8r8HPRKyFbAGb/s1600/PDCA+Modelo.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" height="425" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitXkctuh2W7mV7v23RL6TcJyAiCT-hZ75Z_iz6DxuLAvCmEepNsZhEltYdvTSWsRiQxEOxVx0FNhY7qMUfeCDIVM8N2avHOPZ_0NoPorQ6JaiD8oTV-Xiz5v_8r8HPRKyFbAGb/s640/PDCA+Modelo.jpg" width="640" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Modelo Deming de aseguramiento de calidad</td></tr>
</tbody></table>
<br />
<h3>
</h3>
Enfoque orientado a procesos de ISO/IEC 27001 </div>
<div style="text-align: justify;">
<br />
Examina sistemáticamente los riesgos de la organización de seguridad de información, teniendo en cuenta las amenazas, vulnerabilidades e impactos.</div>
<div style="text-align: justify;">
<br />
Diseña e implementar un conjunto coherente y exhaustivo de los controles de seguridad de la información y/u otras formas de tratamiento de riesgos (por ejemplo, la cobertura de riesgos o de transferencia de riesgo), es especial para hacer frente a esos riesgos que se consideran inaceptables.<br />
<br />
Adoptar un proceso de gestión global sobre una base de realimentación continua para asegurar que los controles de seguridad de la información siguen satisfaciendo las necesidades de la organización.</div>
<div style="text-align: justify;">
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXozTJ27ZQKzrOuyphD7nk59QIA4TkZA5EHuwQ5UdiVMZH23LH23cOCcGMHRNU0dLM6ZAfX8e4n7btKSx_BCpePZhyphenhypheneynlH9NXV_acYyVaHqlORfYmqbF5pGkeiVVs-3tvP4T1/s1600/SGSI+ISMS+process.jpg"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXozTJ27ZQKzrOuyphD7nk59QIA4TkZA5EHuwQ5UdiVMZH23LH23cOCcGMHRNU0dLM6ZAfX8e4n7btKSx_BCpePZhyphenhypheneynlH9NXV_acYyVaHqlORfYmqbF5pGkeiVVs-3tvP4T1/s640/SGSI+ISMS+process.jpg" /></a><br />
<br /></div>
<div style="text-align: justify;">
</div>
<br />
<div style="text-align: justify;">
Las organizaciones que afirman haber adoptado la norma ISO/IEC 27001, deben ser formalmente auditado y certificado conforme a la normativa.<br />
<br />
<span class="" id="result_box" lang="es"><span class="hps"></span></span><span class="" id="result_box" lang="es"><span class="hps"> </span></span></div>
<div style="text-align: justify;">
<span class="" id="result_box" lang="es"><span class="hps"><br /></span></span><br />
<span class="" id="result_box" lang="es"> <span class="hps">•</span> <span class="hps">Responsabilidad de la administración</span><br /> <span class="hps">•</span> <span class="hps">Auditorías internas</span> <span class="hps">del SGSI</span><br /> <span class="hps">•</span> <span class="hps">examen de la gestión</span> <span class="hps">de ISMS</span><br /> <span class="hps">•</span> <span class="hps">Control de Documentos</span></span><br />
<span class="" id="result_box" lang="es"><span class="hps"> </span><br /> <span class="hps">Declaración de aplicabilidad</span>:<br /> <span class="hps">• Los</span> <span class="hps">objetivos de control</span> <span class="hps">y controles seleccionados</span><br /> <span class="hps">• Los</span> <span class="hps">objetivos de control</span> <span class="hps">y controles aplicados </span><br /> <span class="hps">• </span></span><span class="" id="result_box" lang="es">L<span class="hps">os objetivos de control</span> <span class="hps">y los controles</span></span><span class="" id="result_box" lang="es"><span class="hps"></span> <span class="hps">no seleccionados</span><span class="hps"></span><span class="">, justificación</span></span></div>
<div style="text-align: justify;">
<br />
<br />
<h3>
</h3>
<h3>
Comparación de ISHB y SGSI</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtyhtE4UPnRp09x6pPdOcYT5JMn8tDlJWRlhyphenhyphenrQbQNWCaZ-1Fyccv1hOVm1oKAd-ACbNMoVK32_Ke18weHoJ4RQ9sLw81ypmAz86_CsAI3uuAGXEZj8NryKk__nKCeM-IIre9M/s1600/HISB+vs+SGSI.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="420" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtyhtE4UPnRp09x6pPdOcYT5JMn8tDlJWRlhyphenhyphenrQbQNWCaZ-1Fyccv1hOVm1oKAd-ACbNMoVK32_Ke18weHoJ4RQ9sLw81ypmAz86_CsAI3uuAGXEZj8NryKk__nKCeM-IIre9M/s640/HISB+vs+SGSI.jpg" width="640" /></a></div>
<h3 style="color: orange;">
Certificación</h3>
la certificación SGSI se aplica a empresas, no a productos o servicios, una empresa certificada garantizar a sus clientes y socios, que cumple con las normas de seguridad, por lo tanto es fiable y maneja criterios de calidad.<br />
<br />
<br />
En algunos países, los organismos que verifican la conformidad de los
sistemas de gestión a las normas especificadas son llamados "organismos
de certificación", mientras que en otros se refieren comúnmente como
"organismos de certificación".<br />
<br />
<span class="" id="result_box" lang="es"><span class="hps">Los requisitos de la entidades acreditadoras son:</span><br /> </span><br />
<ul>
<li><span class="" id="result_box" lang="es"><span class="hps">imparcialidad</span></span></li>
<li><span class="" id="result_box" lang="es"> <span class="hps">neutralidad</span></span></li>
<li><span class="" id="result_box" lang="es"> <span class="hps">Repetibilidad</span></span></li>
<li><span class="" id="result_box" lang="es"> <span class="hps">objetividad</span></span></li>
<li><span class="" id="result_box" lang="es"> <span class="hps">independencia financiera</span></span></li>
</ul>
En Austria: La acreditación se hace por medio del <a href="http://www.bmwfj.gv.at/" target="_blank">BMWFJ</a> y <a href="http://www.bmwfj.gv.at/TechnikUndVermessung/Akkreditierung/Seiten/AkkreditiertePIZ-Stellen.aspx" target="_blank">CIS</a> (Certified Information Security Services) <br />
<br />
La norma ISO/IEC 27001 al igual que otras certificaciones ISO de sistemas de gestión, por lo general implica un proceso de auditoría en tres etapas:<br />
<br />
<b>Etapa 1</b> Es un examen preliminar e informal del SGSI, comprobando la existencia y la integridad de la documentación clave, como las políticas de seguridad de la información dentro de la organización, la Declaración de Aplicabilidad (SOA) y Plan de Tratamiento del Riesgo (RTP). Esta etapa sirve para familiarizar a los auditores de la organización y viceversa.</div>
<div style="text-align: justify;">
<br />
<b>Etapa 2</b> Es una auditoría de cumplimiento más detallada y formal. Los auditores buscan pruebas para confirmar que el sistema de gestión ha sido correctamente diseñado e implementado, por ejemplo: Confirmar que un comité de seguridad o cuerpo similar de administración se reúne periódicamente para supervisar la operación del SGSI. </div>
<div style="text-align: justify;">
<br />
<b>Etapa 3</b> Seguimiento de revisiones o auditorías para confirmar que la organización siga cumpliendo con la norma. El Mantenimiento de la certificación requiere de evaluaciones periódicas para confirmar que el SGSI sigue funcionando según lo especificado y previsto. Estos deben ocurrir al menos una vez al año, pero a menudo se realizan con más frecuencia, en particular, mientras que el SGSI todavía está madurando.<br />
<br />
<h3 style="color: orange;">
Duración del proceso de certificación</h3>
<div style="color: orange;">
<span style="color: black;">3 años con auditorias de vigilancia cada 6 meses, después es necesaria una re-certificación</span> </div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh28S3bvpsIBV1aTmlV4K7mq4GX4862WAEE9KJAbPEmzmRoVYP9hecZqgb7oL4azTu2hiwZYzJhOpe8CN99jdFZArNkeIQRKcPOGDMJTbwSbSg-v3YhIDqieZbIpwYHG1j7jfvE/s1600/SGSI+durabilidad" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh28S3bvpsIBV1aTmlV4K7mq4GX4862WAEE9KJAbPEmzmRoVYP9hecZqgb7oL4azTu2hiwZYzJhOpe8CN99jdFZArNkeIQRKcPOGDMJTbwSbSg-v3YhIDqieZbIpwYHG1j7jfvE/s640/SGSI+durabilidad" width="640" /></a></div>
<br />
<br />
<br />
Fuentes: www.bitkom.org</div>
<br />
<b style="background-color: white; color: orange;">Si tienes información adicional sobre este tema, tus comentarios </b><b style="background-color: white; color: orange;">o links de referencia</b><b style="background-color: white; color: orange;"> son bienvenidos. </b></div>
</div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-80998459489949162072012-04-21T23:56:00.005-07:002012-04-23T03:52:10.474-07:00Criterios comunes para probar y evaluar la Seguridad en las Tecnologías de la Información<div style="text-align: justify;">
Tambien conocida como "Common Criteria" o CC, es una norma de certificación reconocida internacionalmente para certificar los procesos de implementación, especificación, desarrollo y evaluación en productos de seguridad informática.<br />
<br />
Los fabricantes y vendedores de productos de seguridad IT como Controladores de seguridad, tarjetas inteligentes(Smart Cards), etc, afirman reunir ciertas características de seguridad, sin embargo la seguridad y la confianza van de la mano, por lo tanto deben medirse de manera rigurosa y estandarizada para garantizar la funcionalidad ofrecida. <br />
<br />
Versión 3.1R3 (2007): Vigente actualmente (Febrero 2012), al unificar las Norma internacionales ISO/IEC 15408, ITSEC (Europa), TCSEC, FC (EE.UU) y CTCPEC (Canadá), está reconocida oficialmente por 26 naciones.</div>
<br />
<h3 style="color: orange;">
Beneficios </h3>
<ul>
<li><span class="" id="result_box" lang="es"><span class="hps">Los usuarios de sistemas IT </span><span class="hps">pueden</span> <span class="hps">especificar sus</span> <span class="hps">requisitos funcionales de seguridad, disponibilidad </span> <span class="hps">y garantía</span><span class="">.</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Los proveedores</span> <span class="hps">pueden garantizar </span><span class="hps">y </span><span class="hps">asegurar el cumplimiento de los</span> <span class="hps">atributos de seguridad que ofrecen </span><span class="hps">sus productos. </span></span></li>
<li><span class="" id="result_box" lang="es"><span class="hps">L</span><span class="hps">os investigadores y desarrolladores </span><span class="hps">pueden</span> <span class="hps">evaluar los productos</span> IT <span class="hps">para determinar si</span><span class="">, efectivamente, cumplen</span> <span class="hps">los beneficios ofrecidos.</span></span><span class="" id="result_box" lang="es"><span class="hps"> </span></span><span class="" id="result_box" lang="es"><span class="hps"> </span></span><b> </b></li>
</ul>
<h3 style="color: orange;">
<b> </b></h3>
<h3 style="color: orange;">
<b>Contenido</b></h3>
Parte 1: Introducción y modelo general<br />
Parte 2: Componentes de seguridad funcionales<br />
Parte 3: Componentes de Aseguramiento de seguridad<br />
<h3 style="color: orange;">
<span class="" id="result_box" lang="es"><span class="hps"> </span></span></h3>
<h4 style="color: orange;">
<span class="" id="result_box" lang="es"><span class="hps">Objeto de Evaluación</span> <span class="hps">(TOE Target of Evaluation)</span> </span></h4>
<span class="" id="result_box" lang="es"><span class="hps">Es el producto</span> <span class="hps">o sistema de información que</span> requiere una evaluación<span class="hps"> para </span><span class="hps">validar sus características de seguridad y su funcionamiento</span><span class="hps">.</span></span><br />
<br />
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLxwaPyBjt_vQjz-jltG0_Fwfe7Xe92UwEHplCEatlyma75FFX-ZUm0S_dmVoyo1wLddqj69gfJMHunfY9wvBaPzohX4uDo5lj476N0Kg7R4-0cUAlQy3bjmJR_m8-E6eNXVD6/s1600/PP+Solutions.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="230" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLxwaPyBjt_vQjz-jltG0_Fwfe7Xe92UwEHplCEatlyma75FFX-ZUm0S_dmVoyo1wLddqj69gfJMHunfY9wvBaPzohX4uDo5lj476N0Kg7R4-0cUAlQy3bjmJR_m8-E6eNXVD6/s400/PP+Solutions.jpg" width="400" /></a><span class="" id="result_box" lang="es"><span class="hps"> </span></span><br />
<span class="" id="result_box" lang="es"><span class="hps"> </span> <span class="hps"></span><span class="hps"></span> <span class=""></span></span></div>
<h4>
</h4>
<h3>
</h3>
<h4>
<span style="color: orange;">Perfiles de Protección (PP)</span></h4>
<h3>
</h3>
<br />
Son Documentos creados por un usuario o comunidad de usuarios que identifican los <b>requisitos y especificaciones de seguridad</b> que debe cumplir una familia de productos IT o sistemas de información, así Los clientes que buscan cierto producto pueden centrarse en los certificados PP que cumplan sus necesidades.<br />
<br />
Un PP especifica los criterios generales de evaluación de seguridad para que los clientes puedan justificar con motivos tangibles la reclamación a los vendedores el producto. Los desarrolladores pueden optar por diseñar productos que cumplan con uno o más PP que han sido parte de los procesos de evaluación. <br />
<br />
<span class="" id="result_box" lang="es"><span class="hps"> </span></span><span class="hps"></span><span class="" id="result_box" lang="es"><span class="hps"> </span></span><br />
<ul>
</ul>
<h4>
<b>Ejemplos de PP</b></h4>
<br />
Tarjeta Inteligente usada como dispositivo
de creación de Firma digital con los Perfiles de protección de acuerdo
con los Criterios Comunes certificados por BSI <span class="" id="result_box" lang="es"><span class="hps"></span></span><span class="" id="result_box" lang="es"><span class="hps"> </span></span><br />
<u><br />Tipo 1</u>: Generación de claves seguras de firmas digitales>EAL 4 + BSI-PP-0004-2002T<br />
<br />
<u>Tipo 2</u>: Almacenamiento de la clave y producción de firmas> EAL 4 + BSI-PP-0005-2002T<br />
<br />
<u>Tipo 3</u>: Combinación de 1 y 2 en un dispositivo> EAL 4 + BSI-PP-0006-2002T<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYduuYGG-R7_1hIvhj8F2N66CWpcJJsc30S4fAa-ZShhukTxnXRqPWr09P0-caSCfhEsCfrAz2FVwVyBo7BMMNATfzmDgBCiNpTt2DsxBY_91g_s_BoLbFWOKARLr1OR3-uW-P/s1600/Ejemplo+PP.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="436" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYduuYGG-R7_1hIvhj8F2N66CWpcJJsc30S4fAa-ZShhukTxnXRqPWr09P0-caSCfhEsCfrAz2FVwVyBo7BMMNATfzmDgBCiNpTt2DsxBY_91g_s_BoLbFWOKARLr1OR3-uW-P/s640/Ejemplo+PP.jpg" width="640" /></a><br />
<h3>
</h3>
<h3>
<span style="color: orange;"> </span></h3>
<h4>
<span style="color: orange;">Objetivo de Seguridad (ST - Security Target) </span></h4>
<br />
Documento proporcionado por el desarrollador del producto, que especifica los criterios de seguridad que se pueden evaluar en el TOE y utiliza uno o más PPs como puntos de referencia.<br />
<br />
Esto permite a los proveedores adaptar con precisión su producto para que coincida con los campos de aplicación. Por ejemplo un firewall de red no tiene que cumplir los mismos requisitos funcionales que un sistema de gestión de bases de datos (DBMS). El ST se suele publicar para que los clientes potenciales pueden determinar las características específicas de seguridad que han sido certificadas por los entes de evaluación.<br />
<br />
Los autores del ST pueden aseguran el cumplimiento de uno o mas requisitos de seguridad delineados por la plantilla del PP, Así reúnen una descripción completa y rigurosa de los posibles problemas de seguridad de un
TOE, incluyendo las amenazas, los supuestos, los
requisitos funcionales de seguridad (SFR) y requisitos de aseguramiento
de seguridad (SARs). <br />
<br />
<img border="0" height="489" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNmUkOvKedy3EpMpxlEAlj8gg7QCwZXnBPE5PhmC1pqdS3J8dJxvzzMZchKBmtHfk8aIBmIkd-HtMcjjvS8kj1-SK2ebxJt1gVM0RWRM9M_HeqPalZulBikqNY-YtnGl5B8fNo/s640/Establecimiento+de+los+principios+de+seguridad.jpg" width="640" /><br />
<br />
<br />
<h4>
<span style="color: orange;">Requisitos funcionales de seguridad (SFR)</span></h4>
CC posee un catálogo estándar de funciones que definen las características individuales de seguridad que posee un producto. Por ejemplo: El control de acceso y autenticación de un usuario que posee un determinado rol, tecnologías adicionales como encripción, protocolos de comunicaciones, auditoría, etc.<br />
<br />
La lista de SFR puede variar de una evaluación a la siguiente, incluso si dos objetivos son el mismo tipo de producto. A pesar de que el Common Criteria no requiere que algún SFR sea incluidos en el ST, identifica las dependencias de la correcta operación de una función, como Limitar el acceso de usuarios de acuerdo a roles, sea dependiente de otra función como la capacidad de identificar roles individualmente.<br />
<h2>
</h2>
<h3>
<span style="color: orange;">Evaluación</span></h3>
<span class="" id="result_box" lang="es"><span class="hps">El proceso de evaluación</span><span class="hps"> trata de</span> <span class="hps">establecer el nivel</span> <span class="hps">de confianza que</span> <span class="hps">puede ser asignado a</span> <span class="hps">las características de seguridad</span> <span class="hps">del producto mediante </span><span class="hps">de procesos</span> <span class="hps">de garantía de calidad</span><span class="">. </span></span>Las instituciones evaluadoras hacen tres posibles tipos de Pruebas y evaluación para comprobar que los productos de seguridad informática y sistemas de Información realmente reúnen las características que afirman.<br />
<br />
<ul>
<li>Criterios para probar y evaluar los perfiles de protección (PP).</li>
<li>Requisitos de seguridad basados en los criterios para probar y
evaluar los objetivos de seguridad(ST) por medio de los objetos de
seguridad (TOE)</li>
<li>Pruebas y evaluación de un TOE basados en los criterios ya evaluados de los ST o PP </li>
</ul>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV6M5zDSspBVnYnYvxymWYnew__NRI7ohoZo-4Y9lbHEnRu6oOc-DSmq1ojzWAhWLEYEai7hueI1zUAaEOF1Q1jevvWrqf_H6j-awJlTDBMpL6ZixwcBxklT3GfY7WlBGXdjiR/s1600/Principios+para+evaluar+la+seguridad.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="539" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV6M5zDSspBVnYnYvxymWYnew__NRI7ohoZo-4Y9lbHEnRu6oOc-DSmq1ojzWAhWLEYEai7hueI1zUAaEOF1Q1jevvWrqf_H6j-awJlTDBMpL6ZixwcBxklT3GfY7WlBGXdjiR/s640/Principios+para+evaluar+la+seguridad.jpg" width="640" /></a> <br />
<h3>
</h3>
<h4 style="color: orange;">
Requisitos de Aseguramiento de seguridad (SAR)</h4>
<br />
Los requisitos para un objetivo particular o tipos de productos están documentados en el ST y el PP, respectivamente, Sin embargo SAR describe las medidas para asegurar la calidad y el cumplimiento de las funciones de seguridad adoptadas durante el desarrollo, las pruebas y evaluación del producto.<br />
<br />
Una evaluación puede requerir que todo el código fuente se mantenga en un sistema de gestión de cambios, que se realice una prueba funcional completa, el uso de métodos
formales o semiformales para analizar el código fuente y garantizar la calidad de las herramientas de desarrollo
(compilador, lenguaje de programación, plataformas, infraestructura, etc...)<br />
<br />
<br />
<h4 style="color: orange;">
<b>Niveles de Integridad o </b><span class="" id="result_box" lang="es"><span class="hps">Nivel de Aseguramiento de</span> <span class="hps atn">evaluación</span></span><b> ( EAL- Evaluation Assurance Level)</b></h4>
<span class="" id="result_box" lang="es"><span class="hps">PP también </span><span class="hps">especifica el</span> <span class="hps">EAL </span></span><span class="" id="result_box" lang="es"><span class="hps">en el rango de </span><span class="hps">1 al</span> <span class="hps">7</span>, lo que indica <span class="hps">la profundidad</span> <span class="hps">y el rigor de</span> <span class="hps">la</span> <span class="hps">evaluación de la seguridad</span>, por lo general <span class="hps">en forma de</span> <span class="hps">documentación de apoyo</span> <span class="hps">y pruebas,</span> <span class="hps">que</span> <span class="hps">un</span> <span class="hps">producto cumple con</span> <span class="hps">los requisitos de seguridad</span> <span class="hps">especificados en el</span> <span class="hps">PP</span>.</span><span class="hps"> </span><b><br /></b><br />
EAL1: Pruebas funcionales, sin la cooperación de los desarrolladores, el TOC trabaja de acuerdo con la documentación<br />
EAL2: Pruebas estructurales, los sistemas existentes, donde no hay documentación completa disponible para el Desarrollo<br />
EAL3: Metódicamente probado y comprobado, seguridad media<br />
EAL4: Metódicamente desarrollado, probados y revisados, Seguridad media y alta, es el <b>nivel mínimo mas aceptado.</b><br />
EAL5: Semi-formalmente diseñado y probado, lenguaje con sintaxis restringido, Seguridad alta.<br />
EAL6:
Diseño semi-formal, verificado y probado, Se usa en tecnologías de alta
seguridad en un entorno de desarrollo con controles estrictos<br />
EAL7:
Diseño formalmente verificada y probada. TOG adecuado para su uso en
situaciones con riesgos extremadamente alto; un análisis formal y amplio
de las funcionalidades de seguridad requerida. <br />
<br />
<h4>
<b>Niveles de jerarquía de los requerimientos de seguridad </b></h4>
<div style="text-align: justify;">
1. <b>Clases de seguridad:</b> Objetivos generales de seguridad contra diferentes amenazas</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjOBMjQSEo8yL3jC3S_VxBFajnYg4mnkkRp9eELBvafmDKRhhJKVgdhRwQjuZk73yX89wkZttjQmIsEsx8ozzNl5_aTfGUO1BM4UEnrw3deBUM70m2pJ41T8spVvqYT2Snid-E/s1600/Clases+de+Seguridad.jpg" style="margin-left: 1em; margin-right: 1em;"><b><img border="0" height="274" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjjOBMjQSEo8yL3jC3S_VxBFajnYg4mnkkRp9eELBvafmDKRhhJKVgdhRwQjuZk73yX89wkZttjQmIsEsx8ozzNl5_aTfGUO1BM4UEnrw3deBUM70m2pJ41T8spVvqYT2Snid-E/s640/Clases+de+Seguridad.jpg" width="640" /></b></a></div>
<div style="text-align: justify;">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYduuYGG-R7_1hIvhj8F2N66CWpcJJsc30S4fAa-ZShhukTxnXRqPWr09P0-caSCfhEsCfrAz2FVwVyBo7BMMNATfzmDgBCiNpTt2DsxBY_91g_s_BoLbFWOKARLr1OR3-uW-P/s1600/Ejemplo+PP.jpg" style="margin-left: 1em; margin-right: 1em;"></a></div>
<div style="color: orange;">
<h3>
<b>Certificación </b></h3>
</div>
<br />
<b>Esquema del Sistema de certificación:</b>
Son documentados públicamente accesibles, los cuales resumen todos los
principios, normas y procedimientos que se llevan a cabo para evaluar y
emitir certificados.<br />
<br />
Principio de separación de poderes :<br />
<ul>
<li>Cliente: (patrocinador): responsable de la TOE</li>
<li>Auditor: (Entidad de valoración) responsable de las pruebas, Requisitos EN 45001</li>
<li>Certificación: (Entidad certificadora): Hace seguimiento de la evaluación y las pruebas de las certificados, Requisito EN 45011</li>
<li>Acreditación: vigila el cumplimiento de las normas, acreditando la certificación y la auditoría. </li>
</ul>
<br />
<b>Acuerdo de Reconocimiento según los Criterios comunes (CCRA)</b><br />
<br />
Acuerdo
CC firmado en el 2000 por los países como Australia, Alemania,
Finlandia, Francia, Grecia, Reino Unido Italia Canadá Países Bajos Nueva
Zelanda Noruega Gran Bretaña, Italia, Canadá, Nueva Zelanda, Países
Bajos, Noruega, España, Estados Unidos.<br />
<br />
Más tarde en el
2002 se unieron países como: Dinamarca, India, Israel, Japón, Corea del
Sur, Malasia, Austria, Pakistán, Singapur, Suecia, República Checa,
Turquía y Hungría.<br />
<br />
Los certificados de seguridad TI deben tener reconocimiento global y se basan en CC incluyendo el nivel de aseguramiento EAL4.<br />
<br />
<br />
<b>SOGIS-MRA</b><br />
<br />
Acuerdo
de Reconocimiento Mutuo de Evaluación en Certificación de la seguridad
en tecnologías de la Información. (SOGIS Mutual Recognition Agreement of
Information Technology Security Evaluation Certificates)<br />
<br />
Es
el grupo oficial Senior para certificar en temas de Seguridad de la
Información con reconocimiento europeo de los certificados ITSEC/CC,
Reconoce los certificados bajo las condiciones EAL7.<br />
<br />
Firmado
en 1998 por países como Alemania, Finlandia, Francia, Grecia, Gran
Bretaña, Italia, Países Bajos, Noruega, Portugal, Suecia, Suiza y
España, por ejemplo, Alemania: recibió el reconocimiento de su
certificación por Francia y Gran Bretaña.<br />
<br />
<br />
<b>Fuente CC:</b>http://www.commoncriteriaportal.org/cc/</div>
<br />
<br />
<div style="color: orange; text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b></div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-14117305503059370792012-04-21T12:18:00.002-07:002012-04-21T13:18:16.187-07:00Clasificación de aplicaciones y sistemas BCP<h3 style="color: orange;">
<span class="" id="result_box" lang="es"><b><span class="hps">Objetivos</span></b></span></h3>
<span class="" id="result_box" lang="es"> </span><br />
<ul>
<li><span class="" id="result_box" lang="es"><span class="hps">Asegurar la disponibilidad de las </span><span class="hps">principales aplicaciones y sistemas</span> <span class="hps">TI</span> <span class="hps"></span><span class="hps">dentro de un</span> <span class="hps">período definido.</span></span></li>
<li><span class="" id="result_box" lang="es"> <span class="hps">Control de daños</span> <span class="hps">en caso de desastre</span>.</span></li>
</ul>
<h3>
<span class="" id="result_box" lang="es"> </span></h3>
<h3 style="color: orange;">
<span class="" id="result_box" lang="es"> <span class="hps">Definición</span> <span class="hps atn">(</span>BS25999)</span></h3>
<div style="color: black;">
<span class="" id="result_box" lang="es"><span class="hps">Plan de </span></span><span class="" id="result_box" lang="es"><span class="hps">C</span><span class="hps">ontinuidad</span> de operaciones de Negocio </span><span class="" id="result_box" lang="es"><span class="hps">(Business continuity planning) es la </span></span><span class="" id="result_box" lang="es"><span class="hps"></span></span></div>
<span class="" id="result_box" lang="es"><span class="hps">Capacidad estratégica</span> <span class="hps">y técnica de una </span><span class="hps">organización para planificar</span> <span class="hps">y responder a </span><span class="hps">incidentes propios del </span><span class="hps">negocios, </span><span class="hps">de tal manera que se pueda guarantizar la ocntinuidad de las </span><span class="hps">operaciones</span> <span class="hps">en un</span><span class="hps"> </span><span class="hps">nivel míimo </span></span><span class="" id="result_box" lang="es"><span class="hps">aceptable </span></span><span class="" id="result_box" lang="es"><span class="hps">previamente.</span></span><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://vibriefing.com/wp-content/uploads/2012/03/Business-continuity-planning-wallpaper.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="484" src="http://vibriefing.com/wp-content/uploads/2012/03/Business-continuity-planning-wallpaper.png" width="640" /></a></div>
<h3 style="color: orange;">
<b><span class="" id="result_box" lang="es"><span class="hps">Ejemplo de Clasificación BCP </span></span></b></h3>
<br />
<span class="" id="result_box" lang="es"><span class="hps">Categoría 1> </span><span class="hps"></span> <b>No es crítico si n<span class="hps"></span></b></span><span class="" id="result_box" lang="es"><b>o hay <span class="hps">suministro:</span></b> La falla p<span class="hps">or un período indefinido</span> <span class="hps">no afectara</span> </span><span class="" id="result_box" lang="es"><span class="hps">significativamente l</span><span class="hps">a ejecución de tareas</span>.</span><span class="" id="result_box" lang="es"><span class="hps"></span></span><br />
<span class="" id="result_box" lang="es"><br /><span class="hps"></span><span class="hps">Categoría 2></span> <b><span class="hps">Aseguramiento Off-line: </span></b><span class="hps">Las medidas actuales </span><span class="hps">de seguridad,</span> <span class="hps">la localización</span> <span class="hps">externa, </span><span class="hps">Reinicio de la aplicación</span> <span class="hps">después de la reparación</span> <span class="hps">de los daños del </span><span class="hps">sistema original.</span></span><br />
<span class="" id="result_box" lang="es"><span class="hps"> </span><br /> <span class="hps">Categoría </span><span class="hps"></span><span class="hps">3></span> <b><span class="hps">Infraestructura redundante:</span></b> <span class="hps">En el caso de fallo</span> <span class="hps">de un componente, </span><span class="hps">continúan sus operaciones</span> <span class="hps">sin interrupción.</span></span><br />
<span class="" id="result_box" lang="es"><span class="hps"> </span><br /> <span class="hps"></span><span class="hps"> categoría 4</span><span class="">> <b>Ubicación redundante</b>: Construcción </span><span class="hps">redundante de</span> <span class="hps">infraestructura</span><span class="">, sistemas y aplicaciones </span><span class="hps">en el</span> <span class="hps">caso de fallo.</span></span><br />
<br />
<div style="color: orange; text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b></div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-7156567526436189772012-04-21T08:20:00.002-07:002012-04-22T08:44:51.099-07:00Fundamentos y objetivos de SIHB (Security Information Hand Book)<div style="text-align: left;">
<div style="color: orange;">
<br />
<h3>
<b><span style="color: black;"> <span style="color: orange;">Objetivos</span></span></b></h3>
<span style="color: black;"> • Estandariza los procedimientos del Sistema de gestión de seguridad</span><br />
<span style="color: black;">• Recopila las normas y medidas de seguridad as para los requisitos de protección medio</span></div>
<div style="color: orange;">
<h3>
<b><span style="color: black;"> <span style="color: orange;">Punto de partida</span></span></b></h3>
<span style="color: black;"> • IT Manual de referencia de Protección del BSI</span><span style="color: black;"> (BSI IT Baseline Protection) </span><br />
<span style="color: black;"> • ISO / IEC TR 13335</span><br />
<span style="color: black;"> • ISO / IEC 27001</span></div>
<div style="color: orange;">
<h3>
<b style="color: orange;">Requisitos</b><span style="color: black;"><b> </b> </span></h3>
<span style="color: black;">• Compatible con los estándares enfoque unificado</span><br />
<span style="color: black;"> • Las leyes austríacas y las normas</span><br />
<span style="color: black;"> • Hace parte del ciclo de vida de todo el sistema </span></div>
<div style="color: orange;">
<br />
<h3>
<span style="font-size: large;"><b>Proceso de Gestión de seguridad SIHB </b></span></h3>
<h3>
</h3>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMBCWNCGOQyWQEJxrrC5gm79aDvp3QI7sC9ZUQvZOXtTSV7sAi0XjwHkdlX3uE5_21h3agkAfkd8UJfGQEomHIFy3pQiLl-dtEzog70nZyzjIThlzZbjmeumFCHe_ltptBTWbd/s1600/proceso+de+administracion+de+seguridad.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMBCWNCGOQyWQEJxrrC5gm79aDvp3QI7sC9ZUQvZOXtTSV7sAi0XjwHkdlX3uE5_21h3agkAfkd8UJfGQEomHIFy3pQiLl-dtEzog70nZyzjIThlzZbjmeumFCHe_ltptBTWbd/s640/proceso+de+administracion+de+seguridad.jpg" width="601" /></a></div>
<h3>
</h3>
<div style="color: orange;">
<h4>
<b>Nivel 1> Desarrollo de las Políticas de Seguridad de la Información</b></h4>
</div>
Este documento es la base sobre como administrar la
seguridad de la información. Determina las objetivos, estrategias,
Responsabilidades y métodos a largo plazo relacionados con la
seguridad. Adicionalmente incluye las directrices de aplicación, para
ser adoptado oficialmente. Es necesario que todos los empleados de la
organización lo conozcan.<br />
<br />
<b>Contenido: </b><br />
<ul style="text-align: left;">
<li>Objetivos y estrategias para la seguridad de la información ¿Qué queremos lograr? ¿Cómo lograr los objetivos fijados?</li>
<li>Responsabilidades y Organización en la seguridad de la información ¿Quién hace qué? <a href="http://segweb.blogspot.com/2012/02/personal-tacnivo-y-roles-relacionados.html" target="_blank">Definición del personal técnico y roles específicos dentro de la organización</a>, derechos obligaciones y generación de informes.</li>
<li>Estrategia de Análisis de riesgos ¿Como se identifican los riesgos
en general? ¿Cómo los manejamos?, Identificación y evaluación de
riesgos, su aceptación y minimización. </li>
<li><a href="http://segweb.blogspot.com/2012/02/clasificacion-de-datos-en-un-sistema-de.html" target="_blank">Clasificación de datos</a>
( El manejo de información clasificada, confidencialidad, protección de
datos)¿Cómo se clasifica la información? ¿Quién los clasifica?,
Confidencialidad, Privacidad e Integridad.</li>
<li><a href="http://segweb.blogspot.com/2012/04/bcp.html" target="_blank">Clasificación de las aplicaciones y sistemas BCP</a> ¿Cuáles son los
requisitos de disponibilidad? Planeamientos que garanticen la
continuidad del negocio.</li>
<li>Actividades de seguimiento ¿Cómo se puede mantener la seguridad se a largo plazo? </li>
</ul>
</div>
<div style="color: orange; text-align: left;">
<h4>
<b></b><b>Nivel 2></b><b><span class="" id="result_box" lang="es"><span class="hps"> Análisis de Riesgos ISO/IEC 27005</span></span></b></h4>
</div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class="hps"> </span></span></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class="hps"><i>Riesgo</i>: P</span></span><span class="" id="result_box" lang="es"><span class="hps">osibilidad de que</span> <span class="hps">una amenaza</span> <span class="hps">determinada</span> <span class="hps">explote las vulnerabilidades</span> <span class="hps">de</span> <span class="hps">un activo o</span> <span class="hps">grupo de activos para </span><span class="hps">causar daño</span> <span class="hps">a una organización.</span> Es una <span class="hps">medida que combina </span><span class="hps">la probabilidad</span> <span class="hps">de</span> <span class="hps">que ocurra un</span> <span class="hps">suceso y las consecuencias</span><span class=""> que generaría. </span></span></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><i>Amenaza</i>: Causa potencial de un incidente que pueda causar daño al sistema u organización</span></span></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><br /></span></span></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class="">Vulnerabilidad: Debilidad de un activo o grupo de activos que puede ser explotada por una o más amenazas.</span></span></div>
<div style="text-align: left;">
<b><span class="" id="result_box" lang="es"><span class=""><br /></span></span></b></div>
<div style="text-align: left;">
<b><span class="" id="result_box" lang="es"><span class="">Gestión de Riesgos</span></span></b></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class="">El análisis de Riesgos integra la Identificación y Evaluación de Riesgos. </span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4SiZ-CQi1oF6v104J1H3HicHwJbghTgMCTEnDt2lBe5_9QGh1KEMJyd3c3W8AhnMXqEQfkdIYtfDH747ZNOY2Z-HhjCoArBsBE0-Y0wvsRxVJyVAxNtJSWeNgD5M1QbXjqnbH/s1600/AdministracionDeRiesgos.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="211" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4SiZ-CQi1oF6v104J1H3HicHwJbghTgMCTEnDt2lBe5_9QGh1KEMJyd3c3W8AhnMXqEQfkdIYtfDH747ZNOY2Z-HhjCoArBsBE0-Y0wvsRxVJyVAxNtJSWeNgD5M1QbXjqnbH/s640/AdministracionDeRiesgos.jpg" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ9rHUEY3Jyw7FfuG2BvvStkNO7BXKLzD4AbVjSY93h-LE-e_JvaRjry385eYsOP9OjIecCWJ-hfu1wvootb66v9bfSpoBJ4guBm07btkNGbv0c-GiRnopUNnGtVBhwnzcGXWD/s1600/AdministracionDeRiesgos2.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJ9rHUEY3Jyw7FfuG2BvvStkNO7BXKLzD4AbVjSY93h-LE-e_JvaRjry385eYsOP9OjIecCWJ-hfu1wvootb66v9bfSpoBJ4guBm07btkNGbv0c-GiRnopUNnGtVBhwnzcGXWD/s640/AdministracionDeRiesgos2.jpg" width="640" /></a></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><br /></span></span></div>
<div style="text-align: left;">
<b><span class="" id="result_box" lang="es"><span class="">Identificación y Evaluación de Riesgos</span></span></b></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class="">El riesgo se mide en función del valor de los activos, Amenazas, </span></span><span class="" id="result_box" lang="es"><span class="">Vulnerabilidades, probabilidad de que un incidente de seguridad cause daños en el sistema, y </span></span>ademas de la <span class="" id="result_box" lang="es"><span class="">evaluación del impacto y las </span></span>consecuencias que se generan después de dicho incidente. [http://www.enisa.europa.eu/act/rm]</div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAuHHWVtujLiPsoi2tuEN7J4tLlioGPPlpfXbHxY8BOM5rsjlwQ5K4Jf46Aq-K44eOhNTt7PQeC8Ex0J58je8KUPYMjC27ZkbfeGVqkBrtZrZ_hayQ0JlMERdmmqBwmIJJ_Hk5/s1600/AnalisisDeRiesgo.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="466" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAuHHWVtujLiPsoi2tuEN7J4tLlioGPPlpfXbHxY8BOM5rsjlwQ5K4Jf46Aq-K44eOhNTt7PQeC8Ex0J58je8KUPYMjC27ZkbfeGVqkBrtZrZ_hayQ0JlMERdmmqBwmIJJ_Hk5/s640/AnalisisDeRiesgo.jpg" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJ1M1RGC0OlddHp-hq2HA5AT4kR6Sl5MKqJFO-GoVNO9S2sAi605c-lgmtwF0KwDkz4kxX2fa9wkqFfNKjCp9SRFQFq9vIJ4Nu_xTOKBIIFUEci70-w9GoC5oPvSRUZkmxWxmt/s1600/Evaluacion+de+riesgo.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJ1M1RGC0OlddHp-hq2HA5AT4kR6Sl5MKqJFO-GoVNO9S2sAi605c-lgmtwF0KwDkz4kxX2fa9wkqFfNKjCp9SRFQFq9vIJ4Nu_xTOKBIIFUEci70-w9GoC5oPvSRUZkmxWxmt/s640/Evaluacion+de+riesgo.jpg" width="640" /></a></div>
<div style="text-align: left;">
<div style="color: orange;">
<h4>
<br />
</h4>
<h4 style="font-weight: normal;">
<b>
<span style="color: orange;">Nivel 3>Generación del Concepto de Seguridad</span></b></h4>
</div>
<br />
<span class="" id="result_box" lang="es"><span class=""><b>Catalogos con medidas de seguridad</b></span></span></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><br /></span></span></div>
<div style="text-align: left;">
<i><span class="" id="result_box" lang="es"><span class="">Manual de Protección de Línea base (BSI): </span></span></i><span class="" id="result_box" lang="es"><span class="">Gran herramienta de Apoyo con mas de </span></span><span class="" id="result_box" lang="es"><span class="">alrededor de 1200 medidas de seguridad genéricas y para productos específicos. <br />Asignación de medidas como "bloques de construcción"</span></span></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><br /><i>Manual Austriaco de Seguridad de </i></span></span><span class="" id="result_box" lang="es"><span class=""><i>la información</i>: Österreichisches Informationssicherheitshandbuch.</span></span><span class="" id="result_box" lang="es"><span class="">Los </span></span><span class="" id="result_box" lang="es"><span class="">capítulos 5 al 15 poseen aproximadamente 300 medidas, Específico para </span></span><span class="" id="result_box" lang="es"><span class="">Austria y no posee </span></span><span class="" id="result_box" lang="es"><span class="">medidas específicas para </span></span><span class="" id="result_box" lang="es"><span class=""> productos.</span></span></div>
<div style="text-align: left;">
<br />
<span class="" id="result_box" lang="es"><span class="">ISO/IEC 27002 (antes ISO/IEC 17799): Posee 133 medidas genéricas de seguridad, </span></span><span class="" id="result_box" lang="es"><span class="">Es básicamente una lista de verificación que se </span></span><span class="" id="result_box" lang="es"><span class="">centra en los puntos débiles de una organización.</span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrTFzpIQPi4wakfJVpXjXs29Z3eNbTkuTzF0IgQ0BaNJMPO0ufo7i7p5my_k_QZUZRknO1ipn-2jY63l2ZyWFE3Af_To2_WQA7YvdNVvyyP8SKL9A-yWqGOkylLPgiUUuRB2B2/s1600/Medidas+de+Seguridad.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="257" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrTFzpIQPi4wakfJVpXjXs29Z3eNbTkuTzF0IgQ0BaNJMPO0ufo7i7p5my_k_QZUZRknO1ipn-2jY63l2ZyWFE3Af_To2_WQA7YvdNVvyyP8SKL9A-yWqGOkylLPgiUUuRB2B2/s640/Medidas+de+Seguridad.jpg" width="640" /></a></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><br /></span></span></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class="">Para
hablar de aceptación de riesgos es necesario aclarar que ningún sistema
es completamente infalible, así se posean sistemas de gestión de
seguridad que minimicen los daños de un incidente de seguridad. </span></span></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><br /></span></span></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class="hps">El riesgos residual es esa </span></span><span class="" id="result_box" lang="es"><span class="hps">porción inminente de riesgo, que permanece desconocida hasta que algún trastorno en el sistema la hace visible</span></span><span class="" id="result_box" lang="es"><span class="hps">. </span>A
pesar de que los sistemas sean redundantes existen factores de riesgo
fortuitos que se pueden predecir para minimiza los efectos que se
presenten. Estos riesgos deben cuantificarse y evaluarse, así t</span><span class="" id="result_box" lang="es"><span class="">omar la decisión del nivel de aceptación de los riesgos residuales.</span></span></div>
<div style="text-align: left;">
<b><span class="" id="result_box" lang="es"><span class="">Normas de seguridad</span></span></b></div>
<ul style="text-align: left;">
<li><span class="" id="result_box" lang="es"><span class="">Requisitos básicos y las directrices para la seguridad en un sistema de IT</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Detalles de las medidas de seguridad seleccionadas<br />Razones para la selección</span></span><span class="" id="result_box" lang="es"><span class=""> </span></span></li>
</ul>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><b>Plan de Seguridad</b></span></span><br />
<ul style="text-align: left;">
<li><span class="" id="result_box" lang="es"><span class="">Como se aplican las medidas de seguridad elegidas</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Prioridades y planificación de los recursos</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Cronogramas</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Responsabilidades</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Medidas de formación y sensibilización</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Pruebas e inspección (proceso, citas)</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Evaluación del riesgo residual</span></span></li>
</ul>
</div>
<div style="text-align: left;">
</div>
<div style="text-align: left;">
<h4>
<b><span style="color: orange;">Nivel 4> </span><span class="" id="result_box" lang="es" style="color: orange;"><span class="">Implementación del plan de seguridad</span></span></b></h4>
</div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class="">La documentación estar Actualizada, completa, con a</span></span><span class="" id="result_box" lang="es"><span class="">lto nivel de detalle, ademas debe ser confiable y contar con control de versiones e integridad</span></span></div>
<div style="text-align: left;">
<b><span class="" id="result_box" lang="es"><span class="">Concientización y capacitación</span></span></b></div>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""> </span></span><br />
<ul style="text-align: left;">
<li><span class="" id="result_box" lang="es"><span class="">Información
sobre todos las políticas y medidas de seguridad , ademas de las
acciones necesarias a seguir en caso de eventos relacionados con la </span></span><span class="" id="result_box" lang="es"><span class="">seguridad.</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Acontecimientos regulares y publicaciones</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Capacitación, cambios significativos y mejoras</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Herramienta de apoyo y multimedia son útiles para entrenar a los empleados sobre las </span></span><span class="" id="result_box" lang="es"><span class="">funciones específicas que deben seguir para </span></span><span class="" id="result_box" lang="es"><span class="">proteger la información. </span></span></li>
</ul>
</div>
<div style="text-align: left;">
<b><span class="" id="result_box" lang="es"><span class="">Acreditación:</span></span></b> Liberación del sistema TI para operar en un ambiente especial<br />
Objetivo: garantizar la seguridad del sistema de información<br />
<ul>
<li>En un entorno operativo específico</li>
<li>Bajo ciertas condiciones</li>
<li>Para el periodo de tiempo determinado</li>
</ul>
<b>Técnicas:</b><br />
<ul>
<li>Comprobación del Cumplimiento de las medidas de seguridad</li>
<li>Pruebas</li>
<li>Evaluación y Certificación</li>
</ul>
</div>
<div style="text-align: left;">
<div style="text-align: left;">
<h4>
<b><span style="color: orange;">Nivel 5></span></b><span class="" id="result_box" lang="es"><span class=""><b style="color: orange;"> Operación del proceso de seguridad de la Información</b><br />
</span></span></h4>
<div style="text-align: left;">
<span class="" id="result_box" lang="es"><span class=""><b>Gestión de Cambios </b></span></span></div>
<ul style="text-align: left;">
<li><span class="" id="result_box" lang="es"><span class="">Identificación de nuevas necesidades de seguridad como resultado de los cambios que se han generado en el sistema</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Respuestas adecuada a todos los cambios relevantes relacionados con la seguridad</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Documentación escrita de todos los cambios y las razones por las que se tomaron las decisiones</span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Posiblemente se requiere un nuevo análisis de riesgo renovado </span></span><span class="" id="result_box" lang="es"><span class=""><br /></span></span></li>
<li><span class="" id="result_box" lang="es"><span class="">Necesidad de un sistema de gestión de calidad</span></span></li>
</ul>
</div>
</div>
<br />
<div style="color: orange; text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o enlaces de referencia serán bienvenidos.</b></div>
Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-47229733653059194372012-04-04T12:15:00.001-07:002012-04-12T05:39:47.728-07:00Skip List I -Busqueda<style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
-->
</style>Estructura de búsqueda dinámica, aleatoria, simple y eficiente para almacenar listas organizadas de objetos. Para entender como funciona vamos a considerar una simple lista enlazada, que conecta todos los nodos ordenadamente, este es el Nivel 0 (N0). El primer cuandro donde está el nombre del nivel lo llamaremos cabecera.<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinaARBoNrHjDr2B43qISOvkz0DezQvTd8Vb4-vqZI_SSK8bfTvIMIr4thhQebB4FilJK7R6XB-wMp-8qORqiPmn_R2Bjpo9J-AQN-kOjH4eCRGMV0YbCK220EVgvL0v7jqsqcg/s1600/sl0.jpg"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinaARBoNrHjDr2B43qISOvkz0DezQvTd8Vb4-vqZI_SSK8bfTvIMIr4thhQebB4FilJK7R6XB-wMp-8qORqiPmn_R2Bjpo9J-AQN-kOjH4eCRGMV0YbCK220EVgvL0v7jqsqcg/s640/sl0.jpg" /></a><br />
<br />
Ahora agregaremos el nivel 1, que es otra lista enlazada pero los nodos son un subconjunto del nivel 0<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh16kCPBbQ-N2Phsvmh5Cafz2VNZ_vSL7EHKr6m3L8Jb6ziwUQ3SGv1GIFNL8PGhexCb5bpM6Mj0vDNMaKJqNgwtqqWRWIcAN36C9AY07T7s8wqyCNfygnpi2D2_gPt5Uv2NIrl/s1600/SL1.jpg"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh16kCPBbQ-N2Phsvmh5Cafz2VNZ_vSL7EHKr6m3L8Jb6ziwUQ3SGv1GIFNL8PGhexCb5bpM6Mj0vDNMaKJqNgwtqqWRWIcAN36C9AY07T7s8wqyCNfygnpi2D2_gPt5Uv2NIrl/s640/SL1.jpg" /></a><br />
<br />
El siguiente nivel 2 es ahora un subconjunto del nivel 1. Como te darás cuenta, cada vez que subimos de nivel tenemos menos nodos conectados.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAjbjMdYrKVvfWXQ67124eqnE_AHb9N2NE0iaY30DZD7xFu_jGNACb3ho3BARc8qhPp9b5yW2UcfznAwui7MmP0bYtxG8P2tGs0Ba8BcjVbRcTRptRp3RQ2kFzw10u1ENJ5kGc/s1600/sl2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="142" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAjbjMdYrKVvfWXQ67124eqnE_AHb9N2NE0iaY30DZD7xFu_jGNACb3ho3BARc8qhPp9b5yW2UcfznAwui7MmP0bYtxG8P2tGs0Ba8BcjVbRcTRptRp3RQ2kFzw10u1ENJ5kGc/s640/sl2.jpg" width="640" /></a></div>
<br />
Las skip lists o listas de saltos, tienen 3 operaciones básicas, buscar, insertar o eliminar.<br />
<br />
<h3>
<b><span style="color: orange;">Buscar </span></b><span style="font-weight: normal;"> </span></h3>
Para encontrar el nodo 12, empezamos desde la cabecera del nivel mas arriba N2, buscamos el nodo de la lista mas cercano, que tambien es 12, comparamos ¿12 > 12? Falso, por lo que contamos un paso a la derecha, ¿12 = 12? Verdadero. Terminamos y solo necesitamos un paso para encontrarlo<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpUPMUyBoiontP3w9w1MzipYkI8br9gAzqQ0vftqLpZSIYBG1pbN1Y-eKMbZEnC-VQMQnp_ce5fIr7prHOxc9CCLzEyuUO7ZyyPNHD2-y0y3YVvD0fjiRXHXK8o0fXaoto0P2y/s1600/sl3.jpg"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpUPMUyBoiontP3w9w1MzipYkI8br9gAzqQ0vftqLpZSIYBG1pbN1Y-eKMbZEnC-VQMQnp_ce5fIr7prHOxc9CCLzEyuUO7ZyyPNHD2-y0y3YVvD0fjiRXHXK8o0fXaoto0P2y/s640/sl3.jpg" /></a><br />
<br />
Ahora busquemos el nodo7, este requiere mas pasos:<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXo6PwYzEKDp5oDuBCZVPdbUJvzQMFYlwwiF14D4PBBX4gjGH-kgGOCwad8fQNe686sacOHdFzNT7O060oHWru01vHL-M837vA19Gje6SWX_gPmnSWr4cyj7vgvkBzCUOQP9kK/s1600/sl4.jpg"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXo6PwYzEKDp5oDuBCZVPdbUJvzQMFYlwwiF14D4PBBX4gjGH-kgGOCwad8fQNe686sacOHdFzNT7O060oHWru01vHL-M837vA19Gje6SWX_gPmnSWr4cyj7vgvkBzCUOQP9kK/s640/sl4.jpg" /></a> <br />
<br />
<ol>
<li>Iniciamos en la cabecera de N2 (nivel 2). Buscamos el nodo mas cercano a la cabecera que es 12 Comparamos ¿7 > 12? Falso, entonces bajamos a la cabecera N1, dibujamos una flecha y contamos un paso.</li>
<li>En la cabecera N1 Buscamos el nodo mas cercano que es 4, comparamos ¿7 > 4? Verdadero, entonces avanzamos un paso a la derecha ¿7=4? Falso, Continua el algoritmo </li>
<li>Buscamos el siguiente nodo, que es 12, ¿7>12? Falso, permanecemos en 4, bajamos un al nivel N0 y contamos otro paso.</li>
<li>En 4 de N0 Buscamos el siguiente nodo que es 7,comparamos ¿7>7? Falso, ¿7=7? Verdadero, Lo encontramos </li>
</ol>
<br />
Si quisiéramos buscar al nodo 8 que no está en la lista, el procedimiento sería el mismo, pero agregamos un paso de comparación 7<8<12, sin embargo pertenecemos en 7.<br />
<b><br />Otro ejemplo:</b><br />
<br />
Buscar 78 requiere de 7 pasos<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhEc0rCQJU2uI0T0h3YDuOU_uXNJqCNlTYFQbaPWoS8KQRG4kKgQuLBCdUzyvzcECrySCzRzxBgwgb-nW4jot672GtuAT-JgaWKBbNGt908jzbaj4ZNuKY8vLKHLfbbUtSlEx8/s1600/sl4.jpg"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhEc0rCQJU2uI0T0h3YDuOU_uXNJqCNlTYFQbaPWoS8KQRG4kKgQuLBCdUzyvzcECrySCzRzxBgwgb-nW4jot672GtuAT-JgaWKBbNGt908jzbaj4ZNuKY8vLKHLfbbUtSlEx8/s640/sl4.jpg" /></a><br />
<br />
Buscar 12 requiere de 4 pasos<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlrbZTqhWLla4CHUUMB3lrFt_PWldvAMGoVVAmhl5Pv_xM2yUjd2BzLbFonmJmsU3BLJHGqDHNeH_9wTyj1z9PpTn0pInR-U_HEqiSV7PEjFDJB7Qpx9TVmY1UL-VfcQWUwFzs/s1600/sl5.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="196" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlrbZTqhWLla4CHUUMB3lrFt_PWldvAMGoVVAmhl5Pv_xM2yUjd2BzLbFonmJmsU3BLJHGqDHNeH_9wTyj1z9PpTn0pInR-U_HEqiSV7PEjFDJB7Qpx9TVmY1UL-VfcQWUwFzs/s640/sl5.jpg" width="640" /></a><br />
<br />
Buscar 63 requiere de 8 pasos, donde el último paso es de verificación sin avance ya la búsqueda se termina en el nodo 56<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNvgiI7lAufZONgLAsbP8PROW0VFznOy-zMpum92QAb0Cy4IJv19VGqCvVJ5GoF-B9baQrUEzTZ5njYiU6kc5tcW4a0BRv4mM0XO9wf7KYToGbzWArli0Vh8_PeTvi1R6_qzXl/s1600/sl6.jpg"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNvgiI7lAufZONgLAsbP8PROW0VFznOy-zMpum92QAb0Cy4IJv19VGqCvVJ5GoF-B9baQrUEzTZ5njYiU6kc5tcW4a0BRv4mM0XO9wf7KYToGbzWArli0Vh8_PeTvi1R6_qzXl/s640/sl6.jpg" /></a><br />
<br />
<br />
<br />
<br />
<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXo6PwYzEKDp5oDuBCZVPdbUJvzQMFYlwwiF14D4PBBX4gjGH-kgGOCwad8fQNe686sacOHdFzNT7O060oHWru01vHL-M837vA19Gje6SWX_gPmnSWr4cyj7vgvkBzCUOQP9kK/s1600/sl4.jpg"><br /></a>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-66772875898653643602012-03-26T06:31:00.003-07:002012-03-26T06:41:04.771-07:00Heap<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqnyRePlO0ZejSYMkJBqYKdqiehn8GQBiPn6Dtc3HPUjiKVJh_dOv4Wnf3KX3ij6ebHwdkZKHHJ4u7Kfc61Zm_xeCtEC5pwLQlHNRwLgO9b-pzJbG7BRj9QYAMmlhvQg8CE8a4/s1600/monticulo.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="279" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqnyRePlO0ZejSYMkJBqYKdqiehn8GQBiPn6Dtc3HPUjiKVJh_dOv4Wnf3KX3ij6ebHwdkZKHHJ4u7Kfc61Zm_xeCtEC5pwLQlHNRwLgO9b-pzJbG7BRj9QYAMmlhvQg8CE8a4/s320/monticulo.jpg" width="320" /></a><style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
-
</style>Heap se traduce como montículo, pero antes de hablar de estructuras de datos quiero definir que es un montículo, la verdad cuando yo leí la definición por primera vez no fui capaz de entender el concepto, así que lo quiero aclarar por si tu tuviste mi mismo problema: <br />
<br />
Un montículo es una agrupación de cosas una sobre otras, en Colombia decimos de forma muy castiza “montonsito” o un bonche” de cosas. Asi que podemos hablar de montículos de frutas, monedas, arena, nueces, o cualquier cosa que se te ocurra. <br />
<br />
Ahora si entrando en materia un <b>Montículo</b> es una estructura de datos en forma de árbol binario completo, el cual posee un algoritmo que organiza los nodos según su valor, ya sea en orden ascendente o descendente.<br />
<style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
-->
</style>
<br />
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
Recordemos
que los árboles binarios poseen nodos que tienen máximo 2 nodos
hijos, Un árbol binario es completo cuando los nodos de ambas ramas
(izquierda y derecha) están balanceadas y ademas todos sus niveles
están llenos excepto el último nivel, donde todos los nodos están
hacia un mismo lado.</div>
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
<br /></div>
<div class="western">
<b style="color: orange;">Maxheap:</b> La cima contiene el elemento mayor y
todos los hijos son menores que su padre (hijo<= padre), se
observa como los números disminuyen a medida que descendemos en el
montículo </div>
<div class="western">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8wdrRB64Fqaw1f2LHmA84VPMFoPOtOsKp5gtkckgQJYNJVotmtPSr-7t3GNr-sUOV5R6dXYRL9zV74heEGFmytrHIS-GbKAH9k2lrvVh5jtpYMu5FD1wYWe0Wrh8ULloNsu_5/s1600/heapsort1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8wdrRB64Fqaw1f2LHmA84VPMFoPOtOsKp5gtkckgQJYNJVotmtPSr-7t3GNr-sUOV5R6dXYRL9zV74heEGFmytrHIS-GbKAH9k2lrvVh5jtpYMu5FD1wYWe0Wrh8ULloNsu_5/s1600/heapsort1.jpg" /></a></div>
<div class="western">
<br /></div>
<div class="western" lang="es-ES">
<b style="color: orange;">MinHeap:</b> La cima contiene el elemento
menor, todos los padres son menores que sus hijos (padre <=hijo)
se observa como los números aumentan a medida que descendemos en el
montículo</div>
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUGN9hLHdRV4jPeR3J0YXEGr5vSHWAzm3PGUjLOD5-PfxXuIVOn07z-KUXHdd-NJypBAI-2OeuhXi9sFAiBIw_DiCilBi5hVYC1sUttoIkukpvvOxbEIktshRlfErOMrAgBNjN/s1600/heapsort2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUGN9hLHdRV4jPeR3J0YXEGr5vSHWAzm3PGUjLOD5-PfxXuIVOn07z-KUXHdd-NJypBAI-2OeuhXi9sFAiBIw_DiCilBi5hVYC1sUttoIkukpvvOxbEIktshRlfErOMrAgBNjN/s1600/heapsort2.jpg" /></a></div>
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
<br /></div>
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
</div>
<div style="text-align: center;">
<br /></div>
<div style="color: orange; text-align: center;">
Si tienes información adicional sobre este tema, tus comentarios, dudas o enlaces de referencia serán bienvenidos.</div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-68117325920099899112012-03-23T12:36:00.000-07:002013-07-01T02:54:04.558-07:006 ejemplos de Arboles AVLLos arboles AVL son árboles binario con una propiedad adicional: se balancean automáticamente teniendo en cuenta el factor de balance (FB) y el valor de cada nodo que insertamos o eliminamos. En el enlace <a href="http://segweb.blogspot.com/2012/03/arboles.html" target="_blank">Estructura de Datos: Arboles </a>puedes conocer mas sobre la terminología que usamos en este artículo.<br />
<br />
El factor de balance (FB) de un nodo es la diferencia de alturas entre la rama izquierda menos la derecha, para que el árbol esté balanceado este valor solo pueden ser -1, 0 ó 1. <br />
<br />
<div style="text-align: center;">
FB= altura(arbol.izq)-altura(arbol.der)<br />
<br />
<div style="text-align: justify;">
Para lograr el balance adecuado, debemos ubicar al nodo hijo en la posición correcta antes de hacer cualquier rotación. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Cuando la rotación se hace con nodos externos hablamos de rotación sencilla, mientras que si se trata de nodos internos o que requieran un cambio de dirección del nodo, se refiere a una rotación doble.</div>
</div>
<br />
<b style="color: orange;">Ejemplos de Auto-balanceo</b><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEismS8D26POTkB2hQomi0yOCUH4rXwAS4Hm6HnnFmzhLnvmL9TrBlwjE8v8QkyDOHOYMQd1kkx9aeFcLdQMM79c7WiioWGQdQ02Om3ck14iJRINeWRJ0yUVFfCaU2-F4RCr70Jk/s1600/avl+rotacion.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="133" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEismS8D26POTkB2hQomi0yOCUH4rXwAS4Hm6HnnFmzhLnvmL9TrBlwjE8v8QkyDOHOYMQd1kkx9aeFcLdQMM79c7WiioWGQdQ02Om3ck14iJRINeWRJ0yUVFfCaU2-F4RCr70Jk/s400/avl+rotacion.jpeg" width="400" /></a></div>
<br />
<b>1.</b> En este ejemplo iniciamos con un árbol balanceado, pero en el paso 2 vamos a insertar el nodo 16 en el nodo hoja número 17, esta inserción des-balancea el árbol especialmente al nodo 13, por lo tanto con este nodo es que haremos una rotación doble izquierda-derecha.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFf3OK6C6Gfp0t5ZEPzB-GRKFqG-RdS3lmqqCvbCvbgdbWRghv23Ryx2lPpuZPBtmqR8b3ol3-yzA6-FFhpeDvmoQgIr_-oPJdq5gQWTAGMaflXtKGvWqP3bliAB0RSfP5xzJj/s1600/avl_balance1.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="140" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFf3OK6C6Gfp0t5ZEPzB-GRKFqG-RdS3lmqqCvbCvbgdbWRghv23Ryx2lPpuZPBtmqR8b3ol3-yzA6-FFhpeDvmoQgIr_-oPJdq5gQWTAGMaflXtKGvWqP3bliAB0RSfP5xzJj/s640/avl_balance1.jpg" width="640" /></a><b> </b></div>
<div class="separator" style="clear: both; text-align: left;">
<b>2.</b> Ahora queremos insertar 2 en el nodo hoja 3, esto des-balancea el árbol en el nodo interno 4, por lo tanto hacemos una rotación sencilla a la derecha y finalmente logramos balancear el árbol
</div>
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtC3OdSZz0OkS-lrbFthdE7LPpNax5mP_auYt_vhEbdD9-vD4i_fjg2Ta1tnquxTFhSnAKBNfmCXdcqblSjRbC7luqvgxDZkeVLuUKTYS3NaKSI55WZASVlpHubRTfG7lthwKx/s1600/avl_balance2.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="190" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtC3OdSZz0OkS-lrbFthdE7LPpNax5mP_auYt_vhEbdD9-vD4i_fjg2Ta1tnquxTFhSnAKBNfmCXdcqblSjRbC7luqvgxDZkeVLuUKTYS3NaKSI55WZASVlpHubRTfG7lthwKx/s640/avl_balance2.jpg" width="640" /></a><b> </b><br />
<div class="separator" style="clear: both; text-align: left;">
<b>3.</b>Insertamos 3 en el nodo hoja 2, el nodo de des-balance es 4, así que hacemos una rotación doble derecha-izquierda
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEge6Xqg9RifF71C4S3Tn-9BaW6jEGyDfBk8l4aYci46msTrAFgo0r6eYcX91jAdXGLgJ8eO7uXxntcxMh-Y_uesDELt4Om6Rb5FKodQax-w-tirsyIyf0B9k2kbH-Rst3yT0dxw/s1600/avl_balance4.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"></a></div>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEho5qAP0OnYpMEPeEn4vrVrk3ss68T_fUSoy_DWgsgJr6JD9_xTbbKfrdXuY1bqBk38My24YK8bFvrR1qEFirjCyIzoBAaxpHT2_KGqBmlLiQHQYKAXhPTQ5nlFjbYorEl_99g-/s1600/avl_balance3.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="184" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEho5qAP0OnYpMEPeEn4vrVrk3ss68T_fUSoy_DWgsgJr6JD9_xTbbKfrdXuY1bqBk38My24YK8bFvrR1qEFirjCyIzoBAaxpHT2_KGqBmlLiQHQYKAXhPTQ5nlFjbYorEl_99g-/s640/avl_balance3.jpg" width="640" /></a><br />
<div class="separator" style="clear: both; text-align: left;">
<b>4.</b> Insertamos 7 en el nodo hoja 8, el nodo de des-balance es 6, así que hacemos una rotación doble derecha (7-8)-izquierda.</div>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEge6Xqg9RifF71C4S3Tn-9BaW6jEGyDfBk8l4aYci46msTrAFgo0r6eYcX91jAdXGLgJ8eO7uXxntcxMh-Y_uesDELt4Om6Rb5FKodQax-w-tirsyIyf0B9k2kbH-Rst3yT0dxw/s1600/avl_balance4.jpg" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="184" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEge6Xqg9RifF71C4S3Tn-9BaW6jEGyDfBk8l4aYci46msTrAFgo0r6eYcX91jAdXGLgJ8eO7uXxntcxMh-Y_uesDELt4Om6Rb5FKodQax-w-tirsyIyf0B9k2kbH-Rst3yT0dxw/s640/avl_balance4.jpg" width="640" /></a>
<br />
<div class="separator" style="clear: both; text-align: left;">
<b>5.</b> Insertamos 9 en el nodo hoja 8, el des.balance se genera en el nodo interno 5, desplazamos el nodo 7 hacia arriba, esta es una rotación simple a la izquierda (solo interactuan los nodos 4, 5 y 7 en la rotación) , el nodo hoja 6 ahora depende de 5.
</div>
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOTEP5d06Yk1PWpw_leWFKMC8sv4RmDgvbUfYr84m1p4L_rZgrd4xe6lsbb1SaB1F42LlTP3t_j2NVWr3pEvqm83UbGrbYxn2mi91cD5LHFxSNwrm2NuDnm2k6AooghmAo9D5O/s1600/avl_balance5.jpg" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="184" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOTEP5d06Yk1PWpw_leWFKMC8sv4RmDgvbUfYr84m1p4L_rZgrd4xe6lsbb1SaB1F42LlTP3t_j2NVWr3pEvqm83UbGrbYxn2mi91cD5LHFxSNwrm2NuDnm2k6AooghmAo9D5O/s640/avl_balance5.jpg" width="640" /></a><br />
<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOTEP5d06Yk1PWpw_leWFKMC8sv4RmDgvbUfYr84m1p4L_rZgrd4xe6lsbb1SaB1F42LlTP3t_j2NVWr3pEvqm83UbGrbYxn2mi91cD5LHFxSNwrm2NuDnm2k6AooghmAo9D5O/s1600/avl_balance5.jpg" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a>
<br />
<div class="separator" style="clear: both; text-align: left;">
<b>6.</b> Este era el punto del examen :) así que tiene truco, Esta es una rotación doble izquierda-derecha usando los nodos 6 en la raiz, 9 y 7.
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZRY89VibcCrsAC-b4_x1yFdyjkJGOB_M29x5b_8pFDZRn3bYYQLQVeF1DSCAhjcD7jbEVTS8xzQ6S4-nB6HInFH4WAjY1OQiigBYHyi6m3ZJhb2nF7PrvD0iEzZ_hwnQ5GuyD/s1600/avl_balance6.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="202" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZRY89VibcCrsAC-b4_x1yFdyjkJGOB_M29x5b_8pFDZRn3bYYQLQVeF1DSCAhjcD7jbEVTS8xzQ6S4-nB6HInFH4WAjY1OQiigBYHyi6m3ZJhb2nF7PrvD0iEzZ_hwnQ5GuyD/s640/avl_balance6.jpg" width="640" /></a></div>
<br />
<br />
<br />
<br />
Si tienes información adicional sobre este tema, tus comentarios, dudas o enlaces de referencia serán bienvenidos, .Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com3tag:blogger.com,1999:blog-37189251.post-77542737369549913722012-03-21T14:37:00.002-07:002012-03-21T14:42:56.361-07:00Formas de recorrer un arbol<b><span style="color: orange;">Recorrido</span></b>:Es la
forma de visitar todos los nodos de un<a href="http://segweb.blogspot.com/2012/03/arboles.html" target="_blank"> árbol</a> siguiendo un orden
específico<br />
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
</div>
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
<b style="color: orange;">Pre-orden:</b>
Procesa primero el nodo y después cada hijo es procesado
recursivamente de izquierda a derecha</div>
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHcM9h_R_bkApvcg0ucGtNa9l0N_PPRNG2CV_9yj3IlCrwMxBPE_Z3fuNSuM7vueeDdBPaHcvlV9vtvee38e4F1vKmJspYbH_aW0xrBKoHr8VSCgr5gP4VBEz0FfD1-NQojQ8R/s1600/arbol-preorden.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="218" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHcM9h_R_bkApvcg0ucGtNa9l0N_PPRNG2CV_9yj3IlCrwMxBPE_Z3fuNSuM7vueeDdBPaHcvlV9vtvee38e4F1vKmJspYbH_aW0xrBKoHr8VSCgr5gP4VBEz0FfD1-NQojQ8R/s640/arbol-preorden.jpeg" width="640" /></a></div>
<br />
<style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
-->
</style>
<br />
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
<b><span style="color: orange;">Pos-orden:</span></b>
Procesa primero cada nodo hijo recursivamente y después procesa al
nodo</div>
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgromrPce7M2Pc_nEZKkOo8FGxzghieEtfUY06pv0z1I1H3NSl_Ial2H4la7U78H5QGVEX1Kvov5Tsf8_7wIkgBxiZBtvhmv8qzk1_2UaEDsdZWrcAUa1S2FSLsbfYqZpJL5iUn/s1600/arbol-posorden.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="220" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgromrPce7M2Pc_nEZKkOo8FGxzghieEtfUY06pv0z1I1H3NSl_Ial2H4la7U78H5QGVEX1Kvov5Tsf8_7wIkgBxiZBtvhmv8qzk1_2UaEDsdZWrcAUa1S2FSLsbfYqZpJL5iUn/s640/arbol-posorden.jpeg" width="640" /></a></div>
<br />
Siguiente: Árboles Binarios<br />
<br />
<div style="color: orange; text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b></div>
<br />Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-40146325839043362712012-03-20T10:02:00.002-07:002012-03-21T14:41:29.216-07:00Estructura de Datos: Arboles<style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
-->
</style>
<br />
<div class="western" style="font-style: normal; text-decoration: none;">
<span style="text-decoration: none;">Un
árbol es una estructura de datos no lineal y jerárquicamente
organizada, cuyos elementos son nodos conectados por bordes que no
forman ciclos. Todo árbol tiene un nodo raíz de donde descienden
mas nodos, existe solo un camino para acceder a cada nodo desde la raíz.</span></div>
<div class="western" style="font-style: normal; text-decoration: none;">
<span style="text-decoration: none;">Algunos
ejemplos de arboles son: la tabla de contenido de un libro o el
sistema de archivos de cualquier sistema operativo ya sea Unix, DOS o
Windows.</span></div>
<div class="western" style="font-style: normal; text-decoration: none;">
<span style="text-decoration: none;"> </span> </div>
<div class="western" style="font-style: normal; text-decoration: none;">
<style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
-->
</style>
</div>
<div class="western" style="color: orange; font-style: normal; text-decoration: none;">
<b><span style="text-decoration: none;">Datos importantes y terminología</span></b>
</div>
<ul>
<li><span style="text-decoration: none;">Un árbol con n nodos tiene n-1 bordes o conectores</span></li>
<li><span style="text-decoration: none;">La
raíz es un nodo sin padres o ancestros</span></li>
<li><span style="text-decoration: none;">las
hojas son los nodos mas externos sin hijos o descendientes</span></li>
<li><span style="text-decoration: none;">hermanos
son nodos con el mismo padre </span></li>
</ul>
<div class="western" style="font-style: normal; text-decoration: none;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZfJrR5_WZgsRLm-SDYqAsmonXcVIVRpcJQpkEEoguM55oO7qS8PWOUNcovdYeqn5yPTEaFlzM_laElkHZj0enbGCDJ9Y2bh7g5rbOC8IlxtE1f_e3L_mbzerOJTHRjbX5Etbr/s1600/arbol.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="174" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZfJrR5_WZgsRLm-SDYqAsmonXcVIVRpcJQpkEEoguM55oO7qS8PWOUNcovdYeqn5yPTEaFlzM_laElkHZj0enbGCDJ9Y2bh7g5rbOC8IlxtE1f_e3L_mbzerOJTHRjbX5Etbr/s640/arbol.jpg" width="640" /></a></div>
<b><br /> Longitud de un camino</b>: el el número de bordes que se pueden seguir desde un nodo hasta alcanzar otro nodo <br />
<b><br /> Profundidad</b>: Número de bordes desde la raíz a el nodo, la profundidad del nodo raíz siempre es 0 <br />
<br />
<b>Altura</b>: Longitud del camino mas largo desde la raíz al a la hoja mas profunda que se pueda alcanzar. <br />
<br />
<b>Tamaño del nodo</b>: Es la suma de todos los nodos descendientes mas uno, que equivale al nodo que estamos midiendo, el tamaño de la raíz determina el tamaño del árbol.<br />
<div class="western" style="font-style: normal; text-decoration: none;">
<br /></div>
<div class="western" style="font-style: normal; text-decoration: none;">
<b style="color: orange;">Estructuras para implementar árboles </b></div>
<div class="western" style="font-style: normal; text-decoration: none;">
<br /></div>
<div class="western" style="font-style: normal; text-decoration: none;">
Con una lista enlazada</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4_EIKkYvj5BM5X8U-Ah9sOsmE9dNHe5nYvqBK8mKT_XKDHfElmlAWHgb4IcNBCVNBRJhme5mRHuGFbKh0tcadXjgAkpyH8ArioL7ZnHeVFprL_0v-MeOHUSAJBA2-DNCDQZkf/s1600/arbol-linked-list.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="128" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4_EIKkYvj5BM5X8U-Ah9sOsmE9dNHe5nYvqBK8mKT_XKDHfElmlAWHgb4IcNBCVNBRJhme5mRHuGFbKh0tcadXjgAkpyH8ArioL7ZnHeVFprL_0v-MeOHUSAJBA2-DNCDQZkf/s320/arbol-linked-list.jpg" width="320" /></a></div>
<div class="western" style="font-style: normal; text-decoration: none;">
<br />
Con una matriz si sabemos el número máximo de hijos que poseen los nodos</div>
<div class="western" style="font-style: normal; text-decoration: none;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIplsAldvQReDMRV8EYi2PujdA7ld6khi12s9mTmxWr-wQenAt1wRTZiTtdNrHcSaRAL1sWJBQKTPl1dSTU_3szMlMyaNPEQvJAs8kH2CQeOynoDxE6qGeDMQE_ROnyoxXJeOo/s1600/arbol_array.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="217" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIplsAldvQReDMRV8EYi2PujdA7ld6khi12s9mTmxWr-wQenAt1wRTZiTtdNrHcSaRAL1sWJBQKTPl1dSTU_3szMlMyaNPEQvJAs8kH2CQeOynoDxE6qGeDMQE_ROnyoxXJeOo/s320/arbol_array.jpg" width="320" /></a></div>
<br />
Siguiente:<a href="http://segweb.blogspot.com/2012/03/reccorrido.html" target="_blank">Formas de recorrer un árbol</a><br />
<br />
<br />
<div style="color: orange; text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o enlaces de referencia serán bienvenidos.</b></div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-87614405317809755042012-03-15T09:32:00.001-07:002013-06-24T01:56:43.891-07:0013 Ejercicios Resueltos paso a paso sobre recursividad usando Teorema Maestro<style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
</style>
-->
<br />
El teorema maestro proporciona una solución paso a paso para estudiar el comportamiento del tiempo de ejecución de algoritmos que cumplen las siguiente relación de recurrencia:<br />
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZw6A5wnNU4Q1ubpk84tcfHz-Q5VnTXrcpOjC8Jna1BQh_rNbOQyXeDT6ezb8jyhIV1NkBsmJphwCSdjkaHwhb_lIZQ0ZMrqBhOtJ9i1y1ncSSSmPM1zP3Tn0t9xrDPNE46y7L/s1600/ec_teoremaMaestro.png"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZw6A5wnNU4Q1ubpk84tcfHz-Q5VnTXrcpOjC8Jna1BQh_rNbOQyXeDT6ezb8jyhIV1NkBsmJphwCSdjkaHwhb_lIZQ0ZMrqBhOtJ9i1y1ncSSSmPM1zP3Tn0t9xrDPNE46y7L/s1600/ec_teoremaMaestro.png" /></a></div>
<br />
donde T(n) es el tiempo de ejecución, a ≥ 1 y b >1 son constantes ademas <br />
<ul>
<li>n es el tamaño de todo el problema. </li>
<li>a es el número de partes en que se ha dividido el problema original para estudiarlo recursivamente. </li>
<li>(n/b) tamaño de cada parte en que se ha dividido el problema, asumiendo el mismo tamaño para cada parte. </li>
<li>f(n) es el costo de realizar las llamadas recursivas, incluye el trabajo de dividir el problema y volver a unir las subtotales para obtener la solución total. F(n) es un función independiente de T(n) y no negativa.</li>
</ul>
La relación de recurrencia se analiza <a href="http://segweb.blogspot.com/2012/03/recurrencia.html" target="_blank">expandiendo iterativamente</a> el tiempo de ejecución y sustituyéndose en la misma ecuación, para evitar esta expansión se puede determinar un límite asintótico usando la notación de Landau (O grande) usada comúnmente en el análisis algoritmos Divide y vencerás. <br />
Es posible determinar tres tipos de casos asintóticos
<style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
</style>
--><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;"> d
= log<sub>b</sub>(a)</span></span></span></span>:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0oQs71SLHQm8J5GO6H0PhOfBUmm6lBIQX6HixRKVdC-KG8Sj2pjgEGYjh9n8gqVbK75xw8mTxjCOnbTeJqeQwjObhGKBo8Zdb26Qxn2PoGrgNe0j1XWG0djedwLXP8Vin6eSs/s1600/Teorema_Maestro.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="136" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0oQs71SLHQm8J5GO6H0PhOfBUmm6lBIQX6HixRKVdC-KG8Sj2pjgEGYjh9n8gqVbK75xw8mTxjCOnbTeJqeQwjObhGKBo8Zdb26Qxn2PoGrgNe0j1XWG0djedwLXP8Vin6eSs/s640/Teorema_Maestro.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<span style="font-size: large;"><b><span style="color: red;">Ejemplos Resueltos</span></b></span><br />
<div style="color: black;">
<span style="font-size: large;"><u><b>Caso 1</b></u></span></div>
<div class="western" lang="es-ES" style="font-weight: normal; margin-bottom: 0in;">
<span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;"><span style="color: #ff6309;">T(n)=
Θ(n</span><span style="color: #ff6309;"><sup>log</sup></span><span style="color: #ff6309;"><sub>b</sub></span><span style="color: #ff6309;"><sup>(a)</sup></span><span style="color: #ff6309;">)</span>
Si existe alguna constante ε > 0 tal que f(n) ∈ O(n<sup>log</sup><sub>b</sub><sup>(a)
–</sup>ᵋ) </span></span></span></span></div>
<div class="western" lang="es-ES" style="font-weight: normal; margin-bottom: 0in;">
<br /></div>
<div class="western" lang="es-ES" style="font-weight: normal; margin-bottom: 0in;">
<span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;"><span style="color: #ff6309;"> </span></span></span></span></span>
</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfp-11xiYFufbAJ2d9dZ7zteSzMi-uATX5ZdDUz-7juCHLafTdQ4xF8wvnMx6_zZcSNex5zCKle-0VziKIKyWKlMoCmAOCMYhG1wfDuUrmorJ8rBIenvW9F8tN0BB3oW2mwGtK/s1600/c1_1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="386" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfp-11xiYFufbAJ2d9dZ7zteSzMi-uATX5ZdDUz-7juCHLafTdQ4xF8wvnMx6_zZcSNex5zCKle-0VziKIKyWKlMoCmAOCMYhG1wfDuUrmorJ8rBIenvW9F8tN0BB3oW2mwGtK/s640/c1_1.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUl6i6KI_FOBmqbsXU83ClZrCmiIkyJP8tp3CHWwV15ckm-Qfsql4A6CKAPmb50-NeevXj7-Uvm7S-LEtS0n7hqUHgKAxM5DrARvwRNnHO-sqFreQOlw0nobWoc0GGMWidFj5s/s1600/c1_2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="402" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUl6i6KI_FOBmqbsXU83ClZrCmiIkyJP8tp3CHWwV15ckm-Qfsql4A6CKAPmb50-NeevXj7-Uvm7S-LEtS0n7hqUHgKAxM5DrARvwRNnHO-sqFreQOlw0nobWoc0GGMWidFj5s/s640/c1_2.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVfHbcBMeZJDD2RcyRue58W2eAXaE9C8h8wgdcbcPflMwDbR04SVL1dTXHVf_evPtz6KapmNswowRCDJ5Xsy5_1GbHP1F0nT2ipJsCBmIIE487aynI1ODrIkK5_rNv1FzKrofl/s1600/c1_3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="292" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVfHbcBMeZJDD2RcyRue58W2eAXaE9C8h8wgdcbcPflMwDbR04SVL1dTXHVf_evPtz6KapmNswowRCDJ5Xsy5_1GbHP1F0nT2ipJsCBmIIE487aynI1ODrIkK5_rNv1FzKrofl/s640/c1_3.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_VET3_-tbi7J2_i0owuyTU1epaOKCqLy6AHcSI19c2PpJEB2MZssPqbb4pH1gZsB3f1gQ7V3IdMuSSCoSsOgymLoqf3oy4Gmaay62yyuHsT6cex9D64-e59TnCGliX8E3PTIo/s1600/c1_4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_VET3_-tbi7J2_i0owuyTU1epaOKCqLy6AHcSI19c2PpJEB2MZssPqbb4pH1gZsB3f1gQ7V3IdMuSSCoSsOgymLoqf3oy4Gmaay62yyuHsT6cex9D64-e59TnCGliX8E3PTIo/s640/c1_4.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhGjyTb6Ro3nyRUAyCNF1swpU_ECLMvqctIZTgjqwsnhvFx7E-Kb6vzTRjIuCyy6LqKaIJXdjYzuKZr8eZNLnX7WjOgXNw-Ogsmdhvq_NI7jYlOTVG4wkqvbc3uV2WAlrL474g/s1600/c1_5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="262" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhGjyTb6Ro3nyRUAyCNF1swpU_ECLMvqctIZTgjqwsnhvFx7E-Kb6vzTRjIuCyy6LqKaIJXdjYzuKZr8eZNLnX7WjOgXNw-Ogsmdhvq_NI7jYlOTVG4wkqvbc3uV2WAlrL474g/s640/c1_5.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEig23LiAcPk5C4agbwtyRz1He4xteNF2U9C_GI3_uiYIqBoiG6zwB2P6wUcz4R8RTbtIuBgfKGnB1wWIsOS-ZEPiEBX-DMQoHjR9Uvl_KVJsS5YAmzlgW6-1wrpr9IlSo8TJcgh/s1600/c1_6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="316" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEig23LiAcPk5C4agbwtyRz1He4xteNF2U9C_GI3_uiYIqBoiG6zwB2P6wUcz4R8RTbtIuBgfKGnB1wWIsOS-ZEPiEBX-DMQoHjR9Uvl_KVJsS5YAmzlgW6-1wrpr9IlSo8TJcgh/s640/c1_6.png" width="640" /></a></div>
<span style="font-size: large;"><u><b>Caso 2</b></u></span><br />
<style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
</style>
-->
<br />
<div class="western" style="margin-bottom: 0in;">
<span style="color: #ff6309;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">
<span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;">T(n)=
Θ(</span></span></span></span></span></span><span style="color: #ff6309;"><sup><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">n
</span></span></span></span></span></sup></span><span style="color: #ff6309;"><sup><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">log</span></span></span></span></span></sup></span><span style="color: #ff6309;"><sub><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">b</span></span></span></span></span></sub></span><span style="color: #ff6309;"><sup><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">(a)
</span></span></span></span></span></sup></span><span style="color: #ff6309;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">log</span></span></span></span></span></span><span style="color: #ff6309;"><sup><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">k+1</span></span></span></span></span></sup></span><span style="color: #ff6309;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">(n)</span></span></span></span></span></span><span style="color: #ff6309;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">)
</span></span></span></span></span></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">Si
f(n) </span></span></span></span></span></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;"><span style="text-decoration: none;">∈</span></span></span></span></span></span></span></span></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">
</span></span></span></span></span></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">Θ</span></span></span></span></span></span></span></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">(n
</span></span></span></span></span></span><span style="color: black;"><sup><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">log</span></span></span></span></span></sup></span><span style="color: black;"><sub><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">b</span></span></span></span></span></sub></span><span style="color: black;"><sup><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">(a)
</span></span></span></span></span></sup></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">log</span></span></span></span></span></span><span style="color: black;"><sup><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">k</span></span></span></span></span></sup></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">(n)</span></span></span></span></span></span><span style="color: black;"><sup><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">
</span></span></span></span></span></sup></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">)
para cualquier constante k </span></span></span></span></span></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;"><span style="text-decoration: none;">≥</span></span></span></span></span></span></span></span></span>
<span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-size: small;"><span lang="es-ES"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">0</span></span></span></span></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDE4VZTq_u6ZCVI5C2Y9iHEcuujJf4N7Pir_WgLCqF-aylJCRu4IG9CIG4J-w1WTUtIr3jJenktUshu5aC7d3E5ClojJgEr9hYUSmjERPtUkHFHHiXNXjnQ6aOibGc4v595fZa/s1600/c2_1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="226" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDE4VZTq_u6ZCVI5C2Y9iHEcuujJf4N7Pir_WgLCqF-aylJCRu4IG9CIG4J-w1WTUtIr3jJenktUshu5aC7d3E5ClojJgEr9hYUSmjERPtUkHFHHiXNXjnQ6aOibGc4v595fZa/s640/c2_1.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0ZjEOPR0liqVUo_609dFhDqyc8uwWNr2z_P-ireYC4cIHPeki1oltvVje9yoItKkFEri7LNCh5yo5DUcE-6YWknLGlgS6bs8gIvGnqEutWTyh8bMKSIkD-2k6Km4WoBb2wAy3/s1600/c2_2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="220" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0ZjEOPR0liqVUo_609dFhDqyc8uwWNr2z_P-ireYC4cIHPeki1oltvVje9yoItKkFEri7LNCh5yo5DUcE-6YWknLGlgS6bs8gIvGnqEutWTyh8bMKSIkD-2k6Km4WoBb2wAy3/s640/c2_2.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHBcZoW6c0z4LUpxOy_E2EEn0TvfLYjxol3gAuFX8HIn3WfZ0P3hzCEbD_ISPJMXGkkoTaYQlSr3EAVDFuBRCUzs4C0OPylVa1w2X7dDRp7FwsZyQXqvtQikmZ6vddqZ395dMt/s1600/c2_3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="216" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHBcZoW6c0z4LUpxOy_E2EEn0TvfLYjxol3gAuFX8HIn3WfZ0P3hzCEbD_ISPJMXGkkoTaYQlSr3EAVDFuBRCUzs4C0OPylVa1w2X7dDRp7FwsZyQXqvtQikmZ6vddqZ395dMt/s640/c2_3.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTbVARlLhEoEwhX8qFxthdzfzi1taCQu_FD5P0kyBkWxkr01zISgw6xPoX5cvcc3xWtD2pk-oisV-3Z-9sN_PoHDTpkhSUIDMob9FX5Sx9nH5_KMYTdtltPUf1Bq9KI13XnzBP/s1600/c2_4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="224" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTbVARlLhEoEwhX8qFxthdzfzi1taCQu_FD5P0kyBkWxkr01zISgw6xPoX5cvcc3xWtD2pk-oisV-3Z-9sN_PoHDTpkhSUIDMob9FX5Sx9nH5_KMYTdtltPUf1Bq9KI13XnzBP/s640/c2_4.png" width="640" /></a></div>
<span style="font-size: large;"></span><br />
<span style="font-size: large;"><u><b>Caso 3</b></u></span><br />
<style type="text/css">
<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
</style>
-->
<br />
<div class="western" lang="es-ES" style="margin-bottom: 0in;">
<span style="font-size: small;"><span style="color: #ff6309;"><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">T(n)=
</span></span></span></span></span></span><span style="color: #ff6309;"><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;"><span style="text-decoration: none;">Θ</span></span></span></span></span></span></span><span style="color: #ff6309;"><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">(f(n))
</span></span></span></span></span></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">SI
existe ε> 0 tal que f(n) </span></span></span></span></span></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;"><span style="text-decoration: none;">∈</span></span></span></span></span></span></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">
Ω (n</span></span></span></span></span></span><span style="color: black;"><sup><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">log</span></span></span></span></span></sup></span><span style="color: black;"><sub><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">
b</span></span></span></span></span></sub></span><span style="color: black;"><sup><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">(a)
+ ε</span></span></span></span></span></sup></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">)
la segunda condición es que exista alguna constante c < 1 tal
que para todo n≥ 1</span></span></span></span></span></span><span style="color: black;"><sub><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;"></span></span></span></span></span></sub></span><span style="color: black;"><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">
se cumple que: </span></span></span></span></span></span><span style="color: #0047ff;"><span style="font-family: Ubuntu;"><span style="font-style: normal;"><span style="text-decoration: none;"><span style="font-weight: normal;"><span style="background-attachment: scroll; background-color: transparent; background-image: none; background-repeat: repeat repeat;">af(n/b)≤
cf(n)</span></span></span></span></span></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmKHnTbNM3vLlM7vimj60zFmUlfGMpZuHBHeB1BNEBsOAg0YwzqgQIVJhHmOjLK-_HHVMw9Dx8ta9A_jMcGBN9s1yARVQQe6ihCmTB6extdMWY8VZAEAuXOTyIy_QBb1jhTwRU/s1600/c3_1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="270" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmKHnTbNM3vLlM7vimj60zFmUlfGMpZuHBHeB1BNEBsOAg0YwzqgQIVJhHmOjLK-_HHVMw9Dx8ta9A_jMcGBN9s1yARVQQe6ihCmTB6extdMWY8VZAEAuXOTyIy_QBb1jhTwRU/s640/c3_1.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSAgIyORl6G1WoO7VylTDiiTzmeXIBwUh_hdYv-QMwiwxwjd45tLgoJ4j27shqz9Qo4WhaHWOFechXii65AZi1nn5U3H3vuFd1DPYmx_HtZ31ZypKvzHrzjO3XFUqUiLq-69GC/s1600/c3_2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSAgIyORl6G1WoO7VylTDiiTzmeXIBwUh_hdYv-QMwiwxwjd45tLgoJ4j27shqz9Qo4WhaHWOFechXii65AZi1nn5U3H3vuFd1DPYmx_HtZ31ZypKvzHrzjO3XFUqUiLq-69GC/s640/c3_2.png" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRVB9n69whl1yifNlD0Kc-mjwt7k2dY6DavBlC38xAQqBmvtJ7bsKJMpbYHrd8KLdmf5-rek5iOpZqdKnBa-QFE6FApWljjx_tOwbHkcIo1PU7oxEwspQrGJqt5-5Qmd9dMYar/s1600/c3_3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="264" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRVB9n69whl1yifNlD0Kc-mjwt7k2dY6DavBlC38xAQqBmvtJ7bsKJMpbYHrd8KLdmf5-rek5iOpZqdKnBa-QFE6FApWljjx_tOwbHkcIo1PU7oxEwspQrGJqt5-5Qmd9dMYar/s640/c3_3.png" width="640" /></a></div>
También te interesa: Ejemplos resueltos sobre<a href="http://segweb.blogspot.com/2012/03/recurrencia.html" target="_blank"> analisis iterativo</a> de la complejidad de algoritmos recursivos
<br />
<br />
<div style="text-align: center;">
<b><span style="color: orange;">Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</span></b></div>
Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com3tag:blogger.com,1999:blog-37189251.post-23871596863053960902012-03-13T03:24:00.000-07:002012-03-15T07:39:06.804-07:00Enrutamiento: Transportando datos de aquí para allá<div style="text-align: justify;">
Enrutar es la acción de encaminar datos entre dos hosts, partiendo desde el host inicial hasta alcanzar un host de destino e independientemente de la configuración física o de la topología red. Un mejor nombre para esta capa podría ser “Capa IP” porque aquí es donde se usan las direcciones IP y se produce realmente el enrutamiento. <br />
<br />
Recordemos que <a href="http://segweb.blogspot.com/p/conceptos-basicos-de-tcpip-protocolo-de.html">TCP/IP</a> es un protocolo que trabaja en cuatro capas: aplicación, transporte, red y enlace. Cuando hablamos de enrutamiento debemos referirnos exclusivamente a la capa de red, debido a que el protocolo IP no tiene relevancia en la conexión física que se establece en la capa de enlace.<br />
<br />
Cuando hablamos de <a href="http://segweb.blogspot.com/2012/02/direcciones-fisicas-y-logicas.html">Direcciones físicas y lógicas</a> aprendimos como dirigir el tráfico a un host que reside en una red local, por medio de ARP (Address Resolution Protocol). Los hosts locales comparten el mismo identificador de red y la máscara de subred.<br />
<br />
ARP se utiliza para difundir una petición a todos los hosts de la red local preguntando por un host específico, el cual responde con una dirección MAC que coincide con de dirección IP del destino deseado. Entonces, ¿cómo dirigir el tráfico a otras redes ya que ARP se emite únicamente en la red local? Ahí es donde entra en juego de enrutamiento.<br />
<br />
Cada host posee una tabla de enrutamiento con un router por defecto como punto de intercambio de datos con otras redes. Si queremos enviar datos hacia un host especifico, el host de envío busca primero al host de destino en la red local. cuando este no lo encuentra localmente, se transmite el tráfico de datos al router por defecto alojado en la tabla de enrutamiento del host de envío.</div>
<div style="text-align: justify;">
<br />
El router se encarga de dirigir el tráfico a un tramo más cercano a su destino. Este salto puede ser a otro router al host de destino. En el caso de que el host de destino resida en una red conectada directamente a la interfaz del router.<br />
<br />
¿Cómo los routers pueden direccionar correctamente el tráfico y cómo reciben información actualizada? Después de todo, Los routers mantienen tablas de enrutamiento con los caminos que ya que conocen, ellos usan protocolos dinámicos de ruteo para actualizar dichas tablas. Por lo tanto esto tiene que ser un proceso dinámico debido a que los caminos no son siempre los mismos y los routers cambian ya sea por fallos, actualización o expansión de las topologías de red.<br />
<br />
Los protocolos de enrutamiento están divididos en dos grandes categorías: <br />
<ul>
<li>Protocolos de puerta de enlace interior (IGP -Interior Gateway Protocol) </li>
<li>Protocolos de puerta de enlace exterior (EGPs -External Gateway Protocol)</li>
</ul>
</div>
<div style="text-align: justify;">
<b style="color: orange;">Protocolos de puerta de enlace interior</b><br />
Los protocolos IGP soportan tráfico de enrutamiento dentro de la red que está bajo su control administrativo, también conocido como Sistema Autónomo (AS). Este es un nombre elegante para todos los routers de una red local. El protocolo de información de ruteo (RIP -Routing Information Protocol) es un IGP ampliamente desplegado. RIP es un protocolo sencillo, que requiere de muy poca configuración y soporta esencialmente cada dispositivo. Otro IGP es Open Shortest Path First (<a href="http://segweb.blogspot.com/2011/10/si-tienes-informacion-adicional-sobre_17.html" target="_blank">OSPF</a>). Estos dos protocolos difieren en la forma en que reciben actualizaciones de enrutamiento y su perspectiva en la búsqueda de las mejores rutas.</div>
<div style="text-align: justify;">
<br /></div>
<div style="color: orange; text-align: justify;">
<b>Protocolos de puerta de enlace exterior</b></div>
<div style="text-align: justify;">
Los Protocolos EGP son necesarios cuando los paquetes deben viajar entre diferentes Sistemas Autónomos. Estos protocolos sirven de puente entre Sistemas Autónomos separados dentro de una sola red, en la que todos los equipos de la red pueden interaccionar sin problemas con los demás. El Border Gateway Protocol (BGP) es ampliamente utilizado y parte del EGP. Actualmente, BGP proporciona el protocolo de enrutamiento que soporta el Backbone de Internet. Los servidores BGP de el Backbone de Internet deben mantener las tablas de enrutamiento que incluyan todas las direcciones externas de Internet.</div>
<br />
<div style="color: orange; text-align: center;">
<b>Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</b></div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-69372850451116529962012-03-05T08:38:00.000-08:002012-03-05T08:51:23.671-08:00Impacto de la formación de loops en la capa de enlace de datos<div style="text-align: justify;">
<br />
<div style="text-align: justify;">
Los
loops se generan cuando se usan dispositivos de interconexión como bridges y routers con el fin de generar varias rutas alternativas hacia
un único dispositivo o segmento de red. <span class="long_text" id="result_box" lang="es"><span class="hps"> </span></span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span class="long_text" id="result_box" lang="es"><span class="hps">Los siguientes son</span> <span class="hps">algunos de los</span> fenómenos y consecuencias <span class="hps">más comunes cuando hay loops en la capa </span><span class="hps">de enlace</span> <span class="hps">de datos:</span></span></div>
<div style="text-align: justify;">
<br /></div>
</div>
<div style="color: orange; text-align: justify;">
<b><span class="long_text" id="result_box" lang="es"><span class="hps">Tormentas
broadcast</span></span></b></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span class="long_text" id="result_box" lang="es"><span class="hps">Los dispositivos de interconexión emiten tramas broadcast y
multicast por tiempo indefinido, cuando muchas tramas se encuentran
atrapadas en un loop, se presenta un aumento considerable de tráfico y
una disminución del rendimiento de la red. </span></span><br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="http://www.isa.org/Images/InTech/2005/March/20050333.gif" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="263" src="http://www.isa.org/Images/InTech/2005/March/20050333.gif" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><h2>
<span style="font-size: xx-small;">Ethernet blossoms with bus, star, mesh technology. By Kevin Burak and Roland Gendreau</span></h2>
</td></tr>
</tbody></table>
<span class="long_text" id="result_box" lang="es"><span class="hps"> </span></span><br />
<span class="long_text" id="result_box" lang="es"><span class="hps">La ausencia de campos TTL
(Time To Live) en la capa 2, en contraste con la capa 3, genera un
consumo adicional del ancho del banda utilizado, por lo tanto, el
tráfico legítimo no dispone de suficiente ancho de banda, </span></span><span class="long_text" id="result_box" lang="es"><span class="hps">en muchos casos la red se satura tanto</span></span><span class="long_text" id="result_box" lang="es"><span class="hps"> que no está en condiciones de transmitir de datos. </span></span><span class="long_text" id="result_box" lang="es"><span class="hps"> </span></span><span class="long_text" id="result_box" lang="es"><span class="hps"> </span></span></div>
<div style="text-align: justify;">
<br />
<span class="long_text" id="result_box" lang="es"><span class="hps">La solución es dividir la red con un router para </span></span><span class="long_text" id="result_box" lang="es"><span class="hps">evitar
este tipo de reenvío indefinido o permitir la existencia de enlaces
físicos redundantes pero creando un</span></span>a topología lógica libre de loops con <a href="http://segweb.blogspot.com/2011/05/protocolos-de-arbol-extensible-stp-rstp.html" target="_blank">STP</a>, ya que este protocolo permite una sola trayectoria activa entre dos dispositivos de red, esto evita los bucles pero manteniendo las rutas redundantes como reserva, para activarlos en caso de que el camino principal falle. <br />
<b><br style="color: orange;" /><span style="color: orange;">Inestabilidad en la tabla de direcciones MAC: </span></b></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
El switch registra las direcciones MAC aprendidas y mapea también sus puertos relacionados en una tabla dinámica. Si no hay tramas provenientes de dichas direcciones en un lapso de 300 segundos, la tabla elimina la dirección MAC. En el caso de presentarse un loop, la trama puede alcanzar una dirección MAC por diferentes puertos, y el switch no puede definir a dónde enviar la trama recibida. <br />
<br />
<b style="color: orange;">Retransmisión de múltiples </b><b style="color: orange;">tramas</b></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Una misma trama puede ser transmitida desde diferentes puertos, el receptor obtiene entonces múltiples copias de la misma trama repetida, esto también genera la saturación de trafico. Las tramas broadcast no son las únicas afectados por los loops, las tramas unicast enviadas a una red con loops pueden generar tramas duplicadas que llegan al dispositivo de destino. <br />
<br />
<br />
<div style="color: orange; text-align: center;">
Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</div>
</div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0tag:blogger.com,1999:blog-37189251.post-23107824762704047932012-03-04T11:28:00.000-08:002012-03-24T00:29:03.365-07:00Ejemplos resueltos sobre analisis iterativo de la complejidad de algoritmos recursivos<div style="background-color: white; color: orange; position: relative; text-align: center; z-index: 0;">
<div style="color: black; text-align: justify;">
<i>"Para entender la recurrencia, primero hay que entender la recurrencia"</i><br />
<br />
La recurrencia se presenta cuando un proceso se define basándose en función de si misma. Esto significa que una operación compleja se puede descomponer recursivamente en términos más sencillos, entonces los resultados parciales generados por las partes mas pequeñas se usan para encontrar la solución del problema completo.<br />
<br />
El análisis de algoritmos es fundamental para entenderlos y aplicarlos en soluciones prácticas a problemas reales. Los aspectos que mas se estudian son el tiempo que tardan en ejecutarse, el rendimiento según los recursos de computación y el comportamiento en un nuevo entorno. <br />
<br />
Las funciones recurrentes presentan grandes inconvenientes debido a que su tiempo de ejecución tiende fácilmente a valores muy grandes o a infinito, ésto puede generar problemas de desbordamiento de memoria, por lo tanto, es necesario limitar su comportamiento con valores asintótico dados por la notación de Landou o más conocida como notación O grande.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjx87Dk-7ZBsFDJXIO-nZEoAiBRXu3ZuPQxGMwhc5tIIk_qN32yKTTgskPlHeSWkMqQAkYsNZcH4-RN0gSrXdRWlJX4MG3KFQMw_Ad0zAXIEFySQndRiqZjs5LlhAMZ6XWMfGHD/s1600/Notacion+O.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="337" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjx87Dk-7ZBsFDJXIO-nZEoAiBRXu3ZuPQxGMwhc5tIIk_qN32yKTTgskPlHeSWkMqQAkYsNZcH4-RN0gSrXdRWlJX4MG3KFQMw_Ad0zAXIEFySQndRiqZjs5LlhAMZ6XWMfGHD/s400/Notacion+O.jpg" width="400" /></a></div>
<br />
La complejidad con que se ejecuta un algoritmo depende del número de datos de entrada el cual debe ser un valor finito. La relación de recurrencia está dada de la forma:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrKFK1kgBKz52STc7HTGJu1VxXWdn5t24X_WyTdabGg_ZVYQnoYH4EAvan3usu146rBriFp1bZN6g5REwpI9hDwsAgK2yF6rAKrOJEUVvwe6YUgXptlSpvlXBJPeEryRSOQsBn/s1600/ec_teoremaMaestro.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrKFK1kgBKz52STc7HTGJu1VxXWdn5t24X_WyTdabGg_ZVYQnoYH4EAvan3usu146rBriFp1bZN6g5REwpI9hDwsAgK2yF6rAKrOJEUVvwe6YUgXptlSpvlXBJPeEryRSOQsBn/s1600/ec_teoremaMaestro.png" /></a></div>
donde a ≥ 1y b >1 ademas<br />
<ul>
<li>n es numero de datos que se analizan en todo el problema. </li>
<li>a es el número de partes en que se ha dividido el problema para estudiarlo recursivamente. </li>
<li>(n/b) tamaño de cada parte en que se ha dividido el problema, asumiendo el mismo tamaño para cada una. </li>
<li>f(n) es el costo de realizar las llamadas recursivas, incluyendo el proceso de dividir y volver a unir las subtotales para obtener la solución total. </li>
</ul>
Los siguientes son 4 ejemplos de como analizar paso a paso la complejidad del tiempo de ejecución en algoritmos recursivos:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-lq5qKHnENM8Vs4rlH5CqbNirpzKPsyPNxB_88b_Gxkf5BZBMA5Ygo3bDsMeteZ630fIBhr4dbOLCIWZq0-qWksalOBOMwwWoZcfBSVQr11pFFJmjl3qknn671o5bG8bNy6mH/s1600/r1.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="632" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-lq5qKHnENM8Vs4rlH5CqbNirpzKPsyPNxB_88b_Gxkf5BZBMA5Ygo3bDsMeteZ630fIBhr4dbOLCIWZq0-qWksalOBOMwwWoZcfBSVQr11pFFJmjl3qknn671o5bG8bNy6mH/s640/r1.jpeg" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAFhpng_647bNj4gDHsVvlv_EQfHLOBR_JL-uIIsbaR4Ng5zbvONy7JnyQQtHWhwylu1oHT0OtPpPOTe2sGkCc71EpxZBHEyiAEmZhMGFiKcLV0a90EbkB2EWnLBDetYIXLAns/s1600/r2.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="460" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAFhpng_647bNj4gDHsVvlv_EQfHLOBR_JL-uIIsbaR4Ng5zbvONy7JnyQQtHWhwylu1oHT0OtPpPOTe2sGkCc71EpxZBHEyiAEmZhMGFiKcLV0a90EbkB2EWnLBDetYIXLAns/s640/r2.jpeg" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg65CAaoLG0yGO091F2D8I3oHFG36es4_P0VKwoNq8BymrffPHExX4gCB4FzNSrC5h-Bc1kAG6BsFgzfiy-iqCtx6SF4DT7volaVHQSvvYjgqrtCcQ7tyZRwThnh-G-PnmIroGO/s1600/r3.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="398" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg65CAaoLG0yGO091F2D8I3oHFG36es4_P0VKwoNq8BymrffPHExX4gCB4FzNSrC5h-Bc1kAG6BsFgzfiy-iqCtx6SF4DT7volaVHQSvvYjgqrtCcQ7tyZRwThnh-G-PnmIroGO/s640/r3.jpeg" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsxx9TnBhgQvmhl8pUMQ-xwHTc36VoUMO4dThqLAOgsKSuR957NZF7wWhr1deDxvZa3VEEZSOqQ4zdVBsLaS4-kas58E58BV5zhTQ1vCjcSPBAkPf875WegYoA-1UEZj-35ov4/s1600/r4.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="492" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsxx9TnBhgQvmhl8pUMQ-xwHTc36VoUMO4dThqLAOgsKSuR957NZF7wWhr1deDxvZa3VEEZSOqQ4zdVBsLaS4-kas58E58BV5zhTQ1vCjcSPBAkPf875WegYoA-1UEZj-35ov4/s640/r4.jpeg" width="640" /></a></div>
<br />
Siguiente: Ejercicios resueltos usando <a href="http://segweb.blogspot.com/2012/03/teoremamaestro.html" target="_blank">Teorema Maestro</a><br />
<br /></div>
<div style="text-align: justify;">
</div>
<b>Si tienes información adicional sobre este tema, tus comentarios o enlaces de referencia serán bienvenidos.</b></div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com1tag:blogger.com,1999:blog-37189251.post-61829302948925716242012-02-28T01:58:00.003-08:002012-03-15T23:47:07.980-07:00Diario de un ciberdelincuente<div style="text-align: justify;">
<div style="text-align: justify;">
Muchos piratas informáticos están en el negocio para hacer transferencias
bancarias ilegales, robar secretos comerciales, substraer información de
Investigación y desarrollo, o obtener ventajas desleales sobre un
rival, por ejemplo aplicar un ataque DoS a eBay en los últimos minutos
de una subasta.</div>
<br />
<br />
¿Que es lo que quieren los piratas informáticos? Esta es una pregunta demasiado general, porque su solución especificaría diferentes perfiles delictivos. Lo único claro es que aquel típico
cliché del intruso entre 14 y 34 años de edad, adicto a la informática,
sin ningún interés comercial, es una especie en vía de extinción. </div>
<div style="text-align: justify;">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="http://cdn.geekwire.com/wp-content/uploads/2012/02/nerd-bigstock_Extreme_Computer_Nerd_1520708.jpg?7794fe" style="margin-left: auto; margin-right: auto;"><img border="0" height="239" src="http://cdn.geekwire.com/wp-content/uploads/2012/02/nerd-bigstock_Extreme_Computer_Nerd_1520708.jpg?7794fe" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Imagen de Bigstock</td></tr>
</tbody></table>
Hoy en día
el panorama ha cambiado, algunos quieren Robar información mientras
otros solo desean generar caos, sentar un precedente en señal de
protesta, o simplemente incrementar su ego al aparecer en los periódico
y alardear en frente a un círculo de amigos.<br />
<br /></div>
<div style="text-align: justify;">
Los intrusos que roban información confidencial van detrás de un bien específico.
El botín puede variar desde códigos de activación de los juegos mas populares
del momento, información bancaria, hasta secretos comerciales o
gubernamentales. Los sistemas de gobierno poseen grandes cantidades de
información personal sensible y muy valiosa, por lo que se encuentran en la categoría de alto riesgo.</div>
<div style="text-align: justify;">
<br />
En cuestiones de comerciales es muy común acosar empresas, políticos o figuras públicas modificando la información desplegada en sus páginas web oficiales, inhabilitar sistemas generando ataques de Denegación de servicio (DoS) que saturen los servidores de la competencia o simplemente robando información para obtener un beneficio personal.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHPxlElp2t6kxy4ttW6GTPwS4gpc3XrtLy5OzYeWPIxK_N-0HWilIC2m9VJVf4zedBIcz8a8keSg1uvGqCNocYsrO2gkMi9jrU0TMH2L245BUwmVMSPewYkOdMP7IrW56mbvl5/s1600/bots.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHPxlElp2t6kxy4ttW6GTPwS4gpc3XrtLy5OzYeWPIxK_N-0HWilIC2m9VJVf4zedBIcz8a8keSg1uvGqCNocYsrO2gkMi9jrU0TMH2L245BUwmVMSPewYkOdMP7IrW56mbvl5/s320/bots.jpg" width="204" /></a></div>
<div style="text-align: justify;">
Este es el caso de un estudiante anónimo de 21 años quien se hace llamar "0x80", el requiere aproximadamente solo 2 minutos de trabajo diario para gestionar botnets y obtener Ingresos mensuales de $ 6.800 en promedio. ¿Como? Conversando con personas en los chats mientras que los bots le generan dinero [Krebs2006 ]. </div>
<br />
<div style="text-align: justify;">
Si este suena como el trabajo de tus sueños sería bueno que revisaras cuales serían tus funciones:</div>
<ul>
<li>Controlar mas de 13.000 computadores en más de 20 países.</li>
<li>Cuando los hosts infectados descargan parches, es necesario buscar nuevas víctimas</li>
<li>Desplegar publicidad de Adware y generar minería de datos de los hábitos de navegación de la víctima.</li>
<li>Mientras tanto los bots recogen contraseñas, direcciones de correo electrónico, numero de seguro social, datos bancarios y de tarjetas de crédito</li>
<li>Empresas como TopConverting.com, GammaCash.com, Loudcash o 180Solutions pagan por esta información. </li>
</ul>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="http://www.microsoft.com/security/assets/images/_security/sir/story/fig_1.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="640" src="http://www.microsoft.com/security/assets/images/_security/sir/story/fig_1.jpg" width="593" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">http://www.microsoft.com</td></tr>
</tbody></table>
<div style="text-align: justify;">
Interesante ¿verdad?, pero si te empeñas en empezar este estilo de vida, piénsalo muy bien, ya que algunos casos mas conocidos no han tenido finales felices. Por ejemplo Sean Smith pagó 5 años de prisión y una multa de 150.000 dolares por crear el virus Melisa (Mail-lissa), el cual fue desarrollado usando "Word" el procesador de texto de Microsoft office, este enviaba correo electrónicos masivos desde la propia cuenta del usuario a través de Outlook. Si un documento de Word que contenía el virus, ya fuera List.doc u otro archivo infectado, era descargado y abierto, se activaba la macro que lo replicaba.</div>
<br />
<div style="text-align: justify;">
Ehud Tenenbaum conocido como "The Analyzer" Irrumpió en la red del Departamento de Defensa EE.UU. Por lo que fue condenado a 6 meses de prisión y una multa de 18.000 dolares, mientras que Dmitry Sklyarov abrió el código de eBooks de Adobe y fue arrestado después de dar una conferencia titulada "Seguridad eBook - Teoría y práctica "en la convención de DEF CON en Las Vegas, Nevada. Él fue acusado de distribuir un producto diseñado para eludir las medidas de protección del copyright y arrestado por el FBI cuando se disponía a regresar a Moscú.<br />
<br />
La confidencialidad es uno de los principales <a href="http://segweb.blogspot.com/2012/02/seguridad-it-i.html" target="_blank">objetivos de la seguridad</a>
y se refiere a la exposición no autorizada de datos, es cuando terceros
tienen acceso, conocimiento o liberan intencionalmente información
sensible de manera ilegal. <br />
<br />
<div style="text-align: justify;">
Existen dos formas de romper la confidencialidad del sistema, la primera es por
intrusión no autorizada sobrepasando las protecciones
de control de acceso y las políticas de seguridad del sistema. La
segunda forma es la Interceptación de paquetes y datos en transito,
como correos electrónicos o interfiriendo canales de comunicación para
obtener información a través de
la observación de los patrones del tráfico de red con herramientas de
análisis de tráfico como <a href="http://www.wireshark.org/" target="_blank">wireshark</a>.</div>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="http://blogofsysadmins.com/wp-content/uploads/2011/02/Wireshark-manual.png" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="http://blogofsysadmins.com/wp-content/uploads/2011/02/Wireshark-manual.png" width="252" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Imagen de http://blogofsysadmins.com</td></tr>
</tbody></table>
<div style="text-align: center;">
En este enlace podrás descargar este interesante <a href="https://docs.google.com/viewer?url=http://cert.inteco.es/extfrontinteco/img/File/intecocert/EstudiosInformes/cert_inf_seguridad_analisis_trafico_wireshark.pdf&embedded=true&chrome=true" target="_blank">Manual de análisis de tráfico con wireshark</a></div>
<br />
En general los intrusos son externos, sin embargo las empresas también tienen que afrontar amenazas internas que son mucho mas difíciles de manejar debido a la relación de confianza que se genera entre las personas que trabajan en un proyecto de investigación y desarrollo. Sumado a que el nivel de habilidad necesaria para ocultar código malicioso es mucho menor que el requerido para encontrarlo, esto significa que es fácil ocultar código en grandes paquetes de software o instalar backdoors prácticamente imposibles de detectar, cualquier persona con acceso al medio desarrollo es capaz de ingresarlo.<br />
<br />
Un ejemplo que cabe mencionar de amenazas internas es la de Rob Harris quien trabajaba en una fábrica de máquinas traga-monedas, el inyecto un código en la unidad de pruebas, para generar un algoritmo que activaba el modo ganador después de ingresar una secuencia específica de monedas, este código nunca fue detectado en el proceso de producción. Fue atrapado cuando su codicia despertó sospechas después de haber ganado mas de 100.000 dolares. <br />
<br />
Los ejemplos expuestos anteriormente demuestran que la seguridad
informática tiene aplicaciones en todos los ámbitos que rodean nuestros
entornos, desde el hogar, las compañías privadas y entidades
gubernamentales, los riesgos de perder confidencialidad siempre están
presentes y somos nosotros los profesionales de seguridad IT quienes
debemos crear conciencia de como proteger nuestros sistemas.</div>
<br />
Referencia: Krebs2006 : Krebs, B., Invasion of the Computer Snatchers, 2006<br />
<br />
Mas información en: <a href="http://segweb.blogspot.com/2012/02/vulnerabilidad.html" target="_blank">Seguridad IT III: La biodiversidad en el ecosistema de las vulnerabilidades</a>
<br />
<br />
<div style="color: orange; text-align: center;">
Si tienes información adicional sobre este tema, tus comentarios o links de referencia serán bienvenidos.</div>Latin@s en Linzhttp://www.blogger.com/profile/12084915958000926697noreply@blogger.com0