diff --git a/history.txt b/history.txt
index 70c0756ca8ad011c63d5b53f49ac663bde5d2001..9f30c55c5646f6b5a7d7c28349e25aefa056226d 100644
--- a/history.txt
+++ b/history.txt
@@ -1,4 +1,8 @@
+2020-05-01 zzz
+ * Ratchet: Fix NPE ratcheting IB NSR tagset
+
 2020-04-30 zzz
+ * i2ptunnel: Prevent changing enc type on running tunnel
  * Ratchet: Error handling fixes
  * Streaming: Westwood+ congestion control (ticket #2719)
 
diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java
index 31c35f8c3e7f27dae7384d36e3443978e8ab5e40..ea17ad55f3270be34b24fd56bd0b1495da601896 100644
--- a/router/java/src/net/i2p/router/RouterVersion.java
+++ b/router/java/src/net/i2p/router/RouterVersion.java
@@ -18,7 +18,7 @@ public class RouterVersion {
     /** deprecated */
     public final static String ID = "Monotone";
     public final static String VERSION = CoreVersion.VERSION;
-    public final static long BUILD = 14;
+    public final static long BUILD = 15;
 
     /** for example "-test" */
     public final static String EXTRA = "";
diff --git a/router/java/src/net/i2p/router/crypto/ratchet/RatchetTagSet.java b/router/java/src/net/i2p/router/crypto/ratchet/RatchetTagSet.java
index f483dd842f23ec5f0020a519d64f00c6a8c60f80..794bf748f9b4f5747791f086e9f3bac817047fe4 100644
--- a/router/java/src/net/i2p/router/crypto/ratchet/RatchetTagSet.java
+++ b/router/java/src/net/i2p/router/crypto/ratchet/RatchetTagSet.java
@@ -450,9 +450,12 @@ class RatchetTagSet implements TagSetHandle {
             int toTrim = 0;
             int tagnum;
             while ((tagnum = _sessionTags.keyAt(toTrim)) < tooOld) {
-                int kidx = _sessionKeys.indexOfKey(tagnum);
-                if (kidx >= 0)
-                    _sessionKeys.removeAt(kidx);
+                if (_sessionKeys != null) {
+                    // only for ES tagsets
+                    int kidx = _sessionKeys.indexOfKey(tagnum);
+                    if (kidx >= 0)
+                        _sessionKeys.removeAt(kidx);
+                }
                 if (_lsnr != null)
                     _lsnr.expireTag(_sessionTags.valueAt(toTrim), this);
                 toTrim++;