Help with PGP Encryption details in java

Hey, we have a ftp process that moves files to external servers and want to use PGP to encrypt the file before they are sent. I read through all the documents and understand how the process works with the public/session keys etc. My questions are regarding implementing it in java on linux specifically:

1) There are tons of pgp packages out there, which one is the most popular/easiest to use?
2) Are there any sample codes that's basically a pgp helloworld and show you how to use pgp to encrpt a file
3) What exactly does the receiver have to do? for example i use a pgp package and encrypt the file and send it to the receiver's server. Now do they have to use the exact same package/version? or will any package able to decrypt the file?
4) From your experience what are some of the things the send and receiver need to agree on first before implementation? for example key bit size? public key? etc.

I am just looking for some good practical advise on starting pgp as have no past experience with any encryption development.

thank you for your time!
LVL 1
gagaliyaAsked:
Who is Participating?
 
Tomas Helgi JohannssonConnect With a Mentor Commented:
    Hi!

Use Java version of OpenPGP available at http://www.cryptix.org/
Sample code/tests is provided in the zip file.
Also take a look at www.pgpi.org and www.openpgp.org for more detail about PGP.
The reciever only has to have a PGP system on his side with the senders public key and his private key and the sender has to have the recievers public key to encrypt the file before sending it over. The sender signs the encrypted package to let the receiver know that the package comed from him.
No they don't have to have the exact same package/version.
The only thing the sender and reciever has to do is have each others public key and by loading the public key from a person into your PGP system you are saying that you trust the person.

Regards,
  Tomas Helgi
0
 
gagaliyaAuthor Commented:
hey a followup question, the public key is it just some number we manually create? i know it has to be 128bit etc depends on the requirement but is it just something i create out of thin air? for example "sdjweuiui223893389bdbhsdhjvci3390:"  ? :)

thanks
0
 
Tomas Helgi JohannssonCommented:
public and private keys are generated with PGP while the user tapps on the keyboard for
several seconds.

Regards,
  Tomas Helgi
0
 
gagaliyaAuthor Commented:
thank you, i will try out that package
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.