統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng)及其方法
【專利摘要】本發(fā)明公開了一種統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng)及其方法,涉及互聯(lián)網(wǎng)直播平臺(tái)技術(shù)領(lǐng)域,包括服務(wù)器和客戶端。服務(wù)器存儲(chǔ)有LUA腳本,且服務(wù)器集成有執(zhí)行LUA腳本的執(zhí)行引擎,服務(wù)器將LUA腳本通過加密算法加密后發(fā)送至客戶端??蛻舳擞糜诮邮辗?wù)器發(fā)送的加密后的LUA腳本以及加密算法中的密文KEY,并對(duì)加密后的LUA腳本進(jìn)行解密,客戶端也集成有執(zhí)行LUA腳本的執(zhí)行引擎,客戶端的執(zhí)行引擎執(zhí)行解密后的LUA腳本,并將客戶端執(zhí)行結(jié)果通過加密算法加密后發(fā)送至服務(wù)器,服務(wù)器判斷是否接收到客戶端執(zhí)行結(jié)果,并對(duì)所述客戶端執(zhí)行結(jié)果進(jìn)行驗(yàn)證。本發(fā)明能增加Hack偽造登錄用戶的難度,使直播平臺(tái)統(tǒng)計(jì)的在線人數(shù)趨于真實(shí)水平。
【專利說(shuō)明】
統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng)及其方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及互聯(lián)網(wǎng)直播平臺(tái)技術(shù)領(lǐng)域,具體涉及一種統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng)及其方法。
【背景技術(shù)】
[0002]目前,直播平臺(tái)有對(duì)每個(gè)頻道的觀看觀眾進(jìn)行實(shí)時(shí)統(tǒng)計(jì),以便觀眾能夠了解同時(shí)觀看的人數(shù),同時(shí)直播平臺(tái)也會(huì)對(duì)每個(gè)頻道的觀看人數(shù)進(jìn)行排序,會(huì)把同時(shí)觀看人數(shù)多的頻道推薦到更靠前的頻道列表中,以讓更多的人來(lái)進(jìn)行觀看?,F(xiàn)有的直播平臺(tái)大多對(duì)直播協(xié)議使用明文在網(wǎng)絡(luò)傳輸,Hack攻擊者只需要分析清楚一個(gè)在線用戶與服務(wù)器的交互協(xié)議后,通過偽造同樣的協(xié)議就可以實(shí)現(xiàn)偽造用戶在線的目的,就可以對(duì)某個(gè)頻道實(shí)現(xiàn)刷人氣的功能。這種通過刷人氣引發(fā)的惡性競(jìng)爭(zhēng)對(duì)整個(gè)直播平臺(tái)帶來(lái)了惡劣影響。
【發(fā)明內(nèi)容】
[0003]針對(duì)現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明的目的在于提供一種統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),該系統(tǒng)能增加Hack偽造登錄用戶的難度,使直播平臺(tái)統(tǒng)計(jì)的在線人數(shù)趨于真實(shí)水平。
[0004]為達(dá)到以上目的,本發(fā)明采取的技術(shù)方案是:一種統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),包括服務(wù)器和客戶端,
[0005]所述服務(wù)器存儲(chǔ)有LUA腳本,且所述服務(wù)器集成有執(zhí)行LUA腳本的執(zhí)行引擎,所述服務(wù)器將所述LUA腳本通過加密算法加密后發(fā)送至所述客戶端;
[0006]所述客戶端用于接收所述服務(wù)器發(fā)送的加密后的LUA腳本以及所述加密算法中的密文KEY,并對(duì)加密后的LUA腳本進(jìn)行解密,所述客戶端也集成有執(zhí)行LUA腳本的執(zhí)行引擎,所述客戶端的執(zhí)行引擎執(zhí)行解密后的LUA腳本,并將客戶端執(zhí)行結(jié)果通過加密算法加密后發(fā)送至所述服務(wù)器,所述服務(wù)器判斷是否接收到客戶端執(zhí)行結(jié)果,并根據(jù)所述客戶端執(zhí)行結(jié)果判斷用戶是否為偽造用戶。
[0007]在上述技術(shù)方案的基礎(chǔ)上,所述服務(wù)器存儲(chǔ)有多套不同內(nèi)容的LUA腳本,所述服務(wù)器使用隨機(jī)算法隨機(jī)選擇一套LUA腳本并通過加密算法加密后發(fā)送至所述客戶端。
[0008]在上述技術(shù)方案的基礎(chǔ)上,所述LUA腳本的內(nèi)容包括計(jì)算數(shù)據(jù)的循環(huán)冗余碼校驗(yàn)值、對(duì)數(shù)據(jù)進(jìn)行加密,或執(zhí)行數(shù)學(xué)運(yùn)算并將結(jié)果上報(bào)到所述服務(wù)器。
[0009]在上述技術(shù)方案的基礎(chǔ)上,所述加密算法為AES加密算法。
[0010]在上述技術(shù)方案的基礎(chǔ)上,所述服務(wù)器的執(zhí)行引擎執(zhí)行發(fā)送至所述客戶端的LUA腳本,且所述服務(wù)器驗(yàn)證服務(wù)器執(zhí)行結(jié)果和所述客戶端執(zhí)行結(jié)果是否一致。
[0011]與此同時(shí),本發(fā)明還提供一種能過濾偽造登錄用戶的統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的方法。
[0012]為達(dá)到以上目的,本發(fā)明采取的技術(shù)方案是:一種利用上述系統(tǒng)統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的方法,該方法包括以下步驟:
[0013]S1.客戶端的軟件啟動(dòng)后,從服務(wù)器獲取加密算法使用的KEY;[〇〇14] S2.服務(wù)器將LUA腳本通過加密算法加密后發(fā)送至客戶端;
[0015]S3.客戶端接收服務(wù)器發(fā)送的加密后的LUA腳本,并利用加密算法對(duì)加密后的LUA 腳本進(jìn)行解密;
[0016]S4.客戶端的執(zhí)行引擎執(zhí)行解密后的LUA腳本,并得到客戶端執(zhí)行結(jié)果;
[0017]S5.客戶端將客戶端執(zhí)行結(jié)果通過加密算法加密后發(fā)送至服務(wù)器,服務(wù)器判斷是否接收到客戶端執(zhí)行結(jié)果,若是,執(zhí)行步驟S6,若否,則為偽造用戶,結(jié)束流程;
[0018]S6.服務(wù)器利用加密算法對(duì)客戶端執(zhí)行結(jié)果解密,同時(shí),服務(wù)器的執(zhí)行引擎執(zhí)行步驟S2中發(fā)送至客戶端的LUA腳本,并得到服務(wù)器執(zhí)行結(jié)果;[〇〇19]S7.服務(wù)器對(duì)比服務(wù)器執(zhí)行結(jié)果和服務(wù)器解密后的客戶端執(zhí)行結(jié)果是否一致,若一致,則為正常用戶,若不一致,則為偽造用戶,結(jié)束流程。
[0020]在上述技術(shù)方案的基礎(chǔ)上,所述服務(wù)器存儲(chǔ)有多套不同內(nèi)容的LUA腳本,所述服務(wù)器使用隨機(jī)算法隨機(jī)選擇一套LUA腳本并通過加密算法加密后發(fā)送至所述客戶端。[0021 ]在上述技術(shù)方案的基礎(chǔ)上,所述加密算法為AES加密算法。
[0022]與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:
[0023](1)本發(fā)明中的統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),其客戶端集成有執(zhí)行LUA腳本的執(zhí)行引擎,具有執(zhí)行LUA腳本的能力,而Hack程序只是模擬服務(wù)端和客戶端的通信協(xié)議,并不具備執(zhí)行LUA腳本的能力,從而能夠基本杜絕偽造協(xié)議來(lái)模擬用戶在線,防止了惡意刷人氣的行為。[〇〇24](2)本發(fā)明中的統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),其客戶端使用AES加密算法來(lái)保證數(shù)據(jù)在網(wǎng)絡(luò)傳輸過程中進(jìn)行加密傳輸,可以防止逆向破解和分析。【附圖說(shuō)明】
[0025]圖1為本發(fā)明中統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng)的結(jié)構(gòu)示意圖;
[0026]圖2為本發(fā)明中統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的流程圖?!揪唧w實(shí)施方式】
[0027]以下結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。
[0028]參見圖1所示,本發(fā)明提供一種統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),包括服務(wù)器和客戶端。
[0029]其中,服務(wù)器存儲(chǔ)有LUA腳本,LUA腳本作為一種中間語(yǔ)言,比較難逆向,比較難分析清楚其執(zhí)行邏輯,可以很好的起到了對(duì)數(shù)據(jù)加密及執(zhí)行邏輯加密的作用,極大的提高了破解逆向的門檻。本發(fā)明中的服務(wù)器存儲(chǔ)有多套不同內(nèi)容的LUA腳本,每個(gè)LUA腳本可以執(zhí)行不同的邏輯,LUA腳本的內(nèi)容可以是對(duì)一段數(shù)據(jù)進(jìn)行計(jì)算其HASH(循環(huán)冗余碼校驗(yàn)值)值, 可以是對(duì)某段數(shù)據(jù)進(jìn)行一個(gè)加密,也可以是執(zhí)行一段簡(jiǎn)單數(shù)學(xué)運(yùn)算,然后將結(jié)果上報(bào)到服務(wù)器,等等。LUA腳本的不同會(huì)導(dǎo)致網(wǎng)絡(luò)傳輸數(shù)據(jù)不一樣,同時(shí)可以保證客戶端發(fā)往服務(wù)器的數(shù)據(jù)不一樣,這樣就可以達(dá)到每次交互協(xié)議內(nèi)容是不一樣的,極大提高了協(xié)議分析的難度。
[0030]本發(fā)明中的服務(wù)器集成有執(zhí)行LUA腳本的執(zhí)行引擎,服務(wù)器的執(zhí)行引擎執(zhí)行LUA腳本后,得到服務(wù)器執(zhí)行結(jié)果。
[0031] 此外,服務(wù)器還將LUA腳本通過加密算法加密后發(fā)送至客戶端。本發(fā)明中的服務(wù)器采用隨機(jī)算法,隨機(jī)挑選一套LUA腳本,然后使用AES(Advanced Encrypt1n Standard)加密算法加密后發(fā)送至客戶端。服務(wù)器使用AES加密算法后,可以保證數(shù)據(jù)在網(wǎng)絡(luò)傳輸過程中進(jìn)行加密傳輸,防止逆向破解和分析。[〇〇32]當(dāng)客戶端的軟件啟動(dòng)后,其從服務(wù)器獲取需要加密協(xié)議使用的密文KEY,其中KEY 為一字符串,本發(fā)明中的KEY用于AES加密算法中。這樣可以保證每個(gè)用戶使用不同的KEY來(lái)對(duì)網(wǎng)絡(luò)傳輸數(shù)據(jù)進(jìn)行加密。此外,客戶端還用于接收服務(wù)器發(fā)送的加密后的LUA腳本,并對(duì)加密后的LUA腳本進(jìn)行解密,本發(fā)明中的客戶端采用AES加密算法來(lái)解密。
[0033]客戶端也集成有執(zhí)行LUA腳本的執(zhí)行引擎,客戶端的執(zhí)行引擎執(zhí)行LUA腳本后,得到客戶端執(zhí)行結(jié)果。
[0034]客戶端將客戶端執(zhí)行結(jié)果通過AES加密算法加密后發(fā)送至所述傳輸模塊。此時(shí),月艮務(wù)器將判斷是否接收到客戶端執(zhí)行結(jié)果,若服務(wù)器沒有接收到客戶端執(zhí)行結(jié)果,則直接可以判斷是偽造用戶,這說(shuō)明HACK沒有辦法偽造出這條協(xié)議數(shù)據(jù)。若服務(wù)器接收到客戶端執(zhí)行結(jié)果,則對(duì)客戶端執(zhí)行結(jié)果進(jìn)行驗(yàn)證,本發(fā)明采用的驗(yàn)證方法是讓服務(wù)器的執(zhí)行引擎也執(zhí)行一次發(fā)送給客戶端的LUA腳本,得到服務(wù)器執(zhí)行結(jié)果,然后服務(wù)器再對(duì)比服務(wù)器執(zhí)行結(jié)果和服務(wù)器解密后的客戶端執(zhí)行結(jié)果是否一致,若一致,則為正常用戶。若不一致,則為偽造用戶。
[0035]綜上所述,本發(fā)明中的統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),其客戶端集成有執(zhí)行LUA腳本的執(zhí)行引擎,具有執(zhí)行LUA腳本的能力,而Hack程序只是模擬服務(wù)端和客戶端的通信協(xié)議,并不具備執(zhí)行LUA腳本的能力,從而能夠基本杜絕偽造協(xié)議來(lái)模擬用戶在線,防止了惡意刷人氣的行為。此外,其客戶端使用AES加密算法來(lái)保證數(shù)據(jù)在網(wǎng)絡(luò)傳輸過程中進(jìn)行加密傳輸,可以防止逆向破解和分析。采用上述手段后,便可以統(tǒng)計(jì)出直播平臺(tái)的在線人數(shù)。
[0036]參見圖2所示,本發(fā)明還提供一種利用上述系統(tǒng)統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的方法,該方法包括以下步驟:[〇〇37] S1.客戶端的軟件啟動(dòng)后,從服務(wù)器獲取加密算法使用的KEY;[〇〇38] 本發(fā)明中的服務(wù)器采用的是AES加密算法,該KEY用于AES加密算法中,從而保證每個(gè)用戶使用不同的KEY來(lái)對(duì)網(wǎng)絡(luò)傳輸數(shù)據(jù)進(jìn)行加密。
[0039]S2.服務(wù)器將LUA腳本通過加密算法加密后發(fā)送至客戶端;
[0040]本發(fā)明中的服務(wù)器存儲(chǔ)有多套不同內(nèi)容的LUA腳本,每個(gè)LUA腳本可以執(zhí)行不同的邏輯,LUA腳本的內(nèi)容可以是對(duì)一段數(shù)據(jù)進(jìn)行計(jì)算其HASH(循環(huán)冗余碼校驗(yàn)值)值,可以是對(duì)某段數(shù)據(jù)進(jìn)行一個(gè)加密,然后將結(jié)果上報(bào)到服務(wù)器,也可以是執(zhí)行一段簡(jiǎn)單數(shù)學(xué)運(yùn)算,等等。LUA腳本的不同會(huì)導(dǎo)致網(wǎng)絡(luò)傳輸數(shù)據(jù)不一樣,同時(shí)可以保證客戶端發(fā)往服務(wù)器的數(shù)據(jù)不一樣,這樣就可以達(dá)到每次交互協(xié)議內(nèi)容是不一樣的,極大提高了協(xié)議分析的難度。[0041 ]本發(fā)明中的服務(wù)器塊采用隨機(jī)算法,隨機(jī)挑選一套LUA腳本,然后使用AES加密算法加密后發(fā)送至客戶端。服務(wù)器使用AES加密算法可以保證數(shù)據(jù)在網(wǎng)絡(luò)傳輸過程中進(jìn)行加密傳輸,防止逆向破解和分析。
[0042]S3.客戶端接收服務(wù)器發(fā)送的加密后的LUA腳本,并利用加密算法對(duì)加密后的LUA腳本進(jìn)行解密;
[0043]本發(fā)明中的客戶端采用AES加密算法來(lái)解密。
[0044]S4.客戶端的執(zhí)行引擎執(zhí)行解密后的LUA腳本,并得到客戶端執(zhí)行結(jié)果;
[0045]S5.客戶端將客戶端執(zhí)行結(jié)果通過加密算法加密后發(fā)送至服務(wù)器,服務(wù)器判斷是否接收到客戶端執(zhí)行結(jié)果,若是,執(zhí)行步驟S6,若否,則為偽造用戶,結(jié)束流程;
[0046]S6.服務(wù)器利用加密算法對(duì)客戶端執(zhí)行結(jié)果解密,同時(shí),服務(wù)器的執(zhí)行引擎執(zhí)行步驟S2中發(fā)送至客戶端的LUA腳本,并得到服務(wù)器執(zhí)行結(jié)果;
[0047]S7.服務(wù)器對(duì)比服務(wù)器執(zhí)行結(jié)果和服務(wù)器解密后的客戶端執(zhí)行結(jié)果是否一致,若一致,則為正常用戶,若不一致,則為偽造用戶,結(jié)束流程。[〇〇48]本發(fā)明不局限于上述實(shí)施方式,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也視為本發(fā)明的保護(hù)范圍之內(nèi)。本說(shuō)明書中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。
【主權(quán)項(xiàng)】
1.一種統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),包括服務(wù)器和客戶端,其特征在于: 所述服務(wù)器存儲(chǔ)有LUA腳本,且所述服務(wù)器集成有執(zhí)行LUA腳本的執(zhí)行引擎,所述服務(wù)器將所述LUA腳本通過加密算法加密后發(fā)送至所述客戶端; 所述客戶端用于接收所述服務(wù)器發(fā)送的加密后的LUA腳本以及所述加密算法中的密文KEY,并對(duì)加密后的LUA腳本進(jìn)行解密,所述客戶端也集成有執(zhí)行LUA腳本的執(zhí)行引擎,所述客戶端的執(zhí)行引擎執(zhí)行解密后的LUA腳本,并將客戶端執(zhí)行結(jié)果通過加密算法加密后發(fā)送至所述服務(wù)器,所述服務(wù)器判斷是否接收到客戶端執(zhí)行結(jié)果,并根據(jù)所述客戶端執(zhí)行結(jié)果判斷用戶是否為偽造用戶。2.如權(quán)利要求1所述的統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),其特征在于:所述服務(wù)器存儲(chǔ)有多套不同內(nèi)容的LUA腳本,所述服務(wù)器使用隨機(jī)算法隨機(jī)選擇一套LUA腳本并通過加密算法加密后發(fā)送至所述客戶端。3.如權(quán)利要求2所述的統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),其特征在于:所述LUA腳本的內(nèi)容包括計(jì)算數(shù)據(jù)的循環(huán)冗余碼校驗(yàn)值、對(duì)數(shù)據(jù)進(jìn)行加密,或執(zhí)行數(shù)學(xué)運(yùn)算并將結(jié)果上報(bào)到所述服務(wù)器。4.如權(quán)利要求1或2所述的統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),其特征在于:所述加密算法為AES加密算法。5.如權(quán)利要求1所述的統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的系統(tǒng),其特征在于:所述服務(wù)器的執(zhí)行引擎執(zhí)行發(fā)送至所述客戶端的LUA腳本,且所述服務(wù)器驗(yàn)證服務(wù)器執(zhí)行結(jié)果和所述客戶端執(zhí)行結(jié)果是否一致。6.—種利用權(quán)利要求1所述的系統(tǒng)統(tǒng)計(jì)直播平臺(tái)在線人數(shù)的方法,其特征在于,該方法包括以下步驟: 51.客戶端的軟件啟動(dòng)后,從服務(wù)器獲取加密算法使用的KEY; 52.服務(wù)器將LUA腳本通過加密算法加密后發(fā)送至客戶端; 53.客戶端接收服務(wù)器發(fā)送的加密后的LUA腳本,并利用加密算法對(duì)加密后的LUA腳本進(jìn)行解密; 54.客戶端的執(zhí)行引擎執(zhí)行解密后的LUA腳本,并得到客戶端執(zhí)行結(jié)果; 55.客戶端將客戶端執(zhí)行結(jié)果通過加密算法加密后發(fā)送至服務(wù)器,服務(wù)器判斷是否接收到客戶端執(zhí)行結(jié)果,若是,執(zhí)行步驟S6,若否,則為偽造用戶,結(jié)束流程; 56.服務(wù)器利用加密算法對(duì)客戶端執(zhí)行結(jié)果解密,同時(shí),服務(wù)器的執(zhí)行引擎執(zhí)行步驟S2中發(fā)送至客戶端的LUA腳本,并得到服務(wù)器執(zhí)行結(jié)果; 57.服務(wù)器對(duì)比服務(wù)器執(zhí)行結(jié)果和服務(wù)器解密后的客戶端執(zhí)行結(jié)果是否一致,若一致,則為正常用戶,若不一致,則為偽造用戶,結(jié)束流程。7.如權(quán)利要求6所述的方法,其特征在于:所述服務(wù)器存儲(chǔ)有多套不同內(nèi)容的LUA腳本,所述服務(wù)器使用隨機(jī)算法隨機(jī)選擇一套LUA腳本并通過加密算法加密后發(fā)送至所述客戶端。8.如權(quán)利要求6或7所述的方法,其特征在于:所述加密算法為AES加密算法。
【文檔編號(hào)】H04N21/435GK105959728SQ201610482663
【公開日】2016年9月21日
【申請(qǐng)日】2016年6月27日
【發(fā)明人】周志剛
【申請(qǐng)人】武漢斗魚網(wǎng)絡(luò)科技有限公司