Skip to content

feat(hy2): implement salamander obfuscation#57

Open
FireNameFN wants to merge 4 commits into
daeuniverse:mainfrom
FireNameFN:SalamanderSquash
Open

feat(hy2): implement salamander obfuscation#57
FireNameFN wants to merge 4 commits into
daeuniverse:mainfrom
FireNameFN:SalamanderSquash

Conversation

@FireNameFN

@FireNameFN FireNameFN commented Dec 2, 2025

Copy link
Copy Markdown

Add Salamander obfuscation implementation for Hysteria2.

It's my first Go experience. As I know there is no need for array pooling, check it if is not true. Also it increases UDP packet size, so can make problems with MTU. Also I think that XORing can be SIMDed and hash of first part (that contains key) can be precomputed.

It is working on my setup. Tests are broken so can't run them.

Closes daeuniverse/dae#904
Closes daeuniverse/dae#798

@FireNameFN FireNameFN requested a review from a team as a code owner December 2, 2025 23:40
Comment thread protocol/hysteria2/client/client.go Outdated
Prevents unknown obfuscation values by validating the mode
and returning an error for unsupported options, improving
configuration safety and error transparency.
AkinoKaede
AkinoKaede previously approved these changes Jan 30, 2026
Comment thread protocol/hysteria2/client/client.go
@FireNameFN

Copy link
Copy Markdown
Author

I don't forget about this PR, just was busy.

AkinoKaede
AkinoKaede previously approved these changes Jan 30, 2026
Comment thread dialer/hysteria2/hysteria2.go Outdated
@Sober7135

Copy link
Copy Markdown

any update for this?

@B83C

B83C commented Jul 5, 2026

Copy link
Copy Markdown

Any updates?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request] Add Salamander obfuscation support for Hysteria2 [Bug Report] Hysteria2 and obfuscation

4 participants