diff --git a/build/source_list.bzl b/build/source_list.bzl
index 2f69820..6a35a8e 100644
--- a/build/source_list.bzl
+++ b/build/source_list.bzl
@@ -45,6 +45,7 @@
     "common/print_elements.h",
     "common/quiche_buffer_allocator.h",
     "common/quiche_circular_deque.h",
+    "common/quiche_crypto_logging.h",
     "common/quiche_data_reader.h",
     "common/quiche_data_writer.h",
     "common/quiche_endian.h",
@@ -406,6 +407,7 @@
     "common/platform/api/quiche_hostname_utils.cc",
     "common/platform/api/quiche_mutex.cc",
     "common/quiche_buffer_allocator.cc",
+    "common/quiche_crypto_logging.cc",
     "common/quiche_data_reader.cc",
     "common/quiche_data_writer.cc",
     "common/quiche_ip_address.cc",
diff --git a/build/source_list.gni b/build/source_list.gni
index 9defb90..8d629f6 100644
--- a/build/source_list.gni
+++ b/build/source_list.gni
@@ -45,6 +45,7 @@
     "src/quiche/common/print_elements.h",
     "src/quiche/common/quiche_buffer_allocator.h",
     "src/quiche/common/quiche_circular_deque.h",
+    "src/quiche/common/quiche_crypto_logging.h",
     "src/quiche/common/quiche_data_reader.h",
     "src/quiche/common/quiche_data_writer.h",
     "src/quiche/common/quiche_endian.h",
@@ -406,6 +407,7 @@
     "src/quiche/common/platform/api/quiche_hostname_utils.cc",
     "src/quiche/common/platform/api/quiche_mutex.cc",
     "src/quiche/common/quiche_buffer_allocator.cc",
+    "src/quiche/common/quiche_crypto_logging.cc",
     "src/quiche/common/quiche_data_reader.cc",
     "src/quiche/common/quiche_data_writer.cc",
     "src/quiche/common/quiche_ip_address.cc",
diff --git a/build/source_list.json b/build/source_list.json
index 8ab853a..e0c9ba9 100644
--- a/build/source_list.json
+++ b/build/source_list.json
@@ -44,6 +44,7 @@
     "quiche/common/print_elements.h",
     "quiche/common/quiche_buffer_allocator.h",
     "quiche/common/quiche_circular_deque.h",
+    "quiche/common/quiche_crypto_logging.h",
     "quiche/common/quiche_data_reader.h",
     "quiche/common/quiche_data_writer.h",
     "quiche/common/quiche_endian.h",
@@ -405,6 +406,7 @@
     "quiche/common/platform/api/quiche_hostname_utils.cc",
     "quiche/common/platform/api/quiche_mutex.cc",
     "quiche/common/quiche_buffer_allocator.cc",
+    "quiche/common/quiche_crypto_logging.cc",
     "quiche/common/quiche_data_reader.cc",
     "quiche/common/quiche_data_writer.cc",
     "quiche/common/quiche_ip_address.cc",
diff --git a/quiche/common/quiche_crypto_logging.cc b/quiche/common/quiche_crypto_logging.cc
new file mode 100644
index 0000000..7f3eb2a
--- /dev/null
+++ b/quiche/common/quiche_crypto_logging.cc
@@ -0,0 +1,42 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "quiche/common/quiche_crypto_logging.h"
+
+#include "absl/status/status.h"
+#include "absl/strings/string_view.h"
+#include "openssl/err.h"
+#include "quiche/common/platform/api/quiche_logging.h"
+
+namespace quiche {
+void DLogOpenSslErrors() {
+#ifdef NDEBUG
+  // Clear OpenSSL error stack.
+  ClearOpenSslErrors();
+#else
+  while (uint32_t error = ERR_get_error()) {
+    char buf[120];
+    ERR_error_string_n(error, buf, ABSL_ARRAYSIZE(buf));
+    QUICHE_DLOG(ERROR) << "OpenSSL error: " << buf;
+  }
+#endif
+}
+
+void ClearOpenSslErrors() {
+  while (ERR_get_error()) {
+  }
+}
+
+absl::Status SslErrorAsStatus(absl::string_view msg) {
+  std::string message;
+  absl::StrAppend(&message, msg, "OpenSSL error: ");
+  while (uint32_t error = ERR_get_error()) {
+    char buf[120];
+    ERR_error_string_n(error, buf, ABSL_ARRAYSIZE(buf));
+    absl::StrAppend(&message, buf);
+  }
+  return absl::InternalError(message);
+}
+
+}  // namespace quiche
diff --git a/quiche/common/quiche_crypto_logging.h b/quiche/common/quiche_crypto_logging.h
new file mode 100644
index 0000000..709694d
--- /dev/null
+++ b/quiche/common/quiche_crypto_logging.h
@@ -0,0 +1,25 @@
+// Copyright 2022 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef QUICHE_COMMON_QUICHE_CRYPTO_LOGGING_H_
+#define QUICHE_COMMON_QUICHE_CRYPTO_LOGGING_H_
+
+#include "absl/status/status.h"
+
+namespace quiche {
+
+// In debug builds only, log OpenSSL error stack. Then clear OpenSSL error
+// stack.
+void DLogOpenSslErrors();
+
+// Clears OpenSSL error stack.
+void ClearOpenSslErrors();
+
+// Include OpenSSL error stack in Status msg so that callers could choose to
+// only log it in debug builds if required.
+absl::Status SslErrorAsStatus(absl::string_view msg);
+
+}  // namespace quiche
+
+#endif  // QUICHE_COMMON_QUICHE_CRYPTO_LOGGING_H_
diff --git a/quiche/quic/core/crypto/aead_base_decrypter.cc b/quiche/quic/core/crypto/aead_base_decrypter.cc
index c79e74e..b6a3c4f 100644
--- a/quiche/quic/core/crypto/aead_base_decrypter.cc
+++ b/quiche/quic/core/crypto/aead_base_decrypter.cc
@@ -15,31 +15,13 @@
 #include "quiche/quic/core/quic_utils.h"
 #include "quiche/quic/platform/api/quic_bug_tracker.h"
 #include "quiche/quic/platform/api/quic_logging.h"
+#include "quiche/common/quiche_crypto_logging.h"
 
 namespace quic {
-
+using ::quiche::ClearOpenSslErrors;
+using ::quiche::DLogOpenSslErrors;
 namespace {
 
-// Clear OpenSSL error stack.
-void ClearOpenSslErrors() {
-  while (ERR_get_error()) {
-  }
-}
-
-// In debug builds only, log OpenSSL error stack. Then clear OpenSSL error
-// stack.
-void DLogOpenSslErrors() {
-#ifdef NDEBUG
-  ClearOpenSslErrors();
-#else
-  while (uint32_t error = ERR_get_error()) {
-    char buf[120];
-    ERR_error_string_n(error, buf, ABSL_ARRAYSIZE(buf));
-    QUIC_DLOG(ERROR) << "OpenSSL error: " << buf;
-  }
-#endif
-}
-
 const EVP_AEAD* InitAndCall(const EVP_AEAD* (*aead_getter)()) {
   // Ensure BoringSSL is initialized before calling |aead_getter|. In Chromium,
   // the static initializer is disabled.
diff --git a/quiche/quic/core/crypto/aead_base_encrypter.cc b/quiche/quic/core/crypto/aead_base_encrypter.cc
index a2f0d59..481eaa9 100644
--- a/quiche/quic/core/crypto/aead_base_encrypter.cc
+++ b/quiche/quic/core/crypto/aead_base_encrypter.cc
@@ -12,26 +12,12 @@
 #include "quiche/quic/core/quic_utils.h"
 #include "quiche/quic/platform/api/quic_bug_tracker.h"
 #include "quiche/quic/platform/api/quic_logging.h"
+#include "quiche/common/quiche_crypto_logging.h"
 
 namespace quic {
-
+using ::quiche::DLogOpenSslErrors;
 namespace {
 
-// In debug builds only, log OpenSSL error stack. Then clear OpenSSL error
-// stack.
-void DLogOpenSslErrors() {
-#ifdef NDEBUG
-  while (ERR_get_error()) {
-  }
-#else
-  while (unsigned long error = ERR_get_error()) {
-    char buf[120];
-    ERR_error_string_n(error, buf, ABSL_ARRAYSIZE(buf));
-    QUIC_DLOG(ERROR) << "OpenSSL error: " << buf;
-  }
-#endif
-}
-
 const EVP_AEAD* InitAndCall(const EVP_AEAD* (*aead_getter)()) {
   // Ensure BoringSSL is initialized before calling |aead_getter|. In Chromium,
   // the static initializer is disabled.
