trucosjakartaee
  • Introduction
  • Creditos
  • Jar to Exe
  • Primefaces security
  • Primefaces Responsive
  • Leer archivos en una linea de codigo
  • Logger Crear archivo JSOn
  • Cifrar Archivos y Licencias
    • Cifrar Archivos y Encriptar Textos
    • Licencias
  • JSON-P Leer arhivos
  • Apache Derby
  • Migrar a Java 11
  • jmoordbjsf
    • 1. Controller
      • 1.1 Definicion
      • 1.2 before/after()
      • 1.3 Parametros internos
      • 1.2 init()
        • 1.2.1 Obtener el action en el init()
        • 1.2.3 Asignar el search en el init()
      • 1.3 searchBy()
      • 1.4 <jmoordbjsf:search>
      • 1.5<jmoordbjsf:searchBetweenDate> Busquedas entre fechas.
        • 1.5.1 <jmoordbjsf:searchBetweenDates con <jmoordbjsf:autocomplete>
      • 1.6 handleSelect de autocomplete en list.xhtml
      • 1.7 <p:selectOneMenu> eventos en list.xhtml
      • 1.8 move()
    • 2. Componentes
      • 2.1 <jmoordbjsf:ccstimeline>
      • 2.2 <jmoordbjsf:paginator>
        • 2.2.1 paginator con impresion
    • 3. Historial de revisión
  • Reportes
    • OpenPDF
      • Enlaces
      • Introduccion
      • Reportes con ReportUtils.java
      • Reporte con ReportUtils y <jmoordbjsf:paginator>
      • Turoriales
      • Informe con 6 columnas
      • Tamaño de pagina
      • Centrar en el reporte
      • Margenes
      • Fuentes en las celdas
      • Formatear Fechas
      • Imagenes
      • grupos
      • subreportes
      • firmar pdf
      • Agregar autor al pdf
      • Reporte simple
    • iReport
    • Imprimir condicional
    • DynamicReports
    • iText
    • PDFBox
    • JaspertReport from code
    • Nerval Reports
    • DynamicJasper
    • Eclipse birt
  • Overview
    • jmoordb web
      • Autoincrementable
        • Autoincrementable
        • Generar autoincrementable para múltiples tiendas relacionadas sin @Referenced
        • Login
          • Login simple
          • Login con Multiples roles
          • Obtener el Ip del cliente
          • Generar el UUID
          • Session Expirada redirigir automaticamente
        • Password
          • Cambiar password
          • Encriptar password
        • Usuario
          • Usuario con un solo Rol
          • Usuario con multiples roles
    • JavaEE
      • Java Security EE
        • Validar paginas
      • Email
        • Enviar emails formateados
        • CompletableFuture para envio de emails
        • Emails con copias cc, bcc
      • JPA
        • <p:autocomplete> con JPA
        • <p:autocomplete> JPA con eventos
        • <p:autocomplete> JPA con Integer
        • <p:autocomplete> JPA con scroll
        • <p:autocomplete> con Converter
    • Java Server Faces
      • eliminar bordes de <p:fieldSet>
      • reset
      • commandButton verdes
      • JsfUtil.updateJSFComponent(componente)
      • <p:growl> Centrado
      • <p:fieldSet>
      • Actualizar componente primefaces desde codigo Java
      • Codigo barra/QR
        • codigosbarra
        • Generar/Leer Codigo QR
        • Scanner un codigo QR con primefaces
      • Barra de progreso y bloqueo para procesos muy largos
      • Dialogo
        • Centrar Dialog
        • Cerrar dialogo desde código
        • Invocar dialogo desde codigo
        • dialogconfirm
        • Cambiar los colores del Dialog
        • Modal
        • Dialogo con <p:schedule>
      • Menu
        • <b:navCommandLink/>
        • Eventos de menu
        • CommandLink con parametros en menu
        • Usar <b:flyOutMenu>
        • Menus dinámicos mediante <p:repeat
        • Filtrar desde el menu dinamico
      • Message
        • Cerrar automaticamente messages
      • inputText
        • inputTextArea Scroll
        • Bloquear tecla Enter inputText
        • Validar rangos
        • Convertir a mayusculas
        • eventos en el inputText
      • outputLabel
        • Mostrar un icono en un outputLabel
      • selectOneMenu
        • <b:selectOneMenu String
        • <b:selectOneMenu> eventos Ajax
        • <p:selectOneMenu eventos
        • <b:selectOneMenu sin converter
        • concatenar String
        • <f:selectItem>
        • <b:selectOneMenu relacionados
        • <b:selectOneMenu> simple
        • <b:selectOneMenu> formulario view.xhtml
        • mesSelectOneMenu
        • Ajustar el tamaño
      • Datatable
        • DataTable Agrupados y rowExpansion
        • Saber que columna se edita
        • tamaño de columnas
        • Marcar como vistos
        • <p:datatable> con <p:autocomplete>
        • <p:repeat> con dataTable
        • <p:repeat> en un componente
        • <p:datatable> con exporter
        • Mostrar un datatable dentro de un dialogo
        • Filas coloreadas
        • Reflexion para contar valores en un datatable
        • Datatable con paginacion
        • <p:datatable> expandableRowGroups
        • <p:datatable> columnas agrupadas
        • color columna
        • <b:datatable> con dialogs
        • Busquedas
        • <b:datatable> con colores en las filas
        • <b:datatable> filtrado por el Agente seleccionado
        • <b:datatable> Filtrado por el usuario logueado
        • <b:dataTable con repeat para atributos List<>
      • Autocomplete
        • autocomplete insertar nuevos valores
        • Componente autocomplete
        • Autocomplete con findRegex() Expresiones Regulares
        • <p:autocomplete> multiple
        • Autocomplete con findText
        • Autocomplete relacionados
        • <p:autocomplete> con Integer y String
        • Autocomplete con dropdwon
        • Autocomplete con minQueryLength=
        • Autocomplete Relacionados con dropdown (Provincia- distrito)
        • Cambiar color <p:autocomplete>
        • <p:autocomplete> Multiples relacionados
        • <p:autocomplete Usuarios por multiples Roles
        • <p:autocomplete> Multiples dropdown="true" relacionados con
        • <p:autocomplete> con lambda stream
        • Autocomplete
        • Con Rangos de fechas
          • Autocomplete con rangos de fechas excluyendo el registro actual
      • Iconos e imagenes
        • <p:commandLink> con imagenes
        • <p:commandButton> con imagenes
        • <h:graphicImage>
      • Paso de parametros
        • Desde un <p:commandLink>
        • Desde un <p:button>
      • Ajax
        • Eventos
        • Eventos al cargar pagina
      • Datagrid
        • Quitar bordes con poseidon
        • <p:datagrid>
      • Tabs
        • Diseñar tabs
      • Notificaciones
        • Notificaciones
        • Notificaciones en la barra
      • Graficas
        • <p:chart> pie
        • <p:char> pie por varios atributos
      • Ommifaces
        • Untitled
        • Ejecutar Comando
    • Formatos y Fechas
      • Formatear fechas y horas en un String para un datatable
      • Formatear decimales
      • Formatear fecha
      • Formateo de fechas y horas por separado
      • outputLabel formateado
    • Fechas
      • Primer/Ultimo dia en fechas del mes
      • Insertar horas minutos y segundos a una fecha
      • validarRangoFechas
      • Determinar el numero de meses entre fechas
      • Descomponener una fecha
      • Obtener el nombre del dia
      • Calcular dias entre fechas
      • Operaciones con fechas
      • Filtrar por dias Atrasados
      • Fecha actual
      • Primer dia y ultimo dia del mes de la fecha actual
      • Sumar mes a fecha actual
      • Fechas null
      • Conocer si alguien esta de vacaciones
      • Formatear una fecha
      • Si cumple años
      • Filtrar cumpleaños en JPA
      • <a:searchBetweenDate> Filtrar entre Fechas
      • Mostrar los que estan de vacaciones en un mes
      • Calcular numero de días de vacaciones del mes
      • Comparar Fechas
      • Mostrar fecha y hora en un datatable
      • Validar que la Hora no sea cero
      • F iltrar entre fechas de un List<Entity>
      • Búsquedas por Día filterDayWithoutHour()
      • Validar fechas y horas
      • Validar meses superiores en Cierre
      • Primera y ultima fecha del Mes
      • <p:calendar>
        • eventos-en-el-pcalendar
        • Eventos en el <p:calendar> /EntreFechas
        • Eventos en el <p:calendar> entre fechas
      • HoraMinutos formato AM/PM de una fecha
        • Google Calendar
    • Rangos de Fechas
      • Encontrar si esta disponible entre dos fechas en rangos de fechas inicial y final con filtro adicion
      • Buscar una fecha y hora en un rango
      • Actualizar las fechas en rango de dos fechas y validar los disponibles excluyendo el entity actual
      • filterBetweenDatePaginationWithoutHour()Buscar en rangos de fechas excluyendo la hora con paginacion
    • Generales
      • Habilitar Empty
    • Mongodb
      • Combinar bases de datos
      • Referencias en bases datos distintas
      • Crear bases de datos en tiempo de ejecucion
      • Agregar campos autoincrementables, renombrar campos
      • Transacciones
    • Controller
      • Filtrar desde el list.xhtml
      • ChoferController.java
      • ReservadoController.java
      • OrdenController.java
      • ModeloController.java
      • Validar null
    • Formularios
      • Relaciones con atributos no Referenciados
      • Maestro-Detalle Orden de Proveedor a Bodega
      • Dos campos como campo llave
      • Crear registros de entitys diferentes en el mismo formulario
      • Formulario con llave secundaria sin mostrar autoincrementable
      • Cambiar numero de cedula
      • Formulario referenciado (Grupoarticulo->Modelo)
      • Usuario
      • Facturas
        • Factura codigo xhtml
        • FacturaController.java
      • Maestro-Detalle Factura
      • Formulario sin componente new
      • Solo formulario new.xhtml no usar list.xhtml ni el view.xhtml
    • JmoordbLanguages
    • JmoordbResourcesFiles
      • Pasarlos a un services
    • list.xtml
      • Filtrar por un entity Referenciado
      • Formularios con Ordenacion
      • Filtrar por atributos referenciados
      • <a:searchYesNo>
    • Entity
    • Services
    • Blogs
      • Java
      • Mongodb
    • Glassfish
    • PDF
      • Download
    • Links
    • Ubuntu
      • Minimizar aplicaciones en Ubuntu con un solo clic
      • Maven
      • Reiniciar GnomeShell
    • Databases
      • Ranking
    • Tutoriales JavaEE 8
    • Busquedas en List<> Embebidos y Referenciados
      • Buscar en un List<> en cualquier posicion usando and y or
      • Buscar elemento en un List<> Embebido/Referenciado
      • Limpiar autocomplete y otros filtros
      • Filtrar embebidos referenciados de forma inversa
      • Buscar en un List<Viaje> dentro de Solicitud
    • Search
    • Eventos
      • Escuchar eventos
      • Eventos
    • Microservicios
      • Microservicios con Java EE Jakarta
    • Java
      • Copiar Beans
      • List
        • Ordenar una List Java 8
        • Filtrar un List<> con Stream
        • Encontrar un elemento en un List con Lambda/Stream
      • List<Object>
      • Método retorna List<Object>
      • Mock
        • Disenos online
      • Brownies Collections
      • Batch
      • Maven
        • Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.3:exploded (default-cli) on proje
      • NetBeans
        • Colapsar codigo
      • Formatear String
      • Lambda/Stream
      • Filtrar de varias listas
      • stream
      • lambda /stream
      • Patrones de Diseño
        • Builder Desing Pattern
    • Primefaces
      • PhotoCam
        • Tomar foto
      • Schedule
        • <p:scheduler> con paginacion
        • <p:schedule> LazyScheduleModel
        • <p:schedule> con filtros autocomplete
        • <p:schedule> con GMT-5 para Panama
        • <p:schedule> con dialogos
        • Colores en <p:schedule>
        • <p:schedule> con dialogos diferentes en el mismo evento
        • <p:schedule con <p:ajax event="viewChange">
        • <p:schedule> imprimir
      • Dashboard
        • Dashboard basico <p:knob
          • <p:knob>
          • Dashboard con link <p:knob
        • Dashboard <p:knob> <b:bagde>
        • Dashboard con Paneles
      • <p:chips>
        • <p:chips> simple
      • <p:dataGrid
    • Entity Configuración
    • Arquitectura
      • Project ejb
      • Proyecto Web
      • Pasos al crear un entity
      • list.xhtml
      • new.xhtml
      • view.xhtml
    • BitBucket/NetBeans
      • Crear Ramas desde Bitbucket
      • Crear rama desde NetBeans
      • Cambiar ramas desde NetBeans
      • Push a una rama
      • Permisos a una rama
      • Clonar una rama
      • Crear un pull request bitbucket
      • Recuperar una revisión git desde Bitbucket
    • Controller
      • Atributos
      • set/get
      • constructor
      • init
      • preRenderView
      • reset
      • prepare
      • showAll
      • isNew
      • save
      • edit
      • delete
      • deleteAll
      • print
      • printAll
      • handleSelect
      • handleAutocompleteOfListXhtml
      • last
      • first
      • next
      • back
      • skip
      • move
      • clear
      • searchBy(String string)
    • Componentes
      • JsfUtil.updateJsfComponent()
    • Genericos implementar en un Controller
    • LambdaMetaFactory
    • Patrones
    • @Producer Reducir Repository
  • Cierre Mensual
    • Cierre mensual
  • fontAwesome Local
    • fontAwesome Local
  • Componentes
    • Componentes JSF
      • <a:paginatorReport>
      • Distribuir componentes Java Server Faces
      • Crear composite distribuible con Maven
      • Clases como parámetros y métodos en el composite
      • Agregar css
  • LambdaMetaFactory
    • LambdaMetaFactory
      • <jmoordbjsf:Ajax Status>
      • Invocar metodos desde un controller
  • Patrones de Diseño
    • Patrones de Diseño
    • Builder
  • @Producer Reducir Repository
    • @Producer Reducir Repository
    • Validar en el inicio del controller con nuevo esquema
    • AdminFaces
      • include
      • template
      • resources
      • web.xml
    • Cargar archivo propiedades
    • Maven Crear arquetipo en base a un proyecto
      • Configurar path maven
      • archivo settings.xml
      • Crear arquetipo desde NetBeans
      • Crear el arquetipo desde consola
      • Crear el proyecto en base al arquetipo
      • Clonar adminfaces archetype
    • PayaraMicro
    • Archivos de propiedades con adminfaces
  • Web Socket
    • WebSocket
      • Web Socket
        • dependencias
        • web.xml
        • Archivos de configuracion
        • Pushsocket
        • index.xhtml
        • reciver.xhtml
        • Ejecutarlo
      • WebSocket en menu con <:remoteCommand>
        • top.xhtml
        • template.xhtml
        • web.xml
        • Clases
        • ConfigurationContoller.java
        • PushSocket.java
        • Mensajes.java
      • WebSocket con Notificaciones en bases de datos
        • pom.xml
        • web.xml
        • template.xthml
        • top.xhtml
        • index.xhtml
        • LoginController.java
        • PushSocket.java
        • JmoordbNotificationsController.java
        • list.xhtml
        • Enviar notificaciones todos los usuarios
    • Pagina de Inicio en Java EE
    • Control de Viajes
      • Generar pasajeros por viajes
        • validarRangoFechas
    • Vehiculos recomendados
  • DBUtils
  • Archivos Properties
  • MICROSERVICES
    • MICROSERVICES
      • Archivos properties con Producer
      • Archivos Properties con @Inject
Powered by GitBook
On this page
  • Cifrar Archivo
  • Encriptar Texto
  • Desencriptar Texto
  • Cifrar el archivo license.json
  • DESENCRIPTAR ARCHIVO
  • Dependencia archivo pom.xml
  • Pagina index.html
  • Controller

Was this helpful?

  1. Cifrar Archivos y Licencias

Cifrar Archivos y Encriptar Textos

PreviousCifrar Archivos y LicenciasNextLicencias

Last updated 5 years ago

Was this helpful?

Muchas veces necesitamos encriptar archivos para protegerlos.

Clonarlo
git clone https://avbravo@bitbucket.org/avbravo/fiscalencripter.git

Gracias al blog publicado

Implementamos dentro de jmoordbutils los metodos para encriptar los archivos,

Cifrar Archivo

Deseamos cifrar el archivo license.json

Creamos una aplicación Web

Encriptar Texto

Desencriptar Texto

Cifrar el archivo license.json

Deseamos cifrar el archivo license.json ubicado en el directorio /home/avbravo/Descargas/

Seleccionar CIFRAR ARCHIVOS

Nos solicita el path con nombre de archivo a cifrar

El path del directorio donde se guardara los archivos cifrados

El nombre y path del archivo zip a generar con los archivos cifrados.

Rellenamos los datos y dar clic en Cifrar File

Nos genera los archivos

DESENCRIPTAR ARCHIVO

Para desencriptar indicamos tres archivos generados en la encriptacion y la extension del archivo a desenciptar

al dar clic en Desencriptar File.

se genera el archivo _decrytper, que contiene el archivo desencriptado.dentro de la carpeta license

Se descomprime el archivo authorizedlicense,zip

Dependencia archivo pom.xml

  <dependency>
            <groupId>com.github.avbravo</groupId>
            <artifactId>jmoordbutils</artifactId>
            <version>0.67</version>
        </dependency>

Pagina index.html

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://xmlns.jcp.org/jsf/html"
      xmlns:p="http://primefaces.org/ui">
    <h:head>
        <title>Facelet Title</title>
    </h:head>
    <h:body>
        <h:form id="form" prependId="false">
            <p:growl id="growl"/>
            <p:fieldset legend="ENCRIPTAR TEXTO" style="margin-bottom:20px" toggleable="true" collapsed="true">
                <p:panelGrid columns="3">
                    <p:outputLabel value="Texto"/>
                    <p:inputText value ="#{encriptadorController.texto}" size="50"/>
                    <p:commandButton value="Encriptar" icon="fa fa-lock" action="#{encriptadorController.encriptar()}"
                                     update=":form"  />


                    <p:outputLabel value="Resultado"/>
                    <p:outputLabel value="#{encriptadorController.resultadoEncriptado}"/>

                </p:panelGrid>
            </p:fieldset>
            <p:fieldset legend="DESENCRIPTAR TEXTO" style="margin-bottom:20px" toggleable="true" collapsed="true">
                <p:panelGrid columns="3">
                    <p:outputLabel value="Texto"/>
                    <p:inputText value ="#{encriptadorController.textoParaDesencriptar}" size="50"/>

                    <p:commandButton value="Desencriptar" icon="fa fa-unlock" action="#{encriptadorController.desencriptar()}"
                                     update=":form"  />

                    <p:outputLabel value="Resultado"/>
                    <p:outputLabel value="#{encriptadorController.resultadoDesencriptado}"/>

                </p:panelGrid>
            </p:fieldset>




            <p:fieldset legend="CIFRAR ARCHIVOS" style="margin-bottom:20px" toggleable="true" collapsed="true">
                <p:outputLabel value="File Cipher"/>
                <p:panelGrid columns="3">
                    <p:outputLabel value="Ârhivo con path"/>
                    <p:inputText value ="#{encriptadorController.archivo}" size="50"/>
                    <p:spacer/>

                    <p:outputLabel value="Llave de cifrado"/>
                    <p:inputText value ="#{encriptadorController.keyCifrado}" size="50"/>
                    <p:commandButton icon="fa fa-file-zip-o" value="Cifrar File" action="#{encriptadorController.encriptarFile()}"
                                     update=":form"  />
                    <p:spacer/>
                    <p:fieldset legend="ARCHIVOS GENERADOS" style="margin-bottom:20px"  collapsed="false">
                        <p:panelGrid columns="2">
                            <p:outputLabel value=".enc"/>
                            <p:outputLabel value="#{encriptadorController.fileEnc}"/>
                            <p:outputLabel value="iv.enc"/>
                            <p:outputLabel value="#{encriptadorController.fileIvEnc}"/>
                            <p:outputLabel value=".des"/>
                            <p:outputLabel value="#{encriptadorController.fileDes}"/>
                        </p:panelGrid>
                    </p:fieldset>


                </p:panelGrid>
            </p:fieldset>

            <p:fieldset legend="DESENCRIPTAR ARCHIVOS" style="margin-bottom:20px" toggleable="true"  collapsed="true"> 
                <p:outputLabel value="File Desencripter"/>
                <p:panelGrid columns="3">
                    <p:outputLabel value="path file.enc"/>
                    <p:inputText value ="#{encriptadorController.fileEncParaDesencriptar}" size="50"/>
                    <p:spacer/>
                    <p:outputLabel value="path fileiv.enc"/>
                    <p:inputText value ="#{encriptadorController.fileIvEncParaDesencriptar}" size="50"/>
                    <p:spacer/>
                    <p:outputLabel value="path file.des"/>
                    <p:inputText value ="#{encriptadorController.fileDesParaDesencriptar}" size="50"/>
                    <p:spacer/>
                    <p:outputLabel value="Extension of File"/>
                    <p:inputText value ="#{encriptadorController.extension}" size="50"/>
                    <p:spacer/>
                    <p:outputLabel value="Llave de cifrado"/>
                    <p:inputText value ="#{encriptadorController.keyDesCifrado}" size="50"/>
                    <p:commandButton icon="fa fa-file-text-o" value="Desencriptar File" action="#{encriptadorController.desencriptarFile()}"
                                     update=":form"  />

                    <p:outputLabel value="Archivo desencriptado"/>
                    <p:outputLabel value="#{encriptadorController.archivoDesencriptado}"/>

                </p:panelGrid>

            </p:fieldset>

        </h:form>
    </h:body>
</html>

Controller

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.javscaz.fiscalweb.fiscalencripter;

import com.avbravo.jmoordbutils.JsfUtil;
import com.avbravo.jmoordbutils.fileencripter.FileDecryption;
import com.avbravo.jmoordbutils.fileencripter.FileEncryption;
import javax.inject.Named;
import javax.enterprise.context.SessionScoped;
import java.io.Serializable;

/**
 *
 * @author avbravo
 */
@Named(value = "encriptadorController")
@SessionScoped
public class EncriptadorController implements Serializable {
private String texto;
private String textoParaDesencriptar;
private String resultadoEncriptado="";
private String resultadoDesencriptado="";
private String  keyCifrado="a3*%b!Rm1_xS1TkjAWs3";
private String  keyDesCifrado="a3*%b!Rm1_xS1TkjAWs3";
private String archivo="/home/avbravo/Descargas/";
private String archivoDesencriptado="";

    public String getArchivoDesencriptado() {
        return archivoDesencriptado;
    }

    public void setArchivoDesencriptado(String archivoDesencriptado) {
        this.archivoDesencriptado = archivoDesencriptado;
    }


String fileEnc="";
String fileIvEnc="";
String fileDes="";

String fileEncParaDesencriptar="/home/avbravo/Descargas/";
String fileIvEncParaDesencriptar="/home/avbravo/Descargas/";
String fileDesParaDesencriptar="/home/avbravo/Descargas/";




String password="/home/avbravo/Descargas/";;
String extension="json";

    public String getTextoParaDesencriptar() {
        return textoParaDesencriptar;
    }

    public void setTextoParaDesencriptar(String textoParaDesencriptar) {
        this.textoParaDesencriptar = textoParaDesencriptar;
    }







    public String getKeyCifrado() {
        return keyCifrado;
    }

    public void setKeyCifrado(String keyCifrado) {
        this.keyCifrado = keyCifrado;
    }

    public String getKeyDesCifrado() {
        return keyDesCifrado;
    }

    public void setKeyDesCifrado(String keyDesCifrado) {
        this.keyDesCifrado = keyDesCifrado;
    }

    public String getFileDes() {
        return fileDes;
    }

    public void setFileDes(String fileDes) {
        this.fileDes = fileDes;
    }

    public String getResultadoEncriptado() {
        return resultadoEncriptado;
    }

    public void setResultadoEncriptado(String resultadoEncriptado) {
        this.resultadoEncriptado = resultadoEncriptado;
    }

    public String getResultadoDesencriptado() {
        return resultadoDesencriptado;
    }

    public void setResultadoDesencriptado(String resultadoDesencriptado) {
        this.resultadoDesencriptado = resultadoDesencriptado;
    }





    public String getFileEnc() {
        return fileEnc;
    }

    public void setFileEnc(String fileEnc) {
        this.fileEnc = fileEnc;
    }

    public String getFileIvEnc() {
        return fileIvEnc;
    }

    public void setFileIvEnc(String fileIvEnc) {
        this.fileIvEnc = fileIvEnc;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getExtension() {
        return extension;
    }

    public void setExtension(String extension) {
        this.extension = extension;
    }

    public String getFileEncParaDesencriptar() {
        return fileEncParaDesencriptar;
    }

    public void setFileEncParaDesencriptar(String fileEncParaDesencriptar) {
        this.fileEncParaDesencriptar = fileEncParaDesencriptar;
    }

    public String getFileIvEncParaDesencriptar() {
        return fileIvEncParaDesencriptar;
    }

    public void setFileIvEncParaDesencriptar(String fileIvEncParaDesencriptar) {
        this.fileIvEncParaDesencriptar = fileIvEncParaDesencriptar;
    }

    public String getFileDesParaDesencriptar() {
        return fileDesParaDesencriptar;
    }

    public void setFileDesParaDesencriptar(String fileDesParaDesencriptar) {
        this.fileDesParaDesencriptar = fileDesParaDesencriptar;
    }






    public String getArchivo() {
        return archivo;
    }

    public void setArchivo(String archivo) {
        this.archivo = archivo;
    }









    public String getTexto() {
        return texto;
    }

    public void setTexto(String texto) {
        this.texto = texto;
    }

   

    /**
     * Creates a new instance of EncriptadorController
     */
   
    public EncriptadorController() {
    }
    
    
    // <editor-fold defaultstate="collapsed" desc="String encriptar()">
    public String encriptar(){
        try {
             
            if(texto == null || texto.isEmpty()){
                JsfUtil.warningDialog("Advertencia", "Ingrese el texto");
            }
            else{
                resultadoEncriptado = JsfUtil.encriptar(texto);
            }
                    
        } catch (Exception e) {
            JsfUtil.errorDialog("Error", e.getLocalizedMessage());
        }
        return "";
    }
    // </editor-fold>
    
    
    // <editor-fold defaultstate="collapsed" desc="String desencriptar()">
    public String desencriptar(){
        try {
            if(texto == null || texto.isEmpty()){
                JsfUtil.warningDialog("Advertencia", "Ingrese el texto");
            }
            else{
                resultadoDesencriptado = JsfUtil.desencriptar(textoParaDesencriptar);
            }
                    
        } catch (Exception e) {
            JsfUtil.errorDialog("Error", e.getLocalizedMessage());
        }
        return "";
    }
    
    // </editor-fold>
    
    // <editor-fold defaultstate="collapsed" desc="String encriptarFile()">
    public String encriptarFile(){
        try{
            if(FileEncryption.cifrar(archivo, keyCifrado)){
               JsfUtil.successMessage("Se encripto archivo");
                 fileEnc= archivo.substring(0, archivo.lastIndexOf('.'))+".enc";
                fileIvEnc = archivo.substring(0, archivo.lastIndexOf('.'))+"iv.enc";
                fileDes = archivo.substring(0, archivo.lastIndexOf('.'))+".des";
           
                 fileEncParaDesencriptar= archivo.substring(0, archivo.lastIndexOf('.'))+".enc";
                fileIvEncParaDesencriptar = archivo.substring(0, archivo.lastIndexOf('.'))+"iv.enc";
                fileDesParaDesencriptar = archivo.substring(0, archivo.lastIndexOf('.'))+".des";
           
               extension = archivo.substring(archivo.lastIndexOf('.')+1, archivo.length());
           
            }else{
                JsfUtil.warningMessage("No se encriptp el archivo");
            }
          } catch (Exception e) {
            JsfUtil.errorDialog("encriptarFile()", e.getLocalizedMessage());
        }
        return "";
    }
    
    // </editor-fold>
    
    // <editor-fold defaultstate="collapsed" desc="String desencriptarFile()">
    public String desencriptarFile(){
        try{
       
            if(FileDecryption.desencriptarFile(fileEncParaDesencriptar, fileIvEncParaDesencriptar, fileDesParaDesencriptar, keyDesCifrado, extension)){
               JsfUtil.successMessage("Se desencripto archivo");
                archivoDesencriptado= fileEncParaDesencriptar.substring(0, fileEncParaDesencriptar.lastIndexOf('.'))+"_decrypted."+extension;
            }else{
                JsfUtil.warningMessage("No se desencriptp el archivo");
            }
         
          } catch (Exception e) {
            JsfUtil.errorDialog("desencriptarFile()", e.getLocalizedMessage());
        }
        return "";
    }
    
    // </editor-fold>
}
Java File Encryption Decryption using AES Password Based Encryption (PBE) - JavapapersJavapapers
Logo