From 4ea09a446c38b9d286f2c6da4c8e072c479c8261 Mon Sep 17 00:00:00 2001 From: number571 Date: Tue, 17 Oct 2023 05:15:39 +0700 Subject: [PATCH] update --- README.md | 4 +- cmd/hidden_lake/_default_cfg/docker/hls.cfg | 3 +- cmd/hidden_lake/_default_cfg/hlm.cfg | 5 +-- cmd/hidden_lake/_default_cfg/hls.cfg | 6 ++- cmd/hidden_lake/service/README.md | 17 ++++---- .../service/internal/config/config_test.go | 42 +++++++++++-------- .../service/internal/config/init.go | 1 + .../service/pkg/settings/settings.go | 11 ++--- .../default/_mounted_node1/hls_copy.cfg | 3 +- .../default/_mounted_node2/hls_copy.cfg | 3 +- .../default/node1_hlm/hls_copy.cfg | 3 +- .../default/node2_hlm/hls_copy.cfg | 3 +- .../prod_test/node1_hlm/hls_copy.cfg | 3 +- .../prod_test/node2_hlm/hls_copy.cfg | 3 +- .../secret_channel/node1_hlm/hls_copy.cfg | 3 +- .../secret_channel/node2_hlm/hls_copy.cfg | 3 +- .../_docker/default/_mounted_recv/hls.cfg | 3 +- .../_docker/default/_mounted_send/hls.cfg | 3 +- .../echo_service/default/recv_hls/hls.cfg | 3 +- .../echo_service/default/send_hls/hls.cfg | 3 +- 20 files changed, 77 insertions(+), 48 deletions(-) diff --git a/README.md b/README.md index 34c09c2f..ef8bf5d0 100644 --- a/README.md +++ b/README.md @@ -99,6 +99,7 @@ Theoretical provability | + | + | + | Ease of software implementation | + | - | - | Polymorphism of information | - | + | + | Static communication delay | + | - | + | +Sending parallel messages | - | + | - | Network scales easily | - | - | - | A feature of HLS (compared to many other anonymous networks) is its easy adaptation to a hostile centralized environment. Anonymity can be restored literally from one node in the network, even if it is the only point of failure. @@ -174,7 +175,8 @@ Default config `hls.cfg` "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": [ "info", diff --git a/cmd/hidden_lake/_default_cfg/docker/hls.cfg b/cmd/hidden_lake/_default_cfg/docker/hls.cfg index e6ad9c6f..85a27680 100644 --- a/cmd/hidden_lake/_default_cfg/docker/hls.cfg +++ b/cmd/hidden_lake/_default_cfg/docker/hls.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": [ "info", diff --git a/cmd/hidden_lake/_default_cfg/hlm.cfg b/cmd/hidden_lake/_default_cfg/hlm.cfg index e069fde5..a57b23de 100644 --- a/cmd/hidden_lake/_default_cfg/hlm.cfg +++ b/cmd/hidden_lake/_default_cfg/hlm.cfg @@ -12,8 +12,5 @@ "interface": "127.0.0.1:9591", "incoming": "127.0.0.1:9592" }, - "connection": "127.0.0.1:9572", - "backup_connections": [ - "127.0.0.1:9582" - ] + "connection": "127.0.0.1:9572" } \ No newline at end of file diff --git a/cmd/hidden_lake/_default_cfg/hls.cfg b/cmd/hidden_lake/_default_cfg/hls.cfg index 34d21332..a2ef170d 100644 --- a/cmd/hidden_lake/_default_cfg/hls.cfg +++ b/cmd/hidden_lake/_default_cfg/hls.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": [ "info", @@ -15,6 +16,9 @@ "tcp": "127.0.0.1:9571", "http": "127.0.0.1:9572" }, + "backup_connections": [ + "127.0.0.1:9582" + ], "services": { "go-peer/hidden-lake-messenger": "127.0.0.1:9592" } diff --git a/cmd/hidden_lake/service/README.md b/cmd/hidden_lake/service/README.md index d6eeb838..908d2e95 100644 --- a/cmd/hidden_lake/service/README.md +++ b/cmd/hidden_lake/service/README.md @@ -8,11 +8,12 @@ The `Hidden Lake Service` is the core of an anonymous network with theoretically Features / Anonymity networks | Queue-networks (5^stage) | Entropy-networks (6stage) | DC-networks (1^stage) :-----------------------------:|:-----------------------------:|:------------------------------:|:------------------------------: -Theoretical provability | + | + | + -Ease of software implementation | + | - | - -Polymorphism of information | - | + | + -Static communication delay | + | - | + -Network scales easily | - | - | - +Theoretical provability | + | + | + | +Ease of software implementation | + | - | - | +Polymorphism of information | - | + | + | +Static communication delay | + | - | + | +Sending parallel messages | - | + | - | +Network scales easily | - | - | - | A feature of HLS (compared to many other anonymous networks) is its easy adaptation to a hostile centralized environment. Anonymity can be restored literally from one node in the network, even if it is the only point of failure. @@ -87,7 +88,8 @@ Default config `hls.cfg` "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": [ "info", @@ -240,7 +242,8 @@ $ make "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "address": { diff --git a/cmd/hidden_lake/service/internal/config/config_test.go b/cmd/hidden_lake/service/internal/config/config_test.go index 52edf611..bc667126 100644 --- a/cmd/hidden_lake/service/internal/config/config_test.go +++ b/cmd/hidden_lake/service/internal/config/config_test.go @@ -14,22 +14,23 @@ const ( ) const ( - tcLogging = true - tcNetwork = "test_network_key" - tcDownloader = "test_downloader" - tcUploader = "test_uploader" - tcAddressTCP = "test_address_tcp" - tcAddressHTTP = "test_address_http" - tcAddressPPROF = "test_address_pprof" - tcPubKeyAlias1 = "test_alias1" - tcPubKeyAlias2 = "test_alias2" - tcServiceName1 = "test_service1" - tcServiceName2 = "test_service2" - tcMessageSize = (1 << 20) - tcWorkSize = 20 - tcKeySize = 4096 - tcQueuePeriod = 1000 - tcLimitVoidSize = (1 << 20) + tcLogging = true + tcNetwork = "test_network_key" + tcDownloader = "test_downloader" + tcUploader = "test_uploader" + tcAddressTCP = "test_address_tcp" + tcAddressHTTP = "test_address_http" + tcAddressPPROF = "test_address_pprof" + tcPubKeyAlias1 = "test_alias1" + tcPubKeyAlias2 = "test_alias2" + tcServiceName1 = "test_service1" + tcServiceName2 = "test_service2" + tcMessageSize = (1 << 20) + tcWorkSize = 20 + tcKeySize = 4096 + tcQueuePeriod = 1000 + tcLimitVoidSize = (1 << 20) + tcMessagesCapacity = 2048 ) var ( @@ -54,7 +55,8 @@ const ( "work_size_bits": %d, "key_size_bits": %d, "queue_period_ms": %d, - "limit_void_size_bytes": %d + "limit_void_size_bytes": %d, + "messages_capacity": %d }, "logging": ["info", "erro"], "address": { @@ -86,6 +88,7 @@ func testNewConfigString() string { tcKeySize, tcQueuePeriod, tcLimitVoidSize, + tcMessagesCapacity, tcAddressTCP, tcAddressHTTP, tcAddressPPROF, @@ -137,6 +140,11 @@ func TestConfig(t *testing.T) { return } + if cfg.GetSettings().GetMessagesCapacity() != tcMessagesCapacity { + t.Error("settings messages capacity is invalid") + return + } + if cfg.GetSettings().GetLimitVoidSizeBytes() != tcLimitVoidSize { t.Error("settings limit void size is invalid") return diff --git a/cmd/hidden_lake/service/internal/config/init.go b/cmd/hidden_lake/service/internal/config/init.go index 3d8cfd76..6fa4a141 100644 --- a/cmd/hidden_lake/service/internal/config/init.go +++ b/cmd/hidden_lake/service/internal/config/init.go @@ -25,6 +25,7 @@ func InitConfig(cfgPath string, initCfg *SConfig) (IConfig, error) { FKeySizeBits: hls_settings.CDefaultKeySize, FQueuePeriodMS: hls_settings.CDefaultQueuePeriod, FLimitVoidSizeBytes: hls_settings.CDefaultLimitVoidSize, + FMessagesCapacity: hls_settings.CDefaultMessagesCapacity, }, FLogging: []string{logger.CLogInfo, logger.CLogWarn, logger.CLogErro}, FAddress: &SAddress{ diff --git a/cmd/hidden_lake/service/pkg/settings/settings.go b/cmd/hidden_lake/service/pkg/settings/settings.go index c52c0b78..dfd8fc98 100644 --- a/cmd/hidden_lake/service/pkg/settings/settings.go +++ b/cmd/hidden_lake/service/pkg/settings/settings.go @@ -35,11 +35,12 @@ const ( ) const ( - CDefaultMessageSize = (8 << 10) // 8KiB - CDefaultWorkSize = 20 // bits - CDefaultKeySize = 4096 // bits - CDefaultQueuePeriod = 5000 // 5seconds - CDefaultLimitVoidSize = (4 << 10) // 4KiB + CDefaultMessageSize = (8 << 10) // 8KiB + CDefaultWorkSize = 20 // bits + CDefaultKeySize = 4096 // bits + CDefaultQueuePeriod = 5000 // 5seconds + CDefaultLimitVoidSize = (4 << 10) // 4KiB + CDefaultMessagesCapacity = 2048 // messages ) const ( diff --git a/examples/anon_messenger/_docker/default/_mounted_node1/hls_copy.cfg b/examples/anon_messenger/_docker/default/_mounted_node1/hls_copy.cfg index b031051e..8ece0188 100644 --- a/examples/anon_messenger/_docker/default/_mounted_node1/hls_copy.cfg +++ b/examples/anon_messenger/_docker/default/_mounted_node1/hls_copy.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "address": { diff --git a/examples/anon_messenger/_docker/default/_mounted_node2/hls_copy.cfg b/examples/anon_messenger/_docker/default/_mounted_node2/hls_copy.cfg index d0e013ce..4e1986f7 100644 --- a/examples/anon_messenger/_docker/default/_mounted_node2/hls_copy.cfg +++ b/examples/anon_messenger/_docker/default/_mounted_node2/hls_copy.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "address": { diff --git a/examples/anon_messenger/default/node1_hlm/hls_copy.cfg b/examples/anon_messenger/default/node1_hlm/hls_copy.cfg index 6a4547e6..678a4fae 100644 --- a/examples/anon_messenger/default/node1_hlm/hls_copy.cfg +++ b/examples/anon_messenger/default/node1_hlm/hls_copy.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "address": { diff --git a/examples/anon_messenger/default/node2_hlm/hls_copy.cfg b/examples/anon_messenger/default/node2_hlm/hls_copy.cfg index 7f4d44d2..30ac79e8 100644 --- a/examples/anon_messenger/default/node2_hlm/hls_copy.cfg +++ b/examples/anon_messenger/default/node2_hlm/hls_copy.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "address": { diff --git a/examples/anon_messenger/prod_test/node1_hlm/hls_copy.cfg b/examples/anon_messenger/prod_test/node1_hlm/hls_copy.cfg index 571df398..07ce4433 100644 --- a/examples/anon_messenger/prod_test/node1_hlm/hls_copy.cfg +++ b/examples/anon_messenger/prod_test/node1_hlm/hls_copy.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "network_key": "8Jkl93Mdk93md1bz", diff --git a/examples/anon_messenger/prod_test/node2_hlm/hls_copy.cfg b/examples/anon_messenger/prod_test/node2_hlm/hls_copy.cfg index 532cb494..5d18021e 100644 --- a/examples/anon_messenger/prod_test/node2_hlm/hls_copy.cfg +++ b/examples/anon_messenger/prod_test/node2_hlm/hls_copy.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "network_key": "8Jkl93Mdk93md1bz", diff --git a/examples/anon_messenger/secret_channel/node1_hlm/hls_copy.cfg b/examples/anon_messenger/secret_channel/node1_hlm/hls_copy.cfg index 6b854cb4..feb37a33 100644 --- a/examples/anon_messenger/secret_channel/node1_hlm/hls_copy.cfg +++ b/examples/anon_messenger/secret_channel/node1_hlm/hls_copy.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "address": { "tcp": "localhost:8571", diff --git a/examples/anon_messenger/secret_channel/node2_hlm/hls_copy.cfg b/examples/anon_messenger/secret_channel/node2_hlm/hls_copy.cfg index 2f414822..2777e190 100644 --- a/examples/anon_messenger/secret_channel/node2_hlm/hls_copy.cfg +++ b/examples/anon_messenger/secret_channel/node2_hlm/hls_copy.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "address": { "tcp": "localhost:7571", diff --git a/examples/echo_service/_docker/default/_mounted_recv/hls.cfg b/examples/echo_service/_docker/default/_mounted_recv/hls.cfg index 2702a908..6066c86a 100644 --- a/examples/echo_service/_docker/default/_mounted_recv/hls.cfg +++ b/examples/echo_service/_docker/default/_mounted_recv/hls.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "services": { diff --git a/examples/echo_service/_docker/default/_mounted_send/hls.cfg b/examples/echo_service/_docker/default/_mounted_send/hls.cfg index deb73255..a1561f8f 100644 --- a/examples/echo_service/_docker/default/_mounted_send/hls.cfg +++ b/examples/echo_service/_docker/default/_mounted_send/hls.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "address": { diff --git a/examples/echo_service/default/recv_hls/hls.cfg b/examples/echo_service/default/recv_hls/hls.cfg index aa05b03f..1c1c1d0c 100644 --- a/examples/echo_service/default/recv_hls/hls.cfg +++ b/examples/echo_service/default/recv_hls/hls.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "key_size_bits": 4096, "queue_period_ms": 5000, - "limit_void_size_bytes": 4096 + "limit_void_size_bytes": 4096, + "messages_capacity": 2048 }, "logging": ["info", "warn", "erro"], "services": { diff --git a/examples/echo_service/default/send_hls/hls.cfg b/examples/echo_service/default/send_hls/hls.cfg index 35a15ea9..824de3eb 100644 --- a/examples/echo_service/default/send_hls/hls.cfg +++ b/examples/echo_service/default/send_hls/hls.cfg @@ -4,7 +4,8 @@ "work_size_bits": 20, "queue_period_ms": 5000, "limit_void_size_bytes": 4096, - "key_size_bits": 4096 + "key_size_bits": 4096, + "messages_capacity": 2048 }, "logging": [ "info",