Author: toad
Date: 2007-02-07 23:25:12 +0000 (Wed, 07 Feb 2007)
New Revision: 11692

Modified:
   trunk/freenet/src/freenet/crypt/DSAPublicKey.java
   trunk/freenet/src/freenet/crypt/DiffieHellmanContext.java
   trunk/freenet/src/freenet/crypt/StationToStationContext.java
   trunk/freenet/src/freenet/node/Node.java
Log:
Simplify some SHA256-related code.

Modified: trunk/freenet/src/freenet/crypt/DSAPublicKey.java
===================================================================
--- trunk/freenet/src/freenet/crypt/DSAPublicKey.java   2007-02-07 23:16:47 UTC 
(rev 11691)
+++ trunk/freenet/src/freenet/crypt/DSAPublicKey.java   2007-02-07 23:25:12 UTC 
(rev 11692)
@@ -141,9 +141,7 @@
     }

     public byte[] asBytesHash() {
-       MessageDigest md256 = SHA256.getMessageDigest();
-       byte[] hash = md256.digest(asBytes());
-       SHA256.returnMessageDigest(md256);
+       byte[] hash = SHA256.digest(asBytes());
        return hash;
     }


Modified: trunk/freenet/src/freenet/crypt/DiffieHellmanContext.java
===================================================================
--- trunk/freenet/src/freenet/crypt/DiffieHellmanContext.java   2007-02-07 
23:16:47 UTC (rev 11691)
+++ trunk/freenet/src/freenet/crypt/DiffieHellmanContext.java   2007-02-07 
23:25:12 UTC (rev 11692)
@@ -57,9 +57,7 @@
             (NativeBigInteger) peerExponential.modPow(myExponent, 
group.getP());
         MessageDigest md;

-        md = SHA256.getMessageDigest();
-        key = md.digest(sharedSecret.toByteArray());
-        SHA256.returnMessageDigest(md);
+        key = SHA256.digest(sharedSecret.toByteArray());
         if(logMINOR)
             Logger.minor(this, "Key="+HexUtil.bytesToHex(key));
         return key;

Modified: trunk/freenet/src/freenet/crypt/StationToStationContext.java
===================================================================
--- trunk/freenet/src/freenet/crypt/StationToStationContext.java        
2007-02-07 23:16:47 UTC (rev 11691)
+++ trunk/freenet/src/freenet/crypt/StationToStationContext.java        
2007-02-07 23:25:12 UTC (rev 11692)
@@ -92,10 +92,8 @@
        if(hisExponential == null) throw new IllegalStateException("Can't call 
concatAndSignAndCrypt() until setOtherSideExponential() has been called!");
        if(key == null)  getKey();

-       MessageDigest md = SHA256.getMessageDigest();
-       
        String message = "(" + myExponential + ',' + hisExponential + ')';
-       DSASignature signature = DSA.sign(group, myPrivateKey, new 
BigInteger(md.digest(message.getBytes())), random);
+       DSASignature signature = DSA.sign(group, myPrivateKey, new 
BigInteger(SHA256.digest(message.getBytes())), random);

        if(logMINOR)
             Logger.minor(this, "The concat result : "+message+". Its signature 
: "+signature);
@@ -114,8 +112,6 @@
                e.printStackTrace();
        }

-       SHA256.returnMessageDigest(md);
-       
        return result;
     }

@@ -129,15 +125,13 @@
        EncipherInputStream ei = new EncipherInputStream(is, getCipher());
        final String message = "(" + hisExponential + ',' + myExponential + ')';

-       MessageDigest md = SHA256.getMessageDigest();
         try{
                String signatureToCheck = ei.toString();
                ei.close();
                is.close();

                if(signatureToCheck != null)
-                       if(DSA.verify(hisPubKey, new 
DSASignature(signatureToCheck), new BigInteger(md.digest(message.getBytes())))) 
{
-                               SHA256.returnMessageDigest(md);
+                       if(DSA.verify(hisPubKey, new 
DSASignature(signatureToCheck), new 
BigInteger(SHA256.digest(message.getBytes())))) {
                                return true;
                        }

@@ -146,7 +140,6 @@
                e.printStackTrace();
        }

-       SHA256.returnMessageDigest(md);
        return false;
     }


Modified: trunk/freenet/src/freenet/node/Node.java
===================================================================
--- trunk/freenet/src/freenet/node/Node.java    2007-02-07 23:16:47 UTC (rev 
11691)
+++ trunk/freenet/src/freenet/node/Node.java    2007-02-07 23:25:12 UTC (rev 
11692)
@@ -1735,9 +1735,7 @@
                                mySignedReference = fs.toOrderedString();       

                                try{
-                                       MessageDigest md = 
SHA256.getMessageDigest();
-                                       myReferenceSignature = 
DSA.sign(myCryptoGroup, myPrivKey, new 
BigInteger(md.digest(mySignedReference.getBytes("UTF-8"))), random);
-                                       SHA256.returnMessageDigest(md);
+                                       myReferenceSignature = 
DSA.sign(myCryptoGroup, myPrivKey, new 
BigInteger(SHA256.digest(mySignedReference.getBytes("UTF-8"))), random);
                                } catch(UnsupportedEncodingException e){
                                        //duh ?
                                        Logger.error(this, "Error while signing 
the node identity!"+e);
@@ -2600,7 +2598,6 @@
                                } else {
                                        Logger.error(this, "New hash is wrong");
                                }
-                               // REDFLAG don't recycle md256 because 
something wierd is happening if we are here
                                throw new IllegalArgumentException("Wrong 
hash?? Already have different key with same hash!");
                        }
                        cachedPubKeys.push(w, key);


Reply via email to