#post-quantum #proxy #client #aes #client-connection #server-client #secure

app oilelpqt

Post-quantum TCP proxy that uses Kyber1024 and multiple AES

13 releases (5 breaking)

0.10.1 Apr 12, 2024
0.10.0 Mar 21, 2024
0.9.0 Mar 19, 2024
0.8.0 Mar 19, 2024
0.5.3 Feb 4, 2024

#1127 in Cryptography

Download history 7/week @ 2024-02-16 267/week @ 2024-02-23 394/week @ 2024-03-01 57/week @ 2024-03-08 705/week @ 2024-03-15 103/week @ 2024-03-22 21/week @ 2024-03-29 5/week @ 2024-04-05 126/week @ 2024-04-12 1/week @ 2024-04-19

132 downloads per month

MIT license

26KB
565 lines

#Warning Only tested on 64-bit platforms [tv_难过], compiles with Rust 1.76.0

#Hint Currently requires 3rd-party proxy, I suggest you using Privoxy.

#Usage ##Assuming you're using Nushell, i.e., command shell written in Rust. Server side: Run Privoxy with similar configuration: max-client-connections 100000000000000000 listen-address [::1]:1025 forward / . Then: oilelpqt -a server -b 0.0.0.0:1641 out+err> /dev/null This will generate a file pubkey, you need give the file to client side, through SSH or TLS, you should ensure the download process is secure.

Client side: oilelpqt -a client -g server:port Requires user input. Default listening port switched to [::1]:1641 for the TV, aka, 小电视 on bilibili video hosting site.

#What's [tv_难过]? 哔哩哔哩小电视某个表情的代码

#Others Please be aware about False Fire, https://www.falsefire.com/en/about

#User Input On Client Side Both waiting milliseconds means to wait for random milliseconds but not more than your specified value, to pad connection. Both times of BUF: BUF size is hardcoded into this program, you specify the multiplication times. Client times of BUF means multiplication times on client side. Client padding times: Pad how many times using client times of BUF.

Dependencies

~3.5–9.5MB
~90K SLoC