diff --git a/storage/session.go b/storage/session.go
index c71679dbfe41110abfe9caf99ea8555da260d87d..a37cc31d0ca3fb5382a264795667a92cf7d9407b 100644
--- a/storage/session.go
+++ b/storage/session.go
@@ -12,6 +12,7 @@ import (
 	"github.com/pkg/errors"
 	"gitlab.com/elixxir/client/globals"
 	userInterface "gitlab.com/elixxir/client/interfaces/user"
+	"gitlab.com/elixxir/client/storage/auth"
 	"gitlab.com/elixxir/client/storage/cmix"
 	"gitlab.com/elixxir/client/storage/conversation"
 	"gitlab.com/elixxir/client/storage/e2e"
@@ -49,6 +50,7 @@ type Session struct {
 	user             *user.User
 	conversations    *conversation.Store
 	partition        *partition.Store
+	auth             *auth.Store
 	criticalMessages *utility.E2eMessageBuffer
 	garbledMessages  *utility.MeteredCmixMessageBuffer
 	checkedRounds    *utility.KnownRounds
@@ -102,6 +104,11 @@ func New(baseDir, password string, u userInterface.User, cmixGrp,
 		return nil, errors.WithMessage(err, "Failed to create e2e store")
 	}
 
+	s.auth, err = auth.NewStore(s.kv, e2eGrp, []*cyclic.Int{u.E2eDhPrivateKey})
+	if err != nil {
+		return nil, errors.WithMessage(err, "Failed to create auth store")
+	}
+
 	s.garbledMessages, err = utility.NewMeteredCmixMessageBuffer(s.kv, garbledMessagesKey)
 	if err != nil {
 		return nil, errors.WithMessage(err, "Failed to create garbledMessages buffer")
@@ -154,6 +161,12 @@ func Load(baseDir, password string, rng *fastRNG.StreamGenerator) (*Session, err
 		return nil, errors.WithMessage(err, "Failed to load Session")
 	}
 
+	s.auth, err = auth.NewStore(s.kv, s.e2e.GetGroup(),
+		[]*cyclic.Int{s.e2e.GetDHPrivateKey()})
+	if err != nil {
+		return nil, errors.WithMessage(err, "Failed to load auth store")
+	}
+
 	s.criticalMessages, err = utility.LoadE2eMessageBuffer(s.kv, criticalMessagesKey)
 	if err != nil {
 		return nil, errors.WithMessage(err, "Failed to load session")
@@ -193,6 +206,12 @@ func (s *Session) E2e() *e2e.Store {
 	return s.e2e
 }
 
+func (s *Session) Auth() *auth.Store {
+	s.mux.RLock()
+	defer s.mux.RUnlock()
+	return s.auth
+}
+
 func (s *Session) GetCriticalMessages() *utility.E2eMessageBuffer {
 	s.mux.RLock()
 	defer s.mux.RUnlock()