elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 01:53  


Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java (Moderadores: Debci, Leyer)
| | | |-+  Mirando se Aprende.......... (Ejemplos Java)
0 Usuarios y 2 Visitantes están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Mirando se Aprende.......... (Ejemplos Java)  (Leído 7,443 veces)
alvk4r

Desconectado Desconectado

Mensajes: 93


Casi...


Ver Perfil WWW
Criptografia Base64
« Respuesta #15 en: 5 Julio 2007, 14:28 »

Bueno, no recuerdo si era aca o en el foro de C++, alguien inquiriendo por un programa que permitiese cifrar usando el algoritmo de base64. Aca les dejo un ejemplo que saque del libro Java Cryptography. Aunque la clave la genera y guarda en un fichero, y solo cifra cadenas pasadas como argumentos al programa, es facilmente modificable, para que introduzcamos nosotros la llave, y en vez de cifrar/descifrar argumentos de la linea de comandos, hagamos eso con ficheros...

Código
//Fuente: Java Cryptography
//Uso:
     /* cifrar:
           java SecretWriting -e [cadena_texto_plano]
         descifrar:
           java SecretWriting -e [cadena_texto_cifrada]
     */

import java.io.*;
import java.security.*;
import javax.crypto.*;
import sun.misc.*;
public class SecretWriting {
 public static void main(String[] args) throws Exception {
// Check arguments.
   if (args.length < 2) {
     System.out.println("Uso: SecretWriting -e || -d [text]");
     return;
   }
// Get or create key.
   Key key;
   try {
     ObjectInputStream in = new ObjectInputStream(
     new FileInputStream("SecretKey.ser"));
     key = (Key)in.readObject();
     in.close();
     }
   catch (FileNotFoundException fnfe) {
     KeyGenerator generator = KeyGenerator.getInstance("DES");
     generator.init(new SecureRandom());
     key = generator.generateKey();
     ObjectOutputStream out = new ObjectOutputStream(
     new FileOutputStream("SecretKey.ser"));
     out.writeObject(key);
     out.close();
   }
// Get a cipher object.
   Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding");
// Encrypt or decrypt the input string.
   if (args[0].indexOf("e") != -1) {
     cipher.init(Cipher.ENCRYPT_MODE, key);
     String amalgam = args[1];
     for (int i = 2; i < args.length; i++)
       amalgam += " " + args[i];
     byte[] stringBytes = amalgam.getBytes("UTF8");
     byte[] raw = cipher.doFinal(stringBytes);
     BASE64Encoder encoder = new BASE64Encoder();
     String base64 = encoder.encode(raw);
     System.out.println(base64);
   }
   else if (args[0].indexOf("d") != -1) {
     cipher.init(Cipher.DECRYPT_MODE, key);
     BASE64Decoder decoder = new BASE64Decoder();
     byte[] raw = decoder.decodeBuffer(args[1]);
     byte[] stringBytes = cipher.doFinal(raw);
     String result = new String(stringBytes, "UTF8");
     System.out.println(result);
   }
 }
}
 


En línea

El poder corrompe, el poder absoluto corrompe absolutamente.
egyware


Desconectado Desconectado

Mensajes: 436


GameDeveloper


Ver Perfil WWW
Re: Algoritmo de ordenacion de burbuja ++
« Respuesta #16 en: 16 Agosto 2007, 01:02 »

Bueno, se que existe un metodo al que le pasas el array, y este lo ordena, pero no lo recuerdo, no obstante, conocer este algoritmo no esta de mas.

Si exite uno yo tampoco me acuerdo como se llama pero la lista de array a ordenar debe implementar Comparable y ese implementa un metodo llamado int compareTo(object  o) bueno ahi uno especifica como decir si es igual o mayor o menor (0 para igual  1 para mayor y -1 menor) y es algo asi bueno estan buenos tus ejemplos no los habia visto bien


En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ejercicios Java [Teoría+Ejemplos]
Java
Gospel 8 480,644 Último mensaje 30 Noviembre 2011, 22:29
por Mioshi
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines