WO2022154540A1 - Dispositif électronique pour exécuter un progiciel d'application et son procédé de fonctionnement - Google Patents

Dispositif électronique pour exécuter un progiciel d'application et son procédé de fonctionnement Download PDF

Info

Publication number
WO2022154540A1
WO2022154540A1 PCT/KR2022/000680 KR2022000680W WO2022154540A1 WO 2022154540 A1 WO2022154540 A1 WO 2022154540A1 KR 2022000680 W KR2022000680 W KR 2022000680W WO 2022154540 A1 WO2022154540 A1 WO 2022154540A1
Authority
WO
WIPO (PCT)
Prior art keywords
application package
electronic device
processor
signature value
mode
Prior art date
Application number
PCT/KR2022/000680
Other languages
English (en)
Korean (ko)
Inventor
이영균
김원택
박세종
신인실
이영대
이지연
임현균
장준혁
최창민
Original Assignee
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자 주식회사 filed Critical 삼성전자 주식회사
Publication of WO2022154540A1 publication Critical patent/WO2022154540A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Definitions

  • Various embodiments according to the present disclosure relate to a method of verifying an application package executed in an electronic device and preventing forgery and/or tampering of the application package.
  • the electronic device may install an application using a launcher program and provide an environment in which a user can execute or manage a desired application.
  • an application package means an application software package, and the application package may include all data related to an application.
  • the application package may include an image, video, and/or text file of the application.
  • the application package may be a file in an apk format.
  • the electronic device may execute an application by using an application package or may install the application in the electronic device.
  • the application package may indicate an application installation file.
  • the electronic device may install an application package meeting a specified purpose according to a requirement of a company that provides a service by using the electronic device. For example, in the case of a children's smartphone, a separate electronic device for a child user may be indicated.
  • a children's smartphone also called a kids phone, may install an application package that can be used by children and an application package including an image, video, and/or text file customized for children.
  • a service according to a specified purpose may be provided based on an application package provided by the company.
  • An electronic device provided according to a designated use may provide a service designated by a company within a limited range. Accordingly, an application package customized to provide a specified service must be installed through an application package module certified by the company.
  • the purpose of the electronic device is to provide a specified service within a limited range, it is necessary to prevent an application package mounted on the electronic device from being forged or tampered with without permission.
  • application packages distributed according to the purpose of the company must be prevented from being changed arbitrarily. Nevertheless, when the package name of the application package installed in the electronic device is the same, the update may be possible without a separate authentication procedure, and thus the application package may be forged and/or altered without permission.
  • the electronic device includes a communication circuit, a display, a memory for storing an application package received through the communication circuit in response to the first booting of the electronic device, and at least one processor electrically connected to the communication circuit and the memory. wherein the at least one processor determines whether the application package is installed in the electronic device in response to the electronic device executing the first mode for the first time, verifies the application package based on the determination result, and verifies the application package based on the verification result
  • the first signature value corresponding to the application package may be stored in the memory.
  • the application package in response to the electronic device executing the first mode for the first time, is stored in the electronic device.
  • the method may include an operation of determining whether the application package is installed in the server, an operation of verifying the application package stored in the memory based on the determination result, and an operation of storing a first signature value corresponding to the application package in the memory based on the verification result.
  • the electronic device includes a communication circuit, a memory for storing a first application package and a second application package, a communication circuit, and at least one processor electrically connected to the memory, wherein the at least one processor is the electronic device
  • a second application package corresponding to the second mode is installed in the electronic device, and based on the determination result, a second application package corresponding to the second mode is determined based on the determination result.
  • the second application package may be verified, and a second signature value corresponding to the second application package may be stored in the memory based on the result of the second application package verification.
  • the electronic device may install a verified application package.
  • the electronic device may verify whether it is an application package mounted based on a certified installer or an application package developed based on an authorized software development kit.
  • the electronic device may allow installation by limiting the permitted application package update. Accordingly, the electronic device may prevent forgery and/or tampering of the application package.
  • FIG. 1 is a diagram illustrating a system in which an external device transmits an application package to a plurality of electronic devices through a network, according to an exemplary embodiment.
  • FIG. 2 is a block diagram illustrating a configuration of an electronic device according to an exemplary embodiment.
  • FIG. 3 is a flowchart of a process of storing, by an electronic device, a signature value corresponding to an application package, according to an exemplary embodiment.
  • FIG. 4 is a flowchart of a process in which an electronic device verifies an application package, according to an exemplary embodiment.
  • FIG. 5 is a flowchart of a process for updating an application package by an electronic device according to an exemplary embodiment.
  • FIG. 6 is a flowchart of a process in which an electronic device selects one execution mode from among a plurality of execution modes and stores a signature value corresponding to an application package based on the execution mode, according to an embodiment.
  • FIG. 7 is a diagram for explaining a UI based on an application package according to an embodiment.
  • FIG. 8 is a diagram for explaining a UI based on an update of an application package according to an embodiment.
  • FIG. 9 is a block diagram of an electronic device in a network environment according to various embodiments of the present disclosure.
  • FIG. 1 is a diagram illustrating a system in which an external device transmits an application package to a plurality of electronic devices through a network, according to an exemplary embodiment.
  • the external device 100 may communicate with a plurality of electronic devices 110 , 120 , and 130 through a network 140 .
  • the first electronic device 110 , the second electronic device 120 , and/or the third electronic device 130 may be a wearable device such as a tablet, a smart watch, or smart glasses in addition to a smart phone.
  • the external device 100 may control a service provided through the plurality of electronic devices 110 , 120 , and 130 .
  • the external device 100 may include a processor 101 , a memory 102 , and/or a communication circuit 105 .
  • the memory 102 may include an SDK module 103 and/or an application package distribution module 104 .
  • the SDK module 103 may be a module for providing a software development kit (SDK) capable of developing an application package operable in the plurality of electronic devices 110 , 120 , and 130 . have.
  • the application package distribution module 104 may be a module for providing an application package to the plurality of electronic devices 110 , 120 , 130 through the network 140 using the communication circuit 105 .
  • the SDK module 103 and the application package distribution module 104 stored in the memory 102 may store instructions. Accordingly, the processor 101 may execute instructions corresponding to the SDK module 103 and the application package distribution module 104 stored in the memory 102 .
  • the processor 101 may develop an application package by executing instructions included in the SDK module 103 .
  • the processor 101 may execute instructions included in the SDK module 103 to develop an application package using an authenticated dedicated software development kit (SDK).
  • SDK authenticated dedicated software development kit
  • a certified dedicated software development kit may include source and tool packages for application development.
  • the external device 100 may develop an application package to be mounted on the plurality of electronic devices 110 , 120 , and 130 .
  • the external device 100 is an application package for providing a designated service (eg, a kids-only service, a company-only service) to the plurality of electronic devices 110 , 120 , 130 through the SDK module 103 . can be developed
  • the external device 100 may control the plurality of electronic devices 110 , 120 , and 130 through the network 140 .
  • the external device 100 may configure the plurality of electronic devices 110 , 120 , and 130 using a customer-customized setting service (eg, KnoxTM configure) that may be provided through the network 140 .
  • the external device 100 may transmit/receive data to and from the network 140 using the communication circuit 105 .
  • the service may be one of various services provided to control the plurality of electronic devices 110 , 120 , and 130 according to a purpose.
  • At least one of the configuration of applications stored in the plurality of electronic devices 110 , 120 , and 130 , the background screen, the home screen, and the setting values of the electronic device is controlled. service can be provided.
  • the processor 101 may execute instructions included in the application package distribution module 104 to configure the plurality of electronic devices 110 , 120 , and 130 through the network 140 .
  • the processor 101 executes the instructions included in the SDK module 103 to mount the application package generated by the plurality of electronic devices 110 , 120 , 130 to the application package distribution module ( 104) can be executed.
  • the application package generated through the external device 100 may be loaded on the plurality of electronic devices 110 , 120 , and 130 through the network 140 .
  • the plurality of electronic devices 110 , 120 , and 130 on which the application package is mounted may be driven in a mode based on the loaded application package.
  • the external device 100 may perform the above-described operation with respect to only one of the plurality of electronic devices 110 , 120 , and 130 .
  • each of the plurality of electronic devices 110 , 120 , and 130 may be an electronic device 200 , which will be described later with reference to FIG. 2 .
  • FIG. 2 is a block diagram illustrating a configuration of an electronic device according to an exemplary embodiment.
  • the electronic device 200 may include a processor 210 , a communication circuit 220 , a memory 230 , and a display 240 , or a combination thereof.
  • the electronic device 200 may include additional components in addition to the components illustrated in FIG. 2 , or may omit at least one of the components illustrated in FIG. 2 .
  • the processor 210 may be electrically or operatively connected to the communication circuit 220 , the memory 230 , and the display 240 . According to an embodiment, the processor 210 may execute an operation or data processing related to control and/or communication of at least one other component of the electronic device 200 using instructions stored in the memory 230 .
  • the processor 210 includes a central processing unit (CPU), a graphic processing unit (GPU), a micro controller unit (MCU), a sensor hub, a supplementary processor, a communication processor, and an application. It may include at least one of a processor (application processor), application specific integrated circuit (ASIC), and field programmable gate arrays (FPGA), and may have a plurality of cores.
  • the communication circuit 220 may be configured to transmit and receive data in connection with an external server.
  • the communication circuit 220 may transmit/receive an application package to and from an external server.
  • the communication circuit 220 may receive data regarding the update of the application package from an external server.
  • the memory 230 provides instructions for allowing the processor 210 to process data or control components of the electronic device 200 to perform an operation of the electronic device 200 when executed. ) can be stored.
  • the memory 230 may include a secure area or a separate secure storage medium (eg, a secure memory area (eg, trust zone) accessible only through a secure OS).
  • the memory 230 may include memory areas respectively corresponding to applications executed in the electronic device 200 .
  • the memory areas respectively corresponding to the applications may store data based on each application.
  • the memory 230 may include memory areas respectively corresponding to various modes that can be executed in the electronic device 200 .
  • the memory 230 may store various application packages respectively corresponding to various modes that can be executed in the electronic device 200 in each of the memory areas.
  • the application packages may include data (eg, an application, an image, a video, and a text file) for providing a service corresponding to each mode.
  • the application package may be installed in the electronic device 200 to provide a service within a specified range when the electronic device 200 is manufactured. For example, when the electronic device 200 is a device set as a kids terminal, the application package may include an application package for providing a kids application or a kids service within a specified range.
  • the display 240 may display various contents (eg, text, image, video, icon, and/or symbol, etc.).
  • the display 240 may include a liquid crystal display (LCD), a light emitting diode (LED) display, or an organic light emitting diode (OLED) display.
  • LCD liquid crystal display
  • LED light emitting diode
  • OLED organic light emitting diode
  • the processor 210 in response to the electronic device 200 being booted for the first time, receives data related to a mode to be executed in the electronic device 200 and an application package corresponding to the mode through the communication circuit 220 . can do.
  • the processor 210 may store, in the memory 230 , installation data related to a mode to be executed in the electronic device 200 and application package installation data corresponding to the mode. have.
  • the processor 210 may use the installation data stored in the memory 230 to install a mode to be executed in the electronic device 200 and an application corresponding to the mode in the electronic device 200 .
  • the electronic device 200 may be executed in various modes through the processor 210 .
  • the various modes may indicate a mode executed by a launcher program.
  • the electronic device 200 executes various modes, that is, a launcher program to configure an application. You can control the home screen and application execution screen.
  • the processor 210 may recognize a mode (eg, a first mode) that is first executed in the electronic device 200 . For example, it may be assumed that the first mode is first executed in the electronic device 200 .
  • the processor 210 may verify the application package based on the first mode being executed for the first time. The operation of verifying the application package according to an embodiment will be described in detail later with reference to FIG. 4 .
  • the processor 210 may store a signature value corresponding to the application package in the memory 230 based on the verification result of the application package.
  • the processor 210 may cancel execution of the corresponding mode without storing a signature value corresponding to the application package.
  • the processor 210 may cancel the execution of the first mode.
  • the processor 210 may store a signature value corresponding to the application package in the memory 230 area corresponding to the first mode.
  • the electronic device 200 may be driven in the first mode based on the verified application package.
  • the processor 210 may receive a signature value corresponding to the application package through the communication circuit 220 .
  • a signature value may be included in an application package received when the electronic device 200 is first booted.
  • the processor 210 may receive a signature value corresponding to the application package from the AndroidTM platform through the communication circuit 220 .
  • the processor 210 receives package information (packageinfo) for an application package through the communication circuit 220 using a service provided by the AndroidTM platform, and stores a signature value included in the received package information into memory. It can be stored in (230).
  • the processor 210 may obtain a signature value through the package manager API of the AndroidTM platform.
  • the processor 210 may store the signature value in the memory area of the execution mode corresponding to the application package corresponding to the signature value included in the memory 230 .
  • the signature value may be expressed in one of various forms.
  • the signature value may be expressed in the form of a security key (eg, c8a2e9bccf579).
  • the signature value is expressed in the form of security key stream data, but the form of the signature value according to various embodiments is not limited thereto.
  • the signature value may include information assigned to each operator that has developed an application package.
  • the electronic device 200 may be executed in one of a plurality of execution modes. According to an embodiment, even if one mode is being executed in the electronic device 200 , the processor 210 determines whether an application package provided in the other mode is installed in the electronic device 200 when the other mode is first executed. can judge Also, an application package provided in another mode may be verified, and a signature value corresponding to the application package may be stored in the memory. For example, when the second mode is first executed in the electronic device 200 driven in the first mode, the processor 210 may determine whether a second application package provided in the second mode is installed. According to an embodiment, the second application package may be an application package received through the communication circuit 220 in response to the first booting of the electronic device.
  • the processor 210 may store the second signature value corresponding to the second application package in the memory 230 .
  • the memory 230 may include a memory area corresponding to the second mode for data based on the second application package provided in the second mode.
  • the second signature value may be stored in the memory area. That is, according to an embodiment, the second signature value may be stored in the memory 230 in association with the second mode.
  • the electronic device (eg, the electronic device 200 of FIG. 2 ) according to an embodiment includes a communication circuit (eg, the communication circuit 220 of FIG. 2 ) and a display (eg, the display 240 of FIG. 2 ). )), a memory (eg, the memory 230 of FIG. 2 ) for storing an application package received through the communication circuit in response to the first booting of the electronic device, and at least one electrically connected to the communication circuit and the memory of a processor (eg, the processor 210 of FIG.
  • the at least one processor determines whether the application package is installed in the electronic device in response to the electronic device executing the first mode for the first time and verifying the application package based on the determination result, and storing a first signature value corresponding to the application package in the memory based on the verification result.
  • the at least one processor determines whether there is an update for the application package, and in response to the identification of the update, the first signature value and a second signature value corresponding to the updated application package may be compared, and as a result of the comparison, in response to a correspondence between the first signature value and the second signature value, an update operation for the application package may be performed.
  • the at least one processor may control the display to output a notification about the update of the application package.
  • the at least one processor may not perform the update operation in response to a discrepancy between the first signature value and the second signature value as a result of the comparison.
  • the at least one processor is based on at least one of whether the application package is installed based on a designated installer or whether the application package is developed by a certified software development kit (SDK). Based on the above, the application package may be verified.
  • SDK certified software development kit
  • the at least one processor may determine whether it has been developed by the certified software development kit based on metadata included in the application package.
  • the at least one processor is configured to: Based on at least one of configuration information, an image, an image, text, and setting information of the electronic device included in the application package, the second processor corresponding to the application package
  • the display may be controlled to output an execution screen of mode 1.
  • the application package may be installed in the electronic device to provide a service within a specified range.
  • the first mode may include an operation mode that provides a home screen for executing an application corresponding to the installed application package based on a launcher program corresponding to the first mode.
  • the at least one processor may store a second signature value corresponding to another application package in the memory in association with the second mode.
  • the at least one processor may recognize the update of the application package based on package version information included in the updated application package.
  • the application package in response to the electronic device executing the first mode for the first time, is Determining whether it is installed in the electronic device, verifying the application package stored in the memory based on the determination result, and storing a first signature value corresponding to the application package in the memory based on the verification result It can include actions.
  • the operation of comparing the second signature value may further include an operation of updating the application package in response to a correspondence between the first signature value and the second signature value as a result of the comparison.
  • the method of operating the electronic device may further include outputting a notification for updating the application package.
  • the operation of determining whether the application package is certified may be based on at least one of an operation of determining whether an application package is installed based on a designated installer or an operation of determining whether the application package is developed by a certified software development kit. have.
  • the first mode may include an operation mode that provides a home screen for executing an application corresponding to the installed application package based on a launcher program corresponding to the first mode.
  • the method of operating the electronic device as the operation of installing the application package to the electronic device is performed, configuration information of an application included in the application package, an image, an image, a text, and the configuration information of the electronic device
  • the method may further include outputting an execution screen of the first mode corresponding to the application package based on at least one of the setting information.
  • the electronic device includes a communication circuit, a memory for storing a first application package and a second application package, and at least one processor electrically connected to the communication circuit and the memory, and the at least one processor in response to the electronic device executing the second mode for the first time while executing the first mode, determines whether the second application package corresponding to the second mode is installed in the electronic device, and based on the verification of the second application package corresponding to the second mode, and based on the verification result of the second application package, a second signature value corresponding to the second application package may be stored in the memory.
  • the memory may store signature values based on application packages respectively corresponding to a plurality of execution modes executed in the electronic device in association with each of the plurality of execution modes.
  • the at least one processor determines whether there is an update for the second application package, and in response to the identification of the update, the second signature value and the updated application package The third signature value may be compared, and an update operation of the second application package may be performed based on the comparison result.
  • FIG. 3 is a flowchart of a process of storing, by an electronic device, a signature value corresponding to an application package, according to an exemplary embodiment.
  • the processor 210 may recognize that the first mode is first executed in the electronic device 200 .
  • the processor 210 may determine that the first mode is first executed among modes that can be executed in the electronic device 200 .
  • the mode may be a mode executed based on a launcher program.
  • the processor 210 may determine whether an application package provided in the first mode is installed in the electronic device 200 .
  • the processor 210 may determine whether the application package is installed in the electronic device 200 through data (eg, metadata) indicating whether the application package provided in the first mode exists.
  • the application package provided in the first mode is remotely controlled from an external server through the communication circuit 220 in response to the electronic device 200 being booted for the first time, and the application package installation data is stored in the memory ( It is stored in the 230 and may be installed in the electronic device 200 using the installation data stored in the memory 230 .
  • the processor 210 may verify the application package. That is, as the first mode is first executed, the processor 210 may verify whether the application package provided in the first mode is an authenticated application package.
  • the processor 210 may execute various instructions stored in the memory 230 to verify the application package provided in the first mode. An operation in which the processor 210 verifies the application package will be described in detail later with reference to FIG. 4 .
  • the processor 210 may store a signature value corresponding to the application package in the memory 230 .
  • the processor 210 may store the first signature value corresponding to the application package according to the first mode in the memory 230 .
  • the processor 210 may store the first signature value corresponding to the application package in the memory 230 in association with the first mode.
  • the processor 210 may store the first signature value in a memory area corresponding to the first mode.
  • the processor 210 may obtain a signature value corresponding to the application package through the communication circuit 220 .
  • the processor 210 receives package information on an application package using a service provided by the Android platform, and obtains a first signature value corresponding to the application package included in the received package information. can do.
  • the electronic device 200 may execute an installed application package based on the first mode.
  • the electronic device 200 may display a home screen provided in the first mode to include an icon for executing an installed application.
  • FIG. 4 is a flowchart 400 of a process in which an electronic device verifies an application package according to an embodiment.
  • the processor 210 may determine whether an application package mounted on the electronic device 200 is an application package installed based on a designated installer in order to verify the application package. For example, the processor 210 may determine whether the application package is based on a designated installer based on the first execution of the first mode in the electronic device 200 . The processor 210 may verify the application package corresponding to the first mode based on whether the application package is installed based on a specified installer. According to an embodiment, the designated installer may be determined as one of various installers by the external device 100 described with reference to FIG. 1 . In an embodiment, the processor 210 may determine whether the development device that has developed the application package has the application package mounted on the electronic device 200 using a designated installer. For example, a designated installer may represent a designated service (eg KnoxTM configure) provided through an external server.
  • a designated installer may represent a designated service (eg KnoxTM configure) provided through an external server.
  • the processor 210 may verify the application package by determining that it is an application package installed by a designated installer.
  • the processor 210 may determine whether the application package has been developed by a certified software development kit in order to verify the application package. For example, the processor 210 may determine whether the application package has been developed by the certified software development kit based on the first execution of the first mode in the electronic device 200 . According to an embodiment, the processor 210 may verify the application package corresponding to the first mode based on whether the application package has been developed by a certified software development kit. According to an embodiment, the certified software development kit may represent an authorized software development kit. For example, as metadata of the application package, information on a software development kit used to develop an application may be included in the application package.
  • the processor 210 may determine whether the application package has been developed using the authorized software development kit based on information on the software development kit included in the metadata of the application package. According to an embodiment, when the external device 100 develops the application package, the processor 210 may determine whether the authorized software development kit is used, and verify the application package based on the determination result.
  • the processor 210 may check a manifest file corresponding to the application package in order to determine whether the application package has been developed by using the authorized software development kit.
  • the manifest file can declare the components required for the execution of the application package, designate a specific library required, and identify the permission for adjusting the permission of the application.
  • the manifest file is a structured XML (eXtensible Markup Language) file, and may exist as 'AndroidManifest.xml' in the application.
  • the processor 210 may check the metadata declaration included in the manifest file. For example, by checking the development kit and version information of the application package included in the meta data declaration, the processor 210 may determine whether the application package has been developed using the authorized software development kit. According to an embodiment, the processor 210 may determine the application package developed by the certified software development kit as the verified application package.
  • the processor 210 performs operation 401 and performs operation 403 , but the electronic device 200 according to the present disclosure is not limited thereto.
  • the processor 210 may simultaneously perform operations 401 and 403 to verify the application package, and in another embodiment, the processor 210 may perform operation 403 and then perform operation 401 . Also, the processor 210 may verify the application package based on at least one of operations 401 and 403 .
  • FIG. 5 is a flowchart 500 of a process for updating an application package by an electronic device according to an embodiment.
  • the processor 210 may determine whether an application package update exists in operation 501 .
  • the application package provided in the mode executed by the electronic device 200 may be updated.
  • the external device 100 may update the application package by executing a command included in the SDK module 103 to update the application package.
  • the external device 100 may execute a command included in the application package distribution module 104 to distribute the updated application package to the electronic device 200 through the network 140 .
  • the external device 100 may update an application package and execute a command included in the application package distribution module 104 .
  • the external device 100 may be distributed through an application search app (eg, Google's play store).
  • the electronic device 200 may obtain information on the application package by using a module of the Android platform.
  • the electronic device 200 may obtain information on an application package installed in the electronic device 200 from an external server using a package manager module.
  • the information of the application package may include version information of the application package.
  • the electronic device 200 may determine whether the application package installed in the electronic device 200 has been updated by using the version information of the application package. According to an embodiment, the processor 210 may determine whether to update based on package information (packageinfo) included in the application package. According to various embodiments, the electronic device 200 may check whether the application package is updated through various methods other than the method included in the present disclosure.
  • packageinfo package information
  • the processor 210 may compare the first signature value corresponding to the application package with the second signature value corresponding to the updated application package in operation 503 .
  • the processor 210 may receive the second signature value of the updated application package through the communication circuit 220 .
  • the processor 210 may receive a signature value corresponding to the application package from the Android platform through the communication circuit 220 .
  • the processor 210 receives package information on an application package using a service provided by the Android platform through the communication circuit 220 , and stores a second signature value included in the received package information into the memory 230 . ) can be stored in
  • the processor 210 may obtain a signature value through the package manager API of the Android platform.
  • the processor 210 may compare the obtained second signature value with the first signature value stored in the memory 230 .
  • the processor 210 may determine whether the first signature value and the second signature value correspond to each other based on a result of comparing the first signature value with the second signature value. For example, it may be determined whether the first signature value and the second signature value are the same. According to various embodiments, the first signature value and the second signature value may correspond in various forms. According to an embodiment, when the updated application package is a permitted update, the first signature value and the second signature value stored in the memory 230 may correspond. Accordingly, if the first signature value and the second signature value do not correspond, the processor 210 may determine that the application package update is not permitted, and may not support the application package update. For example, when the first signature value and the second signature value do not match, the processor 210 may not perform an update operation on the application package. Accordingly, the electronic device 200 may be driven in the same manner based on the application package included in the first mode being executed.
  • whether or not an update for an application package is an authorized update may be determined through various causes. For example, in the case of an update by another device that is not based on the external device 100 that developed the application package, or an update outside the range set by the first external device 100, it may be determined as an unauthorized update. .
  • the processor 210 may perform an update operation on the application package based on the correspondence between the first signature value and the second signature value.
  • an update operation for the permitted application package may be performed.
  • the electronic device 200 may be driven based on the application package updated through the external device 100 .
  • the electronic device 200 may prevent forgery and/or falsification of the application package by checking the signature value and performing the update.
  • FIG. 6 is a flowchart 600 of a process in which an electronic device selects one execution mode from among a plurality of execution modes and stores a signature value corresponding to an application package based on the execution mode, according to an embodiment.
  • the electronic device 200 may first execute a second mode among a plurality of execution modes.
  • the electronic device 200 may be driven in an execution mode selected from among a plurality of execution modes respectively corresponding to a plurality of application packages stored in the memory 230 .
  • a plurality of application packages respectively corresponding to a plurality of execution modes may be loaded in the electronic device 200 through the method described with reference to FIG. 1 .
  • a plurality of execution modes and a plurality of application packages corresponding to each of the plurality of execution modes may be installed in the electronic device 200 in response to the first booting of the electronic device 200 .
  • the processor 210 in response to the electronic device 200 being booted for the first time, receives remote control from an external server through the communication circuit 220 to correspond to a plurality of execution modes and each of the execution modes.
  • Installation data of the application packages to be used may be stored in the memory 230 .
  • the processor 210 may install a plurality of execution modes and application packages in the electronic device 200 using installation data stored in the memory 230 .
  • the processor 210 may recognize that the second mode among the plurality of execution modes is first executed in the electronic device 200 .
  • the processor 210 may determine whether the second application package corresponding to the second mode is installed in the electronic device 200 .
  • the processor 210 may determine whether the application package is installed in the electronic device 200 through data (eg, metadata) indicating whether the second application package provided in the second mode exists.
  • the processor 210 may verify the second application package corresponding to the second mode.
  • the verification operation for the second application package may be performed through an operation similar to the verification operation described with reference to FIGS. 3 and 4 .
  • the processor 210 may determine whether the second application package is an application package installed based on a designated installer.
  • the processor 210 may determine whether the second application package has been developed by the certified software development kit.
  • the processor 210 may determine whether the second application package is verified.
  • the processor 210 may obtain a second signature value corresponding to the second application package and store the second signature value in the memory 230 in association with the second mode.
  • the memory 230 may store an application package corresponding to each of a plurality of execution modes executed in the electronic device 200 , and may store a signature value corresponding to the application package.
  • the memory 230 may include memory areas corresponding to each of a plurality of execution modes. Accordingly, the processor 210 may store the second signature value corresponding to the second application package in association with the second mode.
  • the memory 230 may store a plurality of application packages corresponding to each of a plurality of execution modes executed in the electronic device 200 . Accordingly, the processor 210 may provide a service based on the execution mode by using an application package provided in the execution mode based on the execution of one of the plurality of execution modes.
  • the update operation described with reference to FIG. 5 may be equally applied to the update operation for at least one application package among the plurality of application packages.
  • the processor 210 may determine whether there is an update for the second application package.
  • the processor 210 may compare the second signature value with a third signature value corresponding to the updated second application package.
  • the processor 210 may compare the second signature value stored in the memory 230 in association with the second mode with a third signature value obtained through the communication circuit 220 . Through the method described with reference to FIG. 5 , the processor 210 may obtain the third signature value.
  • the processor 210 may perform an update operation on the second application package based on a result of the comparison that the second signature value and the third signature value correspond.
  • the operation of the electronic device 200 described with reference to FIGS. 1 to 5 may be the same.
  • FIG. 7 is a diagram for explaining a UI based on an application package according to an embodiment.
  • the electronic device 200 may provide various services through data included in an application package provided in an execution mode of the electronic device 200 .
  • the processor 210 is configured to provide various services through a corresponding application package provided in the first mode, based on the first mode initially executed in the electronic device 200, so that the display 240 can provide various services.
  • the first mode first execution screen 710 may be output through .
  • the processor 210 may output a first mode execution guide 711 indicating that a service corresponding to the first mode will be provided through the display 240 .
  • the electronic device 200 may output an execution screen 720 of the first mode corresponding to the first mode based on the application package provided in the first mode being a verified application package.
  • the first mode execution screen 720 may be output based on at least one of configuration information, images, images, texts, and setting information of the electronic device 200 included in the application package.
  • the processor 210 may output a first mode home screen 721 through the display 240 for executing an application corresponding to an installed application package based on a launcher program corresponding to the first mode.
  • the first mode home screen 721 may include an application configuration based on data included in an application package, an icon image, and a background screen.
  • the processor 210 may provide an application execution provided in the first mode. For example, based on the execution of the first mode, the processor 210 may control the execution 730 screen of the application by using data included in an application package corresponding to the first mode. In an embodiment, the processor 210 may control the display 240 to output the application screen 731 included in the application package to correspond to the first mode according to the execution 730 of the application.
  • FIG. 8 is a diagram for explaining a UI based on an update of an application package according to an embodiment.
  • the processor 210 may control the display 240 to output a notification regarding the update of an application package.
  • the processor 210 may output an update screen 810 indicating that the application package has been updated through the display 240 through various methods.
  • the processor 210 may control the display 240 to output a screen 811 of an application search app (eg, Google's play store).
  • an application search app eg, Google's play store
  • the processor 210 automatically or based on a user input to the update screen 810, the updated signature value of the application package and the signature value corresponding to the application package stored in the memory 230 can be compared.
  • the operation of comparing the signature values according to an embodiment has been described above with reference to FIG. 5 .
  • the processor 210 according to an embodiment may perform an update operation of the application package based on the correspondence between the signature value corresponding to the updated application package and the signature value stored in the memory 230 .
  • the processor 210 according to an exemplary embodiment may not perform the update operation of the application package based on the fact that the signature value corresponding to the updated application package does not correspond to the signature value stored in the memory 230 .
  • the processor 210 may output a notification 820 for an update operation on the application package through the display 240 .
  • the processor 210 does not perform an update operation of the application package based on the non-correspondence between the signature value corresponding to the updated application package and the signature value stored in the memory 230 .
  • an update failure notification 821 may be output through the display 240 .
  • FIG. 9 is a block diagram of an electronic device in a network environment according to various embodiments of the present disclosure.
  • FIG. 9 is a block diagram of an electronic device 901 within a network environment 900 , in accordance with various embodiments.
  • the electronic device 901 communicates with the electronic device 902 through a first network 998 (eg, a short-range wireless communication network) or a second network 999 . It may communicate with at least one of the electronic device 904 and the server 908 through (eg, a long-distance wireless communication network). According to an embodiment, the electronic device 901 may communicate with the electronic device 904 through the server 908 .
  • a first network 998 eg, a short-range wireless communication network
  • a second network 999 e.g., a second network 999
  • the electronic device 901 may communicate with the electronic device 904 through the server 908 .
  • the electronic device 901 includes a processor 920 , a memory 930 , an input module 950 , a sound output module 955 , a display module 960 , an audio module 970 , and a sensor module ( 976), interface 977, connection terminal 978, haptic module 979, camera module 980, power management module 988, battery 989, communication module 990, subscriber identification module 996 , or an antenna module 997 .
  • at least one of these components eg, the connection terminal 978
  • some of these components are integrated into one component (eg, display module 960 ). can be
  • the processor 920 executes software (eg, a program 940) to execute at least one other component (eg, a hardware or software component) of the electronic device 901 connected to the processor 920 . It can control and perform various data processing or operations. According to an embodiment, as at least part of data processing or operation, the processor 920 stores a command or data received from another component (eg, the sensor module 976 or the communication module 990 ) into the volatile memory 932 . may store the command or data stored in the volatile memory 932 , and store the result data in the non-volatile memory 934 .
  • software eg, a program 940
  • the processor 920 stores a command or data received from another component (eg, the sensor module 976 or the communication module 990 ) into the volatile memory 932 .
  • the processor 920 stores a command or data received from another component (eg, the sensor module 976 or the communication module 990 ) into the volatile memory 932 . may store the command or data stored in the volatile memory 932
  • the processor 920 is a main processor 921 (eg, a central processing unit or an application processor) or a secondary processor 923 (eg, a graphic processing unit, a neural network processing unit) a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor).
  • a main processor 921 e.g, a central processing unit or an application processor
  • a secondary processor 923 e.g, a graphic processing unit, a neural network processing unit
  • NPU neural processing unit
  • image signal processor e.g., a sensor hub processor, or a communication processor.
  • the electronic device 901 includes a main processor 921 and a sub-processor 923
  • the sub-processor 923 uses less power than the main processor 921 or is set to be specialized for a specified function.
  • the coprocessor 923 may be implemented separately from or as part of the main processor 921 .
  • the coprocessor 923 is, for example, on behalf of the main processor 921 while the main processor 921 is in an inactive (eg, sleep) state, or the main processor 921 is active (eg, executing an application). ), together with the main processor 921, at least one of the components of the electronic device 901 (eg, the display module 960, the sensor module 976, or the communication module 990) It is possible to control at least some of the related functions or states.
  • the coprocessor 923 eg, image signal processor or communication processor
  • may be implemented as part of another functionally related component eg, camera module 980 or communication module 990. have.
  • the auxiliary processor 923 may include a hardware structure specialized for processing an artificial intelligence model.
  • Artificial intelligence models can be created through machine learning. Such learning may be performed, for example, in the electronic device 901 itself on which the artificial intelligence model is performed, or may be performed through a separate server (eg, the server 908 ).
  • the learning algorithm may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but in the above example not limited
  • the artificial intelligence model may include a plurality of artificial neural network layers.
  • Artificial neural networks include deep neural networks (DNNs), convolutional neural networks (CNNs), recurrent neural networks (RNNs), restricted boltzmann machines (RBMs), deep belief networks (DBNs), bidirectional recurrent deep neural networks (BRDNNs), It may be one of deep Q-networks or a combination of two or more of the above, but is not limited to the above example.
  • the artificial intelligence model may include, in addition to, or alternatively, a software structure in addition to the hardware structure.
  • the memory 930 may store various data used by at least one component of the electronic device 901 (eg, the processor 920 or the sensor module 976 ).
  • the data may include, for example, input data or output data for software (eg, the program 940 ) and instructions related thereto.
  • the memory 930 may include a volatile memory 932 or a non-volatile memory 934 .
  • the program 940 may be stored as software in the memory 930 , and may include, for example, an operating system 942 , middleware 944 , or an application 946 .
  • the input module 950 may receive a command or data to be used in a component (eg, the processor 920 ) of the electronic device 901 from the outside (eg, a user) of the electronic device 901 .
  • the input module 950 may include, for example, a microphone, a mouse, a keyboard, a key (eg, a button), or a digital pen (eg, a stylus pen).
  • the sound output module 955 may output a sound signal to the outside of the electronic device 901 .
  • the sound output module 955 may include, for example, a speaker or a receiver.
  • the speaker can be used for general purposes such as multimedia playback or recording playback.
  • the receiver can be used to receive incoming calls. According to an embodiment, the receiver may be implemented separately from or as a part of the speaker.
  • the display module 960 may visually provide information to the outside (eg, a user) of the electronic device 901 .
  • the display module 960 may include, for example, a control circuit for controlling a display, a hologram device, or a projector and a corresponding device.
  • the display module 960 may include a touch sensor configured to sense a touch or a pressure sensor configured to measure the intensity of a force generated by the touch.
  • the audio module 970 may convert a sound into an electric signal or, conversely, convert an electric signal into a sound. According to an embodiment, the audio module 970 acquires a sound through the input module 950 or an external electronic device (eg, a sound output module 955 ) directly or wirelessly connected to the electronic device 901 .
  • the electronic device 902) eg, a speaker or headphones
  • the sensor module 976 detects an operating state (eg, power or temperature) of the electronic device 901 or an external environmental state (eg, a user state), and generates an electrical signal or data value corresponding to the sensed state. can do.
  • the sensor module 976 may include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, It may include a temperature sensor, a humidity sensor, or an illuminance sensor.
  • the interface 977 may support one or more specified protocols that may be used for the electronic device 901 to directly or wirelessly connect with an external electronic device (eg, the electronic device 902 ).
  • the interface 977 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
  • HDMI high definition multimedia interface
  • USB universal serial bus
  • SD card interface Secure Digital Card
  • connection terminal 978 may include a connector through which the electronic device 901 can be physically connected to an external electronic device (eg, the electronic device 902 ).
  • the connection terminal 978 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).
  • the haptic module 979 may convert an electrical signal into a mechanical stimulus (eg, vibration or movement) or an electrical stimulus that the user can perceive through tactile or kinesthetic sense.
  • the haptic module 979 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
  • the camera module 980 may capture still images and moving images. According to an embodiment, the camera module 980 may include one or more lenses, image sensors, image signal processors, or flashes.
  • the power management module 988 may manage power supplied to the electronic device 901 .
  • the power management module 988 may be implemented as, for example, at least a part of a power management integrated circuit (PMIC).
  • PMIC power management integrated circuit
  • the battery 989 may supply power to at least one component of the electronic device 901 .
  • the battery 989 may include, for example, a non-rechargeable primary cell, a rechargeable secondary cell, or a fuel cell.
  • the communication module 990 is a direct (eg, wired) communication channel or a wireless communication channel between the electronic device 901 and an external electronic device (eg, the electronic device 902 , the electronic device 904 , or the server 908 ). It can support establishment and communication performance through the established communication channel.
  • the communication module 990 may include one or more communication processors that operate independently of the processor 920 (eg, an application processor) and support direct (eg, wired) communication or wireless communication.
  • the communication module 990 may include a wireless communication module 992 (eg, a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 994 (eg, : It may include a local area network (LAN) communication module, or a power line communication module).
  • a wireless communication module 992 eg, a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module
  • GNSS global navigation satellite system
  • wired communication module 994 eg, : It may include a local area network (LAN) communication module, or a power line communication module.
  • a corresponding communication module among these communication modules is a first network 998 (eg, a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network 999 (eg, legacy It may communicate with the external electronic device 904 through a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (eg, a telecommunication network such as a LAN or a WAN).
  • a first network 998 eg, a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)
  • a second network 999 eg, legacy It may communicate with the external electronic device 904 through a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (eg, a telecommunication network such as a LAN or a WAN).
  • These various types of communication modules
  • the wireless communication module 992 uses subscriber information (eg, International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 996 within a communication network, such as the first network 998 or the second network 999 .
  • subscriber information eg, International Mobile Subscriber Identifier (IMSI)
  • IMSI International Mobile Subscriber Identifier
  • the electronic device 901 may be identified or authenticated.
  • the wireless communication module 992 may support a 5G network after a 4G network and a next-generation communication technology, for example, a new radio access technology (NR).
  • NR access technology includes high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and access to multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency) -latency communications)).
  • eMBB enhanced mobile broadband
  • mMTC massive machine type communications
  • URLLC ultra-reliable and low-latency
  • the wireless communication module 992 may support a high frequency band (eg, mmWave band) to achieve a high data rate, for example.
  • a high frequency band eg, mmWave band
  • the wireless communication module 992 uses various techniques for securing performance in a high-frequency band, for example, beamforming, massive multiple-input and multiple-output (MIMO), all-dimensional multiplexing. It may support technologies such as full dimensional MIMO (FD-MIMO), an array antenna, analog beam-forming, or a large scale antenna.
  • the wireless communication module 992 may support various requirements specified in the electronic device 901 , an external electronic device (eg, the electronic device 904 ), or a network system (eg, the second network 999 ).
  • the wireless communication module 992 includes a peak data rate (eg, 20 Gbps or more) for realization of eMBB, loss coverage for realization of mMTC (eg, 164 dB or less), or U-plane latency (for URLLC realization) ( Example: Downlink (DL) and uplink (UL) each 0.5 ms or less, or round trip 1 ms or less) can be supported.
  • a peak data rate eg, 20 Gbps or more
  • mMTC eg, 164 dB or less
  • U-plane latency for URLLC realization
  • the antenna module 997 may transmit or receive a signal or power to the outside (eg, an external electronic device).
  • the antenna module 997 may include an antenna including a conductor formed on a substrate (eg, a PCB) or a radiator formed of a conductive pattern.
  • the antenna module 997 may include a plurality of antennas (eg, an array antenna). In this case, at least one antenna suitable for a communication scheme used in a communication network such as the first network 998 or the second network 999 is connected from the plurality of antennas by, for example, the communication module 990 . can be selected. A signal or power may be transmitted or received between the communication module 990 and an external electronic device through the selected at least one antenna.
  • other components eg, a radio frequency integrated circuit (RFIC)
  • RFIC radio frequency integrated circuit
  • the antenna module 997 may form a mmWave antenna module.
  • the mmWave antenna module comprises a printed circuit board, an RFIC disposed on or adjacent to a first side (eg, bottom side) of the printed circuit board and capable of supporting a designated high frequency band (eg, mmWave band); and a plurality of antennas (eg, an array antenna) disposed on or adjacent to a second side (eg, top or side) of the printed circuit board and capable of transmitting or receiving signals of the designated high frequency band. can do.
  • peripheral devices eg, a bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)
  • GPIO general purpose input and output
  • SPI serial peripheral interface
  • MIPI mobile industry processor interface
  • the command or data may be transmitted or received between the electronic device 901 and the external electronic device 904 through the server 908 connected to the second network 999 .
  • Each of the external electronic devices 902 and 904 may be the same or a different type of the electronic device 901 .
  • all or part of the operations performed by the electronic device 901 may be executed by one or more of the external electronic devices 902 , 904 , or 908 .
  • the electronic device 901 may instead of executing the function or service itself.
  • one or more external electronic devices may be requested to perform at least a part of the function or the service.
  • One or more external electronic devices that have received the request may execute at least a part of the requested function or service, or an additional function or service related to the request, and transmit a result of the execution to the electronic device 901 .
  • the electronic device 901 may process the result as it is or additionally and provide it as at least a part of a response to the request.
  • cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used.
  • the electronic device 901 may provide an ultra-low latency service using, for example, distributed computing or mobile edge computing.
  • the external electronic device 904 may include an Internet of things (IoT) device.
  • the server 908 may be an intelligent server using machine learning and/or neural networks.
  • the external electronic device 904 or the server 908 may be included in the second network 999 .
  • the electronic device 901 may be applied to an intelligent service (eg, smart home, smart city, smart car, or health care) based on 5G communication technology and IoT-related technology.
  • an intelligent service eg, smart home, smart city, smart car, or health care
  • the electronic device may be a device of various types.
  • the electronic device may include, for example, a portable communication device (eg, a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance device.
  • a portable communication device eg, a smart phone
  • a computer device e.g., a laptop, a desktop, a tablet, or a portable multimedia device
  • portable medical device e.g., a portable medical device
  • camera e.g., a camera
  • a wearable device e.g., a smart watch
  • a home appliance device e.g., a smart bracelet
  • first, second, or first or second may simply be used to distinguish an element from other elements in question, and may refer elements to other aspects (e.g., importance or order) is not limited. It is said that one (eg, first) component is “coupled” or “connected” to another (eg, second) component, with or without the terms “functionally” or “communicatively”. When referenced, it means that one component can be connected to the other component directly (eg by wire), wirelessly, or through a third component.
  • module used in various embodiments of the present document may include a unit implemented in hardware, software, or firmware, for example, and interchangeably with terms such as logic, logic block, component, or circuit.
  • a module may be an integrally formed part or a minimum unit or a part of the part that performs one or more functions.
  • the module may be implemented in the form of an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • one or more instructions stored in a storage medium may be implemented as software (eg, a program 940) including
  • a processor eg, processor 920
  • a device eg, electronic device 901
  • the one or more instructions may include code generated by a compiler or code executable by an interpreter.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-transitory' only means that the storage medium is a tangible device and does not contain a signal (eg, electromagnetic wave), and this term refers to the case where data is semi-permanently stored in the storage medium and It does not distinguish between temporary storage cases.
  • a signal eg, electromagnetic wave
  • the method according to various embodiments disclosed in this document may be provided by being included in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • the computer program product is distributed in the form of a machine-readable storage medium (eg compact disc read only memory (CD-ROM)), or via an application store (eg Play Store TM ) or on two user devices ( It can be distributed (eg downloaded or uploaded) directly or online between smartphones (eg: smartphones).
  • a part of the computer program product may be temporarily stored or temporarily created in a machine-readable storage medium such as a memory of a server of a manufacturer, a server of an application store, or a relay server.
  • each component (eg, module or program) of the above-described components may include a singular or a plurality of entities, and some of the plurality of entities may be separately disposed in other components.
  • one or more components or operations among the above-described corresponding components may be omitted, or one or more other components or operations may be added.
  • a plurality of components eg, a module or a program
  • the integrated component may perform one or more functions of each component of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. .
  • operations performed by a module, program, or other component are executed sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations are executed in a different order, omitted, or , or one or more other operations may be added.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)

Abstract

Un dispositif électronique dans un mode de réalisation selon la présente divulgation comprend un circuit de communication, un écran, une mémoire pour stocker un progiciel d'application, qui est reçu par le biais du circuit de communication, en réponse au démarrage initial du dispositif électronique, et au moins un processeur connecté électriquement au circuit de communication et à la mémoire, ledit processeur pouvant, en réponse à l'exécution par le dispositif électronique d'un premier mode pour la première fois, déterminer si le progiciel d'application est installé dans le dispositif électronique, vérifier le progiciel d'application sur la base du résultat de détermination et sauvegarder une première valeur de signature correspondant au progiciel d'application dans la mémoire sur la base du résultat de la vérification. Divers autres modes de réalisation sont également possibles, tels que présentés dans la description.
PCT/KR2022/000680 2021-01-13 2022-01-13 Dispositif électronique pour exécuter un progiciel d'application et son procédé de fonctionnement WO2022154540A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2021-0004870 2021-01-13
KR1020210004870A KR20220102483A (ko) 2021-01-13 2021-01-13 어플리케이션 패키지를 실행하기 위한 전자 장치 및 그의 동작 방법

Publications (1)

Publication Number Publication Date
WO2022154540A1 true WO2022154540A1 (fr) 2022-07-21

Family

ID=82447686

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/000680 WO2022154540A1 (fr) 2021-01-13 2022-01-13 Dispositif électronique pour exécuter un progiciel d'application et son procédé de fonctionnement

Country Status (2)

Country Link
KR (1) KR20220102483A (fr)
WO (1) WO2022154540A1 (fr)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110066824A (ko) * 2009-12-11 2011-06-17 한국전자통신연구원 Iptv 셋탑박스의 신뢰 보안 부팅 장치 및 방법
KR101509585B1 (ko) * 2013-08-23 2015-04-07 주식회사 마크애니 모바일 애플리케이션의 위변조 방지 장치, 사용자 디바이스, 방법 및 시스템
KR101537098B1 (ko) * 2011-12-12 2015-07-16 주식회사 케이티 단말 및 단말에 설치된 프리로드 애플리케이션의 관리 방법
KR20160146146A (ko) * 2015-06-11 2016-12-21 주식회사 케이티 무결성 검증 방법 및 그 장치
KR20170044850A (ko) * 2015-10-16 2017-04-26 심재훈 안드로이드 어플리케이션 동적 로딩 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110066824A (ko) * 2009-12-11 2011-06-17 한국전자통신연구원 Iptv 셋탑박스의 신뢰 보안 부팅 장치 및 방법
KR101537098B1 (ko) * 2011-12-12 2015-07-16 주식회사 케이티 단말 및 단말에 설치된 프리로드 애플리케이션의 관리 방법
KR101509585B1 (ko) * 2013-08-23 2015-04-07 주식회사 마크애니 모바일 애플리케이션의 위변조 방지 장치, 사용자 디바이스, 방법 및 시스템
KR20160146146A (ko) * 2015-06-11 2016-12-21 주식회사 케이티 무결성 검증 방법 및 그 장치
KR20170044850A (ko) * 2015-10-16 2017-04-26 심재훈 안드로이드 어플리케이션 동적 로딩 방법

Also Published As

Publication number Publication date
KR20220102483A (ko) 2022-07-20

Similar Documents

Publication Publication Date Title
WO2021075786A1 (fr) Dispositif électronique et procédé de traitement d'une fenêtre surgissante utilisant une multi-fenêtre de celui-ci
WO2022030893A1 (fr) Dispositif électronique pour la prise en charge du partage audio
WO2022154272A1 (fr) Dispositif iot et procédé d'intégration d'un dispositif iot dans un serveur
WO2022030903A1 (fr) Procédé d'installation d'application et dispositif électronique prenant en charge ce dernier
WO2021075905A1 (fr) Procédé d'optimisation d'application et dispositif électronique le prenant en charge
WO2022255652A1 (fr) Procédé de mise à jour d'une application et dispositif électronique associé
WO2022154540A1 (fr) Dispositif électronique pour exécuter un progiciel d'application et son procédé de fonctionnement
WO2022149771A1 (fr) Dispositif électronique et procédé de gestion de mémoire l'utilisant
WO2022265364A1 (fr) Procédé de personnalisation de logiciel, et dispositif électronique et support de stockage pour celui-ci
WO2022203180A1 (fr) Dispositif électronique permettant de réaliser une authentification de hachage sur un réseau neuronal, et procédé de fonctionnement associé
WO2022139229A1 (fr) Procédé pour éviter le mélange de plateau à carte, et dispositif électronique prenant en charge ledit procédé
WO2020105955A1 (fr) Dispositif électronique destiné a fournir un service requis de sécurité au moyen d'un élément sécurisé, et procédé de commande du dispositif électronique
WO2022177206A2 (fr) Appareil électronique et procédé de fonctionnement d'appareil électronique
WO2023013886A1 (fr) Dispositif électronique utilisant une autorité de séparation et son procédé de fonctionnement
WO2022154220A1 (fr) Dispositif électronique et procédé de changement de binaire
WO2024072117A1 (fr) Dispositif électronique et procédé de communication entre des applications
WO2024076123A1 (fr) Procédé de mise à jour d'une application et dispositif électronique associé
WO2022191378A1 (fr) Dispositif électronique pour fournir un service et son procédé de fonctionnement
WO2024063516A1 (fr) Dispositif et procédé de fourniture de logiciel de personnalisation
WO2024010177A1 (fr) Dispositif électronique pour la mise à jour d'un applet d'un circuit de sécurité et son procédé de fonctionnement
WO2024080659A1 (fr) Dispositif électronique, procédé et support d'enegistrement lisible par ordinateur pour afficher un objet visuel sur la base d'un état connecté avec un dispositif électronique externe
WO2021177640A1 (fr) Procédé de commande d'application de dispositif électronique externe, et dispositif électronique prenant en charge ce dernier
WO2024071861A1 (fr) Procédé de mise à jour et dispositif électronique associé
WO2024090787A1 (fr) Dispositif électronique et procédé de fonctionnement d'ui d'authentification biométrique correspondant
WO2022154383A1 (fr) Dispositif électronique et procédé de chargement de module de noyau du dispositif électronique

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: 22739733

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22739733

Country of ref document: EP

Kind code of ref document: A1