diff --git a/briar-core/src/org/briarproject/clients/ClientHelperImpl.java b/briar-core/src/org/briarproject/clients/ClientHelperImpl.java
index 361b631898810d65e2bc15951dc27bedb43e8733..9826dc4342d06a937ed4c0d2e008ce4b5b6c2ef2 100644
--- a/briar-core/src/org/briarproject/clients/ClientHelperImpl.java
+++ b/briar-core/src/org/briarproject/clients/ClientHelperImpl.java
@@ -29,6 +29,8 @@ import java.util.HashMap;
 import java.util.Map;
 import java.util.Map.Entry;
 
+import static org.briarproject.api.sync.SyncConstants.MESSAGE_HEADER_LENGTH;
+
 class ClientHelperImpl implements ClientHelper {
 
 	private final DatabaseComponent db;
@@ -104,7 +106,8 @@ class ClientHelperImpl implements ClientHelper {
 			throws DbException, FormatException {
 		byte[] raw = db.getRawMessage(txn, m);
 		if (raw == null) return null;
-		ByteArrayInputStream in = new ByteArrayInputStream(raw);
+		ByteArrayInputStream in = new ByteArrayInputStream(raw,
+				MESSAGE_HEADER_LENGTH, raw.length - MESSAGE_HEADER_LENGTH);
 		BdfReader reader = bdfReaderFactory.createReader(in);
 		BdfDictionary dictionary;
 		try {
@@ -138,7 +141,8 @@ class ClientHelperImpl implements ClientHelper {
 			throws DbException, FormatException {
 		byte[] raw = db.getRawMessage(txn, m);
 		if (raw == null) return null;
-		ByteArrayInputStream in = new ByteArrayInputStream(raw);
+		ByteArrayInputStream in = new ByteArrayInputStream(raw,
+				MESSAGE_HEADER_LENGTH, raw.length - MESSAGE_HEADER_LENGTH);
 		BdfReader reader = bdfReaderFactory.createReader(in);
 		BdfList list;
 		try {