diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerAcceptor.java b/apps/i2psnark/java/src/org/klomp/snark/PeerAcceptor.java
index 437281b8c76366b769d157ffd615e7f4def16b93..19238cb7c1436d7851917739cc89e61263014372 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/PeerAcceptor.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/PeerAcceptor.java
@@ -170,8 +170,7 @@ class PeerAcceptor
         if (b != PROTO[i])
             throw new IOException("Bad protocol 0x" + Integer.toHexString(b) + " at byte " + i);
     }
-    if (in.skip(8) != 8)
-        throw new IOException("EOF before hash");
+    DataHelper.skip(in, 8);
     byte buf[] = new byte[20];
     int read = DataHelper.read(in, buf);
     if (read != buf.length)
diff --git a/core/java/src/net/i2p/crypto/TrustedUpdate.java b/core/java/src/net/i2p/crypto/TrustedUpdate.java
index a9892b171da0edd2a05f3be8b708fd919fb116c2..ad9524c459962bc21823c76a500a877055dbb5f6 100644
--- a/core/java/src/net/i2p/crypto/TrustedUpdate.java
+++ b/core/java/src/net/i2p/crypto/TrustedUpdate.java
@@ -474,9 +474,7 @@ riCe6OlAEiNpcc6mMyIYYWFICbrDFTrDR3wXqwc/Jkcx6L5VVWoagpSzbo3yGhc=
 
         try {
             fileInputStream = new FileInputStream(signedFile);
-            long skipped = fileInputStream.skip(Signature.SIGNATURE_BYTES);
-            if (skipped != Signature.SIGNATURE_BYTES)
-                return "";
+            DataHelper.skip(fileInputStream, Signature.SIGNATURE_BYTES);
             byte[] data = new byte[VERSION_BYTES];
             int bytesRead = DataHelper.read(fileInputStream, data);
 
@@ -515,9 +513,7 @@ riCe6OlAEiNpcc6mMyIYYWFICbrDFTrDR3wXqwc/Jkcx6L5VVWoagpSzbo3yGhc=
      */
     public static String getVersionString(InputStream inputStream) {
         try {
-            long skipped = inputStream.skip(Signature.SIGNATURE_BYTES);
-            if (skipped != Signature.SIGNATURE_BYTES)
-                return "";
+            DataHelper.skip(inputStream, Signature.SIGNATURE_BYTES);
             byte[] data = new byte[VERSION_BYTES];
             int bytesRead = DataHelper.read(inputStream, data);
 
@@ -640,10 +636,8 @@ riCe6OlAEiNpcc6mMyIYYWFICbrDFTrDR3wXqwc/Jkcx6L5VVWoagpSzbo3yGhc=
         try {
             fileInputStream = new FileInputStream(signedFile);
             fileOutputStream = new FileOutputStream(outputFile);
-            long skipped = 0;
 
-            while (skipped < HEADER_BYTES)
-                skipped += fileInputStream.skip(HEADER_BYTES - skipped);
+            DataHelper.skip(fileInputStream, HEADER_BYTES);
 
             byte[] buffer = new byte[16*1024];
             int bytesRead = 0;