WO2025005821A1 - Processing and displaying restricted data - Google Patents

Processing and displaying restricted data Download PDF

Info

Publication number
WO2025005821A1
WO2025005821A1 PCT/RU2023/000200 RU2023000200W WO2025005821A1 WO 2025005821 A1 WO2025005821 A1 WO 2025005821A1 RU 2023000200 W RU2023000200 W RU 2023000200W WO 2025005821 A1 WO2025005821 A1 WO 2025005821A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
prohibited
processing
distributed information
transmitted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
PCT/RU2023/000200
Other languages
French (fr)
Russian (ru)
Inventor
Андрей Александрович ОБЕРЕМОК
Надежда Леонидовна ОБЕРЕМОК
Денис Михайлович КОЗИЦКИЙ
Сергей Сергеевич АСТАФУРОВ
Никита Алексеевич ЦАРЕВ
Дмитрий Евгеньевич ЗАХАРОВ
Дмитрий Сергеевич ПРИХОДЧЕНКО
Владас Прано МАСТАВИЧУС
Вадим Михайлович КАПЦИНЕЛЬ
Георгий Гурамович ДИМИТРИАДИ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Obshchestvo S Ogranichennoj Otvetstvennost'yu "tekhnologii Otraslevoj Transformacii"
Original Assignee
Obshchestvo S Ogranichennoj Otvetstvennost'yu "tekhnologii Otraslevoj Transformacii"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Obshchestvo S Ogranichennoj Otvetstvennost'yu "tekhnologii Otraslevoj Transformacii" filed Critical Obshchestvo S Ogranichennoj Otvetstvennost'yu "tekhnologii Otraslevoj Transformacii"
Publication of WO2025005821A1 publication Critical patent/WO2025005821A1/en
Anticipated expiration legal-status Critical
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9035Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/904Browsing; Visualisation therefor

Definitions

  • This technical solution generally relates to methods of processing data and preparing data structures for viewing and visualization, namely to a method of processing and visualizing data prohibited for transmission in distributed information systems.
  • RU 2759210 SYSTEM AND METHOD FOR PROTECTING ELECTRONIC DOCUMENTS CONTAINING CONFIDENTIAL INFORMATION FROM UNAUTHORIZED ACCESS
  • RU 2759210 SYSTEM AND METHOD FOR PROTECTING ELECTRONIC DOCUMENTS CONTAINING CONFIDENTIAL INFORMATION FROM UNAUTHORIZED ACCESS
  • RU 2759210 SYSTEM AND METHOD FOR PROTECTING ELECTRONIC DOCUMENTS CONTAINING CONFIDENTIAL INFORMATION FROM UNAUTHORIZED ACCESS
  • RU 2759210 SYSTEM AND METHOD FOR PROTECTING ELECTRONIC DOCUMENTS CONTAINING CONFIDENTIAL INFORMATION FROM UNAUTHORIZED ACCESS
  • RU 2759210 SYSTEM AND METHOD FOR PROTECTING ELECTRONIC DOCUMENTS CONTAINING CONFIDENTIAL INFORMATION FROM UNAUTHORIZED ACCESS
  • RU 2759210 SYSTEM AND METHOD FOR PROTECTING ELECTRONIC DOCUMENT
  • Fig. 2 illustrates an example of the operation of the described technical solution.
  • Distributed information system any information system that allows for the organization of interaction between independent but interconnected computers.
  • Distributed systems are those that are not located in one controlled area or at one facility. These systems are intended to automate facilities that are characterized by territorial distribution of points of information generation and consumption.
  • SQL queries are sets of commands for working with relational (tabular) databases.
  • SQL abbreviations: Structured Query Language
  • SQL is a declarative programming language used to create, modify, and manage data in a relational database managed by the corresponding database management system.
  • a database abstraction layer is an application programming interface that unifies communication between a computer application and a database management system (DBMS) such as SQL Server, DB2, MySQL, PostgreSQL, Oracle, or SQLite.
  • DBMS database management system
  • SQL Server DB2
  • MySQL PostgreSQL
  • Oracle Oracle
  • SQLite database management system
  • Abstraction layers reduce the amount of work by providing a consistent API to the developer and by hiding as much of the database specifics as possible behind that interface.
  • abstraction layers with different interfaces in many programming languages.
  • a system means, among other things, a computer system, a computer (electronic computer), a CNC (numerical control), a PLC (programmable logic controller), computerized control systems and any other devices capable of performing a given, clearly defined sequence of operations (actions, instructions).
  • a command processing unit is an electronic unit or integrated circuit (microprocessor) that executes machine instructions (programs).
  • a program is a sequence of instructions intended for execution by a computer control device or a command processing device.
  • instructions may refer generally to software instructions or software commands that are written in a given programming language to perform a specific function, such as, for example, receiving and processing data, generating a user profile, receiving and transmitting signals, analyzing received data, identifying a user, etc.
  • the instructions may be implemented in a variety of ways, including, for example, object-oriented methods.
  • the instructions may be implemented, via the programming language C++, Java, Python, various libraries (for example, Microsoft Foundation Classes), etc.
  • the instructions that implement the processes described in this solution can be transmitted via both wired and wireless data transmission channels, such as Wi-Fi, Bluetooth, USB, WLAN, LAN, etc.
  • FIG. 1 shows a diagram of the method
  • the prohibition of certain data can be set explicitly by the user of the distributed information system, or it can be determined by the server in real time, using specified algorithms. In this case, the method of storing the identified prohibitions does not change.
  • constraints are formulated in any declarative (in the form of a set of rule lines that form a description of the required constraint) or imperative (in the form of a set of operators that form the logic for checking the constraint) programming language.
  • such a set of rules can be implemented as a reference table in the DB.
  • Table 1 Example of the structure of a reference table of attribute constraints.
  • access to data at another level of the system can be provided by forming an abstract layer - the presentation layer (VIEW) in the DB.
  • VIEW presentation layer
  • confidential attributes are either set to zero or calculated taking into account the restrictions in the table above.
  • Table 2 Example of a table with employees' salaries.
  • Table 3 Example of a table with restrictions on the transfer of salary data.
  • the end device may request the user or automatically download the necessary data from local storage.
  • the system for combining data from information systems for their subsequent visualization contains one or more processors (301) connected by a common information exchange bus, memory means such as RAM (302) and ROM (303), and input/output interfaces (304).
  • the processor (301) (or several processors, a multi-core processor, etc.) can be selected from a range of devices that are widely used today, such as those from manufacturers such as: IntelTM, AMDTM, AppleTM, Samsung ExynosTM, MediaTEKTM, Qualcomm SnapdragonTM, etc.
  • the processor or one of the processors used in the system (300) must also include a graphics processor, such as an NVIDIA GPU with a software model compatible with CUDA, or Graphcore, the type of which is also is suitable for the full or partial implementation of the method, and can also be used for training and applying machine learning models in various information systems.
  • a graphics processor such as an NVIDIA GPU with a software model compatible with CUDA, or Graphcore, the type of which is also is suitable for the full or partial implementation of the method, and can also be used for training and applying machine learning models in various information systems.
  • RAM (302) is a random access memory and is intended for storing machine-readable instructions executed by the processor (301) for performing the necessary operations for logical data processing.
  • RAM (302) contains executable instructions of the operating system and the corresponding software components (applications, software modules, etc.). In this case, the available memory capacity of the graphic card or graphic processor can act as RAM (302).
  • ROM (303) is one or more permanent storage devices, such as a hard disk drive (HDD), a solid-state drive (SSD), flash memory (EEPROM, NAND, etc.), optical storage media (CD-R/RW, DVD-R/RW, BlueRay Disc, MD), etc.
  • I/O interfaces To organize the operation of the device components (300) and to organize the operation of external connected devices, various types of I/O interfaces (304) are used. The choice of the corresponding interfaces depends on the specific design of the computing device, which may include, but are not limited to: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232, etc.
  • various means (305) of I/O information are used, for example, a keyboard, a display (monitor), a touch display, a touchpad, a joystick, a mouse, a light pen, a stylus, a touch panel, a trackball, speakers, a microphone, augmented reality means, optical sensors, a tablet, light indicators, a projector, a camera, biometric identification means (a retina scanner, a fingerprint scanner, a voice recognition module), etc.
  • the network interaction means (306) ensures the transmission of data via an internal or external computer network, for example, an Intranet, the Internet, a LAN, etc.
  • One or more means (306) may be, but are not limited to: an Ethernet card, a GSM modem, a GPRS modem, an LTE modem, a 5G modem, a satellite communication module, an NFC module, a Bluetooth and/or BLE module, a Wi-Fi module, etc.
  • device elements (300) for implementing various software and hardware architectural solutions may vary while maintaining the required functionality.
  • such an implementation may be performed using electronic components used to create digital integrated circuits. I am not limited to, but may use microcircuits whose operating logic is determined during manufacture, or programmable logic integrated circuits (FPGAs), whose operating logic is specified through programming.
  • FPGAs programmable logic integrated circuits
  • programmers and debugging environments are used that allow you to specify the desired structure of a digital device in the form of a basic electrical circuit or a program in special hardware description languages: Verilog, VHDL, AHDL, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Storage Device Security (AREA)

Abstract

A method for processing and displaying restricted data in a distributed information system comprises the steps of: identifying restricted data and creating a shared data array for all levels of the system, in which a list of restricted data, templates for the subsequent substitution of said data, the origin of the restriction, and network identifiers are stored (101); making the data array accessible to requests from all nodes of the distributed information system (102); creating a logic for the automatic verification of data for filling the data array (103); sending to the data array, upon receipt of a data processing request from a node of the distributed information system, a request with a list of the data intended for processing and checking if said data can be processed (104); if restricted data are found, altering the processing of said data by generating an abstract data layer in which the restricted data are substituted with data from a template (105); generating and displaying the processed data on the basis of the generated abstract layer (106). The invention makes it possible to protect restricted data during handling in distributed information systems.

Description

ОБРАБОТКА И ВИЗУАЛИЗАЦИЯ ЗАПРЕЩЕННЫХ К ПЕРЕДАЧЕ ДАННЫХ PROCESSING AND VISUALIZATION OF DATA PROHIBITED FROM TRANSFER

ОБЛАСТЬ ТЕХНИКИ AREA OF TECHNOLOGY

[1] Настоящее техническое решение, в общем, относится к способам обработки данных и подготовки структур данных для просмотра и визуализации, а именно к способу обработки и визуализации запрещенных к передаче данных в распределенных информационных системах. [1] This technical solution generally relates to methods of processing data and preparing data structures for viewing and visualization, namely to a method of processing and visualizing data prohibited for transmission in distributed information systems.

УРОВЕНЬ ТЕХНИКИ LEVEL OF TECHNOLOGY

[2] В настоящее время известны концепции периферийных вычислений (Edge Computing), в которой вычисления осуществляются как можно ближе к пользователю в сложной иерархической клиент-серверной архитектуре, но при этом необязательно на клиентском устройстве. Также известен способ распределения вычислений частями, т.е. разные этапы алгоритма выполняются на разных устройствах. [2] Currently, concepts of edge computing are known, in which computations are performed as close to the user as possible in a complex hierarchical client-server architecture, but not necessarily on the client device. A method of distributing computations in parts is also known, i.e. different stages of the algorithm are performed on different devices.

[3] В зависимости от типа задачи могут быть запреты на передачу данных между разными устройствами (например, с сервера на клиентскую часть и наоборот, с одного сервера на другой и др.). [3] Depending on the type of task, there may be restrictions on the transfer of data between different devices (for example, from the server to the client part and vice versa, from one server to another, etc.).

[4] Например, персональные данные физических лиц может быть разрешено хранить только на компьютере пользователя. [4] For example, personal data of individuals may only be permitted to be stored on the user's computer.

[5] Например, детали коммерческих соглашений не могут быть переданы с определенных серверов компании на другие, при этом сам факт такого соглашения может или должен быть передан, т.н. коммерческая тайна. [5] For example, details of commercial agreements cannot be transferred from certain company servers to others, although the fact of such an agreement itself may or should be transferred, a so-called commercial secret.

[6] Из уровня техники известно техническое решение, описанное в RU 2541895 «СИСТЕМА И СПОСОБ ПОВЫШЕНИЯ ЗАЩИЩЕННОСТИ ДАННЫХ ОРГАНИЗАЦИИ ПУТЕМ СОЗДАНИЯ ИЗОЛИРОВАННОЙ СРЕДЫ», 25.12.2012, Закрытое акционерное общество ’’Лаборатория Касперского” (RU): «способ обнаружения нарушений правил работы с данными включает в себя: а) модификацию кода приложения путем замены вызова функций, работающих с данными, вызовом функций-обработчиков; б) сбор информации об обращениях модифицированного приложения к функциям, работающим с данными, через вызов соответствующих функций-обработчиков; в) анализ информации, собранной на этапе б), на предмет несоответствия правилам работы с данными, установленными политикой безопасности; г) обнаружение нарушения правил работы с данным на основании анализа». [6] The technical solution described in RU 2541895 “SYSTEM AND METHOD FOR INCREASING THE SECURITY OF ORGANIZATIONAL DATA BY CREATING AN ISOLATED ENVIRONMENTS”, 12/25/2012, Closed Joint-Stock Company “Kaspersky Lab” (RU): “the method for detecting violations of the rules for working with data includes: a) modifying the application code by replacing the call of functions working with data with a call of handler functions; b) collecting information about the modified application’s calls to functions working with data by calling the corresponding handler functions; c) analyzing the information collected at stage b) for non-compliance with the rules for working with data established by the security policy; d) detecting a violation of the rules for working with data based on the analysis.”

[7] Из уровня техники известно техническое решение, описанное в RU 2759210 «СИСТЕМА И СПОСОБ ЗАЩИТЫ ЭЛЕКТРОННЫХ ДОКУМЕНТОВ, СОДЕРЖАЩИХ КОНФИДЕНЦИАЛЬНУЮ ИНФОРМАЦИЮ, ОТ НЕСАНКЦИОНИРОВАННОГО ДОСТУПА», 01.09.2020, Общество с ограниченной ответственностью ’’Кросстех Солюшнс Групп” (RU): система защиты электронных документов, содержащих конфиденциальную информацию, от несанкционированного доступа содержит: подсистему тегирования; подсистему разграничения доступа; подсистему слежения за файлами; подсистему классификации; подсистему обезличивания; подсистему уникализации экрана; подсистему передачи данных; подсистему хранения данных; подсистему распознавания; подсистему администрирования». [7] The prior art includes a technical solution described in RU 2759210 "SYSTEM AND METHOD FOR PROTECTING ELECTRONIC DOCUMENTS CONTAINING CONFIDENTIAL INFORMATION FROM UNAUTHORIZED ACCESS", 01.09.2020, Crosstech Solutions Group Limited Liability Company (RU): a system for protecting electronic documents containing confidential information from unauthorized access comprises: a tagging subsystem; an access control subsystem; a file tracking subsystem; a classification subsystem; an anonymization subsystem; a screen uniqueization subsystem; a data transmission subsystem; a data storage subsystem; a recognition subsystem; an administration subsystem."

[8] Из уровня техники известно техническое решение, описанное в US 10,931,652 В2 «Data sealing with a sealing enclave», 24.01.2017, Microsoft Technology Licensing LLC (US): «способ содержит этапы: отправляют в анклав- источник, размещенный в первой нативной платформе анклава, первый отчет аттестации для анклава запечатывания, размещенного во второй нативной платформе анклава; принимают разрешенный список и ассоциированные данные анклава в анклаве запечатывания от анклава-источника, при этом разрешенный список включает в себя список из одного или более идентификаторов анклава, которым разрешено распечатывать данные анклава; безопасно сохраняют данные анклава и разрешенный список, и ограничивают доступ к данным анклава для анклавов с аутентифицированными идентификаторами, в соответствии с тем как разрешено согласно разрешенному списку». [8] The prior art includes a technical solution described in US 10,931,652 B2 “Data sealing with a sealing enclave”, 24.01.2017, Microsoft Technology Licensing LLC (US): “the method comprises the steps of: sending to a source enclave located in a first native enclave platform a first attestation report for a sealing enclave located in a second native enclave platform; receiving an allowed list and associated enclave data in the sealing enclave from the source enclave, wherein the allowed list includes a list of one or more enclave identifiers that are allowed to unseal the enclave data; securely storing enclave data and the allowlist, and restrict access to enclave data for enclaves with authenticated identities as permitted by the allowlist."

[9] Недостатками известных решений являются то обстоятельство, что при работе с данными, требующих защиты, не обеспечивается локализованность их нахождения, и как следствие - не обеспечивается максимальная защита, а также недостатками являются ограниченность набора защищаемых данных и фиксированность защиты на конкретных расширениях определённых файлов. [9] The disadvantages of known solutions are the fact that when working with data that requires protection, the localization of their location is not ensured, and as a result, maximum protection is not provided, and other disadvantages include the limited set of protected data and the fixation of protection on specific extensions of certain files.

РАСКРЫТИЕ ИЗОБРЕТЕНИЯ DISCLOSURE OF INVENTION

[10] Данное техническое решение направлено на устранение недостатков, присущих существующим решениям, известным из уровня техники. [10] This technical solution is aimed at eliminating the shortcomings inherent in existing solutions known from the prior art.

[11] Решаемой технической проблемой в данном техническом решении является то, что при работе с данными, требующих защиты, не обеспечивается локализованность их нахождения, и как следствие - не обеспечивается максимальная защита, а также ограниченность набора защищаемых данных и фиксированность защиты на конкретных расширениях определённых файлов. [11] The technical problem solved in this technical solution is that when working with data that requires protection, the localization of their location is not ensured, and as a consequence, maximum protection is not ensured, as well as the limited set of protected data and the fixation of protection on specific extensions of certain files.

[12] Основным техническим результатом, проявляющимся при решении вышеуказанной проблемы, является обеспечение защиты данных, запрещенных к передаче, при работе в распределенных информационных системах. [12] The main technical result that emerges from solving the above-mentioned problem is ensuring the protection of data prohibited from being transmitted when working in distributed information systems.

[13] Дополнительными техническими результатами, проявляющимся при решении вышеуказанной проблемы, являются возможность обеспечения защиты конкретных атрибутов данных, а также вариантность настройки защиты данных. [13] Additional technical results that emerge from solving the above problem include the ability to ensure protection of specific data attributes, as well as the variability of data protection settings.

[14] Указанные технические результаты достигаются благодаря осуществлению способа обработки и визуализации запрещенных к передаче данных в распределенных информационных системах, реализуемого с помощью процессора и устройства хранения данных, включающего следующие шаги: [14] The specified technical results are achieved by implementing a method for processing and visualizing data prohibited from transmission in distributed information systems, implemented using a processor and a data storage device, including the following steps:

• при построении распределенной информационной системы определяют данные, запрещенные к передаче, формируя общий для всех уровней системы массив данных, где хранится перечень запрещённых к передаче данных, шаблоны для последующей замены этих данных, источник запрета к передаче и сетевые идентификаторы; • when constructing a distributed information system, they determine data prohibited from being transmitted by forming a common data array for all levels of the system, where a list of data prohibited from being transmitted is stored, templates for the subsequent replacement of this data, the source of the prohibition on transmission, and network identifiers;

• сформированный на предыдущем шаге массив данных делают доступным для запросов со стороны всех узлов построенной распределенной информационной системы; • the data array generated in the previous step is made available for requests from all nodes of the constructed distributed information system;

• формируют логику автоматической проверки данных для автоматического дополнения сформированного на первом шаге массива данных; • при поступлении запроса на обработку данных с узла построенной распределенной информационной системы направляют дополнительный запрос с перечнем данных, предполагаемых к обработке, в сформированный на первом шаге массив данных и проводят проверку возможности обработки; • form the logic of automatic data verification for automatic addition of the data array generated in the first step; • when a request for data processing is received from a node of the constructed distributed information system, an additional request is sent with a list of data to be processed to the data array generated in the first step and the possibility of processing is checked;

• в случае нахождения данных, запрещенных к передаче, изменяют обработку данных путем формирования абстрактного слоя данных с автоматизированной заменой данных, запрещенных к передаче на данные из соответствующего шаблона; • if data prohibited from being transferred is found, the data processing is changed by forming an abstract data layer with the automated replacement of data prohibited from being transferred with data from the corresponding template;

• формируют и осуществляют визуализацию обработанных данных на основе сформированного на предыдущем шаге абстрактного слоя данных. • generate and visualize the processed data based on the abstract data layer generated in the previous step.

[15] В одном из частных примеров осуществления способа в случае нахождения данных, запрещенных к передаче, делают запрос у пользователя на загрузку этих данных из локального хранилища данных. [15] In one of the specific examples of the implementation of the method, in the event of finding data that is prohibited from being transmitted, a request is made to the user to download this data from the local data storage.

[16] В другом частном примере осуществления способа в случае нахождения данных, запрещенных к передаче, автоматически проводят загрузку этих данных из локального хранилища данных. [16] In another particular example of implementing the method, if data is found that is prohibited from being transmitted, this data is automatically downloaded from the local data storage.

[17] Кроме того, заявленный технический результат достигается за счет системы обработки и визуализации запрещенных к передаче данных в распределенных информационных системах, содержащей: [17] In addition, the declared technical result is achieved through a system for processing and visualizing data prohibited for transmission in distributed information systems, containing:

- по меньшей мере одно устройство обработки данных; - at least one data processing device;

- по меньшей мере одно устройство хранения данных; - at least one data storage device;

- по меньшей мере одну программу, где одна или более программ хранятся на одном или более устройствах хранения данных и исполняются на одном и более устройствах обработки данных, причем одна или более программ обеспечивает выполнение следующих шагов: - at least one program, where one or more programs are stored on one or more data storage devices and executed on one or more data processing devices, wherein the one or more programs ensure the execution of the following steps:

• при построении распределенной информационной системы определяют данные, запрещенные к передаче, формируя общий для всех уровней системы массив данных, где хранится перечень запрещённых к передаче данных, шаблоны для последующей замены этих данных, источник запрета к передаче и сетевые идентификаторы; • when constructing a distributed information system, data prohibited from transmission is determined, forming a common one for all levels systems are a data array that stores a list of data prohibited from being transmitted, templates for subsequent replacement of this data, the source of the prohibition on transmission, and network identifiers;

• сформированный на предыдущем шаге массив данных делают доступным для запросов со стороны всех узлов построенной распределенной информационной системы; • the data array generated in the previous step is made available for requests from all nodes of the constructed distributed information system;

• формируют логику автоматической проверки данных для автоматического дополнения сформированного на первом шаге массива данных; • form the logic of automatic data verification for automatic addition of the data array generated in the first step;

• при поступлении запроса на обработку данных с узла построенной распределенной информационной системы направляют дополнительный запрос с перечнем данных, предполагаемых к обработке, в сформированный на первом шаге массив данных и проводят проверку возможности обработки; • when a request for data processing is received from a node of the constructed distributed information system, an additional request is sent with a list of data to be processed to the data array generated in the first step and the possibility of processing is checked;

• в случае нахождения данных, запрещенных к передаче, изменяют обработку данных путем формирования абстрактного слоя данных с автоматизированной заменой данных, запрещенных к передаче на данные из соответствующего шаблона; • if data prohibited from being transferred is found, the data processing is changed by forming an abstract data layer with the automated replacement of data prohibited from being transferred with data from the corresponding template;

• формируют и осуществляют визуализацию обработанных данных на основе сформированного на предыдущем шаге абстрактного слоя данных. • generate and visualize the processed data based on the abstract data layer generated in the previous step.

[18] В одном из частных примеров осуществления системы в случае нахождения данных, запрещенных к передаче, делают запрос у пользователя на загрузку этих данных из локального хранилища данных. [18] In one of the specific examples of the implementation of the system, in the event of finding data that is prohibited from being transmitted, a request is made to the user to download this data from the local data storage.

[19] В другом частном примере осуществления системы в случае нахождения данных, запрещенных к передаче, автоматически проводят загрузку этих данных из локального хранилища данных. КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ [19] In another particular example of the implementation of the system, if data is found that is prohibited from being transmitted, this data is automatically downloaded from the local data storage. BRIEF DESCRIPTION OF DRAWINGS

[20] Признаки и преимущества настоящего технического решения станут очевидными из приводимого ниже подробного описания и прилагаемых чертежей, на которых: [21] Фиг. 1 иллюстрирует блок-схему выполнения заявленного способа. [20] The features and advantages of the present technical solution will become apparent from the following detailed description and the accompanying drawings, in which: [21] Fig. 1 illustrates a block diagram of the implementation of the claimed method.

[22] Фиг. 2 иллюстрирует пример работы описываемого технического решения. [22] Fig. 2 illustrates an example of the operation of the described technical solution.

[23] Фиг. 3 иллюстрирует систему для реализации заявленного способа. [23] Fig. 3 illustrates a system for implementing the claimed method.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ IMPLEMENTATION OF THE INVENTION

[24] Ниже будут описаны термины и понятия, необходимые для реализации настоящего технического решения. [24] Below we will describe the terms and concepts necessary for the implementation of this technical solution.

[25] Атрибут данных — наименование столбца (колонки) в таблице [25] Data attribute - the name of a column in a table

[26] Распределенная информационная система - любая информационная система, позволяющая организовать взаимодействие независимых, но связанных между собой ЭВМ. Под распределенными понимаются ИС, которые не располагаются на одной контролируемой территории, на одном объекте. Эти системы предназначены для автоматизации таких объектов, которые характеризуются территориальной распределенностью пунктов возникновения и потребления информации. [26] Distributed information system - any information system that allows for the organization of interaction between independent but interconnected computers. Distributed systems are those that are not located in one controlled area or at one facility. These systems are intended to automate facilities that are characterized by territorial distribution of points of information generation and consumption.

[27] SQL-запросы — это наборы команд для работы с реляционными (табличными) базами данных. SQL (аббр. от англ. Structured Query Language — «язык структурированных запросов») — декларативный язык программирования, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой соответствующей системой управления базами данных. [27] SQL queries are sets of commands for working with relational (tabular) databases. SQL (abbr. from Structured Query Language) is a declarative programming language used to create, modify, and manage data in a relational database managed by the corresponding database management system.

[28] Абстрактный слой данных (слой абстракции базы данных — Database abstraction layer — DBAL) — это интерфейс прикладного программирования, который унифицирует связь между компьютерным приложением и системами управления базами данных (СУБД), такими как SQL Server, DB2, MySQL, PostgreSQL, Oracle или SQLite. Традиционно все поставщики СУБД предоставляют свой собственный интерфейс, адаптированный к их продуктам, что позволяет программисту реализовать код для всех интерфейсов баз данных, которые он или она хотел бы поддерживать. Уровни абстракции уменьшают объём работы, предоставляя последовательный API разработчику и максимально скрывая специфику базы данных за этим интерфейсом. Существует множество слоёв абстракции с различными интерфейсами на многих языках программирования. [29] Заявленное техническое решение может выполняться, например системой, машиночитаемым носителем, сервером и т.д. В данном техническом решении под системой подразумевается, в том числе компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность операций (действий, инструкций). [28] A database abstraction layer (DBAL) is an application programming interface that unifies communication between a computer application and a database management system (DBMS) such as SQL Server, DB2, MySQL, PostgreSQL, Oracle, or SQLite. Traditionally, each DBMS vendor provides its own interface tailored to their product, allowing a programmer to implement code for as many database interfaces as he or she wishes to support. Abstraction layers reduce the amount of work by providing a consistent API to the developer and by hiding as much of the database specifics as possible behind that interface. There are many abstraction layers with different interfaces in many programming languages. [29] The claimed technical solution may be implemented, for example, by a system, a machine-readable medium, a server, etc. In this technical solution, a system means, among other things, a computer system, a computer (electronic computer), a CNC (numerical control), a PLC (programmable logic controller), computerized control systems and any other devices capable of performing a given, clearly defined sequence of operations (actions, instructions).

[30] Под устройством обработки команд подразумевается электронный блок либо интегральная схема (микропроцессор), исполняющая машинные инструкции (программы). [30] A command processing unit is an electronic unit or integrated circuit (microprocessor) that executes machine instructions (programs).

[31] Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройства хранения данных, например таких устройств, как оперативно запоминающие устройства (ОЗУ) и/или постоянные запоминающие устройства (ПЗУ). В качестве ПЗУ могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, твердотельные накопители (SSD), оптические носители данных (CD, DVD, BD, MD и т.п.) и др. [31] The command processing unit reads and executes machine instructions (programs) from one or more data storage devices, such as random access memory (RAM) and/or read-only memory (ROM). ROM may include, but is not limited to, hard disk drives (HDD), flash memory, solid-state drives (SSD), optical storage media (CD, DVD, BD, MD, etc.), etc.

[32] Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд. [32] A program is a sequence of instructions intended for execution by a computer control device or a command processing device.

[33] Термин «инструкции», используемый в этой заявке, может относиться, в общем, к программным инструкциям или программным командам, которые написаны на заданном языке программирования для осуществления конкретной функции, такой как, например, получение и обработка данных, формирование профиля пользователя, прием и передача сигналов, анализ принятых данных, идентификация пользователя и т.п. Инструкции могут быть осуществлены множеством способов, включающих в себя, например, объектно- ориентированные методы. Например, инструкции могут быть реализованы, посредством языка программирования C++, Java, Python, различных библиотек (например, Microsoft Foundation Classes) и т.д. Инструкции, осуществляющие процессы, описанные в этом решении, могут передаваться как по проводным, так и по беспроводным каналам передачи данных, например, Wi-Fi, Bluetooth, USB, WLAN, LAN и т.п. [33] The term "instructions" as used in this application may refer generally to software instructions or software commands that are written in a given programming language to perform a specific function, such as, for example, receiving and processing data, generating a user profile, receiving and transmitting signals, analyzing received data, identifying a user, etc. The instructions may be implemented in a variety of ways, including, for example, object-oriented methods. For example, the instructions may be implemented, via the programming language C++, Java, Python, various libraries (for example, Microsoft Foundation Classes), etc. The instructions that implement the processes described in this solution can be transmitted via both wired and wireless data transmission channels, such as Wi-Fi, Bluetooth, USB, WLAN, LAN, etc.

[34] Представленный способ обработки и визуализации запрещенных к передаче данных в распределенных информационных системах (на Фиг. 1 представлена схема способа) решает задачи обеспечения защиты данных, запрещенных к передаче, при работе в распределенных информационных системах, а также обеспечения защиты конкретных атрибутов данных и вариантности настройки защиты данных за счет последовательного выполнения следующих шагов: [34] The presented method for processing and visualizing data prohibited for transmission in distributed information systems (Fig. 1 shows a diagram of the method) solves the problems of ensuring the protection of data prohibited for transmission when working in distributed information systems, as well as ensuring the protection of specific data attributes and the variability of data protection settings by sequentially performing the following steps:

• при построении распределенной информационной системы определяют данные, запрещенные к передаче, формируя общий для всех уровней системы массив данных, где хранится перечень запрещённых к передаче данных, шаблоны для последующей замены этих данных, источник запрета к передаче и сетевые идентификаторы; • when constructing a distributed information system, they determine data prohibited from being transmitted by forming a common data array for all levels of the system, where a list of data prohibited from being transmitted is stored, templates for the subsequent replacement of this data, the source of the prohibition on transmission, and network identifiers;

• сформированный на предыдущем шаге массив данных делают доступным для запросов со стороны всех узлов построенной распределенной информационной системы; • the data array generated in the previous step is made available for requests from all nodes of the constructed distributed information system;

• формируют логику автоматической проверки данных для автоматического дополнения сформированного на первом шаге массива данных; • form the logic of automatic data verification for automatic addition of the data array generated in the first step;

• при поступлении запроса на обработку данных с узла построенной распределенной информационной системы направляют дополнительный запрос с перечнем данных, предполагаемых к обработке, в сформированный на первом шаге массив данных и проводят проверку возможности обработки; • в случае нахождения данных, запрещенных к передаче, изменяют обработку данных путем формирования абстрактного слоя данных с автоматизированной заменой данных, запрещенных к передаче на данные из соответствующего шаблона; • when a request for data processing is received from a node of the constructed distributed information system, an additional request is sent with a list of data to be processed to the data array generated in the first step and the possibility of processing is checked; • if data prohibited from being transferred is found, the data processing is changed by forming an abstract data layer with the automated replacement of data prohibited from being transferred with data from the corresponding template;

• формируют и осуществляют визуализацию обработанных данных на основе сформированного на предыдущем шаге абстрактного слоя данных. • generate and visualize the processed data based on the abstract data layer generated in the previous step.

[35] На этапе проектирования распределенной информационной системы определяется, какие данные нельзя передавать в какие именно узлы распределенной информационной системы со ссылкой на источник запрета. [35] At the design stage of a distributed information system, it is determined which data cannot be transmitted to which nodes of the distributed information system, with a reference to the source of the prohibition.

[36] При этом возможно вносить изменения в процессе эксплуатации системы путем добавления в распределенную информационную систему (в одном из вариантов реализации - в базу данных) таблицы ограничений. В таком случае в распределенную информационную систему дополнительно потребуется добавлять функционал проверки наличия такой таблицы. [36] It is possible to make changes during the operation of the system by adding a table of restrictions to the distributed information system (in one implementation option - to the database). In this case, the distributed information system will additionally need to add functionality for checking the presence of such a table.

[37] Запрещенность тех или иных данных может задаваться явно пользователем распределенной информационной системы, либо может определяется сервером расчётно, в режиме реального времени, по заданным алгоритмам. При этом способ хранения выявленных запретов не меняется. [37] The prohibition of certain data can be set explicitly by the user of the distributed information system, or it can be determined by the server in real time, using specified algorithms. In this case, the method of storing the identified prohibitions does not change.

[38] Например, в распределенной информационной системе изначально или путем добавления в процессе эксплуатации (в очередном выпуске новой версии распределенной информационной системы) может быть реализована логика проверки данных на соответствие определенным условиям: например, может проверяться наличие более чем N распространенных фамилий из справочника распространенных фамилий в определенном атрибуте таблицы. Или может проверяться соответствие названия атрибута определенной маске, например, «йо.*». В этом случае автоматически добавляется новая запись в таблицу ограничений, сделав данный атрибут запрещенным к передаче. [39] В описываемом способе все уровни системы имеют доступ к информации о том, что часть данных будет запрещена к передаче, в зависимости от этого меняется алгоритм расчета, например текст SQL-запросов либо вообще архитектура расчетов, например, дополнительные вызовы API. Такая информация об ограничениях доступна путем создания общей для всех уровней системы таблицы ограничений. [38] For example, in a distributed information system, logic for checking data for compliance with certain conditions can be implemented initially or by adding it during operation (in the next release of a new version of the distributed information system): for example, the presence of more than N common surnames from the directory of common surnames in a certain attribute of the table can be checked. Or the correspondence of the attribute name to a certain mask can be checked, for example, "yo.*". In this case, a new entry is automatically added to the restrictions table, making this attribute prohibited from being transmitted. [39] In the described method, all levels of the system have access to information that some data will be prohibited from being transmitted, depending on this, the calculation algorithm changes, for example, the text of SQL queries or the entire calculation architecture, for example, additional API calls. Such information about restrictions is available by creating a common restrictions table for all levels of the system.

[40] Общий принцип выбора варианта алгоритма расчета при этом следующий: если при расчете на любом уровне системы срабатывает хотя бы одно ограничение из таблицы ограничений для выбранного атрибута, то он запрещается к передаче. Например, если агрегат по определенному атрибуту посчитан менее, чем по 100 строкам, и при этом на этот атрибут этой таблицы задано правило TRANSFER_AGGR_MIN_100, то данный агрегат не передается между уровнями системы. [40] The general principle for selecting a calculation algorithm option is as follows: if at least one constraint from the constraint table for a selected attribute is triggered during calculation at any level of the system, then it is prohibited from being transferred. For example, if an aggregate for a certain attribute is calculated for less than 100 rows, and the TRANSFER_AGGR_MIN_100 rule is set for this attribute of this table, then this aggregate is not transferred between system levels.

[41] При этом также может быть разрешено передавать только агрегированные данные, например: [41] However, it may also be permitted to transmit only aggregated data, for example:

• передача сумм по фонду оплаты труда по всей организации в целом, но не по каждому работнику. • transfer of amounts from the wage fund for the entire organization as a whole, but not for each employee.

• может быть запрещено передавать данные по средним ценам на определенный товар, агрегированные менее чем по региону. • it may be prohibited to transmit data on average prices for a particular product, aggregated less than by region.

• если в спектральный анализ группы небесных тел попало менее, чем 100 небесных тел, то такая статистика не имеет научной ценности и не передается на другие уровни системы. При этом сам запрет установлен в виде внутреннего правила научной организации. • if less than 100 celestial bodies are included in the spectral analysis of a group of celestial bodies, then such statistics have no scientific value and are not transferred to other levels of the system. Moreover, the ban itself is established in the form of an internal rule of the scientific organization.

• если при исследовании скорости распространении инфекций выявляется подверженность этой инфекции определенной этнической группы, то может быть установлено правило на запрет передачи атрибута «этническая группы», т.е. можно передавать только в более обобщенном виде. [42] Для реализации данных функций предусмотрен алгоритм описания таких разрешений и запретов, доступный всем уровням системы, как набор мастер- данных. • if, when studying the rate of spread of infections, it is revealed that a certain ethnic group is susceptible to this infection, then a rule can be established to prohibit the transmission of the “ethnic group” attribute, i.e. it can only be transmitted in a more general form. [42] To implement these functions, an algorithm for describing such permissions and prohibitions is provided, accessible to all levels of the system as a set of master data.

[43] В общем случае данные ограничения формулируются на любом декларативном (в виде набора строк правил, формирующих описание требуемого ограничения) или императивном (в виде набора операторов, формирующих логику проверки ограничения) языке программирования. [43] In general, these constraints are formulated in any declarative (in the form of a set of rule lines that form a description of the required constraint) or imperative (in the form of a set of operators that form the logic for checking the constraint) programming language.

[44] В частности, в одном из способов реализации в декларативном виде такой набор правил может быть реализован как таблица-справочник в БД. Таблица 1. Пример структуры таблицы-справочника ограничений атрибутов.

Figure imgf000015_0001
Figure imgf000016_0001
Figure imgf000017_0003
[44] In particular, in one of the methods of implementation in declarative form, such a set of rules can be implemented as a reference table in the DB. Table 1. Example of the structure of a reference table of attribute constraints.
Figure imgf000015_0001
Figure imgf000016_0001
Figure imgf000017_0003

[45] В другом способе (императивный) ограничения могут быть приведены в виде программного кода проверки атрибута, например, код для проверки наличия в имени атрибута фрагмента «Гю»: [45] In another method (imperative), restrictions can be given in the form of program code for checking an attribute, for example, code for checking whether an attribute name contains the fragment "Gyu":

=ЕСЛИОШИБКА(ЕСЛИ(ПОИСК("Бо";КС[- 1 ]); 1 ;0);0) =IFERROR(IF(SEARCH("Bo";KS[- 1 ]); 1 ;0);0)

[46] Для реализации данного алгоритма доступ к данным в другом уровне системы может даваться путем формирования абстрактного слоя - слоя представления (VIEW) в БД. При этом в данных VIEW конфиденциальные атрибуты либо занулены, либо посчитаны с учетом ограничений в таблице выше. [46] To implement this algorithm, access to data at another level of the system can be provided by forming an abstract layer - the presentation layer (VIEW) in the DB. In this case, in the VIEW data, confidential attributes are either set to zero or calculated taking into account the restrictions in the table above.

Таблица 2. Пример таблицы с з/п работников.

Figure imgf000017_0002
Table 2. Example of a table with employees' salaries.
Figure imgf000017_0002

Таблица 3. Пример таблицы с ограничением на передачу данных о з/п.

Figure imgf000017_0001
Table 3. Example of a table with restrictions on the transfer of salary data.
Figure imgf000017_0001

1 1 test employees salary TRANSFER_NO -100 Пример формирования абстрактного слоя данных с учетом ограничений:

Figure imgf000018_0001
1 1 test employees salary TRANSFER_NO -100 An example of forming an abstract data layer taking into account constraints:
Figure imgf000018_0001

Данные абстрактного слоя (Таблица 4):

Figure imgf000018_0002
fio A salary « character varying n integer и Иванов Иван Ива... Abstract layer data (Table 4):
Figure imgf000018_0002
fio A salary « character varying n integer and Ivanov Ivan Iva...

> Петров Петр Пет... Сидоров Сидор С...

Figure imgf000018_0003
Figure imgf000018_0004
> Petrov Petr Pet... Sidorov Sidor S...
Figure imgf000018_0003
Figure imgf000018_0004

[47] Во всех таблицах все конфиденциальные атрибуты заменяются на NULL/O/пустую строку (любые специальные значения). При этом конкретное пустое значение может определяться в каждой реализации алгоритма отдельно. Основной критерий выбора типа пустого значения - все части (уровни) системы должны обрабатывать такие значения без критичных ошибок. [47] In all tables, all confidential attributes are replaced with NULL/O/empty string (any special values). However, the specific empty value can be defined separately in each implementation of the algorithm. The main criterion for choosing the type of empty value is that all parts (levels) of the system must process such values without critical errors.

[48] Например, на последнем шаге алгоритма - визуализации на конечном устройстве, по умолчанию вместо конфиденциальных атрибутов будут выводится нулевые значения, т.е. график или диаграмма будут отображаться корректно, но с ненастоящими значениями. [48] For example, at the last step of the algorithm - visualization on the end device, by default, instead of confidential attributes, zero values will be displayed, i.e. the graph or diagram will be displayed correctly, but with false values.

[49] При выявлении наличия атрибутов, запрещенных к передаче, конечное устройство может запросить у пользователя или автоматически загрузить из локального хранилища необходимые данные. [49] If the presence of attributes prohibited from transmission is detected, the end device may request the user or automatically download the necessary data from local storage.

[50] При недоступности локального хранилища система может выдавать предупреждения об этом и предложение внести необходимые данные в локальное хранилище. [50] If local storage is unavailable, the system may issue warnings about this and offer to enter the necessary data into local storage.

[51] Например, при отображении диаграммы распределения ФОТ внутри подразделения сами фактические данные о заработной плате могут храниться только на компьютере руководителя кадровой службы. При этом вся методология построения отчетности доступна всем подразделениям, как показано на диаграмме (Фиг. 2). [51] For example, when displaying a payroll distribution chart within a department, the actual data on wages can be stored only on the computer of the head of the HR department. At the same time, the entire methodology for generating reports is available to all departments, as shown in the chart (Fig. 2).

[52] В общем виде (см. Фиг. 3) система объединения данных информационных систем для их последующей визуализации (300) содержит объединенные общей шиной информационного обмена один или несколько процессоров (301), средства памяти, такие как ОЗУ (302) и ПЗУ (303) и интерфейсы ввода/вывода (304). [52] In general (see Fig. 3), the system for combining data from information systems for their subsequent visualization (300) contains one or more processors (301) connected by a common information exchange bus, memory means such as RAM (302) and ROM (303), and input/output interfaces (304).

[53] Процессор (301) (или несколько процессоров, многоядерный процессор и т.п.) может выбираться из ассортимента устройств, широко применяемых в настоящее время, например, таких производителей, как: Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. Под процессором или одним из используемых процессоров в системе (300) также необходимо учитывать графический процессор, например, GPU NVIDIA с программной моделью, совместимой с CUDA, или Graphcore, тип которых также является пригодным для полного или частичного выполнения способа, а также может применяться для обучения и применения моделей машинного обучения в различных информационных системах. [53] The processor (301) (or several processors, a multi-core processor, etc.) can be selected from a range of devices that are widely used today, such as those from manufacturers such as: Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™, etc. The processor or one of the processors used in the system (300) must also include a graphics processor, such as an NVIDIA GPU with a software model compatible with CUDA, or Graphcore, the type of which is also is suitable for the full or partial implementation of the method, and can also be used for training and applying machine learning models in various information systems.

[54] ОЗУ (302) представляет собой оперативную память и предназначено для хранения исполняемых процессором (301) машиночитаемых инструкций для выполнения необходимых операций по логической обработке данных. ОЗУ (302), как правило, содержит исполняемые инструкции операционной системы и соответствующих программных компонент (приложения, программные модули и т.п.). При этом, в качестве ОЗУ (302) может выступать доступный объем памяти графической карты или графического процессора. [54] RAM (302) is a random access memory and is intended for storing machine-readable instructions executed by the processor (301) for performing the necessary operations for logical data processing. RAM (302), as a rule, contains executable instructions of the operating system and the corresponding software components (applications, software modules, etc.). In this case, the available memory capacity of the graphic card or graphic processor can act as RAM (302).

[55] ПЗУ (303) представляет собой одно или более устройств постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, BlueRay Disc, MD) и др. [55] ROM (303) is one or more permanent storage devices, such as a hard disk drive (HDD), a solid-state drive (SSD), flash memory (EEPROM, NAND, etc.), optical storage media (CD-R/RW, DVD-R/RW, BlueRay Disc, MD), etc.

[56] Для организации работы компонентов устройства (300) и организации работы внешних подключаемых устройств применяются различные виды интерфейсов В/В (304). Выбор соответствующих интерфейсов зависит от конкретного исполнения вычислительного устройства, которые могут представлять собой, не ограничиваясь: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232 и т.п. [56] To organize the operation of the device components (300) and to organize the operation of external connected devices, various types of I/O interfaces (304) are used. The choice of the corresponding interfaces depends on the specific design of the computing device, which may include, but are not limited to: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232, etc.

[57] Для обеспечения взаимодействия пользователя с устройством (300) применяются различные средства (305) В/В информации, например, клавиатура, дисплей (монитор), сенсорный дисплей, тач-пад, джойстик, манипулятор мышь, световое перо, стилус, сенсорная панель, трекбол, динамики, микрофон, средства дополненной реальности, оптические сенсоры, планшет, световые индикаторы, проектор, камера, средства биометрической идентификации (сканер сетчатки глаза, сканер отпечатков пальцев, модуль распознавания голоса) и т.п. [58] Средство сетевого взаимодействия (306) обеспечивает передачу данных посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п. В качестве одного или более средств (306) может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др. [57] To ensure interaction between the user and the device (300), various means (305) of I/O information are used, for example, a keyboard, a display (monitor), a touch display, a touchpad, a joystick, a mouse, a light pen, a stylus, a touch panel, a trackball, speakers, a microphone, augmented reality means, optical sensors, a tablet, light indicators, a projector, a camera, biometric identification means (a retina scanner, a fingerprint scanner, a voice recognition module), etc. [58] The network interaction means (306) ensures the transmission of data via an internal or external computer network, for example, an Intranet, the Internet, a LAN, etc. One or more means (306) may be, but are not limited to: an Ethernet card, a GSM modem, a GPRS modem, an LTE modem, a 5G modem, a satellite communication module, an NFC module, a Bluetooth and/or BLE module, a Wi-Fi module, etc.

[59] Конкретный выбор элементов устройства (300) для реализации различных программно-аппаратных архитектурных решений может варьироваться с сохранением обеспечиваемого требуемого функционала. В частности, подобная реализация может быть выполнена с помощью электронных компонент, используемых для создания цифровых интегральных схем. Не ограничиваюсь, могут быть использоваться микросхемы, логика работы которых определяется при изготовлении, или программируемые логические интегральные схемы (ПЛИС), логика работы которых задаётся посредством программирования. Для программирования используются программаторы и отладочные среды, позволяющие задать желаемую структуру цифрового устройства в виде принципиальной электрической схемы или программы на специальных языках описания аппаратуры: Verilog, VHDL, AHDL и др. Альтернативой ПЛИС являются: программируемые логические контроллеры (ПЛК), базовые матричные кристаллы (БМК), требующие заводского производственного процесса для программирования; ASIC — специализированные заказные большие интегральные схемы (БИС), которые при мелкосерийном и единичном производстве существенно дороже. Таким образом, реализация может быть достигнута стандартными средствами, базирующимися на классических принципах реализации основ вычислительной техники. [59] The specific choice of device elements (300) for implementing various software and hardware architectural solutions may vary while maintaining the required functionality. In particular, such an implementation may be performed using electronic components used to create digital integrated circuits. I am not limited to, but may use microcircuits whose operating logic is determined during manufacture, or programmable logic integrated circuits (FPGAs), whose operating logic is specified through programming. For programming, programmers and debugging environments are used that allow you to specify the desired structure of a digital device in the form of a basic electrical circuit or a program in special hardware description languages: Verilog, VHDL, AHDL, etc. An alternative to FPGAs are: programmable logic controllers (PLCs), basic matrix crystals (BMCs), which require a factory production process for programming; ASICs — specialized custom large-scale integrated circuits (LSIs), which are significantly more expensive for small-scale and individual production. Thus, the implementation can be achieved by standard means based on classical principles of implementing the basics of computing technology.

[60] Представленные материалы заявки раскрывают предпочтительные примеры реализации технического решения и не должны трактоваться как ограничивающие иные, частные примеры его воплощения, не выходящие за пределы испрашиваемой правовой охраны, которые являются очевидными для специалистов соответствующей области техники. [60] The submitted application materials disclose preferred examples of the implementation of the technical solution and should not be interpreted as limiting other, particular examples of its implementation that do not go beyond the limits of the requested legal protection, which are obvious to specialists in the relevant field of technology.

Claims

ФОРМУЛА. FORMULA. 1. Способ обработки и визуализации запрещенных к передаче данных в распределенных информационных системах, реализуемый с помощью процессора и устройства хранения данных, включающий следующие шаги: 1. A method for processing and visualizing data prohibited for transmission in distributed information systems, implemented using a processor and a data storage device, including the following steps: • при построении распределенной информационной системы определяют данные, запрещенные к передаче, формируя общий для всех уровней системы массив данных, где хранится перечень запрещённых к передаче данных, шаблоны для последующей замены этих данных, источник запрета к передаче и сетевые идентификаторы; • when constructing a distributed information system, they determine data prohibited from being transmitted by forming a common data array for all levels of the system, where a list of data prohibited from being transmitted is stored, templates for the subsequent replacement of this data, the source of the prohibition on transmission, and network identifiers; • сформированный на предыдущем шаге массив данных делают доступным для запросов со стороны всех узлов построенной распределенной информационной системы; • the data array generated in the previous step is made available for requests from all nodes of the constructed distributed information system; • формируют логику автоматической проверки данных для автоматического дополнения сформированного на первом шаге массива данных; • form the logic of automatic data verification for automatic addition of the data array generated in the first step; • при поступлении запроса на обработку данных с узла построенной распределенной информационной системы направляют дополнительный запрос с перечнем данных, предполагаемых к обработке, в сформированный на первом шаге массив данных и проводят проверку возможности обработки; • when a request for data processing is received from a node of the constructed distributed information system, an additional request is sent with a list of data to be processed to the data array generated in the first step and the possibility of processing is checked; • в случае нахождения данных, запрещенных к передаче, изменяют обработку данных путем формирования абстрактного слоя данных с автоматизированной заменой данных, запрещенных к передаче на данные из соответствующего шаблона; • формируют и осуществляют визуализацию обработанных данных на основе сформированного на предыдущем шаге абстрактного слоя данных. • if data prohibited from being transferred is found, the data processing is changed by forming an abstract data layer with the automated replacement of data prohibited from being transferred with data from the corresponding template; • generate and visualize the processed data based on the abstract data layer generated in the previous step. 2. Способ по п.1, характеризующийся тем, что в случае нахождения данных, запрещенных к передаче, делают запрос у пользователя на загрузку этих данных из локального хранилища данных. 2. The method according to paragraph 1, characterized in that in the event of finding data that is prohibited from being transmitted, a request is made to the user to download this data from the local data storage. 3. Способ по п.1, характеризующийся тем, что в случае нахождения данных, запрещенных к передаче, автоматически проводят загрузку этих данных из локального хранилища данных. 3. The method according to paragraph 1, characterized in that in the event of finding data that is prohibited from being transmitted, this data is automatically downloaded from the local data storage. 4. Система обработки и визуализации запрещенных к передаче данных в распределенных информационных системах, содержащая: 4. A system for processing and visualizing data prohibited for transmission in distributed information systems, containing: - по меньшей мере одно устройство обработки данных; - at least one data processing device; - по меньшей мере одно устройство хранения данных; - at least one data storage device; - по меньшей мере одну программу, где одна или более программ хранятся на одном или более устройствах хранения данных и исполняются на одном и более устройствах обработки данных, причем одна или более программ обеспечивает выполнение следующих шагов: - at least one program, where one or more programs are stored on one or more data storage devices and executed on one or more data processing devices, wherein the one or more programs ensure the execution of the following steps: • при построении распределенной информационной системы определяют данные, запрещенные к передаче, формируя общий для всех уровней системы массив данных, где хранится перечень запрещённых к передаче данных, шаблоны для последующей замены этих данных, источник запрета к передаче и сетевые идентификаторы; • when constructing a distributed information system, they determine data prohibited from being transmitted by forming a common data array for all levels of the system, where a list of data prohibited from being transmitted is stored, templates for the subsequent replacement of this data, the source of the prohibition on transmission, and network identifiers; • сформированный на предыдущем шаге массив данных делают доступным для запросов со стороны всех узлов построенной распределенной информационной системы; • the data array generated in the previous step is made available for requests from all nodes of the constructed distributed information system; • формируют логику автоматической проверки данных для автоматического дополнения сформированного на первом шаге массива данных; • при поступлении запроса на обработку данных с узла построенной распределенной информационной системы направляют дополнительный запрос с перечнем данных, предполагаемых к обработке, в сформированный на первом шаге массив данных и проводят проверку возможности обработки; • form the logic of automatic data verification for automatic addition of the data array generated in the first step; • when a request for data processing is received from a node of the constructed distributed information system, an additional request is sent with a list of data to be processed to the data array generated in the first step and the possibility of processing is checked; • в случае нахождения данных, запрещенных к передаче, изменяют обработку данных путем формирования абстрактного слоя данных с автоматизированной заменой данных, запрещенных к передаче на данные из соответствующего шаблона; • формируют и осуществляют визуализацию обработанных данных на основе сформированного на предыдущем шаге абстрактного слоя данных. • if data prohibited from being transmitted is found, the data processing is changed by forming an abstract data layer with the automated replacement of data prohibited from being transmitted with data from the corresponding template; • the processed data is formed and visualized based on the abstract data layer formed in the previous step. 5. Система по п.З, характеризующаяся тем, что в случае нахождения данных, запрещенных к передаче, делают запрос у пользователя на загрузку этих данных из локального хранилища данных. 5. The system according to paragraph 3, characterized by the fact that in the event of finding data that is prohibited from being transmitted, a request is made to the user to download this data from the local data storage. 6. Система по п.З, характеризующаяся тем, что в случае нахождения данных, запрещенных к передаче, автоматически проводят загрузку этих данных из локального хранилища данных. 6. The system according to paragraph 3, characterized by the fact that in the event of finding data that is prohibited from being transmitted, this data is automatically downloaded from the local data storage.
PCT/RU2023/000200 2023-06-29 2023-07-06 Processing and displaying restricted data Pending WO2025005821A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2023117212 2023-06-29
RU2023117212 2023-06-29

Publications (1)

Publication Number Publication Date
WO2025005821A1 true WO2025005821A1 (en) 2025-01-02

Family

ID=93939447

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2023/000200 Pending WO2025005821A1 (en) 2023-06-29 2023-07-06 Processing and displaying restricted data

Country Status (1)

Country Link
WO (1) WO2025005821A1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020147611A1 (en) * 2000-05-22 2002-10-10 Greene William S. Method and system for realizing a rendezvous service in a management operations center implemented in a global ecosystem of interrelated services
US20040059436A1 (en) * 2001-04-30 2004-03-25 Anderson Mark Stephen Data processing architecture
US20060123010A1 (en) * 2004-09-15 2006-06-08 John Landry System and method for managing data in a distributed computer system
US7350226B2 (en) * 2001-12-13 2008-03-25 Bea Systems, Inc. System and method for analyzing security policies in a distributed computer network
US20170118268A1 (en) * 2015-10-23 2017-04-27 Oracle International Corporation Self describing configuration
RU2647643C1 (en) * 2017-01-25 2018-03-16 Акционерное общество "Кросс технолоджис" System for establishing a confidentiality mark in an electronic document, accounting and control of work with confidential electronic documents
EP3217301B1 (en) * 2016-03-07 2019-02-20 ResearchGate GmbH Propagation of data changes in a distributed system
AU2018258656B2 (en) * 2017-04-28 2021-04-22 Anonos Ip Llc Systems and methods for enforcing centralized privacy controls in de-centralized systems

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020147611A1 (en) * 2000-05-22 2002-10-10 Greene William S. Method and system for realizing a rendezvous service in a management operations center implemented in a global ecosystem of interrelated services
US20040059436A1 (en) * 2001-04-30 2004-03-25 Anderson Mark Stephen Data processing architecture
US7350226B2 (en) * 2001-12-13 2008-03-25 Bea Systems, Inc. System and method for analyzing security policies in a distributed computer network
US20060123010A1 (en) * 2004-09-15 2006-06-08 John Landry System and method for managing data in a distributed computer system
US20170118268A1 (en) * 2015-10-23 2017-04-27 Oracle International Corporation Self describing configuration
EP3217301B1 (en) * 2016-03-07 2019-02-20 ResearchGate GmbH Propagation of data changes in a distributed system
RU2647643C1 (en) * 2017-01-25 2018-03-16 Акционерное общество "Кросс технолоджис" System for establishing a confidentiality mark in an electronic document, accounting and control of work with confidential electronic documents
AU2018258656B2 (en) * 2017-04-28 2021-04-22 Anonos Ip Llc Systems and methods for enforcing centralized privacy controls in de-centralized systems

Similar Documents

Publication Publication Date Title
US12411852B1 (en) Data analytics platform using configurable flow specifications
US10972506B2 (en) Policy enforcement for compute nodes
US9129129B2 (en) Automatic data protection in a computer system
US20080208918A1 (en) Efficient data handling representations
CA3021031C (en) Fine grain security for analytic data sets
US10936555B2 (en) Automated query compliance analysis
US20240256576A1 (en) Data processing system with manipulation of logical dataset groups
US7720831B2 (en) Handling multi-dimensional data including writeback data
US10691663B2 (en) Database table copy
US12282719B1 (en) Building and simulating execution of managed artificial intelligence pipelines
US20180032747A1 (en) System and Method for Database-Level Access Control Using Rule-Based Derived Accessor Groups
CN116257876A (en) Data hierarchical access processing method, device, equipment and storage medium
CN113342775B (en) Centralized multi-tenancy as a service in cloud-based computing environments
US20150142852A1 (en) Declarative authorizations for sql data manipulation
US11604801B2 (en) Techniques for accessing on-premise data sources from public cloud for designing data processing pipelines
CN114722250B (en) Method for filtering horizontal and vertical permissions of data based on configuration
WO2025005821A1 (en) Processing and displaying restricted data
Fernández et al. Patterns for content-dependent and context-enhanced authorization
RU2805382C1 (en) Method and system for integrating date of information systems for their subsequent visualization
WO2024225933A1 (en) Aggregating data from information systems for visualization
US20250371182A1 (en) Systems and methods for access checking
US12513146B1 (en) Creating input tables accessible by multiple account roles
US12124427B2 (en) Consolidating change requests in data hierarchies
US20250094419A1 (en) Database Retrieval and Reporting System
Bhosale Data Governance Frameworks on Databricks: A Role for Unity CatLog

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23943870

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE