From 69b35a67f6f6b43a60dcf0339a01e61ab04d27d7 Mon Sep 17 00:00:00 2001
From: "Richard T. Carback III" <rick.carback@gmail.com>
Date: Mon, 7 Mar 2022 18:44:43 +0000
Subject: [PATCH] Trial decrypt for old versions of the request packet

---
 auth/callback.go | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/auth/callback.go b/auth/callback.go
index 2ae9446f1..34f8eb064 100644
--- a/auth/callback.go
+++ b/auth/callback.go
@@ -107,10 +107,19 @@ func (m *Manager) handleRequest(cmixMsg format.Message,
 	jww.TRACE.Printf("handleRequest ECRPAYLOAD: %v", baseFmt.GetEcrPayload())
 	jww.TRACE.Printf("handleRequest MAC: %v", cmixMsg.GetMac())
 
+	ecrPayload := baseFmt.GetEcrPayload()
 	success, payload := cAuth.Decrypt(myHistoricalPrivKey,
-		partnerPubKey, baseFmt.GetEcrPayload(),
+		partnerPubKey, ecrPayload,
 		cmixMsg.GetMac(), grp)
 
+	if !success {
+		jww.WARN.Printf("Attempting to decrypt old request packet...")
+		ecrPayload = append(ecrPayload, baseFmt.GetVersion())
+		success, payload = cAuth.Decrypt(myHistoricalPrivKey,
+			partnerPubKey, ecrPayload,
+			cmixMsg.GetMac(), grp)
+	}
+
 	if !success {
 		jww.WARN.Printf("Received auth request failed " +
 			"its mac check")
-- 
GitLab