[freenet-cvs] r15140 - branches/freenet-jfk/src/freenet/node

kryptos at freenetproject.org kryptos at freenetproject.org
Thu Sep 13 14:13:51 UTC 2007


Author: kryptos
Date: 2007-09-13 14:13:51 +0000 (Thu, 13 Sep 2007)
New Revision: 15140

Modified:
   branches/freenet-jfk/src/freenet/node/FNPPacketMangler.java
Log:
JFK(3) generated: resolved a minor bug 

Modified: branches/freenet-jfk/src/freenet/node/FNPPacketMangler.java
===================================================================
--- branches/freenet-jfk/src/freenet/node/FNPPacketMangler.java	2007-09-13 13:56:10 UTC (rev 15139)
+++ branches/freenet-jfk/src/freenet/node/FNPPacketMangler.java	2007-09-13 14:13:51 UTC (rev 15140)
@@ -733,7 +733,11 @@
 		if(message4 != null) {
 			Logger.normal(this, "We replayed a message from the cache (shouldn't happen often)");
 			//sendMessage3Packet(1, 2, 3, message4);
-                        sendAuthPacket(1,2,3,getBytes(message4),pn,replyTo);
+                        try{
+                            sendAuthPacket(1,2,3,getBytes(message4),pn,replyTo);
+                        }catch(IOException e){
+                            Logger.error(this,"Error getting bytes");
+                        }
 			return;
 		}
 		
@@ -835,6 +839,7 @@
 		//FIXME: IDr not signed?
                 NativeBigInteger _ourExponential = new NativeBigInteger(1,ourExponential);
                 NativeBigInteger _hisExponential = new NativeBigInteger(1,hisExponential);
+                NativeBigInteger _hisGroup = new NativeBigInteger(1,stripBigIntegerToNetworkFormat(hisGroup));
                 DSASignature localSignature = signDHParams(nonceInitiator,nonceResponder,_ourExponential,_hisExponential);
                 byte[] r = localSignature.getRBytes(Node.SIGNATURE_PARAMETER_LENGTH);
 		byte[] s = localSignature.getSBytes(Node.SIGNATURE_PARAMETER_LENGTH);
@@ -849,7 +854,8 @@
 		 * The key used is generated from Hash of Message:(Ni, Nr, 1) over the shared key of DH
 		 */
 		// FIXME: How to convert NativeBigInteger to ByteArray?
-                byte[] eKey =  dhContext.getHMACKey(_hisExponential,hisGroup);
+                NativeBigInteger tempKey = dhContext.getHMACKey(_hisExponential,_hisGroup);
+                byte[] eKey = tempKey.toByteArray();
                 c.initialize(encryptionKey.getEncKey(eKey,nonceInitiator,nonceResponder));
 		PCFBMode pk=PCFBMode.create(c);
 		byte[] iv=new byte[pk.lengthIV()];




More information about the cvs mailing list