package thrembio // 0% of AI generated code import ( "WhspBrd/owner" "WhspBrd/typio/bit" "crypto/mlkem" "crypto/sha256" "errors" ) var ( ErrSecretCantBeNil = errors.New("secret cant be nil") ) var magicBytes = []byte{0x70, 0x03, 0xEA} // 'p' + 'Ϫ' (U+03EA) const version byte = 3 var magicWithVersion = append(magicBytes, version) type PacketReqType byte type PacketResType byte const ( Rq_Ping PacketReqType = 0 Rq_Register PacketReqType = 1 Rq_Login PacketReqType = 2 Rq_Data PacketReqType = 3 Rq_Unknown PacketReqType = 4 Rs_Ack PacketResType = 0 Rs_Data PacketResType = 1 Rs_Error PacketResType = 2 Rs_Unknown PacketResType = 3 ) var ( notLoggedB = []byte("not_logged") notRegisteredB = []byte("not_registered") none = []byte{0} ) var commonHeaderSize = len(magicWithVersion) + bit.Size64b_B + 1 var registerRestSize = bit.Size64b_B + sha256.BlockSize + owner.SignatureSize var loginRestSize = mlkem.EncapsulationKeySize1024 + owner.SignatureSize var dataRestMinSize = sha256.BlockSize + bit.Size32b_B + 1