diff --git a/xxdk/e2e.go b/xxdk/e2e.go
index baf119e259d2029c6515d6f9ce73cde2077468bc..706e05cdfb0bc3c0295cfb48ce063ca134074bb3 100644
--- a/xxdk/e2e.go
+++ b/xxdk/e2e.go
@@ -208,18 +208,11 @@ func login(client *Cmix, callbacks AuthCallbacks,
 		e2eIdentity: identity,
 	}
 
-	client.network.AddIdentity(identity.ID, time.Time{}, true)
-
 	//initialize the e2e storage
 	dhPrivKey, err := identity.GetDHKeyPrivate()
 	if err != nil {
 		return nil, err
 	}
-	err = e2e.Init(kv, identity.ID, dhPrivKey, e2eGrp,
-		rekey.GetDefaultEphemeralParams())
-	if err != nil {
-		return nil, err
-	}
 
 	// load or init the new e2e storage
 	m.e2e, err = e2e.Load(kv,
@@ -227,6 +220,7 @@ func login(client *Cmix, callbacks AuthCallbacks,
 		client.GetEventReporter())
 	if err != nil {
 		//initialize the e2e storage
+		jww.INFO.Printf("Initializing new e2e.Handler...")
 		err = e2e.Init(kv, identity.ID, dhPrivKey, e2eGrp,
 			rekey.GetDefaultParams())
 		if err != nil {
@@ -256,6 +250,7 @@ func login(client *Cmix, callbacks AuthCallbacks,
 		return nil, err
 	}
 
+	client.network.AddIdentity(identity.ID, time.Time{}, true)
 	return m, err
 }