mirror of
https://github.com/ScuroNeko/mtg.git
synced 2026-08-31 12:04:03 +03:00
Have a noise of variable size
This commit is contained in:
@@ -7,14 +7,16 @@ import (
|
||||
"crypto/sha256"
|
||||
"encoding/binary"
|
||||
"io"
|
||||
"math"
|
||||
rnd "math/rand/v2"
|
||||
|
||||
"github.com/9seconds/mtg/v2/mtglib/internal/doppel"
|
||||
"github.com/9seconds/mtg/v2/mtglib/internal/tls"
|
||||
"golang.org/x/crypto/curve25519"
|
||||
)
|
||||
|
||||
const (
|
||||
TypeHandshakeServer = 0x02
|
||||
|
||||
ChangeCipherValue = 0x01
|
||||
|
||||
EllipticCurveLen = 32
|
||||
@@ -125,7 +127,8 @@ func generateChangeCipherValue(buf *bytes.Buffer) {
|
||||
}
|
||||
|
||||
func generateNoise(buf *bytes.Buffer) {
|
||||
data := [1369]byte{}
|
||||
minSize := int(math.Round(0.75 * float64(doppel.TLSRecordSizeMax)))
|
||||
data := make([]byte, minSize+rnd.IntN(doppel.TLSRecordSizeMax-minSize))
|
||||
|
||||
if _, err := rand.Read(data[:]); err != nil {
|
||||
panic(err)
|
||||
|
||||
@@ -8,6 +8,7 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/9seconds/mtg/v2/mtglib"
|
||||
"github.com/9seconds/mtg/v2/mtglib/internal/doppel"
|
||||
"github.com/9seconds/mtg/v2/mtglib/internal/tls"
|
||||
"github.com/9seconds/mtg/v2/mtglib/internal/tls/fake"
|
||||
"github.com/stretchr/testify/suite"
|
||||
@@ -58,7 +59,7 @@ func (suite *SendServerHelloTestSuite) TestRecordStructure() {
|
||||
recordType, length, err := tls.ReadRecord(suite.buf, &rec)
|
||||
suite.NoError(err)
|
||||
suite.Equal(byte(tls.TypeApplicationData), recordType)
|
||||
suite.Equal(int64(1369), length)
|
||||
suite.Greater(length, int64(doppel.TLSRecordSizeStart))
|
||||
|
||||
suite.Empty(suite.buf.Bytes())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user