Changeset 41e071e


Ignore:
Timestamp:
Jan 3, 2014 3:31:08 PM (8 years ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
fba209c
Parents:
e8e2396
Message:
  • Key cert GUI support:
    • Add setting in i2ptunnel server edit page
    • Comment out cert setting on i2ptunnel server edit page
    • Show key type on susidns details page
    • Show key type on LS debug page
Location:
apps
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java

    re8e2396 r41e071e  
    1515import java.util.TreeMap;
    1616
     17import net.i2p.client.I2PClient;
    1718import net.i2p.data.Base64;
    1819import net.i2p.data.Destination;
     
    176177    public boolean getEncrypt(int tunnel) {
    177178        return getBooleanProperty(tunnel, "i2cp.encryptLeaseSet");
     179    }
     180   
     181    /** @since 0.9.11 */
     182    public int getSigType(int tunnel) {
     183        return getProperty(tunnel, I2PClient.PROP_SIGTYPE, 0);
    178184    }
    179185   
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java

    re8e2396 r41e071e  
    2323
    2424import net.i2p.I2PAppContext;
     25import net.i2p.client.I2PClient;
    2526import net.i2p.data.Base32;
    2627import net.i2p.data.Certificate;
     
    951952        }
    952953    }
     954
    953955    public void setCert(String val) {
    954956        if (val != null) {
     
    958960        }
    959961    }
     962
    960963    public void setSigner(String val) {
    961964        _certSigner = val;
     965    }
     966
     967    /** @since 0.9.11 */
     968    public void setSigType(String val) {
     969        if (val != null) {
     970            _otherOptions.put(I2PClient.PROP_SIGTYPE, val);
     971            if (val.equals("0"))
     972                _certType = 0;
     973            else
     974                _certType = 5;
     975        }
     976        // TODO: Call modifyDestination??
     977        // Otherwise this only works on a new tunnel...
    962978    }
    963979
     
    12061222         PROP_MAX_CONNS_MIN, PROP_MAX_CONNS_HOUR, PROP_MAX_CONNS_DAY,
    12071223         PROP_MAX_TOTAL_CONNS_MIN, PROP_MAX_TOTAL_CONNS_HOUR, PROP_MAX_TOTAL_CONNS_DAY,
    1208          PROP_MAX_STREAMS
     1224         PROP_MAX_STREAMS, I2PClient.PROP_SIGTYPE
    12091225        };
    12101226    private static final String _httpServerOpts[] = {
  • apps/i2ptunnel/jsp/editServer.jsp

    re8e2396 r41e071e  
    492492            </div>
    493493           
     494<% /***************** %>
    494495            <div id="tunnelOptionsField" class="rowItem">
    495496                <label for="cert" accesskey="c">
     
    533534                <button accesskey="S" class="control" type="submit" name="action" value="Modify" title="Force New Cert Now"><%=intl._("Modify")%></button>
    534535                <span class="comment"><%=intl._("(Tunnel must be stopped first)")%></span>
     536            </div>
     537<% **********************/ %>
     538
     539            <div id="tunnelOptionsField" class="rowItem">
     540                <label>
     541                    <%=intl._("Signature type")%>
     542                    (<%=intl._("Experts only! Changes B32!")%>)
     543                </label>
     544            </div>
     545            <div id="hostField" class="rowItem">
     546              <div id="portField" class="rowItem">
     547                <label>DSA-SHA1</label>
     548                <input value="0" type="radio" id="startOnLoad" name="sigType" title="Default"<%=(editBean.getSigType(curTunnel)==0 ? " checked=\"checked\"" : "")%> class="tickbox" />               
     549              </div>
     550              <div id="portField" class="rowItem">
     551                <label>ECDSA-P256</label>
     552                <input value="1" type="radio" id="startOnLoad" name="sigType" title="Advanced users only"<%=(editBean.getSigType(curTunnel)==1 ? " checked=\"checked\"" : "")%> class="tickbox" />               
     553              </div>
     554              <div id="portField" class="rowItem">
     555                <label>ECDSA-P384</label>
     556                <input value="2" type="radio" id="startOnLoad" name="sigType" title="Advanced users only"<%=(editBean.getSigType(curTunnel)==2 ? " checked=\"checked\"" : "")%> class="tickbox" />               
     557              </div>
     558              <div id="portField" class="rowItem">
     559                <label>ECDSA-P521</label>
     560                <input value="3" type="radio" id="startOnLoad" name="sigType" title="Advanced users only"<%=(editBean.getSigType(curTunnel)==3 ? " checked=\"checked\"" : "")%> class="tickbox" />               
     561              </div>
    535562            </div>
    536563                 
  • apps/routerconsole/java/src/net/i2p/router/web/NetDbRenderer.java

    re8e2396 r41e071e  
    2424import java.util.TreeSet;
    2525
     26import net.i2p.data.Base32;
    2627import net.i2p.data.DataHelper;
    2728import net.i2p.data.Destination;
     
    168169                }
    169170                buf.append(" Dist: <b>").append(fmt.format(biLog2(dist))).append("</b><br>");
     171                buf.append(Base32.encode(key.getData())).append(".b32.i2p<br>");
     172                buf.append("Sig type: ").append(dest.getSigningPublicKey().getType()).append("<br>");
    170173                buf.append("Routing Key: ").append(ls.getRoutingKey().toBase64());
    171174                buf.append("<br>");
  • apps/susidns/src/java/src/i2p/susi/dns/AddressBean.java

    re8e2396 r41e071e  
    3030
    3131import net.i2p.I2PAppContext;
     32import net.i2p.crypto.SigType;
    3233import net.i2p.data.Base32;
    3334import net.i2p.data.Base64;
     
    229230                        case Certificate.CERTIFICATE_TYPE_SIGNED:
    230231                                return _("Signed");
     232                        case Certificate.CERTIFICATE_TYPE_KEY:
     233                                return _("Key");
    231234                        default:
    232235                                return _("Type {0}", type);
    233236                }
     237        }
     238
     239        /**
     240         * Do this the easy way
     241         * @since 0.9.11
     242         */
     243        public String getSigType() {
     244                // (4 / 3) * (pubkey length + signing key length)
     245                String cert = destination.substring(512);
     246                if (cert.equals("AAAA"))
     247                        return _("DSA 1024 bit");
     248                byte[] enc = Base64.decode(cert);
     249                if (enc == null)
     250                        // shouldn't happen
     251                        return "invalid";
     252                int type = enc[0] & 0xff;
     253                if (type != Certificate.CERTIFICATE_TYPE_KEY)
     254                        return _("DSA 1024 bit");
     255                int st = ((enc[3] & 0xff) << 8) | (enc[4] & 0xff);
     256                if (st == 0)
     257                        return _("DSA 1024 bit");
     258                SigType stype = SigType.getByCode(st);
     259                if (stype == null)
     260                        return _("Type {0}", st);
     261                return stype.toString();
    234262        }
    235263
  • apps/susidns/src/jsp/details.jsp

    re8e2396 r41e071e  
    108108</tr><tr class="list${book.trClass}">
    109109<td><%=intl._("Signing Key")%></td>
    110 <td><%=intl._("DSA 1024 bit")%></td>
     110<td><%=addr.getSigType()%></td>
    111111</tr><tr class="list${book.trClass}">
    112112<td><%=intl._("Certificate")%></td>
Note: See TracChangeset for help on using the changeset viewer.