Home Web Front-end JS Tutorial Let's talk in depth about the front-end's idea of ​​limiting user screenshots

Let's talk in depth about the front-end's idea of ​​limiting user screenshots

Nov 07, 2022 pm 04:56 PM
javascript front end Safety

When working on back-end systems or projects where copyright is important, products often raise such requirements: Can users be prohibited from taking screenshots? Experienced developers will not reject the product directly, but will guide it.

First understand what are the initial requirements? The content data is too sensitive and leakage is strictly prohibited. Or after the content is leaked, the source needs to be traced and held accountable. Different needs require different solutions. Let’s take a look at restricting users’ screenshots. What are your ideas? [Recommendation: web front-end tutorial]

What kind of ideas are there

V website and some big guys on the website have given a lot of ideas Hole, I added some more ideas.

  • 1. Basic solution to prevent right-click saving and dragging.

This solution is the most basic, and currently it can only block some novice users. If it is a browser, call up the console in minutes and find the image URL directly. You can also directly ctrl p to enter print mode, save it directly and then cut it.

  • 2. Add a mask layer after defocusing

This solution is a bit interesting. When viewing sensitive information, you must click on a certain button with the mouse. , the photo will be fully displayed. If the focus is lost, the image will be displayed incompletely or directly covered with a mask.

  • 3. High-speed dynamic mosaic

This solution is feasible and has been applied on some websites to randomly display videos or pictures. By inserting pixels and running around dynamically, for customers, a complete image is displayed on the screen at every moment, and the user relies on their visual residue to view pictures or videos. Even taking a photo with a mobile phone can’t capture it completely. There are still many points that need optimization in practical applications. For example, you can see the complete content by recording on your mobile phone, but it only increases the cost of taking screenshots.

The following is the effect of a plan on Zhihu.

Original address: https://www.zhihu.com/question/417108591/answer/1450568587

Lets talk in depth about the front-ends idea of ​​limiting user screenshots

## Serious needs vs solutions

In fact, the solution of restricting users to take screenshots is unreasonable unless the entire device is customized and the screenshot function is castrated in the software. Adding more complex functions to this requirement is a bit putting the cart before the horse for some requirements that are not so high in security.

Let’s talk about the serious solution:

1. For sensitive data or pictures in the background system, the main reason is to worry about leakage, you can use a 45-degree oblique seven-color watermark. If you want It's almost impossible to remove it completely, it just looks bad.

2. For image copyright, you can use the current mainstream blind watermark. I have seen the service provided by Tencent Cloud before. Of course, the cost is relatively high. If the copyright demand is large, the effect is better.

3. Video solution, when tiktok is downloaded, there will be a watermark running around. Of course, this is a processed video, not the original painting, and the image quality loss is relatively high. Video websites such as Netflix use server-side permission control. For video streaming, encrypted videos are downloaded each time they are played, and a short-term license is obtained. After obtaining the license, they are decrypted and played locally. Once the playback is stopped, the license becomes invalid.

In short, except for low-level functions such as the screenshot API provided by Android, other functions are not perfect. Even if the bottom layer is controlled, you can still take photos and videos. There is no perfect solution. But it can still be done relatively safely.

The above is the detailed content of Let's talk in depth about the front-end's idea of ​​limiting user screenshots. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1662
14
PHP Tutorial
1261
29
C# Tutorial
1234
24
Implementing Machine Learning Algorithms in C++: Security Considerations and Best Practices Implementing Machine Learning Algorithms in C++: Security Considerations and Best Practices Jun 01, 2024 am 09:26 AM

When implementing machine learning algorithms in C++, security considerations are critical, including data privacy, model tampering, and input validation. Best practices include adopting secure libraries, minimizing permissions, using sandboxes, and continuous monitoring. The practical case demonstrates the use of the Botan library to encrypt and decrypt the CNN model to ensure safe training and prediction.

Security configuration and hardening of Struts 2 framework Security configuration and hardening of Struts 2 framework May 31, 2024 pm 10:53 PM

To protect your Struts2 application, you can use the following security configurations: Disable unused features Enable content type checking Validate input Enable security tokens Prevent CSRF attacks Use RBAC to restrict role-based access

PHP Microframework: Security Discussion of Slim and Phalcon PHP Microframework: Security Discussion of Slim and Phalcon Jun 04, 2024 am 09:28 AM

In the security comparison between Slim and Phalcon in PHP micro-frameworks, Phalcon has built-in security features such as CSRF and XSS protection, form validation, etc., while Slim lacks out-of-the-box security features and requires manual implementation of security measures. For security-critical applications, Phalcon offers more comprehensive protection and is the better choice.

How to enhance the security of Spring Boot framework How to enhance the security of Spring Boot framework Jun 01, 2024 am 09:29 AM

How to Enhance the Security of SpringBoot Framework It is crucial to enhance the security of SpringBoot applications to protect user data and prevent attacks. The following are several key steps to enhance SpringBoot security: 1. Enable HTTPS Use HTTPS to establish a secure connection between the server and the client to prevent information from being eavesdropped or tampered with. In SpringBoot, HTTPS can be enabled by configuring the following in application.properties: server.ssl.key-store=path/to/keystore.jksserver.ssl.k

How should the Java framework security architecture design be balanced with business needs? How should the Java framework security architecture design be balanced with business needs? Jun 04, 2024 pm 02:53 PM

Java framework design enables security by balancing security needs with business needs: identifying key business needs and prioritizing relevant security requirements. Develop flexible security strategies, respond to threats in layers, and make regular adjustments. Consider architectural flexibility, support business evolution, and abstract security functions. Prioritize efficiency and availability, optimize security measures, and improve visibility.

Which wallet is safer for SHIB coins? (Must read for newbies) Which wallet is safer for SHIB coins? (Must read for newbies) Jun 05, 2024 pm 01:30 PM

SHIB coin is no longer unfamiliar to investors. It is a conceptual token of the same type as Dogecoin. With the development of the market, SHIB’s current market value has ranked 12th. It can be seen that the SHIB market is hot and attracts countless investments. investors participate in investment. In the past, there have been frequent transactions and wallet security incidents in the market. Many investors have been worried about the storage problem of SHIB. They wonder which wallet is safer for SHIB coins at the moment? According to market data analysis, the relatively safe wallets are mainly OKXWeb3Wallet, imToken, and MetaMask wallets, which will be relatively safe. Next, the editor will talk about them in detail. Which wallet is safer for SHIB coins? At present, SHIB coins are placed on OKXWe

How to implement PHP security best practices How to implement PHP security best practices May 05, 2024 am 10:51 AM

How to Implement PHP Security Best Practices PHP is one of the most popular backend web programming languages ​​used for creating dynamic and interactive websites. However, PHP code can be vulnerable to various security vulnerabilities. Implementing security best practices is critical to protecting your web applications from these threats. Input validation Input validation is a critical first step in validating user input and preventing malicious input such as SQL injection. PHP provides a variety of input validation functions, such as filter_var() and preg_match(). Example: $username=filter_var($_POST['username'],FILTER_SANIT

Understanding React's Primary Function: The Frontend Perspective Understanding React's Primary Function: The Frontend Perspective Apr 18, 2025 am 12:15 AM

React's main functions include componentized thinking, state management and virtual DOM. 1) The idea of ​​componentization allows splitting the UI into reusable parts to improve code readability and maintainability. 2) State management manages dynamic data through state and props, and changes trigger UI updates. 3) Virtual DOM optimization performance, update the UI through the calculation of the minimum operation of DOM replica in memory.

See all articles