xref: /aosp_15_r20/external/cronet/net/cert/ct_sct_to_string.cc (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1 // Copyright 2016 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "net/cert/ct_sct_to_string.h"
6 
7 #include "base/logging.h"
8 #include "base/notreached.h"
9 
10 namespace net::ct {
11 
HashAlgorithmToString(DigitallySigned::HashAlgorithm hashAlgorithm)12 const std::string HashAlgorithmToString(
13     DigitallySigned::HashAlgorithm hashAlgorithm) {
14   switch (hashAlgorithm) {
15     case DigitallySigned::HASH_ALGO_NONE:
16       return "None / invalid";
17     case DigitallySigned::HASH_ALGO_MD5:
18       return "MD5";
19     case DigitallySigned::HASH_ALGO_SHA1:
20       return "SHA-1";
21     case DigitallySigned::HASH_ALGO_SHA224:
22       return "SHA-224";
23     case DigitallySigned::HASH_ALGO_SHA256:
24       return "SHA-256";
25     case DigitallySigned::HASH_ALGO_SHA384:
26       return "SHA-384";
27     case DigitallySigned::HASH_ALGO_SHA512:
28       return "SHA-512";
29   }
30   return "Unknown";
31 }
32 
SignatureAlgorithmToString(DigitallySigned::SignatureAlgorithm signatureAlgorithm)33 const std::string SignatureAlgorithmToString(
34     DigitallySigned::SignatureAlgorithm signatureAlgorithm) {
35   switch (signatureAlgorithm) {
36     case DigitallySigned::SIG_ALGO_ANONYMOUS:
37       return "Anonymous";
38     case DigitallySigned::SIG_ALGO_RSA:
39       return "RSA";
40     case DigitallySigned::SIG_ALGO_DSA:
41       return "DSA";
42     case DigitallySigned::SIG_ALGO_ECDSA:
43       return "ECDSA";
44   }
45   return "Unknown";
46 }
47 
OriginToString(SignedCertificateTimestamp::Origin origin)48 const std::string OriginToString(SignedCertificateTimestamp::Origin origin) {
49   switch (origin) {
50     case SignedCertificateTimestamp::SCT_EMBEDDED:
51       return "Embedded in certificate";
52     case SignedCertificateTimestamp::SCT_FROM_TLS_EXTENSION:
53       return "TLS extension";
54     case SignedCertificateTimestamp::SCT_FROM_OCSP_RESPONSE:
55       return "OCSP";
56     case SignedCertificateTimestamp::SCT_ORIGIN_MAX:
57       NOTREACHED();
58   }
59   return "Unknown";
60 }
61 
StatusToString(SCTVerifyStatus status)62 const std::string StatusToString(SCTVerifyStatus status) {
63   switch (status) {
64     case SCT_STATUS_LOG_UNKNOWN:
65       return "From unknown log";
66     case SCT_STATUS_INVALID_SIGNATURE:
67       return "Invalid signature";
68     case SCT_STATUS_OK:
69       return "Verified";
70     case SCT_STATUS_NONE:
71       return "None";
72     case SCT_STATUS_INVALID_TIMESTAMP:
73       return "Invalid timestamp";
74   }
75   return "Unknown";
76 }
77 
78 }  // namespace net::ct
79