diff --git a/noise_test.go b/noise_test.go index 9807ddb..5fb7dd6 100644 --- a/noise_test.go +++ b/noise_test.go @@ -257,6 +257,20 @@ func (NoiseSuite) TestPSK_NN_Roundtrip(c *C) { c.Assert(string(res), Equals, "bar") } +func (NoiseSuite) TestPSK_N(c *C) { + cs := NewCipherSuite(DH25519, CipherAESGCM, HashSHA256) + rng := new(RandomInc) + staticR := cs.GenerateKeypair(rng) + + hsI := NewHandshakeState(Config{CipherSuite: cs, Random: rng, Pattern: HandshakeN, Initiator: true, PresharedKey: []byte{0x01, 0x02, 0x03}, PeerStatic: staticR.Public}) + + msg, _, _ := hsI.WriteMessage(nil, nil) + c.Assert(msg, HasLen, 48) + + expected, _ := hex.DecodeString("358072d6365880d1aeea329adf9121383851ed21a28e3b75e965d0d2cd16625475344a60649da3ec23ce8e3ed779e766") + c.Assert(msg, DeepEquals, expected) +} + func (NoiseSuite) TestPSK_X(c *C) { cs := NewCipherSuite(DH25519, CipherChaChaPoly, HashSHA256) rng := new(RandomInc) @@ -267,7 +281,7 @@ func (NoiseSuite) TestPSK_X(c *C) { msg, _, _ := hs.WriteMessage(nil, nil) c.Assert(msg, HasLen, 96) - expected, _ := hex.DecodeString("79a631eede1bf9c98f12032cdeadd0e7a079398fc786b88cc846ec89af85a51a983a01a35059140decfb16a5748b5673a261e4bb69a11f0d698cf6d5117f99eadcacaa2082307089ab2c633970cdbe1da510833a29ba3211174d35780b58e99c") + expected, _ := hex.DecodeString("79a631eede1bf9c98f12032cdeadd0e7a079398fc786b88cc846ec89af85a51a12d5cf01bc576e8f0124b14db3ed7a00d20f16186e8f1e2c861fb3d4113f39b290f0048404b8d21e2098958b6bdf50f41dfb1143700310482cfb52c9002261bd") c.Assert(msg, DeepEquals, expected) } @@ -294,7 +308,7 @@ func (NoiseSuite) TestPSK_NN(c *C) { c.Assert(err, IsNil) c.Assert(string(res), Equals, "defg") - expected, _ := hex.DecodeString("07a37cbc142093c8b755dc1b10e86cb426374ad16aa853ed0bdfc0b2b86d1c7c4f28d0b09ff91e2ff6bb55bb99bc74436056c0d1") + expected, _ := hex.DecodeString("07a37cbc142093c8b755dc1b10e86cb426374ad16aa853ed0bdfc0b2b86d1c7cfda657b21e8eac78df67b6bd453c0b11372364a6") c.Assert(msg, DeepEquals, expected) } @@ -330,6 +344,6 @@ func (NoiseSuite) TestPSK_XX(c *C) { c.Assert(err, IsNil) c.Assert(res, HasLen, 0) - expected, _ := hex.DecodeString("eb8f3a6d5b68c7048cf61cbbff4a19959fed3ad315ef0d088f00681f3f38295d5d2aee59874e22cf9e86c2df3aaea03449435de887bab9bde1ee7ef392785fdf") + expected, _ := hex.DecodeString("2b9c628158a517e3984dc619245d4b9cd73561944f266181b183812ca73499881e30f6e7eeb576c258acc713c2c62874fd1beb76b122f6303f974109aefd7e2a") c.Assert(msg, DeepEquals, expected) }