You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

121 lines
36 KiB

5 years ago
/* fp@iotcat v2.0.1 */
;(function(e,r,a){"use strict";if(typeof window!=="undefined"&&typeof define==="function"&&define.amd){define(a)}else if(typeof module!=="undefined"&&module.exports){module.exports=a()}else if(r.exports){r.exports=a()}else{r[e]=a()}})("fp",this,function(){"use strict";var l=.8;var f=function(e,r){e=[e[0]>>>16,e[0]&65535,e[1]>>>16,e[1]&65535];r=[r[0]>>>16,r[0]&65535,r[1]>>>16,r[1]&65535];var a=[0,0,0,0];a[3]+=e[3]+r[3];a[2]+=a[3]>>>16;a[3]&=65535;a[2]+=e[2]+r[2];a[1]+=a[2]>>>16;a[2]&=65535;a[1]+=e[1]+r[1];a[0]+=a[1]>>>16;a[1]&=65535;a[0]+=e[0]+r[0];a[0]&=65535;return[a[0]<<16|a[1],a[2]<<16|a[3]]};var d=function(e,r){e=[e[0]>>>16,e[0]&65535,e[1]>>>16,e[1]&65535];r=[r[0]>>>16,r[0]&65535,r[1]>>>16,r[1]&65535];var a=[0,0,0,0];a[3]+=e[3]*r[3];a[2]+=a[3]>>>16;a[3]&=65535;a[2]+=e[2]*r[3];a[1]+=a[2]>>>16;a[2]&=65535;a[2]+=e[3]*r[2];a[1]+=a[2]>>>16;a[2]&=65535;a[1]+=e[1]*r[3];a[0]+=a[1]>>>16;a[1]&=65535;a[1]+=e[2]*r[2];a[0]+=a[1]>>>16;a[1]&=65535;a[1]+=e[3]*r[1];a[0]+=a[1]>>>16;a[1]&=65535;a[0]+=e[0]*r[3]+e[1]*r[2]+e[2]*r[1]+e[3]*r[0];a[0]&=65535;return[a[0]<<16|a[1],a[2]<<16|a[3]]};var g=function(e,r){r%=64;if(r===32){return[e[1],e[0]]}else if(r<32){return[e[0]<<r|e[1]>>>32-r,e[1]<<r|e[0]>>>32-r]}else{r-=32;return[e[1]<<r|e[0]>>>32-r,e[0]<<r|e[1]>>>32-r]}};var v=function(e,r){r%=64;if(r===0){return e}else if(r<32){return[e[0]<<r|e[1]>>>32-r,e[1]<<r]}else{return[e[1]<<r-32,0]}};var h=function(e,r){return[e[0]^r[0],e[1]^r[1]]};var m=function(e){e=h(e,[0,e[0]>>>1]);e=d(e,[4283543511,3981806797]);e=h(e,[0,e[0]>>>1]);e=d(e,[3301882366,444984403]);e=h(e,[0,e[0]>>>1]);return e};var s=function(e,r){e=e||"";r=r||0;var a=e.length%16;var t=e.length-a;var n=[0,r];var i=[0,r];var o=[0,0];var u=[0,0];var l=[2277735313,289559509];var s=[1291169091,658871167];for(var c=0;c<t;c=c+16){o=[e.charCodeAt(c+4)&255|(e.charCodeAt(c+5)&255)<<8|(e.charCodeAt(c+6)&255)<<16|(e.charCodeAt(c+7)&255)<<24,e.charCodeAt(c)&255|(e.charCodeAt(c+1)&255)<<8|(e.charCodeAt(c+2)&255)<<16|(e.charCodeAt(c+3)&255)<<24];u=[e.charCodeAt(c+12)&255|(e.charCodeAt(c+13)&255)<<8|(e.charCodeAt(c+14)&255)<<16|(e.charCodeAt(c+15)&255)<<24,e.charCodeAt(c+8)&255|(e.charCodeAt(c+9)&255)<<8|(e.charCodeAt(c+10)&255)<<16|(e.charCodeAt(c+11)&255)<<24];o=d(o,l);o=g(o,31);o=d(o,s);n=h(n,o);n=g(n,27);n=f(n,i);n=f(d(n,[0,5]),[0,1390208809]);u=d(u,s);u=g(u,33);u=d(u,l);i=h(i,u);i=g(i,31);i=f(i,n);i=f(d(i,[0,5]),[0,944331445])}o=[0,0];u=[0,0];switch(a){case 15:u=h(u,v([0,e.charCodeAt(c+14)],48));case 14:u=h(u,v([0,e.charCodeAt(c+13)],40));case 13:u=h(u,v([0,e.charCodeAt(c+12)],32));case 12:u=h(u,v([0,e.charCodeAt(c+11)],24));case 11:u=h(u,v([0,e.charCodeAt(c+10)],16));case 10:u=h(u,v([0,e.charCodeAt(c+9)],8));case 9:u=h(u,[0,e.charCodeAt(c+8)]);u=d(u,s);u=g(u,33);u=d(u,l);i=h(i,u);case 8:o=h(o,v([0,e.charCodeAt(c+7)],56));case 7:o=h(o,v([0,e.charCodeAt(c+6)],48));case 6:o=h(o,v([0,e.charCodeAt(c+5)],40));case 5:o=h(o,v([0,e.charCodeAt(c+4)],32));case 4:o=h(o,v([0,e.charCodeAt(c+3)],24));case 3:o=h(o,v([0,e.charCodeAt(c+2)],16));case 2:o=h(o,v([0,e.charCodeAt(c+1)],8));case 1:o=h(o,[0,e.charCodeAt(c)]);o=d(o,l);o=g(o,31);o=d(o,s);n=h(n,o)}n=h(n,[0,e.length]);i=h(i,[0,e.length]);n=f(n,i);i=f(i,n);n=m(n);i=m(i);n=f(n,i);i=f(i,n);return("00000000"+(n[0]>>>0).toString(16)).slice(-8)+("00000000"+(n[1]>>>0).toString(16)).slice(-8)+("00000000"+(i[0]>>>0).toString(16)).slice(-8)+("00000000"+(i[1]>>>0).toString(16)).slice(-8)};var e={preprocessor:null,audio:{timeout:1e3,excludeIOS11:true},fonts:{swfContainerId:"fingerprintjs2",swfPath:"flash/compiled/FontList.swf",userDefinedFonts:[],extendedJsFonts:false},screen:{detectScreenOrientation:true},plugins:{sortPluginsFor:[/palemoon/i],excludeIE:false},extraComponents:[],excludes:{enumerateDevices:true,pixelRatio:true,doNotTrack:true,fontsFlash:true},NOT_AVAILABLE:"not available",ERROR:"error",EXCLUDED:"excluded"};var p=function(e,r){if(Array.prototype.forEach&&e.forEach===Array.prototype.forEach){e.forEach(r)}else if(e.length===+e.length){for(var a=0,t=e.length;a<t;a++){r(e[a],a,e)}}else{for(var n in e){if(e.hasOwnProperty(n)){r(e[n],n,e)}}}};var u=function(e
/* page reload */
$('title').remove();
$('head').append('<title>' + page.title + '</title>');
$('[rel="icon"]').remove();
$('head').append('<link rel="icon" type="image/x-icon" href="' + page.icon + '">');
if(!$('[name="viewport"]').length) {
$('head').append('<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">');
}
if(!$('[name="keywords"]').length) {
$('head').append('<meta name="keywords" content="Ushio,iotcat,yimian">');
}
if(!$('[name="description"]').length) {
$('head').append('<meta name="description" content="小汐の页">');
}
/* out&in event amine */
function getHiddenProp() {
var prefixes = ['webkit', 'moz', 'ms', 'o'];
if ('hidden' in document) return 'hidden';
for (var i = 0; i < prefixes.length; i++) {
if ((prefixes[i] + 'Hidden') in document)
return prefixes[i] + 'Hidden';
}
return null;
}
function getVisibilityState() {
var prefixes = ['webkit', 'moz', 'ms', 'o'];
if ('visibilityState' in document) return 'visibilityState';
for (var i = 0; i < prefixes.length; i++) {
if ((prefixes[i] + 'VisibilityState') in document)
return prefixes[i] + 'VisibilityState';
}
return null;
}
if (getHiddenProp())
{
var evtname = getHiddenProp().replace(/[H|h]idden/, '') + 'visibilitychange';
document.addEventListener(evtname, function ()
{
if(document[getVisibilityState()] == "hidden") {
log_update();
var rand = Math.random() * 100;
if(rand < 30) document.title = '啊咧(⊙0⊙)';
else if(rand < 55) document.title = '快来戳我呀( ´∀`)σ';
else if(rand < 75) document.title = '躲起来(´・ω・`)';
else document.title = '哎呦,页面崩掉了吗(>﹏<)';
setTimeout("document.title = page.title", 2400);
clearInterval(page.TimerObj);
page.TimerObj = null;
}
if(document[getVisibilityState()] == "visible") {
document.title = page.title;
if(page.TimerObj == null) page.TimerObj = setInterval("page.Timer++", 1000);
}
}, false);
}
/* log */
function log_ini() {
5 years ago
if(page.params['fpKey'] == undefined || page.params['fpKey'].length < 20){
fp(fp_callback);
}else{
fp(page.params['fpKey'], fp_callback);
}
}
function fp_callback(myFp, key, acc, detail, createdTime, timeUsed, detailObj) {
page.fp = myFp;
5 years ago
page.fpKey = key;
$.post("https://log.yimian.xyz/iis.php",{
"fp":myFp,
5 years ago
"url": page.url,
"lang": detailObj.language,
"timezone": detailObj.timezone,
"platform": detailObj.platform,
"ram": detailObj.deviceMemory,
"screen": detailObj.screenResolution,
"userAgent": detailObj.userAgent,
"webgl": detailObj.webglVendorAndRenderer
}, function(res){
page.sid = JSON.parse(res).sid;
page.ip = JSON.parse(res).ip;
console.log('\n' + ' %c Ushio v1.0.1 %c ' + page.ip + ' %c https://ushio.xyz \n', 'color: #FFFFCC; background: #030307; padding:5px 0;', 'color: #FF99FF; background: #030307; padding:5px 0;', 'background: #4682B4; padding:5px 0;');
5 years ago
updateHref();
});
}
function log_update() {
$.post('https://log.yimian.xyz/iis.php',{
"sid": page.sid,
"sessiontime": page.Timer
})
}
setTimeout("log_ini();", 800);
5 years ago
/* update the href in <a> with fp and from*/
function updateHref(){
var links = $(document).find("a");
for(var index in links) {
var _href = links.eq(index).attr("href");
if(_href != null) {
if(_href.indexOf("?") == -1) links.eq(index).attr("href",_href + "?fpKey=" + page.fp + ((page.host) ? ("&from=https://"+page.host) : ""));
else links.eq(index).attr("href",_href + "&fpKey=" + page.fp + ((page.host) ? ("&from=https://"+page.host) : ""));
}
}
};