I made a Java desktop application using Swing (myProg.jar). I currently package my application as .app for my Mac users, and I use InnoSetup to make a setup.exe file for my Windows users. I also provide a myProg.exe wrapper to launch myProg.jar.
Now, to get rid of SmartScreen and other protections from my users computers, I think that I need to sign my application. But the more I read about it, the more confusing it seems to me.
Can anyone clarify some of the following points for me?
1) What kind of certificate do I need exactly? Is there anyway to make it free or at least cheap?
2) What do I need to sign exactly? Should I sign the myProg.jar file, the .app file? The setup.exe? The myProg.exe wrapper? All of them?
3) Solved - How will it work when I will update my program and replace myProg.jar by a new version of myProg.jar?
Thanks a lot!