格力vrv空調故障代碼e6(格力35變頻空調出現(xiàn)e6是什么故障)
前沿拓展:
前言
相信翻過墻的小伙伴都聽說過 Shadowsocks 吧。我們使用Shadowsocks的時候,通常別人給的都是SS或者SSR的鏈接,這些鏈接的樣子大概長這個樣子
ss://YWVzLTI1Ni1nY206a2lyaXRvQDIxMC44OS4xODEuMTY3OjkxOTE=#123
ssr://aGs3LjI1Nmh0MTY4LmNvbTo1MDYzNDpvcmlnaW46YWVzLTI1Ni1jZmI6cGxhaW46TXpZeFZsQk9kR1Z6ZERFeU13Lz9vYmZzcGFyYW09JnByb3RvcGFyYW09JnJlbWFya3M9U0VzeCZncm91cD01NldlNVotZg
但是Shadowsocks MAC客戶端卻不能直接使用這些鏈接,只能手動輸入server、port、密碼、加密方法等參數(shù),這讓我很是煩躁。
MAC OSX SSR 客戶端配置
最近開始學習Python,了解了基本的語法,正想練練手呢,于是想用Python寫一個解析SSR鏈接,so,開始吧。
SS/SSR 鏈接分析首先我們得知道SS/SSR鏈接由什么組成和經(jīng)過怎樣的編碼變成了上述那個樣子的。
ss鏈接
在 Base64 編碼之前,ss鏈接的格式是這樣的
ss://method:password@server:port
也就是說,一般我們見到的鏈接就是 ss://Base64 編碼字段 ,其中 method:password@server:port 這部分被進行了 Base64 編碼 。
那我們上面的的SS鏈接來說,我們只需要將
YWVzLTI1Ni1nY206a2lyaXRvQDIxMC44OS4xODEuMTY3OjkxOTE=#123
通過Base64解碼,應該就能得到method:password@server:port的明文形式。
所以試試用Python Base64解碼一下看看
base64.b64decode('YWVzLTI1Ni1nY206a2lyaXRvQDIxMC44OS4xODEuMTY3OjkxOTE=#123')得到結果
b'aes-256-gcm:kirito@210.89.181.167:9191'可以看到結果和method:password@server:port形式是一樣的,只不過解碼出來的是二進制的而已。用utf-8編碼一下就能得到字符串了。
base64.b64decode('YWVzLTI1Ni1nY206a2lyaXRvQDIxMC44OS4xODEuMTY3OjkxOTE=#123').decode('utf-8')然后就是把method、password、server和port分別解析出來就行了。
SSR鏈接
在 Base64 編碼之前,ssr 鏈接的格式是這樣的
ssr://server:port:protocol:method:obfs:password_base64/?params_base64
上面的鏈接的不同之處在于 password_base64 和 params_base64 ,顧名思義,password_base64 就是密碼被 base64編碼 后的字符串,而 params_base64 則是協(xié)議參數(shù)、混淆參數(shù)、備注及Group對應的參數(shù)值被 base64編碼 后拼接而成的字符串。
即 params_base64 為這些字段的拼接
obfsparam=obfsparam_base64&protoparam=protoparam_base64&remarks=remarks_base64&group=group_base64
還是拿上面的SSR鏈接,用Base64解碼看一下結果
base64.b64decode('aGs3LjI1Nmh0MTY4LmNvbTo1MDYzNDpvcmlnaW46YWVzLTI1Ni1jZmI6cGxhaW46TXpZeFZsQk9kR1Z6ZERFeU13Lz9vYmZzcGFyYW09JnByb3RvcGFyYW09JnJlbWFya3M9U0VzeCZncm91cD01NldlNVotZg').decode('utf-8')結果報錯了,怎么回事,不按照套路出牌啊。不著急,先來看一下報的什么錯
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/base64.py", line 87, in b64decode
binascii.Error: Incorrect padding
看不懂,但是我可以猜出來,錯誤應該是Incorrect padding引起的,所以找Google大大問一下怎么回事。
Google大大說python Base64解碼的時候,輸入的編碼字符串的長度必須是4的倍數(shù),如果不是4的倍數(shù)需要再字符串后面補上=。
soga,原來是需要補=啊,拿我試試在后面加幾個=試一試。在原來的字符串后加了2個=后,奇跡出現(xiàn)了
base64.b64decode('aGs3LjI1Nmh0MTY4LmNvbTo1MDYzNDpvcmlnaW46YWVzLTI1Ni1jZmI6cGxhaW46TXpZeFZsQk9kR1Z6ZERFeU13Lz9vYmZzcGFyYW09JnByb3RvcGFyYW09JnJlbWFya3M9U0VzeCZncm91cD01NldlNVotZg==').decode('utf-8')結果
'hk7.256ht168.com:50634:origin:aes-256-cfb:plain:MzYxVlBOdGVzdDEyMw/?obfsparam=&protoparam=&remarks=SEsx&group=56We5Z-f'
驚不驚喜?得到的結果和前面說的SSR鏈接的組成是一致的。接下來就是解析每個部分了,需要注意的是,password和params部分還需要用Base64解碼一次。
http://MzYxVlBOdGVzdDEyMw/?obfsparam=&protoparam=&remarks=SEsx&group=56We5Z-f'
對照前面的SSR格式,/?之前的是password部分,后面的params部分。
password解碼,注意需要在后面補加=
base64.b64decode('MzYxVlBOdGVzdDEyMw==').decode('utf-8')結果
'361VPNtest123'
params remarks 解碼
base64.b64decode('SEsx').decode('utf-8')結果
'HK1'
params group 解碼
base64.b64decode('56We5Z-f').decode('utf-8')這次又報錯了,很無奈啊,怎么又報錯了!
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/base64.py", line 87, in b64decode
return binascii.a2b_base64(s)
binascii.Error: Incorrect padding
誒,這個錯難道是讓我在后面補=嗎?我繼續(xù)在后面補=,但是這次不好使了,加了無數(shù)個=都不管用了,怎么辦?
無計可施啊,仔細觀察一下,這次解碼的字符串和原來的字符串好像有點不一樣,這個字符串里面有-,這個明顯是個特殊字符嘛,是不是這個-導致解碼失敗的呢?向Google大大問一下。果然Base64還有一種URL安全的編碼,我們看看有不有URL安全的解碼方法呢?果然存在
base64.urlsafe_b64decode()我用這個方法把原來的那個解碼方法替換一下試試
base64.urlsafe_b64decode('56We5Z-f').decode('utf-8')果然,這次就能正確得到結果了,開心
'神域'
到此為止,所有的問題基本都解決了,接下來就是碼磚了。這個就不說了。最后貼一下我的代碼。
完整代碼
運行一下試試,結果都能解析,不錯。
請輸入需要解析的ssr鏈接:
ssr://MTAzLjExNC4xNjMuMzg6NTYxMzpvcmlnaW46YWVzLTI1Ni1jZmI6cGxhaW46ZDNkM0xuZDFkM2RsWWk1amIyMC8_b2Jmc3BhcmFtPSZwcm90b3BhcmFtPSZyZW1hcmtzPVFFbFNRVTVUVTFJZ0xTQXhOMEYxWnlBdElERXdNeTR4TVRRdU1UWXpMak00Jmdyb3VwPVFFbFNRVTVUVTFJ
解析結果:
server: 103.114.163.38, port: 5613, 協(xié)議: origin, 加密方法: aes-256-cfb, 密碼: www.wuwweb.com, 混淆: plain, 混淆參數(shù): , 協(xié)議參數(shù): , 備注: @IRANSSR - 17Aug - 103.114.163.38, 分組: @IRANSSR
請輸入需要解析的ssr鏈接:
ssr://NTkuMTI1LjYxLjE4MDo4MDk3Om9yaWdpbjphZXMtMjU2LWNmYjpwbGFpbjpaVWxYTUVSdWF6WTVORFUwWlRadVUzZDFjM0IyT1VSdFV6SXdNWFJSTUVRLz9vYmZzcGFyYW09ZEhObE15NXRiUzVpYVc1bkxtNWxkQ3gwYzJVeUxtMXRMbUpwYm1jdWJtVjBMSFJ6WlRFdWJXMHVZbWx1Wnk1dVpYUXNZMnh2ZFdSbWNtOXVkQzVqYjIwc1kyeHZkV1JtYkdGeVpTNWpiMjBzWVdwaGVDNXRhV055YjNOdlpuUXVZMjl0TEhkM2R5NWlhVzVuTG1OdmJRJnByb3RvcGFyYW09JnJlbWFya3M9UUVsU1FVNVRVMUlnTFNBeE4wRjFaeUF0SURVNUxqRXlOUzQyTVM0eE9EQSZncm91cD1RRWxTUVU1VFUxSQ
解析結果:
server: 59.125.61.180, port: 8097, 協(xié)議: origin, 加密方法: aes-256-cfb, 密碼: eIW0Dnk69454e6nSwuspv9DmS201tQ0D, 混淆: plain, 混淆參數(shù): tse3.mm.bing.net,tse2.mm.bing.net,tse1.mm.bing.net,cloudfront.com,cloudflare.com,ajax.microsoft.com,www.bing.com, 協(xié)議參數(shù): tse3.mm.bing.net,tse2.mm.bing.net,tse1.mm.bing.net,cloudfront.com,cloudflare.com,ajax.microsoft.com,www.bing.com, 備注: @IRANSSR - 17Aug - 59.125.61.180, 分組: @IRANSSR
請輸入需要解析的ssr鏈接:
ssr://MjA3LjEyNi4xNjUuMTM4OjEyNjY2OmF1dGhfc2hhMV92NDpjaGFjaGEyMDpodHRwX3NpbXBsZTpkRXAyYzFCRC8_b2Jmc3BhcmFtPSZwcm90b3BhcmFtPSZyZW1hcmtzPVFFbFNRVTVUVTFJZ0xTQXhOMEYxWnlBdElESXdOeTR4TWpZdU1UWTFMakV6T0EmZ3JvdXA9UUVsU1FVNVRVMUk
解析結果:
server: 207.126.165.138, port: 12666, 協(xié)議: auth_sha1_v4, 加密方法: chacha20, 密碼: tJvsPC, 混淆: http_simple, 混淆參數(shù): , 協(xié)議參數(shù): , 備注: @IRANSSR - 17Aug - 207.126.165.138, 分組: @IRANSSR
拓展知識:
- 格力中央空調故障LL(如何自行檢修)09-09
-
朗吉空調售后服務(朗吉空調售后服務:如何確保您的空調系統(tǒng)得到最佳維護和
2024-08-27
-
AKL空調清洗服務電話(如何獲取AKL空調清洗服務的聯(lián)系電話?)
2024-08-27
-
全國首部!上海對中小學校外實踐教育立法,將建“場所資源庫”
2024-08-27
-
GRAD空調售后電話(如何獲取GRAD空調售后服務的聯(lián)系電話?)
2024-08-27
-
HSTARS空調移機(如何正確進行HSTARS空調移機操作?)
2024-08-27