Proteggi le applicazioni JavaSE

Video di avvio

▶️ YouTube

▶️ Bilibili

Scarica

Visitahttps://protector4j.com/downloadper scaricare l'ultima versione

Installazione

Windows e Linux

Non ci sono passaggi speciali per l'installazione, basta scaricare l'archivio ed estrarlo.

macOS

Scarica il file dmg e trascina Protector4J su Applications. I contenuti effettivi di questo strumento sono presenti/Applications/Protector4J.app/Contents/protector4j-mac

Crittografa le applicazioni JavaSE con strumenti GUI

Vai alla cartella Protector4J, eseguip4j-ui[.exe], vedrai la seguente interfaccia utente.

Per gli utenti macOS, è sufficiente fare doppio clic su Protector4J.app come una normale applicazione Mac.

Accesso

Se hai già acquistato la licenza, fai clic sul pulsante di accesso nell'angolo in alto a destra e inserisci le informazioni utente. Se non disponi di una licenza, puoi comunque provare questo strumento.

Seleziona il tipo di applicazione

Fare clic sul pulsante "Applicazione JavaSE" nella pagina del tipo di applicazione.

Seleziona il file jar/war che deve essere criptato

Seleziona i file jar/war che desideri crittografare, puoi selezionare uno o più file

Opzioni

Solo crittografare i file jar

Crittografare solo i file jar, senza distribuire l'intero file jre. Questa opzione viene solitamente utilizzata in combinazione con la funzionalità KeySeed per aggiornare i programmi esistenti.

Creare file eseguibile

Crea un file eseguibile per avviare l'applicazione, non aggiungere l'estensione .exe.

Console nascosta

Questa opzione è efficace solo per i programmi GUI su Windows e viene utilizzata per nascondere la finestra della riga di comando durante l'esecuzione del programma.

Opzioni JVM

Imposta le opzioni JVM, come -Xmx e -Xms, separate da spazi o interruzioni di riga.

output

Selezione della versione di Java

Scegli la versione di Java, supporta Java 8, Java 11, Java 17 e Java 21

Crea nuova cartella

Selezionata per impostazione predefinita, l'attività di crittografia creerà un file denominato p4j-[task-id] nella cartella di output. Il risultato dell'output viene archiviato in questa cartella.

Incluso JavaFX

Se si tratta di un'applicazione JavaFX, selezionare questa opzione

Applicazione SWT

Se si tratta di un'applicazione SWT, selezionare questa opzione.

KeySeed

Per impostazione predefinita, l'attività di crittografia richiederà una chiave casuale al server per la crittografia. I file generati in attività di crittografia diverse non possono essere utilizzati insieme. Se KeySeed è specificato, lo stesso KeySeed genererà la stessa chiave di crittografia. Questa opzione può essere utilizzata con la precedente opzione "Solo crittografa file Jar" per aggiornare le applicazioni esistenti. Questa opzione è valida solo per gli utenti con licenza.

Esegui attività di crittografia

Attendi qualche istante, una volta completata l'attività di crittografia, puoi vedere il risultato di output dell'applicazione crittografata nella cartella di output.

Esegui applicazioni criptate

Ci sono tre modi per eseguire l'applicazione criptata

  1. Esegui con il file exe

Se la piattaforma di destinazione è Window, è possibile eseguire l'applicazione crittografata con il file eseguibile generato durante l'attività di crittografia.

  1. Esegui con script

Se la piattaforma di destinazione è Linux o macOS, puoi trovare un file di script con il nomeexe-name.sh, è possibile eseguire l'applicazione con questo file di script.

  1. Eseguire il programma con il comando Java tradizionale

Puoi anche eseguire manualmente il programma con vlxjre/bin/java, il formato di questo comando è lo stesso del normale comando Java.

Possiamo vedere una cartella denominata vlxjre nella directory di output, che è il nostro JRE personalizzato, e i file jar crittografati sono archiviati nella cartella vlxlib.

vlxjre/bin/java -jar vlxlib/xxx.jar
vlxjre/bin/java -cp vlxlib/xxx.jar MainClass
vlxjre/bin/java -cp "vlxlib/*" MainClass
vlxjre/bin/java -Xms512M -Xmx1024m -cp "vlxlib/*" MainClass

Java 8 attualmente non supporta l'esecuzione tramite vlxjre/bin/java -jar. Utilizzare vlxjre/bin/java -cp xx MainClass

Avvisi

Se la piattaforma di destinazione di questo programma è macOS o Linux, ma è stato compilato su Windows, eseguireadd-executable-permission.sh sulla piattaforma di destinazione per concedere l'autorizzazione di esecuzione al programma prima del primo avvio.

Modifica i parametri JVM del file exe

Windows

Se è necessario modificare i parametri JVM del file exe, modificareexe-name.json e modificare i valori nell'array JArgs.

"JArgs": [
  "-DParam1=value1",
  "-DParam2=value2"
]

Linux e macOS

Basta aprire il file script e aggiungere o modificare i parametri JVM.

Crittografa le applicazioni JavaSE con lo strumento CLI.

File di configurazione

Lo strumento CLI deve specificare un file di attività come parametro.

Vai alprotector4j/task-templatescartella, trovarejava-task.yml, copiarne e modificarne uno.

# Available values: 8,11,17,21
javaVersion: 17

# The jar files that need to be encrypted
jarFiles: []
# Only encrypt the jar files, do not deploy the runtime
# This option is used while upgrading an existing application
onlyEncryptJarFiles: false

## [ Executable file information ]
# The executable file name
exeFileName: ''
# Hide command line window, only valid for Windows
hideConsole: false
# The main class of this Java Application
mainClass: ''
# The splash image
splash: ''
# JVM Options
jvmOptions: []

## [ Output Options ]
# The output folder
outputFolder: ''
# Create a new and unique folder for the application, the folder name is like p4j-<taskId>
createNewFolder: true
# Whether this is a JavaFX application
includeJavaFX: false
# Whether this a swt gui application
swtApplication: false
# Fixed key seed, only avaiable for licensed user
# Jars encrypted in different tasks can be used together with same key seed
keySeed: ''
# The target platforms
# available values: [win, linux, mac] or empty for current platform
platforms: []

Esegui l'attività di crittografia.

Vai alla cartella Protector4J ed esegui il seguente comando.

Linux o macOS

Per gli utenti macOS, puoi trovare lo strumento CLI su/Applictions/Protector4J.app/Contents/protector4j-mac.

./p4j -t java -f path-of-task-file

Windows

p4j -t java -f path-of-task-file

Puoi eseguirep4j --help per visualizzare i parametri dettagliati.

Esegui con le informazioni dell'account

./p4j -t java -f path-of-task-file -u email -p password

Visualizza risultati

Una volta completata l'attività di crittografia, vai alla cartella di output per verificare i risultati.

Esegui applicazioni criptate

Ci sono tre modi per eseguire l'applicazione criptata

  1. Esegui con il file exe

Se la piattaforma di destinazione è Window, è possibile eseguire l'applicazione crittografata con il file eseguibile generato dall'attività di crittografia.

  1. Esegui con script

Se la piattaforma di destinazione è Linux o macOS, puoi trovare un file di script con il nomeexe-name.sh, è possibile eseguire l'applicazione con questo file di script.

  1. Eseguire il programma con il comando Java tradizionale

Puoi anche eseguire manualmente il programma con vlxjre/bin/java, il formato di questo comando è lo stesso del normale comando Java.

Possiamo vedere una cartella denominata vlxjre nella directory di output, che è il nostro JRE personalizzato, e i file jar crittografati sono archiviati nella cartella vlxlib.

vlxjre/bin/java -jar vlxlib/xxx.jar
vlxjre/bin/java -cp vlxlib/xxx.jar MainClass
vlxjre/bin/java -cp "vlxlib/*" MainClass
vlxjre/bin/java -Xms512M -Xmx1024m -cp "vlxlib/*" MainClass

Java 8 attualmente non supporta l'esecuzione tramite vlxjre/bin/java -jar. Utilizzare vlxjre/bin/java -cp xx MainClass

Avvisi

Se la piattaforma di destinazione di questo programma è macOS o Linux, ma è stato compilato su Windows, eseguireadd-executable-permission.sh sulla piattaforma di destinazione per concedere l'autorizzazione di esecuzione al programma prima del primo avvio.