diff --git a/go.mod b/go.mod
index 854fb82225f08274677d38cce94f9b05d50577e7..6d626319be95ef71c0c32757bc519567bb165a24 100644
--- a/go.mod
+++ b/go.mod
@@ -7,8 +7,8 @@ require (
 	github.com/hack-pad/go-indexeddb v0.2.0
 	github.com/pkg/errors v0.9.1
 	github.com/spf13/jwalterweatherman v1.1.0
-	gitlab.com/elixxir/client v1.5.1-0.20220919230833-8d25dfcd399e
-	gitlab.com/elixxir/crypto v0.0.7-0.20220919221444-cb6c054c9fcd
+	gitlab.com/elixxir/client v1.5.1-0.20220920003304-3bce7b64b826
+	gitlab.com/elixxir/crypto v0.0.7-0.20220920002307-5541473e9aa7
 	gitlab.com/xx_network/primitives v0.0.4-0.20220809193445-9fc0a5209548
 )
 
diff --git a/go.sum b/go.sum
index c4069f648383ed9a3fdd3d82457c95b9db546bc9..7b0564e96c11e68cd7d1b827f33c8fd3db088a64 100644
--- a/go.sum
+++ b/go.sum
@@ -636,6 +636,8 @@ gitlab.com/elixxir/client v1.5.1-0.20220919223314-930e66a05c1a h1:Q8F0uZwni37B0j
 gitlab.com/elixxir/client v1.5.1-0.20220919223314-930e66a05c1a/go.mod h1:TrCtCQ7FAijaNfo6In2s2HDqbNJivxQV3m36ZGyNXFk=
 gitlab.com/elixxir/client v1.5.1-0.20220919230833-8d25dfcd399e h1:tVDQE+Utif6bzBhiXZuc5Je+4rPgm2WiO9uVBuJsrSk=
 gitlab.com/elixxir/client v1.5.1-0.20220919230833-8d25dfcd399e/go.mod h1:TrCtCQ7FAijaNfo6In2s2HDqbNJivxQV3m36ZGyNXFk=
+gitlab.com/elixxir/client v1.5.1-0.20220920003304-3bce7b64b826 h1:QaxYWQlCvX9KTJ5MDiNbImE7F01vitU2C2F7ITqE1ws=
+gitlab.com/elixxir/client v1.5.1-0.20220920003304-3bce7b64b826/go.mod h1:pX1uLFS8v6pNVzJEcfbMUrYPTWLPl8p71ghqW2Xm0Ns=
 gitlab.com/elixxir/comms v0.0.4-0.20220913220502-eed192f654bd h1:2nHE7EoptSTBFjCxMeAveKT6urbguCwgg8Jx7XYEVe4=
 gitlab.com/elixxir/comms v0.0.4-0.20220913220502-eed192f654bd/go.mod h1:AO6XkMhaHJW8eXlgL5m3UUcJqsSP8F5Wm1GX+wyq/rw=
 gitlab.com/elixxir/crypto v0.0.0-20200804182833-984246dea2c4/go.mod h1:ucm9SFKJo+K0N2GwRRpaNr+tKXMIOVWzmyUD0SbOu2c=
@@ -646,6 +648,8 @@ gitlab.com/elixxir/crypto v0.0.7-0.20220919183519-5bbca98a2c00 h1:BZ2v6dfdYOUQHb
 gitlab.com/elixxir/crypto v0.0.7-0.20220919183519-5bbca98a2c00/go.mod h1:QF8SzsrYh9Elip9EUYUDAhPjqO9DGrrrQxYHvn+VXok=
 gitlab.com/elixxir/crypto v0.0.7-0.20220919221444-cb6c054c9fcd h1:uWcp0aokdBnaZhNhlbXiDYusecIP5AaFbJfBtuzEg5A=
 gitlab.com/elixxir/crypto v0.0.7-0.20220919221444-cb6c054c9fcd/go.mod h1:QF8SzsrYh9Elip9EUYUDAhPjqO9DGrrrQxYHvn+VXok=
+gitlab.com/elixxir/crypto v0.0.7-0.20220920002307-5541473e9aa7 h1:9IsBtL8zcUG86XcfNUVIKcnlL5tyKlyQt1cJ5nogr1U=
+gitlab.com/elixxir/crypto v0.0.7-0.20220920002307-5541473e9aa7/go.mod h1:QF8SzsrYh9Elip9EUYUDAhPjqO9DGrrrQxYHvn+VXok=
 gitlab.com/elixxir/ekv v0.2.1 h1:dtwbt6KmAXG2Tik5d60iDz2fLhoFBgWwST03p7T+9Is=
 gitlab.com/elixxir/ekv v0.2.1/go.mod h1:USLD7xeDnuZEavygdrgzNEwZXeLQJK/w1a+htpN+JEU=
 gitlab.com/elixxir/primitives v0.0.0-20200731184040-494269b53b4d/go.mod h1:OQgUZq7SjnE0b+8+iIAT2eqQF+2IFHn73tOo+aV11mg=
diff --git a/wasm/channels.go b/wasm/channels.go
index 477b568395672859d22f017eab5a00573d9151a5..d3c497d32007023d2384a85999b387e88b8db6d3 100644
--- a/wasm/channels.go
+++ b/wasm/channels.go
@@ -8,6 +8,8 @@
 package wasm
 
 import (
+	"encoding/base64"
+	jww "github.com/spf13/jwalterweatherman"
 	"gitlab.com/elixxir/client/bindings"
 	"gitlab.com/elixxir/xxdk-wasm/indexedDb"
 	"gitlab.com/elixxir/xxdk-wasm/utils"
@@ -607,8 +609,19 @@ func (em *eventModel) LeaveChannel(channelID []byte) {
 	em.leaveChannel(utils.CopyBytesToJS(channelID))
 }
 
+var messageMap = make(map[string]struct{})
+
 func (em *eventModel) ReceiveMessage(channelID, messageID []byte,
 	senderUsername, text string, timestamp, lease, roundId, status int64) {
+	key := base64.StdEncoding.EncodeToString(messageID)
+
+	if _, exists := messageMap[key]; exists {
+		jww.DEBUG.Printf("Message with ID %s already exists", key)
+		return
+	} else {
+		messageMap[key] = struct{}{}
+	}
+
 	em.receiveMessage(utils.CopyBytesToJS(channelID),
 		utils.CopyBytesToJS(messageID),
 		senderUsername, text, timestamp, lease, roundId, status)