WO2025052427A1 - Method and system for sanitizing data to be utilized by one or more nodes - Google Patents
Method and system for sanitizing data to be utilized by one or more nodes Download PDFInfo
- Publication number
- WO2025052427A1 WO2025052427A1 PCT/IN2024/051620 IN2024051620W WO2025052427A1 WO 2025052427 A1 WO2025052427 A1 WO 2025052427A1 IN 2024051620 W IN2024051620 W IN 2024051620W WO 2025052427 A1 WO2025052427 A1 WO 2025052427A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- request
- response
- nodes
- payload
- data
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Definitions
- the present invention relates to the field of wireless communication networks, more particularly relates to a method and a system for sanitizing data to be utilized by one or more nodes in the wireless communication network.
- developer in the computer science domain research, design and develop systems, websites, programs and applications (hereinafter referred to as ‘product’).
- product For example, an organization developing a program as the product may have designed and developed the same having certain specifications/policies for a particular type of implementation environment such as implemented at a particular type of node in a network.
- APIs Application Programming Interface
- policies or data structures may have been modified for enhancing efficiency.
- the same product is used in a new implementation environment such as a different type of node, the said product may not function as this may be incompatible with the new implementation, such as the APIs or data structures may differ.
- One or more embodiments of the present disclosure provide a method and a system for sanitizing data to be utilized by one or more nodes in a network.
- the method for sanitizing data to be utilized by the one or more nodes in the network includes the step of periodically checking, by one or more processors, if one of, a request or a response is received at the one or more nodes present in a network.
- the method includes the step of if identified, one of, the request or the response is received at the one or more nodes based on the periodic checking, validating, by the one or more processors, a payload of one of, the request or the response.
- the request or the response is received at the one or more nodes from a user via a User Equipment (UE), wherein the user includes at least one of, an administrator and a network operator.
- UE User Equipment
- the step of, validating, a payload of one of, the request or the response includes the steps of matching, by the one or more processors, a length of the payload represented in the header of one of, the request or the response with a computed length of one of, the request or the response.
- the step of, validating, the payload of one of, the request or the response includes the steps of inferring, by the one or more processors, successful validation of the payload when the length of the payload matches with the computed length of one of, the request or the response.
- the computed length of one of, the request or the response pertains to computation of the length of the request or the response by the one or more processors by identifying, one or more transmission protocols utilized for receiving one of, the request or the response at the one or more nodes from the user.
- the computed length of one of, the request or the response pertains to computation of the length of the request or the response by the one or more processors by aggregating, the received data pertaining to one of, the request or the response based on identifying the one or more transmission protocols.
- the computed length of one of, the request or the response pertains to computation of the length of the request or the response by the one or more processors by computing, the length of the received data pertaining to one of, the request or the response based on aggregating the received data.
- the step of, validating, a payload of one of, the request or the response further includes the steps of checking, by the one or more processors, presence of one or more non-compatible data structures in the payload upon successful validation of the payload.
- the step of, validating, a payload of one of, the request or the response further includes the steps of rejecting, by the one or more processors, one of, the request or the response upon detecting presence of the one or more non-compatible data structures in the payload.
- the step of, formatting, at least one of, a header or data elements of one of the, request or the response to align with one or more predefined policies of the one or more nodes includes the steps of scanning, by the one or more processors, format of the at least one of, the header or the data elements.
- the step of, formatting, at least one of, a header or data elements of one of the, request or the response to align with one or more pre-defined policies of the one or more nodes includes the steps of comparing, by the one or more processors, the format of the at least one of, the header or the data elements with the one or more pre-defined policies of the one or more nodes.
- the step of, formatting, at least one of, a header or data elements of one of the, request or the response to align with one or more pre-defined policies of the one or more nodes includes the steps of formatting, by the one or more processors, one or more attributes of at least one of, the header or the data elements to align with the one or more pre-defined policies of the one or more nodes, wherein the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies.
- the system for sanitizing data to be utilized by the one or more nodes in the network includes a checking unit configured to periodically check if one of, a request and a response is received at the one or more nodes present in a network.
- the system includes a validating unit, configured to, validate, a payload of one of, the request and the response if identified, one of, the request and the response is received at the one or more nodes based on the periodic checking.
- the system includes a formatting unit, configured to, format, at least one of, a header or data elements of one of, the request and the response to align with one or more pre-defined policies of the one or more nodes based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
- a User Equipment UE
- One or more primary processors communicatively coupled to one or more processors.
- the one or more primary processors coupled with a memory.
- the memory stores instructions which when executed by the one or more primary processors cause the UE to transmit, at least one of, a request and a response to the one or more processors.
- a non -transitory computer- readable medium having stored thereon computer-readable instructions that, when executed by a processor.
- the processor is configured to periodically check if one of, a request and a response is received at the one or more nodes present in a network.
- the processor is configured to if identified, one of, the request and the response is received at the one or more nodes based on the periodic checking, validate, a payload of one of, the request and the response.
- the processor is configured to format, at least one of, a header or data elements of one of the request and the response to align with one or more pre-defined policies of the one or more nodes based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
- FIG. 1 is an exemplary block diagram of an environment for sanitizing data suitable for use by one or more nodes in a network, according to one or more embodiments of the present disclosure
- FIG. 2 is an exemplary block diagram of a system for sanitizing the data suitable for use by the one or more nodes in the network, according to one or more embodiments of the present disclosure
- FIG. 3 is a schematic representation of a workflow of the system of FIG. 2 communicably coupled with a User Equipment (UE), according to one or more embodiments of the present disclosure
- UE User Equipment
- FIG. 4 is an exemplary block diagram of an architecture that can be implemented in the system of FIG.2, according to one or more embodiments of the present disclosure
- FIG. 5 is a flow diagram illustrating a method for sanitizing the data suitable for use by the one or more nodes in the network, according to one or more embodiments of the present disclosure.
- FIG. 6 is a flow chart illustrating the method for sanitizing the data suitable for use by the one or more nodes in the network, according to one or more embodiments of the present disclosure.
- the present invention discloses a system and method for sanitizing data suitable for use by one or more nodes in a network. For example, when a product has been developed and implemented at a first node with specific specifications and policies, the same program when implemented at a second node which requires different implementation with same or change in specifications/policies, the said product may be incompatible to operate at the second node.
- the present invention solves the issue of incompatibility by providing a unique approach to seamlessly integrate the data which is used by the one or more nodes in the network.
- FIG. 1 illustrates an exemplary block diagram of an environment 100 for sanitizing data suitable for use by one or more nodes 125 in a network 105, according to one or more embodiments of the present invention.
- the environment 100 includes the network 105, a User Equipment (UE) 110, a server 115, a system 120, and the one or more nodes 125.
- the UE 110 aids a user to interact with the system 120 for transmitting, at least one of, a request and a response to one or more processors 205 (shown in FIG.2).
- the user includes at least one of, an administrator and a network operator.
- Data sanitization refers to the process of cleaning or modifying data to ensure certain standards, is safe to use, and is compatible with the system 120 to process.
- the sanitizing data involves removing or correcting data elements that could cause issues, ensuring the data is in a proper format and free from harmful content.
- the data elements for different types of data that might be sanitized include, but not limited to, user data, log data, configuration data, metadata, and network traffic data.
- the data sanitization refers to sanitizing an input data to filter potentially malicious modifications.
- a set of sanitation algorithms are included in the function and an identifier is provided to indicate which sanitation policy to use.
- the sanitation policy includes the type of data that is expected and the type of sanitation that is required.
- the sanitization policies are pre-configured by the network operator.
- a data provider re-collects and processes the information, pre- processes the analytics data received in a reply, i.e. it provides sanitation to the collected data before forwarding it back to the analytics function.
- the analytics function then processes the sanitized data. After the analytics function has processed the data, the processed data sends the result to the user that requested the analytics.
- Each of the UE 110 from the first UE 110a, the second UE 110b, and the third UE 110c is configured to connect to the server 115 via the network 105.
- each of the first UE 110a, the second UE 110b, and the third UE 110c is one of, but not limited to, any electrical, electronic, electro-mechanical or an equipment and a combination of one or more of the above devices such as smartphones, virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general -purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device.
- VR virtual reality
- AR augmented reality
- the network 105 includes, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
- PSTN Public-Switched Telephone Network
- the network 105 may include, but is not limited to, a Third Generation (3G), a Fourth Generation (4G), a Fifth Generation (5G), a Sixth Generation (6G), a New Radio (NR), a Narrow Band Internet of Things (NB-IoT), an Open Radio Access Network (O-RAN), and the like.
- 3G Third Generation
- 4G Fourth Generation
- 5G Fifth Generation
- 6G Sixth Generation
- NR New Radio
- NB-IoT Narrow Band Internet of Things
- OF-RAN Open Radio Access Network
- the server 115 may include by way of example but not limitation, one or more of a standalone server, a server blade, a server rack, a bank of servers, a server farm, hardware supporting a part of a cloud service or system, a home server, hardware running a virtualized server, one or more processors executing code to function as a server, one or more machines performing server-side functionality as described herein, at least a portion of any of the above, some combination thereof.
- the entity may include, but is not limited to, a vendor, a network operator, a company, an organization, a university, a lab facility, a business enterprise, a defense facility, or any other facility that provides content.
- the environment 100 further includes the one or more nodes 125.
- the one or more nodes 125 in the network 105 is a device or a point where the data can be created, transmitted, received, or processed.
- the one or more nodes 125 include a wide range of devices or systems, such as servers, routers, switches, sensors, computers, or other hardware and software systems.
- the one or more nodes 125 emphasizes that data sanitization is done with the intention of making the data suitable for use by various types of one or more nodes 125 within the network 105, each of which may have different requirements and capabilities.
- the environment 100 further includes the system 120 communicably coupled to the server 115 and each of the first UE 110a, the second UE 110b, and the third UE 110c via the network 105.
- the system 120 is configured for sanitizing the data suitable for use by the one or more nodes 125 in the network 105.
- the system 120 is adapted to be embedded within the server 115 or is embedded as the individual entity, as per multiple embodiments of the present invention.
- FIG. 2 is an exemplary block diagram of the system 120 for sanitizing the data suitable for use by the one or more nodes 125 in the network 105, according to one or more embodiments of the present disclosure.
- the system 120 includes a processor 205, a memory 210, a user interface 215, and a database 240.
- the one or more processor 205 hereinafter referred to as the processor 205 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, single board computers, and/or any devices that manipulate signals based on operational instructions.
- the processor 205 is configured to fetch and execute computer-readable instructions stored in the memory 210.
- the memory 210 may be configured to store one or more computer-readable instructions or routines in a non-transitory computer-readable storage medium, which may be fetched and executed to create or share data packets over a network service.
- the memory 210 may include any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as EPROM, flash memory, and the like.
- the user interface 215 includes a variety of interfaces, for example, interfaces for a Graphical User Interface (GUI), a web user interface, a Command Line Interface (CLI), and the like.
- GUI Graphical User Interface
- CLI Command Line Interface
- the user interface 215 facilitates communication of the system 120.
- the user interface 215 provides a communication pathway for one or more components of the system 120. Examples of the one or more components include, but are not limited to, the user equipment 110, and the database 240.
- the database 240 is one of, but not limited to, a centralized database, a cloudbased database, a commercial database, an open-source database, a distributed database, an end-user database, a graphical database, a No-Structured Query Language (NoSQL) database, an object-oriented database, a personal database, an in-memory database, a document-based database, a time series database, a wide column database, a key value database, a search database, a cache databases, and so forth.
- NoStructured Query Language (NoSQL) database No-Structured Query Language
- object-oriented database a personal database
- an in-memory database a document-based database
- a time series database a time series database
- a wide column database a key value database
- search database a cache databases
- the processor 205 may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor 205.
- programming for the processor 205 may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for processor 205 may comprise a processing resource (for example, one or more processors), to execute such instructions.
- the memory 210 may store instructions that, when executed by the processing resource, implement the processor 205.
- the system 120 may comprise the memory 210 storing the instructions and the processing resource to execute the instructions, or the memory 210 may be separate but accessible to the system 120 and the processing resource.
- the processor 205 may be implemented by electronic circuitry.
- the processor 205 includes a checking unit 220, a validating unit 225, a computation engine 230, and a formatting unit 235 communicably coupled to each other.
- operations and functionalities of the checking unit 220, the validating unit 225, the computation engine 230, and the formatting unit 235 can be used in combination or interchangeably.
- the checking unit 220 is configured to periodically check if one of, a request and a response is received at the one or more nodes 125 present in the network 105.
- the periodic checking ensures that communication between the one or more nodes 125 in the network 105 is consistently monitored.
- the request and the response are received at the one or more nodes 125 from the user via the UE 125.
- the request type defines the structure of the data that is expected to be received by the user or the data which the server sends to the user and also the usage of the data.
- the request is an operation initiated by the user (or the one or more nodes 125) to request a service, data, or resource from another node in the network 105.
- Components of the request include, but not limited to, method/action, uniform Resource Locator (URL), and headers.
- the method/action indicates the type of operation (e.g., GET, POST, PUT, DELETE in Hypertext Transfer Protocol (HTTP)).
- the headers include metadata providing information about the request, such as a content type, a user agent, etc.
- the response is the server's reply to the user’s request.
- the response contains the status of the request, data, or resource requested, or an error message if the request could not be fulfilled.
- the headers include metadata providing information about the response, such as the content type, the user agent, etc.
- the response includes providing either actual data or resource the user requested, or an error message.
- the validating unit 225 Upon identification of the request and the response is received at the one or more nodes 125 based on the periodic checking, the validating unit 225 is configured to validate a payload of one of, the request and the response.
- the payload refers to actual data being sent in the request and the response.
- the payload is one of, but not limited to, JavaScript Object Notation (JSON) data, Extensible Markup Language (XML), Yet Another Markup Language (YAML), and Multipurpose Internet Mail Extensions (MIME) form data.
- JSON JavaScript Object Notation
- XML Extensible Markup Language
- YAML Yet Another Markup Language
- MIME Multipurpose Internet Mail Extensions
- the computed length is a result of a calculation or analysis process that determines the size, extent, or length of the payload.
- the computation involves parsing the structure and summing the lengths of the payload.
- the header includes a content length, which indicates the size of the payload.
- the content length is a Hypertext Transfer Protocol (HTTP) header field that specifies the size of the payload of the request and the response in bytes.
- HTTP Hypertext Transfer Protocol
- the HTTP header informs the server 115 how much data to expect after the headers, allowing a receiver to correctly process the entire message.
- the user transmits a POST request with the JSON payload to the server 115.
- the request header indicates that the content length is 150 bytes.
- the validating unit 225 is configured to receive the request and computes the actual length of the JSON payload.
- the actual length refers to the size of the JSON payload in bytes as it is received by the server 115.
- the actual length is computed by counting the exact number of bytes that make up the payload, including all the characters, spaces, punctuation, and any special characters encoded within the JSON data. If the actual length is also 150 bytes, the validation passes, and the server 115 processes the request. If the actual length is different (e.g., 140 bytes), the server 115 rejects the request and transmits an error response.
- the computation engine 230 Upon validation of the payload by matching the length of the payload represented in the header, the computation engine 230 is configured to determine the computed length of one of, the request and the response. The computation engine 230 is configured to identify one or more transmission protocols utilized for receiving one of the request and the response at the one or more nodes 125 from the user.
- the one or more transmission protocols include, but not limited to, specification of protocols, data formats, header management, and the like.
- the specification of protocols defines which network protocols (e.g., Transmission Control Protocol (TCP), User datagram Protocol (UDP), HTTP 2.0, Hypertext Transfer Protocol Secure (HTTPS)) are used for different types of communications.
- the data formats specify the formats for data exchanges, such as JSON, XML, or binary formats.
- the computation engine 230 Upon determining the computed length of one of, the request and the response, the computation engine 230 is further configured to aggregate the received data pertaining to one of, the request and the response upon identification of the one or more transmission protocols.
- the received data is aggregated based on a protocol group.
- the aggregation based on the protocol group includes, but is not limited to, summing up metrics and compiling data entries.
- the computation engine 230 is configured to aggregate the HTTP 2.0 requests to calculate the total number of method/action requests or the average response time.
- the aggregated data is structured into the JSON format that allows for easy analysis and reporting, which involves creating data tables, logs, or databases 240.
- the computation engine 230 is configured to compute a length of the received data based on aggregating the received data.
- the computation engine 230 counts the total number of bytes in the aggregated data.
- the received data might be stored in specific data structures (e.g., arrays, buffers) where the length of the received data is directly accessed or is required to be computed.
- the validating unit 225 is configured to infer successful validation of the payload when the length of the payload matches with the computed length of one of, the request and the response.
- the checking unit 220 is further configured to check presence of one or more non-compatible data structures in the payload.
- the one or more non-compatible data structures are data elements or formats within the payload that do not align with predefined standards expected by the system 120.
- the one or more non-compatible data structures includes, but not limited to, data type mismatches, incorrect data format, and unsupported encoding. In an example, if the field is expected to contain an integer but instead contains a string or an object, which is flagged as non-compatible. In another example, if the payload includes the data that the system 120 is unable to interpret, such as a malformed JSON object, which is considered as non-compatible.
- the checking unit 220 is further configured to reject one of, the request and the response upon detecting presence of the one or more non-compatible data structures in the payload.
- an Application Programming Interface (API) gateway that processes incoming requests from the user. If the user sends the payload containing the proprietary or incorrectly formatted data structure, the checking unit 220 is further configured to detect the non-compatible data structures. Instead of allowing the malformed request to pass through and potentially cause errors in downstream services, the API gateway rejects the request and returns the error message to the user, ensuring that only well-formed and compatible requests are processed by the system 120.
- API Application Programming Interface
- the formatting unit 235 is configured to format at least one of, a header or data elements of one of, the request and the response to align with one or more pre-defined policies of the one or more nodes 125.
- the one or more pre-defined policies refer to the rules or guidelines that dictate how the headers and the data elements are structured.
- the one or more pre-defined policies include, but not limited to, a field order, a field name, a data type, a length constraint, and the like.
- the one or more pre-defined policies are defined by the user for formatting the header and the data elements of the request and the response.
- the formatting unit 235 is configured to perform formatting process by scanning the format of the at least one of the headers or the data elements to identify a current structure and format of the headers and data elements.
- the format refers to the structure and arrangement of data elements or headers.
- the formats include, but not limited to, header format, data element format, file format, and database format. Further, the formatting process is performed by comparing the format of the at least one of, the header or the data elements with the one or more pre-defined policies of the one or more nodes 125.
- the formatting unit 235 is configured to format the one or more attributes of at least one of, the header and the data elements to align with the one or more pre-defined policies of the one or more nodes 125.
- the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies.
- the proprietary names refer to custom or vendor-specific names used in the headers or the data elements that need to be replaced or mapped to standard or recognized names according to the one or more pre-defined policies.
- the pre-defined names are standardized names or labels that are expected by the receiving nodes. In an example, a custom header field like X-custom-header might need to be renamed to a standard field name like authorization which serves a similar function.
- the formatting unit 235 is configured to identify the one or more attributes in the header or data elements that need modification, which involves parsing the request and the response to locate the proprietary or non-standard names. Once identified, the pre-defined names are replaced or adjusted to align with the one or more pre-defined policies in real-time for smooth inter compatibility between two different nodes during initial stages of integrations.
- the system 120 is able to, advantageously, enable the headers formatting for inter compatibility between two different nodes, data elements formatting for inter compatibility between two different nodes, and further enable removal of the propriety elements in the headers and data elements for inter compatibility between two different nodes, and ability to check if the data structure is correct and no hidden elements are added to the data. Furthermore, the system 120 reduces integration and testing time as compared to the conventional systems and methods where development for modification may take significantly long time.
- FIG. 3 is a schematic representation of a workflow of the system 120 of FIG. 2 communicably coupled with the UE 110, according to one or more embodiments of the present disclosure. More specifically, FIG. 3 illustrates the system 120 configured for sanitizing the data suitable for use by the one or more nodes 125 in the network 105. It is to be noted that the embodiment with respect to FIG. 3 will be explained with respect to the first UE 110a for the purpose of description and illustration and should nowhere be construed as limited to the scope of the present disclosure.
- the first UE 110a may encompass electronic apparatuses. These devices are illustrative of, but not restricted to, modems, routers, switches, laptops, tablets, smartphones (including phones), or other devices enabled for web connectivity.
- the scope of the first UE 110a explicitly extends to a broad spectrum of electronic devices capable of executing computing operations and accessing networked resources, thereby providing users with a versatile range of functionalities for both personal and professional applications.
- This embodiment acknowledges the evolving nature of electronic devices and their integral role in facilitating access to digital services and platforms.
- the first UE 110a can be associated with multiple users. Each of the first UE 110a is communicatively coupled with the processor 205.
- the first UE 110a includes one or more primary processors 305 communicably coupled to the one or more processors 205 of the system 120.
- the one or more primary processors 305 are coupled with a memory 310 storing instructions which are executed by the one or more primary processors 305. Execution of the stored instructions by the one or more primary processors 305 enables the first UE 110a to transmit, at least one of, the request and the response to the one or more processors 205.
- the one or more primary processors 305 within the first UE 110a are uniquely configured to execute a series of steps as described herein. This configuration underscores the processor 205 capability to sanitize the data suitable for use by the one or more nodes 125 in the network 105.
- the coordinated functioning of the one or more primary processors 305 and the additional processors, is directed by the executable instructions stored in the memory 310. The executable instructions facilitate effective task distribution and management among the one or more primary processors 305, optimizing performance and resource use.
- the system 120 includes the one or more processors 205, the memory 210, the user interface 215, and the database 240.
- the operations and functions of the one or more processors 205, the memory 210, the user interface 215, and the database 240 are already explained in FIG. 2.
- a similar description related to the working and operation of the system 120 as illustrated in FIG. 2 has been omitted to avoid repetition.
- the processor 205 includes the checking unit 220, the validating unit 225, the computation engine 230, and the formatting unit 235.
- the operations and functions of the checking unit 220, the validating unit 225, the computation engine 230, and the formatting unit 235 are already explained in FIG. 2.
- a similar description related to the working and operation of the system 120 as illustrated in FIG. 2 has been omitted to avoid repetition.
- the limited description provided for the system 120 in FIG. 3, should be read with the description provided for the system 120 in the FIG. 2 above, and should not be construed as limiting the scope of the present disclosure.
- FIG. 4 is a block diagram of an architecture 400 that can be implemented in the system of FIG.2, according to one or more embodiments of the present disclosure.
- the architecture 400 includes a Virtual Machine (VM) 405, an application module 410, a protocol stack module 415, an aggregation module 420, and a network layer 425.
- VM Virtual Machine
- the application module 410 and the protocol stack module 415 run on the VM 405.
- the VM 405 is a crucial component of the Java runtime environment that enables at least one of, but not limited to, java applications to run on any device or operating system without modification.
- the VM 405 provides the environment necessary for at least one of, but not limited to, the java applications to execute by interpreting or compiling a java bytecode into a machine code.
- the application module 410 and the protocol stack module 415 incorporates java-based application executable by the processor 205 with the memory.
- the application module 410 is configured to interact with the one or more nodes 125 via the Hypertext Transfer Protocol 2.0 (HTTP 2.0) utilizing the protocol stack module 415.
- the application module 410 is responsible for handling the main operations of the application, such as processing data, handling user requests, and communicating with other modules or systems.
- usage of the HTTP 2.0 protocol for transmitting hypermedia data such as, documents should not be construed as limiting the scope of the present disclosure, as the system is flexible to adopt other similar protocols for data transmission.
- the HTTP 2.0 protocol is used in the present invention in order to send multiple requests and receive multiple responses, advantageously ensuring efficient time management in data communication between the one or more nodes 125.
- the protocol stack module 415 is configured to interact with the network 105 to communicate from the one node to another node via the HTTP 2.0.
- the protocol stack module 415 is configured to provide the necessary protocols and communication mechanisms required for network operations.
- the protocol stack module 415 implements the HTTP 2.0 protocol, which is an advanced version of the HTTP protocol designed to improve performance and efficiency by supporting features like multiplexing, header compression, and server push.
- the protocol stack module 415 is configured to provide abstracted Application Peripheral Interface (APIs) for further development of the application around with a plurality of components.
- the plurality of components includes, but is not limited to, connection management, log management, transport messages, overload protection, rate limit protection, and the like.
- the architecture 400 of the system 120 is configured to receive the requests from users and send alerts via the user interface 215.
- the user interface 215 includes a variety of interfaces, for example, interfaces for a Graphical User Interface (GUI), a web user interface, a Command Line Interface (CLI), and the like.
- GUI Graphical User Interface
- CLI Command Line Interface
- the user interface 215 facilitates communication of the system 120.
- the user interface 215 provides a communication pathway for one or more components of the system 120.
- the application module 410 is configured to interact with the server 115 and the network layer 425 to gather the data related to any received requests from the UE 110 as well as various related information like processing status of the requests, errors occurred in processing if any and basic health of the server 115.
- the protocol stack module 415 is configured to manage the server 115 related resources.
- the protocol stack module 415 includes the aggregation module 420 is configured to aggregate the received data pertaining to one of, the request and the response based on identifying the one or more transmission protocols.
- the received data is aggregated within each protocol group, which includes summing up metrics, or compiling data entries.
- the aggregated data is structured into the JSON format that allows for easy analysis and reporting, which involves creating data tables, logs, or databases 240.
- FIG. 5 is a flow diagram illustrating a method 500 for sanitizing the data suitable for use by the one or more nodes 125 in the network 105, according to one or more embodiments of the present disclosure.
- the method 500 is described with the embodiments as illustrated in FIG. 2 and should nowhere be construed as limiting the scope of the present disclosure.
- the method 500 includes the step of periodically checking if one of, the request and the response is received at the one or more nodes 125 present in the network 105 by the checking unit 220.
- the periodic checking ensures that communication between the one or more nodes 125 in the network 105 is consistently monitored.
- the request and the response is received at the one or more nodes 125 from the user via the UE 125.
- the method 500 includes the step of validating the payload of one of, the request and the response by the validating unit 225.
- the validation process of the payload is performed by matching the length of the payload represented in the header of one of, the request and the response with the computed length.
- the header includes the content length, which indicates the size of the payload.
- the computation engine 230 is configured to determine the computed length of one of, the request and the response pertains to computation of the length of the request and the response.
- the computation engine 230 is configured to identify one or more transmission protocols utilized for receiving one of, the request and the response at the one or more nodes 125 from the user.
- the computation engine 230 is configured to aggregate the received data pertaining to one of, the request and the response based on identifying the one or more transmission protocols.
- the computation engine 230 is configured to compute the length of the received data pertaining to one of, the request and the response based on aggregating the received data.
- the computation engine 230 counts the total number of bytes in the aggregated data.
- the received data might be stored in specific data structures (e.g., arrays, buffers) where the length of the received data is directly accessed or computed.
- the validating unit 225 is configured to infer successful validation of the payload when the length of the payload matches with the computed length of one of, the request and the response.
- the checking unit 220 Upon successful validation of the payload, the checking unit 220 is further configured to check presence of one or more non-compatible data structures in the payload.
- the one or more non-compatible data structures are data elements or formats within the payload that do not align with the predefined standards expected by the system 120.
- the one or more non-compatible data structures includes, but not limited to, data type mismatches, incorrect data format, and unsupported encoding.
- the checking unit 220 is further configured to reject one of, the request and the response upon detecting presence of the one or more non-compatible data structures in the payload.
- the method 500 includes the step of formatting at least one of, the header or data elements of one of, the request and the response to align with one or more pre-defined policies of the one or more nodes 125 by the formatting unit 235.
- the formatting process is performed by scanning the format of the at least one of the headers or the data elements to identify a current structure and format of the headers and data elements. Further, the formatting process is performed by comparing the format of the at least one of, the header or the data elements with the one or more predefined policies of the one or more nodes 125. Further, the formatting unit 235 is performed by formatting one or more attributes of at least one of, the header or the data elements to align with the one or more pre-defined policies of the one or more nodes 125.
- FIG. 6 is a flow chart illustrating a method 600 for sanitizing the data suitable for use by the one or more nodes 125 in the network 105, according to one or more embodiments of the present disclosure.
- the method includes the step of periodically checking if one of, the request and the response is received at the one or more nodes 125 present in the network 105 by the checking unit 220.
- the periodic checking ensures that communication between the one or more nodes 125 in the network 105 is consistently monitored.
- the request and the response are received at the one or more nodes 125 from the user via the UE 125.
- the request type defines the structure of the data that is expected to be received by the user or the data which the server sends to the user and also the usage of the data.
- the request is an operation initiated by the user (or the one or more nodes 125) to request a service, data, or resource from another node in the network 105.
- Components of the request include, but not limited to, method/action, uniform Resource Locator (URL), and headers.
- the method includes the step of validating the payload of one of, the request and the response by the validating unit 225.
- the validation process of the payload is performed by matching the length of the payload represented in the header of one of, the request and the response with the computed length.
- the header includes the content length, which indicates the size of the payload.
- the content length is the HTTP header field that specifies the size of the payload of the request and the response in bytes.
- the HTTP header informs the server 115 how much data to expect after the headers, allowing a receiver to correctly process the entire message.
- the user transmits a POST request with the JSON payload to the server 115.
- the request header indicates that the content length is 150 bytes.
- the validating unit 225 is configured to receive the request and computes the actual length of the JSON payload.
- the actual length refers to the size of the JSON payload in bytes as it is received by the server 115.
- the actual length is computed by counting the exact number of bytes that make up the payload, including all the characters, spaces, punctuation, and any special characters encoded within the JSON data. If the actual length is also 150 bytes, the validation passes, and the server 115 processes the request. If the actual length is different (e.g., 140 bytes), the server 115 rejects the request and transmits an error response.
- the method includes the step of checking presence of one or more non-compatible data structures in the payload.
- the one or more non-compatible data structures are data elements or formats within the payload that do not align with predefined standards expected by the system 120.
- the one or more non-compatible data structures includes, but not limited to, data type mismatches, incorrect data format, and unsupported encoding.
- the field is expected to contain an integer but instead contains a string or an object, which is flagged as non- compatible.
- the payload includes the data that the system 120 is unable to interpret, such as a malformed JSON object, which is considered as non- compatible.
- the method includes the step of formatting the one or more attributes of at least one of, the header to align with the one or more pre-defined policies of the one or more nodes 125.
- the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies.
- the proprietary names refer to custom or vendor-specific names used in the headers or the data elements that need to be replaced or mapped to standard or recognized names according to the one or more pre-defined policies.
- the pre-defined names are standardized names or labels that are expected by the receiving nodes. In an example, a custom header field like X-custom-header might need to be renamed to a standard field name like authorization which serves a similar function.
- the formatting unit 235 is configured to identify the one or more attributes in the header that need modification, which involves parsing the request and response to locate the proprietary or non-standard names. Once identified, the pre-defined names are replaced or adjusted to align with the one or more pre-defined policies in real-time for smooth inter compatibility between two different nodes during initial stages of integrations. [0080] At step 625, the method includes the step of formatting the one or more attributes of at least one of, the data elements to align with the one or more pre-defined policies of the one or more nodes 125.
- the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies.
- the proprietary names refer to custom or vendor-specific names used in the headers or the data elements that need to be replaced or mapped to standard or recognized names according to the one or more pre-defined policies.
- the pre-defined names are standardized names or labels that are expected by the receiving nodes.
- the formatting unit 235 is configured to identify the one or more attributes in the data elements that need modification, which involves parsing the request and response to locate the proprietary or non-standard names. Once identified, the predefined names are replaced or adjusted to align with the one or more pre-defined policies in real-time for smooth inter compatibility between two different nodes during initial stages of integrations.
- the present invention further discloses a non-transitory computer-readable medium having stored thereon computer-readable instructions.
- the computer- readable instructions are executed by the processor 205.
- the processor 205 is configured to periodically check if one of, a request and a response is received at the one or more nodes 125 present in a network 105.
- the processor 205 is configured to if identified, one of, the request and the response is received at the one or more nodes 125 based on the periodic checking, validate, a payload of one of, the request and the response.
- the processor 205 is configured to format, at least one of, a header or data elements of one of the request and the response to align with one or more pre-defined policies of the one or more nodes 125 based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
- the present disclosure provides technical advancement for ensuring that the data is sanitized that may be suitable and compatible for use by the one or more nodes in the network.
- the system ensures to format at least one of the header or data elements of one of the requests or the responses to align with one or more pre-defined policies in real-time for smooth inter compatibility between two different nodes during initial stages of integrations.
- the present invention using a unique approach ensures that the integration of data components to the current implementation environment such as, a node can be conducted in a seamless manner and in real time.
- the present invention offers multiple advantages over the prior art and the above listed are a few examples to emphasize on some of the advantageous features.
- the listed advantages are to be read in a non-limiting manner.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
The present invention relates to a system (120) and a method (500) for sanitizing data to be utilized by one or more nodes (125) in the network (105) is disclosed The system includes a checking unit (220) configured to periodically check if one of, a request and a response is received at the one or more nodes (125) present in the network (105). The system (120) includes a validating unit (225) configured to validate a payload of one of, the request and the response. The system (120) includes a formatting unit (230) configured to format at least one of, a header or data elements of one of the request and the response to align with one or more pre-defined policies of the one or more nodes (125) based on determining that the header or the data elements do not match with the one or more pre-defined policies.
Description
METHOD AND SYSTEM FOR SANITIZING DATA TO BE UTILIZED BY
ONE OR MORE NODES
FIELD OF THE INVENTION
[0001] The present invention relates to the field of wireless communication networks, more particularly relates to a method and a system for sanitizing data to be utilized by one or more nodes in the wireless communication network.
BACKGROUND OF THE INVENTION
[0002] Generally, developers in the computer science domain research, design and develop systems, websites, programs and applications (hereinafter referred to as ‘product’). For example, an organization developing a program as the product may have designed and developed the same having certain specifications/policies for a particular type of implementation environment such as implemented at a particular type of node in a network. Further, APIs (Application Programming Interface) may have been modified according to the organization’s policies or data structures may have been modified for enhancing efficiency. However, when the same product is used in a new implementation environment such as a different type of node, the said product may not function as this may be incompatible with the new implementation, such as the APIs or data structures may differ.
[0003] In view of the above, once the product having certain specifications/policies is required to be implemented in a new environment, there is a considerable amount of work involved in ensuring that the product is integrated, in other words made compatible with the new environment. For example, there may be instances of headers mismatched, file names not matching, modified APIs and data structures. In these instances, the developer may have to rectify the mismatches/modify the specifications of the product in order to suit the new implementation environment. The developer may take considerable amount of time in order to rectify the mismatches/modify the
specifications of the product. Due to which, the entire lifecycle of testing the product and launching the product may get delayed and in turn decrease the efficiency of the organization launching the product.
[0004] In view of the above, there is a dire need for a system and method to sanitize data suitable for use by one or more nodes in a network.
SUMMARY OF THE INVENTION
[0005] One or more embodiments of the present disclosure provide a method and a system for sanitizing data to be utilized by one or more nodes in a network.
[0006] In one aspect of the present invention, the method for sanitizing data to be utilized by the one or more nodes in the network is disclosed. The method includes the step of periodically checking, by one or more processors, if one of, a request or a response is received at the one or more nodes present in a network. The method includes the step of if identified, one of, the request or the response is received at the one or more nodes based on the periodic checking, validating, by the one or more processors, a payload of one of, the request or the response. The method includes the step of upon successful validation of the payload, formatting, by the one or more processors, at least one of, a header or data elements of one of, the request or the response to align with one or more pre-defined policies of the one or more nodes based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
[0007] In one embodiment, the request or the response is received at the one or more nodes from a user via a User Equipment (UE), wherein the user includes at least one of, an administrator and a network operator.
[0008] In another embodiment, the step of, validating, a payload of one of, the request or the response, includes the steps of matching, by the one or more processors, a length of the payload represented in the header of one of, the request or the response with a computed length of one of, the request or the response. The step of, validating,
the payload of one of, the request or the response, includes the steps of inferring, by the one or more processors, successful validation of the payload when the length of the payload matches with the computed length of one of, the request or the response.
[0009] In yet another embodiment, the computed length of one of, the request or the response pertains to computation of the length of the request or the response by the one or more processors by identifying, one or more transmission protocols utilized for receiving one of, the request or the response at the one or more nodes from the user. The computed length of one of, the request or the response pertains to computation of the length of the request or the response by the one or more processors by aggregating, the received data pertaining to one of, the request or the response based on identifying the one or more transmission protocols. The computed length of one of, the request or the response pertains to computation of the length of the request or the response by the one or more processors by computing, the length of the received data pertaining to one of, the request or the response based on aggregating the received data.
[0010] In yet another embodiment, the step of, validating, a payload of one of, the request or the response, further includes the steps of checking, by the one or more processors, presence of one or more non-compatible data structures in the payload upon successful validation of the payload. The step of, validating, a payload of one of, the request or the response, further includes the steps of rejecting, by the one or more processors, one of, the request or the response upon detecting presence of the one or more non-compatible data structures in the payload.
[0011] In yet another embodiment, the step of, formatting, at least one of, a header or data elements of one of the, request or the response to align with one or more predefined policies of the one or more nodes, includes the steps of scanning, by the one or more processors, format of the at least one of, the header or the data elements. The step of, formatting, at least one of, a header or data elements of one of the, request or the response to align with one or more pre-defined policies of the one or more nodes, includes the steps of comparing, by the one or more processors, the format of the at
least one of, the header or the data elements with the one or more pre-defined policies of the one or more nodes. The step of, formatting, at least one of, a header or data elements of one of the, request or the response to align with one or more pre-defined policies of the one or more nodes, includes the steps of formatting, by the one or more processors, one or more attributes of at least one of, the header or the data elements to align with the one or more pre-defined policies of the one or more nodes, wherein the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies.
[0012] In another aspect of the present invention, the system for sanitizing data to be utilized by the one or more nodes in the network is disclosed. The system includes a checking unit configured to periodically check if one of, a request and a response is received at the one or more nodes present in a network. The system includes a validating unit, configured to, validate, a payload of one of, the request and the response if identified, one of, the request and the response is received at the one or more nodes based on the periodic checking. The system includes a formatting unit, configured to, format, at least one of, a header or data elements of one of, the request and the response to align with one or more pre-defined policies of the one or more nodes based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
[0013] In yet another aspect of the present invention, a User Equipment (UE) is disclosed. One or more primary processors communicatively coupled to one or more processors. The one or more primary processors coupled with a memory. The memory stores instructions which when executed by the one or more primary processors cause the UE to transmit, at least one of, a request and a response to the one or more processors.
[0014] In yet another aspect of the present invention, a non -transitory computer- readable medium having stored thereon computer-readable instructions that, when executed by a processor is disclosed. The processor is configured to periodically check
if one of, a request and a response is received at the one or more nodes present in a network. The processor is configured to if identified, one of, the request and the response is received at the one or more nodes based on the periodic checking, validate, a payload of one of, the request and the response. The processor is configured to format, at least one of, a header or data elements of one of the request and the response to align with one or more pre-defined policies of the one or more nodes based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
[0015] Other features and aspects of this invention will be apparent from the following description and the accompanying drawings. The features and advantages described in this summary and in the following detailed description are not all- inclusive, and particularly, many additional features and advantages will be apparent to one of ordinary skill in the relevant art, in view of the drawings, specification, and claims hereof. Moreover, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes and may not have been selected to delineate or circumscribe the inventive subject matter, resort to the claims being necessary to determine such inventive subject matter.
BRIEF DESCRIPTION OF THE DRAWINGS
[0016] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components, electronic components or circuitry commonly used to implement such components.
[0017] FIG. 1 is an exemplary block diagram of an environment for sanitizing data suitable for use by one or more nodes in a network, according to one or more embodiments of the present disclosure;
[0018] FIG. 2 is an exemplary block diagram of a system for sanitizing the data suitable for use by the one or more nodes in the network, according to one or more embodiments of the present disclosure;
[0019] FIG. 3 is a schematic representation of a workflow of the system of FIG. 2 communicably coupled with a User Equipment (UE), according to one or more embodiments of the present disclosure;
[0020] FIG. 4 is an exemplary block diagram of an architecture that can be implemented in the system of FIG.2, according to one or more embodiments of the present disclosure;
[0021] FIG. 5 is a flow diagram illustrating a method for sanitizing the data suitable for use by the one or more nodes in the network, according to one or more embodiments of the present disclosure; and
[0022] FIG. 6 is a flow chart illustrating the method for sanitizing the data suitable for use by the one or more nodes in the network, according to one or more embodiments of the present disclosure.
[0023] The foregoing shall be more apparent from the following detailed description of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0024] Some embodiments of the present disclosure, illustrating all its features, will now be discussed in detail. It must also be noted that as used herein and in the appended claims, the singular forms "a", "an" and "the" include plural references unless the context clearly dictates otherwise.
[0025] Various modifications to the embodiment will be readily apparent to those skilled in the art and the generic principles herein may be applied to other embodiments. However, one of ordinary skill in the art will readily recognize that the present disclosure including the definitions listed here below are not intended to be limited to the embodiments illustrated but is to be accorded the widest scope consistent with the principles and features described herein.
[0026] A person of ordinary skill in the art will readily ascertain that the illustrated steps detailed in the figures and here below are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0027] The present invention discloses a system and method for sanitizing data suitable for use by one or more nodes in a network. For example, when a product has been developed and implemented at a first node with specific specifications and policies, the same program when implemented at a second node which requires different implementation with same or change in specifications/policies, the said product may be incompatible to operate at the second node. The present invention solves the issue of incompatibility by providing a unique approach to seamlessly integrate the data which is used by the one or more nodes in the network.
[0028] Referring to FIG. 1, FIG. 1 illustrates an exemplary block diagram of an environment 100 for sanitizing data suitable for use by one or more nodes 125 in a
network 105, according to one or more embodiments of the present invention. The environment 100 includes the network 105, a User Equipment (UE) 110, a server 115, a system 120, and the one or more nodes 125. The UE 110 aids a user to interact with the system 120 for transmitting, at least one of, a request and a response to one or more processors 205 (shown in FIG.2). In an embodiment, the user includes at least one of, an administrator and a network operator. Data sanitization refers to the process of cleaning or modifying data to ensure certain standards, is safe to use, and is compatible with the system 120 to process. The sanitizing data involves removing or correcting data elements that could cause issues, ensuring the data is in a proper format and free from harmful content. In an embodiment, the data elements for different types of data that might be sanitized include, but not limited to, user data, log data, configuration data, metadata, and network traffic data.
[0029] The data sanitization refers to sanitizing an input data to filter potentially malicious modifications. In this regard, a set of sanitation algorithms are included in the function and an identifier is provided to indicate which sanitation policy to use. In an embodiment, the sanitation policy includes the type of data that is expected and the type of sanitation that is required. The sanitization policies are pre-configured by the network operator. A data provider re-collects and processes the information, pre- processes the analytics data received in a reply, i.e. it provides sanitation to the collected data before forwarding it back to the analytics function. The analytics function then processes the sanitized data. After the analytics function has processed the data, the processed data sends the result to the user that requested the analytics.
[0030] For the purpose of description and explanation, the description will be explained with respect to the UE 110, or to be more specific will be explained with respect to a first UE 110a, a second UE 110b, and a third UE 110c, and should nowhere be construed as limiting the scope of the present disclosure. Each of the UE 110 from the first UE 110a, the second UE 110b, and the third UE 110c is configured to connect to the server 115 via the network 105. In an embodiment, each of the first UE 110a, the second UE 110b, and the third UE 110c is one of, but not limited to, any electrical,
electronic, electro-mechanical or an equipment and a combination of one or more of the above devices such as smartphones, virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general -purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device.
[0031] The network 105 includes, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof. The network 105 may include, but is not limited to, a Third Generation (3G), a Fourth Generation (4G), a Fifth Generation (5G), a Sixth Generation (6G), a New Radio (NR), a Narrow Band Internet of Things (NB-IoT), an Open Radio Access Network (O-RAN), and the like.
[0032] The server 115 may include by way of example but not limitation, one or more of a standalone server, a server blade, a server rack, a bank of servers, a server farm, hardware supporting a part of a cloud service or system, a home server, hardware running a virtualized server, one or more processors executing code to function as a server, one or more machines performing server-side functionality as described herein, at least a portion of any of the above, some combination thereof. In an embodiment, the entity may include, but is not limited to, a vendor, a network operator, a company, an organization, a university, a lab facility, a business enterprise, a defense facility, or any other facility that provides content.
[0033] The environment 100 further includes the one or more nodes 125. The one or more nodes 125 in the network 105 is a device or a point where the data can be created, transmitted, received, or processed. The one or more nodes 125 include a wide range of devices or systems, such as servers, routers, switches, sensors, computers, or other hardware and software systems. The one or more nodes 125 emphasizes that data sanitization is done with the intention of making the data suitable for use by various
types of one or more nodes 125 within the network 105, each of which may have different requirements and capabilities.
[0034] The environment 100 further includes the system 120 communicably coupled to the server 115 and each of the first UE 110a, the second UE 110b, and the third UE 110c via the network 105. The system 120 is configured for sanitizing the data suitable for use by the one or more nodes 125 in the network 105. The system 120 is adapted to be embedded within the server 115 or is embedded as the individual entity, as per multiple embodiments of the present invention.
[0035] Operational and construction features of the system 120 will be explained in detail with respect to the following figures.
[0036] FIG. 2 is an exemplary block diagram of the system 120 for sanitizing the data suitable for use by the one or more nodes 125 in the network 105, according to one or more embodiments of the present disclosure.
[0037] The system 120 includes a processor 205, a memory 210, a user interface 215, and a database 240. For the purpose of description and explanation, the description will be explained with respect to one or more processors 205, or to be more specific will be explained with respect to the processor 205 and should nowhere be construed as limiting the scope of the present disclosure. The one or more processor 205, hereinafter referred to as the processor 205 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, single board computers, and/or any devices that manipulate signals based on operational instructions.
[0038] As per the illustrated embodiment, the processor 205 is configured to fetch and execute computer-readable instructions stored in the memory 210. The memory 210 may be configured to store one or more computer-readable instructions or routines in a non-transitory computer-readable storage medium, which may be fetched and executed to create or share data packets over a network service. The memory 210 may
include any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as EPROM, flash memory, and the like.
[0039] The user interface 215 includes a variety of interfaces, for example, interfaces for a Graphical User Interface (GUI), a web user interface, a Command Line Interface (CLI), and the like. The user interface 215 facilitates communication of the system 120. In one embodiment, the user interface 215 provides a communication pathway for one or more components of the system 120. Examples of the one or more components include, but are not limited to, the user equipment 110, and the database 240.
[0040] The database 240 is one of, but not limited to, a centralized database, a cloudbased database, a commercial database, an open-source database, a distributed database, an end-user database, a graphical database, a No-Structured Query Language (NoSQL) database, an object-oriented database, a personal database, an in-memory database, a document-based database, a time series database, a wide column database, a key value database, a search database, a cache databases, and so forth. The foregoing examples of database 240 types are non-limiting and may not be mutually exclusive e.g., a database can be both commercial and cloud-based, or both relational and open- source, etc.
[0041] Further, the processor 205, in an embodiment, may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor 205. In the examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processor 205 may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for processor 205 may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the memory 210 may store instructions that, when executed by the processing resource, implement the processor 205. In such
examples, the system 120 may comprise the memory 210 storing the instructions and the processing resource to execute the instructions, or the memory 210 may be separate but accessible to the system 120 and the processing resource. In other examples, the processor 205 may be implemented by electronic circuitry.
[0042] In order for the system 120 to perform the sanitization of the data suitable for use by the one or more nodes 125 in the network 105, the processor 205 includes a checking unit 220, a validating unit 225, a computation engine 230, and a formatting unit 235 communicably coupled to each other. In an embodiment, operations and functionalities of the checking unit 220, the validating unit 225, the computation engine 230, and the formatting unit 235 can be used in combination or interchangeably.
[0043] The checking unit 220 is configured to periodically check if one of, a request and a response is received at the one or more nodes 125 present in the network 105. The periodic checking ensures that communication between the one or more nodes 125 in the network 105 is consistently monitored. In an embodiment, the request and the response are received at the one or more nodes 125 from the user via the UE 125. The request type defines the structure of the data that is expected to be received by the user or the data which the server sends to the user and also the usage of the data. The request is an operation initiated by the user (or the one or more nodes 125) to request a service, data, or resource from another node in the network 105. Components of the request include, but not limited to, method/action, uniform Resource Locator (URL), and headers.
[0044] In an embodiment, the method/action indicates the type of operation (e.g., GET, POST, PUT, DELETE in Hypertext Transfer Protocol (HTTP)). The headers include metadata providing information about the request, such as a content type, a user agent, etc. In an embodiment, the response is the server's reply to the user’s request. The response contains the status of the request, data, or resource requested, or an error message if the request could not be fulfilled. The headers include metadata
providing information about the response, such as the content type, the user agent, etc. The response includes providing either actual data or resource the user requested, or an error message.
[0045] Upon identification of the request and the response is received at the one or more nodes 125 based on the periodic checking, the validating unit 225 is configured to validate a payload of one of, the request and the response. The payload refers to actual data being sent in the request and the response. In an example, in the Hypertext Transfer Protocol (HTTP) request, the payload is one of, but not limited to, JavaScript Object Notation (JSON) data, Extensible Markup Language (XML), Yet Another Markup Language (YAML), and Multipurpose Internet Mail Extensions (MIME) form data. The validation process of the payload is performed by matching the length of the payload represented in the header of one of, the request and the response with a computed length. The computed length is a result of a calculation or analysis process that determines the size, extent, or length of the payload. In an embodiment, if the payload is structured (e.g., JSON, XML), the computation involves parsing the structure and summing the lengths of the payload.
[0046] As per the above embodiment, the header includes a content length, which indicates the size of the payload. The content length is a Hypertext Transfer Protocol (HTTP) header field that specifies the size of the payload of the request and the response in bytes. The HTTP header informs the server 115 how much data to expect after the headers, allowing a receiver to correctly process the entire message. In an exemplary embodiment, the user transmits a POST request with the JSON payload to the server 115. The request header indicates that the content length is 150 bytes. The validating unit 225 is configured to receive the request and computes the actual length of the JSON payload. The actual length refers to the size of the JSON payload in bytes as it is received by the server 115. The actual length is computed by counting the exact number of bytes that make up the payload, including all the characters, spaces, punctuation, and any special characters encoded within the JSON data. If the actual length is also 150 bytes, the validation passes, and the server 115 processes the request.
If the actual length is different (e.g., 140 bytes), the server 115 rejects the request and transmits an error response.
[0047] Upon validation of the payload by matching the length of the payload represented in the header, the computation engine 230 is configured to determine the computed length of one of, the request and the response. The computation engine 230 is configured to identify one or more transmission protocols utilized for receiving one of the request and the response at the one or more nodes 125 from the user. In an embodiment, the one or more transmission protocols include, but not limited to, specification of protocols, data formats, header management, and the like. In an embodiment, the specification of protocols defines which network protocols (e.g., Transmission Control Protocol (TCP), User datagram Protocol (UDP), HTTP 2.0, Hypertext Transfer Protocol Secure (HTTPS)) are used for different types of communications. The data formats specify the formats for data exchanges, such as JSON, XML, or binary formats.
[0048] Upon determining the computed length of one of, the request and the response, the computation engine 230 is further configured to aggregate the received data pertaining to one of, the request and the response upon identification of the one or more transmission protocols. The received data is aggregated based on a protocol group. The aggregation based on the protocol group includes, but is not limited to, summing up metrics and compiling data entries. In an example, the computation engine 230 is configured to aggregate the HTTP 2.0 requests to calculate the total number of method/action requests or the average response time. The aggregated data is structured into the JSON format that allows for easy analysis and reporting, which involves creating data tables, logs, or databases 240.
[0049] Further, the computation engine 230 is configured to compute a length of the received data based on aggregating the received data. The computation engine 230 counts the total number of bytes in the aggregated data. The received data might be stored in specific data structures (e.g., arrays, buffers) where the length of the received
data is directly accessed or is required to be computed. In one embodiment, the validating unit 225 is configured to infer successful validation of the payload when the length of the payload matches with the computed length of one of, the request and the response.
[0050] Upon successful validation of the payload, the checking unit 220 is further configured to check presence of one or more non-compatible data structures in the payload. The one or more non-compatible data structures are data elements or formats within the payload that do not align with predefined standards expected by the system 120. The one or more non-compatible data structures includes, but not limited to, data type mismatches, incorrect data format, and unsupported encoding. In an example, if the field is expected to contain an integer but instead contains a string or an object, which is flagged as non-compatible. In another example, if the payload includes the data that the system 120 is unable to interpret, such as a malformed JSON object, which is considered as non-compatible.
[0051] The checking unit 220 is further configured to reject one of, the request and the response upon detecting presence of the one or more non-compatible data structures in the payload. In an exemplary embodiment, an Application Programming Interface (API) gateway that processes incoming requests from the user. If the user sends the payload containing the proprietary or incorrectly formatted data structure, the checking unit 220 is further configured to detect the non-compatible data structures. Instead of allowing the malformed request to pass through and potentially cause errors in downstream services, the API gateway rejects the request and returns the error message to the user, ensuring that only well-formed and compatible requests are processed by the system 120.
[0052] Upon successful validation of the payload, the formatting unit 235 is configured to format at least one of, a header or data elements of one of, the request and the response to align with one or more pre-defined policies of the one or more nodes 125. The one or more pre-defined policies refer to the rules or guidelines that
dictate how the headers and the data elements are structured. In an embodiment, the one or more pre-defined policies include, but not limited to, a field order, a field name, a data type, a length constraint, and the like. In another embodiment, the one or more pre-defined policies are defined by the user for formatting the header and the data elements of the request and the response. The formatting unit 235 is configured to perform formatting process by scanning the format of the at least one of the headers or the data elements to identify a current structure and format of the headers and data elements. The format refers to the structure and arrangement of data elements or headers. In an embodiment, the formats, include, but not limited to, header format, data element format, file format, and database format. Further, the formatting process is performed by comparing the format of the at least one of, the header or the data elements with the one or more pre-defined policies of the one or more nodes 125.
[0053] Further, the formatting unit 235 is configured to format the one or more attributes of at least one of, the header and the data elements to align with the one or more pre-defined policies of the one or more nodes 125. In an embodiment, the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies. The proprietary names refer to custom or vendor-specific names used in the headers or the data elements that need to be replaced or mapped to standard or recognized names according to the one or more pre-defined policies. The pre-defined names are standardized names or labels that are expected by the receiving nodes. In an example, a custom header field like X-custom-header might need to be renamed to a standard field name like authorization which serves a similar function. The formatting unit 235 is configured to identify the one or more attributes in the header or data elements that need modification, which involves parsing the request and the response to locate the proprietary or non-standard names. Once identified, the pre-defined names are replaced or adjusted to align with the one or more pre-defined policies in real-time for smooth inter compatibility between two different nodes during initial stages of integrations.
[0054] By doing formatting the header or data elements of one of, the request and the response to align with one or more pre-defined policies of the one or more nodes 125 , the system 120 is able to, advantageously, enable the headers formatting for inter compatibility between two different nodes, data elements formatting for inter compatibility between two different nodes, and further enable removal of the propriety elements in the headers and data elements for inter compatibility between two different nodes, and ability to check if the data structure is correct and no hidden elements are added to the data. Furthermore, the system 120 reduces integration and testing time as compared to the conventional systems and methods where development for modification may take significantly long time.
[0055] FIG. 3 is a schematic representation of a workflow of the system 120 of FIG. 2 communicably coupled with the UE 110, according to one or more embodiments of the present disclosure. More specifically, FIG. 3 illustrates the system 120 configured for sanitizing the data suitable for use by the one or more nodes 125 in the network 105. It is to be noted that the embodiment with respect to FIG. 3 will be explained with respect to the first UE 110a for the purpose of description and illustration and should nowhere be construed as limited to the scope of the present disclosure.
[0056] As mentioned earlier in FIG.l, in an embodiment, the first UE 110a may encompass electronic apparatuses. These devices are illustrative of, but not restricted to, modems, routers, switches, laptops, tablets, smartphones (including phones), or other devices enabled for web connectivity. The scope of the first UE 110a explicitly extends to a broad spectrum of electronic devices capable of executing computing operations and accessing networked resources, thereby providing users with a versatile range of functionalities for both personal and professional applications. This embodiment acknowledges the evolving nature of electronic devices and their integral role in facilitating access to digital services and platforms. In an embodiment, the first UE 110a can be associated with multiple users. Each of the first UE 110a is communicatively coupled with the processor 205.
Y1
[0057] The first UE 110a includes one or more primary processors 305 communicably coupled to the one or more processors 205 of the system 120. The one or more primary processors 305 are coupled with a memory 310 storing instructions which are executed by the one or more primary processors 305. Execution of the stored instructions by the one or more primary processors 305 enables the first UE 110a to transmit, at least one of, the request and the response to the one or more processors 205.
[0058] Furthermore, the one or more primary processors 305 within the first UE 110a are uniquely configured to execute a series of steps as described herein. This configuration underscores the processor 205 capability to sanitize the data suitable for use by the one or more nodes 125 in the network 105. The coordinated functioning of the one or more primary processors 305 and the additional processors, is directed by the executable instructions stored in the memory 310. The executable instructions facilitate effective task distribution and management among the one or more primary processors 305, optimizing performance and resource use.
[0059] As mentioned earlier in FIG.2, the system 120 includes the one or more processors 205, the memory 210, the user interface 215, and the database 240. The operations and functions of the one or more processors 205, the memory 210, the user interface 215, and the database 240 are already explained in FIG. 2. For the sake of brevity, a similar description related to the working and operation of the system 120 as illustrated in FIG. 2 has been omitted to avoid repetition.
[0060] Further, the processor 205 includes the checking unit 220, the validating unit 225, the computation engine 230, and the formatting unit 235. The operations and functions of the checking unit 220, the validating unit 225, the computation engine 230, and the formatting unit 235 are already explained in FIG. 2. Hence, for the sake of brevity, a similar description related to the working and operation of the system 120 as illustrated in FIG. 2 has been omitted to avoid repetition. The limited description provided for the system 120 in FIG. 3, should be read with the description provided
for the system 120 in the FIG. 2 above, and should not be construed as limiting the scope of the present disclosure.
[0061] FIG. 4 is a block diagram of an architecture 400 that can be implemented in the system of FIG.2, according to one or more embodiments of the present disclosure.
[0062] The architecture 400 includes a Virtual Machine (VM) 405, an application module 410, a protocol stack module 415, an aggregation module 420, and a network layer 425.
[0063] The application module 410 and the protocol stack module 415 run on the VM 405. The VM 405 is a crucial component of the Java runtime environment that enables at least one of, but not limited to, java applications to run on any device or operating system without modification. The VM 405 provides the environment necessary for at least one of, but not limited to, the java applications to execute by interpreting or compiling a java bytecode into a machine code. The application module 410 and the protocol stack module 415 incorporates java-based application executable by the processor 205 with the memory.
[0064] The application module 410 is configured to interact with the one or more nodes 125 via the Hypertext Transfer Protocol 2.0 (HTTP 2.0) utilizing the protocol stack module 415. The application module 410 is responsible for handling the main operations of the application, such as processing data, handling user requests, and communicating with other modules or systems. It is to be noted that usage of the HTTP 2.0 protocol for transmitting hypermedia data such as, documents should not be construed as limiting the scope of the present disclosure, as the system is flexible to adopt other similar protocols for data transmission. The HTTP 2.0 protocol is used in the present invention in order to send multiple requests and receive multiple responses, advantageously ensuring efficient time management in data communication between the one or more nodes 125.
[0065] The protocol stack module 415 is configured to interact with the network 105 to communicate from the one node to another node via the HTTP 2.0. The protocol stack module 415 is configured to provide the necessary protocols and communication mechanisms required for network operations. Specifically, the protocol stack module 415 implements the HTTP 2.0 protocol, which is an advanced version of the HTTP protocol designed to improve performance and efficiency by supporting features like multiplexing, header compression, and server push. The protocol stack module 415 is configured to provide abstracted Application Peripheral Interface (APIs) for further development of the application around with a plurality of components. In an embodiment, the plurality of components includes, but is not limited to, connection management, log management, transport messages, overload protection, rate limit protection, and the like.
[0066] The architecture 400 of the system 120 is configured to receive the requests from users and send alerts via the user interface 215. The user interface 215 includes a variety of interfaces, for example, interfaces for a Graphical User Interface (GUI), a web user interface, a Command Line Interface (CLI), and the like. The user interface 215 facilitates communication of the system 120. In one embodiment, the user interface 215 provides a communication pathway for one or more components of the system 120.
[0067] The application module 410 is configured to interact with the server 115 and the network layer 425 to gather the data related to any received requests from the UE 110 as well as various related information like processing status of the requests, errors occurred in processing if any and basic health of the server 115.
[0068] The protocol stack module 415 is configured to manage the server 115 related resources. The protocol stack module 415 includes the aggregation module 420 is configured to aggregate the received data pertaining to one of, the request and the response based on identifying the one or more transmission protocols. The received data is aggregated within each protocol group, which includes summing up metrics, or
compiling data entries. The aggregated data is structured into the JSON format that allows for easy analysis and reporting, which involves creating data tables, logs, or databases 240.
[0069] FIG. 5 is a flow diagram illustrating a method 500 for sanitizing the data suitable for use by the one or more nodes 125 in the network 105, according to one or more embodiments of the present disclosure. For the purpose of description, the method 500 is described with the embodiments as illustrated in FIG. 2 and should nowhere be construed as limiting the scope of the present disclosure.
[0070] At step 505, the method 500 includes the step of periodically checking if one of, the request and the response is received at the one or more nodes 125 present in the network 105 by the checking unit 220. The periodic checking ensures that communication between the one or more nodes 125 in the network 105 is consistently monitored. In an embodiment, the request and the response is received at the one or more nodes 125 from the user via the UE 125.
[0071] At step 510, the method 500 includes the step of validating the payload of one of, the request and the response by the validating unit 225. The validation process of the payload is performed by matching the length of the payload represented in the header of one of, the request and the response with the computed length. The header includes the content length, which indicates the size of the payload.
[0072] The computation engine 230 is configured to determine the computed length of one of, the request and the response pertains to computation of the length of the request and the response. The computation engine 230 is configured to identify one or more transmission protocols utilized for receiving one of, the request and the response at the one or more nodes 125 from the user. In an embodiment, the computation engine 230 is configured to aggregate the received data pertaining to one of, the request and the response based on identifying the one or more transmission protocols.
[0073] Further, the computation engine 230 is configured to compute the length of the received data pertaining to one of, the request and the response based on aggregating the received data. The computation engine 230 counts the total number of bytes in the aggregated data. The received data might be stored in specific data structures (e.g., arrays, buffers) where the length of the received data is directly accessed or computed. In one embodiment, the validating unit 225 is configured to infer successful validation of the payload when the length of the payload matches with the computed length of one of, the request and the response.
[0074] Upon successful validation of the payload, the checking unit 220 is further configured to check presence of one or more non-compatible data structures in the payload. The one or more non-compatible data structures are data elements or formats within the payload that do not align with the predefined standards expected by the system 120. The one or more non-compatible data structures includes, but not limited to, data type mismatches, incorrect data format, and unsupported encoding. The checking unit 220 is further configured to reject one of, the request and the response upon detecting presence of the one or more non-compatible data structures in the payload.
[0075] At step 515, the method 500 includes the step of formatting at least one of, the header or data elements of one of, the request and the response to align with one or more pre-defined policies of the one or more nodes 125 by the formatting unit 235. The formatting process is performed by scanning the format of the at least one of the headers or the data elements to identify a current structure and format of the headers and data elements. Further, the formatting process is performed by comparing the format of the at least one of, the header or the data elements with the one or more predefined policies of the one or more nodes 125. Further, the formatting unit 235 is performed by formatting one or more attributes of at least one of, the header or the data elements to align with the one or more pre-defined policies of the one or more nodes 125.
[0076] FIG. 6 is a flow chart illustrating a method 600 for sanitizing the data suitable for use by the one or more nodes 125 in the network 105, according to one or more embodiments of the present disclosure.
[0077] At step 605, the method includes the step of periodically checking if one of, the request and the response is received at the one or more nodes 125 present in the network 105 by the checking unit 220. The periodic checking ensures that communication between the one or more nodes 125 in the network 105 is consistently monitored. In an embodiment, the request and the response are received at the one or more nodes 125 from the user via the UE 125. The request type defines the structure of the data that is expected to be received by the user or the data which the server sends to the user and also the usage of the data. The request is an operation initiated by the user (or the one or more nodes 125) to request a service, data, or resource from another node in the network 105. Components of the request include, but not limited to, method/action, uniform Resource Locator (URL), and headers. At step 610, the method includes the step of validating the payload of one of, the request and the response by the validating unit 225. The validation process of the payload is performed by matching the length of the payload represented in the header of one of, the request and the response with the computed length. In a embodiment, the header includes the content length, which indicates the size of the payload. The content length is the HTTP header field that specifies the size of the payload of the request and the response in bytes. The HTTP header informs the server 115 how much data to expect after the headers, allowing a receiver to correctly process the entire message. In an exemplary embodiment, the user transmits a POST request with the JSON payload to the server 115. The request header indicates that the content length is 150 bytes. The validating unit 225 is configured to receive the request and computes the actual length of the JSON payload. The actual length refers to the size of the JSON payload in bytes as it is received by the server 115. The actual length is computed by counting the exact number of bytes that make up the payload, including all the characters, spaces, punctuation, and any special characters encoded within the JSON data. If the actual
length is also 150 bytes, the validation passes, and the server 115 processes the request. If the actual length is different (e.g., 140 bytes), the server 115 rejects the request and transmits an error response.
[0078] At step 615, the method includes the step of checking presence of one or more non-compatible data structures in the payload. The one or more non-compatible data structures are data elements or formats within the payload that do not align with predefined standards expected by the system 120. The one or more non-compatible data structures includes, but not limited to, data type mismatches, incorrect data format, and unsupported encoding. In an example, if the field is expected to contain an integer but instead contains a string or an object, which is flagged as non- compatible. In another example, if the payload includes the data that the system 120 is unable to interpret, such as a malformed JSON object, which is considered as non- compatible.
[0079] At step 620, the method includes the step of formatting the one or more attributes of at least one of, the header to align with the one or more pre-defined policies of the one or more nodes 125. In an embodiment, the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies. The proprietary names refer to custom or vendor-specific names used in the headers or the data elements that need to be replaced or mapped to standard or recognized names according to the one or more pre-defined policies. The pre-defined names are standardized names or labels that are expected by the receiving nodes. In an example, a custom header field like X-custom-header might need to be renamed to a standard field name like authorization which serves a similar function. The formatting unit 235 is configured to identify the one or more attributes in the header that need modification, which involves parsing the request and response to locate the proprietary or non-standard names. Once identified, the pre-defined names are replaced or adjusted to align with the one or more pre-defined policies in real-time for smooth inter compatibility between two different nodes during initial stages of integrations.
[0080] At step 625, the method includes the step of formatting the one or more attributes of at least one of, the data elements to align with the one or more pre-defined policies of the one or more nodes 125. In an embodiment, the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies. The proprietary names refer to custom or vendor-specific names used in the headers or the data elements that need to be replaced or mapped to standard or recognized names according to the one or more pre-defined policies. The pre-defined names are standardized names or labels that are expected by the receiving nodes. The formatting unit 235 is configured to identify the one or more attributes in the data elements that need modification, which involves parsing the request and response to locate the proprietary or non-standard names. Once identified, the predefined names are replaced or adjusted to align with the one or more pre-defined policies in real-time for smooth inter compatibility between two different nodes during initial stages of integrations.
[0081]
[0082] The present invention further discloses a non-transitory computer-readable medium having stored thereon computer-readable instructions. The computer- readable instructions are executed by the processor 205. The processor 205 is configured to periodically check if one of, a request and a response is received at the one or more nodes 125 present in a network 105. The processor 205 is configured to if identified, one of, the request and the response is received at the one or more nodes 125 based on the periodic checking, validate, a payload of one of, the request and the response. The processor 205 is configured to format, at least one of, a header or data elements of one of the request and the response to align with one or more pre-defined policies of the one or more nodes 125 based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
[0083] A person of ordinary skill in the art will readily ascertain that the illustrated embodiments and steps in description and drawings (FIG.1-5) are set out to explain
the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0084] The present disclosure provides technical advancement for ensuring that the data is sanitized that may be suitable and compatible for use by the one or more nodes in the network. The system ensures to format at least one of the header or data elements of one of the requests or the responses to align with one or more pre-defined policies in real-time for smooth inter compatibility between two different nodes during initial stages of integrations. Further, the present invention using a unique approach ensures that the integration of data components to the current implementation environment such as, a node can be conducted in a seamless manner and in real time.
[0085] The present invention offers multiple advantages over the prior art and the above listed are a few examples to emphasize on some of the advantageous features. The listed advantages are to be read in a non-limiting manner.
REFERENCE NUMERALS
[0086] Environment - 100
[0087] Network- 105
[0088] User equipment- 110
[0089] Server - 115
[0090] System -120
[0091] One or more nodes- 125
[0092] Processor - 205
[0093] Memory - 210
[0094] User interface-215
[0095] Checking unit - 220
[0096] Validating unit- 225
[0097] Computation engine - 230
[0098] Formatting unit- 235
[0099] Database- 240
[00100] Primary processor- 305
[00101] Memory-310
[00102] Virtual machine- 405
[00103] Application module- 410
[00104] Protocol stack module- 415
[00105] Aggregation module- 420
[00106] Network layer- 425
Claims
1. A method (500) for sanitizing data to be utilized by one or more nodes (125) in a network (105), the method (500) comprises the steps of: periodically checking, by one or more processors (205), if one of, a request and a response is received at the one or more nodes (125) present in a network (105);
, validating, by the one or more processors (205), a payload of one of, the request and the response on identification of, the request and the response is received at the one or more nodes (125) based on the periodic checking; and upon successful validation of the payload, formatting, by the one or more processors (205), at least one of, a header or data elements of one of, the request and the response to align with one or more pre-defined policies of the one or more nodes (125) based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
2. The method (500) as claimed in claim 1, wherein the request and the response are received at the one or more nodes (125) from a user via a User Equipment (UE) (110), wherein the user includes at least one of, an administrator and a network operator.
3. The method (500) as claimed in claim 1, wherein the step of, validating, a payload of one of, the request and the response, includes the steps of: matching, by the one or more processors (205), a length of the payload represented in the header of one of, the request and the response with a computed length of one of, the request and the response; and inferring, by the one or more processors (205), successful validation of the payload when the length of the pay load matches with the computed length of one of, the request and the response.
4. The method (500) as claimed in claim 3, wherein the computed length of one of, the request and the response pertains to computation of the length of the request and the response by the one or more processors (205), by: identifying, one or more transmission protocols utilized for receiving one of, the request and the response at the one or more nodes (125) from the user; aggregating, the received data pertaining to one of, the request and the response based on identifying the one or more transmission protocols; and computing, the length of the received data pertaining to one of, the request and the response based on aggregating the received data.
5. The method (500) as claimed in claim 1, wherein the step of, validating, a payload of one of, the request and the response, further includes the steps of: checking, by the one or more processors (205), presence of one or more non-compatible data structures in the pay load upon successful validation of the payload; and rejecting, by the one or more processors (205), one of, the request and the response upon detecting presence of the one or more non-compatible data structures in the payload.
6. The method (500) as claimed in claim 1 , wherein the step of, formatting, at least one of, a header or data elements of one of the request and the response to align with one or more pre-defined policies of the one or more nodes (125), includes the steps of: scanning, by the one or more processors (205), format of the at least one of, the header or the data elements; comparing, by the one or more processors (205), the format of the at least one of, the header or the data elements with the one or more pre-defined policies of the one or more nodes (125); and
formatting, by the one or more processors (205), one or more attributes of at least one of, the header or the data elements to align with the one or more pre-defined policies of the one or more nodes (125), wherein the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies.
7. A system (120) for sanitizing data to be utilized by one or more nodes (125) in a network (105), the system (120) comprising: a checking unit (220), configured to, periodically check, if one of, a request and a response is received at the one or more nodes (125) present in a network (105); a validating unit (225), configured to, validate, a payload of one of, the request and the response based on identification of, the request and the response is received at the one or more nodes (125) based on the periodic checking; and upon successful validation of the payload, a formatting unit (230), configured to, format, at least one of, a header or data elements of one of, the request and the response to align with one or more pre-defined policies of the one or more nodes (125) based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
8. The system (120) as claimed in claim 7, wherein the request and the response is received at the one or more nodes (125) from a user via a User Equipment (UE) (110), wherein the user includes at least one of, an administrator and a network operator.
9. The system (120) as claimed in claim 7, wherein the validating unit (225), validates, a payload of one of, the request and the response, by:
matching, a length of the payload represented in the header of one of, the request and the response with a computed length of one of, the request and the response; and inferring, successful validation of the payload when the length of the payload matches with the computed length of one of, the request and the response.
10. The system (120) as claimed in claim 9, wherein the computed length of one of, the request and the response pertains to computation of the length of the request and the response by a computation engine (230), by: identifying, one or more transmission protocols utilized for receiving one of, the request and the response at the one or more nodes (125) from the user; aggregating, the received data pertaining to one of, the request and the response based on identifying the one or more transmission protocols; and computing, the length of the received data pertaining to one of, the request and the response based on aggregating the received data.
11. The system (120) as claimed in claim 7, wherein the checking unit (220), is further configured to: check, presence of one or more non-compatible data structures in the pay load upon successful validation of the pay load; and reject, one of, the request and the response upon detecting presence of the one or more non-compatible data structures in the payload.
12. The system (120) as claimed in claim 7, wherein the formatting unit (235), formats, at least one of, the header or the data elements of one of the, request and the response to align with the one or more pre-defined policies of the one or more nodes (125), by: scanning, format of the at least one of, the header or the data elements;
comparing, the format of the at least one of, the header or the data elements with the one or more pre-defined policies of the one or more nodes (125); and formatting, one or more attributes of at least one of, the header or the data elements to align with the one or more pre-defined policies of the one or more nodes (125), wherein the one or more attributes pertain to at least one of, proprietary names and pre-defined names as per the one or more pre-defined policies.
13. A non-transitory computer-readable medium having stored thereon computer- readable instructions that, when executed by a processor (205), causes the processor (205) to: periodically check, if one of, a request and a response is received at the one or more nodes (125) present in a network (105); if identified, one of, the request and the response is received at the one or more nodes (125) based on the periodic checking, validate, a payload of one of, the request and the response; and upon successful validation of the pay load, format, at least one of, a header or data elements of one of the, request and the response to align with one or more pre-defined policies of the one or more nodes (125) based on determining that at least one of, the header or the data elements do not match with the one or more pre-defined policies.
14. A User Equipment (UE) (110), comprising: one or more primary processors (305) communicatively coupled to one or more processors (205), the one or more primary processors (305) coupled with a memory (310), wherein said memory (310) stores instructions which when executed by the one or more primary processors (305) causes the UE (110) to:
transmit, at least one of, a request and a response to the one or more processors (205); wherein the one or more processors (205) is configured to perform the steps as claimed in claim 1.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IN202321059737 | 2023-09-05 | ||
| IN202321059737 | 2023-09-05 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025052427A1 true WO2025052427A1 (en) | 2025-03-13 |
Family
ID=94923037
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/IN2024/051620 Pending WO2025052427A1 (en) | 2023-09-05 | 2024-09-04 | Method and system for sanitizing data to be utilized by one or more nodes |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025052427A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CA2776354A1 (en) * | 2003-06-05 | 2005-02-24 | Intertrust Technologies Corporation | Interoperable systems and methods for peer-to-peer service orchestration |
| CN115396468A (en) * | 2022-07-29 | 2022-11-25 | 中国船级社 | Data transmission method and data service bus system |
-
2024
- 2024-09-04 WO PCT/IN2024/051620 patent/WO2025052427A1/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CA2776354A1 (en) * | 2003-06-05 | 2005-02-24 | Intertrust Technologies Corporation | Interoperable systems and methods for peer-to-peer service orchestration |
| CN115396468A (en) * | 2022-07-29 | 2022-11-25 | 中国船级社 | Data transmission method and data service bus system |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN112231271B (en) | Data migration integrity verification method, device, equipment and computer readable medium | |
| Han et al. | Evaluating blockchains for IoT | |
| CN114500690B (en) | Interface data processing method and device, electronic equipment and storage medium | |
| US9372995B2 (en) | Vulnerability countermeasure device and vulnerability countermeasure method | |
| CN107454109B (en) | Network privacy stealing behavior detection method based on HTTP traffic analysis | |
| CN101371245B (en) | Distributed capture and aggregation of dynamic application usage information | |
| WO2022147339A1 (en) | Automated threat model generation | |
| CN103326896B (en) | The system and method for the information data that a kind of user of collection produces on the internet | |
| US9438493B2 (en) | Monitoring network entities via a central monitoring system | |
| CN111740868B (en) | Alarm data processing method and device and storage medium | |
| US10248508B1 (en) | Distributed data validation service | |
| CN117744087B (en) | A method for detecting remote code execution vulnerabilities in smart devices based on static analysis | |
| US20190215262A1 (en) | System and method for dynamically testing networked target systems | |
| CN105184559A (en) | System and method for payment | |
| CN110908910B (en) | Block chain-based test monitoring method and device and readable storage medium | |
| CN115225531B (en) | Database firewall testing method and device, electronic equipment and medium | |
| WO2025052427A1 (en) | Method and system for sanitizing data to be utilized by one or more nodes | |
| WO2025017624A1 (en) | System and method for template-based application programming interface (api) provisioning | |
| CN111522642B (en) | Method for acquiring and inquiring state monitoring data of wind turbine generator, and electronic equipment | |
| CN115733718A (en) | A network log analysis method, device, electronic equipment and storage medium | |
| US20230199016A1 (en) | Static vulnerability analysis techniques | |
| WO2025052487A1 (en) | Method and system for managing one or more requests in a network | |
| US20130205015A1 (en) | Method and Device for Analyzing Data Intercepted on an IP Network in order to Monitor the Activity of Users on a Website | |
| WO2025052484A1 (en) | Method and system for transforming events in a network | |
| CN117632858B (en) | File format verification method, system, device and medium based on distributed network |
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: 24862274 Country of ref document: EP Kind code of ref document: A1 |