999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

不同設備基于Html5 Canvas的瀏覽器渲染結果比較

2016-12-31 00:00:00戴三鳳
文化產業 2016年13期

摘 要:Html5 Canvas畫布渲染屬性被廣泛的應用于客戶端指紋跟蹤系統中,與其他設備屬性不同的是,Html5 Canvas的渲染結果是用戶無法改變,且非常穩定的。但是H5 Canvas的唯一性如何呢?對于海量數據來說,H5 Canvas的熵表現會如何呢?文中將從H5 Canvas渲染原理,技術實現方式,數據采集結果分析角度,解答這兩個問題。

關鍵詞:H5 Canvas;設備指紋;熵

近年來,進入移動數字時代后,各種各樣的移動設備充斥著我們每天的生活。對于服務提供商來說,客戶端的設備也從之前單純的個人PC,增加了各種各樣的手機、平板、智能手表、智能電視等其他終端。追蹤用戶,記錄用戶的使用習慣,對用戶行為分析已不是什么秘密。Html5 Canvas畫布渲染屬性被廣泛的應用于客戶端指紋跟蹤系統中,與其他設備屬性不同的是,Html5 Canvas的渲染結果是用戶無法改變,且非常穩定的。那么,在不同平臺下,Html5 Canvas在各種瀏覽器下的唯一性表現如何呢?Html5 Canvas是否具有很強的設備區分度?

一、Html5 Canvas原理簡介

Html5 Canvas畫布渲染原理是利用Html5 Canvas的繪畫功能,在網頁上繪制一張圖片,因為Canvas是一種2D的渲染結果,在圖片的渲染過程中,會涉及操作系統對頁面像素的處理,GPU對于顯示效果的渲染,以及不同的瀏覽器對于字體等的渲染疊加。所以,Canvas渲染不再是單純的Html5的結果,而是操作系統、GPU、瀏覽器相互作用疊加的結果。也因此,不同的設備,在不同的操作系統GPU、瀏覽器下,同一段文字,一張圖片展現出來的效果是存在差異的。而且,Html5 Canvas可以非常方便的把一張圖片轉換成64位進制,對其取哈希值后,可以非常方便的比較。

二、Html5 Canvas的技術可行性

Canvas是Html5的一個屬性,canvas在高級瀏覽器中被廣泛的支持。如Chrome,firefox,IE9以上等瀏覽器都支持。

Canvas的優點:Canvas是H5的畫布元素,即一個DOM元素。通過腳本控制邏輯給畫布上增加文字與圖像,而瀏覽器只需要繪制一次形成一幅圖。

只用一個Canvas DOM元素,降低DOM數量與渲染的復雜度,可以將原來CPU密集型變成GPU操作。絕大多數針對Canvas是用硬件GPU加速渲染 ;

GPU的ALU(計算單元)比CPU要多很多,而控制運算(邏輯)則可以用JavaScript在CPU里做,甚至還可以用WebWorker多線程處理CPU密集型的操作,從而達到充分利用硬件資源的能力;

Canvas畫布無論是JavaScriptH5,還是Native都有類似的API。

基于Canvas的特性,一容易獲取,高級瀏覽器都支持,二,用GPU渲染,因為不同設備的GPU不同,渲染的結果也不同,再加上瀏覽器,操作系統的差異,最終Canvas圖片的結果有很大的不同。而且這種渲染結果具有非常高的穩定性,在硬件軟件條件不變情況下同一臺設備,同樣文字在同一個瀏覽器中多次渲染是一樣的。

三、Html5 Canvas在不同瀏覽器中的表現

在Html5 Canvas中顯示: Welcome to Jiaotong University! I'm font: 18pt Arial! 字體Arial,18pt,黑色。

JavaScript代碼片段如下:

<!--Text_Arail-->

var canvas=document.getElementById(\"drawing\");

var context=canvas.getContext(\"2d\");

context.font=\"18pt Arial\";

context.textBaseline =\"top\";

context.fillText(\"Welcome to Jiaotong University! I'm font: 18pt Arial\",2,2);

<!--Get Canvas Image base64 data-->

var dataURL = canvas.toDataURL();

document.getElementById(\"drawing_base64\").innerHTML=dataURL;

這段代碼在不同瀏覽器中會顯示出不同的效果,而且其Hash值也會不一樣。如下結果:

在Firefox瀏覽器中顯示如下:

在IE 8 瀏覽器中效果:

四、海量數據下Html5 Canvas的唯一性

在相同操作系統,相同瀏覽器,同一品牌下的canvas屬性表現出很強的一致性。

在iOS系統中:

在iOS中,通一段文字在不同產品下,如iPod touch、iPad、iPhone中表現出高度的一致性,并且不同iOS版本下,依然體現出驚人一致的渲染結果。見表3

而相比于iOS產品結構比較簡單,Android產品則是遍地開花,那么在各種各樣品牌下,Canvas的渲染結果如何呢?

在Android系統中:

如表4所示,同一段文字,在不同品牌的Android手機,相同類型瀏覽器,渲染出來的Canvas Hash值是一樣的,并且跟操作系統的版本號、瀏覽器版本、屏幕的尺寸大小,并沒有絕對的關系。Canvas屬性,在Android系統中,渲染結果的唯一性也是不高。

在PC Web中:

在PC中,不同瀏覽器,Canvas能表現出一定差異性,這種差異性在相同操作系統的鄰近版本中,表現不明顯,且跟屏幕尺寸關系不大。見表5。

五、海量數據下Html5 Canvas熵

通過計算,在10萬數據集下,一個字符串類型的Html5 Text Canvas 熵為5.37。

六、結論

如果從單一的Html5 Canvas字體渲染結果來看,Html5 Canvas在不同操作系統中的區分度明顯,跟瀏覽器類型有一定關系,但跟屏幕尺寸大小關系不大。單一的Html5 Canvas字體渲染的熵為5.37,并不是很好,不能很好的區分不同的設備。在實際應用中,為了增加Canvas的辨識度,可以考慮添加不同字體類型、多種圖形交叉渲染、增加畫面顏色、曲線的復雜度等,來提升Html5 Canvas的熵。

主站蜘蛛池模板: 九九香蕉视频| AV在线麻免费观看网站| 欧美劲爆第一页| 国产永久无码观看在线| 婷婷伊人久久| 久久精品免费看一| 精品久久久久久中文字幕女| 五月激情综合网| 精品国产网| 亚洲精品爱草草视频在线| 欧美a在线看| 国产网友愉拍精品| 亚洲精品在线91| 午夜视频在线观看免费网站| 精品人妻无码中字系列| 国产福利在线观看精品| 国产精品护士| 日韩无码真实干出血视频| 91欧美亚洲国产五月天| 天堂av综合网| 制服丝袜 91视频| 欧美一级爱操视频| 久久久久国色AV免费观看性色| 国产最新无码专区在线| 性视频久久| 丁香综合在线| 亚洲精品无码久久久久苍井空| 国产不卡在线看| 亚洲人免费视频| 国产精品私拍99pans大尺度| 99在线观看国产| 亚洲二区视频| 青青青国产免费线在| 青青热久免费精品视频6| 色婷婷天天综合在线| 欧美日韩国产在线播放| 日韩免费成人| 在线欧美a| 国产成人亚洲欧美激情| 精品成人一区二区| 日韩a在线观看免费观看| 亚洲日本中文综合在线| 免费99精品国产自在现线| 99re这里只有国产中文精品国产精品 | av在线无码浏览| 在线精品亚洲一区二区古装| 国产伦片中文免费观看| 亚洲日韩精品欧美中文字幕| 波多野结衣一级毛片| 国产精品手机在线观看你懂的| 园内精品自拍视频在线播放| 激情五月婷婷综合网| 热久久综合这里只有精品电影| 国产午夜人做人免费视频| 久久无码高潮喷水| 国产在线观看成人91| A级毛片高清免费视频就| 国产精品久久久久久久伊一| 中文字幕日韩久久综合影院| 毛片视频网址| 97成人在线视频| 亚洲国产成人精品一二区| 国产视频 第一页| 91精品视频播放| 999国内精品久久免费视频| 亚洲第一极品精品无码| 欧美一级高清片欧美国产欧美| 国产精品开放后亚洲| 99资源在线| 亚洲高清无码久久久| 国产91久久久久久| 欧美国产三级| 国产在线观看一区精品| 免费精品一区二区h| 夜精品a一区二区三区| 国产91无毒不卡在线观看| 亚洲最新在线| 日韩在线成年视频人网站观看| 国产成人综合日韩精品无码不卡| 国产国语一级毛片| 色哟哟国产精品| 五月婷婷激情四射|