MCPcopy Create free account
hub / github.com/XTLS/Go / ecdheKeyAgreement

Struct ecdheKeyAgreement

key_agreement.go:157–166  ·  view source on GitHub ↗

ecdheKeyAgreement implements a TLS key agreement where the server generates an ephemeral EC public/private key pair and signs it. The pre-master secret is then calculated using ECDH. The signature may be ECDSA, Ed25519 or RSA.

Source from the content-addressed store, hash-verified

155// pre-master secret is then calculated using ECDH. The signature may
156// be ECDSA, Ed25519 or RSA.
157type ecdheKeyAgreement struct {
158 version uint16
159 isRSA bool
160 params ecdheParameters
161
162 // ckx and preMasterSecret are generated in processServerKeyExchange
163 // and returned in generateClientKeyExchange.
164 ckx *clientKeyExchangeMsg
165 preMasterSecret []byte
166}
167
168func (ka *ecdheKeyAgreement) generateServerKeyExchange(config *Config, cert *Certificate, clientHello *clientHelloMsg, hello *serverHelloMsg) (*serverKeyExchangeMsg, error) {
169 var curveID CurveID

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected