亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

中間證書與 Go 的私鑰不匹配

中間證書與 Go 的私鑰不匹配

Go
慕碼人2483693 2022-01-04 18:53:04
我正在嘗試構建一個運行 https 應用程序的 Go (golang) 程序。我真的在使用 SSL 中間證書時遇到了問題,不知道問題出在哪里,是來自我的證書還是來自 Go 語言應用程序。因此,我從 SSL CA 提供商那里獲得了兩個證書文件:服務器證書和中間證書。所以,我試圖從我的 go 代碼中加載這些證書,如下所示:tlsConfig := &tls.Config{}tlsConfig.Certificates = make([]tls.Certificate, 2)var err errortlsConfig.Certificates[0], err = tls.LoadX509KeyPair(serverCertificate, privateKey)if err != nil {    log.Fatal(err)}tlsConfig.Certificates[1], err = tls.LoadX509KeyPair(intermeddiateCertificate, privateKey)if err != nil {    log.Fatal(err)}tlsConfig.BuildNameToCertificate()server := &http.Server{    ReadTimeout:    10 * time.Second,    WriteTimeout:   10 * time.Second,    MaxHeaderBytes: 1 << 20,    TLSConfig:      tlsConfig,    Addr:           ":443,}   app.RunServer(server)該代碼在此行上第二次加載證書時失敗tls.LoadX509KeyPair(intermeddiateCertificate, privateKey)錯誤是證書與私鑰不匹配。中間證書是否應該與 SSL/TLS 世界中的私鑰匹配?或者它沒有必要。如果不需要,那么如何在沒有私鑰的情況下加載證書?我應該回到我的 CA 并告訴他們為什么中間證書與私鑰不匹配?
查看完整描述

1 回答

?
喵喔喔

TA貢獻1735條經驗 獲得超5個贊

您沒有中間證書的密鑰,只有服務器證書的密鑰。請注意,我對 Go 了解不多,但根據Golang SSL TCP 套接字證書配置,您只需將中間證書包含在與服務器證書相同的 PEM 文件中。


查看完整回答
反對 回復 2022-01-04
  • 1 回答
  • 0 關注
  • 287 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號