Following packages from java are useful: java.security.*; java.util.Random; javax.crypto.*; ======================================= Code for RSA (encryption/decryption): ======================================= KeyPairGenerator generator = KeyPairGenerator.getInstance("RSA"); generator.initialize(keysize); //keysize = 1024; //encryption Cipher c = Cipher.getInstance("RSA/ECB/PKCS1Padding"); c.init(Cipher.ENCRYPT_MODE, keyPair.getPublic()); byte[] encr = c.doFinal(message); //gives encrypted data //decryption Cipher c1 = Cipher.getInstance("RSA/ECB/PKCS1Padding"); c1.init(Cipher.DECRYPT_MODE, keyPair.getPrivate()); c1.doFinal(encr); ======================================= Code for DES: ======================================= KeyGenerator gen = KeyGenerator.getInstance(DesEncrypter.algorithm); gen.init(keysize); //keysize = 56; SecretKey key = gen.generateKey(); Cipher ecipher = Cipher.getInstance(algorithm); //algorithm = "DES" Cipher dcipher = Cipher.getInstance(algorithm); ecipher.init(Cipher.ENCRYPT_MODE, key); dcipher.init(Cipher.DECRYPT_MODE, key); //encryption byte[] encr = ecipher.doFinal(message); //message is in byte array format byte[] plain = dcipher.doFinal(encr); ======================================= Code for Digest: ======================================= MessageDigest sha1 = MessageDigest.getInstance("SHA-1"); md.digest(message); //returns digest in byte[] format //message should be in byte[] format ======================================= Code for RSA signature generation/verification: ======================================= KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA"); kpg.initialize(keySize); //keysize = 1024 KeyPair keyPair = kpg.generateKeyPair(); Signature sgSign = Signature.getInstance(algorithm); //algorithm is "MD5withRSA" .. to use for encryption/decryption sgSign.initSign(keyPair.getPrivate()); sgSign.update(data,0,len); //data is in byte[] format & its 'len' is length of array byte[] signature = sgSign.sign(); //returns signature Signature sgVer;sgVer = Signature.getInstance(algorithm); sgVer.initVerify(keyPair.getPublic()); sgVer.verify(signature); //returns boolean value whether corrctly verified or not.