diff --git a/router/java/src/net/i2p/router/transport/ntcp/InboundEstablishState.java b/router/java/src/net/i2p/router/transport/ntcp/InboundEstablishState.java
index 824b95452ff189f228c4da86f2ee7a6949638f3f..798db55cae23f6887381d52bd3d7fcd1ef230750 100644
--- a/router/java/src/net/i2p/router/transport/ntcp/InboundEstablishState.java
+++ b/router/java/src/net/i2p/router/transport/ntcp/InboundEstablishState.java
@@ -141,7 +141,7 @@ class InboundEstablishState extends EstablishBase implements NTCP2Payload.Payloa
         }
         if (_state == State.IB_INIT && src.hasRemaining()) {
             int remaining = src.remaining();
-            if (_transport.isNTCP2Enabled()) {
+
                 if (remaining + _received < MSG1_SIZE) {
                     // Less than 64 total received, so we defer the NTCP 1 or 2 decision.
                     // Buffer in _X.
@@ -162,7 +162,7 @@ class InboundEstablishState extends EstablishBase implements NTCP2Payload.Payloa
                     // releaseBufs() will return the unused DH
                     return;
                 //}
-            }
+
         }
     }
 
diff --git a/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java b/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java
index 06682d64bddfeb555018c340be8bb29261132494..acdf4c12bac8e65a257f4c1fa1604865df7980d0 100644
--- a/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java
+++ b/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java
@@ -112,7 +112,6 @@ public class NTCPTransport extends TransportImpl {
     public static final String PROP_BIND_INTERFACE = "i2np.ntcp.bindInterface";
 
     private final NTCPSendFinisher _finisher;
-    private final DHSessionKeyBuilder.Factory _dhFactory;
     private final X25519KeyFactory _xdhFactory;
     private long _lastBadSkew;
     private static final long[] RATES = { 10*60*1000 };
@@ -138,8 +137,6 @@ public class NTCPTransport extends TransportImpl {
     private static final int NTCP2_KEY_LEN = OutboundNTCP2State.KEY_SIZE;
     private static final long MIN_DOWNTIME_TO_REKEY = 30*24*60*60*1000L;
     private static final long MIN_DOWNTIME_TO_REKEY_HIDDEN = 24*60*60*1000L;
-    private final boolean _enableNTCP1;
-    private final boolean _enableNTCP2;
     private final byte[] _ntcp2StaticPubkey;
     private final byte[] _ntcp2StaticPrivkey;
     private final byte[] _ntcp2StaticIV;
@@ -147,12 +144,11 @@ public class NTCPTransport extends TransportImpl {
     private final String _b64Ntcp2StaticIV;
 
     /**
-     *  @param dh null to disable NTCP1
+     *  @param dh unused, ignored
      *  @param xdh null to disable NTCP2
      */
     public NTCPTransport(RouterContext ctx, DHSessionKeyBuilder.Factory dh, X25519KeyFactory xdh) {
         super(ctx);
-        _dhFactory = dh;
         _xdhFactory = xdh;
         _log = ctx.logManager().getLog(getClass());
 
@@ -242,11 +238,9 @@ public class NTCPTransport extends TransportImpl {
         _transientFail = new SharedBid(TransportBid.TRANSIENT_FAIL);
 
         setupPort();
-        _enableNTCP1 = dh != null;
-        _enableNTCP2 = xdh != null;
-        if (!_enableNTCP1 && !_enableNTCP2)
+        if (xdh == null)
             throw new IllegalArgumentException();
-        if (_enableNTCP2) {
+
             boolean shouldSave = false;
             byte[] priv = null;
             byte[] iv = null;
@@ -295,13 +289,7 @@ public class NTCPTransport extends TransportImpl {
             _ntcp2StaticIV = iv;
             _b64Ntcp2StaticPubkey = Base64.encode(_ntcp2StaticPubkey);
             _b64Ntcp2StaticIV = b64IV;
-        } else {
-            _ntcp2StaticPubkey = null;
-            _ntcp2StaticPrivkey = null;
-            _ntcp2StaticIV = null;
-            _b64Ntcp2StaticPubkey = null;
-            _b64Ntcp2StaticIV = null;
-        }
+
     }
     
     /**
@@ -880,10 +868,10 @@ public class NTCPTransport extends TransportImpl {
                 } else if (skipv4) {
                     setOutboundNTCP2Address(false);
                 }
-            } else if (_enableNTCP2) {
+            } else {
                 setOutboundNTCP2Address();
             }
-        } else if (_enableNTCP2) {
+        } else {
             setOutboundNTCP2Address();
         }
         // TransportManager.startListening() calls router.rebuildRouterInfo()
@@ -1119,26 +1107,26 @@ public class NTCPTransport extends TransportImpl {
     net.i2p.router.transport.ntcp.Writer getWriter() { return _writer; }
 
     /**
-     * @return always "NTCP" even if NTCP1 is disabled
+     * @return always "NTCP"
      */
     public String getStyle() { return STYLE; }
 
     /**
-     * An alternate supported style, or null.
-     * @return "NTCP2" or null
+     * An alternate supported style
+     * @return "NTCP2" always
      * @since 0.9.35
      */
     @Override
     public String getAltStyle() {
-        return _enableNTCP2 ? STYLE2 : null;
+        return STYLE2;
     }
 
     /**
-     * @return "NTCP" if NTCP1 is enabled, else "NTCP2"
+     * @return "NTCP2" always
      * @since 0.9.39
      */
     private String getPublishStyle() {
-        return _enableNTCP1 ? STYLE : STYLE2;
+        return STYLE2;
     }
 
     /**
@@ -1146,14 +1134,6 @@ public class NTCPTransport extends TransportImpl {
      */
     EventPumper getPumper() { return _pumper; }
 
-    /**
-     *  @return null if not configured for NTCP1
-     *  @since 0.9
-     */
-    DHSessionKeyBuilder getDHBuilder() {
-        return _dhFactory != null ? _dhFactory.getBuilder() : null;
-    }
-
     /**
      *  @return null if not configured for NTCP2
      *  @since 0.9.36
@@ -1162,18 +1142,6 @@ public class NTCPTransport extends TransportImpl {
         return _xdhFactory;
     }
 
-    /**
-     * Return an unused DH key builder
-     * to be put back onto the queue for reuse.
-     *
-     * @param builder must not have a peerPublicValue set
-     * @since 0.9.16
-     */
-    void returnUnused(DHSessionKeyBuilder builder) {
-        if (_dhFactory != null)
-            _dhFactory.returnUnused(builder);
-    }
-
     /**
      * how long from initial connection attempt (accept() or connect()) until
      * the con must be established to avoid premature close()ing
@@ -1275,8 +1243,6 @@ public class NTCPTransport extends TransportImpl {
      * @since 0.9.35
      */
     private void addNTCP2Options(Properties props) {
-        if (!_enableNTCP2)
-            return;
         // only set i if we are not firewalled
         if (props.containsKey("host")) {
             props.setProperty("i", _b64Ntcp2StaticIV);
@@ -1296,20 +1262,6 @@ public class NTCPTransport extends TransportImpl {
         props.setProperty("v", NTCP2_VERSION);
     }
 
-    /**
-     * Is NTCP1 enabled?
-     *
-     * @since 0.9.39
-     */
-    boolean isNTCP1Enabled() { return _enableNTCP1; }
-
-    /**
-     * Is NTCP2 enabled?
-     *
-     * @since 0.9.35
-     */
-    boolean isNTCP2Enabled() { return _enableNTCP2; }
-
     /**
      * The static priv key
      *
@@ -1348,12 +1300,8 @@ public class NTCPTransport extends TransportImpl {
         int rv;
         String style = addr.getTransportStyle();
         if (style.equals(STYLE)) {
-            if (!_enableNTCP2)
-                return 1;
             rv = 1;
         } else if (style.equals(STYLE2)) {
-            if (!_enableNTCP2)
-                return 0;
             rv = NTCP2_INT_VERSION;
         } else {
             return 0;
@@ -1366,7 +1314,7 @@ public class NTCPTransport extends TransportImpl {
             addr.getOption("s") == null ||
             (!v.equals(NTCP2_VERSION) && !v.startsWith(NTCP2_VERSION_ALT))) {
             // his address is NTCP1 or is outbound NTCP2 only
-            return (rv == 1 && _enableNTCP1) ? 1 : 0;
+            return 0;
         }
         // his address is NTCP2
         // do not validate the s/i b64, we will just catch it later
@@ -1690,13 +1638,9 @@ public class NTCPTransport extends TransportImpl {
             // we are still firewalled (SW firewall, bad UPnP indication, etc.)
             if (_log.shouldLog(Log.INFO))
                 _log.info("old host: " + ohost + " config: " + name + " new: null");
-            if (_enableNTCP2) {
-                // addNTCP2Options() called below
-                newProps.clear();
-                newAddr = new RouterAddress(STYLE2, newProps, NTCP2_OUTBOUND_COST);
-            } else {
-                newAddr = null;
-            }
+            // addNTCP2Options() called below
+            newProps.clear();
+            newAddr = new RouterAddress(STYLE2, newProps, NTCP2_OUTBOUND_COST);
             changed = true;
         }