This commit is contained in:
number571 2023-10-17 05:15:39 +07:00
parent 7952295a2f
commit 4ea09a446c
20 changed files with 77 additions and 48 deletions

View File

@ -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",

View File

@ -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",

View File

@ -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"
}

View File

@ -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"
}

View File

@ -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": {

View File

@ -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

View File

@ -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{

View File

@ -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 (

View File

@ -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": {

View File

@ -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": {

View File

@ -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": {

View File

@ -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": {

View File

@ -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",

View File

@ -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",

View File

@ -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",

View File

@ -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",

View File

@ -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": {

View File

@ -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": {

View File

@ -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": {

View File

@ -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",