2022-12-12

今天做了一下服務端和客戶端的協議混淆,昨天后面又仔細看了一下chacha20poly1305的加密步驟,雖然chacha20是一個流加密算法,但是加上了poly1305之後就變成了認證加密了,每次加密之後都有一個認證標籤產生,這就如果要做這個算法加密的話,流量就必須得分包處理,不然沒辦法分清認證標籤在哪裡,性能估計也會打折扣。 ...

2022年12月12日 · 1 分钟 · 238 字 · sdttttt

2022-12-11

今天主要就是加了客戶端的重連機制,也沒什麼好做的,明天打算加一下協議混淆,比較控制連接的通信包如果分析起來的話很容易就能看出來。

2022年12月11日 · 1 分钟 · 64 字 · sdttttt

2022-12-10

現在開始總算是可以鬆口氣了,今天把配置文件部分寫好了,配置文件使用的是ini格式,這個解析非常簡單。而且Rust上的庫也不少,最後選擇了tini這個庫。 https://github.com/pinecrew/tini 主要是這個庫完全咩有依賴, 草草的看了一下源碼,寫的也非常精妙,實際解析ini的邏輯也就30行。 ...

2022年12月10日 · 1 分钟 · 294 字 · sdttttt

2022-12-9

今天總算是修復了好了所有bug,所有bug都是出現在Go編寫的服務端,居然沒有Rust的比較神奇。經過昨天的痛苦測試,今天我編寫了一個echo服務器來專門測試這種網絡軟件,效果可以說是還算不錯,很快就能定位問題大概是出現在服務端還是客戶端哪裡的問題。 ...

2022年12月09日 · 2 分钟 · 641 字 · sdttttt

2022-12-8

今天算是把加密的部分寫完了,但是測試的時候問題還是很嚴重,單元測試中Rust和Go的加密結果是一致的,但是實際運行,就是無法正常使用,懷疑可能我編寫的加密管道的代碼問題,但是找了2個小時還是沒有結果,到時候在說吧… 到時候做個回聲服務器在做測試吧..

2022年12月08日 · 1 分钟 · 124 字 · sdttttt

2022-12-7

今天在客戶端編寫流加密的地方卡住了,主要是設計問題,沒有很好的方式從TcpStream裡家裡再塞回去.. 明天接著想…

2022年12月07日 · 1 分钟 · 58 字 · sdttttt

2022-12-6

寫這篇日誌的時候已經是7號1點多了,有點晚了,隨便寫一些吧,今天主要就是研究流加密的部分,這個加密還很麻煩,參數除了key之外還有一個nonce,這個還需要連接雙方互相共享一下。 明天還是寫這部分客戶端的代碼,今天把服務端的加密弄好了。但是還不知道能不能跑。客戶端也加了不少依賴,一個流加密庫,一個隨機數庫…

2022年12月06日 · 1 分钟 · 153 字 · sdttttt

2022-12-5

今天測試的時候又發現,服務端有大量沒用連接的問題,而且客戶端關閉後,服務端也沒有讀到connection中的EOF,連接一直阻塞著,還是得上長連接心跳啊,服務端還好,主要是客戶端的Rust寫起來特別頭疼. ...

2022年12月05日 · 1 分钟 · 351 字 · sdttttt

2022-12-4

今天主要寫了軟件的Dockerfile部分,rust的docker做起來感覺並不推薦,因為rust的docker基礎鏡像就要佔用大小1GB左右,所以為了編譯而特地去下載一個GB的鏡像感覺很不划算。這個事還要考慮考慮。

2022年12月04日 · 1 分钟 · 108 字 · sdttttt

2022-12-3

今天主要寫了文檔,還有服務端的Dockerfile,剩下的時間就直接擺爛了,隨便逛逛github找到了些好東西. 最大的收穫是這個 https://github.com/ouch-org/ouch 平時unix上的解壓縮命令太麻煩了,什麼tar zxvf 我都記不熟,還有zip的,這個命令能解壓各種壓縮包,這樣就免的去記各種解壓縮命令,挺好。還沒用過,有空試試。

2022年12月03日 · 1 分钟 · 143 字 · sdttttt