Data protection method, device and equipment based on mac system and medium

By setting operation levels and injecting dynamic libraries in the macOS system, real-time detection and control of screen sharing and screenshot operations, the problem of data leakage under the macOS system is solved, flexible permission control and multi-level protection are achieved, ensuring information security and traceability after leakage.

CN119918072APending Publication Date: 2025-05-02ZIXUN TECHNOLOGY (FUJIAN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411963038.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-30
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

Under the macOS system, employees are prone to leaking important data within the company through screenshots or screen sharing during office work, and traditional screen protection methods cannot effectively cover screen sharing needs under different permissions.

Method used

Provide a data protection method based on the Mac system, by setting operation levels and injecting dynamic libraries, real-time detection and control screen sharing and screenshot operations, allowing or blocking these operations according to the permission levels, and adding hidden watermarks when screenshots are allowed.

Benefits of technology

It realizes flexible permission control for screen data under macOS system, prevents data leakage, and provides multi-level protection methods, including sharing permission control, screenshot restrictions and hiding watermarks, ensuring information security and traceability after leakage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119918072A_ABST
    Figure CN119918072A_ABST
Patent Text Reader

Abstract

The invention provides a data protection method and device based on an mac system, equipment and a medium, and the method comprises the steps: setting operation levels according to the authority level of an account, including screen sharing prohibition, sharing permission but screenshot prohibition, sharing permission, screenshot permission and free sharing; a dynamic library is set according to the operation level, the dynamic library is injected into the mac system, and the dynamic library is used for detecting a shared screen in real time, controlling the screen capture operation of the app and controlling other app to prevent screen capture; when the dynamic library detects that the account shares a screen or a window, the dynamic library obtains an operation level of the account; if sharing is forbidden, the sharing request is stopped; if sharing is allowed but screenshot is forbidden, screen sharing is allowed, but screenshot is forbidden; if sharing and screenshot are allowed, screen sharing and screenshot are allowed, and a hidden watermark is added to a screenshot; if the sharing is free, the user operation is not limited; and the user can conveniently carry out data protection under the mac system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field, and in particular to a data protection method, device, equipment and medium based on a MAC system. Background Art

[0002] When existing employees use macOS computers for work, there will be human data leakage. Employees take screenshots of some data on their computers and send them to others, or share computer data with others through screen sharing, which leads to the leakage of important data within the company.

[0003] Existing users need to demonstrate product development progress through computers; the demonstration process often includes sensitive data such as the product's core algorithms or customer data. There is also a risk of leakage of displayed content when users demonstrate through macOS. Traditional screen protection methods are one-size-fits-all, which makes it difficult to effectively cover screen sharing needs under different permissions. Summary of the invention

[0004] The technical problem to be solved by the present invention is to provide a data protection method, device, equipment and medium based on the MAC system to ensure the security of screen data under the MAC system and prevent data leakage.

[0005] In a first aspect, the present invention provides a data protection method based on a MAC system, comprising the following steps:

[0006] Step 1. Log in to your account and set the operation level in the Mac system according to the account's permission level, including prohibiting screen sharing, allowing sharing but prohibiting screenshots, allowing sharing and screenshots, and free sharing;

[0007] Step 2: Set a dynamic library according to the operation level and inject the dynamic library into the Mac system. The dynamic library is used to detect the shared screen in real time, control the screenshot operation of the app, and control other apps to prevent screenshots;

[0008] Step 3, when the dynamic library detects that the account is sharing the screen or window, it obtains the operation level of the account;

[0009] If sharing is prohibited: block the sharing request;

[0010] If sharing is allowed but screenshots are prohibited: screen sharing is allowed but screenshots are prohibited;

[0011] If sharing and screenshots are allowed: screen sharing and screenshots are allowed, and a hidden watermark is added to the screenshots;

[0012] If it is shared freely, there are no restrictions on user operations.

[0013] In a second aspect, the present invention provides a data protection device based on a MAC system, comprising:

[0014] Set the operation level module, log in to the account, and set the operation level in the Mac system according to the account's permission level, including prohibiting screen sharing, allowing sharing but prohibiting screenshots, allowing sharing and screenshots, and free sharing;

[0015] Injection operation permission module, set dynamic library according to operation level, inject the dynamic library into Mac system, the dynamic library is used to detect screen sharing in real time, control the screenshot operation of this app, and control other apps to prevent screenshot;

[0016] The control operation module, when the dynamic library detects that the account is sharing the screen or window, obtains the operation level of the account;

[0017] If sharing is prohibited: block the sharing request;

[0018] If sharing is allowed but screenshots are prohibited: screen sharing is allowed but screenshots are prohibited;

[0019] If sharing and screenshots are allowed: screen sharing and screenshots are allowed, and a hidden watermark is added to the screenshots;

[0020] If it is shared freely, there are no restrictions on user operations.

[0021] In a third aspect, the present invention provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method described in the first aspect when executing the program.

[0022] In a fourth aspect, the present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in the first aspect.

[0023] One or more technical solutions provided by the present invention have at least the following technical effects or advantages:

[0024] Permission flexibility: Users can freely set sharing and screenshot permissions according to their needs to meet privacy and information protection requirements in different scenarios.

[0025] Multi-level protection: The present invention includes three protection methods: sharing permission control, screenshot restriction and hidden watermark, to ensure information security and traceability after leakage.

[0026] Leak tracing: When screenshots are allowed, the hidden watermark function ensures the ability to trace information after leakage, and the metadata contained in the watermark can provide effective tracing clues.

[0027] Real-time feedback: The current sharing status prompt information is displayed at the top of the screen to help users understand the working status of the screen saver at any time and avoid operational errors.

[0028] The above description is only an overview of the technical solution of the present invention. In order to more clearly understand the technical means of the present invention, it can be implemented according to the contents of the specification. In order to make the above and other purposes, features and advantages of the present invention more obvious and easy to understand, the specific implementation methods of the present invention are listed below. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] The present invention will be further described below in conjunction with embodiments with reference to the accompanying drawings.

[0030] Figure 1 is a flow chart of the method in Embodiment 1 of the present invention;

[0031] Figure 2 It is a schematic diagram of the structure of the device in the second embodiment of the present invention. DETAILED DESCRIPTION

[0032] The technical solution in the embodiment of the present application has the following general idea:

[0033] Step 1: Permission level setting Users define the permission level for screen sharing and screenshots in the system settings, including prohibiting sharing, allowing sharing and screenshots but with watermarks, or free sharing permissions. The system will use these settings as the basis for each screen sharing detection.

[0034] Step 2: Dynamic library injection The system injects the dynamic library into the macOS screen management module at startup. The dynamic library is responsible for real-time detection of the status of screen sharing, window sharing, and screenshot operations, and dynamically controls these behaviors according to the permission level.

[0035] Step 3: The screen sharing detection dynamic library continuously monitors the system's screen sharing status and detects the permission level when the user attempts to share the screen or window:

[0036] If sharing is prohibited: the system will immediately block the sharing request and prompt the user that the operation is prohibited.

[0037] If sharing is allowed but screenshots are prohibited: Users can share their screens, but any attempts to take screenshots will be blocked.

[0038] If sharing and screenshots are allowed but watermark is required: Users can freely share their screens and take screenshots, but the system will add a hidden watermark to the screenshots.

[0039] Step 4: Adding a hidden watermark When screenshots are allowed, the system will automatically embed a hidden watermark in the screenshot, including the identity information of the sharer, the screenshot time, and metadata such as the device ID, to ensure the traceability of subsequent leaks. The hidden watermark is invisible and does not affect normal viewing, but can be detected and extracted through special tools when necessary.

[0040] Step 5: The real-time status feedback system displays the current sharing or screenshot permission status in the upper right corner of the screen, and uses icons or text prompts to help users understand whether the current sharing settings meet the permission level to avoid misoperation.

[0041] 1. Control this app to prevent screenshots

[0042] 1. Encapsulate NSWindow and rewrite the SharingType value;

[0043] 2. Control all windows inherited from the encapsulated NSWindow;

[0044] 3. Accept the authority identification issued;

[0045] 4. Set the corresponding SharingType to NSWindowSharingNone (cannot take screenshots) or NSWindowSharingReadOnly (can take screenshots). After this setting, it will be triggered directly when performing the corresponding operation.

[0046] 2. Control other apps to prevent screenshots

[0047] 1. Make a dylib, and replace the viewDidload of NSWindowController in the dylib through object-c method swizzling (so that all software will execute the code we set when running);

[0048] 2. Replace the SharingType property value in the rewritten viewDidload;

[0049] 3. Specify injection of dylib through DYLD_INSERT_LIBRARIES (load dylib before the target program starts);

[0050] 4. Start the app, the system loads dylib and executes the control code. After this setting, it will be triggered directly when performing the corresponding operation.

[0051] 3. Monitor screen sharing status

[0052] 1. Check isCaptured of UIScreen to determine whether it is currently in the recording state;

[0053] 2. Monitor system events through CGSRegisterNotifyProc, the event id is 0x5de / 0x5df, and receive messages about the system entering and ending the recording state;

[0054] 3. Write a callback function to process system messages;

[0055] 4. Protect the nswindow UI that needs to be kept confidential, that is, when recording or sharing the screen, others cannot see the protected UI.

[0056] Embodiment 1

[0057] like Figure 1 As shown, this embodiment provides a data protection method based on a MAC system, comprising the following steps:

[0058] Step 1. Log in to your account and set the operation level in the Mac system according to the account's permission level, including prohibiting screen sharing, allowing sharing but prohibiting screenshots, allowing sharing and screenshots, and free sharing;

[0059] Step 2: Set a dynamic library according to the operation level and inject the dynamic library into the Mac system. The dynamic library is used to detect the shared screen in real time, control the screenshot operation of the app, and control other apps to prevent screenshots;

[0060] Step 3, when the dynamic library detects that the account is sharing the screen or window, it obtains the operation level of the account;

[0061] If sharing is prohibited: block the sharing request;

[0062] If sharing is allowed but screenshots are prohibited: screen sharing is allowed but screenshots are prohibited;

[0063] If sharing and screenshots are allowed: screen sharing and screenshots are allowed, and a hidden watermark is added to the screenshots;

[0064] If it is shared freely, there are no restrictions on user operations.

[0065] In this embodiment, preferably, the control of the screenshot operation of the app is specifically as follows: encapsulating NSWindow and rewriting the SharingType value; controlling all windows to inherit the encapsulated NSWindow, receiving the operation level, and if the screenshot operation is not allowed, setting the corresponding SharingType attribute value to NSWindowSharingNone; if the screenshot operation is allowed, setting the corresponding SharingType attribute value to NSWindowSharingReadOnly;

[0066] The control of other apps' screenshot operation is specifically as follows: create a dylib, replace the viewDidload of NSWindowController in the dylib by method dswizzling; replace the SharingType attribute value in the rewritten viewDidload; if the screenshot operation is not allowed, set the corresponding SharingType attribute value to NSWindowSharingNone; if the screenshot operation is allowed, set the corresponding SharingType attribute value to NSWindowSharingReadOnly; specify the injection of the dylib by DYLD_INSERT_LIBRARIES; when other apps are started, the Mac system loads the dylib;

[0067] The real-time detection of shared screen is specifically as follows: detect isCaptured of UIScreen to determine whether it is currently in screen recording state; monitor mac system events through CGSRegisterNotifyProc, the mac system event id is 0x5de or 0x5df, id 0x5de indicates that the mac system enters the screen recording state message, id 0x5df indicates that the mac system ends the screen recording state message; if sharing is not allowed, when the id is 0x5de, a callback function is used to protect the UI of the nswindow that needs to be kept confidential according to the operation level; if sharing is allowed, no processing is performed.

[0068] In this embodiment, preferably, the adding of a hidden watermark on the screenshot is specifically: embedding a layer of hidden watermark in the screenshot, including the identity information of the sharer, the screenshot time and the device ID.

[0069] This embodiment preferably also includes step 4, displaying the current operation level at a set position on the screen to prompt the user of the current operation level of the mac system.

[0070] Based on the same inventive concept, the present application also provides a device corresponding to the method in Example 1, see Example 2 for details.

[0071] Embodiment 2

[0072] like Figure 2 As shown, in this embodiment, a data protection device based on a MAC system is provided, including:

[0073] Set the operation level module, log in to the account, and set the operation level in the Mac system according to the account's permission level, including prohibiting screen sharing, allowing sharing but prohibiting screenshots, allowing sharing and screenshots, and free sharing;

[0074] Injection operation permission module, set dynamic library according to operation level, inject the dynamic library into Mac system, the dynamic library is used to detect screen sharing in real time, control the screenshot operation of this app, and control other apps to prevent screenshot;

[0075] The control operation module, when the dynamic library detects that the account is sharing the screen or window, obtains the operation level of the account;

[0076] If sharing is prohibited: block the sharing request;

[0077] If sharing is allowed but screenshots are prohibited: screen sharing is allowed but screenshots are prohibited;

[0078] If sharing and screenshots are allowed: screen sharing and screenshots are allowed, and a hidden watermark is added to the screenshots;

[0079] If it is shared freely, there are no restrictions on user operations.

[0080] In this embodiment, preferably, the control of the screenshot operation of the app is specifically as follows: encapsulating NSWindow and rewriting the SharingType value; controlling all windows to inherit the encapsulated NSWindow, receiving the operation level, and if the screenshot operation is not allowed, setting the corresponding SharingType attribute value to NSWindowSharingNone; if the screenshot operation is allowed, setting the corresponding SharingType attribute value to NSWindowSharingReadOnly;

[0081] The control of other app screenshot operations is specifically as follows: create a dylib, replace the viewDidload of NSWindowController in the dylib through method swizzling; replace the SharingType attribute value in the rewritten viewDidload; if the screenshot operation is not allowed, set the corresponding SharingType attribute value to NSWindowSharingNone; if the screenshot operation is allowed, set the corresponding SharingType attribute value to NSWindowSharingReadOnly; specify the injection of the dylib through DYLD_INSERT_LIBRARIES; when other apps are started, the Mac system loads the dylib;

[0082] The real-time detection of shared screen is specifically as follows: detect isCaptured of UIScreen to determine whether it is currently in screen recording state; monitor mac system events through CGSRegisterNotifyProc, the mac system event id is 0x5de or 0x5df, id 0x5de indicates that the mac system enters the screen recording state message, id 0x5df indicates that the mac system ends the screen recording state message; if sharing is not allowed, when the id is 0x5de, a callback function is used to protect the UI of the nswindow that needs to be kept confidential according to the operation level; if sharing is allowed, no processing is performed.

[0083] In this embodiment, preferably, the adding of a hidden watermark on the screenshot is specifically: embedding a layer of hidden watermark in the screenshot, including the identity information of the sharer, the screenshot time and the device ID.

[0084] This embodiment preferably also includes a prompt information module, which displays the current operation level at a set position on the screen to prompt the user of the current operation level of the mac system.

[0085] Since the device introduced in the second embodiment of the present invention is a device used to implement the method of the first embodiment of the present invention, those skilled in the art can understand the specific structure and deformation of the device based on the method introduced in the first embodiment of the present invention, so it is not described here in detail. All devices used in the method of the first embodiment of the present invention belong to the scope of protection of the present invention.

[0086] Based on the same inventive concept, the present application provides an electronic device embodiment corresponding to the first embodiment, see the third embodiment for details.

[0087] Embodiment 3

[0088] This embodiment provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, any implementation method in the first embodiment can be implemented.

[0089] Since the electronic device introduced in this embodiment is a device used to implement the method in the first embodiment of the present application, based on the method introduced in the first embodiment of the present application, a person skilled in the art can understand the specific implementation of the electronic device of the present embodiment and its various variations, so how the electronic device implements the method in the embodiment of the present application is not described in detail here. As long as a person skilled in the art implements the device used by the method in the embodiment of the present application, it belongs to the scope of protection of the present application.

[0090] Based on the same inventive concept, the present application provides a storage medium corresponding to the first embodiment, see the fourth embodiment for details.

[0091] Embodiment 4

[0092] This embodiment provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, any implementation method in the first embodiment can be implemented.

[0093] The technical solution provided in the embodiments of the present application has at least the following technical effects or advantages:

[0094] This embodiment enables macOS screen sharing protection by real-time detection of screen sharing status and combining permission level control to implement restrictions on screen sharing and screenshots, and provides a traceability function by hiding the watermark.

[0095] The permission control of this embodiment allows users to safely manage and share confidential content in their daily work, reducing the risk of information leakage.

[0096] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0097] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0098] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0099] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0100] Although the specific implementation modes of the present invention are described above, those skilled in the art should understand that the specific implementation modes described are only illustrative and are not intended to limit the scope of the present invention. Equivalent modifications and changes made by those skilled in the art in accordance with the spirit of the present invention should be included in the scope of protection of the claims of the present invention.

Claims

1. A data protection method based on mac system, characterized by: The steps include: Step 1. Log in to your account and set the operation level in the Mac system according to the account's permission level, including prohibiting screen sharing, allowing sharing but prohibiting screenshots, allowing sharing and screenshots, and free sharing; Step 2: Set a dynamic library according to the operation level and inject the dynamic library into the Mac system. The dynamic library is used to detect the shared screen in real time, control the screenshot operation of the app, and control other apps to prevent screenshots; Step 3, when the dynamic library detects that the account is sharing the screen or window, it obtains the operation level of the account; If sharing is prohibited: block the sharing request; If sharing is allowed but screenshots are prohibited: screen sharing is allowed but screenshots are prohibited; If sharing and screenshots are allowed: screen sharing and screenshots are allowed, and a hidden watermark is added to the screenshots; If it is shared freely, there are no restrictions on user operations.

2. According to claim 1, a data protection method based on MAC system is characterized in that: The control of the screenshot operation of the app is specifically as follows: encapsulate NSWindow and rewrite the SharingType value; control all windows to inherit the encapsulated NSWindow, receive the operation level, and if the screenshot operation is not allowed, set the corresponding SharingType attribute value to NSWindowSharingNone; if the screenshot operation is allowed, set the corresponding SharingType attribute value to NSWindowSharingReadOnly; The control of the screenshot operation of other apps is specifically as follows: create a dylib, replace the viewDidload of NSWindowController in the dylib by method swizzling; replace the SharingType attribute value in the rewritten viewDidload; if the screenshot operation is not allowed, set the corresponding SharingType attribute value to NSWindowSharingNone; if the screenshot operation is allowed, set the corresponding SharingType attribute value to NSWindowSharingReadOnly; specify the injection of the dylib through DYLD_INSERT_LIBRARIES; when other apps are started, the Mac system loads the dylib; The real-time detection of screen sharing is specifically as follows: detecting isCaptured of UIScreen to determine whether it is currently in screen recording state; monitoring mac system events through CGSRegisterNotifyProc, wherein the mac system event id is 0x5de or 0x5df, id 0x5de indicates that the mac system enters the screen recording state message, and id 0x5df indicates that the mac system ends the screen recording state message; If sharing is not allowed, when the id is 0x5de, a callback function is used to protect the UI of the nswindow that needs to be kept confidential according to the operation level; If sharing is allowed, no processing will be done.

3. The data protection method based on MAC system according to claim 1 is characterized in that: The adding of a hidden watermark on the screenshot specifically includes: embedding a layer of hidden watermark in the screenshot, including the identity information of the sharer, the screenshot time and the device ID.

4. The data protection method based on MAC system according to claim 1 is characterized in that: It also includes step 4, displaying the current operation level at a set position on the screen to prompt the user of the current operation level of the Mac system.

5. A data protection device based on mac system, characterized by: include: Set the operation level module, log in to the account, and set the operation level in the Mac system according to the account's permission level, including prohibiting screen sharing, allowing sharing but prohibiting screenshots, allowing sharing and screenshots, and free sharing; Injection operation permission module, set dynamic library according to operation level, inject the dynamic library into Mac system, the dynamic library is used to detect screen sharing in real time, control the screenshot operation of this app, and control other apps to prevent screenshot; The control operation module, when the dynamic library detects that the account is sharing the screen or window, obtains the operation level of the account; If sharing is prohibited: block the sharing request; If sharing is allowed but screenshots are prohibited: screen sharing is allowed but screenshots are prohibited; If sharing and screenshots are allowed: screen sharing and screenshots are allowed, and a hidden watermark is added to the screenshots; If it is shared freely, there are no restrictions on user operations.

6. A data protection device based on MAC system according to claim 5, characterized in that: The control of the screenshot operation of the app is specifically as follows: encapsulate NSWindow and rewrite the SharingType value; control all windows to inherit the encapsulated NSWindow, receive the operation level, and if the screenshot operation is not allowed, set the corresponding SharingType attribute value to NSWindowSharingNone; if the screenshot operation is allowed, set the corresponding SharingType attribute value to NSWindowSharingReadOnly; The control of other app screenshot operations is specifically as follows: create a dylib, replace the viewDidload of NSWindowController in the dylib through method swizzling; replace the SharingType attribute value in the rewritten viewDidload; if the screenshot operation is not allowed, set the corresponding SharingType attribute value to NSWindowSharingNone; if the screenshot operation is allowed, set the corresponding SharingType attribute value to NSWindowSharingReadOnly; specify the injection of the dylib through DYLD_INSERT_LIBRARIES; when other apps are started, the Mac system loads the dylib; The real-time detection of screen sharing is specifically as follows: detecting isCaptured of UIScreen to determine whether it is currently in screen recording state; monitoring mac system events through CGSRegisterNotifyProc, wherein the mac system event id is 0x5de or 0x5df, id 0x5de indicates that the mac system enters the screen recording state message, and id 0x5df indicates that the mac system ends the screen recording state message; If sharing is not allowed, when the id is 0x5de, a callback function is used to protect the UI of the nswindow that needs to be kept confidential according to the operation level; If sharing is allowed, no processing will be done.

7. The data protection device based on MAC system according to claim 5, characterized in that: The adding of a hidden watermark on the screenshot specifically includes: embedding a layer of hidden watermark in the screenshot, including the identity information of the sharer, the screenshot time and the device ID.

8. The data protection device based on MAC system according to claim 5, characterized in that: It also includes a prompt information module, which displays the current operation level at a set position on the screen to prompt the user of the current operation level of the Mac system.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the method according to any one of claims 1 to 4 is implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 4 is implemented.