Patent ID: 12242604

DETAILED DESCRIPTION

The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. Also, the various embodiments described herein are not necessarily mutually exclusive, as some embodiments can be combined with one or more other embodiments to form new embodiments. The term “or” as used herein, refers to a non-exclusive or, unless otherwise indicated. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein can be practiced and to further enable those skilled in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.

Embodiments may be described and illustrated in terms of blocks which carry out a described function or functions. These blocks, which may be referred to herein as units or modules or the like, are physically implemented by analog or digital circuits such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, hardwired circuits, or the like, and may optionally be driven by firmware. The circuits may, for example, be embodied in one or more semiconductor chips, or on substrate supports such as printed circuit boards and the like. The circuits constituting a block may be implemented by dedicated hardware, or by a processor (e.g., one or more programmed microprocessors and associated circuitry), or by a combination of dedicated hardware to perform some functions of the block and a processor to perform other functions of the block. Each block of the embodiments may be physically separated into two or more interacting and discrete blocks without departing from the scope of the embodiment. Likewise, the blocks of the embodiments may be physically combined into more complex blocks without departing from the scope of the embodiment.

Expressions such as “at least one of,” when preceding a list of elements, modify the entire list of elements and do not modify the individual elements of the list. For example, the expression, “at least one of a, b, and c,” should be understood as including only a, only b, only c, both a and b, both a and c, both b and c, all of a, b, and c, or any variations of the aforementioned examples.

Although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are generally only used to distinguish one element from another.

One or more embodiments provide a method and an electronic device for preventing data leakage in an electronic device. The method may include: detecting a data request from a machine learning (ML) engine of a plurality of ML engines that requests at least one framework application of a plurality of framework applications to provide data; identifying the data that is generated by the at least one framework application in response to the data request from the ML engine; creating a plurality of data blocks based on the data generated by the at least one framework application, a category of the ML engine, and a tag associated with the ML engine and the at least one framework application; determining whether the plurality of data blocks are valid to share with the ML engine using an activity block chain associated with each of the plurality of framework applications; based on the plurality of data blocks being valid, sharing the plurality of data blocks with the ML engine, as a valid set of data blocks; and based on the plurality of data blocks not being valid, discarding the plurality of data blocks, as an invalid set of data blocks, not to be shared with the ML engine.

Unlike related art methods and systems, the method according to embodiments can be used to filter out personalized data for preventing indirect data leakage to the ML engines in an enhanced and cost effective manner, and therefore enhances the user privacy. In an embodiment, the ML engine installed on the electronic device can be categorized without any interaction with the already installed engine in the electronic device. This assists the electronic device to become an efficiency enhancer platform for all the ML engines.

In an embodiment, the electronic device focuses on a direct intervention by the ML engine in a user driven task to fetch data for learning. The electronic device can be used for creating block chains in a micro level of an operating system (OS) and saving a minimal encrypted data link of that data information into a database located inside the electronic device or user's any personal secondary storage space.

In an embodiment, the electronic device can be used for creating the block chains in a micro level of the OS system to create an interface in between the ML engine and the framework units of the OS to manage the data access of user's information's access to the ML engines. Tracking the calls of the ML engine to the underlying OS helps in prevention of the electronic device resources and efficient working of the ML engines by promoting secondary usage of the data.

The electronic device can be used to share more meaningful data to any ML engine installed by a validation mechanism of multiengine block chains and with more user driven data security by a data signature unit. The electronic device supports a user intervention in the block chain mechanism and parallel creates a secure in device engine to make user decision prediction on data sharing. In an embodiment, the electronic device does not depend if the engines involved are 3rdparty engines, on device engines or external learning engines as the method can be used to create a security layer over the devices in built units and not on the engines. The creation of block chain is made categorically intelligent to enhance secondary usage of already created data.

In order to optimize data storage, the data is stored in the database and a pointer is saved in a block of the micro block chain. The micro block chain avoids data redundancy and makes our system lightweight. The method according to an embodiment can be used to provide a block chain interface on each framework unit interacting directly with a ML engine to enhance data security and to allow a user to control over his/her data. This results in improving the ML engine efficiency. The method according to an embodiment can be used to intelligently share data extracted by one ML engine to another ML engine for learning, and therefore may prevent preventing extra resource usage to extract similar data multiple times in the electronic device.

Referring now to the drawings, and more particularly toFIGS.1-9,11A-11D,13A-13E,15and17, embodiments are described hereinafter.

FIG.1shows various hardware components of an electronic device100for preventing data leakage to ML engines160a-160navailable in the electronic device100, according to an embodiment. The ML engines160a-160may be included in the electronic device100, or may be stored in an external device (e.g., a server) and operated by the electronic device100via interactions with the external device. The electronic device100can be, for example, but not limited to a cellular phone, a smart phone, a Personal Digital Assistant PDA, a tablet computer, a laptop computer, an Internet of Things IoT, a flexible deice, a foldable device, an immersive system, and a virtual reality device.

The electronic device100includes a processor110, a communication interface120, a memory130, an indirect personal data leakage prevention controller140, a plurality of framework units150, a plurality of ML engines160and an application170, including a plurality of application170a-170n. The processor110is coupled with the communication interface120, the memory130, the indirect personal data leakage prevention controller140, the plurality of framework units150, the plurality of ML engines160and the plurality of application170. The application170can be, for example, but not limited to a chat application, a web browsing application, a messaging application, a social networking application, a game application, a dating application, a personal diet application, and a fitness application. The framework unit150can be, for example, but not limited to an activity manager that manages the lifecycle of applications and provides a common navigation back stack, a window manager, a package manager, a telephony manager, a content provider that enable applications to access data from other apps, such as an Contacts app, or to share their own data, a view system, a resource manager configured to provide access to non-code resources such as localized strings, graphics, and layout files, a location manager that tracks the location of the electronic device100, a notification manager that enables applications to display custom alerts in a status bar, a surface manager, a media framework, a camera driver, and an audio driver. The framework unit150may be a set of core applications (or a set of system applications) for notification service, resource managements, location service, email, SMS messaging, calendars, internet browsing, contacts, and the like, and may access and control other applications installed on the electronic device100. The framework unit150may be also referred to as a framework application.

The indirect personal data leakage prevention controller140may be incorporated into the processor110, or may be implemented as another processor.

The indirect personal data leakage prevention controller140is configured to detect a request from an ML engine160a-160nof the plurality of ML engines160to receive data from one or more framework unit150a-150nof the plurality of framework units150. After receiving the request from the ML engine160a-160n, the indirect personal data leakage prevention controller140is configured to identify data generated by the one or more framework unit150a-150n.

Further, the indirect personal data leakage prevention controller140is configured to create a plurality of data blocks based on the data generated by the one or more framework unit150a-150n, a category of the ML engine160a-160n, and a tag associated with the ML engine160a-160nand the framework unit150a-150n. The category can be, for example, but not limited to a social networking related category, a finance networking related category, a saving networking related category, and a messaging networking related category. The category of each of the ML engines160a-160nmay be determined based on similarities between types of data requested by the ML engines160a-160n. For example, cosine similarities between vector values representing types of the data requested by the ML engines160a-160nare computed to determine category of each of the ML engines160a-160n.

Further, the indirect personal data leakage prevention controller140is configured to determine whether the plurality of data blocks are valid to share with the ML engine160a-160nusing an activity block chain associated with each framework unit150a-150n.

Further, the indirect personal data leakage prevention controller140is configured to share the valid set of data blocks to the ML engine160a-160nand discard an invalid set of data blocks to be shared with the ML engine160a-160n. In an embodiment, the indirect personal data leakage prevention controller140is configured to learn one or more response from a user for allowing the one or more data sharing with the ML engine160a-160nand create a ML model to predict the one or more response using a parameter for sharing the data among the plurality of the ML model. The parameter can be, for example, but not limited to a hash value, a process associated with the ML engine160a-160n, a signature of the user, storage information and time stamp. Further, the indirect personal data leakage prevention controller140is configured to automatically create a user signature from the created ML model and generate a signed block including a private key based on the user signature. Further, the indirect personal data leakage prevention controller140is configured to determine whether the plurality of data blocks are valid to share with the ML engine160a-160nusing the activity block chain associated with each framework unit150a-150nbased on the generated signed block.

Further, the indirect personal data leakage prevention controller140is configured to send the valid set of data blocks to the plurality of framework units160at which a category block chain around each framework unit150a-150nof the plurality of framework units150. Further, the indirect personal data leakage prevention controller140is configured to update the activity block chain associated with each framework unit150a-150nbased on the category of the ML engine160a-160n, the tag associated with the ML engine160a-160nand the framework unit150a-150nassociated with the valid set of data blocks.

Further, the indirect personal data leakage prevention controller140is configured to create the activity block chain associated with each framework unit150a-150nof the plurality of framework units150. The indirect personal data leakage prevention controller140is configured to create the activity block chain by categorizing the ML engine160a-160nfrom the plurality of ML engines160into one or more categories based on a communication pattern between each ML engine160a-160nfrom the plurality of ML engines160and the framework unit150a-150n, detecting a type of data exchange between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories, generating one or more tag for each ML engine160a-160nbelonging to the one or more categories based on the type of data exchange between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories, creating the activity block chain associated with each framework unit150a-150nbased on the one or more categories, the type of data exchange between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories, and actual data allowed between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories.

Further, the indirect personal data leakage prevention controller140is configured to detect the plurality of framework units150of the electronic device100. Further, the indirect personal data leakage prevention controller140is configured to identify a communication pattern between each ML engine160a-160nfrom the plurality of ML engines160available in the electronic device100and the framework unit150a-150nof the plurality of framework units150. Further, the indirect personal data leakage prevention controller140is configured to monitor the communication pattern between the ML engine160a-160nand the framework unit150a-150n. Further, the indirect personal data leakage prevention controller140is configured to categorize the ML engine from the plurality of ML engines160having the same communication pattern with the framework unit150a-150ninto the at least one category.

Further, the indirect personal data leakage prevention controller140is configured to create a category block chain based on the one or more categories. Further, the indirect personal data leakage prevention controller140is configured to create a micro block chain based on the type of data exchange between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories, and actual data allowed between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories. Further, the indirect personal data leakage prevention controller140is configured to create the activity block chain based on the category block chain and the micro block chain. The category block chain includes a plurality of category blocks indicating category information of each ML engine160a-160nassociated with the framework unit150a-150n. The micro block chain includes a plurality of micro blocks indicating data generated by the framework unit150a-150non request from any ML engine160a-160nbelonging to the one or more categories. The data generated by the framework unit150a-150nis stored in the micro blocks by encrypting the data and pointing it to the memory130associated with the micro block chain using a pointer. Each block of the category block chain acts as a root to the activity block chain.

The indirect personal data leakage prevention controller140is physically implemented by analog or digital circuits such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, hardwired circuits, or the like, and may optionally be driven by firmware. The indirect personal data leakage prevention controller140may, for example, be embodied in one or more semiconductor chips, or on substrate supports such as printed circuit boards and the like. The circuits constituting a block may be implemented by dedicated hardware, or by a processor (e.g., one or more programmed microprocessors and associated circuitry), or by a combination of dedicated hardware to perform some functions of the block and a processor to perform other functions of the block.

At least one of the plurality of modules/blocks/circuits may be implemented through an AI model. A function associated with AI may be performed through the non-volatile memory, the volatile memory, and the processor110.

The processor110is configured to execute instructions stored in the memory130and to perform various processes. The processor110may include one or a plurality of processors. The one or the plurality of processors may be a general-purpose processor, such as a central processing unit (CPU), an application processor (AP), or the like, a graphics-only processing unit such as a graphics processing unit (GPU), a visual processing unit (VPU), and/or an AI-dedicated processor such as a neural processing unit (NPU). The processor140may include multiple cores and is configured to execute the instructions stored in the memory120.

The one or a plurality of processors control the processing of the input data in accordance with a predefined operating rule or artificial intelligence (AI) model stored in the non-volatile memory and the volatile memory. The predefined operating rule or artificial intelligence model is provided through training or learning.

Here, being provided through learning means that, by applying a learning algorithm to a plurality of learning data, a predefined operating rule or AI model of a desired characteristic is made. The learning may be performed in a device itself in which AI according to an embodiment is performed, and/o may be implemented through a separate server/system.

The AI model may include a plurality of neural network layers. Each layer has a plurality of weight values, and performs a layer operation through calculation of a previous layer and an operation of a plurality of weights. Examples of neural networks include, but are not limited to, convolutional neural network (CNN), deep neural network (DNN), recurrent neural network (RNN), restricted Boltzmann Machine (RBM), deep belief network (DBN), bidirectional recurrent deep neural network (BRDNN), generative adversarial networks (GAN), and deep Q-networks.

The learning algorithm is a method for training a predetermined target device (for example, a robot) using a plurality of learning data to cause, allow, or control the target device to make a determination or prediction. Examples of learning algorithms include, but are not limited to, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning.

The memory130also stores instructions to be executed by the processor110. The memory130may include non-volatile storage elements. Examples of such non-volatile storage elements may include magnetic hard discs, optical discs, floppy discs, flash memories, or forms of electrically programmable memories (EPROM) or electrically erasable and programmable (EEPROM) memories. In addition, the memory130may, in some examples, be considered a non-transitory storage medium. The term “non-transitory” may indicate that the storage medium is not embodied in a carrier wave or a propagated signal. However, the term “non-transitory” should not be interpreted that the memory130is non-movable. In some examples, the memory130can be configured to store larger amounts of information. In certain examples, a non-transitory storage medium may store data that can, over time, change (e.g., in Random Access Memory (RAM) or cache).

The processor110is configured to execute instructions stored in the memory130and to perform various processes. The processor110may include one or a plurality of processors. The one or the plurality of processors may be a general-purpose processor, such as a central processing unit (CPU), an application processor (AP), or the like, a graphics-only processing unit such as a graphics processing unit (GPU), a visual processing unit (VPU), and/or an AI-dedicated processor such as a neural processing unit (NPU). The processor140may include multiple cores and is configured to execute the instructions stored in the memory120.

The communication interface120is configured for communicating internally between internal hardware components and with external devices via one or more networks. The communication interface120can be, for example, but not limited to a Bluetooth communication interface, a Wireless fidelity (Wi-Fi) module, and a Li-Fi module.

AlthoughFIG.1shows various hardware components of the electronic device,100it is to be understood that other embodiments are not limited thereto. In other embodiments, the electronic device100may include less or more number of components. Further, the labels or names of the components are used only for illustrative purpose and does not limit the scope of the embodiment. One or more components can be combined together to perform the same or substantially the same function to prevent the data leakage to the ML engines160a-160navailable in the electronic device100.

FIG.2shows various hardware components of the indirect personal data leakage prevention controller140in the electronic device100for preventing data leakage to the ML engines160a-160navailable in the electronic device100, according to an embodiment. In an embodiment, the indirect personal data leakage prevention controller140includes a ML engine controller202, an engine tagging controller204, a data block formation controller206, a micro block construction controller208, a category block chain controller210, a data block user authentication controller212, an engine feeder block chain controller214and learning mechanism216.

The ML engine controller202is physically implemented by analog or digital circuits such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, hardwired circuits, or the like, and may optionally be driven by firmware. The ML engine controller210categorizes each ML engine160a-160non the basis of interaction with the one or more framework unit150a-150n. Specifically, the ML engine controller202categorizes each engine on the basis of which all units of underlying architecture are being observed by the engines to fetch data for learning.

The engine tagging controller204tags each ML engine160a-160nwith the content type accessible. Specifically, the engine tagging controller204tags the ML engine100with what data required from the framework unit150. The engine tagging controller204is physically implemented by analog or digital circuits such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, hardwired circuits, or the like, and may optionally be driven by firmware.

The engine feeder block chain controller214along with its side chains acts as an interface for each one or more framework unit150a-150nso that any ML engine160a-160nthat observes the one or more framework unit150a-150ndoes not fetch data directly from the data without the block chain validation mechanism. The engine feeder block chain controller214is physically implemented by analog or digital circuits such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, hardwired circuits, or the like, and may optionally be driven by firmware. The engine feeder block chain controller214is coupled with the data block formation controller206, the micro block construction controller208, a category block chain controller210, and the data block user authentication controller210.

The micro block construction controller208creates a (data) block from the data being observed by the ML engine160a-160n, and keeps the block light weight by keeping only the encrypted DB pointer to the actual data kept in the memory130. The micro block construction controller208is physically implemented by analog or digital circuits such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, hardwired circuits, or the like, and may optionally be driven by firmware

The category block chain controller210controls an engine category information for a system architecture unit. The category block chain controller210acts as a root node for the side chain which contains data information for engines related to the category. The category block chain controller210is physically implemented by analog or digital circuits such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, hardwired circuits, or the like, and may optionally be driven by firmware

The micro block construction controller208controls and creates the micro block, where the micro block is created when the data is generated by the framework unit150a-150non request from any ML engine160of the category present in the root of this side chain. In the micro block, the data present in it, is encrypted to be a pointer of a database row where the actual data is saved. Thus, the size of the block in the lower system layer remains very low.

The category block chain controller210controls the category block containing the engine category information for system architecture unit. The category block acts as a root node for the side chain which contains data information for engines related to the category.

The learning mechanism216takes input from a user's response in the signatory unit and learns to auto predict user response in future by identifying key parameters of a user's decision. In the data block user authentication controller, a validation mechanism is used. The validation mechanism uses the tags created for each engine to validate if the signature data being generated is useful for other engines of similar category or not.

Further, the learning mechanism216collects all the information and the activities, requires permission from the electronic device100, and feeds into a reinforced observer model. The reinforced observer model clusters the processed data using the ML techniques. Whenever a new data access category is detected, the learning monitors user action and saves it as input for further processing.

AlthoughFIG.2shows various hardware components of the indirect personal data leakage prevention controller140, it is to be understood that other embodiments are not limited thereto. In other embodiments, the indirect personal data leakage prevention controller140may include less or more number of components. Further, the labels or names of the components are used only for illustrative purposes, and do not limit the scope of the embodiment. One or more components can be combined together to perform the same or substantially the same function to prevent the data leakage to the ML engines160a-160navailable in the electronic device100.

FIGS.3A and3Bare flow diagrams300illustrating a method for preventing data leakage to the ML engines160available in the electronic device100, according to an embodiment. The operations S302-S332are performed by the indirect personal data leakage prevention controller140.

At S302, the method includes detecting the request from the ML engine160a-160nfrom the plurality of ML engines160to receive data from the framework unit150a-150nfrom the plurality of framework units150. At S304, the method includes detecting the data generated by the framework unit150a-150nin response to receiving the request from the ML engine160a-160n. At S306, the method includes creating the plurality of data blocks based on the data generated by the framework unit150a-150n, the category of the ML engine160a-160n, and a tag associated with the ML engine160a-160nand the framework unit150a-150n.

At S308, the method includes determining whether the plurality of data blocks are valid to share with the ML engine160a-160nusing the activity block chain associated with each framework unit150a-150nof the plurality of framework units150. At S310, the method includes sharing the valid set of data blocks to the ML engine160a-160nand discarding the invalid set of data blocks to be shared with the ML engine160a-160n.

At S312, the method includes sending the valid set of data blocks to the plurality of framework units150a-150n. At S314, the method includes updating the activity block chain associated with each framework unit150a-150nof the plurality of framework units150based on the category of the ML engine160a-160n, the tag associated with the ML engine160a-160nand the framework unit150a-150nassociated with the valid set of data blocks.

At S316, the method includes detecting the plurality of framework units150of the electronic device100. At S318, the method includes detecting the communication pattern between each ML engine160a-160nfrom the plurality of ML engines160and the framework unit150a-150n. At S320, the method includes monitoring the communication pattern between the ML engine160a-160nand the framework unit150a-150n.

At S322, the method includes categorizing the ML engine160a-160nfrom the plurality of ML engines160having the same communication pattern with the framework unit150a-150ninto the one or more categories. At S324, the method includes detecting the type of data exchange between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories. At S326, the method includes generating the one or more tag for each ML engine160a-160nbelonging to the one or more categories based on the type of data exchange between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories.

At S328, the method includes creating the category block chain based on the one or more categories. At S330, the method includes creating the micro block chain based on the type of data exchange between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories, and actual data allowed between the ML engine160a-160nand the framework unit150a-150nassociated with the one or more categories. At S332, the method includes creating the activity block chain based on the category block chain and the micro block chain.

The various actions, acts, blocks, steps, operations, or the like in the flow diagram300may be performed in the order presented, in a different order or simultaneously. Further, in some embodiments, some of the actions, acts, blocks, steps, operations, or the like may be omitted, added, modified, skipped, or the like without departing from the scope of the embodiment.

FIG.4is a general overview of overall unit input and output operations performed by the electronic device100for preventing data leakage to the ML engines160available in the electronic device100, according to an embodiment. Referring toFIG.4, at operation1, the user of the electronic device100initiates activities on the electronic device100. At operation2, based on the activities, the frame work unit150sends a features request to the ML engine160. At operation3, based on the features request, the ML engine100sends the data request to the ML engine controller202. At operation4, the frame work unit150sends the generated data to the data block controller204. At operation5, the data block user authentication controller212authenticates the data block using the user signature. At operation6, the data block user authentication controller212sends the authenticated data block to the engine feeder block chain controller214. The data block user authentication controller212authenticates whether the block is valid as per user usage. At operation7, the user validated block data is stored using the engine feeder block chain controller214. The block data is added to the block chain and the block data is shared with all corresponding engines160. Further, the engine feeder block chain controller214determines the data applicable for secondary usage by any other installed ML engine in the electronic device100.

FIG.5is a pictorial depiction of an engine feeder block chain controller214in a system architecture of the electronic device100, according to an embodiment. Referring toFIG.5, the engine feeder block chain controller214is a signature micro block chain which acts as a root (category block) to the side chain for data belonging to the engine of similar category. Thus it acts as an interface for every observer that interacts with various units of framework/Android Architecture for fetching data for various types of ML engines160. In an example, the block chain with side chains applied on the notification manager

FIG.6illustrate internal elements of the engine feeder block chain controller214of the electronic device100, according to an embodiment. The engine feeder block chain controller214includes the category block, the micro block, the micro block chain and the category block chain. The category block contains the engine category information for a system architecture unit. The category block acts as a root node for the side chain which contains data information for engines related to this category. The micro block is created when the data is generated by the unit on request from any ML engine160of the category present in the root of this side chain. It is Called Micro Block as the Data present in it, is encrypted to be a pointer of the database row where the actual data is saved. Thus, the size of the block in a lower system layer remains very low. The micro block chain contains the micro blocks of data approved by the user or an automated engine, and validated by other nodes/engine tags from the same category as its root node. The category block chain contains blocks having category of engine as data. A chain surrounding system unit being observed by the ML engines160.

FIG.7illustrates a block construction controller operation according to an embodiment. The block construction is already explained in conjunction withFIG.1,FIG.2, andFIGS.3A and3B. Further, the data from the framework unit150is encrypted in the format as required by the block to be added into the block chain. In the micro block construction controller208, the data set is encrypted using the hash, the engine process, user signature, the DB pointer and the time stamp. The hash is an encrypted pointer of a previous and next block memory of the block chain. The engine process is a process name of the ML engine160which has requested the data from the Framework unit150. The user signature is filled which gets updated once the data is sent to the signature addition controller for user authentication. The DB pointer in which the data to prevent the large storage usage in the micro level is maintained in the secured database and the pointer to the DB field is saved in the block. The time stamp is time for the demand of data. Further, the micro block chain validation mechanism702is explained inFIG.8.

FIG.8illustrates the micro block chain validation mechanism702of the electronic device100, according to an embodiment. The micro block chain validation mechanism702checks with the tags of all other engines of similar category whether the data is useful for them of not. If there is a useful consensus, the micro block chain validation mechanism702adds the data to the block chain and shares data with each engine. If not the useful consensus, the micro block chain validation mechanism702discards the data block.

FIG.9shows general overview of various hardware components of the electronic device100for preventing data leakage to ML engines160, according to an embodiment.

At operation1, the ML engine160requests for data to the framework unit150. At operation2, the framework unit150requests for the data to the underlying android architecture unit. At operation3, the underlying android architecture unit902produces the data block. At operation4, the underlying android architecture unit902sends the data block to the micro block construction controller208. At operation5, the micro block construction controller208sends the user response to the ML learning model. The ML learning model sends the data block to the block signatory system904. At operation6, the block signatory system904sends the signed data block to the engine feeder block chain. At operation7, the engine feeder block chain214validates the signed data block using a micro block chain validation mechanism.

FIG.10is an example illustration in which an ML engine fetched a personal expense and accordingly shows an offer to a user of an electronic device in the related art. As shown inFIG.10, the cred application engine reads all the transactions of the user of the electronic device100and based on user transactions behavior will provide the offers related to user's expense. Hence, the user compromised with the security of their personal data as an ML engine uses the user's data without the knowledge of user.

FIGS.11A-11Dare example illustrations in which the ML engine fetched a personal expense and accordingly shows an offer to the user of the electronic device100, according to an embodiment.

As shown inFIG.11A, the cred Engine®, Money Engine® and Splitwise Engine® observe most similar system units. Thus, the cred Engine®, Andro Money Engine® and Splitwise Engine® are categorized to be in same category by the electronic device100. As shown inFIG.11A, each Engine is tagged with “What data is required from a Particular unit”. Hence, the cred Engine®, Splitwise Engine® and Andro Money Engine® are tagged with each unit accordingly.

As shown inFIG.11C, at operation1, the cred engine Requests data from the activity manager, the notification manager, the telephony manager, and the layout manager. At operation2, the activity manager, the notification manager, the telephony manager, and the layout manager generate the data as requested by the cred engine and send the data to the data block controller232. At operation3, the single data block is created using data from the activity manager, the notification manager, the telephony manager, and the layout manager. At operation4, each data block is sent to the data block user authentication controller238for user approval on data sharing. At operation5, three blocks are approved by the user and one block is rejected by the user of the electronic device100. The approved blocks are shared to the cred engine. At operation6, three signature blocks are sent to the data block user authentication controller238. At operation7, other engines in a similar category verifies this data using their tag if the data is useful for them or not. At operation8, based on the verification, two data blocks are validated and one data block is rejected. At operation9, the blocks are added to their respective side chains of their category engine and their unit engine feeder chain.

As shown inFIG.11D, the ML engine fetched non-personal expenses and shows an offer to the user based on the fetched non-personal expenses. The method according to an embodiment can be used to prevent unwanted access of user's data to the ML engine160and helps users in an unwanted situation.

FIG.12is an example illustration in which a first electronic device12atransfers data to a second electronic device12bin the related art. As shown inFIG.12, the first electronic device12atransfers the data to the second electronic device12band in the second electronic device12b, the user of the second electronic device12bopens a maximum power saving mode (MPSM) and will show remaining battery life of the second electronic device12b. The remaining battery life will be shown to the user after using the second electronic device12bfor a few days.

FIGS.13A-13Eare example illustrations in which the first electronic device100atransfers the data to the second electronic device100b, according to an embodiment.

As shown inFIG.13A, MPSM Engine®, Carat Engine® and Doze Mode® observe most similar system units. Hence, they are categorized to be in the same category. As shown inFIG.13B, each engine is tagged with “What data is Required from a Particular unit”. Thus MPSM Engine®, Carat Engine® and DOZE Mode® are tagged with each unit accordingly.

As shown inFIG.13C, at operation1, the MPSM engine requests data from the activity manager, the package manager, and the battery manager from the last 30 hours. At operation2, the activity manager, the package manager, and the battery manager generates the data as requested by the MPSM engine and sends the data to block construction controller. At operation3, the single data block is created using data from each activity manager, the package manager, and the battery manager.

At operation4, each data block is sent to the signature addition controller for user approval on data sharing. At operation5, all three blocks are approved by the user engine. The approved data blocks are shared to the requesting engine. At operation6, three signature blocks are sent to the block chain validation controller. At operation7, another engine in a similar category verifies this data using their tag if the data is useful for them or not. At operation8, all three data blocks are validated. At operation9, the blocks are added to their respective side chains of their category engine and their unit engine feeder chain.

At operation a, as the MPSM engine requests data for the first time in the new phone, all the ledger of category blocks are synced. At operation b, previous data blocks are sent to the user engine. At operation c, the user engine sends the data block to the MPSM engine.

As shown inFIG.13E, the first electronic device100atransfers the data to the second electronic device100b. In an embodiment, ML engine learning will also be transferred during copying data to the second electronic device100b, so that user past learning can be used and provide a predication result. Hence, the ML engine can able to produce the battery estimation as data is available even if the ML engine is installed

FIG.14illustrate a plurality of images that are segregated as private or not, in the related art. In the current scenario, all the images present in an electronic device in the related art are sent to an Alt-Z® engine to be segregated as private or not. The engine does not receive a user's personalized data and analyzes a large number of meaningless images which should not have been considered even for categorization purposes.

FIG.15is an example illustration in which the plurality of images in the electronic device100is segregated as private or not, according to an embodiment. In an embodiment, the images shared with the Alt-Z® engine are shared intelligently by giving them a user personalized segregation before sharing it to the Alt-Z® engine. It makes the engine more dynamic, personalized and efficient.

In an embodiment, when the Alt-Z® engine requests data from the media framework unit, only meaningful data which has the chance to be categorized as private by this particular user is analyzed by ALT-Z® engine. Specifically, each image requested by the ALT-Z® engine is provided to the user signature controller which decides whether the user wants to share this image with the on-device Alt-z engine or not. Thus user/an Automatic on device decision making engine can help only to pass meaningful data to the ALT-Z® engine and helps to improve of ALT-Z® engine's efficiency in terms of results and resource usage as well.

FIG.16is an example illustration in which user's browsing data is available for model training even the data is private for user, in the related art. While browsing on the Internet, a user of an electronic device in the related art searches for a divorce attorney on a browsing application. The ML machine associated with the chat application requests the browsing application to provide the searched data, and based on the request, the browsing application sends the requested data to the chat application, so when the user of the electronic device types letter “D” and the chat application predicts “divorce” and shows it on the chat application. Based on the existing method, the user's private data is shown in the normal scenario and the user does not want this.

FIG.17is an example illustration in which user's browsing data is not available for model training when the data is private for the user, according to an embodiment. Based on the method in the embodiment, the user data is not used for prediction without authentication. While browsing on the Internet, the user of the electronic device100searches the divorce attorney on the browsing application. The ML machine associated with the chat application request the browsing application to provide the searched data and based on the request, the browsing application sends the requested data into the block construction controller and the data block is sent for the user consent in the signature addition unit. Based on the user consent, the data block becomes private data that is not available for any engine unit. Based on the method in the embodiment, the user's private data is not shown in the normal scenario. This results in user privacy enhancement.

According to the embodiments of the present disclosure, security, privacy, and resource consumptions for AI & ML are enhanced with efficient, secure and traceable features of the block chain technology. The embodiments provide the security during access to confidential and private data by ML engine and provides user additional control for the private data.

The embodiments disclosed herein can be implemented using at least one network management function running on at least one hardware device.

The foregoing exemplary embodiments and advantages are merely exemplary and are not to be construed as limiting. The present teaching can be readily applied to other types of apparatuses. Also, the description of the exemplary embodiments is intended to be illustrative, and not to limit the scope of the claims, and many alternatives, modifications, and variations will be apparent to those skilled in the art.