Compare commits

...

1 Commits
master ... HRSS

Author SHA1 Message Date
  Kris Kwiatkowski 460efd3b1e HRSS: Init 5 years ago
3 changed files with 1220 additions and 0 deletions
Split View
  1. +7
    -0
      13.go
  2. +1
    -0
      common.go
  3. +1212
    -0
      hrss.go

+ 7
- 0
13.go View File

@@ -121,6 +121,7 @@ type kexNIST struct{ defaultServerKEX } // Used by NIST curves; P-256, P-384
type kexX25519 struct{ defaultServerKEX } // Used by X25519
type kexSIDHp503 struct{ defaultServerKEX } // Used by SIDH/P503
type kexSIKEp503 struct{} // Used by SIKE/P503
type kexHRSS struct{} // Used by HRSS
type kexHybridSIDHp503X25519 struct {
defaultServerKEX
classicKEX kexX25519
@@ -132,6 +133,11 @@ type kexHybridSIKEp503X25519 struct {
pqKEX kexSIKEp503
} // Used by SIKE-ECDHE hybrid scheme

type kexHybridHRSSCurve25519 struct {
classicKEX kexX25519
pqKEX kexHRSS
} // Used by HRSS-ECDHE hybrid scheme

// Routing map for key exchange strategies
var kexStrat = map[CurveID]kex{
CurveP256: &kexNIST{},
@@ -140,6 +146,7 @@ var kexStrat = map[CurveID]kex{
X25519: &kexX25519{},
HybridSIDHp503Curve25519: &kexHybridSIDHp503X25519{},
HybridSIKEp503Curve25519: &kexHybridSIKEp503X25519{},
HybridHRSSCurve25519: &kexHybridHRSSCurve25519{},
}

func newKeySchedule13(suite *cipherSuite, config *Config, clientRandom []byte) *keySchedule13 {


+ 1
- 0
common.go View File

@@ -125,6 +125,7 @@ const (
// Experimental KEX
HybridSIDHp503Curve25519 CurveID = 0xFE30
HybridSIKEp503Curve25519 CurveID = 0xFE32
HybridHRSSCurve25519 CurveID = 0x4138
)

// TLS 1.3 Key Share


+ 1212
- 0
hrss.go
File diff suppressed because it is too large
View File


Loading…
Cancel
Save