G2A Many GEOs
SHARE
TWEET

DescifradoSinClave.java

AlvaroOrtiz Mar 31st, 2020 (edited) 46 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package com.cuarentena;
  7.  
  8. import java.io.*;
  9. import java.util.Scanner;
  10.  
  11. /**
  12.  *
  13.  * @author Álvaro Ortiz Falcón y Arturo Martínez Menor
  14.  */
  15. public class DescifradoSinClave {
  16.  
  17.     public static void main(String[] args) {
  18.  
  19.         Scanner sc = null;
  20.         String palabra[];
  21.         String palabraCifrada;
  22.         FileWriter myobj = null;
  23.         int desplazarletra;
  24.         int contador;
  25.         int contadormax = 0;
  26.         int letraclave = 0;
  27.  
  28.         try {
  29.             File cifrado = new File(args[0]);
  30.             File f1 = new File(cifrado.getName() + ".uncfr");
  31.             sc = new Scanner(cifrado);
  32.             myobj = new FileWriter(f1);
  33.  
  34.             while (sc.hasNextLine()) {
  35.                 palabra = sc.nextLine().split(" ");
  36.                 for (String c : palabra) {
  37.                     char letra[] = c.toCharArray();
  38.                     for (char d : letra) {
  39.                         for (int i = 0; i < 25; i++) {
  40.                             contador = 0;
  41.                             if (Character.getNumericValue(d) - 10 == i) {
  42.                                 contador++;
  43.                             }
  44.                             if (contador > contadormax) {
  45.                                 contadormax = contador;
  46.                                 letraclave = Character.getNumericValue(d) - 10;
  47.                             }
  48.                         }
  49.                     }
  50.                     desplazarletra = (Character.getNumericValue('E') - 10) - letraclave;
  51.                     palabraCifrada = Cifrar.Cifra(desplazarletra, c);
  52.                     myobj.write(palabraCifrada + " ");
  53.                 }
  54.                 myobj.write("\n");
  55.             }
  56.             System.out.println("Archivo descifrado correctamente");
  57.         } catch (Exception e) {
  58.             System.out.println("Vaya... parece que algo no ha salido bien, puede que no se encuentre el archivo especificado o que no funcione el descifrado cosa bastante improbable");
  59.             e.printStackTrace();
  60.         } finally {
  61.             if (sc != null) {
  62.                 sc.close();
  63.             }
  64.             if (myobj != null) {
  65.                 try {
  66.                     myobj.close();
  67.                 } catch (Exception e) {
  68.                     System.out.println("Algo ha salido mal y el fichero no se ha podido cerrar bien revisa el código");
  69.                 }
  70.             }
  71.         }
  72.     }
  73. }
RAW Paste Data
Ledger Nano X - The secure hardware wallet
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top