diff --git a/e2e/ratchet/partner/manager_test.go b/e2e/ratchet/partner/manager_test.go
index 1e2cc9ce058d4948721ff151fcf3719f6183604a..776f48f707a3a190cb7be490e54245ea6edb5efa 100644
--- a/e2e/ratchet/partner/manager_test.go
+++ b/e2e/ratchet/partner/manager_test.go
@@ -33,8 +33,8 @@ func Test_newManager(t *testing.T) {
 	m := NewManager(kv, expectedM.myID, expectedM.partner,
 		expectedM.originMyPrivKey, expectedM.originPartnerPubKey,
 		expectedM.originMySIDHPrivKey,
-		expectedM.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(),
-		session.GetDefaultE2ESessionParams(),
+		expectedM.originPartnerSIDHPubKey, session.GetDefaultParams(),
+		session.GetDefaultParams(),
 		expectedM.cyHandler, expectedM.grp, expectedM.rng)
 
 	// Check if the new relationship matches the expected
@@ -113,10 +113,10 @@ func TestManager_NewReceiveSession(t *testing.T) {
 		m.originMyPrivKey, partnerPrivKey, baseKey,
 		m.originMySIDHPrivKey, partnerSIDHPubKey,
 		sid, []byte(""), session.Sent,
-		session.GetDefaultE2ESessionParams(), m.cyHandler, m.grp, m.rng)
+		session.GetDefaultParams(), m.cyHandler, m.grp, m.rng)
 
 	se, exists := m.NewReceiveSession(partnerPubKey, partnerSIDHPubKey,
-		session.GetDefaultE2ESessionParams(), thisSession)
+		session.GetDefaultParams(), thisSession)
 	if exists {
 		t.Errorf("NewReceiveSession() incorrect return value."+
 			"\n\texpected: %v\n\treceived: %v", false, exists)
@@ -130,7 +130,7 @@ func TestManager_NewReceiveSession(t *testing.T) {
 	}
 
 	se, exists = m.NewReceiveSession(partnerPubKey, partnerSIDHPubKey,
-		session.GetDefaultE2ESessionParams(), thisSession)
+		session.GetDefaultParams(), thisSession)
 	if !exists {
 		t.Errorf("NewReceiveSession() incorrect return value."+
 			"\n\texpected: %v\n\treceived: %v", true, exists)
@@ -150,7 +150,7 @@ func TestManager_NewSendSession(t *testing.T) {
 	m, _ := newTestManager(t)
 
 	se := m.NewSendSession(m.originMyPrivKey, m.originMySIDHPrivKey,
-		session.GetDefaultE2ESessionParams(), m.send.sessions[0])
+		session.GetDefaultParams(), m.send.sessions[0])
 	if !m.partner.Cmp(se.GetPartner()) {
 		t.Errorf("NewSendSession() did not return the correct session."+
 			"\n\texpected partner: %v\n\treceived partner: %v",
@@ -158,7 +158,7 @@ func TestManager_NewSendSession(t *testing.T) {
 	}
 
 	se, _ = m.NewReceiveSession(m.originPartnerPubKey, m.originPartnerSIDHPubKey,
-		session.GetDefaultE2ESessionParams(), m.receive.sessions[0])
+		session.GetDefaultParams(), m.receive.sessions[0])
 	if !m.partner.Cmp(se.GetPartner()) {
 		t.Errorf("NewSendSession() did not return the correct session."+
 			"\n\texpected partner: %v\n\treceived partner: %v",
@@ -290,7 +290,7 @@ func TestManager_Confirm(t *testing.T) {
 	m.send.AddSession(m.originMyPrivKey, partnerPrivKey, baseKey,
 		m.originMySIDHPrivKey, partnerSIDHPubKey,
 		sid,
-		session.Sending, session.GetDefaultE2ESessionParams())
+		session.Sending, session.GetDefaultParams())
 
 	thisSession := m.send.GetByID(sid)
 	thisSession.TriggerNegotiation()
diff --git a/e2e/ratchet/partner/relationship_test.go b/e2e/ratchet/partner/relationship_test.go
index d8c1b3c56c84d2686ac9e50f36c8008085bf7491..9100087a8bf5d98ef7b5c75a464959d6d7725a07 100644
--- a/e2e/ratchet/partner/relationship_test.go
+++ b/e2e/ratchet/partner/relationship_test.go
@@ -26,7 +26,7 @@ import (
 // Subtest: unmarshal/marshal with one session in the buff
 func TestRelationship_MarshalUnmarshal(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	// Serialization should include session slice only
 	serialized, err := sb.marshal()
@@ -56,7 +56,7 @@ func TestRelationship_MarshalUnmarshal(t *testing.T) {
 // Shows that Relationship returns an equivalent session buff to the one that was saved
 func TestLoadRelationship(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	err := sb.save()
 	if err != nil {
@@ -78,13 +78,13 @@ func TestDeleteRelationship(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
 
 	// Generate send relationship
-	mgr.send = NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	mgr.send = NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 	if err := mgr.send.save(); err != nil {
 		t.Fatal(err)
 	}
 
 	// Generate receive relationship
-	mgr.receive = NewRelationship(kv, session.Receive, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	mgr.receive = NewRelationship(kv, session.Receive, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 	if err := mgr.receive.save(); err != nil {
 		t.Fatal(err)
 	}
@@ -115,7 +115,7 @@ func TestRelationship_deleteRelationshipFingerprint(t *testing.T) {
 	}()
 
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	err := sb.save()
 	if err != nil {
@@ -134,7 +134,7 @@ func TestRelationship_deleteRelationshipFingerprint(t *testing.T) {
 // Shows that Relationship returns a valid session buff
 func TestNewRelationshipBuff(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	if sb.sessionByID == nil || len(sb.sessionByID) != 1 {
 		t.Error("session map should not be nil, and should have one " +
@@ -149,7 +149,7 @@ func TestNewRelationshipBuff(t *testing.T) {
 // Shows that AddSession adds one session to the relationship
 func TestRelationship_AddSession(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	if len(sb.sessions) != 1 {
 		t.Error("starting session slice length should be 1")
@@ -197,14 +197,14 @@ func TestRelationship_AddSession(t *testing.T) {
 		myPrivKey, partnerPubKey, baseKey,
 		mySIDHPrivKey, partnerSIDHPubKey,
 		sid, []byte(""), session.Sending,
-		session.GetDefaultE2ESessionParams(), mockCyHandler{}, grp, frng)
+		session.GetDefaultParams(), mockCyHandler{}, grp, frng)
 	// Note: AddSession doesn't change the session relationship or set anything else up
 	// to match the session to the session buffer. To work properly, the session
 	// should have been created using the same relationship (which is not the case in
 	// this test.)
 	sb.AddSession(myPrivKey, partnerPubKey, baseKey,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	if len(sb.sessions) != 2 {
 		t.Error("ending session slice length should be 2")
 	}
@@ -219,7 +219,7 @@ func TestRelationship_AddSession(t *testing.T) {
 // GetNewest should get the session that was most recently added to the buff
 func TestRelationship_GetNewest(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	// The newest session should be nil upon session buffer creation
 	nilSession := sb.GetNewest()
@@ -267,11 +267,11 @@ func TestRelationship_GetNewest(t *testing.T) {
 		myPrivKey, partnerPubKey, baseKey,
 		mySIDHPrivKey, partnerSIDHPubKey,
 		sid, []byte(""), session.Unconfirmed,
-		session.GetDefaultE2ESessionParams(), mockCyHandler{}, grp, frng)
+		session.GetDefaultParams(), mockCyHandler{}, grp, frng)
 
 	sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	if s.GetID() != sb.GetNewest().GetID() {
 		t.Error("session added should have same ID")
 	}
@@ -280,10 +280,10 @@ func TestRelationship_GetNewest(t *testing.T) {
 		myPrivKey, partnerPubKey, baseKey,
 		mySIDHPrivKey, partnerSIDHPubKey,
 		sid, []byte(""), session.Unconfirmed,
-		session.GetDefaultE2ESessionParams(), mockCyHandler{}, grp, frng)
+		session.GetDefaultParams(), mockCyHandler{}, grp, frng)
 	sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	if session2.GetID() != sb.GetNewest().GetID() {
 		t.Error("session added should have same ID")
 	}
@@ -293,7 +293,7 @@ func TestRelationship_GetNewest(t *testing.T) {
 // Shows that Confirm confirms the specified session in the buff
 func TestRelationship_Confirm(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	grp := cyclic.NewGroup(
 		large.NewIntFromString("E2EE983D031DC1DB6F1A7A67DF0E9A8E5561DB8E8D49413394C049B"+
@@ -331,7 +331,7 @@ func TestRelationship_Confirm(t *testing.T) {
 
 	sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	sb.sessions[0].SetNegotiationStatus(session.Sent)
 
 	if sb.sessions[0].IsConfirmed() {
@@ -351,7 +351,7 @@ func TestRelationship_Confirm(t *testing.T) {
 // Shows that the session buff returns an error when the session doesn't exist
 func TestRelationship_Confirm_Err(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	grp := cyclic.NewGroup(
 		large.NewIntFromString("E2EE983D031DC1DB6F1A7A67DF0E9A8E5561DB8E8D49413394C049B"+
@@ -392,7 +392,7 @@ func TestRelationship_Confirm_Err(t *testing.T) {
 		myPrivKey, partnerPubKey, baseKey,
 		mySIDHPrivKey, partnerSIDHPubKey,
 		sid, []byte(""), session.Unconfirmed,
-		session.GetDefaultE2ESessionParams(), mockCyHandler{}, grp, frng)
+		session.GetDefaultParams(), mockCyHandler{}, grp, frng)
 
 	err := sb.Confirm(s.GetID())
 	if err == nil {
@@ -403,7 +403,7 @@ func TestRelationship_Confirm_Err(t *testing.T) {
 // Shows that a session can get got by ID from the buff
 func TestRelationship_GetByID(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	grp := cyclic.NewGroup(
 		large.NewIntFromString("E2EE983D031DC1DB6F1A7A67DF0E9A8E5561DB8E8D49413394C049B"+
@@ -441,7 +441,7 @@ func TestRelationship_GetByID(t *testing.T) {
 
 	s := sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	session2 := sb.GetByID(s.GetID())
 	if !reflect.DeepEqual(s, session2) {
 		t.Error("gotten session should be the same")
@@ -452,18 +452,18 @@ func TestRelationship_GetByID(t *testing.T) {
 // returning sessions that are confirmed and past rekeyThreshold
 func TestRelationship_GetNewestRekeyableSession(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 	baseKey := session.GenerateE2ESessionBaseKey(mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.grp,
 		mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey)
 	sid := session.GetSessionIDFromBaseKey(baseKey)
-	sb.AddSession(mgr.originMyPrivKey, mgr.originPartnerPubKey, baseKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, sid, session.Unconfirmed, session.GetDefaultE2ESessionParams())
+	sb.AddSession(mgr.originMyPrivKey, mgr.originPartnerPubKey, baseKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, sid, session.Unconfirmed, session.GetDefaultParams())
 	// no available rekeyable sessions: nil
 	session2 := sb.getNewestRekeyableSession()
 	if session2 != sb.sessions[1] {
 		t.Error("newest rekeyable session should be the unconfired session")
 	}
 
-	_ = sb.AddSession(mgr.originMyPrivKey, mgr.originPartnerPubKey, baseKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, sid, session.Sending, session.GetDefaultE2ESessionParams())
+	_ = sb.AddSession(mgr.originMyPrivKey, mgr.originPartnerPubKey, baseKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, sid, session.Sending, session.GetDefaultParams())
 	sb.sessions[0].SetNegotiationStatus(session.Confirmed)
 	session3 := sb.getNewestRekeyableSession()
 
@@ -475,7 +475,7 @@ func TestRelationship_GetNewestRekeyableSession(t *testing.T) {
 
 	// add another rekeyable session: that session
 	// show the newest session is selected
-	_ = sb.AddSession(mgr.originMyPrivKey, mgr.originPartnerPubKey, baseKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, sid, session.Sending, session.GetDefaultE2ESessionParams())
+	_ = sb.AddSession(mgr.originMyPrivKey, mgr.originPartnerPubKey, baseKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, sid, session.Sending, session.GetDefaultParams())
 
 	sb.sessions[0].SetNegotiationStatus(session.Confirmed)
 
@@ -501,7 +501,7 @@ func TestRelationship_GetNewestRekeyableSession(t *testing.T) {
 // Shows that GetSessionForSending follows the hierarchy of sessions correctly
 func TestRelationship_GetSessionForSending(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	sb.sessions = make([]*session.Session, 0)
 	sb.sessionByID = make(map[session.SessionID]*session.Session)
@@ -548,7 +548,7 @@ func TestRelationship_GetSessionForSending(t *testing.T) {
 	s, kv := session.CreateTestSession(2000, 1000, 1000, session.Unconfirmed, t)
 	_ = sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	sb.sessions[0] = s
 	sending := sb.getSessionForSending()
 	if sending.GetID() != sb.sessions[0].GetID() {
@@ -563,7 +563,7 @@ func TestRelationship_GetSessionForSending(t *testing.T) {
 	s2, _ := session.CreateTestSession(2000, 2000, 1000, session.Unconfirmed, t)
 	_ = sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	sb.sessions[0] = s2
 	sending = sb.getSessionForSending()
 	if sending.GetID() != sb.sessions[0].GetID() {
@@ -580,7 +580,7 @@ func TestRelationship_GetSessionForSending(t *testing.T) {
 	s3, _ := session.CreateTestSession(2000, 600, 1000, session.Confirmed, t)
 	_ = sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	sb.sessions[0] = s3
 	sending = sb.getSessionForSending()
 	if sending.GetID() != sb.sessions[0].GetID() {
@@ -596,7 +596,7 @@ func TestRelationship_GetSessionForSending(t *testing.T) {
 	s4, _ := session.CreateTestSession(2000, 2000, 1000, session.Confirmed, t)
 	_ = sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 
 	sb.sessions[0] = s4
 
@@ -614,7 +614,7 @@ func TestRelationship_GetSessionForSending(t *testing.T) {
 // Shows that GetKeyForRekey returns a key if there's an appropriate session for rekeying
 func TestSessionBuff_GetKeyForRekey(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	sb.sessions = make([]*session.Session, 0)
 	sb.sessionByID = make(map[session.SessionID]*session.Session)
@@ -664,7 +664,7 @@ func TestSessionBuff_GetKeyForRekey(t *testing.T) {
 
 	_ = sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	sb.sessions[0].SetNegotiationStatus(session.Confirmed)
 	key, err = sb.getKeyForRekey()
 	if err != nil {
@@ -678,7 +678,7 @@ func TestSessionBuff_GetKeyForRekey(t *testing.T) {
 // Shows that GetKeyForSending returns a key if there's an appropriate session for sending
 func TestSessionBuff_GetKeyForSending(t *testing.T) {
 	mgr, kv := makeTestRelationshipManager(t)
-	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultE2ESessionParams(), mockCyHandler{}, mgr.grp, mgr.rng)
+	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner, mgr.originMyPrivKey, mgr.originPartnerPubKey, mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey, session.GetDefaultParams(), mockCyHandler{}, mgr.grp, mgr.rng)
 
 	sb.sessions = make([]*session.Session, 0)
 	sb.sessionByID = make(map[session.SessionID]*session.Session)
@@ -728,7 +728,7 @@ func TestSessionBuff_GetKeyForSending(t *testing.T) {
 
 	_ = sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	key, err = sb.getKeyForSending()
 	if err != nil {
 		t.Error(err)
@@ -744,7 +744,7 @@ func TestSessionBuff_TriggerNegotiation(t *testing.T) {
 	sb := NewRelationship(kv, session.Send, mgr.myID, mgr.partner,
 		mgr.originMyPrivKey, mgr.originPartnerPubKey,
 		mgr.originMySIDHPrivKey, mgr.originPartnerSIDHPubKey,
-		session.GetDefaultE2ESessionParams(), mockCyHandler{},
+		session.GetDefaultParams(), mockCyHandler{},
 		mgr.grp, mgr.rng)
 
 	sb.sessions = make([]*session.Session, 0)
@@ -772,7 +772,7 @@ func TestSessionBuff_TriggerNegotiation(t *testing.T) {
 
 	session1 := sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	session1.SetNegotiationStatus(session.Confirmed)
 	// The added session isn't ready for rekey, so it's not returned here
 	negotiations := sb.TriggerNegotiation()
@@ -784,7 +784,7 @@ func TestSessionBuff_TriggerNegotiation(t *testing.T) {
 	session2, _ := session.CreateTestSession(0, 4, 0, session.Sending, t)
 	_ = sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
+		sid, session.Sending, session.GetDefaultParams())
 	sb.sessions[0] = session2
 	session2.SetNegotiationStatus(session.Confirmed)
 	negotiations = sb.TriggerNegotiation()
@@ -802,10 +802,12 @@ func TestSessionBuff_TriggerNegotiation(t *testing.T) {
 
 	// Unconfirmed sessions should also be included in the list
 	// as the client should attempt to confirm them
+	p := session.GetDefaultParams()
+	p.UnconfirmedRetryRatio = 1
 	session3 := sb.AddSession(myPrivKey, partnerPubKey, nil,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		sid, session.Sending, session.GetDefaultE2ESessionParams())
-	session3.SetNegotiationStatus(session.Confirmed)
+		sid, session.Sending, p)
+	session3.SetNegotiationStatus(session.Unconfirmed)
 
 	// Set session 2 status back to Confirmed to show that more than one session can be returned
 	session2.SetNegotiationStatus(session.Confirmed)
diff --git a/e2e/ratchet/partner/session/params.go b/e2e/ratchet/partner/session/params.go
index 033616ac26a8a65dc44435a56c3431dfea51447d..8ccd454947ff281471cd77d79fa15ea826efec9d 100644
--- a/e2e/ratchet/partner/session/params.go
+++ b/e2e/ratchet/partner/session/params.go
@@ -31,7 +31,7 @@ const (
 	rekeyRatio    float64 = 1 / 10
 )
 
-func GetDefaultE2ESessionParams() Params {
+func GetDefaultParams() Params {
 	return Params{
 		MinKeys:               minKeys,
 		MaxKeys:               maxKeys,
diff --git a/e2e/ratchet/partner/session/session.go b/e2e/ratchet/partner/session/session.go
index a86a5e0b07e58b66ea5e47b4f399d2b78b5517b7..a62cf91618ce7706b0838b7ec5c0ff6d816da5a0 100644
--- a/e2e/ratchet/partner/session/session.go
+++ b/e2e/ratchet/partner/session/session.go
@@ -703,10 +703,10 @@ func MakeSessionPrefix(sid SessionID) string {
 // todo - doscstring
 func decideIfResendRekey(genRng *fastRNG.StreamGenerator, ratio float64) bool {
 	stream := genRng.GetStream()
-	b := make([]byte, 8)
+	b := make([]byte, 4)
 	stream.Read(b)
 	stream.Close()
-	randNum := binary.BigEndian.Uint64(b)
-	max := uint64(float64(math.MaxUint64) * ratio)
+	randNum := binary.BigEndian.Uint32(b)
+	max := uint32(float64(math.MaxUint32) * ratio)
 	return randNum < max
 }
diff --git a/e2e/ratchet/partner/session/testUtils.go b/e2e/ratchet/partner/session/testUtils.go
index c99169f6c765b2e17b8f9e46ab8ea378cfeb52f9..52c9e8cb8bb5f1a9733e2e1d2175b93d883262c3 100644
--- a/e2e/ratchet/partner/session/testUtils.go
+++ b/e2e/ratchet/partner/session/testUtils.go
@@ -88,7 +88,7 @@ func makeTestSession() (*Session, *versioned.KV) {
 		partnerPubKey:     partnerPubKey,
 		mySIDHPrivKey:     mySIDHPrivKey,
 		partnerSIDHPubKey: partnerSIDHPubKey,
-		e2eParams:         GetDefaultE2ESessionParams(),
+		e2eParams:         GetDefaultParams(),
 		sID:               sid,
 		kv:                kv.Prefix(MakeSessionPrefix(sid)),
 		t:                 Receive,
diff --git a/e2e/ratchet/partner/utils_test.go b/e2e/ratchet/partner/utils_test.go
index 184a1b9c46a97bef1a1591a493c8ad30abc7d675..70f056f31d4fe12951b738bd459af051d507f2cc 100644
--- a/e2e/ratchet/partner/utils_test.go
+++ b/e2e/ratchet/partner/utils_test.go
@@ -79,7 +79,7 @@ func newTestManager(t *testing.T) (*Manager, *versioned.KV) {
 	// Create new relationship
 	m := NewManager(kv, myId, partnerID, myPrivKey, partnerPubKey,
 		mySIDHPrivKey, partnerSIDHPubKey,
-		session.GetDefaultE2ESessionParams(), session.GetDefaultE2ESessionParams(),
+		session.GetDefaultParams(), session.GetDefaultParams(),
 		mockCyHandler{}, grp,
 		fastRNG.NewStreamGenerator(1000, 10, csprng.NewSystemRNG))
 
diff --git a/e2e/ratchet/ratchet_test.go b/e2e/ratchet/ratchet_test.go
index 2a36bb994847c2991228ca83889778b46e16cff9..0cea9c65508d8a24380320bdc3955b2a20081dc2 100644
--- a/e2e/ratchet/ratchet_test.go
+++ b/e2e/ratchet/ratchet_test.go
@@ -88,7 +88,7 @@ func TestStore_AddPartner(t *testing.T) {
 	}
 
 	partnerID := id.NewIdFromUInt(rand.Uint64(), id.User, t)
-	p := session.GetDefaultE2ESessionParams()
+	p := session.GetDefaultParams()
 	partnerPubKey := diffieHellman.GeneratePublicKey(r.defaultDHPrivateKey, r.grp)
 	// NOTE: e2e store doesn't contain a private SIDH key, that's
 	// because they're completely address as part of the
@@ -132,7 +132,7 @@ func TestStore_DeletePartner(t *testing.T) {
 
 	partnerID := id.NewIdFromUInt(rand.Uint64(), id.User, t)
 	partnerPubKey := diffieHellman.GeneratePublicKey(r.defaultDHPrivateKey, r.grp)
-	p := session.GetDefaultE2ESessionParams()
+	p := session.GetDefaultParams()
 	// NOTE: e2e store doesn't contain a private SIDH key, that's
 	// because they're completely address as part of the
 	// initiation of the connection.
@@ -166,7 +166,7 @@ func TestStore_GetPartner(t *testing.T) {
 	}
 	partnerID := id.NewIdFromUInt(rand.Uint64(), id.User, t)
 	partnerPubKey := diffieHellman.GeneratePublicKey(r.defaultDHPrivateKey, r.grp)
-	p := session.GetDefaultE2ESessionParams()
+	p := session.GetDefaultParams()
 	_, pubSIDHKey := genSidhKeys(rng, sidh.KeyVariantSidhA)
 	myPrivSIDHKey, _ := genSidhKeys(rng, sidh.KeyVariantSidhB)
 	expectedManager, err := r.AddPartner(r.defaultID, partnerID, r.defaultDHPrivateKey,
diff --git a/e2e/rekey/confirm_test.go b/e2e/rekey/confirm_test.go
index aa4c9eade9134c6c5645e6cd80984ba270415205..8da1485ab2447e9d1feee0c2db0d1039049fbe62 100644
--- a/e2e/rekey/confirm_test.go
+++ b/e2e/rekey/confirm_test.go
@@ -67,8 +67,8 @@ func TestHandleConfirm(t *testing.T) {
 	}
 
 	// Add bob as a partner
-	sendParams := session.GetDefaultE2ESessionParams()
-	receiveParams := session.GetDefaultE2ESessionParams()
+	sendParams := session.GetDefaultParams()
+	receiveParams := session.GetDefaultParams()
 	_, err = r.AddPartner(myID, bobID, bobPubKey, alicePrivKey, bobSIDHPubKey, aliceSIDHPrivKey, sendParams, receiveParams, false)
 	if err != nil {
 		t.Errorf("Failed to add partner to ratchet: %+v", err)
diff --git a/e2e/rekey/exchange_test.go b/e2e/rekey/exchange_test.go
index fbe92114074e46d4253ea8ac8add0d7d421bbf5f..a59e5a0ae3835341f7fa4469a7a296feefe72283 100644
--- a/e2e/rekey/exchange_test.go
+++ b/e2e/rekey/exchange_test.go
@@ -88,8 +88,8 @@ func TestFullExchange(t *testing.T) {
 	}
 
 	// Add Alice and Bob as partners
-	sendParams := session.GetDefaultE2ESessionParams()
-	receiveParams := session.GetDefaultE2ESessionParams()
+	sendParams := session.GetDefaultParams()
+	receiveParams := session.GetDefaultParams()
 	_, err = r.AddPartner(myID, bobID, bobPubKey, alicePrivKey, bobSIDHPubKey, aliceSIDHPrivKey, sendParams, receiveParams, false)
 	if err != nil {
 		t.Errorf("Failed to add partner to ratchet: %+v", err)
diff --git a/e2e/rekey/rekey.go b/e2e/rekey/rekey.go
index 9892d0047b126bc908dcfbec91f68031080f9b7d..b25764b6100a0e865053fc75fef6c30ec84cf395 100644
--- a/e2e/rekey/rekey.go
+++ b/e2e/rekey/rekey.go
@@ -64,7 +64,7 @@ func trigger(instance *commsNetwork.Instance, grp *cyclic.Group, sendE2E E2eSend
 
 		//create the session, pass a nil private key to generate a new one
 		negotiatingSession = manager.NewSendSession(nil, nil,
-			session.GetDefaultE2ESessionParams(), inputSession)
+			session.GetDefaultParams(), inputSession)
 
 		//move the state of the triggering session forward
 		inputSession.SetNegotiationStatus(session.NewSessionCreated)
diff --git a/e2e/rekey/trigger.go b/e2e/rekey/trigger.go
index 34ff601a8cc1e90d6b948934d369c384ee2945f2..8d37e0e2f8f4f7b2764a91b4b1e0c0adf46ff7ce 100644
--- a/e2e/rekey/trigger.go
+++ b/e2e/rekey/trigger.go
@@ -88,7 +88,7 @@ func handleTrigger(ratchet *ratchet.Ratchet, sender E2eSender,
 
 	//create the new session
 	sess, duplicate := partner.NewReceiveSession(PartnerPublicKey,
-		PartnerSIDHPublicKey, session.GetDefaultE2ESessionParams(),
+		PartnerSIDHPublicKey, session.GetDefaultParams(),
 		oldSession)
 	// new session being nil means the session was a duplicate. This is possible
 	// in edge cases where the partner crashes during operation. The session
diff --git a/e2e/rekey/trigger_test.go b/e2e/rekey/trigger_test.go
index 22f8fad7a6a37af54a1ba0becbc9d0aaacb15034..2b2f197c8a7befb9a38f86f0841c43b20305cd84 100644
--- a/e2e/rekey/trigger_test.go
+++ b/e2e/rekey/trigger_test.go
@@ -81,8 +81,8 @@ func TestHandleTrigger(t *testing.T) {
 	}
 
 	// Add bob as a partner
-	sendParams := session2.GetDefaultE2ESessionParams()
-	receiveParams := session2.GetDefaultE2ESessionParams()
+	sendParams := session2.GetDefaultParams()
+	receiveParams := session2.GetDefaultParams()
 	_, err = r.AddPartner(myID, bobID, bobPubKey, alicePrivKey, bobSIDHPubKey, aliceSIDHPrivKey, sendParams, receiveParams, false)
 	if err != nil {
 		t.Errorf("Failed to add partner to ratchet: %+v", err)