Paraan ng pagkakakilanlan ng system ng user batay sa impormasyon ng GPU

Ang mga mananaliksik mula sa Ben-Gurion University (Israel), University of Lille (France) at University of Adelaide (Australia) ay nakabuo ng isang bagong pamamaraan para sa pagtukoy ng mga device ng user sa pamamagitan ng pag-detect ng mga parameter ng operating ng GPU sa isang web browser. Ang pamamaraan ay tinatawag na "Drawn Apart" at nakabatay sa paggamit ng WebGL upang makakuha ng isang profile ng pagganap ng GPU, na maaaring makabuluhang mapabuti ang katumpakan ng mga passive na paraan ng pagsubaybay na gumagana nang walang paggamit ng Cookies at walang pag-iimbak ng isang identifier sa system ng user.

Ang mga pamamaraan na isinasaalang-alang ang mga tampok ng pag-render, GPU, graphics stack at mga driver kapag natukoy ay ginamit dati, ngunit ang mga ito ay limitado sa kakayahang paghiwalayin ang mga device lamang sa antas ng iba't ibang mga modelo ng mga video card at GPU, i.e. maaari lamang gamitin bilang karagdagang salik upang mapataas ang posibilidad ng pagkakakilanlan. Ang pangunahing tampok ng bagong "Drawn Apart" na pamamaraan ay hindi nito nililimitahan ang sarili nito sa paghihiwalay ng iba't ibang mga modelo ng GPU, ngunit sinusubukang tukuyin ang mga pagkakaiba sa pagitan ng magkaparehong mga GPU ng parehong modelo dahil sa heterogeneity ng proseso ng pagmamanupaktura ng mga chip na idinisenyo para sa napakalaking parallel. pagcompute. Napansin na ang mga pagkakaiba-iba na lumitaw sa panahon ng proseso ng produksyon ay ginagawang posible na bumuo ng hindi umuulit na mga cast para sa parehong mga modelo ng device.

Paraan ng pagkakakilanlan ng system ng user batay sa impormasyon ng GPU

Napag-alaman na ang mga pagkakaibang ito ay maaaring makilala sa pamamagitan ng pagbibilang ng bilang ng mga yunit ng pagpapatupad at pagsusuri ng kanilang pagganap sa GPU. Ang mga tseke batay sa isang hanay ng mga trigonometriko na pag-andar, lohikal na operasyon at mga kalkulasyon ng floating point ay ginamit bilang mga primitive upang matukoy ang iba't ibang mga modelo ng GPU. Upang matukoy ang mga pagkakaiba sa parehong mga GPU, tinantya ang bilang ng sabay-sabay na pag-execute ng mga thread kapag nagpapatupad ng mga vertex shader. Ipinapalagay na ang natukoy na epekto ay sanhi ng mga pagkakaiba-iba sa mga kondisyon ng temperatura at paggamit ng kuryente ng iba't ibang mga pagkakataon ng mga chips (dati, ang isang katulad na epekto ay ipinakita para sa mga CPU - ang magkatulad na mga processor ay nagpakita ng iba't ibang paggamit ng kuryente kapag nagsasagawa ng parehong code).

Dahil ang mga pagpapatakbo sa pamamagitan ng WebGL ay ginagawa nang asynchronous, ang JavaScript API performance.now() ay hindi maaaring gamitin nang direkta upang sukatin ang kanilang tagal ng pagpapatupad, kaya tatlong trick ang iminungkahi upang sukatin ang oras:

  • onscreen β€” pagre-render ng eksena sa isang HTML canvas, sinusukat ang oras ng pagtugon ng callback function, itinakda sa pamamagitan ng Window.requestAnimationFrame API at tinawag pagkatapos makumpleto ang pag-render.
  • offscreen - gamit ang isang manggagawa at ginagawa ang eksena sa isang OffscreenCanvas object, sinusukat ang oras ng pagpapatupad ng convertToBlob command.
  • GPU - Gumuhit sa isang OffscreenCanvas object, ngunit gumamit ng timer na ibinigay ng WebGL upang sukatin ang oras na isinasaalang-alang ang tagal ng isang hanay ng mga command sa gilid ng GPU.

Sa panahon ng proseso ng paggawa ng ID, 50 pagsubok ang isinasagawa sa bawat device, bawat isa ay sumasaklaw sa 176 na sukat ng 16 na magkakaibang katangian. Isang eksperimento na nangongolekta ng impormasyon sa 2500 device na may 1605 iba't ibang GPU ay nagpakita ng 67% na pagtaas sa kahusayan ng pinagsamang mga paraan ng pagkakakilanlan kapag nagdaragdag ng suporta sa Drawn Apart. Sa partikular, ang pinagsamang paraan ng FP-STALKER ay nagbigay ng pagkakakilanlan sa loob ng 17.5 araw sa karaniwan, at kapag pinagsama sa Drawn Apart, ang tagal ng pagkakakilanlan ay tumaas sa 28 araw.

Paraan ng pagkakakilanlan ng system ng user batay sa impormasyon ng GPU

  • Ang katumpakan ng paghihiwalay ng 10 system na may Intel i5-3470 chips (GEN 3 Ivy Bridge) at Intel HD Graphics 2500 GPU sa onscreen test ay 93%, at sa offscreen test ay 36.3%.
  • Para sa 10 Intel i5-10500 system (GEN 10 Comet Lake) na may NVIDIA GTX1650 video card, ang katumpakan ay 70% at 95.8%.
  • Para sa 15 Intel i5-8500 system (GEN 8 Coffee Lake) na may Intel UHD Graphics 630 GPU - 42% at 55%.
  • Para sa 23 Intel i5-4590 (GEN 4 Haswell) system na may Intel HD Graphics 4600 GPU – 32.7% at 63.7%.
  • Para sa anim na Samsung Galaxy S20/S20 Ultra smartphone na may Mali-G77 MP11 GPU, ang katumpakan ng pagkakakilanlan sa on-screen na pagsubok ay 92.7%, at para sa Samsung Galaxy S9/S9+ smartphone na may Mali-G72 MP18 ito ay 54.3%.

Paraan ng pagkakakilanlan ng system ng user batay sa impormasyon ng GPU

Napansin na ang katumpakan ay naapektuhan ng temperatura ng GPU, at para sa ilang device, ang pag-reboot ng system ay humantong sa isang pagbaluktot ng identifier. Kapag ginagamit ang pamamaraan kasama ng iba pang hindi direktang paraan ng pagkakakilanlan, ang katumpakan ay maaaring tumaas nang malaki. Plano rin nilang pataasin ang katumpakan sa pamamagitan ng paggamit ng mga compute shader pagkatapos ng pag-stabilize ng bagong WebGPU API.

Ang Intel, ARM, Google, Khronos, Mozilla at Brave ay naabisuhan tungkol sa problema noong 2020, ngunit ang mga detalye ng pamamaraan ay inihayag lamang ngayon. Nag-publish din ang mga mananaliksik ng mga gumaganang halimbawa na nakasulat sa JavaScript at GLSL na maaaring gumana nang walang pagpapakita ng impormasyon sa screen. Gayundin, para sa mga system na nakabatay sa GPU Intel GEN 3/4/8/10, ang mga set ng data ay na-publish para sa pag-uuri ng nakuhang impormasyon sa mga machine learning system.

Pinagmulan: opennet.ru

Magdagdag ng komento