Confirmado: La red TOR ya ha sido comprometida

f6c1c1324eroject.jpgDesde hace tiempo se viene hablando de la posible rotura de la protección del anonimato dentro  de la red TOR. Y como suelen decir “Cuando el río suena agua lleva”.

En el blog de la red TOR han publicado que durante los últimos 6 meses, se viene detectando multitud de paquetes modificados para poder recabar información que puede llevar a la localización de los nodos, y por con ello localizar el origen de las comunicaciones que por ellos pasan.

Estas modificaciones en los paquetes pueden devolver información muy relevante, como puede ser la distancia a la que se encuentra el nodo, simplemente calculando el tiempo que ha tardado en llegar a el, router por donde a pasado, etc.

La red TOR se a colocado en el punto de mira de todas las agencias de información de todo el mundo. Hace pocos días se publicaba, que el gobierno ruso ofrecía 110.000$ por cualquier fallo en la red TOR. La NSA lleva ya mucho tiempo almacenando información que circula por la red, para una vez que se rompa el algoritmo de encriptación poder analizar esos datos. También la NSA ya ha utilizado varios fallos que se encontraban en al navegados de TOR, el TOR Browers, llegando a localizar ha varias personas con ello. También se ha odio, pero esta sin darle demasiada credibilidad, que la agencia de Israel también a podido utilizar varios fallos en la red para localizar a terroristas.

La red TOR da cobertura a grupos de delincuencia que las agencias de inteligencia de todos los países quieren localizar, por ello, no escatimaran en recursos para romper la seguridad de TOR.

Como recorrer todos los componentes de un form o un panel

En determinadas ocasiones tenemos que realizar una misma operación en todos los componentes, ya sean iguales o distintos, que están en un formulario, dentro de un panel, etc.

Lo mas fácil seria ir uno por uno haciendo el cambio deseado, si son unos pocos, no seria mucho problemas, pero cuando son muchos esto puede ser un engorro, pudiendo llevarnos a introducir errores en nuestros código.

Otra opción es ir recorriendo todos los componentes que están dentro de nuestro formulario y comprobar de que clase es, y si es del tipo que tenemos que hacer el cambio, entonces pasamos a hacérselo.

Esto lo podemos hacer de la siguiente forma:

Para saber cuantos componentes tiene nuestro formulario utilizaremos la opción “Controls”.  Este tiene varios parámetros que nos indican cuantos “controles” hay en nuestro formulario, el tipo, etc. Con esta información que nos facilita “Controls” podemos recorrer todos los componentes que hay.

foreach (Control cComprobar in fFormulario.Controls)
{
    // Codigo de control para el componente
}

Este código nos permite recorrer todos los controles que tenemos situados en nuestro formulario.

Ahora tenemos que saber de que tipo es el control, para ello solo tenemos que preguntárselo.

if (cComprobar is PictureBox) 
{
     // Si es del tipo que queremos lo procesamos
}

En este caso queremos saber si es un “PictureBox”, pero si queremos saber si es de otro tipo, por ejemplo, si queremos modificar un “TextBox”, cambiamos el “PictureBox” por “TextBox”. Y así según el tipo deseado.

Ejemplo:

foreach (Control cComponente in fFormulario.Controls)
{
    if (cComponente is PictureBox)
    {
        cComponente.Image = Image.FromFile(sNuevaImagen);
    }
}

Pero puede suceder que no a todos los componentes que tenenos en nuestro formulario queramos modificarlos. Para esto, yo me aprovecho de la opción “Tag” que tienen todos los controles. En esta opción podemos introducir  el texto que deseemos. Solo tengo que marcar todos los controles que no quiero modificar y cuando lo recorro comprobar que quiero cambiarlo.

if ((string)cComponente.Tag != "estono")
{
    // Este control si lo quiero modificar
}

y con esto ya podemos realizar cualquier cambio a nuestros controles, sin tener que repetir el código para cada unos de ellos.

Y tu, si utilizas otro método puedes compartirlo con nosotros, solo tienes que dejar un comentario.