欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

密碼同步方法和裝置與流程

文檔序號:12698812閱讀:507來源:國知局
密碼同步方法和裝置與流程
本發(fā)明涉及網(wǎng)絡(luò)
技術(shù)領(lǐng)域
,特別是涉及物聯(lián)網(wǎng)
技術(shù)領(lǐng)域
,進(jìn)一步涉及一種密碼同步方法和裝置。
背景技術(shù)
:隨著無線網(wǎng)絡(luò)的應(yīng)用普及,各種設(shè)備可以通過無線網(wǎng)絡(luò)接入點接入到網(wǎng)絡(luò),實現(xiàn)設(shè)備與服務(wù)器以及設(shè)備與設(shè)備之間的互動。對于未設(shè)置密碼的無線網(wǎng)絡(luò)接入點,設(shè)備可以直接接入無線網(wǎng)絡(luò)接入點;但出于安全考慮,無線網(wǎng)絡(luò)接入點通常都會設(shè)置密碼,設(shè)備在接入無線網(wǎng)絡(luò)接入點時需要提供正確的密碼才可以連接到無線網(wǎng)絡(luò)接入點進(jìn)而訪問網(wǎng)絡(luò)。對于具有人工輸入裝置的設(shè)備,比如手機(jī)或計算機(jī)等,具有鍵盤或者觸摸屏這樣的人工輸入裝置,可以直接通過人工輸入裝置輸入正確的密碼進(jìn)而連接到無線網(wǎng)絡(luò)接入點。但如果設(shè)備不具有人工輸入裝置,或者如果設(shè)備所處的環(huán)境不適合人工直接操作,或者設(shè)備操作不方便,那么設(shè)備難以獲取到密碼,從而難以接入無線網(wǎng)絡(luò)接入點。技術(shù)實現(xiàn)要素:基于此,有必要針對目前設(shè)備沒有人工輸入裝置或者所處的環(huán)境不適合人工直接操作時難以獲取到密碼的問題,提供一種密碼同步方法和裝置。一種密碼同步方法,所述方法包括:在監(jiān)聽模式下接收廣播的數(shù)據(jù)包;接收到的數(shù)據(jù)包包括終端廣播的數(shù)據(jù)包或者所述終端廣播后再通過所述終端接入的無線網(wǎng)絡(luò)接入點廣播的數(shù)據(jù)包,所述終端廣播的數(shù)據(jù)包的長度字段的數(shù)據(jù)是將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼生成的;將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)按照相應(yīng)的數(shù)據(jù)包序列號排序;根據(jù)排序的數(shù)據(jù)和所述預(yù)設(shè)字符序列的數(shù)值特征確定長度字段附加值;根據(jù)所述長度字段附加值從接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)中還原出所述密碼。一種密碼同步裝置,所述裝置包括:接收模塊,用于在監(jiān)聽模式下接收廣播的數(shù)據(jù)包;接收到的數(shù)據(jù)包包括終端廣播的數(shù)據(jù)包或者所述終端廣播后再通過所述終端接入的無線網(wǎng)絡(luò)接入點廣播的數(shù)據(jù)包,所述終端廣播的數(shù)據(jù)包的長度字段的數(shù)據(jù)是將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼生成的;排序模塊,用于將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)按照相應(yīng)的數(shù)據(jù)包序列號排序;長度字段附加值確定模塊,用于根據(jù)排序的數(shù)據(jù)和所述預(yù)設(shè)字符序列的數(shù)值特征確定長度字段附加值;密碼還原模塊,用于根據(jù)所述長度字段附加值從接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)中還原出所述密碼。上述密碼同步方法和裝置,預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼生成相應(yīng)數(shù)據(jù)包的長度字段的數(shù)據(jù)后,數(shù)據(jù)包被廣播,那么長度字段的數(shù)據(jù)會增加長度字段附加值。在監(jiān)聽模式下接收廣播的數(shù)據(jù)包,將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)按照相應(yīng)的數(shù)據(jù)包序列號排序,這樣排序后數(shù)據(jù)的順序與終端發(fā)送數(shù)據(jù)的順序是一致的,進(jìn)而利用已知的預(yù)設(shè)字符序列的數(shù)值特征并結(jié)合排序的數(shù)據(jù)便可以確定長度字段附加值,進(jìn)而可以還原出密碼。這樣當(dāng)設(shè)備不具有人工輸入裝置或者設(shè)備所處的環(huán)境不適合人工直接操作時,也可以從終端同步到待接入無線網(wǎng)絡(luò)接入點的密碼。附圖說明圖1為一個實施例中密碼同步系統(tǒng)的應(yīng)用環(huán)境圖;圖2為一個實施例中用于實現(xiàn)密碼同步方法的電子設(shè)備的結(jié)構(gòu)示意圖;圖3為一個實施例中密碼同步方法的流程示意圖;圖4為一個實施例中尋找可用信道的步驟的流程示意圖;圖5為一個實施例中根據(jù)長度字段附加值從接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)中還原出密碼的步驟的流程示意圖;圖6為一個實施例中根據(jù)排序的數(shù)據(jù)和預(yù)設(shè)字符序列的數(shù)值特征確定長度字段附加值的步驟的流程示意圖;圖7為一個實施例中密碼同步裝置的結(jié)構(gòu)框圖;圖8為另一個實施例中密碼同步裝置的結(jié)構(gòu)框圖;圖9為一個實施例中密碼同步裝置的密碼還原模塊的結(jié)構(gòu)框圖;圖10為一個實施例中長度字段附加值確定模塊的結(jié)構(gòu)框圖。具體實施方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。如圖1所示,在一個實施例中,提供了一種密碼同步系統(tǒng),包括終端102、無線網(wǎng)絡(luò)接入點104和電子設(shè)備106。終端102包括手機(jī)、平板電腦、個人數(shù)字助理、電子書閱讀器、POS終端、車載電腦、膝上型便攜計算機(jī)和臺式計算機(jī)等中的至少一種,終端102具有用于接入無線網(wǎng)絡(luò)的無線網(wǎng)絡(luò)模塊。無線網(wǎng)絡(luò)接入點104俗稱“熱點”,主要有路由交換接入一體設(shè)備和純接入點設(shè)備,其中路由交換接入一體設(shè)備執(zhí)行接入和路由工作,純接入設(shè)備只負(fù)責(zé)接入無線網(wǎng)絡(luò),純接入設(shè)備通常作為無線網(wǎng)絡(luò)擴(kuò)展使用。如圖2所示,在一個實施例中,提供了一種電子設(shè)備106,包括通過系統(tǒng)總線連接的處理器、非易失性存儲介質(zhì)、內(nèi)存儲器以及無線網(wǎng)絡(luò)模塊。其中處理器具有計算功能和控制終端102工作的功能,該處理器被配置為執(zhí)行一種密碼同步方法。非易失性存儲介質(zhì)包括磁存儲介質(zhì)、光存儲介質(zhì)和閃存式存儲介質(zhì)中的至少一種,非易失性存儲介質(zhì)存儲有密碼同步裝置,該密碼同步裝置用于實現(xiàn)一種密碼同步方法。無線網(wǎng)絡(luò)模塊用于連接到無線網(wǎng)絡(luò)。電子設(shè)備106比如智能空氣凈化器,攝像頭以及智能音響等。發(fā)明人發(fā)現(xiàn),在通信協(xié)議和加密算法不變的情況下,終端102發(fā)送的長度字段的數(shù)據(jù)為L的數(shù)據(jù)包進(jìn)行協(xié)議封裝和加密后進(jìn)行廣播,如果沒有被分割,電子設(shè)備106接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù),會在原本的數(shù)值的基礎(chǔ)上加上一個固定的數(shù)值,這個增加的固定的數(shù)值可以稱為長度字段附加值。比如假設(shè)終端102上的數(shù)據(jù)包的長度字段的原本的數(shù)據(jù)為L,經(jīng)過終端102廣播后長度字段的數(shù)據(jù)變?yōu)長+a,再經(jīng)過無線網(wǎng)絡(luò)接入點104的轉(zhuǎn)發(fā)進(jìn)行廣播后,長度字段的數(shù)據(jù)變?yōu)長+a+b,設(shè)長度字段附加值為C=a+b。那么如果終端102將密碼編碼為數(shù)據(jù)包的長度字段的數(shù)據(jù)L進(jìn)行廣播后,電子設(shè)備106求得C,就能夠還原出密碼L。如圖3所示,在一個實施例中,提供了一種密碼同步方法,本實施例以該方法應(yīng)用于上述圖1和圖2所示的電子設(shè)備106來舉例說明。該方法具體包括如下步驟:步驟302,在監(jiān)聽模式下接收廣播的數(shù)據(jù)包;接收到的數(shù)據(jù)包包括終端廣播的數(shù)據(jù)包或者終端廣播后再通過終端接入的無線網(wǎng)絡(luò)接入點廣播的數(shù)據(jù)包,終端廣播的數(shù)據(jù)包的長度字段的數(shù)據(jù)是將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼生成的。具體地,監(jiān)聽模式也可以稱為混雜模式,是指一臺機(jī)器能夠接收所有經(jīng)過該機(jī)器的數(shù)據(jù)流,而不論數(shù)據(jù)流的目的地址是否指向該機(jī)器本身。電子設(shè)備可以直接監(jiān)聽終端所廣播的數(shù)據(jù)包,也可以監(jiān)聽終端廣播后經(jīng)過無線網(wǎng)絡(luò)接入點的轉(zhuǎn)發(fā)而再次進(jìn)行廣播的數(shù)據(jù)包。數(shù)據(jù)包被廣播時會被進(jìn)行協(xié)議封裝和加密,直接廣播的數(shù)據(jù)包和經(jīng)過無線網(wǎng)絡(luò)接入點廣播的數(shù)據(jù)包的長度字段附加值是不同的。不同的終端采用的無線傳輸協(xié)議不同,有些終端會采用較高級版本的無線傳輸協(xié)議(如MIMO傳輸協(xié)議,Multiple-InputMultiple-Output,多入多出傳輸協(xié)議),這種情況下終端廣播的數(shù)據(jù)包如果再經(jīng)過無線網(wǎng)絡(luò)接入點,會被無線網(wǎng)絡(luò)接入點采用低級版本的無線傳輸協(xié)議進(jìn)行廣播。這樣即使終端采用較高級版本無線傳輸協(xié)議廣播數(shù)據(jù)包,采用低級版本協(xié)議的電子設(shè)備也能夠識別出,可盡可能避免由于無線傳輸協(xié)議版本不同而導(dǎo)致的密碼同步失敗,兼容性更強(qiáng)。預(yù)設(shè)字符序列是已知的,包括至少一個字符。預(yù)設(shè)字符序列中的各個字符 均可以轉(zhuǎn)換成整數(shù)值,比如預(yù)設(shè)字符序列可取ASCII(AmericanStandardCodeforInformationInterchange,美國標(biāo)準(zhǔn)信息交換代碼)中的任意字符。密碼可取無線網(wǎng)絡(luò)接入點所支持的任意字符。將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼生成長度字段的數(shù)據(jù),預(yù)設(shè)字符序列中的每個字符為一個字節(jié),密碼中的一個字符為一個字節(jié),按字節(jié)編碼即以字節(jié)為單位進(jìn)行編碼,編碼生成的每個數(shù)據(jù)包的長度字段的數(shù)據(jù)就是一個字符的數(shù)值。長度字段是生成數(shù)據(jù)包所采用的協(xié)議定義的一種字段,長度字段的數(shù)據(jù)表示相應(yīng)數(shù)據(jù)包所攜帶的需傳輸?shù)臄?shù)據(jù)的長度。如果字符是0到9的整數(shù)則編碼后為本身,如果是ASCII中其它字符就轉(zhuǎn)換成相應(yīng)的整數(shù)的ASCII碼。編碼時可采用無線網(wǎng)絡(luò)接入點支持的各種網(wǎng)絡(luò)協(xié)議,比如UDP(用戶數(shù)據(jù)報協(xié)議)或者TCP(TransmissionControlProtocol,傳輸控制協(xié)議)。待接入無線網(wǎng)絡(luò)接入點可以是終端所接入的無線網(wǎng)絡(luò)接入點,也可以是其它無線網(wǎng)絡(luò)接入點。在一個實施例中,可將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)依次編碼,具體先將預(yù)設(shè)字符序列進(jìn)行編碼再將密碼進(jìn)行編碼,這是考慮到預(yù)設(shè)字符序列的長度是已知的,而密碼的長度是未知的,依次編碼方便定位預(yù)設(shè)字符序列求得長度字段附加值。在一個實施例中,預(yù)設(shè)字符序列包括連續(xù)且相同的多個字符和不相同的多種字符中的至少一種。其中連續(xù)且相同的多個字符比如“111”或者“aaa”等,不相同的多種字符比如“1,8”或者“0,1,q”等,連續(xù)且相同的多個字符和不相同的多種字符的組合比如“111a”或者“aaq”。預(yù)設(shè)字符序列還可以包括字符0,其中連續(xù)且相同的多個字符和字符0的組合比如“000”,不相同的多種字符和字符0的組合比如“0q0”。步驟304,將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)按照相應(yīng)的數(shù)據(jù)包序列號排序。具體地,電子設(shè)備接收到系列的數(shù)據(jù)包后,可按照數(shù)據(jù)包序列號(SequenceNumber),將相應(yīng)數(shù)據(jù)包的長度字段的數(shù)據(jù)逐個順序地緩存到緩存區(qū)中,這樣緩存區(qū)中的數(shù)據(jù)就是經(jīng)過排序的數(shù)據(jù)。步驟306,根據(jù)排序的數(shù)據(jù)和預(yù)設(shè)字符序列的數(shù)值特征確定長度字段附加值。具體地,預(yù)設(shè)字符序列的數(shù)值特征是指反映預(yù)設(shè)字符序列的數(shù)值特性的數(shù)據(jù)。預(yù)設(shè)字符序列的數(shù)值特征可以包括預(yù)設(shè)字符序列中字符的數(shù)值,假設(shè)緩存區(qū)中第一個數(shù)據(jù)對應(yīng)的預(yù)設(shè)字符序列的第一個字符,那么將緩存區(qū)中第一個數(shù)據(jù)減去預(yù)設(shè)字符序列的第一個字符的數(shù)值便可求得長度字段附加值。步驟308,根據(jù)長度字段附加值從接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)中還原出密碼。具體地,在確定了長度字段附加值后,由于預(yù)設(shè)字符序列的長度是已知的,便可從排序的數(shù)據(jù)中定位到密碼對應(yīng)的數(shù)據(jù),可將密碼對應(yīng)的數(shù)據(jù)均減去長度字段附加值,以還原出密碼。還原出密碼后,可搜索無線網(wǎng)絡(luò)接入點的SSID(ServiceSetIdentifier,服務(wù)集標(biāo)識),從而接入無線網(wǎng)絡(luò)接入點。若搜索到多個SSID,則可以分別嘗試連接每個搜索到的SSID。上述密碼同步方法,預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼生成相應(yīng)數(shù)據(jù)包的長度字段的數(shù)據(jù)后,數(shù)據(jù)包被廣播,那么長度字段的數(shù)據(jù)會增加長度字段附加值。在監(jiān)聽模式下接收廣播的數(shù)據(jù)包,將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)按照相應(yīng)的數(shù)據(jù)包序列號排序,這樣排序后數(shù)據(jù)的順序與終端發(fā)送數(shù)據(jù)的順序是一致的,進(jìn)而利用已知的預(yù)設(shè)字符序列的數(shù)值特征并結(jié)合排序的數(shù)據(jù)便可以確定長度字段附加值,進(jìn)而可以還原出密碼。這樣當(dāng)設(shè)備不具有人工輸入裝置或者設(shè)備所處的環(huán)境不適合人工直接操作時,也可以從終端同步到待接入無線網(wǎng)絡(luò)接入點的密碼。在一個實施例中,終端廣播的數(shù)據(jù)包的長度字段的數(shù)據(jù)是將數(shù)據(jù)發(fā)送緩存區(qū)的遞增的緩存索引和相應(yīng)的緩存數(shù)據(jù)交替地按字節(jié)編碼而生成的,數(shù)據(jù)發(fā)送緩存區(qū)的緩存數(shù)據(jù)包括預(yù)設(shè)字符序列和密碼。具體地,緩存索引一般是以1為步長遞增的,當(dāng)然也可以按照其它步長遞增。數(shù)據(jù)發(fā)送緩存區(qū)中緩存有緩存數(shù)據(jù),緩存數(shù)據(jù)包括預(yù)設(shè)字符序列和密碼。數(shù)據(jù)發(fā)送緩存區(qū)中的緩存數(shù)據(jù)按照字節(jié)設(shè)有相應(yīng)的緩存索引。這樣每1字節(jié)的緩存數(shù)據(jù)需要2個數(shù)據(jù)包來發(fā)送,每個數(shù)據(jù)包傳輸1個字節(jié)的緩存數(shù)據(jù)或者1 個字節(jié)的緩存索引。將數(shù)據(jù)發(fā)送緩存區(qū)的遞增的緩存索引和相應(yīng)的緩存數(shù)據(jù)交替地按字節(jié)編碼,具體是從數(shù)據(jù)發(fā)送緩存區(qū)的起始位置開始,按照先編碼緩存索引后編碼該緩存索引對應(yīng)的一字節(jié)的緩存數(shù)據(jù)的順序依次進(jìn)行編碼。編碼的順序與終端發(fā)送數(shù)據(jù)包的順序是一致的。為了方便描述,這里將緩存索引編碼生成了長度字段的數(shù)據(jù)的相應(yīng)數(shù)據(jù)包稱為緩存索引包,將緩存數(shù)據(jù)編碼生成了長度字段的數(shù)據(jù)的相應(yīng)數(shù)據(jù)包稱為緩存數(shù)據(jù)包。交替地編碼,使得生成的數(shù)據(jù)包按照數(shù)據(jù)包序列號排序后,緩存索引包和緩存數(shù)據(jù)包是交替的。若一個數(shù)據(jù)包是緩存索引包,其前一個或者后一個數(shù)據(jù)包就是緩存數(shù)據(jù)包,而每間隔一個數(shù)據(jù)包又是緩存索引包。若一個數(shù)據(jù)包是緩存數(shù)據(jù)包,其前一個或者后一個數(shù)據(jù)包就是緩存索引包,而每間隔一個數(shù)據(jù)包又是緩存數(shù)據(jù)包。緩存索引的數(shù)值變化趨勢是遞增的,相應(yīng)的電子設(shè)備接收到的緩存索引包的長度字段的數(shù)據(jù)的數(shù)值變化趨勢也是遞增的。在一個實施例中,數(shù)據(jù)發(fā)送緩存區(qū)的緩存數(shù)據(jù)依次包括頭數(shù)據(jù)和需傳輸?shù)臄?shù)據(jù);頭數(shù)據(jù)包括協(xié)議版本標(biāo)識、數(shù)據(jù)長度信息以及預(yù)設(shè)字符序列,頭數(shù)據(jù)的數(shù)據(jù)長度固定;需傳輸?shù)臄?shù)據(jù)包括密碼和待接入無線網(wǎng)絡(luò)接入點的識別標(biāo)識;將數(shù)據(jù)發(fā)送緩存區(qū)的遞增的緩存索引和相應(yīng)的緩存數(shù)據(jù)交替地按字節(jié)編碼而生成數(shù)據(jù)包的長度字段的數(shù)據(jù)是循環(huán)進(jìn)行的。具體地,頭數(shù)據(jù)是數(shù)據(jù)發(fā)送緩存區(qū)中排在頭部的緩存數(shù)據(jù),主要包括預(yù)設(shè)字符序列,還包括協(xié)議版本標(biāo)識和數(shù)據(jù)長度信息。頭數(shù)據(jù)的位置和數(shù)據(jù)長度固定固定,方便計算長度字段附加值。在一個實施例中,頭數(shù)據(jù)按次序包括協(xié)議版本標(biāo)識、數(shù)據(jù)長度信息以及預(yù)設(shè)字符序列。頭數(shù)據(jù)的數(shù)據(jù)長度固定,協(xié)議版本標(biāo)識的數(shù)據(jù)長度以及數(shù)據(jù)長度信息的數(shù)據(jù)長度也是固定的。頭數(shù)據(jù)之后是需傳輸?shù)臄?shù)據(jù),需傳輸?shù)臄?shù)據(jù)是指需要傳輸給電子設(shè)備的數(shù)據(jù)內(nèi)容,主要包括密碼和待接入無線網(wǎng)絡(luò)接入點的識別標(biāo)識,比如SSID或BSSID(基本服務(wù)集標(biāo)識),還可以包括IP地址或者端口號等其它接入無線網(wǎng)絡(luò)接入點的信息。將數(shù)據(jù)發(fā)送緩存區(qū)的遞增的緩存索引和相應(yīng)的緩存數(shù)據(jù)交替地按字節(jié)編碼而生成數(shù)據(jù)包的長度字段的數(shù)據(jù)是循環(huán)進(jìn)行的,是指將數(shù)據(jù)發(fā)送緩存區(qū)的緩存數(shù)據(jù)依次編碼之后,會重新回到頭數(shù)據(jù)循環(huán)進(jìn)行編碼。這是考慮到存在丟包的情況,在信道不合適時更容易發(fā)生丟包的情況,循環(huán)進(jìn)行編碼可以保證電子設(shè)備可以接收到全部的數(shù)據(jù)包從而保證還原出密碼。循環(huán)無需無限循環(huán),可在循環(huán)預(yù)設(shè)循環(huán)次數(shù)后停止,或者可根據(jù)用戶操作停止。如圖4所示,在一個實施例中,步驟306之前還包括尋找可用信道的步驟,具體包括如下步驟:步驟402,在當(dāng)前信道下,統(tǒng)計預(yù)設(shè)時間段內(nèi)在排序的數(shù)據(jù)中具有每間隔一個數(shù)據(jù)遞增的數(shù)值變化趨勢的數(shù)據(jù)數(shù)量。具體地,信道也可稱為頻段,在無線通信時通信的雙方應(yīng)當(dāng)在相同或者相近的信道上,信道差別越遠(yuǎn)通信質(zhì)量越差,比如若雙方一個在信道1另一個在信道6,則雙方基本無法正常通信。當(dāng)前信道是電子設(shè)備當(dāng)前所處的信道,可以是默認(rèn)的信道或者之前切換到的信道。預(yù)設(shè)時間段是電子設(shè)備在尋找可用信道時在一個信道上停留的時間段,比如200毫秒。排序的數(shù)據(jù)中每個數(shù)據(jù)對應(yīng)唯一的數(shù)據(jù)包,在排序的數(shù)據(jù)中每間隔一個數(shù)據(jù)遞增的數(shù)值變化趨勢,與緩存索引遞增的數(shù)值變化趨勢是一致的。統(tǒng)計的數(shù)據(jù)數(shù)量可以是具有每間隔一個數(shù)據(jù)遞增的數(shù)值變化趨勢的一段數(shù)據(jù)中這種數(shù)值變化趨勢對應(yīng)的數(shù)據(jù)的數(shù)量。舉例說明,假設(shè)在排序的數(shù)據(jù)中統(tǒng)計到一段數(shù)據(jù)依次為X,Y1,X+1,Y2,X+2,Y3,X+3,Y4,X+4,其中X,X+1,X+2,X+3以及X+4這5個數(shù)據(jù)均為整數(shù)且依次遞增1,統(tǒng)計的數(shù)據(jù)數(shù)量就是5。步驟404,若統(tǒng)計的數(shù)據(jù)數(shù)量大于等于預(yù)設(shè)數(shù)量,則鎖定當(dāng)前信道。具體地,預(yù)設(shè)數(shù)量可以與預(yù)設(shè)時間段匹配,預(yù)設(shè)時間段長相應(yīng)的預(yù)設(shè)數(shù)量也可以相應(yīng)增大。鎖定當(dāng)前信道是指停止尋找可用信道,后續(xù)將使用鎖定的信道進(jìn)行通信。比如若統(tǒng)計的數(shù)據(jù)數(shù)量為5,且預(yù)設(shè)數(shù)量為5,則可鎖定當(dāng)前信道。步驟406,若未統(tǒng)計到數(shù)據(jù)數(shù)量或者統(tǒng)計的數(shù)據(jù)數(shù)量小于預(yù)設(shè)數(shù)量或者未接 收到廣播的數(shù)據(jù)包,則按預(yù)設(shè)信道順序切換信道。具體地,若未統(tǒng)計到數(shù)據(jù)數(shù)量,或者統(tǒng)計的數(shù)據(jù)數(shù)量小于預(yù)設(shè)數(shù)量,可能是由于丟包情況比較嚴(yán)重;若未接收到廣播的數(shù)據(jù)包,可能信道與廣播數(shù)據(jù)包的一端的信道相差太大??傊@三種情況下當(dāng)前信道不可用,需要切換信道后繼續(xù)返回上述步驟402尋找可用信道。其中預(yù)設(shè)信道順序前三位可以設(shè)置為信道1、信道6和信道11三種信道的組合,由于這三種信道為最常用信道,可以提高尋找可用信道的效率。本實施例中,由于緩存索引具有遞增的數(shù)值變化趨勢,那么緩存索引都加上長度字段附加值后仍然具有相同的數(shù)值變化趨勢,這種特性可以幫助判斷當(dāng)前信道的通信質(zhì)量,如果通信質(zhì)量差就切換信道從而尋找到可用信道,提高通信質(zhì)量。在一個實施例中,步驟306包括:在排序的數(shù)據(jù)中,查找滿足預(yù)設(shè)條件的每間隔一個數(shù)據(jù)構(gòu)成的數(shù)據(jù)序列,預(yù)設(shè)條件包括查找到的數(shù)據(jù)序列的數(shù)值變化趨勢與預(yù)設(shè)字符序列的連續(xù)多個字符的數(shù)值變化趨勢一致;根據(jù)查找到的數(shù)據(jù)序列中的數(shù)據(jù)與相應(yīng)的連續(xù)多個字符的數(shù)值確定長度字段附加值。具體地,緩存數(shù)據(jù)與緩存索引是對應(yīng)的,隨著緩存索引的遞增,緩存數(shù)據(jù)中的預(yù)設(shè)字符序列本身也具有數(shù)值變化趨勢。具體地,查找到的數(shù)據(jù)序列的數(shù)值變化趨勢與預(yù)設(shè)字符序列全部或部分的連續(xù)多個字符的數(shù)值變化趨勢一致,此時查找到的數(shù)據(jù)序列與預(yù)設(shè)字符序列是一一對應(yīng)的。數(shù)據(jù)序列中每個數(shù)據(jù)減去連續(xù)多個字符中相應(yīng)字符的數(shù)值等于長度字段附加值。連續(xù)多個字符中多個的數(shù)量視情況設(shè)定,比如可以設(shè)置成連續(xù)5個,也可以設(shè)置為與預(yù)設(shè)字符序列的字符數(shù)量相等。舉例說明,假設(shè)終端的數(shù)據(jù)發(fā)送緩存區(qū)中的緩存數(shù)據(jù)依次包括:xx0000qqco,BSSID字段,密碼字段,IP地址字段,端口號字段。其中xx0000qqco是頭數(shù)據(jù),頭數(shù)據(jù)的前兩位是可變的,具體頭數(shù)據(jù)第一位表示協(xié)議版本號,第二位表示數(shù)據(jù)長度信息。頭數(shù)據(jù)前兩位之后的0000qqco為預(yù)設(shè)字符序列,位置和長度均是固定的。數(shù)據(jù)發(fā)送緩存區(qū)和緩存數(shù)據(jù)的對應(yīng)關(guān)系如下表一所示。表一僅示出了頭數(shù)據(jù)的緩存數(shù)據(jù),其它字段的緩存數(shù)據(jù)省略。表一:緩存索引:0123456789…緩存數(shù)據(jù):000000qqc0…電子設(shè)備接收到廣播的數(shù)據(jù)包后,將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)按照相應(yīng)的數(shù)據(jù)包序列號排序,得到如表二所示的排序的數(shù)據(jù)。表二:參照表二,C為長度字段附加值。在排序的數(shù)據(jù)中,對應(yīng)頭數(shù)據(jù),緩存索引包的長度字段的數(shù)據(jù)從C逐次遞增1一直到C+9。在排序的數(shù)據(jù)中,對應(yīng)預(yù)設(shè)字符序列0000qqco,緩存數(shù)據(jù)包的長度字段的數(shù)據(jù)依次為C、C、C、C、C+113、C+113、C+99以及C+111。在排序的數(shù)據(jù)中若能查找到每間隔一個數(shù)據(jù)構(gòu)成的數(shù)據(jù)序列C、C、C、C、C+113、C+113、C+99以及C+111,數(shù)值變化趨勢為連續(xù)4個數(shù)據(jù)(假設(shè)是C)相同,之后的兩個數(shù)據(jù)是在C上增加113,然后是C+99以及C+111,那么這個C就可以直接確定為長度字段附加值。本實施例中,通過在排序的數(shù)據(jù)中查找每間隔一個數(shù)據(jù)構(gòu)成的具有與預(yù)設(shè)字符序列的連續(xù)多個字符的數(shù)值變化趨勢一致的數(shù)值變化趨勢的數(shù)據(jù)序列,來匹配預(yù)設(shè)字符序列和排序的數(shù)據(jù)中的對應(yīng)關(guān)系,從而求得長度字段附加值,可靠性更高。如圖5所示,在一個實施例中,緩存索引和緩存數(shù)據(jù)在被按字節(jié)編碼前分別被線性映射為不同取值范圍的數(shù)值;步驟308具體包括如下步驟:步驟502,根據(jù)長度字段附加值從接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)中還原出編碼的數(shù)據(jù)。具體地,終端在將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼前,先對緩存索引和緩存數(shù)據(jù)進(jìn)行線性映射,使得映射后的緩存索引和映射后的緩存數(shù)據(jù)處于不同的取值范圍。不同的取值范圍不相交。線性映射是指將需要映射的數(shù)據(jù)增加過減少固定的值來進(jìn)行映射。比如將緩存索引加上一個數(shù)值映射到[a,b],將緩存數(shù)據(jù)加上另一個數(shù)值映射到(b,+∞),a和b可以根據(jù)需要設(shè)置。可將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)減去長度字段附加值還原出編碼的數(shù)據(jù)。還原出編碼的數(shù)據(jù)所依據(jù)的數(shù)據(jù)包可以是在確定長度字段附加值之后新接收到的數(shù)據(jù)包。步驟504,根據(jù)還原出的編碼的數(shù)據(jù)所屬的取值范圍區(qū)分相應(yīng)的編碼的數(shù)據(jù)被映射前是緩存索引還是緩存數(shù)據(jù)。步驟506,獲取編碼的數(shù)據(jù)被映射前的數(shù)據(jù),并按照區(qū)分的緩存索引和緩存數(shù)據(jù)填入數(shù)據(jù)接收緩存區(qū),獲得密碼。其中,緩存索引和緩存數(shù)據(jù)在編碼前經(jīng)過線性映射,那么編碼的數(shù)據(jù)就應(yīng)當(dāng)是經(jīng)過線性映射的緩存索引或者緩存數(shù)據(jù)。在一個實施例中個,電子設(shè)備接收到一個數(shù)據(jù)包后提取長度字段的數(shù)據(jù)D1,若根據(jù)取值范圍判斷數(shù)據(jù)D1被映射前為緩存索引,則按照數(shù)據(jù)包序列號取下一個數(shù)據(jù)包的長度字段的數(shù)據(jù)D2。若根據(jù)取值范圍判斷數(shù)據(jù)D2被映射前為緩存數(shù)據(jù),則將數(shù)據(jù)D1被映射前的數(shù)據(jù)作為緩存索引、并將數(shù)據(jù)D2被映射前的數(shù)據(jù)作為緩存數(shù)據(jù)對應(yīng)地填入數(shù)據(jù)接收緩存區(qū)的指定位置。若根據(jù)取值范圍判斷數(shù)據(jù)D2被映射前不是緩存數(shù)據(jù),則丟棄數(shù)據(jù)D1和數(shù)據(jù)D2。進(jìn)一步地,若根據(jù)取值范圍判斷數(shù)據(jù)D1被映射前為緩存數(shù)據(jù),則按照數(shù)據(jù)包序列號取前一個數(shù)據(jù)包的長度字段的數(shù)據(jù)D3,若根據(jù)取值范圍判斷數(shù)據(jù)D3被映射前為緩存索引,則將數(shù)據(jù)D3被映射前的數(shù)據(jù)作為緩存索引、并將數(shù)據(jù)D1被映射前的數(shù)據(jù)作為緩存數(shù)據(jù)對應(yīng)地填入數(shù)據(jù)接收緩存區(qū)的指定位置。若根據(jù)取值范圍判斷數(shù)據(jù)D3被映射前不是緩存索引,則丟棄數(shù)據(jù)D1和數(shù)據(jù)D2。電子設(shè)備在數(shù)據(jù)接收緩存區(qū)中還原出終端數(shù)據(jù)發(fā)送緩存區(qū)中的數(shù)據(jù),從而可以得到密碼,還可以得到其它需傳輸?shù)臄?shù)據(jù)。在一個實施例中,電子設(shè)備在獲取到協(xié)議版本標(biāo)識的緩存索引對應(yīng)的數(shù)據(jù)后,可確定協(xié)議版本,從而采用相應(yīng)的協(xié)議版本來處理緩存數(shù)據(jù)。在一個實施例中,電子設(shè)備在獲取到數(shù)據(jù)長度信息的緩存索引對應(yīng)的數(shù)據(jù)后,可結(jié)合在數(shù)據(jù)發(fā)送緩存區(qū)中統(tǒng)計的數(shù)據(jù)判斷數(shù)據(jù)接收緩存區(qū)中的數(shù)據(jù)是否收齊,收齊后可結(jié)束流程。本實施例中,終端在將緩存索引和緩存數(shù)據(jù)按字節(jié)編碼前分別線性映射為不同取值范圍的數(shù)值,那么電子設(shè)備在接收到之后就可以快速、準(zhǔn)確地區(qū)分出緩存索引和緩存數(shù)據(jù),從而可以提高還原出密碼的效率。如圖6所示,在一個實施例中,預(yù)設(shè)字符序列中至少一個字符為0;步驟306具體包括如下步驟:步驟602,依次從排序的數(shù)據(jù)中取出一個數(shù)據(jù)作為減數(shù)與排序的數(shù)據(jù)中其它數(shù)據(jù)求取數(shù)值差。具體地,可按照預(yù)設(shè)的順序遍歷排序的數(shù)據(jù),每次取出一個數(shù)據(jù)A,再遍歷排序的數(shù)據(jù)中除數(shù)據(jù)A之外的數(shù)據(jù)B,求取數(shù)值差B-A。其中預(yù)設(shè)的順序可以是從排序的數(shù)據(jù)的第一個數(shù)據(jù)到最后一個數(shù)據(jù),再遍歷排序的數(shù)據(jù)中除數(shù)據(jù)A 之外的數(shù)據(jù)B時可僅取排序的數(shù)據(jù)中數(shù)據(jù)A之后的數(shù)據(jù)。如果經(jīng)過線性映射,那么排序的數(shù)據(jù)還應(yīng)進(jìn)行逆線性映射后再開始執(zhí)行步驟502。其中,若線性映射是加上一個固定值,那么逆線性映射就是減去這個固定值;若線性映射是減去一個固定值,那么逆線性映射就是加上這個固定值。步驟604,統(tǒng)計數(shù)值差等于預(yù)設(shè)字符序列其中一個字符的數(shù)值的次數(shù)。步驟606,若統(tǒng)計的次數(shù)超過預(yù)定義次數(shù),則將取出的數(shù)據(jù)確定為長度字段附加值。具體地,假設(shè)A=C+M1,B=C+M2,其中C為長度字段附加值,M1為數(shù)據(jù)A對應(yīng)的終端上的緩存數(shù)據(jù),M2為數(shù)據(jù)B對應(yīng)的終端上的緩存數(shù)據(jù),那么B-A=M2-M1,反映的是相應(yīng)的緩存數(shù)據(jù)的數(shù)值差。而如果B-A等于預(yù)設(shè)字符序列其中一個字符的數(shù)值,那么M1很可能就是0,如果統(tǒng)計的次數(shù)比較多,則可以斷定M1就是0,那么數(shù)據(jù)A就等于長度字段附加值。其中預(yù)定義次數(shù)大于等于3,比如可取5。如果統(tǒng)計的次數(shù)未超過預(yù)定義次數(shù),則另取數(shù)據(jù)并重新統(tǒng)計次數(shù)。舉例說明,假設(shè)預(yù)設(shè)字符序列為0000qqco,那么統(tǒng)計的就是B-A等于0或者113(字符q的數(shù)值)或者99(字符c的數(shù)值)或者111(字符o的數(shù)值)的次數(shù)。本實施例中,當(dāng)預(yù)設(shè)字符序列中至少一個字符為0時,考慮到0加上長度字段附加值等于長度字段附加值的特性,利用上述步驟602-步驟606可以高效地確定長度字段附加值,從而可以提高密碼同步的效率。如圖7所示,在一個實施例中,提供了一種密碼同步裝置700,包括接收模塊710、排序模塊720、長度字段附加值確定模塊730和密碼還原模塊740。接收模塊710,用于在監(jiān)聽模式下接收廣播的數(shù)據(jù)包;接收到的數(shù)據(jù)包包括終端廣播的數(shù)據(jù)包或者終端廣播后再通過終端接入的無線網(wǎng)絡(luò)接入點廣播的數(shù)據(jù)包,終端廣播的數(shù)據(jù)包的長度字段的數(shù)據(jù)是將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼生成的。具體地,監(jiān)聽模式也可以稱為混雜模式,是指一臺機(jī)器能夠接收所有經(jīng)過該機(jī)器的數(shù)據(jù)流,而不論數(shù)據(jù)流的目的地址是否指向該機(jī)器本身。接收模塊710 可用于直接監(jiān)聽終端所廣播的數(shù)據(jù)包,也可以監(jiān)聽終端廣播后經(jīng)過無線網(wǎng)絡(luò)接入點的轉(zhuǎn)發(fā)而再次進(jìn)行廣播的數(shù)據(jù)包。數(shù)據(jù)包被廣播時會被進(jìn)行協(xié)議封裝和加密,直接廣播的數(shù)據(jù)包和經(jīng)過無線網(wǎng)絡(luò)接入點廣播的數(shù)據(jù)包的長度字段附加值是不同的。預(yù)設(shè)字符序列是已知的,包括至少一個字符。預(yù)設(shè)字符序列中的各個字符均可以轉(zhuǎn)換成整數(shù)值,比如預(yù)設(shè)字符序列可取ASCII中的任意字符。密碼可取無線網(wǎng)絡(luò)接入點所支持的任意字符。將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼生成長度字段的數(shù)據(jù),預(yù)設(shè)字符序列中的每個字符為一個字節(jié),密碼中的一個字符為一個字節(jié),按字節(jié)編碼即以字節(jié)為單位進(jìn)行編碼,編碼生成的每個數(shù)據(jù)包的長度字段的數(shù)據(jù)就是一個字符的數(shù)值。如果字符是0到9的整數(shù)則編碼后為本身,如果是ASCII中其它字符就轉(zhuǎn)換成相應(yīng)的整數(shù)的ASCII碼。編碼時可采用無線網(wǎng)絡(luò)接入點支持的各種網(wǎng)絡(luò)協(xié)議,比如UDP或者TCP。在一個實施例中,終端將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)依次編碼,具體先將預(yù)設(shè)字符序列進(jìn)行編碼再將密碼進(jìn)行編碼,這是考慮到預(yù)設(shè)字符序列的長度是已知的,而密碼的長度是未知的,依次編碼方便定位預(yù)設(shè)字符序列求得長度字段附加值。在一個實施例中,預(yù)設(shè)字符序列包括連續(xù)且相同的多個字符和不相同的多種字符中的至少一種。排序模塊720,用于將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)按照相應(yīng)的數(shù)據(jù)包序列號排序。具體地,電子設(shè)備接收到系列的數(shù)據(jù)包后,排序模塊720可用于按照數(shù)據(jù)包序列號,將相應(yīng)數(shù)據(jù)包的長度字段的數(shù)據(jù)逐個順序地緩存到緩存區(qū)中,這樣緩存區(qū)中的數(shù)據(jù)就是經(jīng)過排序的數(shù)據(jù)。長度字段附加值確定模塊730,用于根據(jù)排序的數(shù)據(jù)和預(yù)設(shè)字符序列的數(shù)值特征確定長度字段附加值。具體地,預(yù)設(shè)字符序列的數(shù)值特征是指反映預(yù)設(shè)字符序列的數(shù)值特性的數(shù)據(jù)。預(yù)設(shè)字符序列的數(shù)值特征可以包括預(yù)設(shè)字符序列中字符的數(shù)值,假設(shè)緩存區(qū)中第一個數(shù)據(jù)對應(yīng)的預(yù)設(shè)字符序列的第一個字符,那么長度字段附加值確定 模塊730將緩存區(qū)中第一個數(shù)據(jù)減去預(yù)設(shè)字符序列的第一個字符的數(shù)值便可求得長度字段附加值。密碼還原模塊740,用于根據(jù)長度字段附加值從接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)中還原出密碼。具體地,在確定了長度字段附加值后,由于預(yù)設(shè)字符序列的長度是已知的,密碼還原模塊740便可從排序的數(shù)據(jù)中定位到密碼對應(yīng)的數(shù)據(jù),可將密碼對應(yīng)的數(shù)據(jù)均減去長度字段附加值,以還原出密碼。還原出密碼后,密碼同步裝置700還可以包括連接模塊(圖中未示出),用于搜索無線網(wǎng)絡(luò)接入點的SSID,從而接入無線網(wǎng)絡(luò)接入點。上述密碼同步裝置700,預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼生成相應(yīng)數(shù)據(jù)包的長度字段的數(shù)據(jù)后,數(shù)據(jù)包被廣播,那么長度字段的數(shù)據(jù)會增加長度字段附加值。在監(jiān)聽模式下接收廣播的數(shù)據(jù)包,將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)按照相應(yīng)的數(shù)據(jù)包序列號排序,這樣排序后數(shù)據(jù)的順序與終端發(fā)送數(shù)據(jù)的順序是一致的,進(jìn)而利用已知的預(yù)設(shè)字符序列的數(shù)值特征并結(jié)合排序的數(shù)據(jù)便可以確定長度字段附加值,進(jìn)而可以還原出密碼。這樣當(dāng)設(shè)備不具有人工輸入裝置或者設(shè)備所處的環(huán)境不適合人工直接操作時,也可以從終端同步到待接入無線網(wǎng)絡(luò)接入點的密碼。在一個實施例中,終端廣播的數(shù)據(jù)包的長度字段的數(shù)據(jù)是將數(shù)據(jù)發(fā)送緩存區(qū)的遞增的緩存索引和相應(yīng)的緩存數(shù)據(jù)交替地按字節(jié)編碼而生成的,數(shù)據(jù)發(fā)送緩存區(qū)的緩存數(shù)據(jù)包括預(yù)設(shè)字符序列和密碼。具體地,緩存索引一般是以1為步長遞增的,當(dāng)然也可以按照其它步長遞增。數(shù)據(jù)發(fā)送緩存區(qū)中緩存有緩存數(shù)據(jù),緩存數(shù)據(jù)包括預(yù)設(shè)字符序列和密碼。數(shù)據(jù)發(fā)送緩存區(qū)中的緩存數(shù)據(jù)按照字節(jié)設(shè)有相應(yīng)的緩存索引。將數(shù)據(jù)發(fā)送緩存區(qū)的遞增的緩存索引和相應(yīng)的緩存數(shù)據(jù)交替地按字節(jié)編碼,具體是從數(shù)據(jù)發(fā)送緩存區(qū)的起始位置開始,按照先編碼緩存索引后編碼該緩存索引對應(yīng)的一字節(jié)的緩存數(shù)據(jù)的順序依次進(jìn)行編碼。編碼的順序與終端發(fā)送數(shù)據(jù)包的順序是一致的。為了方便描述,這里將緩存索引編碼生成了長度字段的數(shù)據(jù)的相應(yīng)數(shù)據(jù)包稱為緩存索引包,將緩存數(shù)據(jù)編碼生成了長度字段的數(shù) 據(jù)的相應(yīng)數(shù)據(jù)包稱為緩存數(shù)據(jù)包。交替地編碼,使得生成的數(shù)據(jù)包按照數(shù)據(jù)包序列號排序后,緩存索引包和緩存數(shù)據(jù)包是交替的。若一個數(shù)據(jù)包是緩存索引包,其前一個或者后一個數(shù)據(jù)包就是緩存數(shù)據(jù)包,而每間隔一個數(shù)據(jù)包又是緩存索引包。若一個數(shù)據(jù)包是緩存數(shù)據(jù)包,其前一個或者后一個數(shù)據(jù)包就是緩存索引包,而每間隔一個數(shù)據(jù)包又是緩存數(shù)據(jù)包。緩存索引的數(shù)值變化趨勢是遞增的,相應(yīng)的電子設(shè)備接收到的緩存索引包的長度字段的數(shù)據(jù)的數(shù)值變化趨勢也是遞增的。在一個實施例中,數(shù)據(jù)發(fā)送緩存區(qū)的緩存數(shù)據(jù)依次包括頭數(shù)據(jù)和需傳輸?shù)臄?shù)據(jù);頭數(shù)據(jù)包括協(xié)議版本標(biāo)識、數(shù)據(jù)長度信息以及預(yù)設(shè)字符序列,頭數(shù)據(jù)的數(shù)據(jù)長度固定;需傳輸?shù)臄?shù)據(jù)包括密碼和待接入無線網(wǎng)絡(luò)接入點的識別標(biāo)識;將數(shù)據(jù)發(fā)送緩存區(qū)的遞增的緩存索引和相應(yīng)的緩存數(shù)據(jù)交替地按字節(jié)編碼而生成數(shù)據(jù)包的長度字段的數(shù)據(jù)是循環(huán)進(jìn)行的。具體地,頭數(shù)據(jù)是數(shù)據(jù)發(fā)送緩存區(qū)中排在頭部的緩存數(shù)據(jù),主要包括預(yù)設(shè)字符序列,還包括協(xié)議版本標(biāo)識和數(shù)據(jù)長度信息。頭數(shù)據(jù)的位置和數(shù)據(jù)長度固定固定,方便計算長度字段附加值。在一個實施例中,頭數(shù)據(jù)按次序包括協(xié)議版本標(biāo)識、數(shù)據(jù)長度信息以及預(yù)設(shè)字符序列。頭數(shù)據(jù)的數(shù)據(jù)長度固定,協(xié)議版本標(biāo)識的數(shù)據(jù)長度以及數(shù)據(jù)長度信息的數(shù)據(jù)長度也是固定的。頭數(shù)據(jù)之后是需傳輸?shù)臄?shù)據(jù),需傳輸?shù)臄?shù)據(jù)是指需要傳輸給電子設(shè)備的數(shù)據(jù)內(nèi)容,主要包括密碼和待接入無線網(wǎng)絡(luò)接入點的識別標(biāo)識,比如SSID或BSSID,還可以包括IP地址或者端口號等其它接入無線網(wǎng)絡(luò)接入點的信息。將數(shù)據(jù)發(fā)送緩存區(qū)的遞增的緩存索引和相應(yīng)的緩存數(shù)據(jù)交替地按字節(jié)編碼而生成數(shù)據(jù)包的長度字段的數(shù)據(jù)是循環(huán)進(jìn)行的,是指將數(shù)據(jù)發(fā)送緩存區(qū)的緩存數(shù)據(jù)依次編碼之后,會重新回到頭數(shù)據(jù)循環(huán)進(jìn)行編碼。這是考慮到存在丟包的情況,在信道不合適時更容易發(fā)生丟包的情況,循環(huán)進(jìn)行編碼可以保證電子設(shè)備可以接收到全部的數(shù)據(jù)包從而保證還原出密碼。循環(huán)無需無限循環(huán),可在循環(huán)預(yù)設(shè)循環(huán)次數(shù)后停止,或者可根據(jù)用戶操作停止。如圖8所示,在一個實施例中,密碼同步裝置700還包括:第一統(tǒng)計模塊 750、信道鎖定模塊760和信道切換模塊770。第一統(tǒng)計模塊750,用于在當(dāng)前信道下,統(tǒng)計預(yù)設(shè)時間段內(nèi)在排序的數(shù)據(jù)中具有每間隔一個數(shù)據(jù)遞增的數(shù)值變化趨勢的數(shù)據(jù)數(shù)量。具體地,信道也可稱為頻段,在無線通信時通信的雙方應(yīng)當(dāng)在相同或者相近的信道上,信道差別越遠(yuǎn)通信質(zhì)量越差,比如若雙方一個在信道1另一個在信道6,則雙方基本無法正常通信。當(dāng)前信道是電子設(shè)備當(dāng)前所處的信道,可以是默認(rèn)的信道或者之前切換到的信道。預(yù)設(shè)時間段是電子設(shè)備在尋找可用信道時在一個信道上停留的時間段,比如200毫秒。排序的數(shù)據(jù)中每個數(shù)據(jù)對應(yīng)唯一的數(shù)據(jù)包,在排序的數(shù)據(jù)中每間隔一個數(shù)據(jù)遞增的數(shù)值變化趨勢,與緩存索引遞增的數(shù)值變化趨勢是一致的。統(tǒng)計的數(shù)據(jù)數(shù)量可以是具有每間隔一個數(shù)據(jù)遞增的數(shù)值變化趨勢的一段數(shù)據(jù)中這種數(shù)值變化趨勢對應(yīng)的數(shù)據(jù)的數(shù)量。信道鎖定模塊760,用于若統(tǒng)計的數(shù)據(jù)數(shù)量大于等于預(yù)設(shè)數(shù)量,則鎖定當(dāng)前信道。具體地,預(yù)設(shè)數(shù)量可以與預(yù)設(shè)時間段匹配,預(yù)設(shè)時間段長相應(yīng)的預(yù)設(shè)數(shù)量也可以相應(yīng)增大。鎖定當(dāng)前信道是指停止尋找可用信道,后續(xù)使用鎖定的信道進(jìn)行通信。信道切換模塊770,用于若未統(tǒng)計到數(shù)據(jù)數(shù)量或者統(tǒng)計的數(shù)據(jù)數(shù)量小于預(yù)設(shè)數(shù)量或者未接收到廣播的數(shù)據(jù)包,則按預(yù)設(shè)信道順序切換信道。具體地,若未統(tǒng)計到數(shù)據(jù)數(shù)量,或者統(tǒng)計的數(shù)據(jù)數(shù)量小于預(yù)設(shè)數(shù)量,可能是由于丟包情況比較嚴(yán)重;若未接收到廣播的數(shù)據(jù)包,可能信道與廣播數(shù)據(jù)包的一端的信道相差太大。總之這三種情況下當(dāng)前信道不可用,需要切換信道后繼續(xù)返回上述步驟402尋找可用信道。其中預(yù)設(shè)信道順序前三位可以設(shè)置為信道1、信道6和信道11三種信道的組合。本實施例中,由于緩存索引具有遞增的數(shù)值變化趨勢,那么緩存索引都加上長度字段附加值后仍然具有相同的數(shù)值變化趨勢,這種特性可以幫助判斷當(dāng)前信道的通信質(zhì)量,如果通信質(zhì)量差就切換信道從而尋找到可用信道,提高通 信質(zhì)量。在一個實施例中,長度字段附加值確定模塊730具體用于在排序的數(shù)據(jù)中,查找滿足預(yù)設(shè)條件的每間隔一個數(shù)據(jù)構(gòu)成的數(shù)據(jù)序列,預(yù)設(shè)條件包括查找到的數(shù)據(jù)序列的數(shù)值變化趨勢與預(yù)設(shè)字符序列的連續(xù)多個字符的數(shù)值變化趨勢一致;根據(jù)查找到的數(shù)據(jù)序列中的數(shù)據(jù)與相應(yīng)的連續(xù)多個字符的數(shù)值確定長度字段附加值。具體地,緩存數(shù)據(jù)與緩存索引是對應(yīng)的,隨著緩存索引的遞增,緩存數(shù)據(jù)中的預(yù)設(shè)字符序列本身也具有數(shù)值變化趨勢。具體地,查找到的數(shù)據(jù)序列的數(shù)值變化趨勢與預(yù)設(shè)字符序列全部或部分的連續(xù)多個字符的數(shù)值變化趨勢一致,此時查找到的數(shù)據(jù)序列與預(yù)設(shè)字符序列是一一對應(yīng)的。數(shù)據(jù)序列中每個數(shù)據(jù)減去連續(xù)多個字符中相應(yīng)字符的數(shù)值等于長度字段附加值。連續(xù)多個字符中多個的數(shù)量視情況設(shè)定,比如可以設(shè)置成連續(xù)5個,也可以設(shè)置為與預(yù)設(shè)字符序列的字符數(shù)量相等。本實施例中,通過在排序的數(shù)據(jù)中查找每間隔一個數(shù)據(jù)構(gòu)成的具有與預(yù)設(shè)字符序列的連續(xù)多個字符的數(shù)值變化趨勢一致的數(shù)值變化趨勢的數(shù)據(jù)序列,來匹配預(yù)設(shè)字符序列和排序的數(shù)據(jù)中的對應(yīng)關(guān)系,從而求得長度字段附加值,可靠性更高。在一個實施例中,緩存索引和緩存數(shù)據(jù)在被按字節(jié)編碼前分別被線性映射為不同取值范圍的數(shù)值;如圖9所示,密碼還原模塊740包括:編碼數(shù)據(jù)還原模塊741、區(qū)分模塊742和緩存區(qū)處理模塊743。編碼數(shù)據(jù)還原模塊741,用于根據(jù)長度字段附加值從接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)中還原出編碼的數(shù)據(jù)。具體地,終端在將預(yù)設(shè)字符序列和待接入無線網(wǎng)絡(luò)接入點的密碼按字節(jié)編碼前,先對緩存索引和緩存數(shù)據(jù)進(jìn)行線性映射,使得映射后的緩存索引和映射后的緩存數(shù)據(jù)處于不同的取值范圍。不同的取值范圍不相交。線性映射是指將需要映射的數(shù)據(jù)增加過減少固定的值來進(jìn)行映射。比如將緩存索引加上一個數(shù)值映射到[a,b],將緩存數(shù)據(jù)加上另一個數(shù)值映射到(b,+∞),a和b可以根據(jù)需要設(shè)置。可將接收到的數(shù)據(jù)包的長度字段的數(shù)據(jù)減去長度字段附加值還原出編碼 的數(shù)據(jù)。還原出編碼的數(shù)據(jù)所依據(jù)的數(shù)據(jù)包可以是在確定長度字段附加值之后新接收到的數(shù)據(jù)包。區(qū)分模塊742,用于根據(jù)還原出的編碼的數(shù)據(jù)所屬的取值范圍區(qū)分相應(yīng)的編碼的數(shù)據(jù)被映射前是緩存索引還是緩存數(shù)據(jù)。緩存區(qū)處理模塊743,用于獲取編碼的數(shù)據(jù)被映射前的數(shù)據(jù),并按照區(qū)分的緩存索引和緩存數(shù)據(jù)填入數(shù)據(jù)接收緩存區(qū),獲得密碼。其中,緩存索引和緩存數(shù)據(jù)在編碼前經(jīng)過線性映射,那么編碼的數(shù)據(jù)就應(yīng)當(dāng)是經(jīng)過線性映射的緩存索引或者緩存數(shù)據(jù)。在一個實施例中個,電子設(shè)備接收到一個數(shù)據(jù)包后提取長度字段的數(shù)據(jù)D1,區(qū)分模塊742用于若根據(jù)取值范圍判斷數(shù)據(jù)D1被映射前為緩存索引,則按照數(shù)據(jù)包序列號取下一個數(shù)據(jù)包的長度字段的數(shù)據(jù)D2。若根據(jù)取值范圍判斷數(shù)據(jù)D2被映射前為緩存數(shù)據(jù),則緩存區(qū)處理模塊743用于將數(shù)據(jù)D1被映射前的數(shù)據(jù)作為緩存索引、并將數(shù)據(jù)D2被映射前的數(shù)據(jù)作為緩存數(shù)據(jù)對應(yīng)地填入數(shù)據(jù)接收緩存區(qū)的指定位置。若根據(jù)取值范圍判斷數(shù)據(jù)D2被映射前不是緩存數(shù)據(jù),則緩存區(qū)處理模塊743丟棄數(shù)據(jù)D1和數(shù)據(jù)D2。進(jìn)一步地,區(qū)分模塊742用于若根據(jù)取值范圍判斷數(shù)據(jù)D1被映射前為緩存數(shù)據(jù),則按照數(shù)據(jù)包序列號取前一個數(shù)據(jù)包的長度字段的數(shù)據(jù)D3,緩存區(qū)處理模塊743用于若根據(jù)取值范圍判斷數(shù)據(jù)D3被映射前為緩存索引,則將數(shù)據(jù)D3被映射前的數(shù)據(jù)作為緩存索引、并將數(shù)據(jù)D1被映射前的數(shù)據(jù)作為緩存數(shù)據(jù)對應(yīng)地填入數(shù)據(jù)接收緩存區(qū)的指定位置。緩存區(qū)處理模塊743用于若根據(jù)取值范圍判斷數(shù)據(jù)D3被映射前不是緩存索引,則丟棄數(shù)據(jù)D1和數(shù)據(jù)D2。密碼還原模塊740通過數(shù)據(jù)接收緩存區(qū)中還原出終端數(shù)據(jù)發(fā)送緩存區(qū)中的數(shù)據(jù),從而可以得到密碼,還可以得到其它需傳輸?shù)臄?shù)據(jù)。在一個實施例中,緩存區(qū)處理模塊743可用于在獲取到協(xié)議版本標(biāo)識的緩存索引對應(yīng)的數(shù)據(jù)后,確定協(xié)議版本,從而采用相應(yīng)的協(xié)議版本來處理緩存數(shù)據(jù)。在一個實施例中,緩存區(qū)處理模塊743可用于在獲取到數(shù)據(jù)長度信息的緩存索引對應(yīng)的數(shù)據(jù)后,結(jié)合在數(shù)據(jù)發(fā)送緩存區(qū)中統(tǒng)計的數(shù)據(jù)判斷數(shù)據(jù)接收緩存區(qū)中的數(shù)據(jù)是否收齊,收齊后可結(jié)束流程。本實施例中,終端在將緩存索引和緩存數(shù)據(jù)按字節(jié)編碼前分別線性映射為不同取值范圍的數(shù)值,那么電子設(shè)備在接收到之后就可以快速、準(zhǔn)確地區(qū)分出緩存索引和緩存數(shù)據(jù),從而可以提高還原出密碼的效率。在一個實施例中,預(yù)設(shè)字符序列中至少一個字符為0;如圖10所示,長度字段附加值確定模塊730包括:數(shù)值差計算模塊731、第二統(tǒng)計模塊732和確定模塊733。數(shù)值差計算模塊731,用于依次從排序的數(shù)據(jù)中取出一個數(shù)據(jù)作為減數(shù)與排序的數(shù)據(jù)中其它數(shù)據(jù)求取數(shù)值差。具體地,數(shù)值差計算模塊731可按照預(yù)設(shè)的順序遍歷排序的數(shù)據(jù),每次取出一個數(shù)據(jù)A,再遍歷排序的數(shù)據(jù)中除數(shù)據(jù)A之外的數(shù)據(jù)B,求取數(shù)值差B-A。其中預(yù)設(shè)的順序可以是從排序的數(shù)據(jù)的第一個數(shù)據(jù)到最后一個數(shù)據(jù),再遍歷排序的數(shù)據(jù)中除數(shù)據(jù)A之外的數(shù)據(jù)B時數(shù)值差計算模塊731可僅取排序的數(shù)據(jù)中數(shù)據(jù)A之后的數(shù)據(jù)。如果經(jīng)過線性映射,那么數(shù)值差計算模塊731還應(yīng)將排序的數(shù)據(jù)進(jìn)行逆線性映射后再依次從排序的數(shù)據(jù)中取出一個數(shù)據(jù)作為減數(shù)與排序的數(shù)據(jù)中其它數(shù)據(jù)求取數(shù)值差。第二統(tǒng)計模塊732,用于統(tǒng)計數(shù)值差等于預(yù)設(shè)字符序列其中一個字符的數(shù)值的次數(shù)。確定模塊733,用于若統(tǒng)計的次數(shù)超過預(yù)定義次數(shù),則將取出的數(shù)據(jù)確定為長度字段附加值。本實施例中,當(dāng)預(yù)設(shè)字符序列中至少一個字符為0時,考慮到0加上長度字段附加值等于長度字段附加值的特性,可以高效地確定長度字段附加值,從而可以提高密碼同步的效率。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機(jī)可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-OnlyMemory,ROM)等非易失性存儲介質(zhì),或隨機(jī)存儲記憶體(RandomAccessMemory,RAM) 等。以上所述實施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡潔,未對上述實施例中的各個技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說明書記載的范圍。以上所述實施例僅表達(dá)了本發(fā)明的幾種實施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。當(dāng)前第1頁1 2 3 
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
千阳县| 衡水市| 报价| 四会市| 甘德县| 公安县| 卓尼县| 白水县| 安吉县| 黔江区| 政和县| 舟山市| 白玉县| 阿克苏市| 上蔡县| 东乌珠穆沁旗| 望奎县| 江西省| 固原市| 通河县| 皮山县| 衡南县| 邻水| 新绛县| 榆树市| 襄汾县| 怀远县| 梓潼县| 恩施市| 调兵山市| 冕宁县| 于田县| 民丰县| 灯塔市| 灵川县| 太湖县| 凤城市| 定安县| 星座| 中牟县| 云南省|