diff --git a/cmd/admin-handlers.go b/cmd/admin-handlers.go index 452fa275e..ff8a71106 100644 --- a/cmd/admin-handlers.go +++ b/cmd/admin-handlers.go @@ -60,6 +60,7 @@ import ( xnet "github.com/minio/pkg/v2/net" "github.com/minio/pkg/v2/policy" "github.com/secure-io/sio-go" + "github.com/zeebo/xxh3" ) const ( @@ -2500,11 +2501,27 @@ func getTLSInfo() madmin.TLSInfo { if globalIsTLS { for _, c := range globalPublicCerts { + check := xxh3.Hash(c.RawIssuer) + check ^= xxh3.Hash(c.RawSubjectPublicKeyInfo) + // We XOR, so order doesn't matter. + for _, v := range c.DNSNames { + check ^= xxh3.HashString(v) + } + for _, v := range c.EmailAddresses { + check ^= xxh3.HashString(v) + } + for _, v := range c.IPAddresses { + check ^= xxh3.HashString(v.String()) + } + for _, v := range c.URIs { + check ^= xxh3.HashString(v.String()) + } tlsInfo.Certs = append(tlsInfo.Certs, madmin.TLSCert{ PubKeyAlgo: c.PublicKeyAlgorithm.String(), SignatureAlgo: c.SignatureAlgorithm.String(), NotBefore: c.NotBefore, NotAfter: c.NotAfter, + Checksum: strconv.FormatUint(check, 16), }) } } diff --git a/go.mod b/go.mod index 9bc928068..72620a2da 100644 --- a/go.mod +++ b/go.mod @@ -49,7 +49,7 @@ require ( github.com/minio/dperf v0.5.2 github.com/minio/highwayhash v1.0.2 github.com/minio/kes-go v0.2.0 - github.com/minio/madmin-go/v3 v3.0.34 + github.com/minio/madmin-go/v3 v3.0.35-0.20231130082526-199918d0ff20 github.com/minio/minio-go/v7 v7.0.65-0.20231122233251-1f7dd6b7e3e1 github.com/minio/mux v1.9.0 github.com/minio/pkg/v2 v2.0.4 diff --git a/go.sum b/go.sum index c95aba3aa..b11779681 100644 --- a/go.sum +++ b/go.sum @@ -449,8 +449,8 @@ github.com/minio/highwayhash v1.0.2 h1:Aak5U0nElisjDCfPSG79Tgzkn2gl66NxOMspRrKnA github.com/minio/highwayhash v1.0.2/go.mod h1:BQskDq+xkJ12lmlUUi7U0M5Swg3EWR+dLTk+kldvVxY= github.com/minio/kes-go v0.2.0 h1:HA33arq9s3MErbsj3PAXFVfFo4U4yw7lTKQ5kWFrpCA= github.com/minio/kes-go v0.2.0/go.mod h1:VorHLaIYis9/MxAHAtXN4d8PUMNKhIxTIlvFt0hBOEo= -github.com/minio/madmin-go/v3 v3.0.34 h1:MGPQYIWm52liSubofK24FhrznPYnRpQrDNddZJEyBPA= -github.com/minio/madmin-go/v3 v3.0.34/go.mod h1:4QN2NftLSV7MdlT50dkrenOMmNVHluxTvlqJou3hte8= +github.com/minio/madmin-go/v3 v3.0.35-0.20231130082526-199918d0ff20 h1:5kfjAypPN18QOOQaZjR3jfGzXyIwzLdKMS7d/cPY3Wc= +github.com/minio/madmin-go/v3 v3.0.35-0.20231130082526-199918d0ff20/go.mod h1:4QN2NftLSV7MdlT50dkrenOMmNVHluxTvlqJou3hte8= github.com/minio/mc v0.0.0-20231127112613-5e6ae2172e25 h1:8jT9Tz4opgrX6mnyFWW+TQ90AnrJqJ0mzeFXUWDHNGo= github.com/minio/mc v0.0.0-20231127112613-5e6ae2172e25/go.mod h1:8kat72LmpzZ2/xykDcq64tcRRJkkWo1Kd/Z5coC6t0w= github.com/minio/md5-simd v1.1.2 h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34=