Foro de elhacker.net

Programación => Java => Mensaje iniciado por: cojon en 17 Diciembre 2009, 02:33 am



Título: cifrar ayuda
Publicado por: cojon en 17 Diciembre 2009, 02:33 am
chequen este programa

import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.io.InputStreamReader;
import java.io.IOException;

public class EncriptarArchivo {
   public static void main (String[] args) throws IOException {
      BufferedReader dato = new BufferedReader(new InputStreamReader(System.in));
      int opcion;
      do{
         System.out.println("cifrar......[1]");
         System.out.println("descifrar...[2]");
         System.out.println("Salir..........[3]");
         System.out.print("elige una opcion: ");
         opcion = Integer.parseInt(dato.readLine());
         switch(opcion)
         {
            case 1:
               try{
                  FileReader archivo = new FileReader("TEXTO.TXT");
                  BufferedReader leerarchivo = new BufferedReader(archivo);
                  FileWriter destino = new FileWriter("cifrar.txt", false);
                  PrintWriter guardar = new PrintWriter(destino);
                  int c;
                  while((c= leerarchivo.read())!=-1)
                  {
                     c += 128;
                     char letra = (char) c;
                     guardar.print(letra);
                  }
                  guardar.close();
                  leerarchivo.close();
                  }catch(Exception err)
                  {
                     System.out.print(err.toString());
                  }
                  break;
            case 2:
               try{
                  FileReader archivo = new FileReader("cifrar.TXT");
                  BufferedReader leerarchivo = new BufferedReader(archivo);
                  FileWriter destino = new FileWriter("Texto.txt", false);
                  PrintWriter guardar = new PrintWriter(destino);
                  int c;
                  while((c= leerarchivo.read())!=-1)
                  {
                     c -= 128;
                     char letra = (char) c;
                     guardar.print(letra);
                  }
                  guardar.close();
                  leerarchivo.close();
                  }catch(Exception err)
                  {
                     System.out.print(err.toString());
                  }
                  break;
         } // switch
      } while(opcion!=3);
   }
}

bueno muchos ya deben de saber como funciona, deben crear 2 archivos de texto en la misma carpeta que guardas el archivo java ,uno llamado texto y otro cifrar, en el de texto  va la palabra a encripatr, y en el cifrar, aparecera el texto ya cifrado, el caso es que si metes una letra en el archivo texto, te aparecera una letra en el elcriptador, si metes una palabra por ejemplo de seis letras en el archivo texto, aparecera seis letras en cifrar, lo que yo quiero es que al meter una letra salgan 8, espero me puedan ayudar, tengo una idea pero hasta alli   :-(


Título: Re: cifrar ayuda
Publicado por: Leyer en 17 Diciembre 2009, 03:19 am
1 letra? y y se guarden 8 de la misma no te entiendo muy bien

SL2


Título: Re: cifrar ayuda
Publicado por: cojon en 17 Diciembre 2009, 03:27 am
1 letra? y y se guarden 8 de la misma no te entiendo muy bien

SL2


 si colega, si meto una letra en el archivo texto.txt  me generar  8 letras en el archivo cifrar, ejemplo   texto=a   el archivo cifrado generado seria= abcdefgh,


dije abcdefgh pero pudieran aver sido otras no necesariamente esas


Título: Re: cifrar ayuda
Publicado por: cojon en 17 Diciembre 2009, 03:31 am
checate este codigo, metes una letra y te genera 8

public class Encriptador1{
public static void main(java.lang.String[] args) {

Encriptador1 crypt = new Encriptador1();
Lectura obj = new Lectura();
String lee = new String();
String mayus = new String();
char caracter = 0;


lee = obj.lectura();
int tam = lee.length();

char[] cadenasub = new char[tam+7];
for ( int i=0; i<cadenasub.length; i++){
cadenasub = (char) ((Math.random() * 41)+48); }

mayus = lee.toUpperCase();

for ( int i = 0; i < mayus.length(); i++ ){

cadenasub[5*i] = mayus.charAt(i);
}
System.out.println();

System.out.println("cifrada: ");

for ( int i = 0; i < cadenasub.length;i++){

System.out.print(cadenasub);
}

System.out.println();
System.out.println();
System.out.println("Quiere descifrar la cadena ?( S / N)");

try {
caracter = (char) System.in.read();
System.in.skip(2);

}catch (java.io.IOException e) {
System.out.println(e.getMessage());
}

if( caracter == 'S') {
System.out.println("descifrada : ");


char[] a = new char[tam];

for ( int i = 0, j = 0; i < cadenasub.length && j < tam;i++,j++) {

a[j] = cadenasub[5*i];
}


for ( int i = 0; i < tam; i++){

System.out.print(a);
}
}else if(caracter == 'N'){
System.out.println("Adios");
System.exit(1);
}else{
System.out.println("Debe introducir S ó N");
System.out.println("Adios");
System.exit(1);
}

}
}


sl2


Título: Re: cifrar ayuda
Publicado por: Leyer en 17 Diciembre 2009, 04:30 am
el segundo code que colocaste no funciona  >:( ..una pregunta para que guardarlo en el texto.txt cuando lo puedes guarda de una ves al cifrar.txt :huh:

Saludos.


Título: Re: cifrar ayuda
Publicado por: cojon en 17 Diciembre 2009, 04:40 am
el segundo code que colocaste no funciona  >:( ..una pregunta para que guardarlo en el texto.txt cuando lo puedes guarda de una ves al cifrar.txt :huh:

Saludos.




no compila por que le falta el lectura, aqui esta se me fue  :-[

public class Lectura{
public String lectura() {
String s=new String();
String temp=new String();
char cad;
System.out.println("Introduce una cadena");

try {
while ((cad = (char) System.in.read())!='\n')
s += cad;
}catch (java.io.IOException e) {
System.out.println(e.getMessage());
}

for (int i=0; i<s.length()-1; i++)
temp += s.charAt(i);

return temp;
}
}

perdon se me fue, pero aora si checalo  veras, y si se guarda en encripatar


Título: Re: cifrar ayuda
Publicado por: Blitzkrieg' en 17 Diciembre 2009, 14:04 pm
Saben una cosa... existe una etiqueta llamada code que sirve para hacer mas legible nuestro codigo  :-X


Título: Re: cifrar ayuda
Publicado por: Debci en 17 Diciembre 2009, 18:16 pm
Saben una cosa... existe una etiqueta llamada code que sirve para hacer mas legible nuestro codigo  :-X
Me lo has quitado de la boca... xD
Code y poned code=java para que haga 'higthligth' ( :xD ) en el lexico del programa.

Saludos


Título: Re: cifrar ayuda
Publicado por: Leyer en 17 Diciembre 2009, 20:07 pm
tranki jeje entonces no me respondiste"para que guardarlo en el texto.txt cuando lo puedes guarda de una ves al cifrar.txt" :P


Título: Re: cifrar ayuda
Publicado por: cyberserver en 5 Enero 2010, 06:45 am
tararara usa Xor

sintaxis ^

Investigale esta mejor que crear un algoritomo de encriptacion!!!! ;D


Título: Re: cifrar ayuda
Publicado por: Leyer en 5 Enero 2010, 06:47 am
puff eso si se le haria dificil este se lo hice por que nunca encontro forma de hacerlo solo pero como dices creo que la tiene dificil :xD

Saludos.