List of usage examples for java.security.cert X509Certificate getPublicKey
public abstract PublicKey getPublicKey();
From source file:MainClass.java
public static void main(String[] args) throws Exception { Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); KeyPair pair = generateRSAKeyPair(); X509Certificate cert = generateV3Certificate(pair); cert.checkValidity(new Date()); cert.verify(cert.getPublicKey()); }
From source file:TestSign.java
/** * Method main//from w ww . j a v a 2s . c om * * @param unused * @throws Exception */ public static void main(String unused[]) throws Exception { //J- String keystoreType = "JKS"; String keystoreFile = "data/org/apache/xml/security/samples/input/keystore.jks"; String keystorePass = "xmlsecurity"; String privateKeyAlias = "test"; String privateKeyPass = "xmlsecurity"; String certificateAlias = "test"; File signatureFile = new File("signature.xml"); //J+ KeyStore ks = KeyStore.getInstance(keystoreType); FileInputStream fis = new FileInputStream(keystoreFile); ks.load(fis, keystorePass.toCharArray()); PrivateKey privateKey = (PrivateKey) ks.getKey(privateKeyAlias, privateKeyPass.toCharArray()); javax.xml.parsers.DocumentBuilderFactory dbf = javax.xml.parsers.DocumentBuilderFactory.newInstance(); dbf.setNamespaceAware(true); javax.xml.parsers.DocumentBuilder db = dbf.newDocumentBuilder(); org.w3c.dom.Document doc = db.newDocument(); String BaseURI = signatureFile.toURL().toString(); XMLSignature sig = new XMLSignature(doc, BaseURI, XMLSignature.ALGO_ID_SIGNATURE_DSA); doc.appendChild(sig.getElement()); { ObjectContainer obj = new ObjectContainer(doc); Element anElement = doc.createElementNS(null, "InsideObject"); anElement.appendChild(doc.createTextNode("A text in a box")); obj.appendChild(anElement); String Id = "TheFirstObject"; obj.setId(Id); sig.appendObject(obj); Transforms transforms = new Transforms(doc); transforms.addTransform(Transforms.TRANSFORM_C14N_WITH_COMMENTS); sig.addDocument("#" + Id, transforms, Constants.ALGO_ID_DIGEST_SHA1); } { X509Certificate cert = (X509Certificate) ks.getCertificate(certificateAlias); sig.addKeyInfo(cert); sig.addKeyInfo(cert.getPublicKey()); System.out.println("Start signing"); sig.sign(privateKey); System.out.println("Finished signing"); } FileOutputStream f = new FileOutputStream(signatureFile); XMLUtils.outputDOMc14nWithComments(doc, f); f.close(); System.out.println("Wrote signature to " + BaseURI); for (int i = 0; i < sig.getSignedInfo().getSignedContentLength(); i++) { System.out.println("--- Signed Content follows ---"); System.out.println(new String(sig.getSignedInfo().getSignedContentItem(i))); } }
From source file:MainClass.java
public static void main(String args[]) throws Exception { CertificateFactory cf = CertificateFactory.getInstance("X.509"); FileInputStream in = new FileInputStream(args[0]); java.security.cert.Certificate c = cf.generateCertificate(in); in.close();//ww w.j av a 2 s . c o m X509Certificate t = (X509Certificate) c; System.out.println(t.getVersion()); System.out.println(t.getSerialNumber().toString(16)); System.out.println(t.getSubjectDN()); System.out.println(t.getIssuerDN()); System.out.println(t.getNotBefore()); System.out.println(t.getNotAfter()); System.out.println(t.getSigAlgName()); byte[] sig = t.getSignature(); System.out.println(new BigInteger(sig).toString(16)); PublicKey pk = t.getPublicKey(); byte[] pkenc = pk.getEncoded(); for (int i = 0; i < pkenc.length; i++) { System.out.print(pkenc[i] + ","); } }
From source file:Main.java
public static PublicKey extractPublicKeyFromCertificate(X509Certificate certificate) { PublicKey publicKey = certificate.getPublicKey(); return publicKey; }
From source file:com.aqnote.shared.cryptology.cert.util.X509CertFileUtil.java
/** * ???//from ww w . ja va 2 s . co m * * @param crtPath * @return * @throws CertificateException * @throws IOException */ public static String readX509CertificatePublicKey(String crtPath) throws CertificateException, IOException { X509Certificate x509Certificate = readX509Certificate(crtPath); PublicKey publicKey = x509Certificate.getPublicKey(); return publicKey.toString().replace(" ", ""); }
From source file:com.linkage.crm.csb.sign.CtSignature.java
/** * ./*from w w w .j a va 2s .com*/ * * @param pubKeyFile String * @return Signature */ public static Signature createSignatureForVerify(String pubKeyFile) { try { CertificateFactory certificatefactory = CertificateFactory.getInstance("X.509"); FileInputStream fin = new FileInputStream(pubKeyFile); X509Certificate certificate = (X509Certificate) certificatefactory.generateCertificate(fin); PublicKey pub = certificate.getPublicKey(); Signature dsa = Signature.getInstance("SHA1withDSA"); dsa.initVerify(pub); return dsa; } catch (Exception ex) { logger.error("errors appeared while trying to verify a signature", ex); return null; } }
From source file:com.linkage.crm.csb.sign.CtSignature.java
/** * .//from www . j ava 2s . com * * @param originalText String * @param signedText String * @param pubKeyFile String * @return boolean */ public static boolean verify(String originalText, String signedText, String pubKeyFile) { try { CertificateFactory certificatefactory = CertificateFactory.getInstance("X.509"); FileInputStream fin = new FileInputStream(pubKeyFile); X509Certificate certificate = (X509Certificate) certificatefactory.generateCertificate(fin); PublicKey pub = certificate.getPublicKey(); Signature dsa = Signature.getInstance("SHA1withDSA"); dsa.initVerify(pub); dsa.update(originalText.getBytes()); return dsa.verify(HexUtils.fromHexString(signedText)); } catch (Exception ex) { logger.error("errors appeared while trying to verify a signature", ex); return false; } }
From source file:Main.java
/** * Checks whether given X.509 certificate is self-signed. */// w w w . j a v a 2s . co m public static boolean isSelfSigned(X509Certificate cert) throws CertificateException, NoSuchAlgorithmException, NoSuchProviderException { try { // Try to verify certificate signature with its own public key PublicKey key = cert.getPublicKey(); cert.verify(key); return true; } catch (SignatureException sigEx) { // Invalid signature --> not self-signed return false; } catch (InvalidKeyException keyEx) { // Invalid key --> not self-signed return false; } }
From source file:Main.java
public static boolean validateDocumentByCertificate(final Document document, final X509Certificate validatingCertificate) throws CertificateException, SignatureException { if (verifyCertificateValidity(validatingCertificate)) { return validateDocumentByKey(document, validatingCertificate.getPublicKey()); }/*from w ww. ja va 2s.c om*/ return false; }
From source file:com.eucalyptus.auth.euare.EuareServerCertificateUtil.java
public static boolean verifyCertificate(final String certPem, final boolean checkSigner) { try {/*from ww w . ja va2 s . co m*/ final X509Certificate cert = PEMFiles.getCert(B64.standard.dec(certPem)); cert.checkValidity(); if (checkSigner) { final Credentials euareCred = SystemCredentials.lookup(Euare.class); final X509Certificate signer = euareCred.getCertificate(); cert.verify(signer.getPublicKey()); } return true; } catch (final Exception ex) { return false; } }