рдУрдкрди рд╕реЛрд░реНрд╕ рдлрд╛рдЙрдВрдбреЗрд╢рди рдиреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдкреАрдЖрдИ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрд╢реЗрд▓реНрдЯрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдРрдб-рдСрди рдкреЗрд╢ рдХрд┐рдпрд╛

рдлреНрд░реА рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдлрд╛рдЙрдВрдбреЗрд╢рди рдиреЗ рдЬреЗрд╢реЗрд▓реНрдЯрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреЗрд╢ рдХрд┐рдпрд╛, рдЬреЛ рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдЦрддрд░реЛрдВ рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдРрдб-рдСрди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЫрд┐рдкреА рд╣реБрдИ рдкрд╣рдЪрд╛рди, рдЯреНрд░реИрдХрд┐рдВрдЧ рдЧрддрд┐рд╡рд┐рдзрд┐рдпреЛрдВ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдХрд╛ рд╕рдВрдЪрдп рд╢рд╛рдорд┐рд▓ рд╣реИред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб GPLv3 рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдРрдб-рдСрди рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕, рдЧреВрдЧрд▓ рдХреНрд░реЛрдо, рдУрдкреЗрд░рд╛, рдмреНрд░реЗрд╡, рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рдПрдЬ рдФрд░ рдХреНрд░реЛрдорд┐рдпрдо рдЗрдВрдЬрди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдПрдирдПрд▓рдиреЗрдЯ рдлрд╛рдЙрдВрдбреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рд╡рд┐рддреНрдд рдкреЛрд╖рд┐рдд рдПрдХ рд╕рдВрдпреБрдХреНрдд рдкрд╣рд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдиреЛрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдРрдб-рдСрди рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдЬрд┐рдпреЛрд░реНрдЬрд┐рдпреЛ рдорд╛рдУрди, рд╕рд╛рде рд╣реА рдЬреЗ++ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рдВрд╕реНрдерд╛рдкрдХ рдФрд░ рдЬреЗрдПрд╕-рд╢реАрд▓реНрдб рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд░реЗрд╕реНрдЯреНрд░рд┐рдХреНрдЯрд░ рдРрдб-рдСрди рдХреЗ рд▓реЗрдЦрдХ рднреА рдЬреЗрд╢реЗрд▓реНрдЯрд░ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реБрдПред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд░реЗрд╕реНрдЯреНрд░рд┐рдХреНрдЯрд░ рдРрдб-рдСрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

JShelter рдХреЛ рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдФрд░ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЛрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдРрдб-рдСрди рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рдЪрд╛рд░ рд╕реНрддрд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдПрдкреАрдЖрдИ рддрдХ рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рдЪреАрд▓рд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЛрдб рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд╕реНрддрд░ рд╢реВрдиреНрдп рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рднреА рдПрдкреАрдЖрдИ рддрдХ рдкрд╣реБрдВрдЪ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдкрд╣рд▓реЗ рдореЗрдВ рдиреНрдпреВрдирддрдо рдЕрд╡рд░реЛрдзрди рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдкреГрд╖реНрдареЛрдВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдмрд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рджреВрд╕рд░реЗ рд╕реНрддрд░ рдкрд░ рдЕрд╡рд░реЛрдзрди рдФрд░ рдЕрдиреБрдХреВрд▓рддрд╛ рдХреЗ рдмреАрдЪ рд╕рдВрддреБрд▓рди рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдЪреМрдереЗ рд╕реНрддрд░ рдореЗрдВ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╣рд░ рдЪреАрдЬ рдХрд╛ рд╕рдЦреНрдд рдЕрд╡рд░реЛрдзрди рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИред

рдПрдкреАрдЖрдИ рдмреНрд▓реЙрдХрд┐рдВрдЧ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд╛рдЗрдЯреЛрдВ рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рдордЬрдмреВрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЕрдиреНрдп рдХреЗ рд▓рд┐рдП рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЖрдк рдХреБрдЫ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд┐рдзрд┐рдпреЛрдВ, рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕, рдЧреБрдгреЛрдВ рдФрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдЪреБрдирд┐рдВрджрд╛ рд░реВрдк рд╕реЗ рдмреНрд▓реЙрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рд░рд┐рдЯрд░реНрди рдорд╛рди рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЧрд▓рдд рдЬрд╛рдирдХрд╛рд░реА рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛)ред рдПрдХ рдЕрд▓рдЧ рд╕реБрд╡рд┐рдзрд╛ рдПрдирдмреАрдПрд╕ (рдиреЗрдЯрд╡рд░реНрдХ рд╕реАрдорд╛ рд╢реАрд▓реНрдб) рдореЛрдб рд╣реИ, рдЬреЛ рдкреЗрдЬреЛрдВ рдХреЛ рдмрд╛рд╣рд░реА рдФрд░ рд╕реНрдерд╛рдиреАрдп рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдмреАрдЪ рдкреНрд░реЙрдХреНрд╕реА рдХреЗ рд░реВрдк рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ (рд╕рднреА рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред

рдЕрд╡рд░реБрджреНрдз рдпрд╛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдПрдкреАрдЖрдИ:

  • window.Date, window.performance.now(), window.PerformanceEntry, Event.prototype.timeStamp, Gamepad.prototype.timestamp рдФрд░ VRFrameData.prototype.timestamp - рд╕рдЯреАрдХ рд╕рдордп рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд╛рдЗрдб-рдЪреИрдирд▓ рд╣рдорд▓реЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЕрдВрдЬрд╛рдо рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ .
  • HTMLCanvasElement (canvas.toDataURL(), рдХреИрдирд╡рд╛рд╕.toBlob(), CanvasRenderingContext2D.getImageData, OfscreenCanvas.convertToBlob()) - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддреЗ рд╕рдордп рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдСрдбрд┐рдпреЛрдмрдлрд╝рд░ рдФрд░ рдПрдирд╛рд▓рд┐рд╕реЗрд░рдиреЛрдб (Audiobuffer.getChanneldata (), Audiobuffer.copyfromchannel (), analysernode.getBytimedomaindata (), analysernode.getfloatTimedoma Indata (), analysernode.getbytefrequeencydata () рдФрд░ analysernode.getfloatfrequeency ()) - рдзреНрд╡рдирд┐ рд╕рдВрдХреЗрдд рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╣рдЪрд╛рдиред
  • WebGLRenderingContext - рдЧреНрд░рд╛рдлрд╝рд┐рдХреНрд╕ рд╕реНрдЯреИрдХ рдФрд░ GPU рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╣рдЪрд╛рдиред
  • MediaDevices.prototype.enumerateDevices - рдХреИрдорд░рд╛ рдФрд░ рдорд╛рдЗрдХреНрд░реЛрдлрд╝реЛрди рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдФрд░ рдирд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдХреЗ рдкрд╣рдЪрд╛рдиред
  • navigator.deviceMemory, navigator.hardwareConcurrency - рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ред
  • XMLHttpRequest (XHR) - рдкреЗрдЬ рд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдПрдХрддреНрд░рд┐рдд рд╕рд┐рд╕реНрдЯрдо рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдмрд╛рд╣рд░реА рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред
  • рдРрд░реЗрдмрдлрд╝рд░ - рдорд╛рдЗрдХреНрд░реЛрдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд▓ рд╕реНрдкреЗрдХреНрдЯрд░ рд╣рдорд▓реЛрдВ рдХреЛ рдЕрдВрдЬрд╛рдо рджреЗрдирд╛ред
  • WebWorker (window.Worker), SharedArrayBuffer (window.SharedArrayBuffer) - рдРрд╕реЗ рд╣рдорд▓реЛрдВ рдХреЛ рдЕрдВрдЬрд╛рдо рджреЗрдирд╛ рдЬреЛ рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдореЗрдВ рджреЗрд░реА рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рддреЗ рд╣реИрдВред
  • рдЬрд┐рдпреЛрд▓реЛрдХреЗрд╢рди рдПрдкреАрдЖрдИ (рдиреЗрд╡рд┐рдЧреЗрдЯрд░.рдЬрд┐рдпреЛрд▓реЛрдХреЗрд╢рди) - рд╕реНрдерд╛рди рдХреА рдЬрд╛рдирдХрд╛рд░реА рддрдХ рдкрд╣реБрдВрдЪ (рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЖрдкрдХреЛ рд▓реМрдЯрд╛рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЛ рд╡рд┐рдХреГрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИ)ред
  • рдЧреЗрдордкреИрдб рдПрдкреАрдЖрдИ (рдиреЗрд╡рд┐рдЧреЗрдЯрд░.рдЧреЗрдЯрдЧреЗрдордкреИрдбреНрд╕()) рдкрд╣рдЪрд╛рди рд╕рдВрдХреЗрддреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдЬреЛ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЧреЗрдордкреИрдб рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддрд╛ рд╣реИред
  • рд╡рд░реНрдЪреБрдЕрд▓ рд░рд┐рдпрд▓рд┐рдЯреА рдПрдкреАрдЖрдИ, рдорд┐рд╢реНрд░рд┐рдд рд░рд┐рдпрд▓рд┐рдЯреА рдПрдкреАрдЖрдИ - рдкрд╣рдЪрд╛рди рдХреЗ рд▓рд┐рдП рд╡рд░реНрдЪреБрдЕрд▓ рд░рд┐рдпрд▓рд┐рдЯреА рдбрд┐рд╡рд╛рдЗрд╕ рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧред
  • window.name - рдХреНрд░реЙрд╕-рд╕рд╛рдЗрдЯ рд▓реАрдХред
  • navigator.sendBeacon - рд╡реЗрдм рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ