Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - lagranladilla

#11
Seguridad / Re: correo cifrado
21 Abril 2015, 15:38 PM
Des de mi punto de vista quizas es mejor que te encriptes tu mismo el correo (es mas seguro), con PGP (usando enigmail o mailvelope).

Por otro lado, ago la siguiente reflexión: de que sirve que tu servidor guarde tu correo cifrado si con las personas que intercanvias estos correos no lo hacen?

Es decir, basta con que envies un correo a alguien que no lo guarde cifrado para que se comprometa la seguridad.

Una opcion es protonmail, creo que estos si almazenavan cifrados los correos, aunque no lo reduerdo bien...

Pero des de mi punto de vista quizas mejor PGP siempre!

Aqui un articulo que te puede resultar de ayuda: http://k0nespam.noblogs.org/sobre-servicios-de-e-mails-algo-mas-seguros/

aunque ya discutimos un poco en este foro sobre que quizas no es del todo cierta la información que alli se expone: http://foro.elhacker.net/noticias/sobre_servicios_de_emails_algo_mas_seguros-t432060.0.html;msg2003550#msg2003550
#12
Una medida al respecto puede ser esta extensión del mozilla:

https://github.com/dillbyrne/random-agent-spoofer#readme

Que envía una información incorrecta acerca de nuestro navegador (entre otras opciones), aunque no protege la información del sistema. 
#13
El codigo es el del stack Overflow, pero en el proyecto finalmente a quedado del siguiente modo:

Código (java) [Seleccionar]


    public static void fileEncripWrapped(File in, File out, PublicKey pub, byte [] key) {
       
        try {
            SecretKeySpec keySpec = new SecretKeySpec(key, "AES");
                 
            Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");
            cipher.init(Cipher.WRAP_MODE, pub);
            byte[] encKey = cipher.wrap(keySpec);
           
            FileOutputStream osAppend  = new FileOutputStream(out);
           
            osAppend.write(encKey);
            osAppend.close();
           
             cipher = Cipher.getInstance("AES/ECB/PKCS5PADDING");
            cipher.init(Cipher.ENCRYPT_MODE, keySpec);
           
            FileInputStream is = new FileInputStream(in);
            CipherOutputStream os = new CipherOutputStream(new FileOutputStream(out, true), cipher);
           
            copy(is, os);
   
            is.close();
            os.close();
           
        } catch (Exception ex) {
            System.err.println("Ha succeït un error xifrant: " + ex);
        }
    }
   
    public static void fileUncryptWrapped(File in, File out, PrivateKey priv) {
        try {
           
            Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");
            cipher.init(Cipher.UNWRAP_MODE, priv);
           
            InputStream is = new FileInputStream(in);
            byte[] bufferKey = getFirstBytes(is, 256);
           
            Key ky = cipher.unwrap(bufferKey, "AES", Cipher.SECRET_KEY);
           
            cipher = Cipher.getInstance("AES/ECB/PKCS5PADDING");
            cipher.init(Cipher.DECRYPT_MODE, ky);

           CipherInputStream cIs = new CipherInputStream(is, cipher);
           FileOutputStream os = new FileOutputStream(out);
           
           copy (cIs  , os);
           
           is.close();
           cIs.close();
           os.close();
           
        } catch (Exception ex) {
            System.err.println("Ha succeït un error xifrant: " + ex);
        }
    }


Y por otro lado :

Código (java) [Seleccionar]

/**
     * Copy the bytes of input string to bytes in output string in blocks of 1024 bytes
     * @param is - InputStream
     * @param os - OutputStream
     * @throws IOException
     */
    private static void copy(InputStream is, OutputStream os) throws IOException { //http://www.macs.hw.ac.uk/~ml355/lore/pkencryption.htm
        int i;
        byte[] b = new byte[1024];
        while((i=is.read(b))!=-1) {
          os.write(b, 0, i);
        }
    }
   
    /**
     * Get the first n bytes of a binary file
     * @param is - InoutStream
     * @param size - Size do you want to take.
     * @return
     */
    private static byte [] getFirstBytes (InputStream is, int size) {
        byte [] bytes = new byte [size];
        try {
            if (is.read(bytes) != bytes.length) {
                is.close();
                throw new IllegalStateException("Too short file");
            }
        } catch (IOException ex) {
            Logger.getLogger(Asimetric.class.getName()).log(Level.SEVERE, null, ex);
        }
        return bytes;
    }


Ojala sirva!
La idea no se si es buena. Incorporar en el mismo archivo la llave para descifrar... La verdad es que me gustaría profundizar en el tema, con el tiempo!   ;-)

Alomejor posteo en algún tiempo alguna mejora del codigo que tengo pensar de hacer para optimizar y reducir algoritmos.

Salut!
#14
Cita de: Orubatosu en 26 Marzo 2015, 10:25 AM
¿Quiero que un borracho use mi página?

Si es una tienda de licores si...  ;D
#15
En efecto.

El problema era que instanciava un nuevo fileinputstream en vez de usar el que ya havia leido los primeros 256 bytes >.<!!

Solved!
#16
Tengo entendido que las claves RSA tienen una limitacion en cuanto a cantidad de bytes que la clave publica puede cifrar.

Y tengo entendido que la solucion a este problema era usar una wrapped key, en que se utiliza una llave AES para cifrar el archivo y que se envia el archivo cifrado mas la llave AES cifrada con la clave publica.

Entonces el receptor descifra la clave AES con su privada y asi descifrar el archivo...

Queria hacer eso pero en un unico archivo.

Cree que podria hacerlo unicamente con RSA??? Tengo problemas para cifrar con RSA archivos de gran tamaño :S

Gracias!
#17
Hola! (Link StackOverflow https://stackoverflow.com/questions/29239854/encrypt-a-file-appending-wrapped-key-in-unique-file)
La idea de lo que estoy intentando hacer es lo siguiente:
Tenemos:
- Archivo de N bytes
- Clave AES de 256 bytes
- Pareja de claves RSA.

La idea es:
1 - cifrar el archivo en bloques de 1024 Bytes con la clave AES
2 - cifrar la clave AES con la clave publica RSA
3 - Añadir lla clave cifrada (wrapped key) al principio del archivo

Ahora tenemos un archivo cifrado en que los primeros 256 Bytes son la llave cifrada y el resto del archivo esta cifrado en bloques de 1024 bhytes.

Para descifrar:
1 - Recuperar los primeros 256 bytes.
2 - Desencriptarlos usando la llave privada. De este modo hemos recuperado la llave AES que tenemos que usar para descifrar el resto del archivo

Y ahora la pregunta!!!

Como puedo descifrar el resto del archivo, en bloques de 1024, sin tener en cuenta los primeros 256 bytes?????



El codigo de como lo hago esta en el stackOverflow... Estoy muy confuso y no lo consigooooo!!!! :'(
https://stackoverflow.com/questions/29239854/encrypt-a-file-appending-wrapped-key-in-unique-file

LA pregunta no es una cuestion de cifrado, la cuestion es una cuestion de como acceder a un archivo binario en bloques i a con un offset de n bytes...

Gracias de antemano!
#18
Cita de: engel lex en 19 Marzo 2015, 20:40 PM
Protonmail:
no que era end to end? y no almacenaba registros XD ya te diré

Eso no implica que pidan los datos de un usuario, aunque cifrados...

Cita de: engel lex en 19 Marzo 2015, 20:40 PM

no tienen cifrado end to end por su cuenta, y dan servicios donde son intermedios de tus datos para todo... siempre de dudado de quien presta una vpn publica (y paga)

y las alternativas de la deep? end to end, uno unico y esas cosas? :s

En cuanto a riseup, siempre han avisado del defecto de no tener end-to-end, pero por su lado siempre han aconsejado GPG incluso mostrando tutoriales.

Aunque es cierto que no hay que tener fe ciega en ellos... O en la NSA que secuestro los servidores de NY

En cuanto a alternativas deep no he tenido tiempo de redactarlas. Podrías nombrar algunas para que indague por mi cuenta?

Y lo de la "i" ya esta cambiado, gracias!
#19
Quien no sabe que nos espían los correos? Al destapar Edward Snowden una de las mayores revelaciones en cuanto a espionaje en la red, despertó en una gran cantidad de gente el hecho, ahora innegable, de que estamos siendo espiados, a todas horas y momentos, por la todopoderosa NSA.

Pero como podemos proteger nuestra privacidad? Quizás no tenemos nada que esconder, pero quizás tampoco nos gusta que nuestra intimidad sea violada cada día.

Aquí algunas alternativas de correo electrónico, aparentemente más seguros, para quitarnos un pequeño peso de encima.

Cabe la pena decir que los siguientes servicios no están pensados para una gran multitud. Por eso el proceso de inscripción puede variar del habitual con preguntas como porqué escoges estos servicios.


http://k0nespam.noblogs.org/sobre-servicios-de-e-mails-algo-mas-seguros/
#20
Hola,

Me gustaria hacer un desglose para entender el archivo .csv del DB11.LITE (ya que nunca lo he usado):

"3627749376","3627749631","BR","BRAZIL","RIO DE JANEIRO","RIO DE JANEIRO","-22.902780","-43.207500","20510130","-03:00"

- Supongo que donde "3627749376","3627749631" debe ser el rango de IP assignadas a este territorio. Pero como se lee??? no concuerda con ninguna ip... Alomejor es que es la IP asignada numero 3627749376. Entonces se deberia calcular cual es la ip que corresponde a este numero??

- "BR" codigo pais
- "BRAZIL" nombre pais
- Las dos siguientes son la region del pais y el pueblo o ciudad
- "-22.902780","-43.207500" coordenadas
- "46116" ZipCode (codigo postal)
-  "+02:00" Franja horaria

La parte para ver la IP es lo que no entiendo... Alguien puede explciarmelo?? Gracias!