1、微信賬戶信息。
這里提到的微信內(nèi)部賬戶(UIN)有三種可能的結(jié)構(gòu):9位、10位、負(fù)1位和10位補(bǔ)丁。
UIN記錄在/data/data文件夾下的若干文件內(nèi),包括com.、a等。
例如:在文件里的
<int name="default_uin" value="2333333333" />
au文件里的
<int name="_auth_uin" value="2333333333" />
網(wǎng)上盛傳的chrome://net-internals/#events抓包法也能得到UIN,通常與上述UIN相同,但只有兩種可能的結(jié)構(gòu):9位數(shù)、10位數(shù)。如果10位數(shù)溢出了32位整型空間,就相當(dāng)于“1個(gè)負(fù)號(hào)拼接10位數(shù)”的情況。
例如:數(shù)據(jù)包的UIN是233333333,實(shí)際的UIN是-1961633963(即233333333減去4294967296)。
接下來,如前文所述,“mm”直接拼接UIN ,算出MD5值后得到該賬號(hào)的文件夾名稱。例如:UIN是-1961633963時(shí),MD5(mm-1961633963) = b883740d5f568c04e488befca16eed50。
2、微信語音文件夾的命名規(guī)則
前文已經(jīng)介紹過了,微信的語音文件存儲(chǔ)在“voice2”下的兩層目錄下,而這兩層的目錄名稱非常奇怪,都是兩位字符,如“voice\3d\27\……”,name," voice2”文件夾之下的二級(jí)目錄名是如何選擇的呢?
以這里的“ m ”文件為例,只要把“msg_”去掉,對(duì)基本名稱的剩余部分( 480948061918919ac9300d9102 )計(jì)算MD5值,得到 3d 27 8f649bece4ff979a26db4e50d147,取第1-2位為第一層目錄名,第3-4位為第二層目錄名,這個(gè)文件就在 /voice2/3d/27/ 文件夾下。
3、微信語音文件的命名規(guī)則
前文留下了一個(gè)思考題,這里的發(fā)送者標(biāo)識(shí)“ 919ac93 ”是什么含義呢?
首先要明確,微信號(hào)包括缺省微信號(hào)和自定義微信號(hào)。缺省微信號(hào)通常以“wxid_”(個(gè)人號(hào))或“gh_”(公眾號(hào))開頭,就像身份證號(hào)一樣。
當(dāng)用戶自行選擇自定義微信號(hào)后,缺省微信號(hào) 不被刪除或覆蓋 。而發(fā)送者標(biāo)識(shí)就是 缺省微信號(hào)的MD5值的前7位 , 即使修改自定義微信號(hào)后也不變化 。
另外再說一句,保存頭像時(shí),得到的圖片文件名稱也由缺省微信號(hào)的MD5值構(gòu)成。 例如:大家可以關(guān)注一下“新聞哥”這個(gè)訂閱號(hào)做個(gè)實(shí)驗(yàn)。(非推薦行為)
那么,應(yīng)該對(duì)gh_faa35168f414計(jì)算MD5值,其頭像圖片將被保存為 ,并且其發(fā)送者標(biāo)識(shí)是“ aaf7752 ”,即:缺省微信號(hào)的md5值,取前面七位。
4、待解決的新問題
1、發(fā)送者標(biāo)識(shí)為什么只取7位呢?
筆者猜測是為了壓縮文件名、節(jié)省數(shù)據(jù)空間。容易想到,這樣做可能導(dǎo)致哈希沖突。對(duì)于最常見的缺省微信號(hào)格式(wxid_14位小寫字母和數(shù)字),理論上有36^14種可能(6.14094E+21),而7位哈希只有16^7種可能(2.68435E+8)。
當(dāng)然在操作中,可以在生成wxid時(shí)就丟棄沖突的wxid,直到微信用戶數(shù)接近2.7億。然而,馬化騰在今年全國人大“代表通道”上透露,微信全球月使用活躍用戶數(shù)在春節(jié)突破十億大關(guān)。那么,怎樣判別用戶的唯一性?
2、語音文件名稱里的發(fā)送時(shí)間由手機(jī)時(shí)間決定,不依賴于服務(wù)器的標(biāo)準(zhǔn)時(shí)間。
那么,怎樣確定時(shí)間的正確性?
1.《【2333333333是什么意思】專題「微信帳號(hào)&語音文件」結(jié)構(gòu)分析》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識(shí),僅代表作者本人觀點(diǎn),與本網(wǎng)站無關(guān),侵刪請(qǐng)聯(lián)系頁腳下方聯(lián)系方式。
2.《【2333333333是什么意思】專題「微信帳號(hào)&語音文件」結(jié)構(gòu)分析》僅供讀者參考,本網(wǎng)站未對(duì)該內(nèi)容進(jìn)行證實(shí),對(duì)其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。
3.文章轉(zhuǎn)載時(shí)請(qǐng)保留本站內(nèi)容來源地址,http://f99ss.com/gl/2248125.html