本發(fā)明涉及信息安全領(lǐng)域,尤其涉及路由器系統(tǒng)防盜啟動(dòng)方法及裝置、路由器。
背景技術(shù):
目前市場(chǎng)上,山寨的路由器已經(jīng)不是稀罕產(chǎn)物,成批“物美價(jià)廉”的路由器大量涌現(xiàn),看似如火如荼的網(wǎng)絡(luò)設(shè)備市場(chǎng)實(shí)際上則暗潮洶涌。山寨路由器雖然在價(jià)格上可能比傳統(tǒng)設(shè)備低出數(shù)倍,在性能方面也許也看似相似,但是其帶來(lái)的危害遠(yuǎn)比想象的要大得多。一般山寨路由器采用較差的用料,并采用更強(qiáng)的發(fā)射方式來(lái)廣播以彌補(bǔ)所失去的信號(hào)強(qiáng)度,產(chǎn)生的輻射更大,對(duì)人身體造成傷害。其次,山寨的路由器往往沒(méi)有更好的管理系統(tǒng),某些山寨的管理系統(tǒng)反應(yīng)遲鈍,經(jīng)常會(huì)出現(xiàn)假死現(xiàn)象,不僅拖慢整個(gè)網(wǎng)絡(luò)速度,還容易經(jīng)常性的掉線,再次,路由器是家中網(wǎng)絡(luò)的必經(jīng)之地,如果存在某些不知名的系統(tǒng)bug,不單是黑客,也即使是一個(gè)普通人就能莫名其妙的將銀行賬號(hào)、支付寶密碼、甚至是ADSL密碼給透露出去,這致使網(wǎng)絡(luò)安全存在較大的隱患。
杜絕山寨路由器除了從消除其市場(chǎng)銷售途徑著手,還應(yīng)從根源上保護(hù)正版路由器,防止其硬件或軟件被不法分子盜取,借機(jī)生產(chǎn)廉價(jià)的山寨路由器危害用戶人身及財(cái)產(chǎn)安全。
路由器一般是由軟件與硬件兩部分構(gòu)成。而山寨一款路由器總體上有兩種方法:1、購(gòu)買競(jìng)爭(zhēng)對(duì)手的硬件,換掉自己開(kāi)發(fā)的軟件;2、抄襲競(jìng)爭(zhēng)對(duì)手的硬件,盜用競(jìng)爭(zhēng)對(duì)手的軟件。對(duì)于第二種方法,對(duì)抄襲者更容易操作,帶來(lái)的利潤(rùn)更大。容易操作是因?yàn)?,只需要將?jìng)品設(shè)備的flash中的鏡像讀取出來(lái),復(fù)制到新的設(shè)備中。所有的操作在生產(chǎn)工廠中就可以完成,無(wú)需研發(fā)投入。因此,防止抄襲者抄襲正版路由器的軟件是至關(guān)重要的問(wèn)題。
針對(duì)防盜版技術(shù)的具體實(shí)現(xiàn)細(xì)節(jié),可以使用純硬件方式、純軟件方式或軟硬件結(jié)合的方式,純硬件方式成本相對(duì)比較高,但靈活性差,破譯相對(duì)難一些;純軟件方式幾乎不需要增加任何成本,靈活性好,但破譯比較容易;軟硬件結(jié)合方式是前兩種方式的結(jié)合,具有較好的靈括性,破譯難度隨軟件的復(fù)雜程度而變。
技術(shù)實(shí)現(xiàn)要素:
為解決上述技術(shù)問(wèn)題,本發(fā)明提供一種路由器系統(tǒng)防盜啟動(dòng)方法及裝置以及路由器,能夠?qū)崿F(xiàn)安全路由器的安全啟動(dòng),防止路由器軟件被盜。
本發(fā)明提供的技術(shù)方案如下:
本發(fā)明公開(kāi)了一種路由器系統(tǒng)防盜啟動(dòng)方法,包括步驟:S10:當(dāng)內(nèi)核初始化時(shí),按照選定編號(hào)讀取當(dāng)前路由器硬件的至少一個(gè)通用輸入輸出引腳的狀態(tài)值;S20:將讀取的所述通用輸入輸出引腳的狀態(tài)值生成檢測(cè)狀態(tài)值,并與預(yù)先設(shè)置的預(yù)設(shè)狀態(tài)值進(jìn)行比較;S30:若所述檢測(cè)狀態(tài)值與預(yù)設(shè)狀態(tài)值相同,則判斷當(dāng)前路由器硬件為合法,正常啟動(dòng)路由器系統(tǒng);S40:若所述檢測(cè)狀態(tài)值與預(yù)設(shè)狀態(tài)值不相同,則判斷當(dāng)前路由器硬件為非法,重新啟動(dòng)路由器系統(tǒng)。
本發(fā)明在路由器軟件程序中增加檢測(cè)功能,通過(guò)對(duì)路由器硬件的通用輸入輸出引腳的狀態(tài)值的檢測(cè)來(lái)實(shí)現(xiàn)路由器系統(tǒng)的安全啟動(dòng),當(dāng)檢測(cè)路由器硬件為非法硬件時(shí),則無(wú)法正常啟動(dòng)系統(tǒng)。本發(fā)明通過(guò)上述軟硬件結(jié)合的防盜方式實(shí)現(xiàn)了路由器軟件的保護(hù)防盜,無(wú)需專門配置硬件來(lái)進(jìn)行加密保護(hù),節(jié)約了成本,同時(shí)破譯難度可隨軟件的復(fù)雜程度而變,不僅提高了軟件被盜破譯難度,同時(shí)也具有較好的靈活性。
進(jìn)一步優(yōu)選的,所述步驟S10之前還包括步驟:S00:按照所述選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,按照固定規(guī)則對(duì)所有選定的通用輸入輸出引腳進(jìn)行設(shè)置,生成所述預(yù)設(shè)狀態(tài)值,并將所述預(yù)設(shè)狀態(tài)值固化在路由器軟件程序中。
本發(fā)明通過(guò)對(duì)路由器硬件中固定的硬件特征作為密語(yǔ),只需要對(duì)現(xiàn)有的硬件中一組功能上未使用到的通用輸入輸出引腳進(jìn)行設(shè)置即可識(shí)別合法路由器硬件,無(wú)需增加其他設(shè)備,簡(jiǎn)便靈活,降低升本。
進(jìn)一步優(yōu)選的,所述步驟S00進(jìn)一步包括步驟:S01:按選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,并設(shè)置選定的通用輸入輸出引腳為輸入模式;S02:按照固定規(guī)則對(duì)所述選定的通用輸入輸出引腳輸入高電平或低電平;S03:獲得所有選定的通用輸入輸出引腳的電平值,根據(jù)所述電平值生成所述通用輸入輸出引腳的預(yù)設(shè)狀態(tài)值并存儲(chǔ)。
本發(fā)明預(yù)先通過(guò)路由器軟件對(duì)路由器硬件的通用輸入輸出引腳進(jìn)行設(shè)置,將通用輸入輸出引腳設(shè)置為與芯片廠商設(shè)置不同的電平值,用于在路由器系統(tǒng)啟動(dòng)時(shí)參與硬件通用輸入輸出引腳狀態(tài)值檢測(cè),為判斷路由器硬件是否合法提供數(shù)據(jù)支持。
進(jìn)一步優(yōu)選的,所述步驟S10之前還包括步驟:S05:按照所述選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,按照固定規(guī)則對(duì)所有選定的通用輸入輸出引腳進(jìn)行設(shè)置,記錄下所述通用輸入輸出引腳的狀態(tài)值,并根據(jù)所述狀態(tài)值在軟件內(nèi)匹配設(shè)置對(duì)應(yīng)的所述預(yù)設(shè)狀態(tài)值。
本發(fā)明還公開(kāi)了一種路由器系統(tǒng)防盜啟動(dòng)裝置,包括:讀取模塊,用于當(dāng)內(nèi)核初始化時(shí),按照選定編號(hào)讀取當(dāng)前路由器硬件的至少一個(gè)通用輸入輸出引腳的狀態(tài)值;檢測(cè)狀態(tài)值生成模塊,用于將讀取的所述通用輸入輸出引腳的狀態(tài)值生成檢測(cè)狀態(tài)值;比較模塊,用于將所述檢測(cè)狀態(tài)值生成模塊生成的所述檢測(cè)狀態(tài)值與預(yù)先設(shè)置的預(yù)設(shè)狀態(tài)值進(jìn)行比較;執(zhí)行模塊,用于當(dāng)所述比較模塊比較所述檢測(cè)狀態(tài)值與所述預(yù)設(shè)狀態(tài)值相同時(shí),正常啟動(dòng)路由器系統(tǒng);以及還用于當(dāng)所述比較模塊比較比較所述檢測(cè)狀態(tài)值與所述預(yù)設(shè)狀態(tài)值不相同時(shí),重新啟動(dòng)路由器系統(tǒng)。
進(jìn)一步優(yōu)選的,還包括:軟件設(shè)置模塊,用于按照所述選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,并按照固定規(guī)則對(duì)所有選定的通用輸入輸出引腳進(jìn)行設(shè)置,生成所述預(yù)設(shè)狀態(tài)值,并將所述預(yù)設(shè)狀態(tài)值固化在路由器軟件程序中。
進(jìn)一步優(yōu)選的,所述設(shè)置模塊進(jìn)一步包括:模式設(shè)置模塊,用于按照按選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,并設(shè)置選定的通用輸入輸出引腳為輸入模式;電平輸入模塊,用于按照固定規(guī)則對(duì)所述選定的通用輸入輸出引腳輸入高電平或低電平;預(yù)設(shè)狀態(tài)值生成模塊,用于根據(jù)獲得所有選定的通用輸入輸出引腳的電平值生成所述通用輸入輸出引腳的預(yù)設(shè)狀態(tài)值;存儲(chǔ)模塊,用于存儲(chǔ)所述通用輸入輸出引腳的預(yù)設(shè)狀態(tài)值。
進(jìn)一步優(yōu)選的,還包括:硬件設(shè)置模塊,用于按照所述選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,按照固定規(guī)則對(duì)所有選定的通用輸入輸出引腳進(jìn)行設(shè)置,記錄下所述通用輸入輸出引腳的狀態(tài)值;預(yù)設(shè)狀態(tài)值設(shè)置模塊,用于根據(jù)所述狀態(tài)值在路由器軟件內(nèi)匹配設(shè)置對(duì)應(yīng)的所述預(yù)設(shè)狀態(tài)值。
本發(fā)明還公開(kāi)一種路由器,使用上述路由器系統(tǒng)防盜啟動(dòng)方法進(jìn)行啟動(dòng)。
與現(xiàn)有技術(shù)相比,本發(fā)明在路由器軟件程序中增加檢測(cè)功能,通過(guò)對(duì)路由器硬件的通用輸入輸出引腳的狀態(tài)值的檢測(cè)來(lái)實(shí)現(xiàn)路由器系統(tǒng)的安全啟動(dòng),當(dāng)檢測(cè)路由器硬件為非法硬件時(shí),則無(wú)法正常啟動(dòng)系統(tǒng)。本發(fā)明通過(guò)上述軟硬件結(jié)合的防盜方式實(shí)現(xiàn)了路由器軟件的保護(hù)防盜,無(wú)需專門配置硬件來(lái)進(jìn)行加密保護(hù),節(jié)約了成本,同時(shí)破譯難度可隨軟件的復(fù)雜程度而變,不僅提高了軟件被盜破譯難度,同時(shí)也具有較好的靈活性。
附圖說(shuō)明
下面將以明確易懂的方式,結(jié)合附圖說(shuō)明優(yōu)選實(shí)施方式,對(duì)本發(fā)明予以進(jìn)一步說(shuō)明。
圖1為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)方法的主要步驟示意圖;
圖2為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)方法的一個(gè)具體實(shí)施例的主要步驟示意圖;
圖3為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)方法的一個(gè)具體實(shí)施例的完整步驟示意圖;
圖4為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)方法的另一個(gè)具體實(shí)施例的步驟示意圖;
圖5為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)裝置的主要組成示意圖;
圖6為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)裝置的一個(gè)具體實(shí)施例的完整組成示意圖;
圖7為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)裝置的另一個(gè)具體實(shí)施例的主要組成示意圖。
附圖標(biāo)號(hào)說(shuō)明:
100、讀取模塊,200、檢測(cè)狀態(tài)值生成模塊,300、比較模塊,400、執(zhí)行模塊,500、軟件設(shè)置模塊,501、模式設(shè)置模塊,502、電平輸入模塊,503、預(yù)設(shè)狀態(tài)值生成模塊,504、存儲(chǔ)模塊,601、硬件設(shè)置模塊,602、預(yù)設(shè)狀態(tài)值設(shè)置模塊。
具體實(shí)施方式
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)照附圖說(shuō)明本發(fā)明的具體實(shí)施方式。顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖,并獲得其他的實(shí)施方式。
為使圖面簡(jiǎn)潔,各圖中只示意性地表示出了與本發(fā)明相關(guān)的部分,它們并不代表其作為產(chǎn)品的實(shí)際結(jié)構(gòu)。另外,以使圖面簡(jiǎn)潔便于理解,在有些圖中具有相同結(jié)構(gòu)或功能的部件,僅示意性地繪示了其中的一個(gè),或僅標(biāo)出了其中的一個(gè)。在本文中,“一個(gè)”不僅表示“僅此一個(gè)”,也可以表示“多于一個(gè)”的情形。
圖1為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)方法的主要步驟示意圖,作為本發(fā)明的一個(gè)具體實(shí)施例,如圖1所示,一種路由器系統(tǒng)防盜啟動(dòng)方法,包括步驟:S10:當(dāng)內(nèi)核初始化時(shí),按照選定編號(hào)讀取當(dāng)前路由器硬件的至少一個(gè)通用輸入輸出引腳的狀態(tài)值;S20:將讀取的所述通用輸入輸出引腳的狀態(tài)值生成檢測(cè)狀態(tài)值,并與預(yù)先設(shè)置的預(yù)設(shè)狀態(tài)值進(jìn)行比較;S30:若所述檢測(cè)狀態(tài)值與預(yù)設(shè)狀態(tài)值相同,則判斷當(dāng)前路由器硬件為合法,正常啟動(dòng)路由器系統(tǒng);S40:若所述檢測(cè)狀態(tài)值與預(yù)設(shè)狀態(tài)值不相同,則判斷當(dāng)前路由器硬件為非法,重新啟動(dòng)路由器系統(tǒng)。
具體的,本實(shí)施例中通用輸入輸出引腳選定為4個(gè),通過(guò)讀取4個(gè)通用輸入輸出引腳的狀態(tài)值生成檢測(cè)狀態(tài)值,與預(yù)先設(shè)置的預(yù)設(shè)狀態(tài)值進(jìn)行比較。具體的通用輸入輸出引腳的個(gè)數(shù)本發(fā)明不作具體限定,可根據(jù)實(shí)際使用情況自行設(shè)置。
優(yōu)選的,所述步驟S10“按照選定編號(hào)讀取當(dāng)前路由器硬件的至少一個(gè)通用輸入輸出引腳的狀態(tài)值”具體包括:按照所述選定編號(hào)依次調(diào)用函數(shù)get_通用輸入輸出引腳_value(unsigned int通用輸入輸出引腳Num),其中,通用輸入輸出引腳Num為選定編號(hào)。
具體的,內(nèi)核讀取通用輸入輸出引腳值的方法:get_通用輸入輸出引腳_value(unsigned int通用輸入輸出引腳Num),其中通用輸入輸出引腳Num為需要讀取的通用輸入輸出引腳的編號(hào),函數(shù)返回值為0或1,0表示該通用輸入輸出引腳被下拉,1表示該通用輸入輸出引腳被上拉。
當(dāng)讀取的通用輸入輸出引腳狀態(tài)值生成的檢測(cè)狀態(tài)值與預(yù)先設(shè)定的預(yù)設(shè)狀態(tài)值相同,則說(shuō)明該路由器硬件為自己公司的硬件,路由器系統(tǒng)就正常啟動(dòng);如果不同,表示該硬件不是自己公司的硬件,路由器內(nèi)核直接重啟整個(gè)系統(tǒng)。
本發(fā)明在路由器軟件程序中增加檢測(cè)功能,通過(guò)對(duì)路由器硬件的通用輸入輸出引腳的狀態(tài)值的檢測(cè)來(lái)實(shí)現(xiàn)路由器系統(tǒng)的安全啟動(dòng),當(dāng)檢測(cè)路由器硬件為非法硬件時(shí),則無(wú)法正常啟動(dòng)系統(tǒng)。本發(fā)明通過(guò)上述軟硬件結(jié)合的防盜方式實(shí)現(xiàn)了路由器軟件的保護(hù)防盜,無(wú)需專門配置硬件來(lái)進(jìn)行加密保護(hù),節(jié)約了成本,同時(shí)破譯難度可隨軟件的復(fù)雜程度而變,不僅提高了軟件被盜破譯難度,同時(shí)也具有較好的靈活性。
需要說(shuō)明的是,本發(fā)明不僅使用于路由器系統(tǒng),還可用于任意包含通用輸入輸出引腳的需要保護(hù)軟件的網(wǎng)絡(luò)設(shè)備。
圖2為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)方法的一個(gè)具體實(shí)施例的主要步驟示意圖,優(yōu)選的,如圖2所示,所述步驟S10之前還包括步驟:S00:按照所述選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,按照固定規(guī)則對(duì)所有選定的通用輸入輸出引腳進(jìn)行設(shè)置,生成所述預(yù)設(shè)狀態(tài)值,并將所述預(yù)設(shè)狀態(tài)值固化在路由器軟件程序中。
本發(fā)明通過(guò)軟件方式對(duì)路由器硬件中固定的硬件特征進(jìn)行設(shè)置,將硬件特征作為密語(yǔ),只需要對(duì)現(xiàn)有的硬件中一組功能上未使用到的通用輸入輸出引腳進(jìn)行設(shè)置,生成預(yù)設(shè)狀態(tài)值,并固化在路由器軟件中,即可識(shí)別合法路由器硬件,無(wú)需增加其他設(shè)備,簡(jiǎn)便靈活,降低升本。
圖3為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)方法的一個(gè)具體實(shí)施例的完整步驟示意圖,優(yōu)選的,如圖3所示,所述步驟S00進(jìn)一步包括步驟:S01:按選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,并設(shè)置選定的通用輸入輸出引腳為輸入模式;S02:按照固定規(guī)則對(duì)所述選定的通用輸入輸出引腳輸入高電平或低電平;S03:獲得所有選定的通用輸入輸出引腳的電平值,根據(jù)所述電平值生成所述通用輸入輸出引腳的預(yù)設(shè)狀態(tài)值并存儲(chǔ)。
優(yōu)選的,所述步驟S01“設(shè)置選定的通用輸入輸出引腳為輸入模式”具體包括:按照所述選定編號(hào)依次調(diào)用函數(shù):通用輸入輸出引腳_request(unsigned int通用輸入輸出引腳Num,char*desc);通用輸入輸出引腳_direction_input(unsigned int通用輸入輸出引腳Num);其中通用輸入輸出引腳Num為選定編號(hào)。
具體的,內(nèi)核配置通用輸入輸出引腳為input模式的方法:
通用輸入輸出引腳_request(unsigned int通用輸入輸出引腳Num,char*desc);
通用輸入輸出引腳_direction_input(unsigned int通用輸入輸出引腳Num);
其中通用輸入輸出引腳Num為需要設(shè)定的通用輸入輸出引腳的編號(hào),desc為描述字符串,可以為任意值。
具體的,本發(fā)明在硬件設(shè)計(jì)上將一組功能上未使用到的通用輸入輸出引腳,推薦4個(gè)(也可自行設(shè)置),設(shè)置成input模式即輸入模式。軟件上電后,按照固定規(guī)則進(jìn)行上拉與下拉,其中,上拉是指給該通用輸入輸出引腳輸入高電平;下拉是指給該通用輸入輸出引腳輸入低電平,一般指接地,比如:第一個(gè)通用輸入輸出引腳上拉,第二個(gè)通用輸入輸出引腳上拉,第三個(gè)通用輸入輸出引腳下拉,第四個(gè)通用輸入輸出引腳下拉,則根據(jù)上述通用輸入輸出引腳的電平值生成的預(yù)設(shè)狀態(tài)值即為:1100。
需要說(shuō)明的是此處上拉下拉的固定規(guī)則不要與芯片廠商的參考設(shè)置相同,為了防止其他使用芯片廠商自帶設(shè)置的不法硬件在系統(tǒng)啟動(dòng)時(shí)直接驗(yàn)證通過(guò)。
因?yàn)槌u者的硬件關(guān)于選定的通用輸入輸出引腳的電平值即上拉狀態(tài)與預(yù)設(shè)的預(yù)設(shè)狀態(tài)值不一致,所以當(dāng)軟件被抄襲到新的硬件上后,在初始化時(shí)就會(huì)重啟系統(tǒng),因此軟件無(wú)法正常運(yùn)行,從而起到了防抄襲的作用。
本發(fā)明預(yù)先通過(guò)路由器軟件對(duì)路由器硬件的通用輸入輸出引腳進(jìn)行設(shè)置,將通用輸入輸出引腳設(shè)置為與芯片廠商設(shè)置不同的電平值,用于在路由器系統(tǒng)啟動(dòng)時(shí)參與硬件通用輸入輸出引腳狀態(tài)值檢測(cè),為判斷路由器硬件是否合法提供數(shù)據(jù)支持。
圖4為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)方法的另一個(gè)具體實(shí)施例的步驟示意圖,如圖4所示,所述步驟S10之前還包括步驟:S05:按照所述選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,按照固定規(guī)則對(duì)所有選定的通用輸入輸出引腳進(jìn)行設(shè)置,記錄下所述通用輸入輸出引腳的狀態(tài)值,并根據(jù)所述狀態(tài)值在軟件內(nèi)匹配設(shè)置對(duì)應(yīng)的所述預(yù)設(shè)狀態(tài)值。
具體的,本發(fā)明預(yù)先設(shè)置好路由器硬件的通用輸入輸出引腳,并在路由器軟件程序設(shè)計(jì)的時(shí)候增加通用輸入輸出引腳檢測(cè)程序,根據(jù)硬件通用輸入輸出引腳的狀態(tài)值在軟件程序中設(shè)置匹配的預(yù)設(shè)狀態(tài)值。
具體的,本發(fā)明在軟件中增加檢測(cè)程序,通過(guò)增加調(diào)用函數(shù)實(shí)現(xiàn)對(duì)路由器硬件通用輸入輸出引腳的檢測(cè),只有合法的路由器硬件才能啟動(dòng)路由器系統(tǒng),通過(guò)軟硬件結(jié)合的方式使得本發(fā)明路由器軟件防盜更加靈活,成本更低。
圖5為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)裝置的主要組成示意圖,作為本發(fā)明的一個(gè)具體實(shí)施例,如圖5所示,一種路由器系統(tǒng)防盜啟動(dòng)裝置,包括:讀取模塊100,用于當(dāng)內(nèi)核初始化時(shí),按照選定編號(hào)讀取當(dāng)前路由器硬件的至少一個(gè)通用輸入輸出引腳的狀態(tài)值;檢測(cè)狀態(tài)值生成模塊200,用于將讀取的所述通用輸入輸出引腳的狀態(tài)值生成檢測(cè)狀態(tài)值;比較模塊300,用于將所述檢測(cè)狀態(tài)值生成模塊200生成的所述檢測(cè)狀態(tài)值與預(yù)先設(shè)置的預(yù)設(shè)狀態(tài)值進(jìn)行比較;執(zhí)行模塊400,用于當(dāng)所述比較模塊300比較所述檢測(cè)狀態(tài)值與所述預(yù)設(shè)狀態(tài)值相同時(shí),正常啟動(dòng)路由器系統(tǒng);以及還用于當(dāng)所述比較模塊300比較比較所述檢測(cè)狀態(tài)值與所述預(yù)設(shè)狀態(tài)值不相同時(shí),重新啟動(dòng)路由器系統(tǒng)。
本發(fā)明在路由器軟件程序中增加檢測(cè)功能,通過(guò)對(duì)路由器硬件的通用輸入輸出引腳的狀態(tài)值的檢測(cè)來(lái)實(shí)現(xiàn)路由器系統(tǒng)的安全啟動(dòng),當(dāng)檢測(cè)路由器硬件為非法硬件時(shí),則無(wú)法正常啟動(dòng)系統(tǒng)。本發(fā)明通過(guò)上述軟硬件結(jié)合的防盜方式實(shí)現(xiàn)了路由器軟件的保護(hù)防盜,無(wú)需專門配置硬件來(lái)進(jìn)行加密保護(hù),節(jié)約了成本,同時(shí)破譯難度可隨軟件的復(fù)雜程度而變,不僅提高了軟件被盜破譯難度,同時(shí)也具有較好的靈活性。
圖6為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)裝置的一個(gè)具體實(shí)施例的完整組成示意圖,作為本發(fā)明的一個(gè)具體實(shí)施例,如圖6所示,優(yōu)選的,還包括:軟件設(shè)置模塊500,用于按照所述選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,并按照固定規(guī)則對(duì)所有選定的通用輸入輸出引腳進(jìn)行設(shè)置,生成所述預(yù)設(shè)狀態(tài)值,并將所述預(yù)設(shè)狀態(tài)值固化在路由器軟件程序中。
優(yōu)選的,如圖6所示,所述軟件設(shè)置模塊500進(jìn)一步包括:模式設(shè)置模塊501,用于按照按選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,并設(shè)置選定的通用輸入輸出引腳為輸入模式;電平輸入模塊502,用于按照固定規(guī)則對(duì)所述選定的通用輸入輸出引腳輸入高電平或低電平;預(yù)設(shè)狀態(tài)值生成模塊503,用于根據(jù)獲得所有選定的通用輸入輸出引腳的電平值生成所述通用輸入輸出引腳的預(yù)設(shè)狀態(tài)值;存儲(chǔ)模塊504,用于存儲(chǔ)所述通用輸入輸出引腳的預(yù)設(shè)狀態(tài)值。
具體的,為了與路由器軟件中新增的檢測(cè)功能對(duì)應(yīng),本發(fā)明還包括對(duì)合法路由器硬件進(jìn)行設(shè)置生成用于比較的預(yù)設(shè)狀態(tài)值,相當(dāng)于用于解密的密鑰。對(duì)路由器硬件的通用輸入輸出引腳進(jìn)行設(shè)置包括:
1、內(nèi)核配置選定的通用輸入輸出引腳為input輸入模式的方法:
通用輸入輸出引腳_request(unsigned int通用輸入輸出引腳Num,char*desc);
通用輸入輸出引腳_direction_input(unsigned int通用輸入輸出引腳Num);
其中通用輸入輸出引腳Num為需要設(shè)定的通用輸入輸出引腳的編號(hào),desc為描述字符串,可以為任意值。
2、通過(guò)軟件分別對(duì)選定的通用輸入輸出引腳進(jìn)行上拉與下拉,即上拉是指給該通用輸入輸出引腳輸入高電平;下拉是指給該通用輸入輸出引腳輸入低電平,一般指接地。設(shè)置好的所有通用輸入輸出引腳的電平值組成預(yù)設(shè)狀態(tài)值。比如,按照固定規(guī)則對(duì)編號(hào)1/2/3/4四個(gè)通用輸入輸出引腳分別進(jìn)行上拉與下拉,假設(shè)第一個(gè)通用輸入輸出引腳上拉,第二個(gè)通用輸入輸出引腳上拉,第三個(gè)通用輸入輸出引腳下拉,第四個(gè)通用輸入輸出引腳下拉,則生成的預(yù)設(shè)狀態(tài)值即為:1100。
圖7為本發(fā)明一種路由器系統(tǒng)防盜啟動(dòng)裝置的另一個(gè)具體實(shí)施例的主要組成示意圖,如圖7所示,一種路由器系統(tǒng)防盜啟動(dòng)裝置,還包括:硬件設(shè)置模塊601,用于按照所述選定編號(hào)選定路由器硬件的至少一個(gè)通用輸入輸出引腳,按照固定規(guī)則對(duì)所有選定的通用輸入輸出引腳進(jìn)行設(shè)置,記錄下所述通用輸入輸出引腳的狀態(tài)值;預(yù)設(shè)狀態(tài)值設(shè)置模塊602,用于根據(jù)所述狀態(tài)值在路由器軟件內(nèi)匹配設(shè)置對(duì)應(yīng)的所述預(yù)設(shè)狀態(tài)值。
具體的,本發(fā)明預(yù)先設(shè)置好路由器硬件通用輸入輸出引腳,并在路由器軟件程序設(shè)計(jì)的時(shí)候增加通用輸入輸出引腳檢測(cè)程序,根據(jù)硬件通用輸入輸出引腳的狀態(tài)值在軟件程序中設(shè)置匹配的預(yù)設(shè)狀態(tài)值。
需要說(shuō)明的是,本系統(tǒng)中各模塊之間的信息交互、執(zhí)行過(guò)程等內(nèi)容與上述方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見(jiàn)本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。
本發(fā)明還公開(kāi)了一種路由器,使用上述路由器系統(tǒng)防盜啟動(dòng)方法進(jìn)行啟動(dòng)系統(tǒng),能夠有效防止路由器軟件盜版。
應(yīng)當(dāng)說(shuō)明的是,上述實(shí)施例均可根據(jù)需要自由組合。以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。