You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(119) |
Oct
(111) |
Nov
(238) |
Dec
(395) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(239) |
Feb
(59) |
Mar
(354) |
Apr
(489) |
May
(23) |
Jun
(2) |
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2006 |
Jan
|
Feb
|
Mar
|
Apr
(4) |
May
(5) |
Jun
(2) |
Jul
|
Aug
|
Sep
(3) |
Oct
(14) |
Nov
(17) |
Dec
(9) |
| 2007 |
Jan
(4) |
Feb
(3) |
Mar
|
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
|
Aug
|
Sep
(1) |
Oct
(2) |
Nov
(1) |
Dec
|
| 2008 |
Jan
|
Feb
|
Mar
(1) |
Apr
(7) |
May
(3) |
Jun
(6) |
Jul
(4) |
Aug
(3) |
Sep
(15) |
Oct
(13) |
Nov
(35) |
Dec
(40) |
| 2009 |
Jan
(19) |
Feb
(21) |
Mar
(16) |
Apr
(18) |
May
(36) |
Jun
(20) |
Jul
(32) |
Aug
(11) |
Sep
(3) |
Oct
(2) |
Nov
(2) |
Dec
(13) |
| 2010 |
Jan
(5) |
Feb
(5) |
Mar
(7) |
Apr
(1) |
May
(1) |
Jun
(3) |
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
(1) |
Nov
|
Dec
|
| 2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
(4) |
Nov
|
Dec
(3) |
| 2012 |
Jan
(3) |
Feb
(3) |
Mar
(1) |
Apr
(4) |
May
(8) |
Jun
(4) |
Jul
(9) |
Aug
(2) |
Sep
(8) |
Oct
(3) |
Nov
(8) |
Dec
(4) |
| 2013 |
Jan
(2) |
Feb
(1) |
Mar
(5) |
Apr
(6) |
May
(10) |
Jun
(5) |
Jul
(6) |
Aug
(7) |
Sep
(5) |
Oct
(2) |
Nov
(4) |
Dec
(4) |
| 2014 |
Jan
(13) |
Feb
(4) |
Mar
(7) |
Apr
(9) |
May
(20) |
Jun
(13) |
Jul
(10) |
Aug
(3) |
Sep
(5) |
Oct
(2) |
Nov
(2) |
Dec
(2) |
| 2015 |
Jan
(3) |
Feb
(3) |
Mar
(5) |
Apr
(4) |
May
(3) |
Jun
(2) |
Jul
(4) |
Aug
(3) |
Sep
(1) |
Oct
|
Nov
(1) |
Dec
(3) |
| 2016 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
(1) |
Aug
(4) |
Sep
(3) |
Oct
(3) |
Nov
(4) |
Dec
(2) |
| 2017 |
Jan
|
Feb
(2) |
Mar
|
Apr
(2) |
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <pe...@us...> - 2004-01-19 23:49:48
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/signers/servlet
In directory sc8-pr-cvs1:/tmp/cvs-serv9226/src/java/org/neuclear/signers/servlet
Modified Files:
SignatureRequestServlet.java
Log Message:
Unit testing uncovered further issues with Base32
NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
Well on the way towards full "green" on Junit.
Index: SignatureRequestServlet.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/signers/servlet/SignatureRequestServlet.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** SignatureRequestServlet.java 12 Jan 2004 22:39:26 -0000 1.4
--- SignatureRequestServlet.java 19 Jan 2004 23:49:45 -0000 1.5
***************
*** 1,26 ****
package org.neuclear.signers.servlet;
- import org.neuclear.commons.servlets.ServletTools;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.Utility;
- import org.neuclear.commons.crypto.signers.Signer;
import org.neuclear.commons.crypto.signers.ServletSignerFactory;
import org.neuclear.id.Identity;
- import org.neuclear.id.resolver.NSResolver;
- import org.neuclear.id.builders.SignatureRequestBuilder;
import org.neuclear.id.builders.Builder;
import org.neuclear.xml.xmlsec.XMLSecTools;
import org.neuclear.xml.xmlsec.XMLSecurityException;
- import org.neuclear.xml.XMLException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
- import javax.servlet.ServletConfig;
- import javax.servlet.ServletException;
- import java.security.GeneralSecurityException;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintWriter;
/*
--- 1,26 ----
package org.neuclear.signers.servlet;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.Utility;
import org.neuclear.commons.crypto.signers.ServletSignerFactory;
+ import org.neuclear.commons.crypto.signers.Signer;
+ import org.neuclear.commons.servlets.ServletTools;
import org.neuclear.id.Identity;
import org.neuclear.id.builders.Builder;
+ import org.neuclear.id.builders.SignatureRequestBuilder;
+ import org.neuclear.id.resolver.NSResolver;
+ import org.neuclear.xml.XMLException;
import org.neuclear.xml.xmlsec.XMLSecTools;
import org.neuclear.xml.xmlsec.XMLSecurityException;
+ import javax.servlet.ServletConfig;
+ import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintWriter;
+ import java.security.GeneralSecurityException;
/*
***************
*** 44,47 ****
--- 44,52 ----
$Id$
$Log$
+ Revision 1.5 2004/01/19 23:49:45 pelle
+ Unit testing uncovered further issues with Base32
+ NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
+ Well on the way towards full "green" on Junit.
+
Revision 1.4 2004/01/12 22:39:26 pelle
Completed all the builders and contracts.
***************
*** 126,130 ****
final Identity user = getUserNS(request);
final Builder namedreq = createBuilder(request);
! final SignatureRequestBuilder sigreq = new SignatureRequestBuilder(serviceid, user.getName(), namedreq, "Login to Site");
sigreq.sign(serviceid, signer);
out.write("<form action=\"");
--- 131,135 ----
final Identity user = getUserNS(request);
final Builder namedreq = createBuilder(request);
! final SignatureRequestBuilder sigreq = new SignatureRequestBuilder(user.getName(), namedreq, "Login to Site");
sigreq.sign(serviceid, signer);
out.write("<form action=\"");
|
|
From: <pe...@us...> - 2004-01-19 23:49:48
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id
In directory sc8-pr-cvs1:/tmp/cvs-serv9226/src/java/org/neuclear/id
Modified Files:
NSTools.java SignedNamedCore.java
Log Message:
Unit testing uncovered further issues with Base32
NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
Well on the way towards full "green" on Junit.
Index: NSTools.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/NSTools.java,v
retrieving revision 1.27
retrieving revision 1.28
diff -C2 -d -r1.27 -r1.28
*** NSTools.java 19 Jan 2004 17:54:59 -0000 1.27
--- NSTools.java 19 Jan 2004 23:49:44 -0000 1.28
***************
*** 2,5 ****
--- 2,10 ----
* $Id$
* $Log$
+ * Revision 1.28 2004/01/19 23:49:44 pelle
+ * Unit testing uncovered further issues with Base32
+ * NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
+ * Well on the way towards full "green" on Junit.
+ *
* Revision 1.27 2004/01/19 17:54:59 pelle
* Updated the NeuClear ID naming scheme to support various levels of semantics
***************
*** 205,215 ****
package org.neuclear.id;
- import org.bouncycastle.crypto.Digest;
- import org.bouncycastle.crypto.digests.SHA1Digest;
import org.dom4j.*;
- import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.Utility;
- import org.neuclear.commons.crypto.CryptoTools;
- import org.neuclear.id.builders.NamedObjectBuilder;
import org.neuclear.id.resolver.NSResolver;
--- 210,215 ----
***************
*** 277,287 ****
if (Utility.isEmpty(name))
return false;
! final Matcher matcher = VALID.matcher(name);
return (matcher.matches());
}
public static boolean isValidTransactionName(final String name) {
if (Utility.isEmpty(name))
return false;
! final Matcher matcher = VALID.matcher(name);
return (matcher.matches());
}
--- 277,294 ----
if (Utility.isEmpty(name))
return false;
! final Matcher matcher = REVALID.matcher(name);
return (matcher.matches());
}
+ public static boolean isValidId(final String name) {
+ if (Utility.isEmpty(name))
+ return false;
+ final Matcher matcher = REVALID_ID.matcher(name);
+ return (matcher.matches());
+ }
+
public static boolean isValidTransactionName(final String name) {
if (Utility.isEmpty(name))
return false;
! final Matcher matcher = REVALID_X.matcher(name);
return (matcher.matches());
}
***************
*** 316,394 ****
/**
- * Returns the last part of a NEU URI.
- *
- * @param uri a valid NEU Name
- * @return Parent URI or null if name is the root
- * @throws InvalidNamedObjectException if name is invalid
- */
- public static String getLocalName(final String uri) throws InvalidNamedObjectException {
- if (!isValidName(uri))
- throw new InvalidNamedObjectException("Invalid Neu ID: " + uri);
- final int bang = uri.indexOf('!');
-
- // We hava a Transaction ID. We always return its signer
- if (bang > -1)
- return uri.substring(bang + 1);
-
- final int slash = uri.lastIndexOf('/');
- final int at = uri.indexOf('@');
- // We have a User ID
- if (slash < at)
- return uri.substring(slash + 1, at);
- // We have a top level
- if (uri.charAt(slash - 1) == '/')
- return uri.substring(slash + 1);
- //Regular
- return uri.substring(slash + 1);
- }
-
- /**
- * Creates a Globally Unique ID using the following algorithm:
- * <ol><li>Take given Identity URI</li>
- * <li>Appends Timestamp in ms</li>
- * <li>Appends large random number</li>
- * <li>Appends base36 SHA1 of Requesting Identity URI</li>
- * </ol>
- * Note if there is no Requesting Identity. Place any kind of seed in this parameter
- *
- * @param signer N
- * @param requester
- * @param isTransaction is the new Id supposed to be a transaction id?
- * @return
- */
- public static String createUniqueNamedID(final String signer, final String requester, final boolean isTransaction) {
- final Digest dig = new SHA1Digest();
- final StringBuffer buffy = new StringBuffer(signer);
- buffy.append((isTransaction ? '!' : '/'));
- buffy.append(System.currentTimeMillis());
- buffy.append(CryptoTools.createRandomID());
- final byte[] output = new byte[dig.getDigestSize()];
- final byte reqbytes[] = requester.getBytes();
- dig.update(reqbytes, 0, reqbytes.length);
- //TODO Add some more stuff like IP addresses etc to digest
- dig.doFinal(output, 0);
-
- buffy.append(CryptoTools.encodeBase32(output));
- return buffy.toString();
- }
-
- /**
- * Creates a Globally Unique Transaction ID using the following algorithm:
- * <ol><li>Take given Identity URI</li>
- * <li>Appends Timestamp in ms</li>
- * <li>Appends large random number</li>
- * <li>Appends base36 SHA1 of Requesting Identity URI</li>
- * </ol>
- * Note if there is no Requesting Identity. Place any kind of seed in this parameter
- *
- * @param signer N
- * @param requester
- * @return
- */
- public static String createUniqueTransactionID(final String signer, final String requester) {
- return createUniqueNamedID(signer, requester, true);
- }
-
- /**
* Convers a NEU Name URI into a path suitable for a filesystem or for inclusion as part of a web url.
* Essentially it strips the prefixes of the URI. If the URI is of the format <tt>neu://bob@test</tt> it returns it as
--- 323,326 ----
***************
*** 403,407 ****
final Matcher matcher = STRIP_URI_ARROBA.matcher(name);
if (matcher.matches()) {
! return "/" + Utility.denullString(matcher.group(3)) + (matcher.group(1) != null ? ("/@" + matcher.group(2)) : "") + Utility.denullString(matcher.group(4));
}
}
--- 335,342 ----
final Matcher matcher = STRIP_URI_ARROBA.matcher(name);
if (matcher.matches()) {
! // regexDebug(matcher);
! if (Utility.isEmpty(matcher.group(8)))
! return "/" + Utility.denullString(matcher.group(5)) + (matcher.group(3) != null ? ("/@" + matcher.group(4)) : "") + Utility.denullString(matcher.group(6));
! return "/"+matcher.group(9)+((!Utility.isEmpty(matcher.group(11)))?"/"+matcher.group(11):"");
}
}
***************
*** 409,412 ****
--- 344,353 ----
}
+ private static void regexDebug(final Matcher matcher) {
+ for (int i=0;i<=matcher.groupCount();i++){
+ System.out.println("$"+i+"="+matcher.group(i));
+ }
+ }
+
/**
* Checks to see if the following name should be resolved using the HTTP Resolving Scheme
***************
*** 465,469 ****
public static final Namespace NS_NEUID = DocumentHelper.createNamespace(NEUID_PREFIX, NEUID_URI);
! private static final String SCHEME_PREFIX = "([\\w]{1,6}:)?";
private static final String VALID_TOKEN = "[\\w][\\w.-]*";
private static final String VALID_USER_TOKEN = "(([\\w][\\w.-]*)@)?";
--- 406,410 ----
public static final Namespace NS_NEUID = DocumentHelper.createNamespace(NEUID_PREFIX, NEUID_URI);
! // private static final String SCHEME_PREFIX = "([\\w]{1,6}:)?";
private static final String VALID_TOKEN = "[\\w][\\w.-]*";
private static final String VALID_USER_TOKEN = "(([\\w][\\w.-]*)@)?";
***************
*** 471,486 ****
private static final String VALID_SUB_TOKEN = "(\\/[\\w][\\w-]*)*";
private static final String SHA1="[a-zA-Z2-7]{32}";
! private static final String VALID_TRAN_TOKEN = "!"+SHA1+"$";
private static final String VALID_SHA1ID="^sha1:"+SHA1;
! private static final String VALID_PETNAME="pet:"+VALID_TOKEN+VALID_TRAN_TOKEN;
private static final String VALID_NEU_ID = "neu:\\/\\/(" + VALID_TOP_TOKEN + VALID_SUB_TOKEN+")?";
private static final String VALID_ID="^"+VALID_SHA1ID+"|"+VALID_NEU_ID+"|"+VALID_PETNAME+"$";
! private static final String VALID_XACT="^"+VALID_SHA1ID+"|"+VALID_NEU_ID+"|"+VALID_PETNAME+VALID_TRAN_TOKEN+"$";
! private static final Pattern VALID = Pattern.compile(VALID_ID);
! private static final Pattern VALIDX = Pattern.compile(VALID_XACT);
! private static final String STRIP_URI_ARROBA_EX = "neu://((" + VALID_TOKEN + ")@)?(" + VALID_TOKEN + ")?(" + VALID_SUB_TOKEN + VALID_TRAN_TOKEN + ")$";
private static final Pattern STRIP_URI_ARROBA = Pattern.compile(STRIP_URI_ARROBA_EX);
--- 412,429 ----
private static final String VALID_SUB_TOKEN = "(\\/[\\w][\\w-]*)*";
private static final String SHA1="[a-zA-Z2-7]{32}";
! private static final String VALID_TRAN_TOKEN = "!"+SHA1;
private static final String VALID_SHA1ID="^sha1:"+SHA1;
! private static final String VALID_PETNAME="pet:"+VALID_TOKEN;
private static final String VALID_NEU_ID = "neu:\\/\\/(" + VALID_TOP_TOKEN + VALID_SUB_TOKEN+")?";
private static final String VALID_ID="^"+VALID_SHA1ID+"|"+VALID_NEU_ID+"|"+VALID_PETNAME+"$";
+ private static final String VALID_NAME="^(("+VALID_SHA1ID+")|("+VALID_NEU_ID+")|("+VALID_PETNAME+"))("+VALID_TRAN_TOKEN+")?$";
! private static final String VALID_XACT="^(("+VALID_SHA1ID+")|("+VALID_NEU_ID+")|("+VALID_PETNAME+"))("+VALID_TRAN_TOKEN+")$";
! private static final Pattern REVALID = Pattern.compile(VALID_NAME);
! private static final Pattern REVALID_ID = Pattern.compile(VALID_ID);
! private static final Pattern REVALID_X = Pattern.compile(VALID_XACT);
! private static final String STRIP_URI_ARROBA_EX = "^((neu://((" + VALID_TOKEN + ")@)?(" + VALID_TOKEN + ")?(" + VALID_SUB_TOKEN +"))|(sha1:("+SHA1+")))(!("+SHA1+"))?$";
private static final Pattern STRIP_URI_ARROBA = Pattern.compile(STRIP_URI_ARROBA_EX);
Index: SignedNamedCore.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/SignedNamedCore.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** SignedNamedCore.java 19 Jan 2004 17:54:59 -0000 1.16
--- SignedNamedCore.java 19 Jan 2004 23:49:45 -0000 1.17
***************
*** 2,5 ****
--- 2,10 ----
* $Id$
* $Log$
+ * Revision 1.17 2004/01/19 23:49:45 pelle
+ * Unit testing uncovered further issues with Base32
+ * NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
+ * Well on the way towards full "green" on Junit.
+ *
* Revision 1.16 2004/01/19 17:54:59 pelle
* Updated the NeuClear ID naming scheme to support various levels of semantics
***************
*** 271,282 ****
import org.neuclear.commons.LowLevelException;
import org.neuclear.commons.crypto.CryptoTools;
! import org.neuclear.commons.crypto.CryptoException;
! import org.neuclear.commons.time.TimeTools;
! import org.neuclear.id.resolver.NSResolver;
! import org.neuclear.xml.xmlsec.*;
import java.security.PublicKey;
import java.sql.Timestamp;
- import java.text.ParseException;
/**
--- 276,286 ----
import org.neuclear.commons.LowLevelException;
import org.neuclear.commons.crypto.CryptoTools;
! import org.neuclear.xml.xmlsec.InvalidSignatureException;
! import org.neuclear.xml.xmlsec.XMLSecTools;
! import org.neuclear.xml.xmlsec.XMLSecurityException;
! import org.neuclear.xml.xmlsec.XMLSignature;
import java.security.PublicKey;
import java.sql.Timestamp;
/**
***************
*** 300,304 ****
public SignedNamedCore(final PublicKey pub){
this.digest=CryptoTools.encodeBase32(CryptoTools.digest(pub.getEncoded()));
! this.name="neu:sha1://"+digest;
this.timestamp=System.currentTimeMillis();
this.encoded=new String(pub.getEncoded());
--- 304,308 ----
public SignedNamedCore(final PublicKey pub){
this.digest=CryptoTools.encodeBase32(CryptoTools.digest(pub.getEncoded()));
! this.name="sha1://"+digest;
this.timestamp=System.currentTimeMillis();
this.encoded=new String(pub.getEncoded());
|
|
From: <pe...@us...> - 2004-01-19 23:49:48
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/tools/commandline In directory sc8-pr-cvs1:/tmp/cvs-serv9226/src/java/org/neuclear/id/tools/commandline Modified Files: CommandLineSigner.java Log Message: Unit testing uncovered further issues with Base32 NSTools is now uptodate as are many other classes. All transactional builders habe been updated. Well on the way towards full "green" on Junit. Index: CommandLineSigner.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/tools/commandline/CommandLineSigner.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** CommandLineSigner.java 22 Dec 2003 22:15:26 -0000 1.7 --- CommandLineSigner.java 19 Jan 2004 23:49:44 -0000 1.8 *************** *** 1,4 **** --- 1,9 ---- /* $Id$ * $Log$ + * Revision 1.8 2004/01/19 23:49:44 pelle + * Unit testing uncovered further issues with Base32 + * NSTools is now uptodate as are many other classes. All transactional builders habe been updated. + * Well on the way towards full "green" on Junit. + * * Revision 1.7 2003/12/22 22:15:26 pelle * Last minute cleanups and documentation prior to release 0.8.1 *************** *** 208,228 **** import org.apache.commons.cli.*; import org.dom4j.Document; import org.neuclear.commons.NeuClearException; import org.neuclear.commons.Utility; - import org.neuclear.commons.LowLevelException; import org.neuclear.commons.crypto.CryptoTools; import org.neuclear.commons.crypto.passphraseagents.ConsoleAgent; - import org.neuclear.commons.crypto.passphraseagents.UserCancellationException; - import org.neuclear.commons.crypto.passphraseagents.InteractiveAgent; import org.neuclear.commons.crypto.passphraseagents.GuiDialogAgent; import org.neuclear.commons.crypto.signers.DefaultSigner; - import org.neuclear.commons.crypto.signers.Signer; import org.neuclear.commons.crypto.signers.InvalidPassphraseException; import org.neuclear.commons.crypto.signers.NonExistingSignerException; import org.neuclear.commons.time.TimeTools; import org.neuclear.id.Identity; - import org.neuclear.id.NSTools; import org.neuclear.id.InvalidNamedObjectException; ! import org.neuclear.id.NameResolutionException; import org.neuclear.id.builders.NamedObjectBuilder; import org.neuclear.id.resolver.NSResolver; --- 213,232 ---- import org.apache.commons.cli.*; import org.dom4j.Document; + import org.neuclear.commons.LowLevelException; import org.neuclear.commons.NeuClearException; import org.neuclear.commons.Utility; import org.neuclear.commons.crypto.CryptoTools; import org.neuclear.commons.crypto.passphraseagents.ConsoleAgent; import org.neuclear.commons.crypto.passphraseagents.GuiDialogAgent; + import org.neuclear.commons.crypto.passphraseagents.InteractiveAgent; + import org.neuclear.commons.crypto.passphraseagents.UserCancellationException; import org.neuclear.commons.crypto.signers.DefaultSigner; import org.neuclear.commons.crypto.signers.InvalidPassphraseException; import org.neuclear.commons.crypto.signers.NonExistingSignerException; + import org.neuclear.commons.crypto.signers.Signer; import org.neuclear.commons.time.TimeTools; import org.neuclear.id.Identity; import org.neuclear.id.InvalidNamedObjectException; ! import org.neuclear.id.NSTools; import org.neuclear.id.builders.NamedObjectBuilder; import org.neuclear.id.resolver.NSResolver; *************** *** 231,239 **** import java.io.*; - import java.security.GeneralSecurityException; - import java.net.URLClassLoader; - import java.net.URL; - import java.util.regex.Pattern; - import java.util.regex.Matcher; /** --- 235,238 ---- *************** *** 342,346 **** if (!sig.canSignFor(alias)) { if (!Utility.isEmpty(of)) ! of = subject.getLocalName() + ".xml"; System.out.println("Key with alias: " + alias + " doesnt exist in our keystore. \nSaving unsigned Identity as: " + of); } else if(!subject.isSigned()) { --- 341,345 ---- if (!sig.canSignFor(alias)) { if (!Utility.isEmpty(of)) ! of = "signthis.xml"; System.out.println("Key with alias: " + alias + " doesnt exist in our keystore. \nSaving unsigned Identity as: " + of); } else if(!subject.isSigned()) { |
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/builders
In directory sc8-pr-cvs1:/tmp/cvs-serv9226/src/java/org/neuclear/id/builders
Modified Files:
Builder.java NamedObjectBuilder.java
SignatureRequestBuilder.java SignedMessageBuilder.java
Log Message:
Unit testing uncovered further issues with Base32
NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
Well on the way towards full "green" on Junit.
Index: Builder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/builders/Builder.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** Builder.java 19 Jan 2004 17:55:00 -0000 1.3
--- Builder.java 19 Jan 2004 23:49:44 -0000 1.4
***************
*** 1,16 ****
package org.neuclear.id.builders;
! import org.neuclear.xml.xmlsec.SignedElement;
! import org.neuclear.xml.xmlsec.XMLSecurityException;
! import org.neuclear.id.SignedNamedObject;
import org.neuclear.id.InvalidNamedObjectException;
- import org.neuclear.id.NameResolutionException;
import org.neuclear.id.NSTools;
import org.neuclear.id.verifier.VerifyingReader;
! import org.neuclear.commons.time.TimeTools;
! import org.neuclear.commons.crypto.signers.Signer;
! import org.neuclear.commons.crypto.signers.NonExistingSignerException;
! import org.neuclear.commons.crypto.passphraseagents.UserCancellationException;
! import org.dom4j.*;
/**
--- 1,16 ----
package org.neuclear.id.builders;
! import org.dom4j.*;
! import org.neuclear.commons.crypto.passphraseagents.UserCancellationException;
! import org.neuclear.commons.crypto.signers.NonExistingSignerException;
! import org.neuclear.commons.crypto.signers.Signer;
! import org.neuclear.commons.time.TimeTools;
import org.neuclear.id.InvalidNamedObjectException;
import org.neuclear.id.NSTools;
+ import org.neuclear.id.NameResolutionException;
+ import org.neuclear.id.SignedNamedObject;
import org.neuclear.id.verifier.VerifyingReader;
! import org.neuclear.xml.xmlsec.SignedElement;
! import org.neuclear.xml.xmlsec.XMLSecurityException;
/**
***************
*** 36,44 ****
createDocument(); }
- public Builder(final String name, final String prefix, final String nsURI) {
- super(name, prefix, nsURI);
- createDocument();
- }
-
final public SignedNamedObject convert() throws InvalidNamedObjectException, NameResolutionException{
--- 36,39 ----
***************
*** 80,82 ****
--- 75,96 ----
return convert();
}
+
+ /**
+ * Helper method to create and add an attribute to this element within the NEUID namespace
+ *
+ * @param name
+ */
+ protected final void createNEUIDAttribute(String name, String value) {
+ getElement().addAttribute(createNEUIDQName(name), value);
+ }
+
+ /**
+ * Helper method to create a QName within the NEUID namespace
+ *
+ * @param name
+ * @return
+ */
+ protected static QName createNEUIDQName(String name) {
+ return DocumentHelper.createQName(name, NSTools.NS_NEUID);
+ }
}
Index: NamedObjectBuilder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/builders/NamedObjectBuilder.java,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** NamedObjectBuilder.java 19 Jan 2004 17:55:00 -0000 1.25
--- NamedObjectBuilder.java 19 Jan 2004 23:49:44 -0000 1.26
***************
*** 2,5 ****
--- 2,10 ----
* $Id$
* $Log$
+ * Revision 1.26 2004/01/19 23:49:44 pelle
+ * Unit testing uncovered further issues with Base32
+ * NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
+ * Well on the way towards full "green" on Junit.
+ *
* Revision 1.25 2004/01/19 17:55:00 pelle
* Updated the NeuClear ID naming scheme to support various levels of semantics
***************
*** 236,240 ****
package org.neuclear.id.builders;
! import org.dom4j.*;
import org.neuclear.commons.crypto.passphraseagents.UserCancellationException;
import org.neuclear.commons.crypto.signers.NonExistingSignerException;
--- 241,247 ----
package org.neuclear.id.builders;
! import org.dom4j.Document;
! import org.dom4j.Element;
! import org.dom4j.QName;
import org.neuclear.commons.crypto.passphraseagents.UserCancellationException;
import org.neuclear.commons.crypto.signers.NonExistingSignerException;
***************
*** 248,271 ****
*/
public class NamedObjectBuilder extends Builder implements Cloneable {
- /*
- protected NamedObjectBuilder(final String name, final String tagName, final String prefix, final String nsURI) throws InvalidNamedObjectException {
- super(tagName, prefix, nsURI);
- createDocument();
- setName(name);
- }
- */
-
- /*
- protected NamedObjectBuilder(final String name, final String tagName, final Namespace ns) throws InvalidNamedObjectException {
- super(tagName, ns);
- createDocument();
- setName(name);
- }
- */
-
- protected NamedObjectBuilder(final String name, final String tagName) throws InvalidNamedObjectException {
- super(tagName, NSTools.NS_NEUID);
- setName(name);
- }
protected NamedObjectBuilder(final String name, final QName qname) throws InvalidNamedObjectException {
--- 255,258 ----
***************
*** 310,321 ****
}
- /**
- * The Name of an object within it's parent NameSpace
- *
- * @return Parent Name
- */
- public final String getLocalName() throws InvalidNamedObjectException {
- return NSTools.getLocalName(getName());
- }
private void setName(final String name) throws InvalidNamedObjectException {
--- 297,300 ----
***************
*** 328,350 ****
}
- /**
- * Helper method to create and add an attribute to this element within the NEUID namespace
- *
- * @param name
- */
- protected final void createNEUIDAttribute(String name, String value) {
- getElement().addAttribute(createNEUIDQName(name), value);
- }
-
- /**
- * Helper method to create a QName within the NEUID namespace
- *
- * @param name
- * @return
- */
- protected static QName createNEUIDQName(String name) {
- return DocumentHelper.createQName(name, NSTools.NS_NEUID);
- }
-
--- 307,310 ----
Index: SignatureRequestBuilder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/builders/SignatureRequestBuilder.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** SignatureRequestBuilder.java 13 Jan 2004 15:11:35 -0000 1.9
--- SignatureRequestBuilder.java 19 Jan 2004 23:49:44 -0000 1.10
***************
*** 4,8 ****
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.Utility;
- import org.neuclear.id.NSTools;
import org.neuclear.id.SignatureRequest;
--- 4,7 ----
***************
*** 27,30 ****
--- 26,34 ----
$Id$
$Log$
+ Revision 1.10 2004/01/19 23:49:44 pelle
+ Unit testing uncovered further issues with Base32
+ NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
+ Well on the way towards full "green" on Junit.
+
Revision 1.9 2004/01/13 15:11:35 pelle
Now builds.
***************
*** 80,86 ****
* Time: 12:45:14 PM
*/
! public final class SignatureRequestBuilder extends NamedObjectBuilder {
! public SignatureRequestBuilder(final String requestor, final String userid, final Builder unsigned, final String description) throws NeuClearException {
! super(NSTools.createUniqueTransactionID(requestor, userid), SignatureRequest.SIGREQUEST_TAG);
final Element unsignedElem = addElement("Unsigned");
unsignedElem.add(unsigned.getElement());
--- 84,90 ----
* Time: 12:45:14 PM
*/
! public final class SignatureRequestBuilder extends Builder {
! public SignatureRequestBuilder(final String userid, final Builder unsigned, final String description) throws NeuClearException {
! super(createNEUIDQName(SignatureRequest.SIGREQUEST_TAG));
final Element unsignedElem = addElement("Unsigned");
unsignedElem.add(unsigned.getElement());
Index: SignedMessageBuilder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/builders/SignedMessageBuilder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** SignedMessageBuilder.java 13 Jan 2004 15:11:35 -0000 1.2
--- SignedMessageBuilder.java 19 Jan 2004 23:49:44 -0000 1.3
***************
*** 1,9 ****
package org.neuclear.id.builders;
- import org.dom4j.Namespace;
import org.neuclear.commons.NeuClearException;
- import org.neuclear.id.NSTools;
import org.neuclear.id.SignedMessage;
- import org.neuclear.id.Identity;
/**
--- 1,6 ----
***************
*** 14,23 ****
* To change this template use Options | File Templates.
*/
! public class SignedMessageBuilder extends NamedObjectBuilder{
! public SignedMessageBuilder(Identity signer, String recipient, String subject, String message) throws NeuClearException {
! super(NSTools.createUniqueTransactionID(signer.getName(), recipient), SignedMessage.TAG_NAME);
! createAttribute("recipient",recipient);
! addElement("subject").setText(subject);
! addElement("message").setText(message);
}
}
--- 11,20 ----
* To change this template use Options | File Templates.
*/
! public class SignedMessageBuilder extends Builder{
! public SignedMessageBuilder(String recipient, String subject, String message) throws NeuClearException {
! super(createNEUIDQName(SignedMessage.TAG_NAME));
! addElement("Recipient").setText(recipient);
! addElement("Subject").setText(subject);
! addElement("Message").setText(message);
}
}
|
|
From: <pe...@us...> - 2004-01-19 23:49:32
|
Update of /cvsroot/neuclear/neuclear-commons/src/test/org/neuclear/commons/crypto
In directory sc8-pr-cvs1:/tmp/cvs-serv9201/src/test/org/neuclear/commons/crypto
Modified Files:
Base32Tests.java
Log Message:
Unit testing uncovered further issues with Base32
NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
Well on the way towards full "green" on Junit.
Index: Base32Tests.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-commons/src/test/org/neuclear/commons/crypto/Base32Tests.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** Base32Tests.java 19 Jan 2004 17:53:14 -0000 1.3
--- Base32Tests.java 19 Jan 2004 23:49:29 -0000 1.4
***************
*** 23,26 ****
--- 23,31 ----
$Id$
$Log$
+ Revision 1.4 2004/01/19 23:49:29 pelle
+ Unit testing uncovered further issues with Base32
+ NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
+ Well on the way towards full "green" on Junit.
+
Revision 1.3 2004/01/19 17:53:14 pelle
Various clean ups
***************
*** 45,49 ****
}
! public void testBase32() throws CryptoException {
assertEquals(32,Base32.encode(CryptoTools.digest("hello")).length());
assertEquals(8,Base32.encode("hello").length());
--- 50,54 ----
}
! public void testLength() throws CryptoException {
assertEquals(32,Base32.encode(CryptoTools.digest("hello")).length());
assertEquals(8,Base32.encode("hello").length());
***************
*** 55,67 ****
assertEquals(18,Base32.encode("hello123456").length());
for (int i=0;i<TESTSTRINGS.length;i++){
// System.out.print("Encoding: "+TESTSTRINGS[i]+" ...");
final String encoded = Base32.encode(TESTSTRINGS[i]);
// System.out.println(" ->"+encoded);
! assertEquals(TESTSTRINGS[i],new String(Base32.decode(encoded)));
}
}
static final String TESTSTRINGS[] =new String[]{
! // "",
"0",
"01",
--- 60,121 ----
assertEquals(18,Base32.encode("hello123456").length());
+ }
+ public void testBase32Codec() throws CryptoException {
+
for (int i=0;i<TESTSTRINGS.length;i++){
// System.out.print("Encoding: "+TESTSTRINGS[i]+" ...");
final String encoded = Base32.encode(TESTSTRINGS[i]);
// System.out.println(" ->"+encoded);
! assertEquals("TESTSTRINGS["+i+"]",TESTSTRINGS[i].getBytes(),Base32.decode(encoded));
! }
! }
!
! public void testSHABase32() throws CryptoException {
! for (int i=0;i<TESTSTRINGS.length;i++){
! // System.out.print("Encoding: "+TESTSTRINGS[i]+" ...");
! final String hash = com.waterken.url.Base32.encode(CryptoTools.digest(TESTSTRINGS[i]));
! assertEquals(32, hash.length());
! // System.out.println(" ->"+hash);
! assertTrue("TESTSTRINGS["+i+"]",CryptoTools.equalByteArrays(CryptoTools.digest(TESTSTRINGS[i]),Base32.decode(hash)));
! }
! }
! public void testSHABase32vsTyler() throws CryptoException {
! for (int i=0;i<TESTSTRINGS.length;i++){
! // System.out.print("Encoding: "+TESTSTRINGS[i]+" ...");
! final String hash = com.waterken.url.Base32.encode(CryptoTools.digest(TESTSTRINGS[i]));
! assertEquals(32, hash.length());
! // System.out.println(" ->"+hash);
! assertTrue("TESTSTRINGS["+i+"]",CryptoTools.equalByteArrays(CryptoTools.digest(TESTSTRINGS[i]),Base32.decode(hash)));
}
}
+
+ public void testBase32vsTyler() throws CryptoException {
+
+ for (int i=0;i<TESTSTRINGS.length;i++){
+ // System.out.print("Encoding: "+TESTSTRINGS[i]+" ...");
+ final String encoded = Base32.encode(TESTSTRINGS[i]);
+ // System.out.println(" ->"+encoded);
+ assertEquals("TESTSTRINGS["+i+"]",com.waterken.url.Base32.encode(TESTSTRINGS[i].getBytes()),encoded);
+ }
+ }
+
+ public void testDecodeTyler() throws CryptoException {
+
+ for (int i=0;i<TESTSTRINGS.length;i++){
+ // System.out.print("Encoding: "+TESTSTRINGS[i]+" ...");
+ // final String encoded = Base32.encode(TESTSTRINGS[i]);
+ // System.out.println(" ->"+encoded);
+ final byte decoded[] = Base32.decode(com.waterken.url.Base32.encode(TESTSTRINGS[i].getBytes()));
+ assertEquals("TESTSTRINGS["+i+"]",TESTSTRINGS[i].getBytes(),decoded);
+ }
+ }
+ public void assertEquals(String description,byte a[],byte b[]) {
+ assertEquals(description+" length",a.length,b.length);
+ for (int i=0;i<a.length;i++)
+ assertEquals(description+"["+i+"]",a[i],b[i]);
+
+ }
static final String TESTSTRINGS[] =new String[]{
! "",
"0",
"01",
***************
*** 75,78 ****
--- 129,135 ----
"0123456789",
"0123456789A",
+ "0123456789A0123456789As0123456789A",
+ new String(CryptoTools.digest("0123456"))
+
};
|
|
From: <pe...@us...> - 2004-01-19 23:49:32
|
Update of /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto
In directory sc8-pr-cvs1:/tmp/cvs-serv9201/src/java/org/neuclear/commons/crypto
Modified Files:
Base32.java
Log Message:
Unit testing uncovered further issues with Base32
NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
Well on the way towards full "green" on Junit.
Index: Base32.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/Base32.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** Base32.java 19 Jan 2004 17:53:13 -0000 1.3
--- Base32.java 19 Jan 2004 23:49:29 -0000 1.4
***************
*** 22,25 ****
--- 22,30 ----
$Id$
$Log$
+ Revision 1.4 2004/01/19 23:49:29 pelle
+ Unit testing uncovered further issues with Base32
+ NSTools is now uptodate as are many other classes. All transactional builders habe been updated.
+ Well on the way towards full "green" on Junit.
+
Revision 1.3 2004/01/19 17:53:13 pelle
Various clean ups
***************
*** 181,185 ****
for (int j=0;j<ecsize;j++){
encoded[ei+ecsize-1-j]=encodeVal((byte) (chs&31));
! chs>>=5;
}
}
--- 186,190 ----
for (int j=0;j<ecsize;j++){
encoded[ei+ecsize-1-j]=encodeVal((byte) (chs&31));
! chs>>>=5;
}
}
***************
*** 187,191 ****
}
private static byte getPart(long chunk,int num){
! return (byte) ((chunk>>((7-num)*5))&31);
}
/**
--- 192,196 ----
}
private static byte getPart(long chunk,int num){
! return (byte) ((chunk>>>((7-num)*5))&31);
}
/**
|
|
From: <pe...@us...> - 2004-01-19 19:23:36
|
Update of /cvsroot/neuclear/neuclear-id
In directory sc8-pr-cvs1:/tmp/cvs-serv25481
Modified Files:
neuclear.iws
Log Message:
Misc changes
Index: neuclear.iws
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/neuclear.iws,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** neuclear.iws 19 Jan 2004 17:54:59 -0000 1.8
--- neuclear.iws 19 Jan 2004 19:23:33 -0000 1.9
***************
*** 82,86 ****
<component name="DebuggerManager">
<line_breakpoints>
! <breakpoint url="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/Base32.java" line="145">
<option name="ENABLED" value="true" />
<option name="SUSPEND_VM" value="true" />
--- 82,86 ----
<component name="DebuggerManager">
<line_breakpoints>
! <breakpoint url="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/Base32.java" line="148">
<option name="ENABLED" value="true" />
<option name="SUSPEND_VM" value="true" />
***************
*** 124,128 ****
<entry file="file://$PROJECT_DIR$/src/test/org/neuclear/id/SignedNamedCoreTest.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="109" column="32" selection-start="4675" selection-end="4675" vertical-scroll-proportion="1.1144068">
<folding />
</state>
--- 124,128 ----
<entry file="file://$PROJECT_DIR$/src/test/org/neuclear/id/SignedNamedCoreTest.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="112" column="32" selection-start="4794" selection-end="4794" vertical-scroll-proportion="1.1144068">
<folding />
</state>
***************
*** 138,142 ****
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/builders/NamedObjectBuilder.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="373" column="11" selection-start="15944" selection-end="15944" vertical-scroll-proportion="1.6991526">
<folding />
</state>
--- 138,142 ----
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/builders/NamedObjectBuilder.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="376" column="11" selection-start="16072" selection-end="16072" vertical-scroll-proportion="1.6991526">
<folding />
</state>
***************
*** 159,163 ****
<entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/JCESigner.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="388" column="0" selection-start="17598" selection-end="17598" vertical-scroll-proportion="0.4470339">
<folding />
</state>
--- 159,163 ----
<entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/JCESigner.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="391" column="0" selection-start="17667" selection-end="17667" vertical-scroll-proportion="0.4470339">
<folding />
</state>
***************
*** 180,184 ****
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/NSTools.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="278" column="48" selection-start="14446" selection-end="14468" vertical-scroll-proportion="0.7457627">
<folding />
</state>
--- 180,184 ----
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/NSTools.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="281" column="48" selection-start="14596" selection-end="14596" vertical-scroll-proportion="0.7457627">
<folding />
</state>
***************
*** 187,191 ****
<entry file="file://$PROJECT_DIR$/src/test/org/neuclear/id/NSToolsTest.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="263" column="23" selection-start="11686" selection-end="11686" vertical-scroll-proportion="0.8601695">
<folding />
</state>
--- 187,191 ----
<entry file="file://$PROJECT_DIR$/src/test/org/neuclear/id/NSToolsTest.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="266" column="23" selection-start="11810" selection-end="11810" vertical-scroll-proportion="0.8601695">
<folding />
</state>
***************
*** 518,522 ****
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/builders/NamedObjectBuilder.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="373" column="11" selection-start="15944" selection-end="15944" vertical-scroll-proportion="1.6991526">
<folding />
</state>
--- 518,522 ----
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/builders/NamedObjectBuilder.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="376" column="11" selection-start="16072" selection-end="16072" vertical-scroll-proportion="1.6991526">
<folding />
</state>
***************
*** 525,529 ****
<entry file="file://$PROJECT_DIR$/src/test/org/neuclear/id/SignedNamedCoreTest.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="109" column="32" selection-start="4675" selection-end="4675" vertical-scroll-proportion="1.1144068">
<folding />
</state>
--- 525,529 ----
<entry file="file://$PROJECT_DIR$/src/test/org/neuclear/id/SignedNamedCoreTest.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="112" column="32" selection-start="4794" selection-end="4794" vertical-scroll-proportion="1.1144068">
<folding />
</state>
***************
*** 539,543 ****
<entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/JCESigner.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="388" column="0" selection-start="17598" selection-end="17598" vertical-scroll-proportion="0.4470339">
<folding />
</state>
--- 539,543 ----
<entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/JCESigner.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="391" column="0" selection-start="17667" selection-end="17667" vertical-scroll-proportion="0.4470339">
<folding />
</state>
***************
*** 560,564 ****
<entry file="file://$PROJECT_DIR$/src/test/org/neuclear/id/NSToolsTest.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="263" column="23" selection-start="11686" selection-end="11686" vertical-scroll-proportion="0.8601695">
<folding />
</state>
--- 560,564 ----
<entry file="file://$PROJECT_DIR$/src/test/org/neuclear/id/NSToolsTest.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="266" column="23" selection-start="11810" selection-end="11810" vertical-scroll-proportion="0.8601695">
<folding />
</state>
***************
*** 567,571 ****
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/NSTools.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="278" column="48" selection-start="14446" selection-end="14468" vertical-scroll-proportion="0.7457627">
<folding />
</state>
--- 567,571 ----
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/NSTools.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="281" column="48" selection-start="14596" selection-end="14596" vertical-scroll-proportion="0.7457627">
<folding />
</state>
|
|
From: <pe...@us...> - 2004-01-19 17:55:04
|
Update of /cvsroot/neuclear/neuclear-id/src/test/org/neuclear/id/jce In directory sc8-pr-cvs1:/tmp/cvs-serv32609/src/test/org/neuclear/id/jce Modified Files: NeuClearJCETest.java Log Message: Updated the NeuClear ID naming scheme to support various levels of semantics Index: NeuClearJCETest.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-id/src/test/org/neuclear/id/jce/NeuClearJCETest.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** NeuClearJCETest.java 19 Dec 2003 00:31:31 -0000 1.10 --- NeuClearJCETest.java 19 Jan 2004 17:55:00 -0000 1.11 *************** *** 2,20 **** import org.neuclear.commons.NeuClearException; import org.neuclear.commons.crypto.passphraseagents.AlwaysTheSamePassphraseAgent; import org.neuclear.commons.crypto.signers.JCESigner; - import org.neuclear.commons.crypto.CryptoException; - import org.neuclear.commons.crypto.CryptoTools; import org.neuclear.id.Identity; import org.neuclear.id.InvalidNamedObjectException; - import org.neuclear.id.builders.AuthenticationTicketBuilder; import org.neuclear.id.builders.IdentityBuilder; import org.neuclear.tests.AbstractSigningTest; import org.neuclear.xml.XMLException; - import java.io.IOException; import java.io.File; - import java.io.FileOutputStream; import java.io.FileInputStream; import java.security.*; import java.security.cert.Certificate; --- 2,18 ---- import org.neuclear.commons.NeuClearException; + import org.neuclear.commons.crypto.CryptoTools; import org.neuclear.commons.crypto.passphraseagents.AlwaysTheSamePassphraseAgent; import org.neuclear.commons.crypto.signers.JCESigner; import org.neuclear.id.Identity; import org.neuclear.id.InvalidNamedObjectException; import org.neuclear.id.builders.IdentityBuilder; import org.neuclear.tests.AbstractSigningTest; import org.neuclear.xml.XMLException; import java.io.File; import java.io.FileInputStream; + import java.io.FileOutputStream; + import java.io.IOException; import java.security.*; import java.security.cert.Certificate; *************** *** 42,45 **** --- 40,46 ---- $Id$ $Log$ + Revision 1.11 2004/01/19 17:55:00 pelle + Updated the NeuClear ID naming scheme to support various levels of semantics + Revision 1.10 2003/12/19 00:31:31 pelle Lots of usability changes through out all the passphrase agents and end user tools. |
|
From: <pe...@us...> - 2004-01-19 17:55:04
|
Update of /cvsroot/neuclear/neuclear-id/src/test/org/neuclear/id
In directory sc8-pr-cvs1:/tmp/cvs-serv32609/src/test/org/neuclear/id
Modified Files:
NSToolsTest.java SignedMessageTest.java
SignedNamedCoreTest.java
Log Message:
Updated the NeuClear ID naming scheme to support various levels of semantics
Index: NSToolsTest.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/test/org/neuclear/id/NSToolsTest.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** NSToolsTest.java 15 Jan 2004 00:02:08 -0000 1.17
--- NSToolsTest.java 19 Jan 2004 17:55:00 -0000 1.18
***************
*** 2,5 ****
--- 2,8 ----
$Id$
$Log$
+ Revision 1.18 2004/01/19 17:55:00 pelle
+ Updated the NeuClear ID naming scheme to support various levels of semantics
+
Revision 1.17 2004/01/15 00:02:08 pelle
Problem fixed with Enveloping signatures.
***************
*** 160,163 ****
--- 163,173 ----
assertTrue("Should be invalid='" + name + "'", !NSTools.isValidName(name));
}
+ private static void assertValidTransaction(final String name) throws NeuClearException {
+ assertTrue("Should be valid='" + name + "'", NSTools.isValidTransactionName(name));
+ }
+
+ private static void assertInvalidTransaction(final String name) throws NeuClearException {
+ assertTrue("Should be invalid='" + name + "'", !NSTools.isValidTransactionName(name));
+ }
public final void testValidName() throws NeuClearException {
***************
*** 173,183 ****
assertValidName("neu://help!aasfdasdf3_.-243");
- assertValidName("neu://help/abcdefg232Avc!aasfdasdf3_.-243");
assertValidName("neu://pelle@help!aasfdasdf3_.-243");
- assertValidName("neu://pelle@help/abcdefg232Avc!aasfdasdf3_.-243");
assertValidName("neu://pelle@neuclear.org!aasfdasdf3_.-243");
! assertValidName("neu://pelle@neuclear.org/abcdefg232Avc!aasfdasdf3_.-243");
assertInvalidName("neu:/");
--- 183,191 ----
assertValidName("neu://help!aasfdasdf3_.-243");
assertValidName("neu://pelle@help!aasfdasdf3_.-243");
assertValidName("neu://pelle@neuclear.org!aasfdasdf3_.-243");
! assertValidName("sha1:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
assertInvalidName("neu:/");
***************
*** 205,208 ****
--- 213,226 ----
}
+ public final void testValidTransaction() throws NeuClearException {
+ assertValidTransaction("sha1:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!7777774l77777oab7777775a7777777t");
+ assertValidTransaction("pet:bill!7777774l77777oab7777775a7777777t");
+ assertValidTransaction("neu://heybob!7777774l77777oab7777775a7777777t");
+ assertInvalidTransaction("sha1:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!shoes");
+ assertInvalidTransaction("pet:bill!7777774l77777oab7777775a7777777t3");
+ assertInvalidTransaction("neu://heybob!7777774l77777oab7777775a77771t");
+
+ }
+
public static void testNormalize() throws NeuClearException {
assertEquals("neu://hello", NSTools.normalizeNameURI("/hello"));
Index: SignedMessageTest.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/test/org/neuclear/id/SignedMessageTest.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** SignedMessageTest.java 16 Dec 2003 15:05:00 -0000 1.1
--- SignedMessageTest.java 19 Jan 2004 17:55:00 -0000 1.2
***************
*** 1,10 ****
package org.neuclear.id;
- import org.neuclear.tests.AbstractSigningTest;
- import org.neuclear.tests.AbstractObjectCreationTest;
import org.neuclear.commons.NeuClearException;
- import org.neuclear.id.builders.SignedMessageBuilder;
import org.neuclear.id.builders.NamedObjectBuilder;
! import org.neuclear.xml.XMLException;
import java.security.GeneralSecurityException;
--- 1,8 ----
package org.neuclear.id;
import org.neuclear.commons.NeuClearException;
import org.neuclear.id.builders.NamedObjectBuilder;
! import org.neuclear.id.builders.SignedMessageBuilder;
! import org.neuclear.tests.AbstractObjectCreationTest;
import java.security.GeneralSecurityException;
Index: SignedNamedCoreTest.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/test/org/neuclear/id/SignedNamedCoreTest.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** SignedNamedCoreTest.java 14 Jan 2004 06:42:15 -0000 1.7
--- SignedNamedCoreTest.java 19 Jan 2004 17:55:00 -0000 1.8
***************
*** 33,36 ****
--- 33,39 ----
$Id$
$Log$
+ Revision 1.8 2004/01/19 17:55:00 pelle
+ Updated the NeuClear ID naming scheme to support various levels of semantics
+
Revision 1.7 2004/01/14 06:42:15 pelle
Got rid of the verifyXXX() methods
***************
*** 94,98 ****
System.out.println(bobx.getName());
assertNotNull(bobx.getEncoded());
! assertNull(bobx.getSigner());
assertNotNull(bobx.getPublicKey());
}
--- 97,101 ----
System.out.println(bobx.getName());
assertNotNull(bobx.getEncoded());
! assertNotNull(bobx.getSigner());
assertNotNull(bobx.getPublicKey());
}
***************
*** 110,114 ****
try {
final SignedNamedCore core = SignedNamedCore.read(builder.getElement());
! assertEquals(core.getSignatory().getName(), name);
} catch (InvalidNamedObjectException e) {
assertTrue(e.getLocalizedMessage(), false);
--- 113,117 ----
try {
final SignedNamedCore core = SignedNamedCore.read(builder.getElement());
! // assertEquals(core.getSignatory().getName(), name);
} catch (InvalidNamedObjectException e) {
assertTrue(e.getLocalizedMessage(), false);
|
|
From: <pe...@us...> - 2004-01-19 17:55:03
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/builders
In directory sc8-pr-cvs1:/tmp/cvs-serv32609/src/java/org/neuclear/id/builders
Modified Files:
Builder.java NamedObjectBuilder.java
Log Message:
Updated the NeuClear ID naming scheme to support various levels of semantics
Index: Builder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/builders/Builder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** Builder.java 13 Jan 2004 15:11:35 -0000 1.2
--- Builder.java 19 Jan 2004 17:55:00 -0000 1.3
***************
*** 12,19 ****
import org.neuclear.commons.crypto.signers.NonExistingSignerException;
import org.neuclear.commons.crypto.passphraseagents.UserCancellationException;
! import org.dom4j.QName;
! import org.dom4j.Namespace;
! import org.dom4j.Element;
! import org.dom4j.DocumentHelper;
/**
--- 12,16 ----
import org.neuclear.commons.crypto.signers.NonExistingSignerException;
import org.neuclear.commons.crypto.passphraseagents.UserCancellationException;
! import org.dom4j.*;
/**
***************
*** 27,42 ****
public Builder(final QName qname) {
super(qname);
}
public Builder(final String name, final Namespace ns) {
super(name, ns);
}
public Builder(final Element elem) throws XMLSecurityException {
super(elem);
! }
public Builder(final String name, final String prefix, final String nsURI) {
super(name, prefix, nsURI);
}
--- 24,42 ----
public Builder(final QName qname) {
super(qname);
+ createDocument();
}
public Builder(final String name, final Namespace ns) {
super(name, ns);
+ createDocument();
}
public Builder(final Element elem) throws XMLSecurityException {
super(elem);
! createDocument(); }
public Builder(final String name, final String prefix, final String nsURI) {
super(name, prefix, nsURI);
+ createDocument();
}
***************
*** 45,49 ****
return VerifyingReader.getInstance().read(getElement());
}
!
/**
* Sign NamedObject using given PrivateKey. This also adds a timestamp to the root element prior to signing
--- 45,54 ----
return VerifyingReader.getInstance().read(getElement());
}
! private void createDocument() {
! final Element elem = getElement();
! if (elem.getDocument() == null) {
! final Document doc = DocumentHelper.createDocument(elem);
! }
! }
/**
* Sign NamedObject using given PrivateKey. This also adds a timestamp to the root element prior to signing
Index: NamedObjectBuilder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/builders/NamedObjectBuilder.java,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -d -r1.24 -r1.25
*** NamedObjectBuilder.java 13 Jan 2004 23:38:26 -0000 1.24
--- NamedObjectBuilder.java 19 Jan 2004 17:55:00 -0000 1.25
***************
*** 2,5 ****
--- 2,8 ----
* $Id$
* $Log$
+ * Revision 1.25 2004/01/19 17:55:00 pelle
+ * Updated the NeuClear ID naming scheme to support various levels of semantics
+ *
* Revision 1.24 2004/01/13 23:38:26 pelle
* Refactoring parts of the core of XMLSignature. There shouldnt be any real API changes.
***************
*** 253,256 ****
--- 256,260 ----
*/
+ /*
protected NamedObjectBuilder(final String name, final String tagName, final Namespace ns) throws InvalidNamedObjectException {
super(tagName, ns);
***************
*** 258,265 ****
setName(name);
}
protected NamedObjectBuilder(final String name, final String tagName) throws InvalidNamedObjectException {
super(tagName, NSTools.NS_NEUID);
- createDocument();
setName(name);
}
--- 262,269 ----
setName(name);
}
+ */
protected NamedObjectBuilder(final String name, final String tagName) throws InvalidNamedObjectException {
super(tagName, NSTools.NS_NEUID);
setName(name);
}
***************
*** 267,271 ****
protected NamedObjectBuilder(final String name, final QName qname) throws InvalidNamedObjectException {
super(qname);
- createDocument();
setName(name);
}
--- 271,274 ----
***************
*** 344,353 ****
}
! private void createDocument() {
! final Element elem = getElement();
! if (elem.getDocument() == null) {
! final Document doc = DocumentHelper.createDocument(elem);
! }
! }
--- 347,351 ----
}
!
|
|
From: <pe...@us...> - 2004-01-19 17:55:03
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id
In directory sc8-pr-cvs1:/tmp/cvs-serv32609/src/java/org/neuclear/id
Modified Files:
NSTools.java SignedNamedCore.java
Log Message:
Updated the NeuClear ID naming scheme to support various levels of semantics
Index: NSTools.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/NSTools.java,v
retrieving revision 1.26
retrieving revision 1.27
diff -C2 -d -r1.26 -r1.27
*** NSTools.java 9 Jan 2004 16:34:40 -0000 1.26
--- NSTools.java 19 Jan 2004 17:54:59 -0000 1.27
***************
*** 2,5 ****
--- 2,8 ----
* $Id$
* $Log$
+ * Revision 1.27 2004/01/19 17:54:59 pelle
+ * Updated the NeuClear ID naming scheme to support various levels of semantics
+ *
* Revision 1.26 2004/01/09 16:34:40 pelle
* changed use of base36 encoding to base32 to ensure compatibility with other schemes.
***************
*** 228,232 ****
if (name == null)
return "neu://";
! if (!name.startsWith("neu://"))
name = "neu:/" + name;
if (!isValidName(name))
--- 231,235 ----
if (name == null)
return "neu://";
! if (!name.startsWith("neu:"))
name = "neu:/" + name;
if (!isValidName(name))
***************
*** 277,280 ****
--- 280,289 ----
return (matcher.matches());
}
+ public static boolean isValidTransactionName(final String name) {
+ if (Utility.isEmpty(name))
+ return false;
+ final Matcher matcher = VALID.matcher(name);
+ return (matcher.matches());
+ }
/**
***************
*** 461,469 ****
private static final String VALID_TOP_TOKEN = VALID_USER_TOKEN + "[\\w]([\\w.-]*[\\w])?";
private static final String VALID_SUB_TOKEN = "(\\/[\\w][\\w-]*)*";
! private static final String VALID_TRAN_TOKEN = "(\\![\\w][\\w.-]*)?";
! private static final String VALID_ID = "^neu:" + SCHEME_PREFIX + "\\/\\/(" + VALID_TOP_TOKEN +
! VALID_SUB_TOKEN + VALID_TRAN_TOKEN + ")?$";
private static final Pattern VALID = Pattern.compile(VALID_ID);
private static final String STRIP_URI_ARROBA_EX = "neu://((" + VALID_TOKEN + ")@)?(" + VALID_TOKEN + ")?(" + VALID_SUB_TOKEN + VALID_TRAN_TOKEN + ")$";
--- 470,484 ----
private static final String VALID_TOP_TOKEN = VALID_USER_TOKEN + "[\\w]([\\w.-]*[\\w])?";
private static final String VALID_SUB_TOKEN = "(\\/[\\w][\\w-]*)*";
! private static final String SHA1="[a-zA-Z2-7]{32}";
! private static final String VALID_TRAN_TOKEN = "!"+SHA1+"$";
! private static final String VALID_SHA1ID="^sha1:"+SHA1;
+ private static final String VALID_PETNAME="pet:"+VALID_TOKEN+VALID_TRAN_TOKEN;
+ private static final String VALID_NEU_ID = "neu:\\/\\/(" + VALID_TOP_TOKEN + VALID_SUB_TOKEN+")?";
+ private static final String VALID_ID="^"+VALID_SHA1ID+"|"+VALID_NEU_ID+"|"+VALID_PETNAME+"$";
+
+ private static final String VALID_XACT="^"+VALID_SHA1ID+"|"+VALID_NEU_ID+"|"+VALID_PETNAME+VALID_TRAN_TOKEN+"$";
private static final Pattern VALID = Pattern.compile(VALID_ID);
+ private static final Pattern VALIDX = Pattern.compile(VALID_XACT);
private static final String STRIP_URI_ARROBA_EX = "neu://((" + VALID_TOKEN + ")@)?(" + VALID_TOKEN + ")?(" + VALID_SUB_TOKEN + VALID_TRAN_TOKEN + ")$";
Index: SignedNamedCore.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/SignedNamedCore.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -d -r1.15 -r1.16
*** SignedNamedCore.java 18 Jan 2004 21:20:29 -0000 1.15
--- SignedNamedCore.java 19 Jan 2004 17:54:59 -0000 1.16
***************
*** 2,5 ****
--- 2,8 ----
* $Id$
* $Log$
+ * Revision 1.16 2004/01/19 17:54:59 pelle
+ * Updated the NeuClear ID naming scheme to support various levels of semantics
+ *
* Revision 1.15 2004/01/18 21:20:29 pelle
* Created Base32 encoder that now fully complies with Tyler's spec.
***************
*** 268,271 ****
--- 271,275 ----
import org.neuclear.commons.LowLevelException;
import org.neuclear.commons.crypto.CryptoTools;
+ import org.neuclear.commons.crypto.CryptoException;
import org.neuclear.commons.time.TimeTools;
import org.neuclear.id.resolver.NSResolver;
***************
*** 346,349 ****
--- 350,359 ----
*/
public final static SignedNamedCore read(final Element elem) throws InvalidNamedObjectException, NameResolutionException {
+ try {
+ return readUnnamed(elem);
+ } catch (XMLSecurityException e) {
+ throw new InvalidNamedObjectException("Failed Verification");
+ }
+ /*
final String name = getSignatoryName(elem);
try {
***************
*** 362,366 ****
publicKey = ki.getPublicKey();
}
! if (XMLSecTools.verifySignature(elem, publicKey)) {
final Timestamp timestamp = TimeTools.parseTimeStamp(InvalidNamedObjectException.assertAttributeQName(elem,createQName("timestamp")));
return new SignedNamedCore(name, signatory, timestamp, encodeElement(elem));
--- 372,376 ----
publicKey = ki.getPublicKey();
}
! if (XMLSecTools.verifySignature(elem)) {
final Timestamp timestamp = TimeTools.parseTimeStamp(InvalidNamedObjectException.assertAttributeQName(elem,createQName("timestamp")));
return new SignedNamedCore(name, signatory, timestamp, encodeElement(elem));
***************
*** 371,375 ****
--- 381,388 ----
} catch (ParseException e) {
throw new InvalidNamedObjectException(name,"invalid timestamp");
+ } catch (CryptoException e) {
+ throw new InvalidNamedObjectException(name,"invalid timestamp");
}
+ */
}
|
|
From: <pe...@us...> - 2004-01-19 17:55:03
|
Update of /cvsroot/neuclear/neuclear-id In directory sc8-pr-cvs1:/tmp/cvs-serv32609 Modified Files: neuclear.iws project.properties Log Message: Updated the NeuClear ID naming scheme to support various levels of semantics Index: neuclear.iws =================================================================== RCS file: /cvsroot/neuclear/neuclear-id/neuclear.iws,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** neuclear.iws 18 Jan 2004 21:20:29 -0000 1.7 --- neuclear.iws 19 Jan 2004 17:54:59 -0000 1.8 *************** *** 1,580 **** ! <?xml version="1.0" encoding="UTF-8"?> ! <project version="4" relativePaths="false"> ! <component name="AppServerRunManager" /> ! <component name="AspectsView" /> ! <component name="BookmarkManager" /> ! <component name="CheckinPanelState" /> ! <component name="Commander"> ! <leftPanel /> ! <rightPanel /> ! <splitter proportion="0.5" /> [...1127 lines suppressed...] ! </state> ! </provider> ! </entry> ! <entry file="file://$PROJECT_DIR$/src/test/org/neuclear/id/NSToolsTest.java"> ! <provider selected="true" editor-type-id="text-editor"> ! <state line="263" column="23" selection-start="11686" selection-end="11686" vertical-scroll-proportion="0.8601695"> ! <folding /> ! </state> ! </provider> ! </entry> ! <entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/NSTools.java"> ! <provider selected="true" editor-type-id="text-editor"> ! <state line="278" column="48" selection-start="14446" selection-end="14468" vertical-scroll-proportion="0.7457627"> ! <folding /> ! </state> ! </provider> ! </entry> ! </component> ! </project> ! Index: project.properties =================================================================== RCS file: /cvsroot/neuclear/neuclear-id/project.properties,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** project.properties 18 Jan 2004 21:20:29 -0000 1.28 --- project.properties 19 Jan 2004 17:54:59 -0000 1.29 *************** *** 2,6 **** # P R O J E C T P R O P E R T I E S # ------------------------------------------------------------------- ! maven.test.skip=true maven.compile.debug = on maven.compile.optimize = on --- 2,6 ---- # P R O J E C T P R O P E R T I E S # ------------------------------------------------------------------- ! #maven.test.skip=true maven.compile.debug = on maven.compile.optimize = on |
|
From: <pe...@us...> - 2004-01-19 17:53:18
|
Update of /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/signers In directory sc8-pr-cvs1:/tmp/cvs-serv32020/src/java/org/neuclear/commons/crypto/signers Modified Files: DefaultSigner.java JCESigner.java PublicKeySource.java ServletSignerFactory.java Signer.java SimpleSigner.java TestCaseSigner.java Log Message: Various clean ups Index: DefaultSigner.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/DefaultSigner.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** DefaultSigner.java 19 Dec 2003 00:31:15 -0000 1.4 --- DefaultSigner.java 19 Jan 2004 17:53:14 -0000 1.5 *************** *** 1,13 **** package org.neuclear.commons.crypto.signers; - import org.neuclear.commons.NeuClearException; import org.neuclear.commons.crypto.CryptoTools; - import org.neuclear.commons.crypto.CryptoException; import org.neuclear.commons.crypto.passphraseagents.PassPhraseAgent; import org.neuclear.commons.crypto.passphraseagents.UserCancellationException; - import java.io.FileNotFoundException; - import java.security.GeneralSecurityException; - /* NeuClear Distributed Transaction Clearing Platform --- 1,8 ---- *************** *** 30,33 **** --- 25,31 ---- $Id$ $Log$ + Revision 1.5 2004/01/19 17:53:14 pelle + Various clean ups + Revision 1.4 2003/12/19 00:31:15 pelle Lots of usability changes through out all the passphrase agents and end user tools. Index: JCESigner.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/JCESigner.java,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** JCESigner.java 22 Dec 2003 22:14:37 -0000 1.15 --- JCESigner.java 19 Jan 2004 17:53:14 -0000 1.16 *************** *** 2,5 **** --- 2,8 ---- * $Id$ * $Log$ + * Revision 1.16 2004/01/19 17:53:14 pelle + * Various clean ups + * * Revision 1.15 2003/12/22 22:14:37 pelle * Last minute cleanups and documentation prior to release 0.8.1 *************** *** 148,160 **** package org.neuclear.commons.crypto.signers; - import org.neuclear.commons.NeuClearException; - import org.neuclear.commons.Utility; import org.neuclear.commons.LowLevelException; import org.neuclear.commons.crypto.CryptoException; import org.neuclear.commons.crypto.CryptoTools; ! import org.neuclear.commons.crypto.jce.RawCertificate; import org.neuclear.commons.crypto.passphraseagents.PassPhraseAgent; import org.neuclear.commons.crypto.passphraseagents.UserCancellationException; - import org.neuclear.commons.crypto.passphraseagents.InteractiveAgent; import java.io.*; --- 151,161 ---- package org.neuclear.commons.crypto.signers; import org.neuclear.commons.LowLevelException; + import org.neuclear.commons.Utility; import org.neuclear.commons.crypto.CryptoException; import org.neuclear.commons.crypto.CryptoTools; ! import org.neuclear.commons.crypto.passphraseagents.InteractiveAgent; import org.neuclear.commons.crypto.passphraseagents.PassPhraseAgent; import org.neuclear.commons.crypto.passphraseagents.UserCancellationException; import java.io.*; Index: PublicKeySource.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/PublicKeySource.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PublicKeySource.java 19 Dec 2003 18:02:53 -0000 1.2 --- PublicKeySource.java 19 Jan 2004 17:53:14 -0000 1.3 *************** *** 1,6 **** package org.neuclear.commons.crypto.signers; - import org.neuclear.commons.crypto.CryptoException; - import java.security.PublicKey; --- 1,4 ---- *************** *** 25,28 **** --- 23,29 ---- $Id$ $Log$ + Revision 1.3 2004/01/19 17:53:14 pelle + Various clean ups + Revision 1.2 2003/12/19 18:02:53 pelle Revamped a lot of exception handling throughout the framework, it has been simplified in most places: Index: ServletSignerFactory.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/ServletSignerFactory.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** ServletSignerFactory.java 19 Dec 2003 00:31:15 -0000 1.5 --- ServletSignerFactory.java 19 Jan 2004 17:53:14 -0000 1.6 *************** *** 1,17 **** package org.neuclear.commons.crypto.signers; - import org.neuclear.commons.Utility; import org.neuclear.commons.NeuClearException; ! import org.neuclear.commons.servlets.ServletTools; import org.neuclear.commons.crypto.CryptoTools; import org.neuclear.commons.crypto.passphraseagents.*; import javax.servlet.ServletConfig; - import java.util.HashMap; - import java.util.Map; - import java.util.Collection; - import java.util.Collections; import java.io.FileNotFoundException; import java.security.GeneralSecurityException; /** --- 1,16 ---- package org.neuclear.commons.crypto.signers; import org.neuclear.commons.NeuClearException; ! import org.neuclear.commons.Utility; import org.neuclear.commons.crypto.CryptoTools; import org.neuclear.commons.crypto.passphraseagents.*; + import org.neuclear.commons.servlets.ServletTools; import javax.servlet.ServletConfig; import java.io.FileNotFoundException; import java.security.GeneralSecurityException; + import java.util.Collections; + import java.util.HashMap; + import java.util.Map; /** Index: Signer.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/Signer.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Signer.java 19 Dec 2003 18:02:53 -0000 1.5 --- Signer.java 19 Jan 2004 17:53:14 -0000 1.6 *************** *** 2,5 **** --- 2,8 ---- * $Id$ * $Log$ + * Revision 1.6 2004/01/19 17:53:14 pelle + * Various clean ups + * * Revision 1.5 2003/12/19 18:02:53 pelle * Revamped a lot of exception handling throughout the framework, it has been simplified in most places: *************** *** 97,105 **** package org.neuclear.commons.crypto.signers; - import org.neuclear.commons.crypto.CryptoException; import org.neuclear.commons.crypto.passphraseagents.UserCancellationException; import java.security.PublicKey; - import java.security.cert.Certificate; --- 100,106 ---- Index: SimpleSigner.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/SimpleSigner.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** SimpleSigner.java 19 Dec 2003 18:02:53 -0000 1.9 --- SimpleSigner.java 19 Jan 2004 17:53:14 -0000 1.10 *************** *** 2,5 **** --- 2,8 ---- * $Id$ * $Log$ + * Revision 1.10 2004/01/19 17:53:14 pelle + * Various clean ups + * * Revision 1.9 2003/12/19 18:02:53 pelle * Revamped a lot of exception handling throughout the framework, it has been simplified in most places: *************** *** 127,131 **** package org.neuclear.commons.crypto.signers; - import org.neuclear.commons.NeuClearException; import org.neuclear.commons.LowLevelException; import org.neuclear.commons.crypto.CryptoException; --- 130,133 ---- *************** *** 133,137 **** import org.neuclear.commons.crypto.passphraseagents.PassPhraseAgent; import org.neuclear.commons.crypto.passphraseagents.UserCancellationException; - import org.neuclear.commons.crypto.passphraseagents.InteractiveAgent; import javax.crypto.Cipher; --- 135,138 ---- *************** *** 140,145 **** import java.io.*; import java.security.*; - import java.security.cert.*; - import java.security.cert.Certificate; import java.security.spec.KeySpec; import java.security.spec.PKCS8EncodedKeySpec; --- 141,144 ---- Index: TestCaseSigner.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/signers/TestCaseSigner.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** TestCaseSigner.java 19 Dec 2003 00:31:16 -0000 1.9 --- TestCaseSigner.java 19 Jan 2004 17:53:14 -0000 1.10 *************** *** 1,6 **** package org.neuclear.commons.crypto.signers; - import org.neuclear.commons.NeuClearException; - import org.neuclear.commons.LowLevelException; import org.neuclear.commons.crypto.passphraseagents.AlwaysTheSamePassphraseAgent; import org.neuclear.commons.crypto.passphraseagents.PassPhraseAgent; --- 1,4 ---- *************** *** 8,12 **** import java.io.InputStream; import java.net.URL; - import java.security.GeneralSecurityException; /* --- 6,9 ---- *************** *** 30,33 **** --- 27,33 ---- $Id$ $Log$ + Revision 1.10 2004/01/19 17:53:14 pelle + Various clean ups + Revision 1.9 2003/12/19 00:31:16 pelle Lots of usability changes through out all the passphrase agents and end user tools. |
|
From: <pe...@us...> - 2004-01-19 17:53:17
|
Update of /cvsroot/neuclear/neuclear-commons/src/test/org/neuclear/commons/crypto
In directory sc8-pr-cvs1:/tmp/cvs-serv32020/src/test/org/neuclear/commons/crypto
Modified Files:
Base32Tests.java
Log Message:
Various clean ups
Index: Base32Tests.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-commons/src/test/org/neuclear/commons/crypto/Base32Tests.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** Base32Tests.java 18 Jan 2004 21:20:20 -0000 1.2
--- Base32Tests.java 19 Jan 2004 17:53:14 -0000 1.3
***************
*** 23,26 ****
--- 23,29 ----
$Id$
$Log$
+ Revision 1.3 2004/01/19 17:53:14 pelle
+ Various clean ups
+
Revision 1.2 2004/01/18 21:20:20 pelle
Created Base32 encoder that now fully complies with Tyler's spec.
***************
*** 53,59 ****
for (int i=0;i<TESTSTRINGS.length;i++){
! System.out.print("Encoding: "+TESTSTRINGS[i]+" ...");
final String encoded = Base32.encode(TESTSTRINGS[i]);
! System.out.println(" ->"+encoded);
assertEquals(TESTSTRINGS[i],new String(Base32.decode(encoded)));
}
--- 56,62 ----
for (int i=0;i<TESTSTRINGS.length;i++){
! // System.out.print("Encoding: "+TESTSTRINGS[i]+" ...");
final String encoded = Base32.encode(TESTSTRINGS[i]);
! // System.out.println(" ->"+encoded);
assertEquals(TESTSTRINGS[i],new String(Base32.decode(encoded)));
}
|
Update of /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/passphraseagents In directory sc8-pr-cvs1:/tmp/cvs-serv32020/src/java/org/neuclear/commons/crypto/passphraseagents Modified Files: AskAtStartupAgent.java ConsoleAgent.java GuiDialogAgent.java UserCancellationException.java Log Message: Various clean ups Index: AskAtStartupAgent.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/passphraseagents/AskAtStartupAgent.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** AskAtStartupAgent.java 22 Dec 2003 13:45:25 -0000 1.6 --- AskAtStartupAgent.java 19 Jan 2004 17:53:14 -0000 1.7 *************** *** 1,8 **** package org.neuclear.commons.crypto.passphraseagents; - import org.neuclear.commons.LowLevelException; - - import java.util.Map; import java.util.HashMap; /* --- 1,6 ---- package org.neuclear.commons.crypto.passphraseagents; import java.util.HashMap; + import java.util.Map; /* *************** *** 26,29 **** --- 24,30 ---- $Id$ $Log$ + Revision 1.7 2004/01/19 17:53:14 pelle + Various clean ups + Revision 1.6 2003/12/22 13:45:25 pelle Added a naive benchmarking tool. Index: ConsoleAgent.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/passphraseagents/ConsoleAgent.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ConsoleAgent.java 19 Dec 2003 00:31:15 -0000 1.1 --- ConsoleAgent.java 19 Jan 2004 17:53:14 -0000 1.2 *************** *** 6,11 **** import java.io.IOException; import java.io.InputStreamReader; - import java.util.Map; import java.util.HashMap; /* --- 6,11 ---- import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap; + import java.util.Map; /* *************** *** 29,32 **** --- 29,35 ---- $Id$ $Log$ + Revision 1.2 2004/01/19 17:53:14 pelle + Various clean ups + Revision 1.1 2003/12/19 00:31:15 pelle Lots of usability changes through out all the passphrase agents and end user tools. Index: GuiDialogAgent.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/passphraseagents/GuiDialogAgent.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** GuiDialogAgent.java 22 Dec 2003 22:14:36 -0000 1.6 --- GuiDialogAgent.java 19 Jan 2004 17:53:14 -0000 1.7 *************** *** 4,11 **** import java.awt.event.ActionEvent; import java.awt.event.ActionListener; - import java.awt.event.ItemListener; import java.awt.event.ItemEvent; ! import java.util.Map; import java.util.HashMap; /* --- 4,11 ---- import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; ! import java.awt.event.ItemListener; import java.util.HashMap; + import java.util.Map; /* *************** *** 29,32 **** --- 29,35 ---- $Id$ $Log$ + Revision 1.7 2004/01/19 17:53:14 pelle + Various clean ups + Revision 1.6 2003/12/22 22:14:36 pelle Last minute cleanups and documentation prior to release 0.8.1 Index: UserCancellationException.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/passphraseagents/UserCancellationException.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** UserCancellationException.java 19 Dec 2003 19:56:00 -0000 1.1 --- UserCancellationException.java 19 Jan 2004 17:53:14 -0000 1.2 *************** *** 1,5 **** package org.neuclear.commons.crypto.passphraseagents; - import org.neuclear.commons.crypto.CryptoException; import org.neuclear.commons.NeuClearException; --- 1,4 ---- *************** *** 24,27 **** --- 23,29 ---- $Id$ $Log$ + Revision 1.2 2004/01/19 17:53:14 pelle + Various clean ups + Revision 1.1 2003/12/19 19:56:00 pelle IDEA missed it yet again |
|
From: <pe...@us...> - 2004-01-19 17:53:17
|
Update of /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/applets In directory sc8-pr-cvs1:/tmp/cvs-serv32020/src/java/org/neuclear/commons/crypto/applets Modified Files: KeyGenerationTask.java KeyGeneratorApplet.java Log Message: Various clean ups Index: KeyGenerationTask.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/applets/KeyGenerationTask.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** KeyGenerationTask.java 19 Dec 2003 00:31:15 -0000 1.3 --- KeyGenerationTask.java 19 Jan 2004 17:53:14 -0000 1.4 *************** *** 1,6 **** package org.neuclear.commons.crypto.applets; - import java.security.KeyPairGenerator; import java.security.KeyPair; /** --- 1,6 ---- package org.neuclear.commons.crypto.applets; import java.security.KeyPair; + import java.security.KeyPairGenerator; /** *************** *** 11,14 **** --- 11,17 ---- * $Id$ * $Log$ + * Revision 1.4 2004/01/19 17:53:14 pelle + * Various clean ups + * * Revision 1.3 2003/12/19 00:31:15 pelle * Lots of usability changes through out all the passphrase agents and end user tools. Index: KeyGeneratorApplet.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/applets/KeyGeneratorApplet.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** KeyGeneratorApplet.java 19 Dec 2003 00:31:15 -0000 1.3 --- KeyGeneratorApplet.java 19 Jan 2004 17:53:14 -0000 1.4 *************** *** 4,15 **** import java.applet.Applet; - import java.util.Random; - import java.security.SecureRandom; - import java.security.NoSuchAlgorithmException; - import java.security.KeyPairGenerator; - import java.security.KeyPair; import java.awt.*; - import java.awt.event.ActionListener; import java.awt.event.ActionEvent; /** --- 4,14 ---- import java.applet.Applet; import java.awt.*; import java.awt.event.ActionEvent; + import java.awt.event.ActionListener; + import java.security.KeyPair; + import java.security.KeyPairGenerator; + import java.security.NoSuchAlgorithmException; + import java.security.SecureRandom; /** *************** *** 20,23 **** --- 19,25 ---- * $Id$ * $Log$ + * Revision 1.4 2004/01/19 17:53:14 pelle + * Various clean ups + * * Revision 1.3 2003/12/19 00:31:15 pelle * Lots of usability changes through out all the passphrase agents and end user tools. |
|
From: <pe...@us...> - 2004-01-19 17:53:17
|
Update of /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto
In directory sc8-pr-cvs1:/tmp/cvs-serv32020/src/java/org/neuclear/commons/crypto
Modified Files:
Base32.java
Log Message:
Various clean ups
Index: Base32.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/Base32.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** Base32.java 18 Jan 2004 21:20:20 -0000 1.2
--- Base32.java 19 Jan 2004 17:53:13 -0000 1.3
***************
*** 22,25 ****
--- 22,28 ----
$Id$
$Log$
+ Revision 1.3 2004/01/19 17:53:13 pelle
+ Various clean ups
+
Revision 1.2 2004/01/18 21:20:20 pelle
Created Base32 encoder that now fully complies with Tyler's spec.
***************
*** 46,50 ****
* @return String with Base32 encoding
*/
! public static String encode(final BigInteger big) throws CryptoException {
// System.out.println("JDK toByteArray(): "+encode(big.toByteArray()));
// System.out.println("getBytes(): "+encode(getBytes(big)));
--- 49,53 ----
* @return String with Base32 encoding
*/
! public static String encode(final BigInteger big) {
// System.out.println("JDK toByteArray(): "+encode(big.toByteArray()));
// System.out.println("getBytes(): "+encode(getBytes(big)));
|
|
From: <pe...@us...> - 2004-01-18 21:20:32
|
Update of /cvsroot/neuclear/neuclear-id
In directory sc8-pr-cvs1:/tmp/cvs-serv28625
Modified Files:
neuclear.iws project.properties
Log Message:
Created Base32 encoder that now fully complies with Tyler's spec.
Index: neuclear.iws
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/neuclear.iws,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** neuclear.iws 14 Jan 2004 17:07:52 -0000 1.6
--- neuclear.iws 18 Jan 2004 21:20:29 -0000 1.7
***************
*** 67,71 ****
<option name="SHOW_CHECKIN_OPTIONS" value="true" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
! <option name="LAST_COMMIT_MESSAGE" value="New model of references and signatures now pretty much works. I am still not 100% sure on the created enveloping signatures. I need to do more testing." />
<option name="SAVE_LAST_COMMIT_MESSAGE" value="true" />
<option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" />
--- 67,71 ----
<option name="SHOW_CHECKIN_OPTIONS" value="true" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
! <option name="LAST_COMMIT_MESSAGE" value="KeyInfo containing X509Certificates now work correctly. 10 out of 16 of merlin's tests now work. The missing ones are largely due to key resolution issues. (Read X509)" />
<option name="SAVE_LAST_COMMIT_MESSAGE" value="true" />
<option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" />
***************
*** 81,85 ****
</component>
<component name="DebuggerManager">
! <line_breakpoints />
<exception_breakpoints>
<breakpoint_any>
--- 81,99 ----
</component>
<component name="DebuggerManager">
! <line_breakpoints>
! <breakpoint url="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/Base32.java" line="142">
! <option name="ENABLED" value="true" />
! <option name="SUSPEND_VM" value="true" />
! <option name="LOG_ENABLED" value="false" />
! <option name="LOG_EXPRESSION_ENABLED" value="false" />
! <option name="LOG_MESSAGE" value="" />
! <option name="COUNT_FILTER_ENABLED" value="false" />
! <option name="COUNT_FILTER" value="0" />
! <option name="CONDITION_ENABLED" value="false" />
! <option name="CONDITION" value="" />
! <option name="CLASS_FILTERS_ENABLED" value="false" />
! <option name="INSTANCE_FILTERS_ENABLED" value="false" />
! </breakpoint>
! </line_breakpoints>
<exception_breakpoints>
<breakpoint_any>
***************
*** 107,126 ****
</component>
<component name="FileEditorManager" split-orientation="vertical" split-proportion="0.5">
! <first-group selected-file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-retrievalmethod-rawx509crt.xml">
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/Readme.txt" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="-0.9979839">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-retrievalmethod-rawx509crt.xml" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-x509-crt-crl.xml" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
--- 121,140 ----
</component>
<component name="FileEditorManager" split-orientation="vertical" split-proportion="0.5">
! <first-group selected-file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/CryptoTools.java">
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/Base64.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="74" column="23" selection-start="3919" selection-end="3919" vertical-scroll-proportion="0.5254902">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/Base32.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="196" column="55" selection-start="6463" selection-end="6463" vertical-scroll-proportion="0.7745098">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/carol.properties" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
***************
*** 129,177 ****
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-x509-crt.xml" pinned="false">
! <provider selected="true" editor-type-id="text-editor">
! <state line="29" column="38" selection-start="1644" selection-end="1644" vertical-scroll-proportion="0.5141129">
! <folding />
! </state>
! </provider>
! </entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/test/org/neuclear/xml/xmlsec/SignatureTests.java" pinned="false">
! <provider selected="true" editor-type-id="text-editor">
! <state line="149" column="0" selection-start="7055" selection-end="7055" vertical-scroll-proportion="0.45322245">
! <folding />
! </state>
! </provider>
! </entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/KeyInfo.java" pinned="false">
! <provider selected="true" editor-type-id="text-editor">
! <state line="153" column="112" selection-start="6181" selection-end="6181" vertical-scroll-proportion="0.51975054">
! <folding />
! </state>
! </provider>
! </entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/keyresolvers/KeyResolverFactory.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="44" column="6" selection-start="1673" selection-end="1673" vertical-scroll-proportion="0.09072581">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-x509-ski.xml" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-x509-sn.xml" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/XMLSignature.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="213" column="11" selection-start="10521" selection-end="10521" vertical-scroll-proportion="0.23908524">
<folding />
</state>
--- 143,170 ----
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/CryptoTools.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="543" column="26" selection-start="23387" selection-end="23387" vertical-scroll-proportion="0.3151515">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/test/org/neuclear/commons/crypto/Base32Tests.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="51" column="35" selection-start="1930" selection-end="1930" vertical-scroll-proportion="0.7529412">
<folding />
</state>
</provider>
</entry>
! <entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/SignedNamedCore.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="306" column="29" selection-start="14751" selection-end="14751" vertical-scroll-proportion="0.34747475">
<folding />
</state>
</provider>
</entry>
! <entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/Identity.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
! <state line="364" column="15" selection-start="19120" selection-end="19120" vertical-scroll-proportion="0.52929294">
<folding />
</state>
***************
*** 194,225 ****
<component name="PackagesPane" />
<component name="ProjectPane">
- <expanded_node url="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/controllers/currency" module="neuclear-pay" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig/src/java" module="NeuClear XMLSig" type="directory" />
- <expanded_node url="file://$PROJECT_DIR$/src/schemas" module="neuclear" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-pay/src" module="neuclear-pay" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three" module="NeuClear XMLSig" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml" module="NeuClear XMLSig" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig/src/test" module="NeuClear XMLSig" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig/src/test/org/neuclear/xml/xmlsec" module="NeuClear XMLSig" type="directory" />
- <expanded_node url="file://$PROJECT_DIR$/src" module="neuclear" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/certs" module="NeuClear XMLSig" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/keyresolvers" module="neuclear-commons" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-pay" module="neuclear-pay" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset" module="neuclear-pay" type="directory" />
- <expanded_node url="file://$PROJECT_DIR$/src/java/org/neuclear/id/builders" module="neuclear" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig/src/testdata" module="NeuClear XMLSig" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-commons/src/java" module="neuclear-commons" type="directory" />
- <expanded_node url="file:///home/pelleb/code/neuclear-commons/src" module="neuclear-commons" type="directory" />
- <expanded_node url="file://$PROJECT_DIR$" module="neuclear" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-commons" module="neuclear-commons" type="directory" />
! <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig/src" module="NeuClear XMLSig" type="directory" />
! <expanded_node url="file://$PROJECT_DIR$/src/java/org/neuclear/id" module="neuclear" type="directory" />
! <expanded_node url="file:///home/pelleb/code/neuclear-pay/src/java" module="neuclear-pay" type="directory" />
! <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec" module="NeuClear XMLSig" type="directory" />
! <expanded_node url="file:///home/pelleb/code/neuclear-xmlsig" module="NeuClear XMLSig" type="directory" />
<expanded_node url="file://$PROJECT_DIR$/src/java" module="neuclear" type="directory" />
</component>
<component name="ProjectView">
! <navigator currentView="ProjectPane" flattenPackages="true" showMembers="false" showModules="true" showLibraryContents="false" hideEmptyPackages="false" showStructure="false" autoscrollToSource="false" splitterProportion="0.5" />
</component>
<component name="PropertiesComponent">
--- 187,210 ----
<component name="PackagesPane" />
<component name="ProjectPane">
<expanded_node url="file:///home/pelleb/code/neuclear-commons" module="neuclear-commons" type="directory" />
! <expanded_node url="file:///home/pelleb/code/neuclear-commons/src/test" module="neuclear-commons" type="directory" />
! <expanded_node url="file:///home/pelleb/code/neuclear-commons/src/java" module="neuclear-commons" type="directory" />
! <expanded_node url="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto" module="neuclear-commons" type="directory" />
<expanded_node url="file://$PROJECT_DIR$/src/java" module="neuclear" type="directory" />
+ <expanded_node url="file://$PROJECT_DIR$" module="neuclear" type="directory" />
+ <expanded_node url="file:///home/pelleb/code/neuclear-commons/src" module="neuclear-commons" type="directory" />
+ <expanded_node url="file://$PROJECT_DIR$/src" module="neuclear" type="directory" />
+ <expanded_node url="file:///home/pelleb/code/neuclear-commons/src/test/org/neuclear/commons/crypto" module="neuclear-commons" type="directory" />
</component>
<component name="ProjectView">
! <navigator currentView="ProjectPane" splitterProportion="0.5">
! <flattenPackages ProjectPane="true" />
! <showMembers />
! <showLibraryContents />
! <flattenPackages />
! <hideEmptyPackages />
! <showStructure ProjectPane="false" />
! <autoscrollToSource />
! </navigator>
</component>
<component name="PropertiesComponent">
***************
*** 232,239 ****
</component>
<component name="RunManager">
- <option name="SHOW_SETTINGS_BEFORE_RUNNING" value="true" />
- <option name="COMPILE_BEFORE_RUNNING" value="true" />
- <option name="USE_LAUNCHER_FOR_RUNNING" value="false" />
<activeType name="JUnit" />
<configuration name="<template>" type="Application" default="true" selected="false">
<option name="MAIN_CLASS_NAME" />
--- 217,236 ----
</component>
<component name="RunManager">
<activeType name="JUnit" />
+ <tempConfiguration name="Base32Tests" type="JUnit" default="false" selected="true">
+ <module name="neuclear-commons" />
+ <option name="PACKAGE_NAME" value="org.neuclear.commons.crypto" />
+ <option name="MAIN_CLASS_NAME" value="org.neuclear.commons.crypto.Base32Tests" />
+ <option name="METHOD_NAME" value="" />
+ <option name="TEST_OBJECT" value="class" />
+ <option name="VM_PARAMETERS" value="" />
+ <option name="PARAMETERS" value="" />
+ <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+ <option name="ADDITIONAL_CLASS_PATH">
+ <value>
+ <Item type="Marker" value="" />
+ </value>
+ </option>
+ </tempConfiguration>
<configuration name="<template>" type="Application" default="true" selected="false">
<option name="MAIN_CLASS_NAME" />
***************
*** 263,267 ****
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="ADDITIONAL_CLASS_PATH" />
- <option name="INCLUDE_DEPENDENCIES" value="false" />
</configuration>
<configuration name="<template>" type="Remote" default="true" selected="false">
--- 260,263 ----
***************
*** 282,286 ****
<option name="WEBLOGIC_INSTANCE_CONFIGURATION_NAME" />
</configuration>
! <configuration name="SimpleXML" type="JUnit" default="false" selected="true">
<module name="NeuClear XMLSig" />
<option name="PACKAGE_NAME" value="org.neuclear.xml.xmlsec" />
--- 278,282 ----
<option name="WEBLOGIC_INSTANCE_CONFIGURATION_NAME" />
</configuration>
! <configuration name="SimpleXML" type="JUnit" default="false" selected="false">
<module name="NeuClear XMLSig" />
<option name="PACKAGE_NAME" value="org.neuclear.xml.xmlsec" />
***************
*** 292,296 ****
<option name="WORKING_DIRECTORY" value="/home/pelleb/code/neuclear-xmlsig" />
<option name="ADDITIONAL_CLASS_PATH" />
- <option name="INCLUDE_DEPENDENCIES" value="false" />
</configuration>
</component>
--- 288,291 ----
***************
*** 341,362 ****
<component name="ToolWindowManager">
<frame x="4" y="25" width="1392" height="965" extended-state="6" />
! <editor active="true" />
<layout>
<window_info id="CVS" active="false" anchor="bottom" auto_hide="true" internal_type="docked" type="docked" visible="false" weight="0.33026466" order="8" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="7" />
! <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.27380952" order="0" />
! <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.33026466" order="1" />
! <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="true" internal_type="docked" type="docked" visible="false" weight="0.33026466" order="8" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.4" order="6" />
- <window_info id="Aspects" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1" />
! <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="2" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2" />
<window_info id="CVS File View" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" />
! <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.4" order="4" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="sliding" type="sliding" visible="false" weight="0.4" order="0" />
<window_info id="Web" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="0" />
<window_info id="EJB" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="3" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="5" />
--- 336,357 ----
<component name="ToolWindowManager">
<frame x="4" y="25" width="1392" height="965" extended-state="6" />
! <editor active="false" />
<layout>
<window_info id="CVS" active="false" anchor="bottom" auto_hide="true" internal_type="docked" type="docked" visible="false" weight="0.33026466" order="8" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="7" />
! <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.26860118" order="0" />
! <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33026466" order="1" />
! <window_info id="Structure" active="true" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.25" order="1" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="true" internal_type="docked" type="docked" visible="false" weight="0.33026466" order="8" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.4" order="6" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1" />
! <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.33026466" order="2" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2" />
<window_info id="CVS File View" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" />
! <window_info id="Debug" active="false" anchor="bottom" auto_hide="true" internal_type="docked" type="docked" visible="false" weight="0.4004603" order="4" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="sliding" type="sliding" visible="false" weight="0.4" order="0" />
<window_info id="Web" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="0" />
+ <window_info id="Aspects" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" />
<window_info id="EJB" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="3" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="5" />
***************
*** 428,489 ****
<webview flattenPackages="false" showMembers="false" autoscrollToSource="false" />
</component>
<component name="editorHistoryManager">
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/XMLSecTools.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="339" column="54" selection-start="15217" selection-end="15217" vertical-scroll-proportion="0.48856547">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/InvalidSignatureException.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="12" column="54" selection-start="332" selection-end="332" vertical-scroll-proportion="0.3326613">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/test/org/neuclear/xml/xmlsec/SimpleXMLSigTest.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="127" column="45" selection-start="6220" selection-end="6220" vertical-scroll-proportion="0.5301455">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/Reference.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="156" column="49" selection-start="7146" selection-end="7146" vertical-scroll-proportion="0.23908524">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/keyresolvers/NullResolver.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="12" column="75" selection-start="331" selection-end="331" vertical-scroll-proportion="0.30241936">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/test/org/neuclear/xml/xmlsec/SignatureTests.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="149" column="0" selection-start="7055" selection-end="7055" vertical-scroll-proportion="0.45322245">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-retrievalmethod-rawx509crt.xml">
<provider selected="true" editor-type-id="text-editor">
! <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/Readme.txt">
<provider selected="true" editor-type-id="text-editor">
! <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="-0.9979839">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-x509-crt-crl.xml">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
--- 423,488 ----
<webview flattenPackages="false" showMembers="false" autoscrollToSource="false" />
</component>
+ <component name="antWorkspaceConfiguration">
+ <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+ <option name="FILTER_TARGETS" value="false" />
+ </component>
<component name="editorHistoryManager">
! <entry file="file:///home/pelleb/code/waterken/java/ADT/src/com/waterken/adt/space/Maker.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="11" column="6" selection-start="204" selection-end="204" vertical-scroll-proportion="-0.1380597">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/waterken/java/ADT/src/com/waterken/Nonce.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="11" column="6" selection-start="201" selection-end="201" vertical-scroll-proportion="-0.25">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/waterken/java/ADT/src/com/waterken/adt/hashed/Map.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="52" column="6" selection-start="1533" selection-end="1533" vertical-scroll-proportion="-3.584577">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/waterken/java/ADT/src/com/waterken/adt/hashed/hashtable/HashMap.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="28" column="6" selection-start="780" selection-end="780" vertical-scroll-proportion="0.19011407">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/waterken/java/ADT/src/com/waterken/adt/hashed/hashtable/Index.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="17" column="6" selection-start="366" selection-end="366" vertical-scroll-proportion="-3.619403">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/waterken/java/ADT/src/com/waterken/adt/IF.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="6" column="20" selection-start="143" selection-end="143" vertical-scroll-proportion="0.08442777">
<folding />
</state>
</provider>
</entry>
! <entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/Identity.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="364" column="15" selection-start="19120" selection-end="19120" vertical-scroll-proportion="0.52929294">
<folding />
</state>
</provider>
</entry>
! <entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/SignedNamedCore.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="306" column="29" selection-start="14751" selection-end="14751" vertical-scroll-proportion="0.34747475">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/carol.properties">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
***************
*** 492,533 ****
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/KeyInfo.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="153" column="112" selection-start="6181" selection-end="6181" vertical-scroll-proportion="0.51975054">
! <folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-x509-crt.xml">
<provider selected="true" editor-type-id="text-editor">
! <state line="29" column="38" selection-start="1644" selection-end="1644" vertical-scroll-proportion="0.5141129">
! <folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/XMLSignature.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="213" column="11" selection-start="10521" selection-end="10521" vertical-scroll-proportion="0.23908524">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-x509-ski.xml">
<provider selected="true" editor-type-id="text-editor">
! <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/keyresolvers/KeyResolverFactory.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="44" column="6" selection-start="1673" selection-end="1673" vertical-scroll-proportion="0.09072581">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-xmlsig/src/testdata/merlin-xmldsig-twenty-three/signature-x509-sn.xml">
<provider selected="true" editor-type-id="text-editor">
! <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
<folding />
</state>
--- 491,575 ----
</provider>
</entry>
! <entry file="file:///home/pelleb/code/waterken/java/Enc/src/com/waterken/enc/base32/Decoded.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="17" column="6" selection-start="407" selection-end="407" vertical-scroll-proportion="-1.6294118">
! <folding>
! <marker date="1056825931000" expanded="true" signature="3724:4502" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="4617:4645" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="696:729" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="735:830" placeholder="/**...*/" />
! <marker date="1056825931000" expanded="true" signature="1358:1436" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="1113:1313" placeholder="/**...*/" />
! <marker date="1056825931000" expanded="true" signature="2163:2224" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="1761:1901" placeholder="/**...*/" />
! <marker date="1056825931000" expanded="true" signature="308:387" placeholder="/**...*/" />
! <marker date="1056825931000" expanded="true" signature="2012:4512" placeholder="{...}" />
! <marker date="1056825931000" expanded="false" signature="0:95" placeholder="/.../" />
! <marker date="1056825931000" expanded="true" signature="2625:3214" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="3274:3503" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="3569:3648" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="1521:1584" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="2345:2546" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="887:1081" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="550:594" placeholder="/**...*/" />
! <marker date="1056825931000" expanded="true" signature="1960:4563" placeholder="{...}" />
! <marker date="1056825931000" expanded="true" signature="1442:1486" placeholder="/**...*/" />
! <marker date="1056825931000" expanded="true" signature="1590:1638" placeholder="/**...*/" />
! <marker date="1056825931000" expanded="true" signature="1676:1729" placeholder="{...}" />
! </folding>
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/waterken/java/Enc/src/com/waterken/enc/base32/Encoded.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="115" column="46" selection-start="2450" selection-end="2714" vertical-scroll-proportion="0.88235295">
! <folding>
! <marker date="1056780892000" expanded="true" signature="736:831" placeholder="/**...*/" />
! <marker date="1056780892000" expanded="true" signature="2048:5104" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="1591:1639" placeholder="/**...*/" />
! <marker date="1056780892000" expanded="true" signature="1761:1898" placeholder="/**...*/" />
! <marker date="1056780892000" expanded="true" signature="2101:5053" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="888:1082" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="1443:1487" placeholder="/**...*/" />
! <marker date="1056780892000" expanded="true" signature="2432:3366" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="5158:5186" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="551:595" placeholder="/**...*/" />
! <marker date="1056780892000" expanded="false" signature="0:95" placeholder="/.../" />
! <marker date="1056780892000" expanded="true" signature="307:388" placeholder="/**...*/" />
! <marker date="1056780892000" expanded="true" signature="2251:2311" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="1677:1729" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="697:730" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="1114:1314" placeholder="/**...*/" />
! <marker date="1056780892000" expanded="true" signature="1522:1585" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="1359:1437" placeholder="{...}" />
! <marker date="1056780892000" expanded="true" signature="3442:5043" placeholder="{...}" />
! </folding>
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/test/org/neuclear/commons/crypto/Base32Tests.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="51" column="35" selection-start="1930" selection-end="1930" vertical-scroll-proportion="0.7529412">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/Base64.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="74" column="23" selection-start="3919" selection-end="3919" vertical-scroll-proportion="0.5254902">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/Base32.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="196" column="55" selection-start="6463" selection-end="6463" vertical-scroll-proportion="0.7745098">
<folding />
</state>
</provider>
</entry>
! <entry file="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto/CryptoTools.java">
<provider selected="true" editor-type-id="text-editor">
! <state line="543" column="26" selection-start="23387" selection-end="23387" vertical-scroll-proportion="0.3151515">
<folding />
</state>
Index: project.properties
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/project.properties,v
retrieving revision 1.27
retrieving revision 1.28
diff -C2 -d -r1.27 -r1.28
*** project.properties 19 Dec 2003 18:03:35 -0000 1.27
--- project.properties 18 Jan 2004 21:20:29 -0000 1.28
***************
*** 2,6 ****
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
! #maven.test.skip=true
maven.compile.debug = on
maven.compile.optimize = on
--- 2,6 ----
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
! maven.test.skip=true
maven.compile.debug = on
maven.compile.optimize = on
|
|
From: <pe...@us...> - 2004-01-18 21:20:32
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id In directory sc8-pr-cvs1:/tmp/cvs-serv28625/src/java/org/neuclear/id Modified Files: SignedNamedCore.java Log Message: Created Base32 encoder that now fully complies with Tyler's spec. Index: SignedNamedCore.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/SignedNamedCore.java,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** SignedNamedCore.java 16 Jan 2004 23:42:09 -0000 1.14 --- SignedNamedCore.java 18 Jan 2004 21:20:29 -0000 1.15 *************** *** 2,5 **** --- 2,8 ---- * $Id$ * $Log$ + * Revision 1.15 2004/01/18 21:20:29 pelle + * Created Base32 encoder that now fully complies with Tyler's spec. + * * Revision 1.14 2004/01/16 23:42:09 pelle * Added Base32 class. The Base32 encoding used wasnt following the standards. |
|
From: <pe...@us...> - 2004-01-18 21:20:23
|
Update of /cvsroot/neuclear/neuclear-commons/src/test/org/neuclear/commons/crypto
In directory sc8-pr-cvs1:/tmp/cvs-serv28561/src/test/org/neuclear/commons/crypto
Modified Files:
Base32Tests.java
Log Message:
Created Base32 encoder that now fully complies with Tyler's spec.
Index: Base32Tests.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-commons/src/test/org/neuclear/commons/crypto/Base32Tests.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** Base32Tests.java 16 Jan 2004 23:41:59 -0000 1.1
--- Base32Tests.java 18 Jan 2004 21:20:20 -0000 1.2
***************
*** 23,26 ****
--- 23,29 ----
$Id$
$Log$
+ Revision 1.2 2004/01/18 21:20:20 pelle
+ Created Base32 encoder that now fully complies with Tyler's spec.
+
Revision 1.1 2004/01/16 23:41:59 pelle
Added Base32 class. The Base32 encoding used wasnt following the standards.
***************
*** 44,61 ****
assertEquals(10,Base32.encode("hello1").length());
assertEquals(12,Base32.encode("hello12").length());
! assertEquals(9,Base32.encode("hello123").length());
! assertEquals(14,Base32.encode("hello1234").length());
! assertEquals(15,Base32.encode("hello12345").length());
! assertEquals(16,Base32.encode("hello123456").length());
for (int i=0;i<TESTSTRINGS.length;i++){
! assertEquals(TESTSTRINGS[i],new String(Base32.decode(Base32.encode(TESTSTRINGS[i]))));
}
}
static final String TESTSTRINGS[] =new String[]{
! "0123456789",
! "",
"0",
! "abcde56"
};
--- 47,75 ----
assertEquals(10,Base32.encode("hello1").length());
assertEquals(12,Base32.encode("hello12").length());
! assertEquals(13,Base32.encode("hello123").length());
! assertEquals(15,Base32.encode("hello1234").length());
! assertEquals(16,Base32.encode("hello12345").length());
! assertEquals(18,Base32.encode("hello123456").length());
for (int i=0;i<TESTSTRINGS.length;i++){
! System.out.print("Encoding: "+TESTSTRINGS[i]+" ...");
! final String encoded = Base32.encode(TESTSTRINGS[i]);
! System.out.println(" ->"+encoded);
! assertEquals(TESTSTRINGS[i],new String(Base32.decode(encoded)));
}
}
static final String TESTSTRINGS[] =new String[]{
! // "",
"0",
! "01",
! "012",
! "0123",
! "01234",
! "012345",
! "0123456",
! "01234567",
! "012345678",
! "0123456789",
! "0123456789A",
};
|
|
From: <pe...@us...> - 2004-01-18 21:20:23
|
Update of /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto In directory sc8-pr-cvs1:/tmp/cvs-serv28561/src/java/org/neuclear/commons/crypto Modified Files: Base32.java CryptoTools.java Log Message: Created Base32 encoder that now fully complies with Tyler's spec. Index: Base32.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/Base32.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Base32.java 16 Jan 2004 23:41:59 -0000 1.1 --- Base32.java 18 Jan 2004 21:20:20 -0000 1.2 *************** *** 2,6 **** import java.math.BigInteger; - /* NeuClear Distributed Transaction Clearing Platform --- 2,5 ---- *************** *** 23,26 **** --- 22,28 ---- $Id$ $Log$ + Revision 1.2 2004/01/18 21:20:20 pelle + Created Base32 encoder that now fully complies with Tyler's spec. + Revision 1.1 2004/01/16 23:41:59 pelle Added Base32 class. The Base32 encoding used wasnt following the standards. *************** *** 33,39 **** * <a href="http://www.waterken.com/dev/Enc/base32/">Tyler Close's Base32 page</a> */ ! public class Base32 { //Disallow Instantiation private Base32(){ } /** --- 35,42 ---- * <a href="http://www.waterken.com/dev/Enc/base32/">Tyler Close's Base32 page</a> */ ! public final class Base32 { //Disallow Instantiation private Base32(){ + } /** *************** *** 51,65 **** - /** * Method decodeBase32Element * * ! * @param base32 * * @return */ ! public static byte[] decode(final byte[] base32) throws CryptoException { ! return null; } --- 54,113 ---- /** * Method decodeBase32Element * * ! * @param raw * * @return */ ! public static byte[] decode(final byte[] raw) throws CryptoException { ! final int baselength = (raw.length*5); ! final int mod=baselength%8; ! final int length=getDecodedLength(raw.length); ! final byte decoded[]=new byte[length]; ! final byte chunk[]=new byte[5]; ! long chs=0; ! ! for (int ri=0,di=0;ri<(raw.length);ri=ri+8,di=di+5){ ! int rchsize=(raw.length-ri)>=8?8:(raw.length-ri); ! for (int j=0;j<rchsize;j++){ ! chs=(chs<<5)|decodeVal(raw[ri+j]); ! } ! switch(rchsize){ ! case 0: ! break; ! case 8: ! break; ! case 2: ! if ((chs&0x03)!=0) ! throw new CryptoException("Encoding Error"); ! chs>>=2; ! break; ! case 4: ! if ((chs&0x0F)!=0) ! throw new CryptoException("Encoding Error"); ! chs>>=4; ! break; ! case 5: ! if ((chs&0x01)!=0) ! throw new CryptoException("Encoding Error"); ! chs>>=1; ! break; ! case 7: ! if ((chs&0x07)!=0) ! throw new CryptoException("Encoding Error"); ! chs>>=3; ! break; ! default: ! throw new CryptoException("Encoding Error"); ! } ! int chsize=(length-di)>=5?5:(length-di); ! for (int j=0;j<chsize;j++){ ! decoded[di+(chsize-1-j)]=(byte) ((chs>>(8*j))&0xFF); ! } ! ! } ! return decoded; } *************** *** 80,116 **** * @return the <code>String<code> with encoded data */ ! public static String encode(final byte[] raw) throws CryptoException { return new String(encodeToByteArray(raw)); } ! public static int getEncodedLength(int src){ ! final int baselength = (src*8); final int mod=baselength%5; ! if (mod==0) ! return baselength/5; ! else ! return baselength/5+1; } ! public static byte[] encodeToByteArray(final byte[]raw) throws CryptoException { final int baselength = (raw.length*8); final int mod=baselength%5; final int length=getEncodedLength(raw.length); final byte encoded[]=new byte[length]; ! final byte chunk[]=new byte[5]; long chs=0; //ri= src index, ei= encoded index ! int ci=8; for (int ri=0,ei=0;ri<raw.length;ri=ri+5,ei=ei+8){ ! // System.out.print(", "+ri); ! if (ri==(raw.length-1)&&mod>0) { ! System.arraycopy(raw,ri,chunk,0,mod); ! for(int j=mod;j<5;j++) ! chunk[j]=0; ! ci=(8*mod)/5+(((8*mod)%5==0)?0:1); ! } else ! System.arraycopy(raw,ri,chunk,0,5); ! chs=new BigInteger(chunk).longValue(); ! for (int j=0;j<ci;j++){ ! encoded[ei+j]=encodeVal(getPart(chs,j)); } } --- 128,182 ---- * @return the <code>String<code> with encoded data */ ! public static String encode(final byte[] raw) { return new String(encodeToByteArray(raw)); } ! public static int getEncodedLength(int src) { ! final int baselength = src*8; final int mod=baselength%5; ! if (mod!=0) ! return baselength/5+1; ! return baselength/5; } ! public static int getDecodedLength(int src) { ! final int baselength = src*5; ! return baselength/8; ! } ! ! public static byte[] encodeToByteArray(final byte[]raw) { final int baselength = (raw.length*8); final int mod=baselength%5; final int length=getEncodedLength(raw.length); final byte encoded[]=new byte[length]; ! final byte chunk[]=new byte[8]; long chs=0; //ri= src index, ei= encoded index ! int ci=5; for (int ri=0,ei=0;ri<raw.length;ri=ri+5,ei=ei+8){ ! chs=0; ! int rcsize=(raw.length-ri)>=5?5:(raw.length-ri); ! for (int j=ri;j<(ri+rcsize);j++){ ! chs|=raw[j]; ! chs<<=8; ! } ! chs>>=8; ! int ecsize=(length-ei)>=8?8:(length-ei); ! switch((ecsize)){ ! case 2: ! chs<<=2; ! break; ! case 4: ! chs<<=4; ! break; ! case 5: ! chs<<=1; ! break; ! case 7: ! chs<<=3; ! break; ! } ! for (int j=0;j<ecsize;j++){ ! encoded[ei+ecsize-1-j]=encodeVal((byte) (chs&31)); ! chs>>=5; } } *************** *** 130,138 **** } ! private static byte encodeVal(byte val) throws CryptoException { if (val>31) ! throw new CryptoException("Encode Overflow"); return CROSS[val]; } private static final byte[] CROSS = new byte[]{ --- 196,214 ---- } ! private static byte encodeVal(byte val) { if (val>31) ! throw new RuntimeException("Base32 Encoding Overflow"); return CROSS[val]; } + private static byte decodeVal(byte val) throws CryptoException { + if(val >= 'a' && val <= 'z') + return (byte) (val - 'a'); + else if(val >= '2' && val <= '7') + return (byte) (val - '2' + 26); + else if(val>= 'A' && val <= 'Z') + return (byte)(val - 'A'); + else + throw new CryptoException("Encode Overflow"); + } private static final byte[] CROSS = new byte[]{ Index: CryptoTools.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/CryptoTools.java,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** CryptoTools.java 16 Jan 2004 23:41:59 -0000 1.11 --- CryptoTools.java 18 Jan 2004 21:20:20 -0000 1.12 *************** *** 2,5 **** --- 2,8 ---- * $Id$ * $Log$ + * Revision 1.12 2004/01/18 21:20:20 pelle + * Created Base32 encoder that now fully complies with Tyler's spec. + * * Revision 1.11 2004/01/16 23:41:59 pelle * Added Base32 class. The Base32 encoding used wasnt following the standards. *************** *** 542,547 **** */ public static String encodeBase32(final byte[] val) { ! final BigInteger big = new BigInteger(val); ! return big.toString(32); } --- 545,549 ---- */ public static String encodeBase32(final byte[] val) { ! return Base32.encode(val); } |
|
From: <pe...@us...> - 2004-01-18 21:20:15
|
Update of /cvsroot/neuclear/neuclear-pay
In directory sc8-pr-cvs1:/tmp/cvs-serv28530
Modified Files:
project.xml
Log Message:
Created Base32 encoder that now fully complies with Tyler's spec.
Index: project.xml
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/project.xml,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -d -r1.20 -r1.21
*** project.xml 31 Dec 2003 16:48:43 -0000 1.20
--- project.xml 18 Jan 2004 21:20:12 -0000 1.21
***************
*** 89,93 ****
<id>neuclear-id</id>
<name>neuclear-id</name>
! <version>0.8.1-SNAPSHOT</version>
<properties>
<war.bundle>true</war.bundle>
--- 89,93 ----
<id>neuclear-id</id>
<name>neuclear-id</name>
! <version>0.9-SNAPSHOT</version>
<properties>
<war.bundle>true</war.bundle>
***************
*** 97,101 ****
<id>neuclear-xmlsig</id>
<name>neuclear-xmlsig</name>
! <version>0.11.1-SNAPSHOT</version>
<properties>
<war.bundle>true</war.bundle>
--- 97,101 ----
<id>neuclear-xmlsig</id>
<name>neuclear-xmlsig</name>
! <version>0.12-SNAPSHOT</version>
<properties>
<war.bundle>true</war.bundle>
|
|
From: <pe...@us...> - 2004-01-18 21:20:10
|
Update of /cvsroot/neuclear/neuclear-ledger
In directory sc8-pr-cvs1:/tmp/cvs-serv28498
Modified Files:
project.xml
Log Message:
Created Base32 encoder that now fully complies with Tyler's spec.
Index: project.xml
===================================================================
RCS file: /cvsroot/neuclear/neuclear-ledger/project.xml,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** project.xml 2 Jan 2004 23:18:35 -0000 1.14
--- project.xml 18 Jan 2004 21:20:07 -0000 1.15
***************
*** 70,74 ****
<dependency>
<id>neuclear-id</id>
! <version>0.8.1</version>
<properties>
<war.bundle>true</war.bundle>
--- 70,74 ----
<dependency>
<id>neuclear-id</id>
! <version>0.9-SNAPSHOT</version>
<properties>
<war.bundle>true</war.bundle>
***************
*** 126,130 ****
</properties>
</dependency>
! <dependency>
<groupId>jotm</groupId>
<artifactId>jotm_jrmp_stubs</artifactId>
--- 126,130 ----
</properties>
</dependency>
! <!-- <dependency>
<groupId>jotm</groupId>
<artifactId>jotm_jrmp_stubs</artifactId>
***************
*** 133,137 ****
<war.bundle>true</war.bundle>
</properties>
! </dependency>
<dependency>
<id>xapool</id>
--- 133,137 ----
<war.bundle>true</war.bundle>
</properties>
! </dependency>-->
<dependency>
<id>xapool</id>
|
|
From: <pe...@us...> - 2004-01-16 23:42:13
|
Update of /cvsroot/neuclear/neuclear-id/src/test/org/neuclear/id
In directory sc8-pr-cvs1:/tmp/cvs-serv8224/src/test/org/neuclear/id
Added Files:
IdentityTests.java
Removed Files:
IdentityCreationTest.java NameSpaceTest.java
Log Message:
Added Base32 class. The Base32 encoding used wasnt following the standards.
Added user creatable Identity for Public Keys
--- NEW FILE: IdentityTests.java ---
package org.neuclear.id;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.crypto.CryptoException;
import org.neuclear.commons.crypto.CryptoTools;
import org.neuclear.id.builders.IdentityBuilder;
import org.neuclear.id.builders.NamedObjectBuilder;
import org.neuclear.id.verifier.VerifyingReader;
import org.neuclear.tests.AbstractObjectCreationTest;
import org.neuclear.xml.xmlsec.XMLSecurityException;
import org.neuclear.xml.xmlsec.XMLSignature;
import java.security.GeneralSecurityException;
import java.security.KeyPair;
import java.security.NoSuchAlgorithmException;
/**
* Created by IntelliJ IDEA.
* User: pelleb
* Date: Dec 16, 2003
* Time: 9:29:02 AM
* To change this template use Options | File Templates.
*/
public class IdentityTests extends AbstractObjectCreationTest {
private static final String NAME = "neu://alice@test";
private static final String REPOSITORY = "http://repository.neuclear.org";
private static final String SIGNER = "http://localhost:11870/Signer";
private static final String LOGGER = "http://logger.neuclear.org";
private static final String RECEIVER = "mailto:pe...@ne...";
public IdentityTests(String string) throws NeuClearException, GeneralSecurityException {
super(string);
}
protected void verifyObject(SignedNamedObject obj) {
assertTrue(obj instanceof Identity);
Identity id=(Identity) obj;
// assertEquals(id.getLogger(),LOGGER);
assertEquals(id.getName(),NAME);
assertEquals(id.getRepository(),REPOSITORY);
assertEquals(id.getSigner(),SIGNER);
// assertEquals(id.getReceiver(),RECEIVER);
assertNotNull(id.getPublicKey());
}
protected NamedObjectBuilder createBuilder() throws NeuClearException {
return new IdentityBuilder(NAME,getSigner().getPublicKey(NAME),REPOSITORY,SIGNER,LOGGER,RECEIVER);
}
public void testAnonymous() throws NoSuchAlgorithmException {
KeyPair kp=CryptoTools.createTinyKeyPair();
Identity id=new Identity(kp.getPublic());
assertNotNull(id);
assertNotNull(id.getName());
assertEquals("neu:sha1://",id.getName().substring(0,11));
assertEquals(CryptoTools.encodeBase32(CryptoTools.digest(kp.getPublic().getEncoded())),id.getName().substring(11));
assertEquals(kp.getPublic(),id.getPublicKey());
}
public void testEmbedded() throws NoSuchAlgorithmException, XMLSecurityException, CryptoException, NameResolutionException, InvalidNamedObjectException{
KeyPair kp=CryptoTools.createTinyKeyPair();
Document doc=DocumentHelper.createDocument();
Element elem=doc.addElement("TestElement");
XMLSignature sig=new XMLSignature(kp,elem);
assertEquals(kp.getPublic(),sig.getSignersKey());
SignedNamedObject obj=VerifyingReader.getInstance().read(elem);
System.out.println("Name: "+obj.getName());
assertEquals("neu:sha1://",obj.getName().substring(0,11));
assertEquals(CryptoTools.encodeBase32(CryptoTools.digest(kp.getPublic().getEncoded())),obj.getName().substring(11,43));
assertEquals(CryptoTools.encodeBase32(CryptoTools.digest(obj.getEncoded().getBytes())),obj.getName().substring(obj.getName().length()-32));
Identity id=obj.getSignatory();
assertNotNull(id);
assertNotNull(id.getName());
assertEquals("neu:sha1://",id.getName().substring(0,11));
assertEquals(CryptoTools.encodeBase32(CryptoTools.digest(kp.getPublic().getEncoded())),id.getName().substring(11));
assertEquals(kp.getPublic(),id.getPublicKey());
}
}
--- IdentityCreationTest.java DELETED ---
--- NameSpaceTest.java DELETED ---
|
|
From: <pe...@us...> - 2004-01-16 23:42:13
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id
In directory sc8-pr-cvs1:/tmp/cvs-serv8224/src/java/org/neuclear/id
Modified Files:
Identity.java SignedNamedCore.java
Log Message:
Added Base32 class. The Base32 encoding used wasnt following the standards.
Added user creatable Identity for Public Keys
Index: Identity.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/Identity.java,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -d -r1.28 -r1.29
*** Identity.java 8 Jan 2004 23:39:06 -0000 1.28
--- Identity.java 16 Jan 2004 23:42:09 -0000 1.29
***************
*** 2,5 ****
--- 2,9 ----
* $Id$
* $Log$
+ * Revision 1.29 2004/01/16 23:42:09 pelle
+ * Added Base32 class. The Base32 encoding used wasnt following the standards.
+ * Added user creatable Identity for Public Keys
+ *
* Revision 1.28 2004/01/08 23:39:06 pelle
* XMLSignature can now give you the Signing key and the id of the signer.
***************
*** 308,319 ****
package org.neuclear.id;
- import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.neuclear.commons.NeuClearException;
- import org.neuclear.commons.Utility;
import org.neuclear.commons.crypto.CryptoException;
import org.neuclear.commons.crypto.CryptoTools;
- import org.neuclear.id.resolver.NSResolver;
- import org.neuclear.senders.Sender;
import org.neuclear.xml.xmlsec.KeyInfo;
import org.neuclear.xml.xmlsec.XMLSecTools;
--- 312,319 ----
***************
*** 324,329 ****
import java.security.cert.CertificateEncodingException;
import java.security.cert.CertificateException;
- import java.util.ArrayList;
- import java.util.Iterator;
/**
--- 324,327 ----
***************
*** 351,354 ****
--- 349,359 ----
+ /**
+ * Constructor for creating an Identity object for a "Nymous" Identity.
+ * @param pub
+ */
+ public Identity(final PublicKey pub){
+ this(new SignedNamedCore(pub),pub);
+ }
protected Identity(final SignedNamedCore core, final PublicKey pub) {
***************
*** 359,367 ****
public final String getRepository() {
! return null;
}
public final String getSigner() {
! return null;
}
--- 364,372 ----
public final String getRepository() {
! return "http://repository.neuclear.org";
}
public final String getSigner() {
! return "http://localhost:11870/Signer";
}
Index: SignedNamedCore.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/SignedNamedCore.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** SignedNamedCore.java 14 Jan 2004 06:42:15 -0000 1.13
--- SignedNamedCore.java 16 Jan 2004 23:42:09 -0000 1.14
***************
*** 2,5 ****
--- 2,9 ----
* $Id$
* $Log$
+ * Revision 1.14 2004/01/16 23:42:09 pelle
+ * Added Base32 class. The Base32 encoding used wasnt following the standards.
+ * Added user creatable Identity for Public Keys
+ *
* Revision 1.13 2004/01/14 06:42:15 pelle
* Got rid of the verifyXXX() methods
***************
*** 259,265 ****
import org.dom4j.Element;
import org.dom4j.QName;
import org.neuclear.commons.crypto.CryptoTools;
import org.neuclear.commons.time.TimeTools;
- import org.neuclear.commons.LowLevelException;
import org.neuclear.id.resolver.NSResolver;
import org.neuclear.xml.xmlsec.*;
--- 263,269 ----
import org.dom4j.Element;
import org.dom4j.QName;
+ import org.neuclear.commons.LowLevelException;
import org.neuclear.commons.crypto.CryptoTools;
import org.neuclear.commons.time.TimeTools;
import org.neuclear.id.resolver.NSResolver;
import org.neuclear.xml.xmlsec.*;
***************
*** 287,291 ****
* @param pub
*/
! private SignedNamedCore(final PublicKey pub){
this.digest=CryptoTools.encodeBase32(CryptoTools.digest(pub.getEncoded()));
this.name="neu:sha1://"+digest;
--- 291,295 ----
* @param pub
*/
! public SignedNamedCore(final PublicKey pub){
this.digest=CryptoTools.encodeBase32(CryptoTools.digest(pub.getEncoded()));
this.name="neu:sha1://"+digest;
***************
*** 301,305 ****
*/
private SignedNamedCore(final PublicKey pub, final String encoded){
! this.signer = new Identity(new SignedNamedCore(pub),pub);
this.digest=CryptoTools.encodeBase32(CryptoTools.digest(encoded.getBytes()));
this.name=signer.getName()+"!"+digest;
--- 305,309 ----
*/
private SignedNamedCore(final PublicKey pub, final String encoded){
! this.signer = new Identity(pub);
this.digest=CryptoTools.encodeBase32(CryptoTools.digest(encoded.getBytes()));
this.name=signer.getName()+"!"+digest;
|