Skip to content

Commit

Permalink
update
Browse files Browse the repository at this point in the history
  • Loading branch information
number571 committed Jan 28, 2025
1 parent ee87cd1 commit fb808e6
Show file tree
Hide file tree
Showing 16 changed files with 368 additions and 370 deletions.
Binary file modified docs/hidden_lake_anonymous_network.docx
Binary file not shown.
2 changes: 1 addition & 1 deletion examples/notifier/simple/node1_hln/hln.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
settings:
messages_capacity: 2048
work_size_bits: 30
work_size_bits: 25
pow_parallel: 64
network_key: channel_password
logging:
Expand Down
2 changes: 1 addition & 1 deletion examples/notifier/simple/node2_hln/hln.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
settings:
messages_capacity: 2048
work_size_bits: 30
work_size_bits: 25
pow_parallel: 64
network_key: channel_password
logging:
Expand Down
2 changes: 1 addition & 1 deletion examples/notifier/simple/node3_hln/hln.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
settings:
messages_capacity: 2048
work_size_bits: 30
work_size_bits: 25
pow_parallel: 64
network_key: channel_password
logging:
Expand Down
17 changes: 4 additions & 13 deletions internal/applications/notifier/internal/handler/friends_chat.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import (
hlm_settings "github.com/number571/hidden-lake/internal/applications/notifier/pkg/settings"
hls_client "github.com/number571/hidden-lake/internal/service/pkg/client"
"github.com/number571/hidden-lake/internal/utils/alias"
"github.com/number571/hidden-lake/internal/utils/layer1x"
"github.com/number571/hidden-lake/internal/utils/layer3"
http_logger "github.com/number571/hidden-lake/internal/utils/logger/http"
"github.com/number571/hidden-lake/internal/utils/msgdata"
"github.com/number571/hidden-lake/internal/webui"
Expand Down Expand Up @@ -154,21 +154,12 @@ func pushMessage(
}

cfgSett := pCfg.GetSettings()
msg := layer1x.NewMessage(
msg := layer3.NewMessage(
layer1.NewConstructSettings(&layer1.SConstructSettings{
FSettings: layer1.NewSettings(&layer1.SSettings{
FWorkSizeBits: cfgSett.GetWorkSizeBits(),
}),
FSettings: cfgSett,
FParallel: cfgSett.GetPowParallel(),
}),
layer1x.NewMessage(
layer1.NewConstructSettings(&layer1.SConstructSettings{
FSettings: layer1.NewSettings(&layer1.SSettings{
FNetworkKey: cfgSett.GetNetworkKey(),
}),
}),
pMsgBytes,
).ToBytes(),
pMsgBytes,
)

hlnClient := hln_client.NewClient(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import (
"github.com/number571/hidden-lake/internal/applications/notifier/internal/database"
"github.com/number571/hidden-lake/internal/utils/alias"
"github.com/number571/hidden-lake/internal/utils/api"
"github.com/number571/hidden-lake/internal/utils/layer1x"
"github.com/number571/hidden-lake/internal/utils/layer3"
http_logger "github.com/number571/hidden-lake/internal/utils/logger/http"
"github.com/number571/hidden-lake/internal/utils/msgdata"

Expand Down Expand Up @@ -59,7 +59,7 @@ func HandleIncomingFinalyzeHTTP(
return
}

rawBodyBytes, err := layer1x.ExtractMessage(rawMsg)
rawBodyBytes, err := layer3.ExtractMessage(rawMsg)
if err != nil {
pLogger.PushWarn(logBuilder.WithMessage("extract_raw_message"))
_ = api.Response(pW, http.StatusNotAcceptable, "failed: extract raw message")
Expand Down Expand Up @@ -89,7 +89,13 @@ func HandleIncomingFinalyzeHTTP(
rawBodyBytes,
)
if !hashExist && err == nil {
bodyBytes, err := layer1x.ExtractMessage(decMsg)
if _, err := pDB.SetHash(rel, true, decMsg.GetHash()); err != nil {
pLogger.PushWarn(logBuilder.WithMessage("set_hash"))
_ = api.Response(pW, http.StatusNotAcceptable, "failed: set hash")
return
}

bodyBytes, err := layer3.ExtractMessage(decMsg)
if err != nil {
pLogger.PushWarn(logBuilder.WithMessage("extract_dec_message"))
_ = api.Response(pW, http.StatusBadRequest, "failed: extract dec message")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import (
hls_settings "github.com/number571/hidden-lake/internal/service/pkg/settings"
"github.com/number571/hidden-lake/internal/utils/alias"
"github.com/number571/hidden-lake/internal/utils/api"
"github.com/number571/hidden-lake/internal/utils/layer1x"
"github.com/number571/hidden-lake/internal/utils/layer3"
http_logger "github.com/number571/hidden-lake/internal/utils/logger/http"
)

Expand Down Expand Up @@ -55,7 +55,7 @@ func HandleIncomingRedirectHTTP(
return
}

if _, err := layer1x.ExtractMessage(rawMsg); err != nil {
if _, err := layer3.ExtractMessage(rawMsg); err != nil {
pLogger.PushWarn(logBuilder.WithMessage("decode_message_body"))
_ = api.Response(pW, http.StatusNotAcceptable, "failed: decode message body")
return
Expand Down
6 changes: 3 additions & 3 deletions internal/applications/notifier/internal/utils/msg_size.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,18 @@ import (
"errors"

"github.com/number571/go-peer/pkg/message/layer1"
"github.com/number571/go-peer/pkg/payload"
hln_client "github.com/number571/hidden-lake/internal/applications/notifier/pkg/client"
"github.com/number571/hidden-lake/internal/service/pkg/client"
"github.com/number571/hidden-lake/internal/utils/layer3"
)

var (
gReqSize = uint64(len(
hln_client.NewBuilder().Redirect(layer1.NewMessage(
hln_client.NewBuilder().Redirect(layer3.NewMessage(
layer1.NewConstructSettings(&layer1.SConstructSettings{
FSettings: layer1.NewSettings(&layer1.SSettings{}),
}),
payload.NewPayload32(0, []byte{}),
[]byte{},
)).ToBytes(),
))
)
Expand Down
1 change: 1 addition & 0 deletions internal/applications/notifier/pkg/client/builder.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import (
)

func init() {
// used for set gReqSize constant: 'internal/applications/notifier/internal/utils/msg_size.go'
if len(hln_settings.CFinalyzePath) != len(hln_settings.CRedirectPath) {
panic("notifier builder length")
}
Expand Down
4 changes: 0 additions & 4 deletions internal/applications/notifier/pkg/client/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,6 @@ import (
hls_request "github.com/number571/hidden-lake/pkg/request"
)

const (
CSaltSize = 32
)

type IClient interface {
Finalyze(context.Context, []string, layer1.IMessage) error
Redirect(context.Context, []string, string, layer1.IMessage) error
Expand Down
5 changes: 0 additions & 5 deletions internal/applications/notifier/pkg/settings/settings.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,6 @@ const (
CPathDB = "hln.db"
)

const (
CHeaderPow = "Hl-Notifier-Pow"
CHeaderSalt = "Hl-Notifier-Salt"
)

const (
CFinalyzePath = "/finalyze"
CRedirectPath = "/redirect"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package layer1x
package layer3

const (
errPrefix = "internal/utils/layer1x = "
errPrefix = "internal/utils/layer3 = "
)

type SAppError struct {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package layer1x
package layer3

import (
"bytes"
Expand All @@ -10,18 +10,27 @@ import (
)

const (
cHeadVal = 0x01
cSaltSize = 32
)

func NewMessage(pSett layer1.IConstructSettings, pBody []byte) layer1.IMessage {
salt := random.NewRandom().GetBytes(cSaltSize)
cfgSett := pSett.GetSettings()
encMsg := layer1.NewMessage(
layer1.NewConstructSettings(&layer1.SConstructSettings{
FSettings: layer1.NewSettings(&layer1.SSettings{
FNetworkKey: cfgSett.GetNetworkKey(),
}),
}),
newPayload(pBody),
)
return layer1.NewMessage(
pSett,
payload.NewPayload32(
crc32.Checksum(salt, crc32.IEEETable),
bytes.Join([][]byte{salt, pBody}, []byte{}),
),
layer1.NewConstructSettings(&layer1.SConstructSettings{
FSettings: layer1.NewSettings(&layer1.SSettings{
FWorkSizeBits: cfgSett.GetWorkSizeBits(),
}),
FParallel: pSett.GetParallel(),
}),
newPayload(encMsg.ToBytes()),
)
}

Expand All @@ -36,3 +45,11 @@ func ExtractMessage(pMsg layer1.IMessage) ([]byte, error) {
}
return body[cSaltSize:], nil
}

func newPayload(pBody []byte) payload.IPayload32 {
salt := random.NewRandom().GetBytes(cSaltSize)
return payload.NewPayload32(
crc32.Checksum(salt, crc32.IEEETable),
bytes.Join([][]byte{salt, pBody}, []byte{}),
)
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package layer1x
package layer3

import "testing"

Expand Down
2 changes: 1 addition & 1 deletion test/result/badge_codelines.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit fb808e6

Please sign in to comment.