国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于實(shí)現(xiàn)用戶行為追蹤的方法、設(shè)備、瀏覽器及電子設(shè)備與流程

      文檔序號(hào):11216364閱讀:355來(lái)源:國(guó)知局
      用于實(shí)現(xiàn)用戶行為追蹤的方法、設(shè)備、瀏覽器及電子設(shè)備與流程

      本發(fā)明涉及瀏覽器技術(shù)領(lǐng)域,更具體地,涉及一種用于實(shí)現(xiàn)用戶行為追蹤的方法、設(shè)備、瀏覽器及電子設(shè)備。



      背景技術(shù):

      當(dāng)今社會(huì)的互聯(lián)網(wǎng)迅速發(fā)展,大量的用戶每天通過電腦和手機(jī)上的瀏覽器登錄網(wǎng)頁(yè)進(jìn)行信息查詢、網(wǎng)頁(yè)瀏覽。然而,不同用戶查詢的信息和瀏覽偏好都不一樣,如何實(shí)現(xiàn)對(duì)用戶使用瀏覽器的用戶行為進(jìn)行追蹤,成為亟待解決的問題。

      目前,一種常用的方法是通過用戶注冊(cè)的瀏覽器賬戶作為用戶的唯一身份標(biāo)識(shí),當(dāng)用戶以瀏覽器賬戶登錄瀏覽器時(shí),可以實(shí)現(xiàn)識(shí)別用戶,對(duì)用戶使用瀏覽器的用戶行為進(jìn)行記錄,以實(shí)現(xiàn)追蹤用戶行為。但是這種方法的弊端在于用戶常常會(huì)因?yàn)閺?fù)雜的賬戶注冊(cè)過程和頻繁的登錄而放棄通過瀏覽器賬戶登錄使用瀏覽器,導(dǎo)致不能通過識(shí)別用戶來(lái)追蹤用戶行為。

      而在不能通過識(shí)別用戶來(lái)記錄用戶行為時(shí),為能實(shí)現(xiàn)追蹤用戶的行為,常用的方法是在瀏覽器中注入cookie(瀏覽器緩存),cookie中存儲(chǔ)有唯一標(biāo)識(shí)碼可以用于唯一標(biāo)識(shí)瀏覽器,可以實(shí)現(xiàn)識(shí)別用戶使用的瀏覽器,對(duì)使用該瀏覽器的用戶的行為進(jìn)行記錄,以實(shí)現(xiàn)追蹤用戶行為。然而,由于電腦或手機(jī)上安裝的殺毒軟件或性能優(yōu)化軟件經(jīng)常會(huì)進(jìn)行清除cookie的操作,導(dǎo)致基于cookie來(lái)記錄用戶行為的信息因此而丟失,無(wú)法實(shí)際追蹤用戶行為。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明的一個(gè)目的是提供一種用于實(shí)現(xiàn)用戶行為追蹤的新技術(shù)方案。

      根據(jù)本發(fā)明的第一方面,提供一種利用瀏覽器指紋實(shí)現(xiàn)用戶行為追蹤的方法,包括以下步驟:利用與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度計(jì)算瀏覽器的瀏覽器指紋,其中,所述瀏覽器指紋唯一標(biāo)識(shí)所述瀏覽器;向所述服務(wù)器發(fā)送所述瀏覽器指紋和對(duì)應(yīng)的用戶使用瀏覽器的用戶行為信息以進(jìn)行存儲(chǔ)。

      優(yōu)選地,所述與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度包括利用瀏覽器獲取的帆布指紋,其中,在瀏覽器上利用帆布功能繪制圖片,并計(jì)算繪制出的圖片的圖形碼作為所述帆布指紋。

      可選地,所述圖片包括直線、圖形、文本、和/或顏色漸變的色彩區(qū)域。

      可選地,所述圖形碼包括所述圖片轉(zhuǎn)換成的編碼字符串中的冗余循環(huán)校驗(yàn)碼。

      優(yōu)選地,所述與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度還包括瀏覽器的屬性信息。

      可選地,所述瀏覽器的屬性信息包括瀏覽器的用戶代理和/或?yàn)g覽器使用的語(yǔ)言。

      可選地,所述瀏覽器的屬性信息還包括瀏覽器的顯示分辨率和/或?yàn)g覽器的可用顯示分辨率。

      可選地,所述瀏覽器的屬性信息還包括瀏覽器是否支持會(huì)話存儲(chǔ)、瀏覽器是否支持本地存儲(chǔ)、瀏覽器是否支持索引數(shù)據(jù)庫(kù)、和/或?yàn)g覽器是否支持開放數(shù)據(jù)庫(kù)。

      可選地,所述瀏覽器的屬性信息還包括安裝在瀏覽器上的插件信息、瀏覽器是否允許跟蹤的權(quán)限狀態(tài)、瀏覽器是否支持安裝廣告攔截器、瀏覽器是否支持附加行為、和/或?yàn)g覽器是否支持觸摸事件。

      可選地,所述瀏覽器的屬性信息還包括利用瀏覽器的網(wǎng)頁(yè)圖形庫(kù)功能獲得的網(wǎng)頁(yè)圖形庫(kù)指紋。

      優(yōu)選地,所述與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度還包括瀏覽器運(yùn)行的軟件環(huán)境信息。

      可選地,所述瀏覽器運(yùn)行的軟件環(huán)境信息包括操作系統(tǒng)平臺(tái)信息和/或操作系統(tǒng)時(shí)區(qū)信息。

      優(yōu)選地,所述與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度還包括瀏覽器運(yùn)行的硬件環(huán)境信息。

      可選地,所述瀏覽器運(yùn)行的硬件環(huán)境信息包括處理器的信息、顯示設(shè)備的像素比率、和/或顯示設(shè)備上調(diào)色板的比特深度。

      優(yōu)選地,所述與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度還包括瀏覽器是否被篡改的信息。

      可選地,所述瀏覽器是否被篡改的信息包括瀏覽器的語(yǔ)言是否被篡改、瀏覽器的分辨率是否被篡改、瀏覽器運(yùn)行的平臺(tái)是否被篡改、和/或?yàn)g覽器的用戶代理是否被篡改。

      優(yōu)選地,所述計(jì)算瀏覽器的瀏覽器指紋包括以下步驟:將通過所述一個(gè)或更多個(gè)維度得到的信息拼接成字符串并對(duì)所述字符串加密。

      根據(jù)本發(fā)明的第二方面,提供一種用于實(shí)現(xiàn)用戶行為追蹤的設(shè)備,包括:用于利用與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度計(jì)算瀏覽器的瀏覽器指紋的裝置,其中,所述瀏覽器指紋唯一標(biāo)識(shí)所述瀏覽器;用于向所述服務(wù)器發(fā)送所述瀏覽器指紋和對(duì)應(yīng)的用戶使用瀏覽器的用戶行為以進(jìn)行存儲(chǔ)的裝置。

      根據(jù)本發(fā)明的第三方面,提供一種瀏覽器,包括根據(jù)本發(fā)明的用于實(shí)現(xiàn)用戶行為追蹤的設(shè)備。

      根據(jù)本發(fā)明的第四方面,提供一種瀏覽器,被設(shè)計(jì)成執(zhí)行根據(jù)本發(fā)明的用于實(shí)現(xiàn)用戶行為追蹤的方法中的操作。

      根據(jù)本發(fā)明的第五方面,提供一種電子設(shè)備,包括根據(jù)本發(fā)明的瀏覽器。

      根據(jù)本發(fā)明的第六方面,提供一種電子設(shè)備,包括處理器、存儲(chǔ)器和顯示裝置,其中,所述存儲(chǔ)器用于存儲(chǔ)指令,所述指令用于控制所述處理器進(jìn)行操作以執(zhí)行根據(jù)本發(fā)明的用于實(shí)現(xiàn)用戶行為追蹤的方法。

      本發(fā)明的發(fā)明人發(fā)現(xiàn),在現(xiàn)有技術(shù)中,瀏覽器cookie中記錄的用戶行為信息常常因?yàn)橹T如電腦或手機(jī)上安裝的殺毒軟件或性能優(yōu)化軟件等被清除,或者因?yàn)橛脩舴艞夁M(jìn)行賬戶注冊(cè)和登錄操作而未能進(jìn)行用戶身份識(shí)別以保存用戶行為信息,在這些情況下,無(wú)法實(shí)現(xiàn)對(duì)用戶行為的追蹤。

      根據(jù)本發(fā)明,利用與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度計(jì)算瀏覽器的瀏覽器指紋,能夠獲得不依賴于用戶操作的、唯一性極高的瀏覽器指紋。向服務(wù)器發(fā)送瀏覽器指紋和對(duì)應(yīng)的用戶使用瀏覽器的用戶行為信息以進(jìn)行存儲(chǔ),能夠保證用戶行為信息不被刪除,從而實(shí)現(xiàn)用戶行為追蹤。

      根據(jù)本發(fā)明,用戶使用瀏覽器進(jìn)行操作,其用戶行為信息便能夠與瀏覽器指紋綁定,一并被存儲(chǔ)至服務(wù)器中保存,避免基于瀏覽器cookie存儲(chǔ)的用戶行為信息因?yàn)閏ookie清除而丟失的風(fēng)險(xiǎn)。另外,由于根據(jù)本發(fā)明的瀏覽器指紋是由與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度計(jì)算出來(lái)的,其不依賴于用戶的操作,因此無(wú)需用戶進(jìn)行繁瑣的賬戶注冊(cè)和登錄操作來(lái)實(shí)現(xiàn)用戶身份識(shí)別,就能通過瀏覽器指紋識(shí)別瀏覽器,以記錄使用瀏覽器的用戶的行為,實(shí)現(xiàn)利用瀏覽器指紋實(shí)現(xiàn)用戶行為追蹤。

      因此,本發(fā)明所要實(shí)現(xiàn)的技術(shù)任務(wù)或者所要解決的技術(shù)問題是本領(lǐng)域技術(shù)人員從未想到的或者沒有預(yù)期到的,故本發(fā)明是一種新的技術(shù)方案。

      通過以下參照附圖對(duì)本發(fā)明的示例性實(shí)施例的詳細(xì)描述,本發(fā)明的其它特征及其優(yōu)點(diǎn)將會(huì)變得清楚。

      附圖說明

      被結(jié)合在說明書中并構(gòu)成說明書的一部分的附圖示出了本發(fā)明的實(shí)施例,并且連同其說明一起用于解釋本發(fā)明的原理。

      圖1是根據(jù)本發(fā)明實(shí)施例的用于實(shí)現(xiàn)用戶行為追蹤的方法的示意性流程圖。

      圖2是根據(jù)本發(fā)明實(shí)施例的瀏覽器的示意性框圖。

      圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的電子設(shè)備的示意性框圖。

      圖4是根據(jù)本發(fā)明另一個(gè)實(shí)施例的電子設(shè)備的示意性框圖。

      具體實(shí)施方式

      現(xiàn)在將參照附圖來(lái)詳細(xì)描述本發(fā)明的各種示例性實(shí)施例。應(yīng)注意到:除非另外具體說明,否則在這些實(shí)施例中闡述的部件和步驟的相對(duì)布置、數(shù)字表達(dá)式和數(shù)值不限制本發(fā)明的范圍。

      以下對(duì)至少一個(gè)示例性實(shí)施例的描述實(shí)際上僅僅是說明性的,決不作為對(duì)本發(fā)明及其應(yīng)用或使用的任何限制。

      對(duì)于相關(guān)領(lǐng)域普通技術(shù)人員已知的技術(shù)、方法和設(shè)備可能不作詳細(xì)討論,但在適當(dāng)情況下,所述技術(shù)、方法和設(shè)備應(yīng)當(dāng)被視為說明書的一部分。

      在這里示出和討論的所有例子中,任何具體值應(yīng)被解釋為僅僅是示例性的,而不是作為限制。因此,示例性實(shí)施例的其它例子可以具有不同的值。

      應(yīng)注意到:相似的標(biāo)號(hào)和字母在下面的附圖中表示類似項(xiàng),因此,一旦某一項(xiàng)在一個(gè)附圖中被定義,則在隨后的附圖中不需要對(duì)其進(jìn)行進(jìn)一步討論。

      在本發(fā)明的實(shí)施例中,提出了一種用于實(shí)現(xiàn)用戶行為追蹤的新方式。

      下面,參照附圖描述根據(jù)本發(fā)明的各個(gè)實(shí)施例和實(shí)例。

      <方法>

      圖1是根據(jù)本發(fā)明實(shí)施例的用于實(shí)現(xiàn)用戶行為追蹤的方法的示意性流程圖。

      如圖1所示,在步驟s100,利用與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度計(jì)算瀏覽器的瀏覽器指紋,其中,所述瀏覽器指紋唯一標(biāo)識(shí)所述瀏覽器;以及步驟s200,向服務(wù)器發(fā)送瀏覽器指紋和對(duì)應(yīng)的用戶使用瀏覽器的用戶行為信息以進(jìn)行存儲(chǔ)。

      在本文中,與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度是指直接與瀏覽器本身有關(guān)或間接利用瀏覽器獲取的一方面或更多方面信息。

      以下詳細(xì)說明根據(jù)本發(fā)明實(shí)施例的步驟s100和步驟s200。

      在步驟s100中,與瀏覽器相關(guān)的第一維度可以包括利用瀏覽器獲取的帆布(canvas)指紋,其中,在瀏覽器上利用canvas功能繪制圖片,并計(jì)算繪制出的圖片的圖形碼作為所述canvas指紋。

      進(jìn)一步地,根據(jù)本發(fā)明的實(shí)施例,在步驟s100中,與瀏覽器相關(guān)的第二維度至第五維度可以包括:瀏覽器的屬性信息、瀏覽器運(yùn)行的軟件環(huán)境信息、瀏覽器運(yùn)行的硬件環(huán)境信息、瀏覽器是否被篡改的信息。

      以下詳細(xì)說明根據(jù)本發(fā)明實(shí)施例的第一維度以及第二維度至第五維度所包括的若干子維度。

      第一維度:利用瀏覽器獲取的canvas指紋

      canvas是html5的一個(gè)專屬標(biāo)簽,在瀏覽器上利用canvas功能繪制canvas圖片時(shí),對(duì)于同樣的canvas繪制代碼,不同的瀏覽器繪制出的圖片特征是獨(dú)一無(wú)二的。因此,可以利用在瀏覽器上由canvas功能獲得的canvas指紋作為與瀏覽器相關(guān)的第一維度。

      在根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例中,利用canvas功能繪制直線、圖形、文本、和/或顏色漸變的色彩區(qū)域。由于上述這四個(gè)功能是canvas的四個(gè)最基本的基礎(chǔ)功能,優(yōu)選地,在使用上述全部四個(gè)功能的情況下,能夠有助于獲得唯一性更高的瀏覽器指紋。

      下面詳細(xì)說明根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例的在瀏覽器上利用canvas功能繪制圖片、并計(jì)算繪制出的圖片的圖形碼作為canvas指紋的方法。

      例如,可以利用canvas功能繪制直線。可以先通過函數(shù)document.createelement創(chuàng)建一個(gè)canvas標(biāo)簽,然后可以通過函數(shù)getcontent(‘2d’)獲得它的2d上下文。之后,可以通過函數(shù)moveto(0,0)、lineto(200,200)、stroke()繪制出起始坐標(biāo)(0,0)到終點(diǎn)坐標(biāo)(200,200)的直線。

      例如,可以利用canvas功能繪制圓形??梢酝ㄟ^函數(shù)arc(95,50,40,0,2*math.pi)和stroke()繪制圓心為(95,50)、位置半徑為40像素、弧度為2*math.pi的圓形。

      例如,可以利用canvas功能繪制文本文字。可以通過函數(shù)font="30pxarial"設(shè)定要繪制的文本文字的大小為30像素、字體為arial,然后可以通過函數(shù)filltext("helloworld",10,50)在坐標(biāo)位置(10,50)繪制出“helloworld”的文字。

      例如,可以利用canvas功能繪制顏色漸變的色彩區(qū)域??梢酝ㄟ^函數(shù)createlineargradient(0,0,200,0)創(chuàng)建一個(gè)長(zhǎng)度為200像素的顏色漸近線,然后可以通過函數(shù)addcolorstop(0,"red")設(shè)置該顏色漸近線的初始顏色為紅,可以通過函數(shù)addcolorstop(1,"white")設(shè)置該顏色漸近線的終點(diǎn)顏色為白,之后可以將fillstyle屬性的填充色設(shè)置為該顏色漸近線,并且可以將該填充色填充到長(zhǎng)、寬均為10像素的矩形fillrect(0,0,10,10)中,由此獲得顏色漸變的色彩區(qū)域。

      在獲得了利用canvas功能繪制出的包括直線、圖形、文本、顏色漸變的色彩區(qū)域的圖片之后,優(yōu)選地,可以通過canvas自帶的函數(shù)todataurl()計(jì)算出所述圖片的base64編碼字符串,所述編碼字符串中包含一段32位的crc(冗余循環(huán)校驗(yàn))碼,提取這段crc碼作為圖片的圖形碼,以由此作為第一維度canvas指紋。

      第二維度:瀏覽器的屬性信息

      優(yōu)選地,與瀏覽器相關(guān)的第二維度瀏覽器的屬性信息可以包括以下子維度:

      瀏覽器的用戶代理。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)navigator.useragent獲得瀏覽器的用戶代理信息,其是瀏覽器用于http請(qǐng)求的用戶代理頭的值。

      瀏覽器使用的語(yǔ)言。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)navigator.language、navigator.userlanguage、navigator.browserlanguage、和/或navigator.systemlanguage獲得瀏覽器使用的是哪國(guó)的語(yǔ)言。由于每個(gè)瀏覽器都存在差異和兼容性,優(yōu)選地,可以同時(shí)使用上述四個(gè)函數(shù)來(lái)獲得瀏覽器使用的語(yǔ)言。

      進(jìn)一步優(yōu)選地,與瀏覽器相關(guān)的第二維度瀏覽器的屬性信息還可以包括以下子維度:

      瀏覽器的顯示分辨率。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)screen.width獲得顯示瀏覽器的寬度像素,以及可以通過函數(shù)screen.height獲得顯示瀏覽器的高度像素。

      瀏覽器的可用顯示分辨率。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)screen.availwidth獲得顯示瀏覽器的可用寬度像素,以及可以通過函數(shù)screen.availheight獲得顯示瀏覽器的可用高度像素。

      更進(jìn)一步優(yōu)選地,與瀏覽器相關(guān)的第二維度瀏覽器的屬性信息還可以包括以下子維度:

      瀏覽器是否支持會(huì)話存儲(chǔ)(sessionstorage)。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)window.sessionstorage是否為空(null)或者未定義(undefined)來(lái)確定瀏覽器是否支持會(huì)話存儲(chǔ)(sessionstorage)。

      瀏覽器是否支持本地存儲(chǔ)(localstorage)。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)window.localstorage是否為空(null)或者未定義(undefined)來(lái)確定瀏覽器是否支持本地存儲(chǔ)(localstorage)。

      瀏覽器是否支持索引數(shù)據(jù)庫(kù)(indexeddb)。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)window.indexeddb是否為空(null)或者未定義(undefined)來(lái)確定瀏覽器是否支持索引數(shù)據(jù)庫(kù)(indexeddb)。

      瀏覽器是否支持開放數(shù)據(jù)庫(kù)(opendatabase)。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)window.opendatabase是否為空(null)或者未定義(undefined)來(lái)確定瀏覽器是否支持開放數(shù)據(jù)庫(kù)(opendatabase)。

      優(yōu)選地,與瀏覽器相關(guān)的第二維度瀏覽器的屬性信息還可以包括以下子維度:

      安裝在瀏覽器上的插件信息。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)navigator.plugin獲得安裝在瀏覽器上的插件的信息。

      瀏覽器是否允許跟蹤的權(quán)限狀態(tài)。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)navigator.donottrack獲得瀏覽器是否允許跟蹤的權(quán)限狀態(tài)。

      瀏覽器是否支持安裝廣告攔截器(adblock)。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)document.createelement("div")創(chuàng)建一個(gè)div網(wǎng)頁(yè)元素,然后設(shè)置該元素的類名為“adsbox”,之后通過函數(shù)document.getelementsbyclassname("adsbox")[0].offsetheight獲得該元素的高位移,如果結(jié)果不為0則代表瀏覽器安裝了廣告攔截器(adblock)。

      瀏覽器是否支持附加行為。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)document.body.addbehavior來(lái)確定瀏覽器是否支持addbehavior附加行為。

      瀏覽器是否支持觸摸事件。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)document.createevent("touchevent")在瀏覽器里創(chuàng)建觸摸事件,如果創(chuàng)建成功則代表瀏覽器支持觸摸事件。進(jìn)一步地,可以通過函數(shù)"ontouchstart"inwindow來(lái)判斷瀏覽器是否支持觸摸事件里的ontouchstart事件。

      優(yōu)選地,與瀏覽器相關(guān)的第二維度瀏覽器的屬性信息還可以包括以下子維度:

      利用瀏覽器的網(wǎng)頁(yè)圖形庫(kù)(webgl)功能獲得的webgl指紋。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)canvas.getcontext("webgl")獲得一個(gè)webgl對(duì)象,然后取該webgl對(duì)象中的aliased_line_width_range、aliased_point_size_range、alpha_bits、blue_bits、max_combined_texture_image_units、max_fragment_uniform_vectors、max_renderbuffer_size、shading_language_version這幾個(gè)值,并且將所述值拼接成字符串以獲得webgl指紋。

      第三維度:瀏覽器運(yùn)行的軟件環(huán)境信息

      優(yōu)選地,與瀏覽器相關(guān)的第三維度瀏覽器運(yùn)行的軟件環(huán)境信息可以包括以下子維度:

      操作系統(tǒng)平臺(tái)信息。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)navigator.platform返回瀏覽器所運(yùn)行的操作系統(tǒng)平臺(tái)信息,例如可以返回操作系統(tǒng)平臺(tái)的字符串,諸如"win32","win16","wince","mac68k","macppc","hp-ux","sunos"等。

      操作系統(tǒng)時(shí)區(qū)信息。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)newdate().gettimezoneoffset()獲得協(xié)調(diào)通用時(shí)間(utc)與當(dāng)前系統(tǒng)時(shí)間之間的分鐘差值,即操作系統(tǒng)時(shí)區(qū)信息。

      第四維度:瀏覽器運(yùn)行的硬件環(huán)境信息

      優(yōu)選地,與瀏覽器相關(guān)的第四維度瀏覽器運(yùn)行的硬件環(huán)境信息可以包括以下子維度:

      處理器的信息。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)window.navigator.cpuclass返回處理器的信息,例如"x86","68k","alpha","ppc"等。

      顯示設(shè)備的像素比率。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)window.devicepixelratio獲得顯示設(shè)備物理像素和顯示設(shè)備獨(dú)立像素(dips)的比率。

      顯示設(shè)備上調(diào)色板的比特深度。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過函數(shù)screen.colordepth獲得顯示設(shè)備上調(diào)色板的比特深度。

      第五維度:瀏覽器是否被篡改的信息

      優(yōu)選地,與瀏覽器相關(guān)的第五維度瀏覽器是否被篡改的信息可以包括以下子維度:

      瀏覽器的語(yǔ)言是否被篡改。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過判斷預(yù)設(shè)的瀏覽器語(yǔ)言組中的第一個(gè)語(yǔ)言項(xiàng)參數(shù)navigator.languages[0]與當(dāng)前瀏覽器的語(yǔ)言參數(shù)navigator.language是否相等來(lái)確定瀏覽器的語(yǔ)言是否被篡改。

      瀏覽器的分辨率是否被篡改。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過判斷預(yù)設(shè)的瀏覽器寬度分辨率參數(shù)screen.width與瀏覽器可用寬度分辨率參數(shù)screen.availwidth是否相等來(lái)確定瀏覽器的分辨率是否被篡改。

      瀏覽器運(yùn)行的平臺(tái)是否被篡改。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過判斷預(yù)設(shè)的瀏覽器平臺(tái)參數(shù)navigator.platform和瀏覽器當(dāng)前運(yùn)行的平臺(tái)參數(shù)navigator.oscpu是否相等來(lái)確定瀏覽器運(yùn)行的平臺(tái)是否被篡改。

      瀏覽器的用戶代理是否被篡改。根據(jù)本發(fā)明實(shí)施例的一個(gè)實(shí)例,可以通過判斷預(yù)設(shè)的瀏覽器用戶代理navigator.useragent和瀏覽器當(dāng)前用戶代理navigator.productsub是否相等來(lái)確定瀏覽器是否被篡改。

      根據(jù)本發(fā)明的實(shí)施例,在步驟s100,可以利用第一維度至第五維度計(jì)算瀏覽器的瀏覽器指紋。進(jìn)一步地,可以利用第一維度和第二至第五維度包括的若干子維度計(jì)算瀏覽器的瀏覽器指紋。

      例如,可以利用第一維度canvas指紋計(jì)算瀏覽器的瀏覽器指紋。根據(jù)本發(fā)明的實(shí)施例,通過利用canvas功能繪制出來(lái)的圖片的圖形碼作為計(jì)算瀏覽器指紋唯一性的第一維度,可以使得瀏覽器指紋唯一性達(dá)到90%以上。

      優(yōu)選地,可以利用第一維度以及第二維度至第五維度所包括的全部子維度,即總共24個(gè)方面計(jì)算瀏覽器的瀏覽器指紋??梢詫⒗盟?4個(gè)方面獲得的信息拼接成一個(gè)字符串,然后可以將該字符串經(jīng)過32位的md5加密,由此得到唯一性幾乎為100%的32位瀏覽器指紋碼。本領(lǐng)域的技術(shù)人員可以根據(jù)不同的需要來(lái)選擇字符串的加密方式。

      在步驟s200中,可以利用所述瀏覽器指紋來(lái)實(shí)現(xiàn)用戶行為追蹤。在使用根據(jù)本發(fā)明實(shí)施例計(jì)算出的瀏覽器指紋的情況下,當(dāng)用戶使用瀏覽器進(jìn)行操作時(shí),諸如用戶搜索過的詞匯、操作信息、瀏覽記錄等用戶行為,都可以與該瀏覽器的瀏覽器指紋綁定,一并存儲(chǔ)至服務(wù)器。例如,可以為每個(gè)瀏覽器指紋單獨(dú)開設(shè)一個(gè)存儲(chǔ)空間用來(lái)存儲(chǔ)與其綁定的用戶行為信息。

      由于存儲(chǔ)至服務(wù)器的用戶行為信息是無(wú)法被用戶刪除的,因此不存在瀏覽器cookie中記錄的用戶行為信息因?yàn)橹T如電腦或手機(jī)上安裝的殺毒軟件或性能優(yōu)化軟件等而被清除的風(fēng)險(xiǎn)。同時(shí),即使因?yàn)橛脩舴艞夁M(jìn)行賬戶注冊(cè)和登錄操作而未進(jìn)行用戶身份識(shí)別,只要用戶通過該瀏覽器進(jìn)行操作,其用戶行為信息都能夠與該瀏覽器的瀏覽器指紋綁定,一并被存儲(chǔ)至服務(wù)器中,由此實(shí)現(xiàn)用戶行為追蹤。

      根據(jù)本發(fā)明的實(shí)施例,利用與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度計(jì)算瀏覽器的瀏覽器指紋,能夠獲得不依賴于用戶操作的、唯一性極高的瀏覽器指紋;將瀏覽器指紋和用戶使用瀏覽器的用戶行為信息一并存儲(chǔ)至服務(wù)器,能夠保證用戶行為信息不被刪除,從而實(shí)現(xiàn)用戶行為追蹤。

      根據(jù)本發(fā)明的實(shí)施例,用戶使用瀏覽器進(jìn)行操作,其用戶行為信息便能夠與瀏覽器指紋綁定,一并被存儲(chǔ)至服務(wù)器中保存,避免基于瀏覽器cookie存儲(chǔ)的用戶行為信息因?yàn)閏ookie清除而丟失的風(fēng)險(xiǎn)。另外,由于根據(jù)本發(fā)明實(shí)施例的瀏覽器指紋是由與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度計(jì)算出來(lái)的,其不依賴于用戶的操作,因此無(wú)需用戶進(jìn)行繁瑣的賬戶注冊(cè)和登錄操作來(lái)實(shí)現(xiàn)用戶身份識(shí)別,就能通過瀏覽器指紋識(shí)別瀏覽器,以記錄使用瀏覽器的用戶的行為,實(shí)現(xiàn)利用瀏覽器指紋實(shí)現(xiàn)用戶行為追蹤。

      <設(shè)備>

      本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,在電子技術(shù)領(lǐng)域中,可以通過軟件、硬件以及軟件和硬件結(jié)合的方式,將上述方法體現(xiàn)在產(chǎn)品中。本領(lǐng)域技術(shù)人員很容易基于上面公開的方法,產(chǎn)生一種用于實(shí)現(xiàn)用戶行為追蹤的設(shè)備。該設(shè)備可以包括用于實(shí)現(xiàn)前面所述的用于實(shí)現(xiàn)用戶行為追蹤的方法中的各個(gè)操作的裝置。例如,該設(shè)備可以包括:用于利用與瀏覽器相關(guān)的一個(gè)或更多個(gè)維度計(jì)算瀏覽器的瀏覽器指紋的裝置,其中,所述瀏覽器指紋唯一標(biāo)識(shí)所述瀏覽器;用于向服務(wù)器發(fā)送所述瀏覽器指紋和對(duì)應(yīng)的用戶使用瀏覽器的用戶行為以進(jìn)行存儲(chǔ)的裝置。

      <瀏覽器>

      上面描述的用于實(shí)現(xiàn)用戶行為追蹤的設(shè)備可以是一個(gè)獨(dú)立的設(shè)備(例如,客戶端中的應(yīng)用),也可以被集成在瀏覽器中,成為瀏覽器的一部分。在這種情況下,所述瀏覽器能夠提供一種用于實(shí)現(xiàn)用戶行為追蹤的新方式。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,隨著技術(shù)的發(fā)展,瀏覽器可以是一個(gè)單獨(dú)的應(yīng)用程序,例如,ie瀏覽器、chrome瀏覽器等,或者也可以指的是集成了瀏覽器功能的應(yīng)用程序,例如微博應(yīng)用程序、微信應(yīng)用程序、facebook應(yīng)用程序、vk應(yīng)用程序等。

      圖2是根據(jù)本發(fā)明實(shí)施例的瀏覽器的示意性框圖。

      一般來(lái)說,瀏覽器從架構(gòu)上可以分為兩個(gè)部分,即內(nèi)核和外殼。瀏覽器內(nèi)核負(fù)責(zé)對(duì)網(wǎng)頁(yè)語(yǔ)法的解釋(如html、javascript)并渲染(顯示)網(wǎng)頁(yè),即瀏覽器通過內(nèi)核對(duì)網(wǎng)頁(yè)進(jìn)行解析和渲染。瀏覽器外殼主要處理瀏覽器外觀界面、操控體驗(yàn)。在圖2中,瀏覽器2000包括內(nèi)核2010和外殼2020。瀏覽器2000還包括用戶行為追蹤設(shè)備2030。用戶行為追蹤設(shè)備2030可以是根據(jù)本發(fā)明的用于實(shí)現(xiàn)用戶行為追蹤的設(shè)備。盡管為了清楚起見,在圖2中,用戶行為追蹤設(shè)備2030在外殼2020和內(nèi)核2010之外,但是,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,用戶行為追蹤設(shè)備2030可以位于外殼2020和內(nèi)核2010內(nèi)。

      另一方面,本領(lǐng)域技術(shù)人員公知的是,隨著諸如大規(guī)模集成電路技術(shù)的電子信息技術(shù)的發(fā)展和軟件硬件化的趨勢(shì),要明確劃分計(jì)算機(jī)系統(tǒng)軟、硬件界限已經(jīng)顯得比較困難了。因?yàn)椋魏尾僮骺梢攒浖?lái)實(shí)現(xiàn),也可以硬件來(lái)實(shí)現(xiàn)。任何指令的執(zhí)行可以由硬件完成,同樣也可以由軟件來(lái)完成。對(duì)于某一機(jī)器功能采用硬件實(shí)現(xiàn)方案還是軟件實(shí)現(xiàn)方案,取決于價(jià)格、速度、可靠性、存儲(chǔ)容量、變更周期等非技術(shù)性因素。因此,對(duì)于電子信息技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說,更為直接和清楚地描述一個(gè)技術(shù)方案的方式是描述該方案中的各個(gè)操作。在知道所要執(zhí)行的操作的情況下,本領(lǐng)域技術(shù)人員可以基于對(duì)所述非技術(shù)性因素的考慮直接設(shè)計(jì)出期望的產(chǎn)品。從這個(gè)方面來(lái)說,在本發(fā)明的實(shí)施例中,還提供了一種瀏覽器,該瀏覽器被設(shè)計(jì)成執(zhí)行前面所述的根據(jù)本發(fā)明實(shí)施例的用于實(shí)現(xiàn)用戶行為追蹤的操作。

      <電子設(shè)備>

      可以在電子設(shè)備中實(shí)現(xiàn)根據(jù)本發(fā)明的各個(gè)實(shí)施例。所述電子設(shè)備例如是筆記本電腦、智能手機(jī)、平板電腦等。

      圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的電子設(shè)備的示意性框圖。如圖3所述,電子設(shè)備3000包括瀏覽器3010。瀏覽器3010例如是前面所述的瀏覽器中的任何一個(gè)。

      圖4是根據(jù)本發(fā)明另一個(gè)實(shí)施例的電子設(shè)備的示意性框圖。

      如圖4所示,電子設(shè)備4000可以包括處理器4010、存儲(chǔ)器4020、接口裝置4030、通信裝置4040、顯示裝置4050、輸入裝置4060、揚(yáng)聲器4070、麥克風(fēng)4080,等等。

      處理器4010例如可以是中央處理器cpu、微處理器mcu等。

      存儲(chǔ)器4020例如包括rom(只讀存儲(chǔ)器)、ram(隨機(jī)存取存儲(chǔ)器)、諸如硬盤的非易失性存儲(chǔ)器等。

      接口裝置4030例如包括usb接口、耳機(jī)接口等。

      通信裝置4040例如能夠進(jìn)行有有線或無(wú)線通信。

      顯示裝置4050例如是液晶顯示屏、觸摸顯示屏等。

      輸入裝置4060例如可以包括觸摸屏、鍵盤等。

      用戶可以通過揚(yáng)聲器4070和麥克風(fēng)4080輸入/輸出語(yǔ)音信息。

      圖4所示的電子設(shè)備僅是解釋性的,并且決不是為了要限制本發(fā)明、其應(yīng)用或用途。

      在這個(gè)實(shí)施例中,所述存儲(chǔ)器4020用于存儲(chǔ)指令,所述指令用于控制所述處理器4010進(jìn)行操作以執(zhí)行本實(shí)施例所述的用于實(shí)現(xiàn)用戶行為追蹤的方法。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,盡管在圖4中示出了多個(gè)裝置,但是,本發(fā)明可以僅涉及其中的部分裝置,例如,處理器4010和存儲(chǔ)裝置4020等。技術(shù)人員可以根據(jù)本發(fā)明所公開方案設(shè)計(jì)指令。指令如何控制處理器進(jìn)行操作,這是本領(lǐng)域公知,故在此不再詳細(xì)描述。

      本發(fā)明可以是設(shè)備、方法和/或計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)程序產(chǎn)品可以包括計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上載有用于使處理器實(shí)現(xiàn)本發(fā)明的各個(gè)方面的計(jì)算機(jī)可讀程序指令。

      計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是可以保持和存儲(chǔ)由指令執(zhí)行設(shè)備使用的指令的有形設(shè)備。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是――但不限于――電存儲(chǔ)設(shè)備、磁存儲(chǔ)設(shè)備、光存儲(chǔ)設(shè)備、電磁存儲(chǔ)設(shè)備、半導(dǎo)體存儲(chǔ)設(shè)備或者上述的任意合適的組合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體的例子(非窮舉的列表)包括:便攜式計(jì)算機(jī)盤、硬盤、隨機(jī)存取存儲(chǔ)器(ram)、只讀存儲(chǔ)器(rom)、可擦式可編程只讀存儲(chǔ)器(eprom或閃存)、靜態(tài)隨機(jī)存取存儲(chǔ)器(sram)、便攜式壓縮盤只讀存儲(chǔ)器(cd-rom)、數(shù)字多功能盤(dvd)、記憶棒、軟盤、機(jī)械編碼設(shè)備、例如其上存儲(chǔ)有指令的打孔卡或凹槽內(nèi)凸起結(jié)構(gòu)、以及上述的任意合適的組合。這里所使用的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)不被解釋為瞬時(shí)信號(hào)本身,諸如無(wú)線電波或者其他自由傳播的電磁波、通過波導(dǎo)或其他傳輸媒介傳播的電磁波(例如,通過光纖電纜的光脈沖)、或者通過電線傳輸?shù)碾娦盘?hào)。

      這里所描述的計(jì)算機(jī)可讀程序指令可以從計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)下載到各個(gè)計(jì)算/處理設(shè)備,或者通過網(wǎng)絡(luò)、例如因特網(wǎng)、局域網(wǎng)、廣域網(wǎng)和/或無(wú)線網(wǎng)下載到外部計(jì)算機(jī)或外部存儲(chǔ)設(shè)備。網(wǎng)絡(luò)可以包括銅傳輸電纜、光纖傳輸、無(wú)線傳輸、路由器、防火墻、交換機(jī)、網(wǎng)關(guān)計(jì)算機(jī)和/或邊緣服務(wù)器。每個(gè)計(jì)算/處理設(shè)備中的網(wǎng)絡(luò)適配卡或者網(wǎng)絡(luò)接口從網(wǎng)絡(luò)接收計(jì)算機(jī)可讀程序指令,并轉(zhuǎn)發(fā)該計(jì)算機(jī)可讀程序指令,以供存儲(chǔ)在各個(gè)計(jì)算/處理設(shè)備中的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中。

      用于執(zhí)行本發(fā)明操作的計(jì)算機(jī)程序指令可以是匯編指令、指令集架構(gòu)(isa)指令、機(jī)器指令、機(jī)器相關(guān)指令、微代碼、固件指令、狀態(tài)設(shè)置數(shù)據(jù)、或者以一種或多種編程語(yǔ)言的任意組合編寫的源代碼或目標(biāo)代碼,所述編程語(yǔ)言包括面向?qū)ο蟮木幊陶Z(yǔ)言—諸如smalltalk、c++等,以及常規(guī)的過程式編程語(yǔ)言—諸如“c”語(yǔ)言或類似的編程語(yǔ)言。計(jì)算機(jī)可讀程序指令可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過任意種類的網(wǎng)絡(luò)—包括局域網(wǎng)(lan)或廣域網(wǎng)(wan)—連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來(lái)通過因特網(wǎng)連接)。在一些實(shí)施例中,通過利用計(jì)算機(jī)可讀程序指令的狀態(tài)信息來(lái)個(gè)性化定制電子電路,例如可編程邏輯電路、現(xiàn)場(chǎng)可編程門陣列(fpga)或可編程邏輯陣列(pla),該電子電路可以執(zhí)行計(jì)算機(jī)可讀程序指令,從而實(shí)現(xiàn)本發(fā)明的各個(gè)方面。

      這里參照根據(jù)本發(fā)明實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或框圖描述了本發(fā)明的各個(gè)方面。應(yīng)當(dāng)理解,流程圖和/或框圖的每個(gè)方框以及流程圖和/或框圖中各方框的組合,都可以由計(jì)算機(jī)可讀程序指令實(shí)現(xiàn)。

      這些計(jì)算機(jī)可讀程序指令可以提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機(jī)器,使得這些指令在通過計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時(shí),產(chǎn)生了實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的裝置。也可以把這些計(jì)算機(jī)可讀程序指令存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,這些指令使得計(jì)算機(jī)、可編程數(shù)據(jù)處理裝置和/或其他設(shè)備以特定方式工作,從而,存儲(chǔ)有指令的計(jì)算機(jī)可讀介質(zhì)則包括一個(gè)制造品,其包括實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的各個(gè)方面的指令。

      也可以把計(jì)算機(jī)可讀程序指令加載到計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上,使得在計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上執(zhí)行一系列操作步驟,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過程,從而使得在計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上執(zhí)行的指令實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作。

      附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個(gè)實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段或指令的一部分,所述模塊、程序段或指令的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動(dòng)作的專用的基于硬件的系統(tǒng)來(lái)實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來(lái)實(shí)現(xiàn)。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說公知的是,通過硬件方式實(shí)現(xiàn)、通過軟件方式實(shí)現(xiàn)以及通過軟件和硬件結(jié)合的方式實(shí)現(xiàn)都是等價(jià)的。

      以上已經(jīng)描述了本發(fā)明的各實(shí)施例,上述說明是示例性的,并非窮盡性的,并且也不限于所披露的各實(shí)施例。在不偏離所說明的各實(shí)施例的范圍和精神的情況下,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說許多修改和變更都是顯而易見的。本文中所用術(shù)語(yǔ)的選擇,旨在最好地解釋各實(shí)施例的原理、實(shí)際應(yīng)用或?qū)κ袌?chǎng)中的技術(shù)改進(jìn),或者使本技術(shù)領(lǐng)域的其它普通技術(shù)人員能理解本文披露的各實(shí)施例。本發(fā)明的范圍由所附權(quán)利要求來(lái)限定。

      當(dāng)前第1頁(yè)1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1