KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > proactive > ext > security > crypto > SigningEngine


1 /*
2 * ################################################################
3 *
4 * ProActive: The Java(TM) library for Parallel, Distributed,
5 * Concurrent computing with Security and Mobility
6 *
7 * Copyright (C) 1997-2002 INRIA/University of Nice-Sophia Antipolis
8 * Contact: proactive-support@inria.fr
9 *
10 * This library is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU Lesser General Public
12 * License as published by the Free Software Foundation; either
13 * version 2.1 of the License, or any later version.
14 *
15 * This library is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * Lesser General Public License for more details.
19 *
20 * You should have received a copy of the GNU Lesser General Public
21 * License along with this library; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
23 * USA
24 *
25 * Initial developer(s): The ProActive Team
26 * http://www.inria.fr/oasis/ProActive/contacts.html
27 * Contributor(s):
28 *
29 * ################################################################
30 */

31 package org.objectweb.proactive.ext.security.crypto;
32
33 import java.io.Serializable JavaDoc;
34
35 import java.security.PrivateKey JavaDoc;
36 import java.security.PublicKey JavaDoc;
37 import java.security.Signature JavaDoc;
38 import java.security.SignedObject JavaDoc;
39
40
41 public class SigningEngine implements Serializable JavaDoc {
42     private transient Signature JavaDoc signingEngine;
43
44     public SigningEngine() {
45         try {
46             signingEngine = Signature.getInstance("SHA-1/RSA", "BC");
47         } catch (Exception JavaDoc e) {
48             System.out.println("Exception in SigningEngine instanciation : " +
49                 e);
50             e.printStackTrace();
51         }
52     }
53
54     public Object JavaDoc signObject(Serializable JavaDoc object, PrivateKey JavaDoc privateKey) {
55         try {
56             return new SignedObject JavaDoc(object, privateKey, signingEngine);
57         } catch (Exception JavaDoc e) {
58             System.out.println("Exception in object signature : " + e);
59             System.out.println(privateKey);
60             e.printStackTrace();
61         }
62
63         return null;
64     }
65
66     public boolean checkSignature(Object JavaDoc signedObject, PublicKey JavaDoc publicKey) {
67         try {
68             if (((SignedObject JavaDoc) signedObject).verify(publicKey, signingEngine)) {
69                 return true;
70             }
71         } catch (Exception JavaDoc e) {
72             System.out.println("Exception object signature checking :" + e);
73             e.printStackTrace();
74         }
75
76         return false;
77     }
78 }
79
Popular Tags