Browser remote access method and system
By introducing a transmission server for data encryption and virus scanning, the problem of imperfect protection mechanism during remote access to data transmission in the existing technology of browsers is solved, and normal access to IE-dependent business systems in various environments is realized, and the security and stability of data transmission are improved.
Patent Information
- Application Number
- CN202411529412.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-30
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2044-10-30
AI Technical Summary
The protection mechanism of existing browser remote access technology during data transmission is not yet perfect, which can easily affect the security and stability of the local system.
By introducing a transmission server between the local client and the remote end server, the operation data of the local client is captured and encrypted, transmitted to the transmission server for decryption verification and virus scanning, the secure data is generated and transmitted to the remote end server, the remote end server parses the operation instructions and performs operations in the remote browser, and transmits the operation results back to the local client in real time.
It ensures that the business system that relies on IE browser is accessed normally in various environments, and through strict decryption verification and virus scanning mechanisms, the security and stability of data transmission are improved, and the integrity and real-timeness of data are ensured.
Smart Images

Figure CN119603294A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of browser compatibility, and more particularly, to a browser remote access method and system. Background Art
[0002] As the default browser of Microsoft Windows operating system, IE browser not only demonstrates excellent performance in terms of technology, but also occupies a pivotal position in enterprise applications and user habits. Its outstanding compatibility advantage, especially its close integration with Windows system, enables IE to handle ActiveX controls and specific Windows Web technologies with ease, making it the only access channel for many old business systems and software tools, ensuring the stable operation of the enterprise environment.
[0003] However, with the advancement of information technology application innovation (referred to as IE innovation), the operating environment of IE browser is gradually missing. However, since many companies' key business systems and applications still rely on the compatibility of IE browser, directly disabling IE will cause these systems to fail to operate normally. And for users who need to migrate to the IE innovation environment, it also takes a huge amount of time and financial costs to completely replace all business systems that rely on IE. Therefore, in the IE innovation environment, due to the lack of the IE browser's operating environment, the IE browser cannot be directly installed and used, resulting in the inability to access business systems that rely on the compatibility of IE browser.
[0004] Existing browser remote access technologies mostly use remote desktop access tools, remote desktop protocols, and cloud computing platform technologies. However, during data transmission, the security of transmission is crucial. Especially when the remote end itself has been infected by a virus, the data on the remote end will be more easily stolen or tampered with, which will further threaten the security of the local end during the data transmission process; for example, when using remote desktop access tools, these tampered or stolen data will be transmitted to the local, causing the local system to be threatened; when using the remote desktop protocol, virus infection may cause the performance of the remote system to decline, thereby affecting the transmission efficiency and stability of the remote desktop protocol; when using the cloud computing platform, the virus on the remote end will further contaminate other virtual machines or service machines that share resources with it during the data transmission process, causing the entire platform to be paralyzed. Therefore, the protection mechanism of the existing browser remote access technology during data transmission is still imperfect. Summary of the invention
[0005] In order to solve the technical problem that the protection mechanism of the existing browser remote access technology is not perfect during data transmission and is likely to affect the security and stability of the local system, the present invention provides a browser remote access method and device.
[0006] According to one aspect of the present invention, the present invention provides a browser remote access method, comprising:
[0007] After receiving the access request sent by the local client, the local server obtains the user agent string of the local client, wherein the access request is for a business system that only supports the first browser;
[0008] Determine, according to the user agent character string, a judgment result of whether the local client operating environment is compatible with the first browser, wherein the judgment result includes being compatible with the first browser and being incompatible with the first browser;
[0009] When the judgment result is that the first browser is not compatible, the operation data of the local client is captured and encrypted, and an encrypted operation event text is generated and transmitted to the transmission server;
[0010] The transmission server performs decryption verification and virus scanning on the encrypted operation event text to generate first security data, and encrypts the first security data to generate first encrypted data for transmission to the remote server;
[0011] The remote server parses the first encrypted data to obtain an operation instruction, performs an operation in the remote first browser according to the operation instruction, and encrypts the operation result and transmits it back to the local client in real time via the transmission server.
[0012] According to another aspect of the present invention, the present invention provides a browser remote access system, the system comprising:
[0013] A local client, used to send an access request to a local server, wherein the access request is for a business system that only supports the first browser;
[0014] The local server is used to obtain the user agent string of the local client after receiving the access request sent by the local client; determine the judgment result of whether the local client operating environment is compatible with the first browser according to the user agent string; when the judgment result is incompatible with the first browser, capture the operation data of the local client and encrypt it, generate the encrypted operation event text and transmit it to the transmission server;
[0015] The transmission server is used to perform decryption verification and virus scanning on the encrypted operation event text, generate first security data, encrypt the first security data to generate first encrypted data and transmit it to the remote server, and receive the encrypted operation result transmitted by the remote server and return it to the local client;
[0016] The remote server is used to parse the first encrypted data, obtain the operation instruction, perform the operation in the remote first browser according to the operation instruction, and encrypt the operation result and transmit it to the transmission server in real time.
[0017] According to another aspect of the present invention, the present invention provides a computer-readable storage medium, wherein the storage medium stores a computer program, and the computer program is used to execute the method described in any one of the above aspects of the present invention.
[0018] According to another aspect of the present invention, an electronic device is provided, comprising: a processor; a memory for storing instructions executable by the processor; the processor is configured to read the executable instructions from the memory and execute the instructions to implement the method described in any one of the above aspects of the present invention.
[0019] The browser remote access method and system of the present invention comprises: after receiving the access request sent by the local client, the local server obtains the user agent string of the local client, and determines the judgment result of whether the local client operating environment is compatible with the first browser according to the user agent string; when the judgment result is not compatible with the first browser, the operation data of the local client is captured and encrypted, and the encrypted operation event text is generated and transmitted to the transmission server; the transmission server decrypts and verifies the encrypted operation event text and performs virus scanning, generates the first security data, and encrypts it to generate the first encrypted data and transmits it to the remote server; the remote server parses the first encrypted data to obtain the operation instruction, and performs the operation in the remote first browser according to the operation instruction, and transmits the operation result back to the local client in real time through the transmission server after encrypting it. The method and system can automatically use the remote first browser to access the local client in combination with the judgment result of whether the local client operating environment is compatible with the first browser when the local client is not compatible with the first browser, ensuring that the business system relying on the first browser can be normally accessed in various environments, and the transmission server performs strict decryption verification and virus scanning after receiving the data transmitted by the local and remote ends, ensuring the integrity and security of the data. Moreover, the transmission server groups or blocks several data groups according to the data size and data quantity, and performs virus scanning on the received data and several data blocks and / or data groups to be transmitted in a multi-node manner by deploying security software and several edge computing nodes, which not only improves the speed of virus scanning, but also ensures the real-time and efficiency of data transmission. Furthermore, the local server adjusts the capture interval of the local operation according to the user's operation frequency and encrypts it to generate an encrypted operation event text, which is then transmitted to the remote server, which then parses it to obtain the operation instruction and executes the corresponding operation in the remote browser, realizing the remote simulation of user operation and improving the real-time and convenience of user interaction. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] A more complete understanding of exemplary embodiments of the present invention may be obtained by referring to the following drawings:
[0021] Figure 1 A flowchart of a browser remote access method according to a preferred embodiment of the present invention;
[0022] Figure 2 A flowchart of generating an encrypted operation event text according to a preferred embodiment of the present invention;
[0023] Figure 3 A flowchart of generating first security data according to a preferred embodiment of the present invention;
[0024] Figure 4 A schematic diagram of the structure of a browser remote access system according to a preferred embodiment of the present invention;
[0025] Figure 5 Schematic diagram of the structure of an electronic device according to a preferred embodiment of the present invention. DETAILED DESCRIPTION
[0026] Now, exemplary embodiments of the present invention are described with reference to the accompanying drawings. However, the present invention can be implemented in many different forms and is not limited to the embodiments described herein. These embodiments are provided to disclose the present invention in detail and completely and to fully convey the scope of the present invention to those skilled in the art. The terms used in the exemplary embodiments shown in the accompanying drawings are not intended to limit the present invention. In the accompanying drawings, the same units / elements are marked with the same reference numerals.
[0027] Unless otherwise specified, the terms (including technical terms) used herein have the commonly understood meanings to those skilled in the art. In addition, it is understood that the terms defined in commonly used dictionaries should be understood to have the same meanings as those in the context of the relevant fields, and should not be understood as idealized or overly formal meanings.
[0028] Exemplary Methods
[0029] Figure 1 FIG. 1 is a flowchart of a browser remote access method according to a preferred embodiment of the present invention. Figure 1 As shown, the browser remote access method described in this preferred embodiment starts from step 101.
[0030] In step 101, after receiving an access request sent by a local client, the local server obtains a user agent string of the local client, wherein the access request is for a business system that only supports a first browser.
[0031] In this preferred embodiment, it is assumed that an enterprise has an old business system that only supports running on the IE browser of the Windows operating system, and the IE browser is the first browser. A user initiates an access request to the old business system on a local computer, and after receiving the access request, the local server obtains the user agent string of the local computer.
[0032] In step 102, a determination result of whether the local client operating environment is compatible with the first browser is determined according to the user agent character string, wherein the determination result includes being compatible with the first browser and being incompatible with the first browser.
[0033] Preferably, the determining, based on the user agent character string, whether the local client operating environment is compatible with the first browser comprises:
[0034] Parsing the user agent string using a parsing tool to determine version information and operating system data of the first browser;
[0035] Determine whether the version information and operating system data of the first browser meet a preset compatibility condition, wherein when the preset compatibility condition is met, determine that the judgment result is compatible with the first browser; when the preset compatibility condition is not met, determine that the judgment result is incompatible with the first browser.
[0036] In this preferred embodiment, it is determined that a digital robot is configured on the remote server, and when the judgment result is determined to be incompatible with the first browser, the digital robot is used to wake up the first browser of the remote end and perform rendering services, thereby ensuring that the local end can successfully access the first browser of the remote end. The digital robot is deployed on the remote end, and is a control program that can realize automatic control and simulate user operations. The digital robot is a prior art, which is different from the real robot. It is deployed in the virtual digital world and can help users achieve a better user experience; the digital robot can interact with the user through text, voice, image, video and other methods to provide information, services, entertainment and other functions. The digital robot can realize autonomous learning, self-optimization, self-evolution and other capabilities based on artificial intelligence, cloud computing, big data and other technologies, and adapt to different scenarios and needs; no more details will be given here.
[0037] Further, when determining whether the version information and operating system data of the first browser meet a preset compatibility condition, it includes:
[0038] A21, determining whether the version information of the first browser is within the range of browser versions preset to be supported by the local end; if yes, jump to A22; if no, determining that the preset compatibility condition is not met;
[0039] A22, determining whether the operating system data is in a compatibility operating system list preset on the local side; if yes, the preset compatibility condition is satisfied; if no, the preset compatibility condition is not satisfied.
[0040] In this preferred embodiment, when the user agent string of the local computer is parsed and it is found that the local browser is the Chrome browser, it is determined that the operating environment of the local computer is incompatible with the first browser. Therefore, the first browser on the remote end is used for access. At this time, the digital robot wakes up the first browser on the remote server and loads the URL of the business system in the access request. Then the first browser on the remote end starts to render the business interface and transmits the rendering results to the local computer in real time.
[0041] By parsing the user agent string to obtain the version information and operating system data of the local browser, it is determined whether the local client operating environment is compatible with the first browser, thereby improving the accuracy and efficiency of environment judgment.
[0042] Preferably, after determining the result of the determination that the local client operating environment is compatible with the first browser according to the user agent character string, the method further includes:
[0043] When the determination result is that the browser is compatible with the first browser, the access request is executed using a local browser.
[0044] In step 103, when the judgment result is that the first browser is incompatible, the operation data of the local client is captured and encrypted, and an encrypted operation event text is generated and transmitted to the transmission server.
[0045] Figure 2 Flow chart of generating encrypted operation event text according to a preferred embodiment of the present invention. Figure 2 As shown, the step of generating encrypted operation event text in this preferred embodiment starts from 201.
[0046] In step 201, an initial sampling interval, an initial operation frequency and a frequency evaluation period for capturing operation data are set, and a keyboard hook and a mouse hook are set on the local side through programming software, wherein the operation data includes keyboard keys, mouse clicks, mouse movements, mouse scrolls and mouse coordinate positions;
[0047] In step 202, the keyboard hook and the mouse hook are used to capture the operation data of the local end within the initial sampling interval to obtain binary operation data, and the binary operation data is encrypted to generate an encrypted operation event text;
[0048] In step 203, the keyboard input speed, mouse click speed and mouse movement speed per minute in the frequency evaluation period are calculated;
[0049] In step 204, the n-th operation frequency of the user is determined according to the keyboard input speed, the mouse click speed and the mouse movement speed, where n is a natural number and its initial value is 1;
[0050] In step 205, the nth sampling interval is determined according to the initial sampling interval, the initial operating frequency and the nth operating frequency;
[0051] In step 206 , the n-th sampling interval and operating frequency are set as the initial sampling interval and initial operating frequency respectively, and n=n+1 is set, and the process returns to step 202 .
[0052] Preferably, the n-th operation frequency of the user is determined according to the keyboard input speed, the mouse click speed and the mouse movement speed, wherein the calculation formula of the n-th operation frequency is:
[0053] F n =log2(k+c+m+1)
[0054] In the formula, F n represents the nth operation frequency of the user, k represents the keyboard input speed, c represents the mouse click speed, and m represents the mouse movement speed.
[0055] Preferably, the nth sampling interval is determined according to the initial sampling interval, the initial operating frequency and the nth operating frequency, wherein the calculation formula of the nth sampling interval is:
[0056] t n =t0-k0*(F0-F n )
[0057] Where, t n represents the nth sampling interval of the user, t0 and F0 represent the initial sampling interval and initial operation frequency respectively, and 0<k0<1.
[0058] Assume that when a user accesses the business system in the access request, he needs to enter the user name, password and click the verification code to log in to the system. At this time, the operation of the local client needs to be captured and encrypted to obtain the encrypted operation event text, and then the encrypted operation event text is sent to the transmission server, which decrypts and verifies the encrypted operation data and scans for viruses. Specifically, assuming that the current initial sampling interval t0 is 1 second, the initial operation frequency F0 is 6, the frequency evaluation period is 2 minutes, the current user types 100 characters per minute, then the keyboard input speed k=100, clicks the mouse 120 times per minute, then the mouse click speed c=120, and the mouse moves 115 cm per minute, then the mouse movement speed m=115, then according to the operation frequency calculation formula, when k0 takes 0.1, the current user's operation frequency F≈8.4 is obtained, and the new data sampling interval calculated according to the formula is 0.76, that is, in the next frequency evaluation period, the input operation will be collected within 0.76 seconds; then the initial sampling interval in the next frequency evaluation period is set to t0=0.76, and the initial operation frequency is F0=8.4.
[0059] In this preferred embodiment, by setting keyboard hooks and mouse hooks at the local end, the operation data of the local end is obtained in real time and transmitted to the digital robot at the remote end, which obtains the operation instructions after parsing to perform the operation, thereby realizing remote simulation of the operation and improving the real-time nature of the remote operation and the user's interactive experience. Furthermore, by dynamically adjusting the data sampling interval according to the user's operation frequency, it is possible to reasonably allocate computing resources; when the operation frequency is low, the data sampling interval is increased to reduce the system load; when the operation frequency is high, the data sampling interval is reduced to ensure timely response to user operations.
[0060] In step 104, the transmission server performs decryption verification and virus scanning on the encrypted operation event text to generate first security data, and encrypts the first security data to generate first encrypted data for transmission to the remote server.
[0061] Figure 3 FIG. 4 is a flow chart of generating first security data according to a preferred embodiment of the present invention. Figure 3 As shown, the step of generating the first security data described in this preferred embodiment starts from 301.
[0062] In step 301, the encrypted operation event text is decrypted, verified and classified to obtain a number of data groups, and an edge computing node is assigned to each data group. In this preferred embodiment, security software and a number of edge computing nodes are deployed on the transmission server before generating the first security data.
[0063] In step 302, the data size and the data quantity in the plurality of data groups are calculated, and a plurality of data blocks are obtained according to the data size and the data quantity;
[0064] In step 303, the security software and the edge computing nodes are used to perform virus scanning and recording on the data groups and the data blocks in the data groups to obtain a virus scanning log;
[0065] In step 304, it is determined whether the virus scanning log contains virus information;
[0066] In step 305, when the virus scanning log contains virus information, a virus warning signal is generated;
[0067] In step 306, when the virus scanning log does not contain virus information, the virus scanning log is stored in the transmission server, and first security data is generated according to the plurality of data groups and the plurality of data blocks in the plurality of data groups.
[0068] Preferably, obtaining a plurality of data blocks according to the data size and the data quantity includes:
[0069] Determine whether the number of data in the plurality of data groups is greater than the number of edge computing nodes; if yes, divide the plurality of data groups into a plurality of data blocks;
[0070] When the amount of data in the data groups is not greater than the number of edge computing nodes, determine whether the data size of the data groups is less than the data amount threshold; if yes, keep the data groups; if no, divide the data groups into data blocks to obtain data blocks of the data groups.
[0071] In this preferred embodiment, by deploying security software on the transmission server to scan and record the transmitted data for viruses, the security of data transmission is improved; by judging whether the data quantity and data size of the data group meet the preset threshold, it is flexibly selected whether to further divide the data group into data blocks, and the data processing method is dynamically adjusted to achieve the optimal processing effect; parallel processing technology and edge computing nodes are used to perform parallel processing on the transmitted data, ensuring the processing efficiency of the transmitted data and improving the overall performance and stability of the system.
[0072] In step 105, the remote server parses the first encrypted data to obtain an operation instruction, performs an operation in the remote first browser according to the operation instruction, and encrypts the operation result and transmits it back to the local client in real time via the transmission server.
[0073] Preferably, the remote server parses the first encrypted data to obtain the operation instruction, including:
[0074] Decrypt and verify the first encrypted data to obtain a decrypted operation event text;
[0075] Parsing the decrypted operation event text to obtain binary operation data;
[0076] The binary operation data is matched with an operation instruction library to obtain the current operation instruction, wherein the operation instruction library is composed of a correspondence between preset binary data and operation instructions.
[0077] The browser remote access method described in this preferred embodiment can combine the judgment result of whether the local client operating environment is compatible with the first browser, and automatically use the first browser of the remote end to access when the local end is not compatible with the first browser, ensuring that the business system relying on the first browser can be normally accessed in various environments, and the transmission server performs strict decryption verification and virus scanning after receiving the data transmitted by the local end and the remote end, ensuring the integrity and security of the data. In addition, the transmission server groups or blocks several data groups according to the data size and data quantity, and performs virus scanning on the received data and several data blocks and / or data groups to be transmitted in a multi-node manner by deploying security software and several edge computing nodes, which not only improves the speed of virus scanning, but also ensures the real-time and efficiency of data transmission. Further, the local end server adjusts the capture interval of the local end operation according to the user's operation frequency and encrypts it to generate an encrypted operation event text and transmits it to the remote end server, which then parses it to obtain the operation instruction, and performs the corresponding operation in the remote end browser, realizing the remote simulation of the user operation, and improving the real-time and convenience of user interaction.
[0078] Exemplary Systems
[0079] Figure 4 FIG. 1 is a schematic diagram of the structure of a browser remote access system according to a preferred embodiment of the present invention. Figure 4 As shown, the browser remote access system 400 described in this preferred embodiment includes:
[0080] The local client 401 is used to send an access request to the local server, wherein the access request is for a business system that only supports the first browser;
[0081] The local server 402 is used to obtain the user agent string of the local client after receiving the access request sent by the local client; determine the judgment result of whether the local client operating environment is compatible with the first browser according to the user agent string; when the judgment result is incompatible with the first browser, capture the operation data of the local client and encrypt it, generate an encrypted operation event text and transmit it to the transmission server;
[0082] The transmission server 403 is used to perform decryption verification and virus scanning on the encrypted operation event text, generate first security data, encrypt the first security data and transmit it to the remote server, and receive the encrypted operation result transmitted by the remote server and return it to the local client;
[0083] The remote server 404 is used to parse the first encrypted data, obtain the operation instruction, perform the operation in the remote first browser according to the operation instruction, and encrypt the operation result and transmit it to the transmission server in real time.
[0084] In this preferred embodiment, an access initiation module can be set on several local clients to initiate an access request to a business system that can only use the first browser; a remote access module can be set on the local server to obtain the user agent string of the local client after receiving the access request sent by the local client, and parse the user agent string to determine the judgment result of the first browser of the local client operating environment, and automatically start the digital robot, use the digital robot to wake up the first browser on the remote server, and load the URL of the business system to be accessed, and use the first browser on the remote server to render the page, and transmit the rendering result to the local client in real time. Further, an input capture module is set on the local server to capture the local operation data and encrypt it to obtain the encrypted operation event text, and an operation simulation module is set on the remote server, so that the digital robot parses the first encrypted data, obtains the operation instruction, and then performs the operation in the first browser according to the operation instruction, and transmits the operation result back to the local client in real time.
[0085] Preferably, the local server 402 determines the result of determining whether the local client operating environment is compatible with the first browser according to the user agent character string, including:
[0086] Parsing the user agent string using a parsing tool to determine version information and operating system data of the first browser;
[0087] Determine whether the version information and operating system data of the first browser meet a preset compatibility condition, wherein when the preset compatibility condition is met, determine that the judgment result is compatible with the first browser; when the preset compatibility condition is not met, determine that the judgment result is incompatible with the first browser.
[0088] Preferably, the local client 401 is further configured to use a local browser to execute the access request when the judgment result is that the browser is compatible with the first browser.
[0089] Preferably, the local server 402 captures the operation data of the local client and encrypts it, generates an encrypted operation event text and transmits it to the transmission server, including:
[0090] In step 201, an initial sampling interval, an initial operation frequency and a frequency evaluation period for capturing operation data are set, and a keyboard hook and a mouse hook are set on the local side through programming software, wherein the operation data includes keyboard keys, mouse clicks, mouse movements, mouse scrolls and mouse coordinate positions;
[0091] In step 202, the keyboard hook and the mouse hook are used to capture the operation data of the local end within the initial sampling interval to obtain binary operation data, and the binary operation data is encrypted to generate an encrypted operation event text;
[0092] In step 203, the keyboard input speed, mouse click speed and mouse movement speed per minute in the frequency evaluation period are calculated;
[0093] In step 204, the n-th operation frequency of the user is determined according to the keyboard input speed, the mouse click speed and the mouse movement speed, where n is a natural number and its initial value is 1;
[0094] In step 205, the nth sampling interval is determined according to the initial sampling interval, the initial operating frequency and the nth operating frequency;
[0095] In step 206 , the n-th sampling interval and operating frequency are set as the initial sampling interval and initial operating frequency respectively, and n=n+1 is set, and the process returns to step 202 .
[0096] Preferably, the local server 402 determines the user's n-th operation frequency according to the keyboard input speed, the mouse click speed and the mouse movement speed, wherein the calculation formula of the n-th operation frequency is:
[0097] F n =log2(k+c+m+1)
[0098] Where Fn represents the nth operation frequency of the user, k represents the keyboard input speed, c represents the mouse click speed, and m represents the mouse movement speed.
[0099] Preferably, the local server 402 determines the nth sampling interval according to the initial sampling interval, the initial operation frequency and the nth operation frequency, wherein the calculation formula of the nth sampling interval is:
[0100] t n =t0-k0*(F0-F n )
[0101] Wherein, tn represents the nth sampling interval of the user, t0 and F0 represent the initial sampling interval and the initial operation frequency respectively, and 0<k0<1.
[0102] Preferably, the transmission server 403 performs decryption verification and virus scanning on the encrypted operation event text to generate first security data, including:
[0103] Deploy security software and several edge computing nodes on the transmission server;
[0104] Decrypt, verify and classify the encrypted operation event text to obtain a number of data groups, and assign an edge computing node to each data group;
[0105] Calculating the data size and data quantity in the plurality of data groups, and obtaining a plurality of data blocks according to the data size and data quantity;
[0106] Using the security software and the edge computing nodes to perform virus scanning and recording on the data groups and the data blocks in the data groups to obtain a virus scanning log;
[0107] Determine whether the virus scanning log contains virus information; if yes, generate a virus warning signal; if no, store the virus scanning log on the transmission server, and generate first security data based on the several data groups and the several data blocks within the several data groups, and generate first security data based on the several data groups and the several data blocks within the several data groups.
[0108] Preferably, the transmission server 403 obtains a number of data blocks according to the data size and the data quantity, including:
[0109] Determine whether the number of data in the plurality of data groups is greater than the number of edge computing nodes; if yes, divide the plurality of data groups into a plurality of data blocks;
[0110] When the amount of data in the data groups is not greater than the number of edge computing nodes, determine whether the data size of the data groups is less than the data amount threshold; if yes, keep the data groups; if no, divide the data groups into data blocks to obtain data blocks of the data groups.
[0111] Preferably, the remote server 404 parses the first encrypted data to obtain an operation instruction, including:
[0112] Decrypt and verify the first encrypted data to obtain a decrypted operation event text;
[0113] Parsing the decrypted operation event text to obtain binary operation data;
[0114] The binary operation data is matched with an operation instruction library to obtain the current operation instruction, wherein the operation instruction library is composed of a correspondence between preset binary data and operation instructions.
[0115] The browser remote access system described in this preferred embodiment has the same steps as the browser remote access method in performing browser remote access, and achieves the same technical effects, which will not be described in detail herein.
[0116] Exemplary Electronic Devices
[0117] Figure 5 The electronic device according to the preferred embodiment of the present invention is a schematic diagram of the structure of the electronic device. The electronic device can be any one or both of the first device and the second device, or a stand-alone device independent of them, and the stand-alone device can communicate with the first device and the second device to receive the collected input signal from them. Figure 5 FIG. 1 is a block diagram of an electronic device according to an embodiment of the present disclosure. Figure 5 As shown, the electronic device includes one or more processors 501 and a memory 502 .
[0118] The processor 501 may be a central processing unit (CPU) or other forms of processing units having data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device to perform desired functions.
[0119] The memory 502 may include one or more computer program products, and the computer program product may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory (cache), etc. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor 501 may run the program instructions to implement the energy consumption anomaly diagnosis method based on the enterprise energy consumption space of the various embodiments disclosed above and / or other desired functions. In one example, the electronic device may also include: an input device 503 and an output device 504, which are interconnected via a bus system and / or other forms of connection mechanisms (not shown).
[0120] In addition, the input device 503 may also include, for example, a keyboard, a mouse, and the like.
[0121] The output device 504 can output various information to the outside, and can include, for example, a display, a speaker, a printer, a communication network and a remote output device connected thereto.
[0122] Of course, to simplify, Figure 5 Only some of the components related to the present disclosure in the electronic device are shown, and components such as a bus, an input / output interface, etc. are omitted. In addition, according to specific application situations, the electronic device may further include any other appropriate components.
[0123] Exemplary computer program products and computer-readable storage media
[0124] In addition to the above-mentioned methods and devices, an embodiment of the present disclosure may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to execute the steps of the browser remote access method according to various embodiments of the present disclosure described in the above-mentioned "Exemplary Method" section of this specification.
[0125] The computer program product may be written in any combination of one or more programming languages to write program code for performing the operations of the disclosed embodiments, including object-oriented programming languages such as Java, C++, etc., and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0126] In addition, an embodiment of the present disclosure may also be a computer-readable storage medium having computer program instructions stored thereon, which, when executed by a processor, causes the processor to execute the steps of the browser remote access method according to various embodiments of the present disclosure described in the above “Exemplary Method” section of this specification.
[0127] The computer readable storage medium can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can include, for example, but is not limited to, a system, device or device of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
[0128] The basic principles of the present disclosure are described above in conjunction with specific embodiments. However, it should be noted that the advantages, strengths, effects, etc. mentioned in the present disclosure are only examples and not limitations, and it cannot be considered that these advantages, strengths, effects, etc. are required by each embodiment of the present disclosure. In addition, the specific details disclosed above are only for the purpose of illustration and ease of understanding, and are not limitations. The above details do not limit the present disclosure to the necessity of adopting the above specific details to be implemented.
[0129] Each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the system embodiment, since it basically corresponds to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0130] The block diagrams of the devices, apparatuses, equipment, and systems involved in this disclosure are only illustrative examples and are not intended to require or imply that they must be connected, arranged, and configured in the manner shown in the block diagrams. As will be appreciated by those skilled in the art, these devices, apparatuses, equipment, and systems can be connected, arranged, and configured in any manner. Words such as "including," "comprising," "having," and the like are open words, referring to "including but not limited to," and can be used interchangeably therewith. The words "or" and "and" used herein refer to the words "and / or," and can be used interchangeably therewith, unless the context clearly indicates otherwise. The word "such as" used herein refers to the phrase "such as but not limited to," and can be used interchangeably therewith.
[0131] The apparatus and method of the present disclosure may be implemented in many ways. For example, the apparatus and method of the present disclosure may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above order of steps for the method is for illustration only, and the steps of the method of the present disclosure are not limited to the order specifically described above, unless otherwise specifically stated. In addition, in some embodiments, the present disclosure may also be implemented as a program recorded in a recording medium, which includes machine-readable instructions for implementing the method according to the present disclosure. Therefore, the present disclosure also covers a recording medium storing a program for executing the method according to the present disclosure.
[0132] It should also be noted that in the apparatus, equipment and method of the present disclosure, each component or each step can be decomposed and / or recombined. These decompositions and / or recombinations should be regarded as equivalent schemes of the present disclosure. The above description of the disclosed aspects is provided to enable any technician in the field to make or use the present disclosure. Various modifications to these aspects are very obvious to those skilled in the art, and the general principles defined herein can be applied to other aspects without departing from the scope of the present disclosure. Therefore, the present disclosure is not intended to be limited to the aspects shown here, but to the widest scope consistent with the principles and novel features disclosed herein.
[0133] The above description has been given for the purpose of illustration and description. In addition, this description is not intended to limit the embodiments of the present disclosure to the forms disclosed herein. Although multiple example aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, changes, additions and sub-combinations thereof.
Claims
1. A browser remote access method, characterized in that: The method comprises: After receiving the access request sent by the local client, the local server obtains the user agent string of the local client, wherein the access request is for a business system that only supports the first browser; Determine, according to the user agent character string, a judgment result of whether the local client operating environment is compatible with the first browser, wherein the judgment result includes being compatible with the first browser and being incompatible with the first browser; When the judgment result is that the first browser is not compatible, the operation data of the local client is captured and encrypted, and an encrypted operation event text is generated and transmitted to the transmission server; The transmission server performs decryption verification and virus scanning on the encrypted operation event text to generate first security data, and encrypts the first security data to generate first encrypted data for transmission to the remote server; The remote server parses the first encrypted data to obtain an operation instruction, performs an operation in the remote first browser according to the operation instruction, and encrypts the operation result and transmits it back to the local client in real time via the transmission server.
2. The method according to claim 1, characterized in that The determining, based on the user agent character string, that the local client operating environment is compatible with the first browser comprises: Parsing the user agent string using a parsing tool to determine version information and operating system data of the first browser; Determine whether the version information and operating system data of the first browser meet a preset compatibility condition, wherein when the preset compatibility condition is met, determine that the judgment result is compatible with the first browser; when the preset compatibility condition is not met, determine that the judgment result is incompatible with the first browser.
3. The method according to claim 1, characterized in that After determining the result of the determination that the local client operating environment is compatible with the first browser according to the user agent character string, the following further comprises: When the determination result is that the browser is compatible with the first browser, the access request is executed using a local browser.
4. The method according to claim 1, characterized in that: The capturing and encrypting of the operation data of the local client, generating the encrypted operation event text and transmitting it to the transmission server includes: In step 201, an initial sampling interval, an initial operation frequency and a frequency evaluation period for capturing operation data are set, and a keyboard hook and a mouse hook are set on the local side through programming software, wherein the operation data includes keyboard keys, mouse clicks, mouse movements, mouse scrolls and mouse coordinate positions; In step 202, the keyboard hook and the mouse hook are used to capture the operation data of the local end within the initial sampling interval to obtain binary operation data, and the binary operation data is encrypted to generate an encrypted operation event text; In step 203, the keyboard input speed, mouse click speed and mouse movement speed per minute in the frequency evaluation period are calculated; In step 204, the n-th operation frequency of the user is determined according to the keyboard input speed, the mouse click speed and the mouse movement speed, where n is a natural number and its initial value is 1; In step 205, the nth sampling interval is determined according to the initial sampling interval, the initial operating frequency and the nth operating frequency; In step 206 , the n-th sampling interval and operating frequency are set as the initial sampling interval and initial operating frequency respectively, and n=n+1 is set, and the process returns to step 202 .
5. The method according to claim 4, characterized in that The n-th operation frequency of the user is determined according to the keyboard input speed, the mouse click speed and the mouse movement speed, wherein the calculation formula of the n-th operation frequency is: F n =log2(k+c+m+1) In the formula, F n represents the nth operation frequency of the user, k represents the keyboard input speed, c represents the mouse click speed, and m represents the mouse movement speed.
6. The method according to claim 4, characterized in that The nth sampling interval is determined according to the initial sampling interval, the initial operating frequency and the nth operating frequency, wherein the calculation formula of the nth sampling interval is: t n =t0-k0*(F0-F n ) Where, t n represents the nth sampling interval of the user, t0 and F0 represent the initial sampling interval and initial operation frequency respectively, and 0<k0<1.
7. The method according to claim 1, characterized in that The transmission server performs decryption verification and virus scanning on the encrypted operation event text to generate first security data, including: Deploy security software and several edge computing nodes on the transmission server; Decrypt, verify and classify the encrypted operation event text to obtain a number of data groups, and assign an edge computing node to each data group; Calculating the data size and data quantity in the plurality of data groups, and obtaining a plurality of data blocks according to the data size and data quantity; Using the security software and the edge computing nodes to perform virus scanning and recording on the data groups and the data blocks in the data groups to obtain a virus scanning log; Determine whether the virus scanning log contains virus information; if yes, generate a virus warning signal; if no, store the virus scanning log on the transmission server, and generate first security data based on the several data groups and the several data blocks within the several data groups, and generate first security data based on the several data groups and the several data blocks within the several data groups.
8. The method according to claim 7, characterized in that The obtaining of a plurality of data blocks according to the data size and the data quantity includes: Determine whether the number of data in the plurality of data groups is greater than the number of edge computing nodes; if yes, divide the plurality of data groups into a plurality of data blocks; When the amount of data in the data groups is not greater than the number of edge computing nodes, determine whether the data size of the data groups is less than the data amount threshold; if yes, keep the data groups; if no, divide the data groups into data blocks to obtain data blocks of the data groups.
9. The method according to claim 1, characterized in that: The remote server parses the first encrypted data to obtain an operation instruction, including: Decrypt and verify the first encrypted data to obtain a decrypted operation event text; Parsing the decrypted operation event text to obtain binary operation data; The binary operation data is matched with an operation instruction library to obtain the current operation instruction, wherein the operation instruction library is composed of a correspondence between preset binary data and operation instructions.
10. A browser remote access system, characterized in that: The system comprises: A local client, used to send an access request to a local server, wherein the access request is for a business system that only supports the first browser; The local server is used to obtain the user agent string of the local client after receiving the access request sent by the local client; determine the judgment result of whether the local client operating environment is compatible with the first browser according to the user agent string; when the judgment result is incompatible with the first browser, capture the operation data of the local client and encrypt it, generate the encrypted operation event text and transmit it to the transmission server; The transmission server is used to perform decryption verification and virus scanning on the encrypted operation event text, generate first security data, encrypt the first security data to generate first encrypted data and transmit it to the remote server, and receive the encrypted operation result transmitted by the remote server and return it to the local client; The remote server is used to parse the first encrypted data, obtain the operation instruction, perform the operation in the remote first browser according to the operation instruction, and encrypt the operation result and transmit it to the transmission server in real time.
11. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and the computer program is used to execute the method according to any one of claims 1 to 9.
12. An electronic device, characterized in that: The electronic device comprises: processor; a memory for storing instructions executable by the processor; The processor is used to read the executable instructions from the memory and execute the instructions to implement the method described in any one of claims 1 to 9.
Citation Information
Patent Citations
Service request processing method, terminal browser and anti-attack server
CN104994092A
Browser implementation method, terminal and virtualized agent device
CN105095220A
Cross-platform web page rendering method, device, server and storage medium
CN109144567A
Website application isolation protection system
CN111931170A
Access request response method, device, system and equipment and storage medium
CN113779446A