Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to pass jarsigner.exe passphrase via commandline?

Tags:

jarsigner

I know that this is unsafe, but is there any easy way to pass passphrase to the jarsigner.exe:

jrsigner.exe -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore ...

Enter Passphrase for keystore:

I am running it in batch file.

like image 349
Stepan Yakovenko Avatar asked Feb 01 '17 08:02

Stepan Yakovenko


People also ask

What is the use of jarsigner?

Description. The jarsigner tool has two purposes: To sign Java Archive (JAR) files. To verify the signatures and integrity of signed JAR files.


1 Answers

Well, why do you not simply use the corresponding parameters?

jarsigner -keystore my-keystore -storetype jceks -storepass "test" -keypass "test" my-archive.jar xander 

Broken down into separate lines for better readability (but you have to put all parameters on one line, of course):

jarsigner   -keystore my-keystore    # keystore path name   -storetype jceks         # keystore type (whatever format yours is in)   -storepass "test"        # keystore password   -keypass "test"          # private key password   my-archive.jar           # JAR path name   xander                   # key name (alias) 

Update: Please note with regard to passwords that

  • enclosing passwords in double or single quotes is optional if the passwords contain no special characters.
  • on the Windows command line you have to use double quotes enclosing passwords with special characters such as space. I am mentioning that because someone previously edited my answer and used single quotes which would simply fail on the Windows command line.
  • on UNIX-like systems like Linux or also in the Windows Git Bash or Cygwin you can use both double or single quotes, but with double quotes beware of shell expansion.
like image 192
kriegaex Avatar answered Sep 28 '22 09:09

kriegaex