Fecha y hora actual: Lunes 27 Ene 2020 20:54
Índice del Foro

Foros de programación informática, diseño gráfico y Web

En esta comunidad intentaremos dar soporte de programación a todos los niveles, desde principiantes a profesionales de la informática, desarrollo de programas, programación web y mucho más.

Proyecto - Proteger carpetas y documentos por contraseña

Responder al Tema Ir a página Anterior12345678Siguiente

Índice del Foro > Proyecto de encriptación - CriptoPilla > Proyecto - Proteger carpetas y documentos por contraseña

Autor Mensaje
weirdmix
Moderador Global


Registrado: 08 May 2008
Mensajes: 1385
Ubicación: Mérida - MEXICO

Mensaje Publicado: Jueves 24 Nov 2011 03:37

Título del mensaje: Re: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

hola!!!

ya estuve investigando un poco y me encontre este tutorial de criptografia, quiza no sea la gran cosa pero creo q servira para el comienzo, esta aqui.

por otro lado, no pude descargar la aplicacion desde la liga q me pusiste, podrias checarlo por favor?

gracias!!!
Ok Ok Ok


------------------------------
WeirdMix
Colaborador y Moderador Global
Volver arriba
Ver perfil del usuario Enviar mensaje privado Enviar correo MSN Messenger
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Domingo 18 Dic 2011 16:52

Título del mensaje: Re: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Cita:
hola!!!

ya estuve investigando un poco y me encontre este tutorial de criptografia, quiza no sea la gran cosa pero creo q servira para el comienzo, esta aqui.

por otro lado, no pude descargar la aplicacion desde la liga q me pusiste, podrias checarlo por favor?

gracias!!

Que tal compañero, aquí volvemos de nuevo !!!

Vamos a ver... mmm... el tema de la criptografía no es que esté resuelta, sino que de momento solamente tenemos implementado el método AES con cifrado simétrico Rijndael, trabajando con una clave pública sin generar ninguna clave privada. No hay riesgo ya que la clave no queda almacenada en ningún lado (es segura, por lo menos siempre que la clave no la "pierda" el usuario o la comparta). El tema sería implementar otros algoritmos de cifrado basándose en el mismo caso, que usen una única clave. Lo ideal sería tener un mínimo de tres o cuatro algoritmos, ya que algunos tendrán sus ventajas y desventajas. Por ejemplo hay otros algoritmos que son más vulnerables (...para un hacker Risa ) pero trabajan más rápido como son DES, triple DES (que viene a ser el DES codificado tres veces con el mismo método), IDEA, etc... entiendes?

Luego, "por otro lado", el proyecto lo estamos hospedando en una FTP que nuestro compañero y administrador, Tesis, nos facilita gustosamente Risa . La clave si deseas acceder, puedes pedirla por privado al administrador.

Y por último, el tema donde estoy enrevesado es el que indiqué en comentarios anteriores en este hilo, y es que una vez cifrado los datos, no se obtiene correctamente la longitud de los bytes codificados, nose, tampoco he profundizado en eso (debido a que me encontraba trabajando), y es que esperaba que alguna función tipo lenght() o algo así me lo indicara, erra un par de bytes, los justos y necesarios para que cuando deba desencriptar, los ficheros queden tal como eran, la verdad es que nose... hace tiempo que no toco el código y ahora estoy metiéndole mano. Antes funcionaba bien, porque todo el proceso se realizaba en memoria, pero luego caí en que si trabajamos con ficheros gigantes, el proceso no podría hacerse completamente desde la memoria, y la solución fue ir tomando porciones del fichero y procesarlas en memoria, por lo que tuve que hacer muchas modificaciones, (ahí si que me volví loco) cortando código por aquí y pegando por allá ajajja Risa

Date cuenta que no existe un token o separador cuando el usuario decide crear un paquete de ficheros codificados, entiendes? Por lo que el tamaño codificado del fichero queda almacenado en el mismo formato, siendo este de 3 bytes para el descriptor, 1 para el método o algoritmo (0 por defecto, AES), 1 entero para el número de ficheros y luego los ficheros que se encuentren en el paquete con su nombre y longitud codificada.

Código:
        public struct Cabecera// La cabecera es parte del fichero que a sez le
                        //preceden los paquetes que estan descripto en elemento
        {
            // nos indica que uns fichero Criptopilla y el ultimo byte indica el
            // metodo de encriptacion
            public byte[] descriptor;    // Indica que es un fichero CRiptopilla
            public byte metodo;          // Por defecto AES (0)
            public int numDeFicheros;

            public struct elemento
            {
                public string fichero;// Nombre del fichero
                public ulong longitud; // longitud en bytes encriptado
            }

            public elemento[] elementos; // Indica los ficheros contenidos

        }


La solución si no encuentro el fallo, pasaría por crear primero el fichero codificado fuera del paquete y luego pasarlo al paquete mientras se van eliminado los bytes que actualmente se leyeron del fichero temporal. Algo que ralentizará el proceso.

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Lunes 09 Jul 2012 00:39

Título del mensaje: Re: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Ya se por que el tamaño encriptado no se ajusta al fichero original. Es debido a la codificación que la realiza en bloques de 16 bytes. Vaya tontería... y miren que perdí tiempo y buscaba métodos absurdos para solucionarlo. Voy aprovechar que dispongo de tiempo y trato de meterle mano a la aplicación.

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
Tesis
Administrador


Registrado: 04 Mar 2007
Mensajes: 3230
Ubicación: Valencia - España

Mensaje Publicado: Miércoles 26 Sep 2012 22:08

Título del mensaje: Re: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Dime por donde lo llevas y vemos la manera de continuarlo.


Normas del foro
Aprende a postear correctamente usando las etiquetas
Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Domingo 30 Sep 2012 17:30

Título del mensaje: Re: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Ahora lo miro y te digo, se que lo último que hice fue hacer cambios en la clase DialogoEncriptar, solucionando el tema de la creación de paquetes encriptados y desencriptarlos, pero luego hice unas modificaciones de optimización y se me quedó con unos errores, a consecuencia de no sincronizar algunos procesos con los hilos, se cerraba el diálogo y se mantenía algún proceso que al llamar a un elemento del diálogo generaba una excepción... y claor no he podido seguir porque estaba metido en trabajillos, ahora estoy en otro que una super pesadez que hay noches que me digo, vale la pena para la mierda que me van a pagar Risa jajajaj se trata de recuperar datos de páginas de telefónia de forma automática y tengo que analizar el código de las páginas, y son páginas que.... buah no te aburro, déjame tiempo y te aclaro el estado actual del proyecto.

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
Tesis
Administrador


Registrado: 04 Mar 2007
Mensajes: 3230
Ubicación: Valencia - España

Mensaje Publicado: Lunes 01 Oct 2012 13:54

Título del mensaje: Re: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

OK, no hay prisa. Ok


Normas del foro
Aprende a postear correctamente usando las etiquetas
Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Domingo 09 Feb 2014 01:34

Título del mensaje: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Pues el proyecto se quedó ahí mismo, en donde citaba.

La parte que incluyo en este enlace, es la parte de la interfaz, la idea es que la interfaz tire de los servicios, que son las extensiones que comenté al principio de este hilo, y de esa forma obtenemos una aplicación super ligera, menos de un mega, y por otra parte podemos incluir el servcio o extensión al menú contextual del explorador de ficheros del sistema operativo, como podemos ver en aplicaciones como el WinRar, donde al seleccionar los ficheros con extensión RAR se nos ofrece la posibilidad de descomprimir, o seleccionado ficheros sueltos en nuestro caso nos permitiría encriptar.

¿Por qué voy tan despacio? Porque yo soy un tipo paciente, no es broma, cualquier cosa que implemento la pruebo y la requetepruebo, depuro, investigo, modifico, pruebo y requetepruebo, intento que tenga una base sólida a prueba de bombas, que la aplicación no tenga grietas.

¿Por qué desarrollar sobre la interfaz y no sobre la extensión? Porque en su día probé y confirmé el funcionamiento de las extensiones, la idea es trabajar todo el código desde la interfaz y luego cuando todo funcione, gracias a la maravillosa POO por medio de las maravillosas clases, luego podemos asilar el código que se encarga de encriptar/desencriptar y la interfaz misma, y luego el siguiente paso sería meter esas clases en la extensión, y modificar el código de la interfaz para que llame a esa extensión.
El último paso, una vez confirmado que todo funciona es implementar desde el binario de la interfaz, el código necesario para que una vez ejecutada la interfaz se ancle el servicio al menú contextual click derecho en el explorador de ficheros del sistema. El cual podría desactivarse y activarse pasando parámetros al binario como cité al comienzo de este hilo y creo que se debería leer para ponerse al día en el desarrollo.

Resuelto:

  • Formato de los ficheros criptopilla (descripto en este hilo).
  • Encriptación y desencriptación AES. Fallaba el tamaño de los ficheros al desecriptarse.
  • Animación barra de progreso para determinados procesos controlados por hilos (subprocesos).


Problemas actuales:
  • Resolver pequeños fallos de actualización del explorador de ficheros de la interfaz estudiando la vida de los hilos defindos que participan en varios procesos. Algunas veces se muestra tamaño cero, cuando en realidad tiene un tamaño que no es cero.
  • Algunas excepciones realcionadas con la desencriptación no están tratadas, por ejemplo al introducir la clave incorrecta no muestra error y el proceso absurdamente extrae el primer fichero lo deja a cero y finaliza.


Lo siguiente:
  • Implementar otros métodos seguros de encriptación (mínimo dos más).
  • Implementar menú de configuración para la encriptación en el icono de herramientas de la interfaz. Desde ahí se indica el método usado. Recordad que el método de encriptación debe ser indicado en la cabecera del fichero criptopilla.
  • Corregir pequeños fallos visuales de la interfaz.


Segundo Objetivo:
  • Crear la extensión con las clases de encriptación y desencriptación usadas en la interfaz.
  • Sustituir las clases de encrptación y desencriptación de la interfaz por llamadas a la extensión. La extensión de momento se instala manualmente, al principio del hilo se indica el proceso, si no, se los aclaro cuando llegue el momento o se investiga.


https://www.mediafire.com/?4t8qv4gkgi32z3u



Ultima edición por WhiteSkull el Jueves 13 Feb 2014 23:30; editado 1 vez
Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
unsigned char*
Usuario Activo


Registrado: 03 Abr 2012
Mensajes: 599
Ubicación: Aqui

Mensaje Publicado: Jueves 13 Feb 2014 20:14

Título del mensaje: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

foosss .NET? Triste Triste Triste Triste

Me petan los binarios compilados tanto debug como release.
Windows 7

-----

Edit: Vale, soy tonto.. va perfecto Guiño

No me desencripta en la carpeta que selecciono y aunque no marque "eliminar origen" (o algo asi) me elimina los archivos que encripto.... Risa

Pero vamos, lo teneis bastante avanzado ya no? le fata pulir detallines y completas opciones y eso pero la funcion principal esta, a ver si me animo y me instalo el putoNET jijiji :P


++++++++++[>++++++++>++++++++>++++>+++<<<<-]>+++++.>--.<--.>-----.--.+++++++.---------.-.>>++.<<-.+++++.-------.<-.>>++.

Ultima edición por unsigned char* el Jueves 13 Feb 2014 20:41; editado 1 vez
Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Jueves 13 Feb 2014 20:33

Título del mensaje: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Pues no debería, el desarrollo se inició en Vista (32 bits) y luego lo continué en otro equipo, con el que trabajo actualmente con Windows 8 (64 bits).

Dime que error te lanza, puede que sea por la firma. Deshabilitala en las propiedades del proyecto, aunque yo creo que está quitado.

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
unsigned char*
Usuario Activo


Registrado: 03 Abr 2012
Mensajes: 599
Ubicación: Aqui

Mensaje Publicado: Jueves 13 Feb 2014 20:41

Título del mensaje: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Editado, disculpa :S


++++++++++[>++++++++>++++++++>++++>+++<<<<-]>+++++.>--.<--.>-----.--.+++++++.---------.-.>>++.<<-.+++++.-------.<-.>>++.
Volver arriba
Ver perfil del usuario Enviar mensaje privado
Pico
Usuario Activo


Registrado: 25 Jun 2013
Mensajes: 628

Mensaje Publicado: Jueves 13 Feb 2014 22:39

Título del mensaje: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Se me ha ocurido otra manera de hacer el programa.

Primero haríamos una pequeña aplicación, en c# mismamente, que simplemente sacara un TextBox en el que escribiríamos una contraseña. Si es la correcta, lanzaría una dll y ya se podría cerrar, dejando la dll cargada. También podríamos poner que se cargara la dll cada vez que inicie el windows mediante la clave HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ Windows\AppInit_DLLs. Podría instalar un hookde teclado y entonces escribiendo la contraseña en cualquier sitio ya ejecutaría el código que controla la codificación-descodificación.

Ya tenemos la dll cargada en modo ccodifica-descodifica.

Lo primero que haría entonces es crear una clave del registro para que apareciera un menú contextual en el explorador. Crear las claves

[HKEY_CLASSES_ROOT\*\shell\Codificar]
[HKEY_CLASSES_ROOT\*\shell\Codificar\Codificar]
@="[exe que codifique] %1"

Entonces al darle a ese menú se cargaría un programa al que le pasaría el comando %1, el archivo del menú contextual, que iría leyendo el archivo, mandando a una dll el búfer de datos que lo devuelve codificado, escribiendo.

Ya tenemos el archivo codificado.

Supongamos que ese archivo que queremos codificar es, como dice WhiteSkull, un vídeo que hemos grabado con nuestra amiga (o amigo) y no queremos que vea nuestro marido (o marida). Ese vídeo lo reproducimos con nuestro reproductor favorito, pongamos, el vlc.

Lo segundo que haría la dll es poner un hook cbt

cbtHook = SetWindowsHookEx(WH_CBT, (HOOKPROC)cbt, hInstance, 0);

con la función cbt tal que

RESULT CALLBACK cbt(int code, WPARAM wParam, LPARAM lParam)
{
switch(code)
{
case HCBT_ACTIVATE:
break;
case HCBT_MINMAX:
break;
case HCBT_CLICKSKIPPED:
break;
case HCBT_CREATEWND:
break;
case HCBT_DESTROYWND:
break;
case HCBT_KEYSKIPPED:
break;
case HCBT_MINMAX:
break;
case HCBT_MOVESIZE:
break;
case HCBT_QS:
break;
case HCBT_SETFOCUS:
break;
case HCBT_SYSCOMMAND:
break;
}
return CallNextHookEx(NULL, code, wParam, lParam);
}

Esa función cbt será llamada por windows cada vez que se cree, active, mueva, destruya... una ventana. Entonces, en el evento que queramos, no hace falta que sea en todos, pondríamos un hook a la función ReadFile para ese proceso, el vlc. Función que pone un hook
Código:

void HookAPI(wchar_t *Module, char *API, DWORD Function, BYTE *FuncOrig)
{
    HMODULE hModule = LoadLibrary(Module);
    DWORD OriginalAddress = (DWORD)GetProcAddress(hModule, API);
    DWORD ReplacementAddress = (DWORD)Function;
    DWORD ReplacementAddressOffset = ReplacementAddress - OriginalAddress - 5;
    LPBYTE pOriginalAddress = (LPBYTE)OriginalAddress;
    LPBYTE pReplacementAddressOffset = (LPBYTE)(&ReplacementAddressOffset);
 
    DWORD OldProtect = 0;
    DWORD NewProtect = PAGE_EXECUTE_READWRITE;
     VirtualProtect((PVOID)OriginalAddress, 5, NewProtect, &OldProtect);
 
    for (int i = 0; i < 5; i++) FuncOrig[i] = pOriginalAddress[i];
 
    pOriginalAddress[0] = (BYTE)0xE9;
 
    for (int i = 0; i < 4; i++)
        pOriginalAddress[i + 1] = pReplacementAddressOffset[i];
 
    VirtualProtect((PVOID)OriginalAddress, 5, OldProtect, &NewProtect);
    FlushInstructionCache(GetCurrentProcess(), NULL, NULL);
    FreeLibrary(hModule);
}


función que llamaríamos tal que

HookAPI("Kernel32.dll", "ReadFile", (DWORD)NuevoReadFile, orReadFile);

Tendríamos que implementar una función NuevoReadFile tal que
Código:

BOOL NuevoReadFile(
    HANDLE hFile,   // handle of file to read
    LPVOID lpBuffer,   // address of buffer that receives data 
    DWORD nNumberOfBytesToRead,   // number of bytes to read
    LPDWORD lpNumberOfBytesRead,   // address of number of bytes read
    LPOVERLAPPED lpOverlapped    // address of structure for data
   );
{
    bool u;
     UnHookAPI("kernel32.dll", "ReadFile", orReadFile);
     u = ReadFile(....);
     // descodificar datos
     .......
     HookAPI("Kernel32.dll", "ReadFile", (DWORD)NuevoReadFile, orReadFile);
    return u;
}


O sea, cuando el vlc vaya a leer datos del archivo para reproducir llamaría nuestra función NuevoReadfile. Dentro de ella, deshookeamos la función, llamamos la del windows, que nos devolverá el búfer de datos, los descodificamos, volvemos a hookear Readfile, y retornamos lo que devuelva ReadFile, con lo que al programa le legarán los datos descodificados.

Con cuatro detalles más, está todo.

Lo he escrito todo al vuelo, así que algún error habrá, pero se entiende.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Jueves 13 Feb 2014 23:19

Título del mensaje: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

El tema de la extensión está solucionado Pico:

http://www.foro.lospillaos.es/4-vt7242.html?amp;postdays=0&postorder=asc&start=45

Lo he probado y requeteprobado y funciona, lo he probado con código de prueba que simulaba mediante un sencillo MessageBox() el encriptar y desencriptar. De lo que se trata era de trabajar con las clase DialogoEncriptar que conteniene una interfaz para las operaciones de encriptar y desencriptar. Quizás DialogoEncriptar no es ahora el nombre adecuado, ya que esto lo hice sobre la marcha improvisando sin ningún guión, a lo mejor será mejor abstraerlo ya que ha crecido demasiado y así separo cada operación en una clase. La idea es que cuando esas clases estén preparadas, con los requerimientos exigidos (antes mencionado), se pasaría al segundo objetivo, el cual es ese, integrar las clases al objeto COM, que es algo sencillo como leerás en el enlace anterior, y de ahí ya luego se inovca el objeto y se llaman las funciones respectivas de encripte y desencripte, y aparte la extensión ya está incluido la operación para que este disponible en el menú contextual del explorador de ficheros.

En teoría había una solución con dos proyectos, la extensión y la aplicación que invocaba la librería, pero para quitar complejidad lo separé y dejé la solución con la aplicación, y de ahí ya se trabaja con las operaciones de cifrado. Se hace más seguro, porque así para mi, es más fácil depurar, no tienes que estar peleándote con la librería. O perdiendo el tiempo buscando fallos donde a lo mejor derivan de otra cosa... no se. Se supone que era un proyecto conjunto y al final lo hice bajo mi criterio, porque yo era el único que trabaja en esto Triste .

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Jueves 13 Feb 2014 23:29

Título del mensaje: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Al encriptar se crea un fichero con cabecera, y se puede ofrecer la posibilidad de eliminar los ficheros fuentes, como hacen muchos compresores. No se puede acceder al fichero si no es por medio de nuestra aplicación o si se conoce al cabecera, se trata de ofrecer seguridad. Aunque una vez que queda el trabajo expuesto al público ya pierde bastante pero bueno... ruego que lean esto desde el principio y sigan todo el hilo para evitar redundar sobre todo lo avanzado.

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
unsigned char*
Usuario Activo


Registrado: 03 Abr 2012
Mensajes: 599
Ubicación: Aqui

Mensaje Publicado: Jueves 13 Feb 2014 23:40

Título del mensaje: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

¿Porque no creais un repositorio en github?


++++++++++[>++++++++>++++++++>++++>+++<<<<-]>+++++.>--.<--.>-----.--.+++++++.---------.-.>>++.<<-.+++++.-------.<-.>>++.
Volver arriba
Ver perfil del usuario Enviar mensaje privado
WhiteSkull
CoAdmin


Registrado: 20 Mar 2009
Mensajes: 3136
Ubicación: y*width+x

Mensaje Publicado: Jueves 13 Feb 2014 23:49

Título del mensaje: Proyecto - Proteger carpetas y documentos por contraseña

Responder citando

Venga anímate Risa

Yo ahora estoy con una aplicación de Android... y viendo vídeos Risa (soy poco productivo)

Volver arriba
Ver perfil del usuario Enviar mensaje privado Visitar sitio web del autor
Responder al Tema Ir a página Anterior12345678Siguiente
Mostrar mensajes anteriores:   
Ir a:  
Todas las horas están en GMT + 2 Horas

Temas relacionados

Tema Autor Foros Respuestas Publicado
El foro no contiene ningún mensaje nuevo

Os presento mi proyecto de Renting Web

Renting Web Muestra tus trabajos Web 1 Miércoles 18 Sep 2019 12:30 Ver último mensaje
El tema está bloqueado: no pueden editarse ni agregar mensajes.

Solicito programadores para mi proyecto

alexpin Bolsa de trabajo 0 Miércoles 23 May 2018 22:53 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Se requiere programador para Proyecto de Juego,...

Otilio Programación de juegos o videojuegos 5 Martes 03 Oct 2017 00:04 Ver último mensaje
El tema está bloqueado: no pueden editarse ni agregar mensajes.

Busco personas para un proyecto de Facebook

Andres Gonzales Bolsa de trabajo 0 Domingo 19 Mar 2017 22:35 Ver último mensaje
El foro no contiene ningún mensaje nuevo

mi proyecto de aprende programación

jaime hernandez ramirez Programación en general 0 Sábado 25 Feb 2017 03:29 Ver último mensaje
Panel de Control
No puede crear mensajes, No puede responder temas, No puede editar sus mensajes, No puede borrar sus mensajes, No puede votar en encuestas,