TWI602079B - Identification of the method of generating data - Google Patents
Identification of the method of generating data Download PDFInfo
- Publication number
- TWI602079B TWI602079B TW106110098A TW106110098A TWI602079B TW I602079 B TWI602079 B TW I602079B TW 106110098 A TW106110098 A TW 106110098A TW 106110098 A TW106110098 A TW 106110098A TW I602079 B TWI602079 B TW I602079B
- Authority
- TW
- Taiwan
- Prior art keywords
- computer device
- identification data
- encryption
- software information
- hardware information
- Prior art date
Links
Landscapes
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
Description
本發明是有關於一種識別資料的產生方法,特別是指一種用於在網路上辨識電腦裝置的識別資料的產生方法。 The present invention relates to a method for generating identification data, and more particularly to a method for generating identification data for identifying a computer device on a network.
在網路廣告興盛的時代,廠商越來越在意自己的行銷預算是否花在刀口上,在意網路廣告是否精準地投放給預設的目標客群。但在另一方面來說,現今的作業系統及瀏覽器對於使用者隱私權的重視程度也逐漸提高。小型文字檔案(Cookie)是一種用於網站辨別用戶身分而儲存在用戶端上的資料。目前主流的上網載具(如智慧型手機)對於隱私權的規範皆採用禁止第三方的Cookie寫入的規範,加上使用者常以無痕模式進行網頁瀏覽,更加導致難以識別而追蹤使用者的網路行為。 In the era of online advertising boom, manufacturers are increasingly concerned about whether their marketing budget is spent on the knife, and whether online advertising is accurately targeted to the target audience. On the other hand, today's operating systems and browsers are increasingly paying more attention to user privacy. A small text file (Cookie) is a type of material used to identify a user's identity on a website and store it on the user's side. At present, mainstream Internet-based vehicles (such as smart phones) use the specification for prohibiting third-party cookies from being written for privacy. In addition, users often browse the web in a seamless mode, which makes it difficult to identify and track users. Network behavior.
習知的識別資料的產生方法是偵測作業系統的軟體資訊,或加上部分硬體資訊作為運算的維度,也就是作為輸入資料,並以MD5訊息摘要演算法(MD5 Message-Digest Algorithm)加密後所取得的結果字串作為對應網路用戶的識別資料。更詳細地 說,MD5訊息摘要演算法是一種密碼雜湊函式(Cryptographic Hash Function),可以輸入一段長度不定的字串,並輸出固定長度128位元(Bits)的字串的演算法。然而,當軟體資訊或硬體資訊的差異很小時,也就是使用者瀏覽網路的裝置的軟硬體差異很小時,該習知的識別資料的產生方法所產生的結果字串會相同,導致不同的網路使用者(用戶)會因為所對應的字串結果相同,而被認為是相同的網路使用者。如此一來,便導致使用者的網路行為無法正確地追蹤,也就無法精準地投放網路廣告。 The conventional identification data is generated by detecting the software information of the operating system, or adding part of the hardware information as the operation dimension, that is, as the input data, and encrypting with the MD5 Message-Digest Algorithm. The resulting result string is used as the identification data of the corresponding network user. In more detail The MD5 message digest algorithm is a Cryptographic Hash Function that can input a variable length string and output a fixed length 128 bit string algorithm. However, when the difference between the software information or the hardware information is small, that is, the difference between the software and the hardware of the user browsing the network is small, the result string generated by the conventional method for generating the identification data will be the same, resulting in the same result. Different network users (users) are considered to be the same network user because the corresponding string results are the same. As a result, the user's network behavior cannot be correctly tracked, and the online advertisement cannot be accurately placed.
因此,本發明的目的,即在提供一種區別度更高的識別資料的產生方法。 Accordingly, it is an object of the present invention to provide a method of generating a more distinctive identification material.
於是,本發明識別資料的產生方法,適用於一第一電腦裝置,並包含步驟(a)~(c)。 Therefore, the method for generating the identification data of the present invention is applicable to a first computer device and includes steps (a) to (c).
步驟(a):藉由該第一電腦裝置與一第二電腦裝置建立連線。 Step (a): establishing a connection between the first computer device and a second computer device.
步驟(b):當該第二電腦以瀏覽器瀏覽該第一電腦裝置所儲存的資料時,藉由該第一電腦裝置偵測並接收相關於該第二電腦裝置的一軟體資訊及一硬體資訊。 Step (b): when the second computer browses the data stored by the first computer device by using the browser, the first computer device detects and receives a software information related to the second computer device and a hard Body information.
步驟(c):藉由該第一電腦裝置依序以Canvas元素(Element)及MD5訊息摘要演算法對該軟體資訊及該硬體資訊執 行第一次加密及第二次加密,而產生一對應該第二電腦裝置的識別資料。 Step (c): performing the software information and the hardware information by using the Canvas element (Element) and the MD5 message digest algorithm in sequence by the first computer device The first encryption and the second encryption are performed, and a pair of identification data corresponding to the second computer device is generated.
在一些實施態樣中,其中,在步驟(c)中,該第一電腦裝置以Canvas的fillText指令,將對應該軟體資訊及該硬體資訊的一字串內容繪製成一圖像,而獲得對應該圖像的一編碼內容,以作為第一次加密的結果。 In some implementations, in step (c), the first computer device draws a string of content corresponding to the software information and the hardware information into an image by using a fillText instruction of the Canvas, and obtains a pair A coded content of the image should be used as a result of the first encryption.
在一些實施態樣中,其中,在步驟(c)中,該第一電腦裝置以MD5訊息摘要演算法對該編碼內容、該軟體資訊、及該硬體資訊,執行第二次加密,以產生該識別資料。 In some implementations, in step (c), the first computer device performs a second encryption on the encoded content, the software information, and the hardware information by using an MD5 message digest algorithm to generate The identification data.
在一些實施態樣中,其中,在步驟(b)中,該軟體資訊包含一瀏覽器的名稱、一作業系統的名稱、多個已安裝的字型的名稱、一中文種類、一時區數值、一小型文字檔案(Cookie)的寫入設定、一插件開關的設定、及一顯示單元的驅動程式資料之其中至少一者。 In some implementations, in step (b), the software information includes a browser name, a name of a working system, a name of a plurality of installed fonts, a Chinese type, a time zone value, At least one of a small text file (cookie) write setting, a plug-in switch setting, and a display unit driver data.
在一些實施態樣中,其中,在步驟(b)中,該硬體資訊包含一螢幕的解析度、一中央處理器(CPU)的核心數、及一顯示單元的型號之其中至少一者。 In some implementations, in step (b), the hardware information includes at least one of a resolution of a screen, a number of cores of a central processing unit (CPU), and a model of a display unit.
在一些實施態樣中,其中,在步驟(c)中,該識別資料是一128位元的雜湊值(Hash Value)。 In some implementations, wherein in step (c), the identification data is a 128-bit hash value.
本發明的功效在於:藉由該第一電腦裝置對該第二電腦 裝置的該軟體資訊及該硬體資訊,以Canvas元素及MD5訊息摘要演算法作兩次加密,以獲得相對於習知技術能有更高的區別度的識別資料,以辨識或追蹤不同的使用者。 The effect of the present invention is that the second computer is used by the first computer device The software information and the hardware information of the device are encrypted twice by the Canvas element and the MD5 message digest algorithm to obtain identification data with higher discrimination than the prior art, to identify or track different uses. By.
S1~S3‧‧‧步驟 S1~S3‧‧‧ steps
本發明的其他的特徵及功效,將於參照圖式的實施方式中清楚地呈現,其中:圖1是一流程圖,說明本發明識別資料的產生方法的一實施例。 Other features and advantages of the present invention will be apparent from the embodiments of the present invention, wherein: FIG. 1 is a flow chart illustrating an embodiment of a method of generating identification data of the present invention.
在本發明被詳細描述之前,應當注意在以下的說明內容中,類似的元件是以相同的編號來表示。 Before the present invention is described in detail, it should be noted that in the following description, similar elements are denoted by the same reference numerals.
參閱圖1,本發明識別資料的產生方法的一實施例,適用於一第一電腦裝置及一第二電腦裝置,並包含步驟(a)~(c)。該第一電腦裝置提供網站或網頁資訊,該第二電腦裝置可以經由網路與該第一電腦裝置建立連線,使得操作該第二電腦裝置的一使用者可以藉由該第二電腦裝置所安裝的軟體(例如瀏覽器),瀏覽該第一電腦裝置所提供的該網站或網頁資訊。該第一電腦裝置例如是一伺服器,該第二電腦裝置例如是一桌上型電腦、一筆記型電腦、一平板 電腦、一智慧型手機等等,不在此限。 Referring to FIG. 1, an embodiment of a method for generating identification data of the present invention is applicable to a first computer device and a second computer device, and includes steps (a) to (c). The first computer device provides website or webpage information, and the second computer device can establish a connection with the first computer device via the network, so that a user operating the second computer device can use the second computer device The installed software (such as a browser) browses the website or webpage information provided by the first computer device. The first computer device is, for example, a server, and the second computer device is, for example, a desktop computer, a notebook computer, and a tablet. Computers, a smart phone, etc., are not limited to this.
在步驟(a),該第一電腦裝置與一第二電腦裝置建立連線。 In step (a), the first computer device establishes a connection with a second computer device.
在步驟(b),當該第二電腦裝置以瀏覽器瀏覽該第一電腦裝置所儲存的資料時,藉由該第一電腦裝置偵測並接收相關於該第二電腦裝置的一軟體資訊及一硬體資訊。更具體的說,該軟體資訊包含一瀏覽器的名稱、一作業系統的名稱、多個已安裝的字型的名稱、一中文種類、一時區數值、一小型文字檔案(Cookie)的寫入設定、一插件開關的設定、及一顯示單元的驅動程式資料之其中至少一者。該硬體資訊包含一螢幕的解析度、一中央處理器(CPU)的核心數、及一顯示單元的型號之其中至少一者。 In the step (b), when the second computer device browses the data stored in the first computer device by using the browser, the first computer device detects and receives a software information related to the second computer device and A hard body of information. More specifically, the software information includes a browser name, a name of an operating system, a name of a plurality of installed fonts, a Chinese type, a time zone value, and a write setting of a small text file (Cookie). At least one of a setting of a plug-in switch and a driver data of a display unit. The hardware information includes at least one of a resolution of a screen, a number of cores of a central processing unit (CPU), and a model of a display unit.
在步驟(c),該第一電腦裝置依序以Canvas元素(Element)及MD5訊息摘要演算法對該軟體資訊及該硬體資訊執行第一次加密及第二次加密,而產生一對應該第二電腦裝置的識別資料。Canvas元素是一種HTML5的一部份,允許指令碼語言動態呈現點陣圖像(Bitmap Image)。 In step (c), the first computer device sequentially performs the first encryption and the second encryption on the software information and the hardware information by using the Canvas element (Element) and the MD5 message digest algorithm, and generates a pair of responses. Identification data of the second computer device. The Canvas element is part of HTML5 that allows the script language to dynamically render a bitmap image (Bitmap Image).
更詳細地說,該第一電腦裝置以Canvas的fillText指令,將對應該軟體資訊及該硬體資訊的一字串內容繪製成一圖像,而獲得對應該圖像的一編碼內容,以作為第一次加密的結果。 In more detail, the first computer device draws a string of content corresponding to the software information and the hardware information into an image by using a fillText instruction of the Canvas, and obtains an encoded content corresponding to the image as the first The result of one encryption.
舉例來說,該字串內容為「Firefox-Windows 7|32bits -24|1680|1050|1680|1010-Agency FB|Aharoni|...Latin-lang=zh-TW-GMT:8-false-Shockwave Flash-NPSWF32.dll-2-ANGLE(Intel(R)HD Graphics Direct3D11)-Google Inc.」,其中,「Firefox」是瀏覽器的名稱,「Windows 7|32bits」是作業系統的名稱,「24|1680|1050|1680|1010」是螢幕的解析度,「Agency FB|Aharoni|...Latin」是多個已安裝的字型的名稱,「lang=zh-TW」是中文種類(如繁體中文),「GMT:8」是時區數值,「false」是小型文字檔案(Cookie)的寫入設定(如否),「Shockwave Flash-NPSWF32.dll」是插件開關的設定,「2」是中央處理器的核心數(如2個),「ANGLE(Intel(R)HD Graphics Direct3D11)」是顯示單元(如顯示卡)的型號,「Google Inc.」是顯示單元的驅動程式資料。 For example, the string content is "Firefox-Windows 7|32bits -24|1680|1050|1680|1010-Agency FB|Aharoni|. . . Latin-lang=zh-TW-GMT: 8-false-Shockwave Flash-NPSWF32.dll-2-ANGLE(Intel(R)HD Graphics Direct3D11)-Google Inc.", where "Firefox" is the name of the browser. "Windows 7|32bits" is the name of the operating system, "24|1680|1050|1680|1010" is the resolution of the screen, and "Agency FB|Aharoni|...Latin" is the name of multiple installed fonts. "lang=zh-TW" is a Chinese type (such as Traditional Chinese), "GMT:8" is a time zone value, and "false" is a small text file (Cookie) write setting (if no), "Shockwave Flash-NPSWF32" .dll" is the setting of the plug-in switch, "2" is the number of cores of the central processing unit (such as 2), "ANGLE (Intel(R)HD Graphics Direct3D11)" is the model of the display unit (such as display card), "Google Inc. is the driver data for the display unit.
承前述的例子,該圖像是一種點陣圖像(Bitmap Image),且該圖像所顯示的內容即是該字串內容,而對應該圖像的該編碼內容則為iVBORw0KG...等一長串的亂碼,以作為該第一次加密的結果。也就是說,該編碼內容會根據該軟體資訊及硬體資訊的不同而不相同,進而產生不同的第一次加密結果。 According to the foregoing example, the image is a bitmap image, and the content displayed by the image is the content of the string, and the encoded content corresponding to the image is iVBORw0KG. . . Wait for a long list of garbled characters as a result of the first encryption. That is to say, the encoded content will be different according to the difference between the software information and the hardware information, thereby generating different first encryption results.
該第一電腦裝置再以MD5訊息摘要演算法對該編碼內容(即第一次加密的結果)、該軟體資訊、及該硬體資訊,再執行第二次加密,進而產生該識別資料。該識別資料是一個128位元的雜 湊值(Hash Value)。以前述的例子來說,該識別資料是c9396fc46af473107196bb311c26a154。 The first computer device then performs the second encryption on the encoded content (ie, the result of the first encryption), the software information, and the hardware information by using the MD5 message digest algorithm, thereby generating the identification data. The identification data is a 128-bit miscellaneous Hash Value. In the foregoing example, the identification material is c9396fc46af473107196bb311c26a154.
綜上所述,本發明識別資料的產生方法藉由對使用者的第二電腦裝置的軟體資訊及硬體資訊,先以Canvas元素作第一次加密,再以MD5訊息摘要演算法對第一次加密的結果加上該軟體資訊及該硬體資訊作第二次加密,以產生該識別資料,使得不同的使用者的電腦裝置相較於習知技術在軟硬體差異不大時,也能獲得具有差異的識別資料,而提高區別度,故確實能達成本發明的目的。 In summary, the method for generating the identification data of the present invention first encrypts the software information and the hardware information of the second computer device of the user, and first encrypts the Canvas element, and then uses the MD5 message digest algorithm to deal with the first The result of the secondary encryption is added to the software information and the hardware information for the second encryption to generate the identification data, so that different users' computer devices are less different between the software and hardware than the conventional technology. The identification data having the difference can be obtained, and the degree of discrimination can be improved, so that the object of the present invention can be achieved.
惟以上所述者,僅為本發明的實施例而已,當不能以此限定本發明實施的範圍,凡是依本發明申請專利範圍及專利說明書內容所作的簡單的等效變化與修飾,皆仍屬本發明專利涵蓋的範圍內。 However, the above is only the embodiment of the present invention, and the scope of the invention is not limited thereto, and all the simple equivalent changes and modifications according to the scope of the patent application and the patent specification of the present invention are still Within the scope of the invention patent.
S1~S3‧‧‧步驟 S1~S3‧‧‧ steps
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106110098A TWI602079B (en) | 2017-03-27 | 2017-03-27 | Identification of the method of generating data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106110098A TWI602079B (en) | 2017-03-27 | 2017-03-27 | Identification of the method of generating data |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI602079B true TWI602079B (en) | 2017-10-11 |
TW201835811A TW201835811A (en) | 2018-10-01 |
Family
ID=61011195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106110098A TWI602079B (en) | 2017-03-27 | 2017-03-27 | Identification of the method of generating data |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI602079B (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200914798A (en) * | 2007-09-17 | 2009-04-01 | Mitac Int Corp | Navigation provision system and framework for providing content to an end user |
US8656361B2 (en) * | 2012-02-06 | 2014-02-18 | Microsoft Corporation | Debugging code visually on a canvas |
-
2017
- 2017-03-27 TW TW106110098A patent/TWI602079B/en active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200914798A (en) * | 2007-09-17 | 2009-04-01 | Mitac Int Corp | Navigation provision system and framework for providing content to an end user |
US8656361B2 (en) * | 2012-02-06 | 2014-02-18 | Microsoft Corporation | Debugging code visually on a canvas |
Also Published As
Publication number | Publication date |
---|---|
TW201835811A (en) | 2018-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3345114B1 (en) | Disabling malicious browser extensions | |
US9237136B2 (en) | Mapping a glyph to character code in obfuscated data | |
CN105681166B (en) | A kind of information sharing method and device | |
US9369474B2 (en) | Analytics data validation | |
US11582266B2 (en) | Method and system for protecting privacy of users in session recordings | |
US20150186662A1 (en) | Method and apparatus for input verification | |
EP3114601B1 (en) | Access control for a resource | |
US20110296177A1 (en) | Method and system for microlocking web content | |
US20200193066A1 (en) | Web application execution with secure elements | |
JP7077425B2 (en) | Checking the display of third-party content on client devices | |
US11947377B2 (en) | Systems and methods for dynamically restricting the rendering of unauthorized content included in information resources | |
US20160359989A1 (en) | Recording And Triggering Web And Native Mobile Application Events With Mapped Data Fields | |
US20210344661A1 (en) | System and method for detecting unauthorized activity at an electronic device | |
US20100257413A1 (en) | Verification service for dynamic content update | |
CN109818906B (en) | Equipment fingerprint information processing method and device and server | |
WO2019134276A1 (en) | Method and system for protecting web page code, storage medium, and electronic device | |
US20150212981A1 (en) | Providing print view of document for editing in web-based application | |
CN111783119B (en) | Form data security control method, form data security control device, electronic equipment and storage medium | |
US10289613B2 (en) | Element identifier generation | |
JP7041282B2 (en) | Improved data integrity with trusted code proof tokens | |
TWI602079B (en) | Identification of the method of generating data | |
TW201029424A (en) | System and method of network authentication | |
US20230080601A1 (en) | Webpage integrity monitoring | |
EP3306489A1 (en) | Interaction record query processing method and device | |
KR20210144648A (en) | Crowdsourcing prevents misinformation |