Posts

Showing posts from December, 2015

Generate Keystore with Java Program

import java.io.FileOutputStream; import java.io.IOException; import java.math.BigInteger; import java.security.InvalidKeyException; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.KeyStore; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.security.NoSuchProviderException; import java.security.SecureRandom; import java.security.Security; import java.security.SignatureException; import java.security.KeyStore.PrivateKeyEntry; import java.security.cert.CertificateException; import java.security.cert.X509Certificate; import java.util.Date; import org.bouncycastle.jce.X509Principal; import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.bouncycastle.x509.X509V3CertificateGenerator; public class GenerateKeyStore { public static void main(String[] args) throws NoSuchAlgorithmException, NoSuchProviderException, InvalidKeyException, SecurityException, Signat...

Verify Digital Signature without loading cacerts file

import java.io.FileInputStream; import java.io.IOException; import java.security.KeyStore; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.security.SignatureException; import java.security.cert.CertificateException; import java.security.cert.CertificateFactory; import java.security.cert.X509Certificate; import java.security.spec.InvalidKeySpecException; import java.util.ArrayList; import java.util.Calendar; import com.lowagie.text.pdf.AcroFields; import com.lowagie.text.pdf.PdfPKCS7; import com.lowagie.text.pdf.PdfReader; public class VerifySignWithoutCacerts { public static void main(String[] args) throws IOException, KeyStoreException, SignatureException, NoSuchAlgorithmException, InvalidKeySpecException, CertificateException { CertificateFactory factory = CertificateFactory.getInstance("X.509"); X509Certificate certificate = (X509Certificate) factory .generateCertificate(new FileInput...

File Upload with Jersey and Jquery Ajax

Required Jars: asm-3.1.jar jackson-core-asl-1.9.2.jar jackson-jaxrs-1.9.2.jar jackson-mapper-asl-1.9.2.jar jackson-xc-1.9.2.jar jersey-client-1.17.1.jar jersey-core-1.17.1.jar jersey-json-1.17.1.jar jersey-multipart-1.17.1.jar jersey-server-1.17.1.jar jersey-servlet-1.17.1.jar jsr311-api-1.1.1.jar mimepull-1.6.jar -------------------------------------------------------------------------------------------------------------------- uploadFile.jsp <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> <script> $(document).ready(function(){ $('#uploadFile').change(function () { console.log(this.files[0]); var formData = new FormData(); formData.append("file", this.files[0]); ...

Read QR Code image using Java Program

import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.Hashtable; import javax.imageio.ImageIO; import com.google.zxing.BinaryBitmap; import com.google.zxing.EncodeHintType; import com.google.zxing.MultiFormatReader; import com.google.zxing.NotFoundException; import com.google.zxing.Result; import com.google.zxing.WriterException; import com.google.zxing.client.j2se.BufferedImageLuminanceSource; import com.google.zxing.common.HybridBinarizer; import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; public class QRCode { public static void main(String[] args) throws WriterException, IOException, NotFoundException { String charset = "UTF-8"; // or "ISO-8859-1" Hashtable hintMap = new Hashtable (); hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L); String qrCodeFilePath = "C:\\QRCode.png"; System.out.println("Data read from QR Code: ...

Generate QR Code image from Java Program

Introduction to QR Codes A QR code (abbreviated from Quick Response code) is a type of matrix barcode (or two-dimensional code) first designed for the automotive industry. More recently, the system has become popular outside of the industry due to its fast readability and comparatively large storage capacity. The code consists of black modules arranged in a square pattern on a white background. The information encoded can be made up of four standardized kinds (“modes”) of data (numeric, alphanumeric, byte/binary, Kanji), or by supported extensions virtually any kind of data. import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.Hashtable; import javax.imageio.ImageIO; import com.google.zxing.BarcodeFormat; import com.google.zxing.BinaryBitmap; import com.google.zxing.EncodeHintType; import com.google.zxing.MultiFormatReader; import com.google.zxing.MultiFormatWriter; import com.google.zxi...

Steps for Configuring the HSQLDB in Eclipse using Jar

Image
Step 1: Open Eclipse and add following JARS: Step 2: Go to lib\hsqldb.jar in eclipse -> expand org.hsqldb -> Right click on Server.class->Run AsJava Application. Step 3: For Standalone Application :Go to lib\hsqldb.jar in eclipse -> expand org.hsqldb.util->Right click on DatabaseManager.class -> Run As Java Application. For Web Application:Add hsqldb.jar file at WebContent/WEB-INF/lib and libraries. Go to libraries\hsqldb.jar in eclipse -> expand org.hsqldb.util-> Right click on DatabaseManager.class -> Run As Java Application. Then you will get following screen: Step 4: Select connection Type, Driver , URL , User and Password and then click on Ok button: • For Standalone application select “HSQL Database Engine Standalone”. • For Web application select “HSQL Database Engine Server”. You will get following screen: Step 5: Go to “Command“ to Create, Select , Insert ,Update , Delete ,Drop tables. Links to Download Jar Files: http://ww...

Edit/Modify existing PDF using Java(iText)

import java.io.FileOutputStream; import java.io.IOException; import com.itextpdf.text.DocumentException; import com.itextpdf.text.pdf.BaseFont; import com.itextpdf.text.pdf.PdfContentByte; import com.itextpdf.text.pdf.PdfReader; import com.itextpdf.text.pdf.PdfStamper; public class EditExistingPDF { public static void main(String[] args) throws IOException, DocumentException { PdfReader reader = new PdfReader("C:\\signed.pdf"); // input PDF PdfStamper stamper = new PdfStamper(reader,new FileOutputStream( "C:\\test.pdf")); // output PDF BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED); // set font // loop on pages (1-based) for (int i = 1; i // get object for writing over the existing content; // you can also use getUnderContent for writing in the bottom // layer PdfContentByte over = stamper.getOverContent(i); // write text over.beginText(); over.setFontAndSize(bf, 10); // set font and size over....

Verify Digital Signature in PDF using Java(iText) and cacerts

Jars Files: itext-2.1.7.jar itextpdf-5.4.2.jar bcprov-ext-jdk14-1.47.jar bcprov-1.39.jar ---------------------------------------------------------------- import java.io.FileNotFoundException; import java.io.IOException; import java.security.KeyStore; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.security.SignatureException; import java.security.cert.CertificateException; import java.util.ArrayList; import java.util.Calendar; import java.util.Enumeration; import com.lowagie.text.pdf.AcroFields; import com.lowagie.text.pdf.PdfPKCS7; import com.lowagie.text.pdf.PdfReader; public class VerifySignature { public static void main(String[] args) throws KeyStoreException, NoSuchAlgorithmException, CertificateException, FileNotFoundException, IOException, SignatureException { //loads all the keystore imported in cacerts. To load your certificate from cacerts, first it needs to be imported using k...

Add Digital Signature to PDF using Java(iText)

Jars Files: itext-2.1.7.jar itextpdf-5.4.2.jar bcprov-ext-jdk14-1.47.jar bcprov-1.39.jar ------------------------------------------------------------------------- import java.io.FileInputStream; import java.io.FileOutputStream; import java.security.KeyStore; import java.security.PrivateKey; import javax.security.cert.Certificate; import com.lowagie.text.Rectangle; import com.lowagie.text.pdf.PdfReader; import com.lowagie.text.pdf.PdfSignatureAppearance; import com.lowagie.text.pdf.PdfStamper; public class pdfSign1 { public static void main(String args[]) { try { KeyStore ks = KeyStore.getInstance("pkcs12"); //Loads keystore file which contains Private key and Public key //Please see Generate Keystore ks.load(new FileInputStream("C:\\my_keystore.pfx"), "my_password".toCharArray()); String alias = (String) ks.aliases().nextElement(); PrivateKey key = (PrivateKey) ks.getKey(alias, "my_password".toCharArray()); java.secu...

Generate Keystore using Keytool commands

Keytool Commands to generate Keystore(Certificate): Keystore contains both Private and Public key. Basically private key is used for encryption. keytool -genkeypair -alias my_certificate -keystore "C:\my_keystore.pfx" -storepass my_password -validity 365 -keyalg RSA -keysize 2048 -storetype pkcs12 Command to generate certificate(.csr): .csr file conatins public key which is used for decryption. keytool -certreq -alias my_certificate -file "C:\my_certificate.csr" -keystore "C:\my_keystore.pfx" -validity 365 -keyalg RSA -keysize 2048 -storetype pkcs12 ----------------------------------------------------------------------------------------------- Exports certificate in .csr file: keytool -exportcert -rfc -alias my_certificate -keystore "C:\my_keystore.pfx" -validity 365 -keyalg RSA -keysize 2048 -storetype pkcs12 -file "C:\my_certificate.csr" Certificate stored in file <C:\my_certificate.csr> -------------------------...