[freenet-cvs] r11692 - in trunk/freenet/src/freenet: crypt node

toad at freenetproject.org toad at freenetproject.org
Wed Feb 7 23:25:13 UTC 2007


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);




More information about the cvs mailing list