网站建设资讯

NEWS

网站建设资讯

javascript指纹,js 浏览器指纹

用Javascript在浏览器端能实现指纹识别吗

您好,浏览器端暂时无法进行指纹识别的操作,因为浏览器的特性,为了防止恶意网站访问用户数据,所以浏览器端能做到的操作极其有限,例如人脸识别,在PC端、iOS端、Android端有,但是移动端没有,就是因为很多信息属于用户私密信息,尽量不让浏览器可以访问到。但是在iOS和安卓上,可以通过H5跟原生交互的方式,在App中调用原生的指纹识别,如果是纯浏览器端,暂时没有这个操作。

站在用户的角度思考问题,与客户深入沟通,找到桓台网站设计与桓台网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广、空间域名、网页空间、企业邮箱。业务覆盖桓台地区。

前端获取浏览器指纹

```JavaScript

!DOCTYPE html

html lang="zh-CN"

head

meta charset="UTF-8"

titleFingerprint2 TEST/title

style

    body {

        color: #555;

    }

    #info {

        font-size: 12px;

    }

    #control span {

        color: #333;

        margin-left: 10px;

    }

/style

/head

body

div id="info"

/p

p纯前端实现的浏览器指纹采集器,通过获取浏览器中所有能获取到的信息(部分通过base64转成String),最后生成出md5,用于该用户在该设备上的唯一标识码,官方宣称准确度高达99.5%/p

/div

div id="control"

button onclick="start()"开始/button

spanuserAgent:/spaninput type="checkbox" id="userAgent" checked="checked"

spanfonts:/spaninput type="checkbox" id="fonts" checked="checked"

spanfontsFlash:/spaninput type="checkbox" id="fontsFlash" checked="checked"

spancanvas:/spaninput type="checkbox" id="canvas" checked="checked"

spanwebgl:/spaninput type="checkbox" id="webgl" checked="checked"

spanaudio:/spaninput type="checkbox" id="audio" checked="checked"

spanenumerateDevices:/spaninput type="checkbox" id="enumerateDevices" checked="checked"

/div

div id="view"

/div

script src=""/script

script

function start() {

    const start = new Date().getTime();

    let view = document.querySelector('#view');

    view.innerHTML = '';

    let excludes = {};

    if (!document.querySelector('#userAgent').checked) {

        excludes.userAgent = true;

    }

    if (!document.querySelector('#audio').checked) {

        excludes.audio = true;

    }

    if (!document.querySelector('#enumerateDevices').checked) {

        excludes.enumerateDevices = true;

    }

    if (!document.querySelector('#fonts').checked) {

        excludes.fonts = true;

    }

    if (!document.querySelector('#fontsFlash').checked) {

        excludes.fontsFlash = true;

    }

    if (!document.querySelector('#webgl').checked) {

        excludes.webgl = true;

    }

    if (!document.querySelector('#canvas').checked) {

        excludes.canvas = true;

    }

    let options = {excludes: excludes}

    Fingerprint2.get(options, function (components) {

        // 参数

        const values = components.map(function (component) {

            return component.value

        });

        // 指纹

        const murmur = Fingerprint2.x64hash128(values.join(''), 31);

        view.innerHTML += 'p指纹 : ' + murmur + '/p';

        view.innerHTML += 'p消耗 : ' + (new Date().getTime() - start) + ' 毫秒/p';

        view.innerHTML += 'p使用的参数 : /p';

        for (const c of components) {

            view.innerHTML += 'p' + c.key + ' : ' + c.value + '/p';

        }

    });

}

/script

/body

/html

```

fingerprintjs未定义

FingerprintJS是一个快速的浏览器指纹库,纯JavaScript实现,没有依赖关系。

FingerPrint即我们常说的指纹识别,使用手指和拇指前端的纹理按下的纹印来鉴定身份。指纹是鉴别身份的一种可靠的法,因为每个人的每个指头上的纹理排列各不相同而且不因发育或年龄而改变。

如何用 js 获取客户端指纹呢

第一次通过平台进入A应用时,我会把A应用的标识存放在sessionStorage里,key为appInfo,然后A未关闭,我又进入了B应用,此时,我也要把B应用的标识存放在sessionStorage里,key也为appInfo,再进入A应用时,此时appInfo已被覆盖为B的标识,拿不到A的标识了。


本文标题:javascript指纹,js 浏览器指纹
分享路径:http://njwzjz.com/article/dscepes.html