1
This commit is contained in:
@@ -8,7 +8,6 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/gopay-main/pkg/util"
|
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
@@ -127,19 +126,19 @@ func GetCertSN(certPathOrData interface{}) (sn string, err error) {
|
|||||||
case string:
|
case string:
|
||||||
certData, err = ioutil.ReadFile(pathOrData)
|
certData, err = ioutil.ReadFile(pathOrData)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return util.NULL, err
|
return "", err
|
||||||
}
|
}
|
||||||
case []byte:
|
case []byte:
|
||||||
certData = pathOrData
|
certData = pathOrData
|
||||||
default:
|
default:
|
||||||
return util.NULL, errors.New("certPathOrData 证书类型断言错误")
|
return "", errors.New("certPathOrData 证书类型断言错误")
|
||||||
}
|
}
|
||||||
|
|
||||||
block, _ := pem.Decode(certData)
|
block, _ := pem.Decode(certData)
|
||||||
if block != nil {
|
if block != nil {
|
||||||
cert, err := x509.ParseCertificate(block.Bytes)
|
cert, err := x509.ParseCertificate(block.Bytes)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return util.NULL, err
|
return "", err
|
||||||
}
|
}
|
||||||
name := cert.Issuer.String()
|
name := cert.Issuer.String()
|
||||||
serialNumber := cert.SerialNumber.String()
|
serialNumber := cert.SerialNumber.String()
|
||||||
@@ -148,8 +147,8 @@ func GetCertSN(certPathOrData interface{}) (sn string, err error) {
|
|||||||
h.Write([]byte(serialNumber))
|
h.Write([]byte(serialNumber))
|
||||||
sn = hex.EncodeToString(h.Sum(nil))
|
sn = hex.EncodeToString(h.Sum(nil))
|
||||||
}
|
}
|
||||||
if sn == util.NULL {
|
if sn == "" {
|
||||||
return util.NULL, errors.New("failed to get sn,please check your cert")
|
return "", errors.New("failed to get sn,please check your cert")
|
||||||
}
|
}
|
||||||
return sn, nil
|
return sn, nil
|
||||||
}
|
}
|
||||||
@@ -180,12 +179,12 @@ func GetRootCertSN(rootCertPathOrData interface{}) (sn string, err error) {
|
|||||||
case string:
|
case string:
|
||||||
certData, err = ioutil.ReadFile(pathOrData)
|
certData, err = ioutil.ReadFile(pathOrData)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return util.NULL, err
|
return "", err
|
||||||
}
|
}
|
||||||
case []byte:
|
case []byte:
|
||||||
certData = pathOrData
|
certData = pathOrData
|
||||||
default:
|
default:
|
||||||
return util.NULL, errors.New("rootCertPathOrData 断言异常")
|
return "", errors.New("rootCertPathOrData 断言异常")
|
||||||
}
|
}
|
||||||
|
|
||||||
pems := strings.Split(string(certData), certEnd)
|
pems := strings.Split(string(certData), certEnd)
|
||||||
@@ -203,15 +202,15 @@ func GetRootCertSN(rootCertPathOrData interface{}) (sn string, err error) {
|
|||||||
h := md5.New()
|
h := md5.New()
|
||||||
h.Write([]byte(name))
|
h.Write([]byte(name))
|
||||||
h.Write([]byte(serialNumber))
|
h.Write([]byte(serialNumber))
|
||||||
if sn == util.NULL {
|
if sn == "" {
|
||||||
sn += hex.EncodeToString(h.Sum(nil))
|
sn += hex.EncodeToString(h.Sum(nil))
|
||||||
} else {
|
} else {
|
||||||
sn += "_" + hex.EncodeToString(h.Sum(nil))
|
sn += "_" + hex.EncodeToString(h.Sum(nil))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if sn == util.NULL {
|
if sn == "" {
|
||||||
return util.NULL, errors.New("failed to get sn,please check your cert")
|
return "", errors.New("failed to get sn,please check your cert")
|
||||||
}
|
}
|
||||||
return sn, nil
|
return sn, nil
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user