格力vrv空調(diào)故障代碼e6(格力vrv空調(diào)故障代碼c0)
前沿拓展:
前言
相信翻過(guò)墻的小伙伴都聽(tīng)說(shuō)過(guò) Shadowsocks 吧。我們使用Shadowsocks的時(shí)候,通常別人給的都是SS或者SSR的鏈接,這些鏈接的樣子大概長(zhǎng)這個(gè)樣子
ss://YWVzLTI1Ni1nY206a2lyaXRvQDIxMC44OS4xODEuMTY3OjkxOTE=123
ssr://aGs3LjI1Nmh0MTY4LmNvbTo1MDYzNDpvcmlnaW46YWVzLTI1Ni1jZmI6cGxhaW46TXpZeFZsQk9kR1Z6ZERFeU13Lz9vYmZzcGFyYW09JnByb3RvcGFyYW09JnJlbWFya3M9U0VzeCZncm91cD01NldlNVotZg
但是Shadowsocks MAC客戶端卻不能直接使用這些鏈接,只能手動(dòng)輸入server、port、密碼、加密方法等參數(shù),這讓我很是煩躁。
MAC OSX SSR 客戶端配置
最近開(kāi)始學(xué)習(xí)Python,了解了基本的語(yǔ)法,正想練練手呢,于是想用Python寫(xiě)一個(gè)解析SSR鏈接,so,開(kāi)始吧。
SS/SSR 鏈接分析首先我們得知道SS/SSR鏈接由什么組成和經(jīng)過(guò)怎樣的編碼變成了上述那個(gè)樣子的。
ss鏈接
在 Base64 編碼之前,ss鏈接的格式是這樣的
ss://method:password@server:port
也就是說(shuō),一般我們見(jiàn)到的鏈接就是 ss://Base64 編碼字段 ,其中 method:password@server:port 這部分被進(jìn)行了 Base64 編碼 。
那我們上面的的SS鏈接來(lái)說(shuō),我們只需要將
YWVzLTI1Ni1nY206a2lyaXRvQDIxMC44OS4xODEuMTY3OjkxOTE=123
通過(guò)Base64解碼,應(yīng)該就能得到method:password@server:port的明文形式。
所以試試用Python Base64解碼一下看看
base64.b64decode('YWVzLTI1Ni1nY206a2lyaXRvQDIxMC44OS4xODEuMTY3OjkxOTE=123')得到結(jié)果
b'aes256gcm:kirito@210.89.181.167:9191'可以看到結(jié)果和method:password@server:port形式是一樣的,只不過(guò)解碼出來(lái)的是二進(jìn)制的而已。用utf8編碼一下就能得到字符串了。
base64.b64decode('YWVzLTI1Ni1nY206a2lyaXRvQDIxMC44OS4xODEuMTY3OjkxOTE=123').decode('utf8')然后就是把method、password、server和port分別解析出來(lái)就行了。
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對(duì)應(yīng)的參數(shù)值被 base64編碼 后拼接而成的字符串。
即 params_base64 為這些字段的拼接
obfsparam=obfsparam_base64&protoparam=protoparam_base64&remarks=remarks_base64&group=group_base64
還是拿上面的SSR鏈接,用Base64解碼看一下結(jié)果
base64.b64decode('aGs3LjI1Nmh0MTY4LmNvbTo1MDYzNDpvcmlnaW46YWVzLTI1Ni1jZmI6cGxhaW46TXpZeFZsQk9kR1Z6ZERFeU13Lz9vYmZzcGFyYW09JnByb3RvcGFyYW09JnJlbWFya3M9U0VzeCZncm91cD01NldlNVotZg').decode('utf8')結(jié)果報(bào)錯(cuò)了,怎么回事,不按照套路出牌啊。不著急,先來(lái)看一下報(bào)的什么錯(cuò)
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
看不懂,但是我可以猜出來(lái),錯(cuò)誤應(yīng)該是Incorrect padding引起的,所以找Google大大問(wèn)一下怎么回事。
Google大大說(shuō)python Base64解碼的時(shí)候,輸入的編碼字符串的長(zhǎng)度必須是4的倍數(shù),如果不是4的倍數(shù)需要再字符串后面補(bǔ)上=。
soga,原來(lái)是需要補(bǔ)=啊,拿我試試在后面加幾個(gè)=試一試。在原來(lái)的字符串后加了2個(gè)=后,奇跡出現(xiàn)了
base64.b64decode('aGs3LjI1Nmh0MTY4LmNvbTo1MDYzNDpvcmlnaW46YWVzLTI1Ni1jZmI6cGxhaW46TXpZeFZsQk9kR1Z6ZERFeU13Lz9vYmZzcGFyYW09JnByb3RvcGFyYW09JnJlbWFya3M9U0VzeCZncm91cD01NldlNVotZg==').decode('utf8')結(jié)果
'hk7.256ht168.com:50634:origin:aes256cfb:plain:MzYxVlBOdGVzdDEyMw/?obfsparam=&protoparam=&remarks=SEsx&group=56We5Zf'
驚不驚喜?得到的結(jié)果和前面說(shuō)的SSR鏈接的組成是一致的。接下來(lái)就是解析每個(gè)部分了,需要注意的是,password和params部分還需要用Base64解碼一次。
http://MzYxVlBOdGVzdDEyMw/?obfsparam=&protoparam=&remarks=SEsx&group=56We5Zf'
對(duì)照前面的SSR格式,/?之前的是password部分,后面的params部分。
password解碼,注意需要在后面補(bǔ)加=
base64.b64decode('MzYxVlBOdGVzdDEyMw==').decode('utf8')結(jié)果
'361VPNtest123'
params remarks 解碼
base64.b64decode('SEsx').decode('utf8')結(jié)果
'HK1'
params group 解碼
base64.b64decode('56We5Zf').decode('utf8')這次又報(bào)錯(cuò)了,很無(wú)奈啊,怎么又報(bào)錯(cuò)了!
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
誒,這個(gè)錯(cuò)難道是讓我在后面補(bǔ)=嗎?我繼續(xù)在后面補(bǔ)=,但是這次不好使了,加了無(wú)數(shù)個(gè)=都不管用了,怎么辦?
無(wú)計(jì)可施啊,仔細(xì)觀察一下,這次解碼的字符串和原來(lái)的字符串好像有點(diǎn)不一樣,這個(gè)字符串里面有,這個(gè)明顯是個(gè)特殊字符嘛,是不是這個(gè)導(dǎo)致解碼失敗的呢?向Google大大問(wèn)一下。果然Base64還有一種URL安全的編碼,我們看看有不有URL安全的解碼方法呢?果然存在
base64.urlsafe_b64decode()我用這個(gè)方法把原來(lái)的那個(gè)解碼方法替換一下試試
base64.urlsafe_b64decode('56We5Zf').decode('utf8')果然,這次就能正確得到結(jié)果了,開(kāi)心
'神域'
到此為止,所有的問(wèn)題基本都解決了,接下來(lái)就是碼磚了。這個(gè)就不說(shuō)了。最后貼一下我的代碼。
完整代碼
運(yùn)行一下試試,結(jié)果都能解析,不錯(cuò)。
請(qǐng)輸入需要解析的ssr鏈接:
ssr://MTAzLjExNC4xNjMuMzg6NTYxMzpvcmlnaW46YWVzLTI1Ni1jZmI6cGxhaW46ZDNkM0xuZDFkM2RsWWk1amIyMC8_b2Jmc3BhcmFtPSZwcm90b3BhcmFtPSZyZW1hcmtzPVFFbFNRVTVUVTFJZ0xTQXhOMEYxWnlBdElERXdNeTR4TVRRdU1UWXpMak00Jmdyb3VwPVFFbFNRVTVUVTFJ
解析結(jié)果:
server: 103.114.163.38, port: 5613, 協(xié)議: origin, 加密方法: aes256cfb, 密碼: www.wuwweb.com, 混淆: plain, 混淆參數(shù): , 協(xié)議參數(shù): , 備注: @IRANSSR 17Aug 103.114.163.38, 分組: @IRANSSR
請(qǐng)輸入需要解析的ssr鏈接:
ssr://NTkuMTI1LjYxLjE4MDo4MDk3Om9yaWdpbjphZXMtMjU2LWNmYjpwbGFpbjpaVWxYTUVSdWF6WTVORFUwWlRadVUzZDFjM0IyT1VSdFV6SXdNWFJSTUVRLz9vYmZzcGFyYW09ZEhObE15NXRiUzVpYVc1bkxtNWxkQ3gwYzJVeUxtMXRMbUpwYm1jdWJtVjBMSFJ6WlRFdWJXMHVZbWx1Wnk1dVpYUXNZMnh2ZFdSbWNtOXVkQzVqYjIwc1kyeHZkV1JtYkdGeVpTNWpiMjBzWVdwaGVDNXRhV055YjNOdlpuUXVZMjl0TEhkM2R5NWlhVzVuTG1OdmJRJnByb3RvcGFyYW09JnJlbWFya3M9UUVsU1FVNVRVMUlnTFNBeE4wRjFaeUF0SURVNUxqRXlOUzQyTVM0eE9EQSZncm91cD1RRWxTUVU1VFUxSQ
解析結(jié)果:
server: 59.125.61.180, port: 8097, 協(xié)議: origin, 加密方法: aes256cfb, 密碼: 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
請(qǐng)輸入需要解析的ssr鏈接:
ssr://MjA3LjEyNi4xNjUuMTM4OjEyNjY2OmF1dGhfc2hhMV92NDpjaGFjaGEyMDpodHRwX3NpbXBsZTpkRXAyYzFCRC8_b2Jmc3BhcmFtPSZwcm90b3BhcmFtPSZyZW1hcmtzPVFFbFNRVTVUVTFJZ0xTQXhOMEYxWnlBdElESXdOeTR4TWpZdU1UWTFMakV6T0EmZ3JvdXA9UUVsU1FVNVRVMUk
解析結(jié)果:
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
拓展知識(shí):
- 1空調(diào)毯(什么是空調(diào)毯?有哪些使用方法?)
- 2索尼電視客服24小時(shí)電話(如何快速聯(lián)系并解決問(wèn)題)
- 3方太燃?xì)庠?4小時(shí)客服熱線(如何快速聯(lián)系并解決問(wèn)題)
- 4富新防盜門(mén)開(kāi)鎖(富新防盜門(mén)開(kāi)鎖服務(wù):保護(hù)您家庭安全的首選)
- 5沈陽(yáng)吸油煙機(jī)維修(如何找到專(zhuān)業(yè)的維修服務(wù))
- 6電視怎么顯示圖像怎么回事啊(電視顯示圖像原理揭秘)
- 7usb轉(zhuǎn)ttl壞了怎么修(USB轉(zhuǎn)TTL壞修法探究)
- 8匯川變頻器報(bào)警故障代碼大全(如何快速解決報(bào)警問(wèn)題)
- 9天然氣公司投訴電話95158(如何正確使用并有效投訴)
- 10天津有線電視客服電話96596(如何快速找到并聯(lián)系客服)。
-
臺(tái)風(fēng)“蝴蝶”明日或?qū)⒌顷懀A南大部將有大到暴雨
2025-06-12
-
寧德紅日燃?xì)庠罹S修(如何自行解決常見(jiàn)問(wèn)題)
2025-06-07
-
ws08m360ti故障(WS08M360Ti故障分析及解決辦法)
2025-06-07
-
萬(wàn)和燃?xì)庠钕ɑ鹁S修(如何自行處理常見(jiàn)故障)
2025-06-07


