WO2020111488A1 - 아이오티 장치를 등록하는 전자 장치, 서버 및 그 작동 방법 - Google Patents
아이오티 장치를 등록하는 전자 장치, 서버 및 그 작동 방법 Download PDFInfo
- Publication number
- WO2020111488A1 WO2020111488A1 PCT/KR2019/012603 KR2019012603W WO2020111488A1 WO 2020111488 A1 WO2020111488 A1 WO 2020111488A1 KR 2019012603 W KR2019012603 W KR 2019012603W WO 2020111488 A1 WO2020111488 A1 WO 2020111488A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- token
- electronic device
- server
- iot device
- iot
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 52
- 238000004891 communication Methods 0.000 description 36
- 230000008569 process Effects 0.000 description 18
- 238000009434 installation Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1046—Joining mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Definitions
- Various embodiments relate to electronic devices, servers, and methods of operation for registering IoT devices using temporary accounts.
- the IoT device can be registered as a user account through various methods. Generally, a user account may be directly registered using an input device of the corresponding IoT device.
- a method is used in which an electronic device registered as a user account, for example, a smartphone to an IoT device is peer-to-peer (P2P) connected, and an IoT device is registered as a user account through a smartphone.
- P2P peer-to-peer
- an electronic device in an electronic device that is not registered with a user account, an electronic device, a server, and an electronic device capable of registering an IoT device as a user account without directly sharing the user's authentication information with another person (or another person's device) It can provide a method of operation.
- the electronic device includes at least one processor and memory, and the memory includes, when executed, the at least one processor receives registration information of at least one IoT device, and sends it to a server. , Transmitting an authentication information generation request including registration information of the at least one IoT device, receiving a first token from the server, and at least one second generated based on the registration information of the at least one IoT device Sending a request for authentication information including the first token to a server that generated at least one third token using a token, receiving authentication information including the at least one third token from the server, and Instructions for transmitting authentication information including the third token may be stored to the at least one IoT device.
- a method of registering an IoT device includes: receiving registration information of at least one IoT device, and transmitting a request for generating authentication information including registration information of the at least one IoT device to a server , Receiving a first token from the server, to the server generating at least one third token using at least one second token generated based on the registration information of the at least one IoT device, the first Transmitting an authentication information request including a token, receiving authentication information including the at least one third token from the server, and receiving authentication information including the third token to the at least one IoT device It may include the operation of transmitting.
- the server includes at least one processor and memory
- the memory includes, when executed, the at least one processor, from a first electronic device, including registration information of at least one IoT device Receiving a request for generating authentication information, generating a first token used for access to authentication information based on the request for generating authentication information, transmitting the first token to the first electronic device and the second electronic device, and , Upon receiving the first token from the second electronic device, transmits registration information of the at least one IoT device, and at least one obtained based on the registration information of the at least one IoT device from the second electronic device Receiving the second token, generating at least one third token corresponding to the at least one second token, and transmitting information to the first electronic device to inform that the at least one third token has been generated, Upon receiving the first token from the first electronic device, instructions for transmitting the at least one third token to the first electronic device may be stored.
- the electronic device includes a display, at least one processor and memory, and the memory includes, when executed, at least one of the number of at least one IoT device or the installation time of the at least one processor.
- Receiving registration information including, displaying on the display, receiving an input indicating confirmation of the registration information, and based on receipt of the input, corresponding to each of the at least one IoT device to an external server
- Instructions for generating at least one token generation, receiving the at least one token from the external server, and transmitting the received at least one token to an IoT server may be stored.
- an IoT device may be registered as a user account without directly sharing authentication information of the user.
- FIG. 1 is a block diagram of an electronic device in a network environment, according to various embodiments.
- 2A and 2B are flowcharts for describing a process of registering at least one IoT device by a system according to various embodiments.
- FIG. 3 is a flowchart illustrating a process of registering at least one IoT device by a system according to various embodiments.
- FIG. 4 is a flowchart illustrating a process of registering at least one IoT device by an electronic device according to various embodiments.
- FIG. 5 is a diagram illustrating screens for receiving registration information of at least one IoT device according to various embodiments.
- FIG. 6 is a flowchart illustrating a process of registering at least one IoT device by an electronic device according to various embodiments.
- FIG. 7 is a diagram illustrating screens for receiving registration information of at least one IoT device according to various embodiments.
- FIG. 8 is a diagram illustrating screens for receiving registration information of at least one IoT device according to various embodiments.
- FIG. 9 is a diagram illustrating screens for receiving registration information of at least one IoT device according to various embodiments.
- FIG. 10 is a diagram illustrating screens illustrating a process in which at least one IoT device is registered according to various embodiments.
- 11 is a flowchart illustrating a process of registering at least one IoT device by a server according to various embodiments.
- the electronic device 101 communicates with the electronic device 102 through the first network 198 (eg, a short-range wireless communication network), or the second network 199. It may communicate with the electronic device 104 or the server 108 through (eg, a remote wireless communication network). According to an embodiment, the electronic device 101 may communicate with the electronic device 104 through the server 108.
- the first network 198 eg, a short-range wireless communication network
- the server 108 e.g, a remote wireless communication network
- the electronic device 101 may communicate with the electronic device 104 through the server 108.
- the electronic device 101 includes a processor 120, a memory 130, an input device 150, an audio output device 155, a display device 160, an audio module 170, a sensor module ( 176), interface 177, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196, or antenna module 197 ).
- the components for example, the display device 160 or the camera module 180
- the sensor module 176 eg, fingerprint sensor, iris sensor, or illuminance sensor
- the display device 160 eg, display.
- the processor 120 executes software (eg, the program 140) to execute at least one other component (eg, hardware or software component) of the electronic device 101 connected to the processor 120. It can be controlled and can perform various data processing or operations. According to one embodiment, as at least a part of data processing or computation, the processor 120 may receive instructions or data received from other components (eg, the sensor module 176 or the communication module 190) in the volatile memory 132. Loaded into, process instructions or data stored in volatile memory 132, and store result data in non-volatile memory 134.
- software eg, the program 140
- the processor 120 may receive instructions or data received from other components (eg, the sensor module 176 or the communication module 190) in the volatile memory 132. Loaded into, process instructions or data stored in volatile memory 132, and store result data in non-volatile memory 134.
- the processor 120 includes a main processor 121 (eg, a central processing unit or an application processor), and an auxiliary processor 123 (eg, a graphics processing unit, an image signal processor) that can be operated independently or together. , Sensor hub processor, or communication processor). Additionally or alternatively, the coprocessor 123 may be set to use less power than the main processor 121, or to be specialized for a designated function. The coprocessor 123 may be implemented separately from the main processor 121 or as part of it.
- a main processor 121 eg, a central processing unit or an application processor
- an auxiliary processor 123 eg, a graphics processing unit, an image signal processor
- the coprocessor 123 may be set to use less power than the main processor 121, or to be specialized for a designated function.
- the coprocessor 123 may be implemented separately from the main processor 121 or as part of it.
- the coprocessor 123 may replace, for example, the main processor 121 while the main processor 121 is in an inactive (eg, sleep) state, or the main processor 121 may be active (eg, execute an application) ) With the main processor 121 while in the state, at least one of the components of the electronic device 101 (for example, the display device 160, the sensor module 176, or the communication module 190) It can control at least some of the functions or states associated with.
- the coprocessor 123 eg, image signal processor or communication processor
- may be implemented as part of other functionally relevant components eg, camera module 180 or communication module 190). have.
- the memory 130 may store various data used by at least one component of the electronic device 101 (eg, the processor 120 or the sensor module 176).
- the data may include, for example, software (eg, the program 140) and input data or output data for commands related thereto.
- the memory 130 may include a volatile memory 132 or a non-volatile memory 134.
- the program 140 may be stored as software in the memory 130, and may include, for example, an operating system 142, middleware 144, or an application 146.
- the input device 150 may receive commands or data to be used for components (eg, the processor 120) of the electronic device 101 from outside (eg, a user) of the electronic device 101.
- the input device 150 may include, for example, a microphone, mouse, keyboard, or digital pen (eg, a stylus pen).
- the audio output device 155 may output an audio signal to the outside of the electronic device 101.
- the audio output device 155 may include, for example, a speaker or a receiver.
- the speaker can be used for general purposes such as multimedia playback or recording playback, and the receiver can be used to receive an incoming call.
- the receiver may be implemented separately from, or as part of, the speaker.
- the display device 160 may visually provide information to the outside of the electronic device 101 (eg, a user).
- the display device 160 may include, for example, a display, a hologram device, or a projector and a control circuit for controlling the device.
- the display device 160 may include a touch circuitry configured to sense a touch, or a sensor circuit configured to measure the strength of the force generated by the touch (eg, a pressure sensor). have.
- the audio module 170 may convert sound into an electrical signal, or vice versa. According to one embodiment, the audio module 170 acquires sound through the input device 150, or an external electronic device (eg, directly or wirelessly connected to the sound output device 155 or the electronic device 101) Sound may be output through the electronic device 102 (eg, speakers or headphones).
- an external electronic device eg, directly or wirelessly connected to the sound output device 155 or the electronic device 101
- Sound may be output through the electronic device 102 (eg, speakers or headphones).
- the sensor module 176 detects an operating state (eg, power or temperature) of the electronic device 101 or an external environmental state (eg, a user state), and generates an electrical signal or data value corresponding to the detected state can do.
- the sensor module 176 includes, 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 infrared (IR) sensor, a biological sensor, It may include a temperature sensor, a humidity sensor, or an illuminance sensor.
- the interface 177 may support one or more designated protocols that can be used for the electronic device 101 to be directly or wirelessly connected to an external electronic device (eg, the electronic device 102).
- the interface 177 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 interface
- audio interface audio interface
- the connection terminal 178 may include a connector through which the electronic device 101 can be physically connected to an external electronic device (eg, the electronic device 102 ).
- the connection terminal 178 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 179 may convert electrical signals into mechanical stimuli (eg, vibration or movement) or electrical stimuli that the user can perceive through tactile or motor sensations.
- the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
- the camera module 180 may capture still images and videos. According to one embodiment, the camera module 180 may include one or more lenses, image sensors, image signal processors, or flashes.
- the power management module 188 may manage power supplied to the electronic device 101.
- the power management module 388 may be implemented, for example, as at least part of a power management integrated circuit (PMIC).
- PMIC power management integrated circuit
- the battery 189 may supply power to at least one component of the electronic device 101.
- the battery 189 may include, for example, a non-rechargeable primary cell, a rechargeable secondary cell, or a fuel cell.
- the communication module 190 is a direct (eg, wired) communication channel or a wireless communication channel between the electronic device 101 and an external electronic device (eg, the electronic device 102, the electronic device 104, or the server 108). It can support establishing and performing communication through the established communication channel.
- the communication module 190 operates independently of the processor 120 (eg, an application processor) and may include one or more communication processors supporting direct (eg, wired) communication or wireless communication.
- the communication module 190 is a wireless communication module 192 (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 194 (eg : Local area network (LAN) communication module, or power line communication module.
- a wireless communication module 192 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
- LAN Local area network
- Corresponding communication module among these communication modules includes a first network 198 (eg, a short-range communication network such as Bluetooth, WiFi direct, or infrared data association (IrDA)) or a second network 199 (eg, a cellular network, the Internet, or It may communicate with external electronic devices through a computer network (eg, a telecommunication network such as a LAN or WAN).
- a computer network eg, a telecommunication network such as
- the wireless communication module 192 uses a subscriber information (eg, International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 196 within a communication network such as the first network 198 or the second network 199.
- IMSI International Mobile Subscriber Identifier
- the antenna module 197 may transmit a signal or power to the outside (eg, an external electronic device) or receive it from the outside.
- the antenna module may include a single antenna including a conductor formed on a substrate (eg, a PCB) or a radiator made of a conductive pattern.
- the antenna module 197 may include a plurality of antennas. In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network 198 or the second network 199, is transmitted from the plurality of antennas by, for example, the communication module 190. Can be selected.
- the signal or power may be transmitted or received between the communication module 190 and an external electronic device through the at least one selected antenna.
- other components eg, RFIC
- other than the radiator may be additionally formed as part of the antenna module 197.
- peripheral devices for example, a bus, a general purpose input and output (GPIO), a serial peripheral interface (SPI), or a 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 101 and the external electronic device 104 through the server 108 connected to the second network 199.
- Each of the electronic devices 102 and 104 may be the same or a different type of device from the electronic device 101.
- all or some of the operations performed on the electronic device 101 may be performed on one or more external devices of the external electronic devices 102, 104, or 108.
- the electronic device 101 can execute the function or service itself.
- one or more external electronic devices may be requested to perform at least a portion of the function or the service.
- the one or more external electronic devices receiving 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 deliver the result of the execution to the electronic device 101.
- the electronic device 101 may process the result, as it is or additionally, and provide it as at least part of a response to the request.
- cloud computing, distributed computing, or client-server computing technology can be used, for example.
- the first server 108 may be a server managing IoT devices
- the second server 200 may be a server managing user accounts.
- the first server 108 and the second server 200 may be physically or logically divided.
- at least a portion of the first server 108 and the second server 200 may be implemented to be physically or logically integrated.
- the first electronic device 101 may receive registration information of at least one IoT device in operation 201. Acquiring the registration information by the electronic device 101 may mean, for example, receiving registration information through the input device 150 included in the electronic device 101.
- the registration information of the at least one IoT device may include information on the number of IoT devices to be registered in the first server 108, information on the time to register the IoT device, or the second electronic device 104. It may be information regarding a type (for example, QR code, E-mail) providing registration information.
- the first electronic device 101 may be an electronic device possessed by a person who wants to install an IoT device.
- the second electronic device 104 may be an electronic device possessed by a person who requests or allows the installation of the IoT device.
- the electronic device 101 may transmit a request for generating authentication information including registration information of at least one IoT device to the first server 108.
- the first server 108 may generate a first token at operation 205.
- the server 108 may generate a storage for storing authentication information, and generate a first token used for access to the generated storage.
- the first token may be used in the process of checking the authority for access to authentication information from another electronic device in the future, and there is no limitation on the method of generating the first token.
- the first server 108 may transmit the first token to the first electronic device 101 in operation 207.
- the first server 108 may transmit the first token to the second electronic device 104 in operation 209.
- the first server 108 when an application providing an IoT account-related service is installed in the second electronic device 104, the first server 108 is in the form of a notification of the application providing the IoT account-related service, The first token can be transmitted to the second electronic device 104.
- the first server 108 may transmit the first token in the form of an email.
- operation 209 may be omitted, and the second electronic device 104 reads the QR code displayed on the first electronic device 101 (eg : Shooting) to receive the first token.
- the second electronic device 104 may transmit a request for registration information of at least one IoT device including the first token.
- the first server 108 may transmit registration information of at least one IoT device to the second electronic device 104. For example, upon receiving a request for registration information of at least one IoT device from the second electronic device 104, the first server 108 generates a first token included in the received registration information request in operation 205. If it matches the first token, registration information of at least one IoT device may be transmitted. Accordingly, only the electronic device to which the first server 108 has transmitted the first token can query the registration information of the IoT device.
- the second electronic device 104 may acquire at least one second token through the second server 200 based on the registration information of the at least one IoT device in operation 215.
- the registration information of at least one IoT device received from the first server 108 may include information on the number of IoT devices to be registered, and the second electronic device 104 is IoT to be registered.
- the second token can be obtained as many as the number of devices.
- Each second token may consist of an access token and a refresh token.
- the second electronic device 104 may display a screen including at least a part of registration information.
- the second electronic device 104 may acquire a command for generating the second token, and may transmit a request for generating the second token to the second server 200 correspondingly.
- the request to generate the second token may include information on the number of IoT devices to be installed, for example.
- the second server 200 may generate the second token in the corresponding number based on the information on the number of IoT devices to be installed.
- the second token may be at least one, and may correspond to each of the at least one IoT device.
- the second electronic device 104 may transmit the obtained at least one second token in operation 217.
- the first server 108 may store at least one second token and generate at least one third token corresponding to the at least one second token in one operation 219.
- the at least one third token generated by the first server 108 corresponds to the at least one second token generated by the second server 200 in a one-to-one correspondence, and is different from the second token.
- at least one third token is valid only in the first server 108, and may not be valid in a server other than the first server 108.
- the third token may be composed of an access token' (refresh token') and an access token (refresh token) corresponding to the access token and the refresh token of the second token.
- the third token may be temporary authentication information that is used for IoT registration and expires after registration.
- the character of the access token can be used to indicate a temporary token generated corresponding to the generated token.
- the first server 108 may transmit information indicating that authentication information has been generated in operation 221.
- the authentication information may be at least one third token.
- the first electronic device 101 may transmit a request for authentication information including the first token.
- the first token is a token received from the first server 108 in operation 207, and may be used to confirm an authority to query authentication information.
- the first server 108 may transmit authentication information including at least one third token in operation 225.
- the first server 108 is the first electronic device 101 ). Accordingly, only the electronic device to which the first server 108 has transmitted the first token can receive authentication information.
- the first server 108 may be a server managing IoT devices
- the second server 200 may be a server managing user accounts.
- the first electronic device 101 may obtain registration information of at least one IoT device in operation 231.
- Operation 231 may be operation 201 of FIG. 2A.
- the first electronic device may transmit an authentication information generation request including registration information of at least one IoT device in operation 233.
- Operation 233 may be operation 203 of FIG. 2A.
- the first server 108 may generate a first token in operation 235.
- Operation 235 may be operation 205 of FIG. 2A.
- the first server 108 may transmit the first token to the first electronic device 101 in operation 237.
- Operation 237 may be operation 207 of FIG. 2A.
- the first server 108 may transmit the first token to the second electronic device 104 (eg, the electronic device 104) in operation 239.
- the registration information received in operation 231 includes an E-mail address
- the first server 108 includes an E-mail and a web address including a web address for accessing the second server 200.
- 1 Token can be sent.
- the registration information received in operation 231 includes the phone number of the user device
- the first server 108 includes an SMS and a web address including a web address for accessing the second server 200. 1 Token can be sent.
- the second electronic device 104 in operation 241, checks registration information of at least one IoT device using the first token and receives ID/PASSWORD for the second server 200 can do.
- the second electronic device 104 may check registration information of at least one IoT device according to a user input for selecting a web address included in E-mail or SMS. Then, the second electronic device 104 may receive a user input for inputting an ID/PASSWORD to log in to the account of the second server 200 in the web address.
- the first server 108 through the second server 200 At least one second token may be obtained and stored.
- the first server 108 is based on at least one IoT device registration information.
- One second token can be obtained.
- the registration information of at least one IoT device may include information on the number of IoT devices to be registered, and the first server 108 obtains the second token as many as the number of IoT devices to be registered. Can be.
- Each second token may consist of an access token and a refresh token.
- the first server 108 may generate at least one third token corresponding to the at least one second token in one-to-one operation 245.
- the at least one third token generated by the first server 108 corresponds to the at least one second token generated by the second server 200 in a one-to-one correspondence, and is different from the second token.
- at least one third token is valid only in the first server 108, and may not be valid in a server other than the first server 108.
- the third token may be composed of an access token' (refresh token') and an access token (refresh token) corresponding to the access token and the refresh token of the second token.
- the first server 108 may transmit information indicating that authentication information has been generated in operation 247.
- Operation 247 may be operation 221 of FIG. 2A.
- the first electronic device 101 may transmit an authentication information request including the first token.
- Operation 249 may be operation 223 of FIG. 2A.
- the first server 108 may transmit authentication information including at least one third token in operation 251.
- Operation 251 may be operation 225 of FIG. 2A.
- FIG. 3 is a flowchart illustrating a process of registering at least one IoT device by a system according to various embodiments. Operations 301 to 311 of FIG. 3 may be performed after operation 225 of FIG. 2A or may be performed after operation 251 of FIG. 2B.
- the first electronic device 101 may transmit authentication information including the third token in operation 301.
- Authentication information including one third token of at least one third token received from the first server 108 may be transmitted to one IoT device 300.
- the IoT device 300 uses the third token included in the authentication information received from the first electronic device 101 to transmit the IoT device 300 to the first server 108. You can register at
- the first server 108 may expire the third token at operation 305.
- the IoT device 300 may transmit a request for a new token at operation 307. For example, since the token possessed by the IoT device 300 may be registered in the first server only when the third token expires in operation 305, a request for a new token for re-registration may be transmitted. .
- the first server 108 may transmit a second token corresponding to the third token in operation 309.
- the third token was created to correspond one-to-one with the second token (e.g., in operation 219 of FIG. 2A or operation 245 of FIG. 2B)
- the first server 108 is configured to correspond to the third token. 2 Tokens can be selected and transmitted.
- the IoT device 300 may register the IoT device 300 with the first server using the second token in operation 311.
- the first server 108 may delete the stored second and third tokens in operation 311. By deleting the second token and the third token stored in the first server 108, security of the user's authentication information can be enhanced.
- the first electronic device 101 transmits authentication information including a third token to one IoT device 300, but this is merely for convenience of description, and the IoT device to be installed is In the case of multiple individuals, the first electronic device 101 may transmit each of the plurality of third tokens to each of the plurality of IoT devices. Here, each of the plurality of third tokens may be different.
- FIG. 4 is a flowchart illustrating a process of registering at least one IoT device by an electronic device according to various embodiments. The embodiment of FIG. 4 will be described in more detail with reference to FIG. 5.
- 5 is a diagram illustrating a screen for receiving registration information of at least one IoT device according to various embodiments.
- the electronic device 101 may obtain registration information of at least one IoT device in operation 401. Acquiring the registration information by the electronic device 101 may mean, for example, receiving registration information through the input device 150 included in the electronic device 101.
- the electronic device 101 includes a QR code 511-1, an Application 511-3, an SMS 511-5, or an E-mail 511-7.
- Registration information may be input through a UI for receiving the notification method 511, the number of installations 513, and the installation time 515.
- selecting the QR code 511-1 among the notification methods 511 means that an external electronic device (for example, the second electronic device 104 of FIG. 2B) scans the QR code to receive the first token.
- selecting a method of receiving registration information may mean selecting a method of receiving registration information.
- selecting the Application 511-3 among the notification methods 511 may mean that the external electronic device selects a method of receiving registration information by receiving a notification of an application including the first token.
- selecting the SMS 511-5 among the notification methods 511 may mean that the external electronic device selects a method of receiving registration information by receiving an SMS including the first token.
- selecting the E-mail 511-7 among the notification methods 511 means that the external electronic device selects a method of receiving registration information by receiving an E-mail including the first token.
- the number of installations 513 may mean the number of at least one IoT device that is to be registered with a server (eg, the first server in FIG. 2A).
- the electronic device 101 may request and receive authentication information corresponding to the number of installations. For example, selecting the installation time 515 may mean determining an effective time of the third token transmitted to the IoT device in operation 411. For example, if the installation time is 12:00 on September 1, the third token may be valid until 13:00 on September 1.
- the electronic device 101 transmits registration information of at least one IoT device to a server (eg, the first server 108 in FIG. 2A ).
- a server eg, the first server 108 in FIG. 2A .
- a request for generating authentication information may be transmitted.
- the electronic device 101 may receive the first token from the server in operation 405.
- the first token is a token used to query authentication information stored in the server, and may be generated in the server.
- the electronic device 101 transmits to the server generating the at least one third token by using at least one second token generated based on the registration information of the at least one IoT device.
- a request for authentication information including the first token may be transmitted. Since the first token has the authority to query the authentication information, the electronic device 101 can cause the request for authentication information to include the first token.
- the electronic device 101 may receive authentication information including at least one third token from the server.
- the at least one third token may be a token generated to correspond one-to-one with the at least one second token. Accordingly, the third token can function as the second token on the server.
- the electronic device 101 may transmit authentication information including a third token to at least one IoT device.
- the electronic device 101 may transmit authentication information including at least one third token among at least one third token to each of the at least one IoT device.
- FIG. 6 is a flowchart illustrating a process of registering at least one IoT device by an electronic device according to various embodiments. The embodiment of FIG. 6 will be described in more detail with reference to FIG. 7.
- 7 is a diagram illustrating screens for receiving registration information of at least one IoT device according to various embodiments.
- the electronic device 104 receives, at operation 601, registration information including at least one of the number of at least one IoT device or the installation time, on the display. Can be displayed.
- the electronic device 104 may receive and display registration information using the first token received with the notification of the corresponding application. have.
- the electronic device 104 may receive and display registration information using the first token obtained by scanning the QR code. .
- the electronic device 104 scans (703) (or photographs) the QR code 701 displayed on the electronic device 101 to obtain a first token. Can be. Then, the electronic device 104 may receive registration information using the obtained first token. When receiving the registration information, the electronic device 104 may display information 711 indicating the number of IoT devices and information 713 indicating the installation time of the IoT device, as shown in FIG. 7( b ). have.
- the information 713 indicating the installation time is shown as indicating a specific time, this is merely exemplary, and the first electronic device 101 and the second electronic device 104 are registered indicating a time period. Information can also be transmitted or managed. The time period of the registration information may also be associated with the validity period of the third token, for example.
- the electronic device 104 may receive an input indicating confirmation of registration information. For example, as shown in FIG. 7(b), while displaying the registration information 711, 713 of at least one IoT device, the ID 715 and the PASSWORD 717 for logging in to the user account may be input. have.
- the electronic device 104 may provide at least one IoT to an external server (eg, the second server 300 of FIG. 3) based on the reception of the input.
- At least one token generation request corresponding to each device may be transmitted.
- the external server may be a server that manages a user account, and as shown in FIG. 7(b), receives an ID 715 and PASSWORD 717 for logging in a user account and requests a token generation. Can transmit.
- the electronic device 104 may receive at least one token from an external server. For example, as shown in FIG. 7(b), if there are five IoT devices to be installed and the installation time is 9/1, 12:00, the electronic device 1043 may receive 9/1, 12 from an external server: After the set time after 00, 5 tokens that expire can be received.
- the 5 tokens can be composed of an access token and a refresh token, respectively, and can be different.
- the electronic device 104 may transmit the received at least one token to the IoT server (eg, the first server 108 in FIG. 2A). .
- the IoT server eg, the first server 108 in FIG. 2A.
- the electronic device 104 requests generation of a token from an external server, receives a token, and transmits the token to an IoT server.
- the IoT server displays the electronic device 104 ) To send a request for token generation to an external server and receive a token.
- the IoT server may acquire a token by sending SMS or E-mail to the electronic device 104.
- FIG. 8 shows an embodiment in which the IoT server acquires a token through SMS transmitted to the electronic device 104.
- the electronic device 104 may receive and display an SMS including a web address 801 for a server capable of logging in a user account, and the SMS generated by the IoT server It may include a first token. Then, the electronic device 104 may transmit a registration information request using the first token to the IoT server according to a user input for selecting the web address 801. Then, as shown in FIG. 8(b), the electronic device 104 may display information 811 indicating the number of IoT devices and information 813 indicating the installation time of the IoT device on the display.
- the IoT device transmits a request for token generation to an external server, and at least one token Can receive. That is, when the user account is logged in at the web address 801 transmitted through the SMS transmitted by the IoT server, the IoT server may transmit a token generation request to the external server and receive the token. Then, the electronic device 104, according to the user input to enter the ID (815) and PASSWORD (817) for logging in the user account, as shown in Figure 8 (c), information indicating that the reservation is completed (821) Can be displayed on the display.
- FIG. 9 illustrates an embodiment in which the IoT server acquires a token through E-mail transmitted to the electronic device 104.
- the electronic device 104 may receive and display an E-mail including an icon 901 capable of moving to a web page for logging in a user account, and the E-mail It may include a first token generated in the IoT server. Then, the electronic device 104 may transmit a registration information request using the first token to the IoT server according to a user input for selecting the icon 901. Then, as shown in FIG. 9(b), the electronic device 104 may display information 911 indicating the number of IoT devices and information 913 indicating the installation time of the IoT devices on the display.
- the IoT device transmits a request for token generation to an external server, and at least one token Can receive. That is, when the user account is logged in from the web address delivered through the E-mail transmitted by the IoT server, the IoT server may transmit a token generation request to the external server and receive the token. Then, the electronic device 104, according to the user input to enter the ID (915) and PASSWORD (917) for logging in the user account, as shown in Figure 9 (c), information indicating that the reservation is complete (921) Can be displayed on the display.
- the electronic device 101 (eg, the first electronic device 101 of FIG. 2A) is assumed to be an electronic device that is not registered with a user account
- the electronic device 104 (eg, FIG. 2A)
- the second electronic device 104 of may be assumed to be an electronic device registered with a user account.
- the IoT device may be registered as a user account using temporary authentication information received from the IoT server (for example, the first server 108 in FIG. 2B ). .
- the IoT server may acquire authentication information from a server associated with a user account (for example, the second server 200 of FIG. 2A ), and generate temporary authentication information corresponding one-to-one with the obtained authentication information,
- the generated temporary authentication information may be transmitted to the electronic device 101.
- the authentication information may be at least one second token
- the temporary authentication information may be at least one third token. Since the electronic device 101 can register the IoT device with a user account using temporary authentication information, the user's authentication information may not be transmitted to the electronic device 101.
- FIG. 10( a) may be a UI in which the electronic device 101 that is not registered as a user account registers an IoT device using temporary authentication information.
- FIG. 10( a) may be a UI in which the electronic device 101 that is not registered as a user account registers an IoT device using temporary authentication information.
- 10( b) may be a UI indicating a process in which an IoT device is registered as a user account in the electronic device 104 registered as a user account.
- the user account registration of the IoT device is completed, as shown in FIGS. 10(c) and 10(d), both the electronic device 101 not registered as a user account and the electronic device 104 registered as a user account You can check the registration status of the registered IoT device.
- the electronic device 104 may provide a UI that can add, delete, or change the function of the registered IoT device.
- 11 is a flowchart illustrating a process of registering at least one IoT device by a server according to various embodiments.
- the server 108 in operation 1101, from the first electronic device (eg, the first electronic device 101 of FIG. 2A ), the at least one IoT device A request for generating authentication information including registration information may be received.
- the registration information of at least one IoT device may include an effective time of a token to be generated in the server.
- the server 108 in operation 1103, the server 108 generates a first token used for access to authentication information based on a request for generating authentication information, so that the first token is transmitted to the first electronic device 101 and It can be transmitted to the second electronic device (eg, the second electronic device 104 of FIG. 2A ). Meanwhile, when the first electronic device 101 receives the first token and delivers it to the second electronic device 104, the server 108 may not transmit the first token to the second electronic device 104. .
- the server 108 may transmit registration information of at least one IoT device.
- the server 108 registers at least one IoT device when the first token received from the second electronic device 104 matches the first token generated by the server 108 in operation 1103.
- Information can be transmitted. Accordingly, only the electronic device that receives the first token generated by the server 108 can query the registration information of at least one IoT device.
- the server 108 may receive at least one second token obtained from the second electronic device 104 based on the registration information of the at least one IoT device in operation 1107.
- At least one second token may be generated in a server associated with a user account, and may be generated as many as the number of IoT devices included in the registration information. For example, when the second electronic device 104 receives registration information as a QR code or notification of an application related to a user account, the second electronic device 104 may receive a second token. Meanwhile, in operation 1107, it has been described that the second token is received from the second electronic device 104, but the server 108 may directly receive the second token from the server associated with the user account.
- the server 108 transmits the web address of the server associated with the user account to the second electronic device 104 using SMS or E-mail, and the second electronic device 104 accesses the web address
- the server 108 may receive at least one second token directly from a server associated with the user account.
- the server 108 in operation 1109, the server 108 generates at least one third token corresponding to the at least one second token so that the first electronic device 101 has at least one third token. Information indicating that it has been generated may be transmitted. Since the server 108 may not transmit the at least one second token to the electronic device by generating at least one third token that is in one-to-one correspondence with the at least one second token, security of the user account may be enhanced.
- the server 108 may transmit at least one third token to the first electronic device 101.
- the server 108 transmits information indicating that the third token has been generated, and upon receiving the first token, transmits the third token, thereby identifying whether the first electronic device 101 is authorized to query the third token can do.
- At least one IoT device may be registered in the first electronic device 101 without transmitting authentication information (ie, the second token) generated by the server associated with the user account to the first electronic device 101.
- the electronic device 101 includes at least one processor (eg, the processor 120) and a memory (eg, the memory 130), and the memory (eg, the memory 130) is ,
- the at least one processor acquires registration information of at least one IoT device, and includes, to the server 108, registration information of the at least one IoT device Sending a request for generating authentication information, receiving a first token from the server, and generating at least one third token using at least one second token generated based on the registration information of the at least one IoT device Sending a request for authentication information including the first token to the server 108, receiving authentication information including the at least one third token from the server, and the third to the at least one IoT device Instructions for transmitting authentication information including a token may be stored.
- the registration information of the at least one IoT device may include the number of the at least one IoT device, a type by which the server transmits the first token to at least one of the external electronic device or the electronic device, or It may include information for setting the validity time of the at least one third token.
- the type of transmitting the first token may be any one of a QR code, an E-mail, or a text message (SMS).
- the external electronic device 104 receives the first token from the server, receives the registration information of the at least one IoT device using the first token, and the at least one The at least one second token may be obtained based on the registration information of the IoT device, and the at least one third token may correspond one-to-one with at least one second token obtained from the external electronic device.
- the at least one second token may be generated by the number of the at least one IoT device.
- the at least one second token may include an access token and a refresh token.
- the first token may be a token having the authority to query the at least one third token.
- the at least one third token may expire.
- the registration information of the at least one IoT device may include the number of the at least one IoT device, a type by which the server transmits the first token to at least one of the external electronic device or the electronic device, or It may include information for setting the validity time of the at least one third token.
- the type of transmitting the first token may be any one of a QR code, an E-mail, or a text message (SMS).
- the external electronic device 104 receives the first token from the server 108, receives registration information of the at least one IoT device using the first token, and the The at least one second token may be obtained based on the registration information of at least one IoT device, and the at least one third token may correspond one-to-one with at least one second token obtained from the external electronic device.
- the at least one second token may be generated by the number of the at least one IoT device.
- the third token may include an access token and a refresh token.
- the first token may be a token having the authority to query the at least one third token.
- the at least one third token may expire.
- the server 108 includes at least one processor and memory (eg, the memory 130), and the memory includes, when executed, the at least one processor, the first electronic device ( Example: receiving an authentication information generation request including registration information of at least one IoT device from the electronic device 101, and generating a first token used for access to authentication information based on the authentication information generation request
- the first token is transmitted to the first electronic device (for example, the electronic device 101) and the second electronic device (for example, the electronic device 104), and the second electronic device (for example, the electronic device (for example, 104), upon receiving the first token, transmits registration information of the at least one IoT device, and transmits registration information of the at least one IoT device from the second electronic device (for example, the electronic device 104).
- the first electronic device receives the first token from the first electronic device (for example, the electronic device 101)
- the first electronic device (for example, the electronic device 101) )) can store instructions for transmitting the at least one third token.
- the instructions when the instructions receive a registration request including a third token from an IoT device (eg, IoT device 300), the IoT device (eg, IoT device 300) receives the server ( 108), expire the third token, receive a token issuance request from the IoT device (eg, IoT device 300), and transmit a second token corresponding to the third token.
- the registration information of the at least one IoT device may include the number of the at least one IoT device, the server being the first electronic device (eg, the electronic device 101), or a second electronic device (eg. : A type for transmitting the first token to at least one of the electronic devices 104, or information for setting an effective time of the at least one third token.
- the server being the first electronic device (eg, the electronic device 101), or a second electronic device (eg. : A type for transmitting the first token to at least one of the electronic devices 104, or information for setting an effective time of the at least one third token.
- the type of transmitting the first token may be any one of a QR code, an E-mail, or a text message (SMS).
- an electronic device (eg, the electronic device 104) includes a display (eg, the display device 160), at least one processor (eg, the processor 120), and a memory (eg, the memory 130) )), the memory (e.g., memory 130), when executed, the at least one processor (e.g., processor 120), at least one of the number or installation time of at least one IoT device
- Receiving the registration information including, displays on the display (for example, the display device 160), receives an input indicating confirmation of the registration information, and based on the reception of the input, an external server (eg : Transmits a request for generating at least one token corresponding to each of the at least one IoT device to a server 108, receives the at least one token from the external server (eg, server 108 ), Instructions for transmitting the received at least one token to an IoT server may be stored.
- an external server eg : Transmits a request for generating at least one token corresponding to each of the at least
- An electronic device may be various types of devices.
- 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 e.g, a smart phone
- a computer device e.g., a smart phone
- a portable multimedia device e.g., a portable medical device
- a camera e.g., a camera
- a wearable device e.g., a smart bracelet
- any (eg, first) component is referred to as “coupled” or “connected” to another (eg, second) component, with or without the term “functionally” or “communically” When referred to, it means that any of the above components can be connected directly to the other components (eg by wire), wirelessly, or through a third component.
- module may include units implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic blocks, components, or circuits.
- the module may be an integrally configured component or a minimum unit of the component or a part thereof performing one or more functions.
- the module may be implemented in the form of an application-specific integrated circuit (ASIC).
- ASIC application-specific integrated circuit
- Various embodiments of the present disclosure may include one or more instructions stored in a storage medium (eg, internal memory 136 or external memory 138) readable by a machine (eg, electronic device 101). It may be implemented as software (e.g., program 140) that includes.
- a processor eg, processor 120
- the one or more instructions may include code generated by a compiler or code executable by an interpreter.
- the storage medium readable by the device may be provided in the form of a non-transitory storage medium.
- the non-transitory means that the storage medium is a tangible device, and does not include a signal (eg, electromagnetic wave), and the term is temporarily used when data is permanently stored in the storage medium. It does not distinguish between stored cases.
- a method according to various embodiments disclosed in the present document may be provided as being included in a computer program product.
- Computer program products can be traded between sellers and buyers as products.
- the computer program product may be distributed in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)), or through an application store (eg Play StoreTM) or two user devices ( For example, it can be distributed directly (e.g., downloaded or uploaded) between smartphones).
- a device such as a memory of a manufacturer's server, an application store's server, or a relay server, or may be temporarily generated.
- each component (eg, module or program) of the above-described components may include a singular or a plurality of entities.
- one or more components or operations of the above-described corresponding components may be omitted, or one or more other components or operations may be added.
- a plurality of components eg, modules or programs
- the integrated component may perform one or more functions of each component of the plurality of components the same or similar to that performed by the corresponding component among the plurality of components prior to the integration. .
- operations performed by a module, program, or other component may be executed sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations may be executed in a different order, or omitted Or, one or more other actions can be added.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Telephonic Communication Services (AREA)
Abstract
다양한 실시예에 따라서, 전자 장치는, 적어도 하나의 프로세서 및 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 적어도 하나의 IoT 장치의 등록 정보를 수신하고, 서버에게, 상기 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 전송하고, 상기 서버로부터 제 1 토큰을 수신하고, 상기 적어도 하나의 IoT 장치의 등록 정보에 기반하여 생성된 적어도 하나의 제 2 토큰을 이용하여 적어도 하나의 제 3 토큰을 생성한 서버에게, 상기 제 1 토큰을 포함하는 인증 정보 요청을 전송하고, 상기 서버로부터 상기 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 수신하고, 및 상기 적어도 하나의 IoT 장치에게 상기 제 3 토큰을 포함하는 인증 정보를 전송하도록 하는 인스트럭션(instruction)들을 저장할 수 있다. 그 밖의 다양한 실시예가 가능하다.
Description
다양한 실시예는, 임시 계정을 이용하여 IoT 장치를 등록하는 전자 장치, 서버 및 그 작동 방법에 관한 것이다.
다양한 방법을 통해 IoT 장치를 사용자 계정으로 등록할 수 있다. 일반적으로, 해당 IoT 장치의 입력 장치를 이용하여 직접 사용자 계정으로 등록시킬 수 있다.
자체적인 입력 장치나 디스플레이가 없는 전구, 스피커 등과 같은 작은 장치들(small things) 또는, 자체적인 디스플레이는 존재하지만 사용자 입력이 불편한 냉장고, 세탁기 등과 같은 가전 제품들(IoT Home Appliance)은 해당 IoT 장치에서 직접 사용자 계정으로 등록시키는 것이 용이하지 않을 수 있다.
사용자 계정으로 등록된 전자 장치, 예를 들어 스마트폰과 IoT 장치를 P2P(peer to peer) 연결 시키고, 스마트폰을 통해 IoT 장치를 사용자 계정으로 등록시키는 방법이 이용되고 있다.
그러나, 많은 사용자들에게 P2P 연결을 통한 네트워크 등록 및 사용자 계정 등록 과정이 쉽지 않은 방법이며, 스마트 가전으로 분류될 수 있는 Wi-Fi 접속 기능을 가지는 가전 제품의 약 10%만이 네트워크에 연결되어 사용되고 있다.
이러한 문제를 해결하기 위해서, 스마트 가전을 설치 시에 설치 기사가 스마트 가전의 네트워크 연결 및 사용자 등록을 대행하는 경우가 빈번히 발생한다. 이러한 경우, 설치 기사가 사용자 계정을 등록하기 위해서는 사용자 계정으로 등록된 전자 장치, 예를 들어 스마트폰을 이용하거나 사용자 계정을 로그인하기 위한 인증 정보를 공유 받아야 하는 문제점이 존재한다. 이와 같이, IoT 장치의 편리한 등록을 위하여 제 3 자가 사용자의 정보를 공유 받아야 하지만, 개인 정보의 노출 우려 및 이에 대한 각종 규제로 인해 쉽게 공유받을 수 없는 문제점이 존재한다.
다양한 실시예는, 사용자 계정으로 등록되어 있지 않은 전자 장치에서, 사용자의 인증 정보를 타인(또는, 타인의 장치)와 직접 공유하지 않고도 IoT 장치를 사용자 계정으로 등록할 수 있는 전자 장치, 서버 및 그 작동 방법을 제공할 수 있다.
다양한 실시예에 따라서, 전자 장치는, 적어도 하나의 프로세서 및 메모리;를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 적어도 하나의 IoT 장치의 등록 정보를 수신하고, 서버에게, 상기 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 전송하고, 상기 서버로부터 제 1 토큰을 수신하고, 상기 적어도 하나의 IoT 장치의 등록 정보에 기반하여 생성된 적어도 하나의 제 2 토큰을 이용하여 적어도 하나의 제 3 토큰을 생성한 서버에게, 상기 제 1 토큰을 포함하는 인증 정보 요청을 전송하고, 상기 서버로부터 상기 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 수신하고, 및 상기 적어도 하나의 IoT 장치에게 상기 제 3 토큰을 포함하는 인증 정보를 전송하도록 하는 인스트럭션(instruction)들을 저장할 수 있다.
다양한 실시예에 따라서, IoT 장치를 등록하는 방법은, 적어도 하나의 IoT 장치의 등록 정보를 수신하는 동작, 서버에게, 상기 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 전송하는 동작, 상기 서버로부터 제 1 토큰을 수신하는 동작, 상기 적어도 하나의 IoT 장치의 등록 정보에 기반하여 생성된 적어도 하나의 제 2 토큰을 이용하여 적어도 하나의 제 3 토큰을 생성한 서버에게, 상기 제 1 토큰을 포함하는 인증 정보 요청을 전송하는 동작, 상기 서버로부터 상기 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 수신하는 동작, 및 상기 적어도 하나의 IoT 장치에게 상기 제 3 토큰을 포함하는 인증 정보를 전송하는 동작을 포함할 수 있다.
다양한 실시예에 따라서, 서버는, 적어도 하나의 프로세서 및 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 제 1 전자 장치로부터, 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 수신하고, 상기 인증 정보 생성 요청에 기반하여 인증 정보에 대한 접근에 이용되는 제 1 토큰을 생성하여, 상기 제 1 토큰을 상기 제 1 전자 장치 및 제 2 전자 장치에게 전송하고, 상기 제 2 전자 장치로부터 상기 제 1 토큰을 수신하면, 상기 적어도 하나의 IoT 장치의 등록 정보를 전송하고, 상기 제 2 전자 장치로부터 상기 적어도 하나의 IoT 장치의 등록 정보에 기반하여 획득된 적어도 하나의 제 2 토큰을 수신하고, 상기 적어도 하나의 제 2 토큰에 대응하는 적어도 하나의 제 3 토큰을 생성하여, 상기 제 1 전자 장치에게 상기 적어도 하나의 제 3 토큰이 생성되었음을 알리는 정보를 전송하고, 상기 제 1 전자 장치로부터 상기 제 1 토큰을 수신하면, 상기 제 1 전자 장치에게 상기 적어도 하나의 제 3 토큰을 전송하도록 하는 인스트럭션(instruction)들을 저장할 수 있다.
다양한 실시예에 따라서, 전자 장치는, 디스플레이, 적어도 하나의 프로세서 및 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 적어도 하나의 IoT 장치의 개수 또는 설치 시간 중 적어도 하나를 포함하는 등록 정보를 수신하여, 상기 디스플레이 상에 표시하고, 상기 등록 정보에 대한 확인을 나타내는 입력을 수신하고, 상기 입력의 수신에 기반하여, 외부 서버에게 상기 적어도 하나의 IoT 장치 각각에 대응하는 적어도 하나의 토큰 생성의 요청을 전송하고, 상기 외부 서버로부터, 상기 적어도 하나의 토큰을 수신하고, 상기 수신된 적어도 하나의 토큰을, IoT 서버로 전송하도록 하는 인스트럭션(instruction)들을 저장할 수 있다.
다양한 실시예에 따라서, 사용자 계정으로 등록되어 있지 않은 전자 장치에서, 사용자의 인증 정보를 직접 공유하지 않고도 IoT 장치를 사용자 계정으로 등록할 수 있다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치의 블럭도이다.
도 2a 및 2b는, 다양한 실시예들에 따른, 시스템에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도들이다.
도 3은, 다양한 실시예들에 따른, 시스템에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도들이다.
도 4는, 다양한 실시예들에 따른, 전자 장치에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도이다.
도 5는, 다양한 실시예들에 따른, 적어도 하나의 IoT 장치의 등록 정보를 수신하기 위한 화면들을 도시하는 도면이다.
도 6은, 다양한 실시예들에 따른, 전자 장치에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도이다.
도 7은, 다양한 실시예들에 따른, 적어도 하나의 IoT 장치의 등록 정보를 수신하기 위한 화면들을 도시하는 도면이다.
도 8는, 다양한 실시예들에 따른, 적어도 하나의 IoT 장치의 등록 정보를 수신하기 위한 화면들을 도시하는 도면이다.
도 9는, 다양한 실시예들에 따른, 적어도 하나의 IoT 장치의 등록 정보를 수신하기 위한 화면들을 도시하는 도면이다.
도 10은, 다양한 실시예들에 따른, 적어도 하나의 IoT 장치가 등록되는 과정을 나타내는 화면들을 도시하는 도면이다.
도 11은, 다양한 실시예들에 따른, 서버에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도이다.
도 1 은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블럭도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나, 하나 이상의 다른 구성 요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들은 하나의 통합된 회로로 구현될 수 있다. 예를 들면, 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)은 표시 장치(160)(예: 디스플레이)에 임베디드된 채 구현될 수 있다
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 추가적으로 또는 대체적으로, 보조 프로세서(123)은 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 장치(150)은, 예를 들면, 마이크, 마우스, 키보드, 또는 디지털 펜(예:스타일러스 펜)을 포함할 수 있다.
음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 장치(155)는, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있고, 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
표시 장치(160)는 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 표시 장치(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 표시 장치(160)는 터치를 감지하도록 설정된 터치 회로(touch circuitry), 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 센서 회로(예: 압력 센서)를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102)) (예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)이 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(178)은, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(388)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성 요소(예: 단일 칩)으로 통합되거나, 또는 서로 별도의 복수의 구성 요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 하나의 안테나를 포함할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC)이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부 전자 장치들(102, 104, or 108) 중 하나 이상의 외부 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2a는, 다양한 실시예들에 따른, 시스템에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도들이다. 예를 들어, 제 1 서버(108)는 IoT 장치들을 관리하는 서버일 수 있고, 제 2 서버(200)는 사용자의 계정을 관리하는 서버일 수 있다. 구현에 따라, 제 1 서버(108) 및 제 2 서버(200)는, 물리적 또는 논리적으로 구분될 수 있다. 또는, 제 1 서버(108) 및 제 2 서버(200)의 적어도 일부는 물리적 또는 논리적으로 통합되도록 구현될 수도 있다.
다양한 실시예에 따라서, 제 1 전자 장치(101)(예: 프로세서(120))는, 201 동작에서, 적어도 하나의 IoT 장치의 등록 정보를 수신할 수 있다. 전자 장치(101)가 등록 정보를 획득하는 것은, 예를 들어 전자 장치(101)에 포함된 입력 장치(150)를 통해 등록 정보를 입력 받는 것을 의미할 수 있다. 예를 들어, 적어도 하나의 IoT 장치의 등록 정보는, 제 1 서버(108)에 등록하고자 하는 IoT 장치의 개수에 대한 정보, IoT 장치를 등록하는 시간에 대한 정보 또는 제 2 전자 장치(104)에서 등록 정보를 제공하는 타입(예를 들어, QR code, E-mail)에 관한 정보일 수 있다. 예를 들어, 제 1 전자 장치(101)는, IoT 장치를 설치하고자 하는 인원이 소지한 전자 장치 일 수 있다. 제 2 전자 장치(104)는, IoT 장치의 설치를 요청 또는 허락하는 인원이 소지한 전자 장치일 수 있다.
다양한 실시예에 따라서, 전자 장치(101)는, 203 동작에서, 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 제 1 서버(108)로 전송할 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)(예: 서버(108))는, 205 동작에서, 제 1 토큰을 생성할 수 있다. 전자 장치(101)로부터 인증 정보 생성 요청이 수신되면, 서버(108)는, 인증 정보를 저장하기 위한 저장소를 생성하고, 생성된 저장소의 접근에 이용되는 제 1 토큰을 생성할 수 있다. 제 1 토큰은, 추후 다른 전자 장치로부터 인증 정보에 대한 접근에 대한 권한을 확인하는 과정에서 이용될 수 있으며, 제 1 토큰의 생성 방식에는 제한이 없다.
다양한 실시예에 따라서, 제 1 서버(108)는, 207 동작에서, 제 1 토큰을 제 1 전자 장치(101)에게 전송할 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 209 동작에서, 제 1 토큰을 제 2 전자 장치(104)에게 전송할 수 있다. 예를 들어, IoT 계정 관련 서비스를 제공하는 어플리케이션이 제 2 전자 장치(104)에 설치되어 있는 경우, 제 1 서버(108)는 상기 IoT 계정 관련 서비스를 제공하는 어플리케이션의 알림(notification) 형태로, 제 2 전자 장치(104)에게 제 1 토큰을 전송할 수 있다. 또는, 제 1 서버(108)는, 이메일의 형태로 제 1 토큰을 전송할 수 있다. 다른 예를 들어, 등록 정보를 제공하는 타입이 QR code로 설정된 경우, 209 동작은 생략될 수 있으며, 제 2 전자 장치(104)가 제 1 전자 장치(101)에서 디스플레이되는 QR code를 읽음(예: 촬영)으로써 제 1 토큰을 수신할 수 있다.
다양한 실시예에 따라서, 제 2 전자 장치(104)는, 211 동작에서, 제 1 토큰을 포함하는 적어도 하나의 IoT 장치의 등록 정보 요청을 전송할 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 213 동작에서, 적어도 하나의 IoT 장치의 등록 정보를 제 2 전자 장치(104)에게 전송할 수 있다. 예를 들어, 제 2 전자 장치(104)로부터 적어도 하나의 IoT 장치의 등록 정보 요청을 수신하면, 제 1 서버(108)는, 수신된 등록 정보 요청에 포함된 제 1 토큰이, 205 동작에서 생성된 제 1 토큰과 일치하는 경우 적어도 하나의 IoT 장치의 등록 정보를 전송할 수 있다. 이에 따라, 제 1 서버(108)가 제 1 토큰을 전송한 전자 장치만이 IoT 장치의 등록 정보를 조회할 수 있다.
다양한 실시예에 따라서, 제 2 전자 장치(104)는, 215 동작에서, 적어도 하나의 IoT 장치의 등록 정보에 기반하여, 제 2 서버(200)를 통해 적어도 하나의 제 2 토큰을 획득할 수 있다. 예를 들어, 제 1 서버(108)로부터 수신된 적어도 하나의 IoT 장치의 등록 정보는 등록하고자 하는 IoT 장치의 개수에 대한 정보를 포함할 수 있으며, 제 2 전자 장치(104)는 등록하고자 하는 IoT 장치의 개수만큼 제 2 토큰을 획득할 수 있다. 각각의 제 2 토큰은 액세스 토큰(access token)과 리프레쉬 토큰(refresh token)으로 구성될 수 있다. 다양한 실시예에서, 제 2 전자 장치(104)는, 등록 정보의 적어도 일부를 포함하는 화면을 표시할 수도 있다. 제 2 전자 장치(104)는, 제 2 토큰의 생성 명령을 획득할 수 있으며, 이에 대응하여 제 2 서버(200)로 제 2 토큰의 생성 요청을 전송할 수 있다. 제 2토큰의 생성 요청에는, 예를 들어 설치되어야 할 IoT 장치의 개수에 대한 정보가 포함될 수도 있다. 이 경우, 제 2 서버(200)는, 설치되어야 할 IoT 장치의 개수에 대한 정보에 기반하여, 해당 개수대로 제 2 토큰을 생성할 수 있다. 제 2 토큰은, 이에 따라 적어도 하나 이상일 수 있으며, 적어도 하나의 IoT 장치 각각에 대응될 수 있다.
다양한 실시예에 따라서, 제 2 전자 장치(104)는, 217 동작에서, 획득한 적어도 하나의 제 2 토큰을 전송할 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 219 동작에서, 적어도 하나의 제 2 토큰을 저장하고, 적어도 하나의 제 2 토큰과 일대일 대응하는 적어도 하나의 제 3 토큰을 생성할 수 있다. 제 1 서버(108)에서 생성된 적어도 하나의 제 3 토큰은, 제 2 서버(200)에서 생성된 적어도 하나의 제 2 토큰과 일대일 대응할 뿐, 제 2 토큰과는 상이하다. 이에 따라, 적어도 하나의 제 3 토큰은 제 1 서버(108)에서만 유효하며, 제 1 서버(108)가 아닌 서버에서는 유효하지 않을 수 있다. 예를 들어, 제 3 토큰은 제 2 토큰의 액세스 토큰과 리프레쉬 토큰에 대응하는 액세스 토큰'(access token')과 리스레쉬 토큰'(refresh token')으로 구성될 수 있다. 예를 들어, 219 동작 이후의 동작에서, 제 3 토큰은 IoT 등록에 이용되고, 등록 이후 만료되는 임시 인증 정보일 수 있다. 액세스 토큰의 의 문자는, 생성된 토큰에 대응하여 생성한 임시의 토큰을 나타내기 위하여 이용될 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 221 동작에서, 인증 정보가 생성되었음을 알리는 정보를 전송할 수 있다. 예를 들어, 인증 정보는 적어도 하나의 제 3 토큰일 수 있다.
다양한 실시예에 따라서, 제 1 전자 장치(101)는, 223 동작에서, 제 1 토큰을 포함하는 인증 정보 요청을 전송할 수 있다. 제 1 토큰은, 207 동작에서 제 1 서버(108)로부터 수신한 토큰으로, 인증 정보를 조회할 수 있는 권한을 확인하는데 이용될 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 225 동작에서, 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 전송할 수 있다. 제 1 전자 장치(101)로부터 수신된 인증 정보 요청에 포함된 제 1 토큰이 제 1 서버(108)에서 생성된 제 1 토큰과 일치하는 경우, 제 1 서버(108)는 제 1 전자 장치(101)에게 인증 정보를 전송할 수 있다. 이에 따라, 제 1 서버(108)가 제 1 토큰을 전송한 전자 장치만이 인증 정보를 수신할 수 있다.
도 2b는, 다양한 실시예들에 따른, 시스템에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도들이다. 예를 들어, 제 1 서버(108)는 IoT 장치들을 관리하는 서버일 수 있고, 제 2 서버(200)는 사용자의 계정을 관리하는 서버일 수 있다.
다양한 실시예에 따라서, 제 1 전자 장치(101)(예: 프로세서(120))는, 231 동작에서, 적어도 하나의 IoT 장치의 등록 정보를 획득할 수 있다. 231 동작은, 도 2a의 201 동작일 수 있다.
다양한 실시예에 따라서, 제 1 전자 장치는, 233 동작에서, 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 전송할 수 있다. 233 동작은, 도 2a의 203 동작일 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)(예: 서버(108))는, 235 동작에서, 제 1 토큰을 생성할 수 있다. 235 동작은, 도 2a의 205 동작일 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 237 동작에서, 제 1 토큰을 제 1 전자 장치(101)에게 전송할 수 있다. 237 동작은, 도 2a의 207 동작일 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 239 동작에서, 제 1 토큰을 제 2 전자 장치(104)(예: 전자 장치(104))에게 전송할 수 있다. 예를 들어, 231 동작에서 수신한 등록 정보에 E-mail 주소가 포함되어 있는 경우, 제 1 서버(108)는, 제 2 서버(200)에 접속하기 위한 웹 주소를 포함하는 E-mail과 제 1 토큰을 전송할 수 있다. 다른 예를 들어, 231 동작에서 수신한 등록 정보에 사용자 장치의 전화번호가 포함되어 있는 경우, 제 1 서버(108)는, 제 2 서버(200)에 접속하기 위한 웹 주소를 포함하는 SMS와 제 1 토큰을 전송할 수 있다.
다양한 실시예에 따라서, 제 2 전자 장치(104)는, 241 동작에서, 제 1 토큰을 이용하여 적어도 하나의 IoT 장치의 등록 정보를 확인하고, 제 2 서버(200)에 대한 ID/PASSWORD를 수신할 수 있다. 예를 들어, 제 2 전자 장치(104)는, E-mail 또는 SMS에 포함된 웹 주소를 선택하는 사용자 입력에 따라, 적어도 하나의 IoT 장치의 등록 정보를 확인할 수 있다. 그리고, 제 2 전자 장치(104)는 웹 주소에 제 2 서버(200)의 계정에 로그인하는 ID/PASSWORD를 입력하는 사용자 입력을 수신할 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 243 동작에서, 제 2 서버(200)에 대한 ID/PASSWORD 및 적어도 하나의 IoT 장치의 등록 정보에 기반하여, 제 2 서버(200)를 통해 적어도 하나의 제 2 토큰을 획득하여 저장할 수 있다. 예를 들어, 241 동작에서 제 2 전자 장치(104)에 입력된 ID/PASSWORD로 제 2 서버(200)의 계정에 로그인되면, 제 1 서버(108)는 적어도 하나의 IoT 장치의 등록 정보 기반한 적어도 하나의 제 2 토큰을 획득할 수 있다. 예를 들어, 적어도 하나의 IoT 장치의 등록 정보는 등록하고자 하는 IoT 장치의 개수에 대한 정보를 포함할 수 있으며, 제 1 서버(108)는 등록하고자 하는 IoT 장치의 개수만큼 제 2 토큰을 획득할 수 있다. 각각의 제 2 토큰은 액세스 토큰(access token)과 리프레쉬 토큰(refresh token)으로 구성될 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 245 동작에서, 적어도 하나의 제 2 토큰과 일대일 대응하는 적어도 하나의 제 3 토큰을 생성할 수 있다. 제 1 서버(108)에서 생성된 적어도 하나의 제 3 토큰은, 제 2 서버(200)에서 생성된 적어도 하나의 제 2 토큰과 일대일 대응할 뿐, 제 2 토큰과는 상이하다. 이에 따라, 적어도 하나의 제 3 토큰은 제 1 서버(108)에서만 유효하며, 제 1 서버(108)가 아닌 서버에서는 유효하지 않을 수 있다. 예를 들어, 제 3 토큰은 제 2 토큰의 액세스 토큰과 리프레쉬 토큰에 대응하는 액세스 토큰'(access token')과 리스레쉬 토큰'(refresh token')으로 구성될 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 247 동작에서, 인증 정보가 생성되었음을 알리는 정보를 전송할 수 있다. 247 동작은, 도 2a의 221 동작일 수 있다.
다양한 실시예에 따라서, 제 1 전자 장치(101)는, 249 동작에서, 제 1 토큰을 포함하는 인증 정보 요청을 전송할 수 있다. 249 동작은, 도 2a의 223 동작일 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 251 동작에서, 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 전송할 수 있다. 251 동작은, 도 2a의 225 동작일 수 있다.
도 3은, 다양한 실시예들에 따른, 시스템에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도들이다. 도 3의 301 내지 311 동작들은 도 2a의 225 동작 이후에 수행되거나, 도 2b의 251 동작 이후에 수행될 수 있다.
다양한 실시예에 따라서, 제 1 전자 장치(101)(예: 프로세서(120))는, 301 동작에서, 제 3 토큰을 포함하는 인증 정보를 전송할 수 있다. 제 1 서버(108)로부터 수신된 적어도 하나의 제 3 토큰 중 하나의 제 3 토큰을 포함하는 인증 정보를 하나의 IoT 장치(300)에게 전송할 수 있다.
다양한 실시예에 따라서, IoT 장치(300)는, 303 동작에서, 제 1 전자 장치(101)로부터 수신한 인증 정보에 포함된 제 3 토큰을 이용하여 IoT 장치(300)를 제 1 서버(108)에 등록할 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 305 동작에서, 제 3 토큰을 만료시킬 수 있다.
다양한 실시예에 따라서, IoT 장치(300)는, 307 동작에서, 새로운 토큰에 대한 요청을 전송할 수 있다. 예를 들어, IoT 장치(300)가 가지는 토큰이 유효한 경우에만 제 1 서버에 등록된 상태일 수 있으므로, 305 동작에서 제 3 토큰이 만료되면, 재등록을 위한 새로운 토큰에 대한 요청을 전송할 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 309 동작에서, 제 3 토큰에 대응하는 제 2 토큰을 전송할 수 있다. 예를 들어, 제 3 토큰은 (예를 들어, 도 2a의 219 동작 또는 도 2b의 245 동작에서) 제 2 토큰과 일대일 대응하도록 생성되었으므로, 제 1 서버(108)는 제 3 토큰과 대응하는 제 2 토큰을 선택하여 전송할 수 있다.
다양한 실시예에 따라서, IoT 장치(300)는, 311 동작에서, 제 2 토큰을 이용하여 IoT 장치(300)를 제 1 서버에 등록할 수 있다.
다양한 실시예에 따라서, 제 1 서버(108)는, 311 동작에서, 저장된 제 2 토큰 및 제 3 토큰을 삭제할 수 있다. 제 1 서버(108)에 저장된 제 2 토큰 및 제 3 토큰을 삭제함으로써 사용자의 인증 정보에 대한 보안을 강화할 수 있다.
도 3은 하나의 IoT 장치(300)로 제 1 전자 장치(101)가 제 3 토큰을 포함하는 인증 정보를 송신하는 것과 같이 도시되어 있지만 이는 단순히 설명의 편의를 위한 것으로, 설치하고자 하는 IoT 장치가 복수 개인 경우에는, 제 1 전자 장치(101)는 복수 개의 제 3 토큰 각각을 복수 개의 IoT 장치 각각으로 전송할 수 있다. 여기에서, 복수 개의 제 3 토큰 각각은 상이할 수 있다.
도 4는, 다양한 실시예들에 따른, 전자 장치에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도이다. 도 4의 실시예는 도 5를 참조하여 더욱 상세하게 설명하도록 한다. 도 5는 다양한 실시예에 따른, 적어도 하나의 IoT 장치의 등록 정보를 수신하기 위한 화면을 도시하는 도면이다.
다양한 실시예에 따라서, 전자 장치(101)(예: 프로세서(120))는, 401 동작에서, 적어도 하나의 IoT 장치의 등록 정보를 획득할 수 있다. 전자 장치(101)가 등록 정보를 획득하는 것은, 예를 들어 전자 장치(101)에 포함된 입력 장치(150)를 통해 등록 정보를 입력받는 것을 의미할 수 있다. 예를 들어, 도 5에서와 같이, 전자 장치(101)는, QR code(511-1), Application(511-3), SMS(511-5) 또는 E-mail(511-7)를 포함하는 알림 방법(511), 설치 대수(513) 및 설치 시간(515)을 입력받기 위한 UI를 통해 등록 정보를 입력받을 수 있다. 예를 들어, 알림 방법(511)중 QR code(511-1)를 선택하는 것은 외부 전자 장치(예를 들어, 도 2b의 제 2 전자 장치(104))가 QR code를 스캔하여 제 1 토큰을 수신함으로써 등록 정보를 수신하는 방법을 선택하는 것을 의미할 수 있다. 예를 들어, 알림 방법(511)중 Application(511-3)을 선택하는 것은 외부 전자 장치가 제 1 토큰을 포함하는 어플리케이션의 알림을 수신함으로써 등록 정보를 수신하는 방법을 선택하는 것을 의미할 수 있다. 예를 들어, 알림 방법(511) 중 SMS(511-5)를 선택하는 것은 외부 전자 장치가 제 1 토큰을 포함하는 SMS를 수신함으로써 등록 정보를 수신하는 방법을 선택하는 것을 의미할 수 있다. 예를 들어, 알림 방법(511) 중 E-mail(511-7)을 선택하는 것은 외부 전자 장치가 제 1 토큰을 포함하는 E-mail을 수신함으로써 등록 정보를 수신하는 방법을 선택하는 것을 의미할 수 있다. 예를 들어, 설치 대수(513)는 서버(예를 들어, 도 2a의 제 1 서버)에 등록하고자 하는 적어도 하나의 IoT 장치의 개수를 의미할 수 있다. 전자 장치(101)는, 설치 대수에 대응하는 인증 정보를 요청 및 수신할 수 있다. 예를 들어, 설치 시간(515)을 선택하는 것은 411 동작에서 IoT 장치에게 전송하는 제 3 토큰의 유효 시간을 결정하는 것을 의미할 수 있다. 예를 들어, 설치 시간이 9월 1일 12:00인 경우, 제 3 토큰은 9월 1일 13:00까지 유효할 수 있다.
다시 도 4를 참조하면, 다양한 실시예에 따라서, 전자 장치(101)는, 403 동작에서, 서버(예를 들어, 도 2a의 제 1 서버(108))에게 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 전송할 수 있다.
다양한 실시예에 따라서, 전자 장치(101)는, 405 동작에서, 서버로부터 제 1 토큰을 수신할 수 있다. 예를 들어, 제 1 토큰은, 서버에 저장된 인증 정보를 조회하기 위하여 이용되는 토큰으로, 서버에서 생성될 수 있다.
다양한 실시예에 따라서, 전자 장치(101)는, 407 동작에서, 적어도 하나의 IoT 장치의 등록 정보에 기반하여 생성된 적어도 하나의 제 2 토큰을 이용하여 적어도 하나의 제 3 토큰을 생성한 서버에게, 제 1 토큰을 포함하는 인증 정보 요청을 전송할 수 있다. 제 1 토큰이 인증 정보를 조회할 권한을 가지므로, 전자 장치(101)는, 인증 정보 요청이 제 1 토큰을 포함하도록 할 수 있다.
다양한 실시예에 따라서, 전자 장치(101)는, 409 동작에서, 서버로부터 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 수신할 수 있다. 예를 들어, 적어도 하나의 제 3 토큰은, 적어도 하나의 제 2 토큰과 일대일 대응하도록 생성된 토큰일 수 있다. 이에 따라, 제 3 토큰은 서버에서 제 2 토큰과 동일하게 기능할 수 있다.
다양한 실시예에 따라서, 전자 장치(101)는, 411 동작에서, 적어도 하나의 IoT 장치에게 제 3 토큰을 포함하는 인증 정보를 전송할 수 있다. 예를 들어, 전자 장치(101)는, 적어도 하나의 IoT 장치 각각에게, 적어도 하나의 제 3 토큰 중 하나의 제 3 토큰을 포함하는 인증 정보를 각각 전송할 수 있다.
도 6은, 다양한 실시예들에 따른, 전자 장치에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도이다. 도 6의 실시예는 도 7을 참조하여 더욱 상세하게 설명하도록 한다. 도 7은, 다양한 실시예들에 따른, 적어도 하나의 IoT 장치의 등록 정보를 수신하기 위한 화면들을 도시하는 도면이다.
다양한 실시예에 따라서, 전자 장치(104)(예: 전자 장치(104))는, 601 동작에서, 적어도 하나의 IoT 장치의 개수 또는 설치 시간 중 적어도 하나를 포함하는 등록 정보를 수신하여 디스플레이 상에 디스플레이할 수 있다. 예를 들어, 전자 장치(104)에 IoT 계정과 관련된 어플리케이션이 설치되어 있는 경우, 전자 장치(104)는, 해당 어플리케이션의 알림과 함께 수신된 제 1 토큰을 이용하여 등록 정보를 수신하여 디스플레이할 수 있다. 예를 들어, 전자 장치(104)에 IoT 계정과 관련된 어플리케이션이 설치되어 있지 않은 경우, 전자 장치(104)는 QR 코드를 스캔하여 획득한 제 1 토큰을 이용하여 등록 정보를 수신하여 디스플레이할 수 있다.
예를 들어, 도 7(a)에서와 같이, 전자 장치(104)는, 전자 장치(101)에서 디스플레이되는 QR code(701)를 스캔(703)(또는, 촬영)하여 제 1 토큰을 획득할 수 있다. 그리고, 전자 장치(104)는 획득된 제 1 토큰을 이용하여 등록 정보를 수신할 수 있다. 전자 장치(104)는 등록 정보를 수신하면, 도 7(b)에서와 같은, IoT 장치의 개수를 나타내는 정보(711)와 IoT 장치의 설치 시간을 나타내는 정보(713)를 디스플레이 상에 디스플레이할 수 있다.
도 7에서는, 설치 시간을 나타내는 정보(713)가 특정 시각을 나타내는 것과 같이 도시되어 있지만, 이는 단순히 예시적인 것으로 제 1 전자 장치(101) 및 제 2 전자 장치(104)는, 시간 기간을 나타내는 등록 정보를 전송 또는 관리할 수도 있다. 등록 정보의 시간 기간은, 예를 들어 제 3 토큰의 유효 기간과도 연관될 수도 있다.
다시 도 6을 참조하면, 603 과정에서, 다양한 실시예에 따라서, 전자 장치(104)는 등록 정보에 대한 확인을 나타내는 입력을 수신할 수 있다. 예를 들어, 도 7(b)에서와 같이, 적어도 하나의 IoT 장치의 등록 정보(711, 713)를 디스플레이하는 동안, 사용자 계정을 로그인하기 위한 ID(715) 및 PASSWORD(717)를 입력받을 수 있다.
다시 도 6을 참조하면, 605 과정에서, 다양한 실시예에 따라서, 전자 장치(104)는 입력의 수신에 기반하여, 외부 서버(예: 도 3의 제 2 서버(300))에게 적어도 하나의 IoT 장치 각각에 대응하는 적어도 하나의 토큰 생성의 요청을 전송할 수 있다. 예를 들어, 외부 서버는, 사용자 계정을 관리하는 서버일 수 있으며, 도 7(b)에서와 같이, 사용자 계정을 로그인하기 위한 ID(715) 및 PASSWORD(717)를 입력받아 토큰 생성의 요청을 전송할 수 있다.
다시 도 6을 참조하면, 607 과정에서, 다양한 실시예에 따라서, 전자 장치(104)는 외부 서버로부터 적어도 하나의 토큰을 수신 할 수 있다. 예를 들어, 도 7(b)에서와 같이, 설치하고자 하는 IoT 장치가 5대 이고, 설치 시간이 9/1, 12:00이면, 전자 장치(1043)는 외부 서버로부터 9/1, 12:00 이후 설정된 시간이 경과하면 만료하는 5 개의 토큰을 수신할 수 있다. 5 개의 토큰은 각각 access token과 refresh token으로 구성될 수 있으며, 상이할 수 있다.
다시 도 6을 참조하면, 609 과정에서, 다양한 실시예에 따라서, 전자 장치(104)는 수신된 적어도 하나의 토큰을, IoT 서버(예: 도 2a의 제 1 서버(108))로 전송할 수 있다.
한편, 도 6 및 도 7에서는, 전자 장치(104)가 외부 서버에게 토큰 생성을 요청하고 토큰을 수신하여, IoT 서버에게 전송하는 것으로 설명하였으나, 다양한 실시예에 따라서, IoT 서버가 전자 장치(104)를 통해 외부 서버에게 토큰 생성의 요청을 전송하고, 토큰을 수신할 수도 있다. 구체적으로, 전자 장치(104)에 IoT 계정과 관련된 어플리케이션이 설치되어 있지 않은 경우, IoT 서버는 전자 장치(104)에게 SMS 또는 E-Mail을 전송하여 토큰을 획득할 수 있다.
예를 들어, 도 8은 IoT 서버가 전자 장치(104)에게 전송한 SMS를 통해 토큰을 획득하는 실시예를 도시한다. 도 8(a)에서와 같이, 전자 장치(104)는, 사용자 계정을 로그인할 수 있는 서버에 대한 웹 주소(801)를 포함하는 SMS를 수신하여 디스플레이할 수 있고, SMS는 IoT 서버에서 생성된 제 1 토큰을 포함할 수 있다. 그리고, 전자 장치(104)는, 웹 주소(801)를 선택하는 사용자 입력에 따라, IoT 서버에게 제 1 토큰을 이용하여 등록 정보 요청을 전송할 수 있다. 그리고, 도 8(b)에서와 같이, 전자 장치(104)는, IoT 장치의 개수를 나타내는 정보(811)와 IoT 장치의 설치 시간을 나타내는 정보(813)를 디스플레이 상에 디스플레이할 수 있다. 그리고, 전자 장치(104)에서 사용자 계정을 로그인하기 위한 ID(815) 및 PASSWORD(817)를 입력하는 사용자 입력이 입력되면, IoT 장치는 외부 서버에게 토큰 생성의 요청을 전송하고, 적어도 하나의 토큰을 수신할 수 있다. 즉, IoT 서버가 전송한 SMS를 통해 전달된 웹 주소(801)에서 사용자 계정이 로그인되면, IoT 서버가 외부 서버에게 토큰 생성 요청을 전송하고, 토큰을 수신할 수 있다. 그리고, 전자 장치(104)는, 사용자 계정을 로그인하기 위한 ID(815) 및 PASSWORD(817)를 입력하는 사용자 입력에 따라, 도 8(c)에서와 같이, 예약이 완료되었음을 나타내는 정보(821)를 디스플레이 상에 디스플레이할 수 있다.
다른 예를 들어, 도 9은 IoT 서버가 전자 장치(104)에게 전송한 E-mail을 통해 토큰을 획득하는 실시예를 도시한다. 도 9(a)에서와 같이, 전자 장치(104)는, 사용자 계정을 로그인하기 위한 웹 페이지로 이동할 수 있는 아이콘(901)을 포함하는 E-mail을 수신하여 디스플레이할 수 있고, E-mail은 IoT 서버에서 생성된 제 1 토큰을 포함할 수 있다. 그리고, 전자 장치(104)는, 아이콘(901)을 선택하는 사용자 입력에 따라, IoT 서버에게 제 1 토큰을 이용하여 등록 정보 요청을 전송할 수 있다. 그리고, 도 9(b)에서와 같이, 전자 장치(104)는, IoT 장치의 개수를 나타내는 정보(911)와 IoT 장치의 설치 시간을 나타내는 정보(913)를 디스플레이 상에 디스플레이할 수 있다. 그리고, 전자 장치(104)에서 사용자 계정을 로그인하기 위한 ID(915) 및 PASSWORD(917)를 입력하는 사용자 입력이 입력되면, IoT 장치는 외부 서버에게 토큰 생성의 요청을 전송하고, 적어도 하나의 토큰을 수신할 수 있다. 즉, IoT 서버가 전송한 E-mail을 통해 전달된 웹 주소에서 사용자 계정이 로그인되면, IoT 서버가 외부 서버에게 토큰 생성 요청을 전송하고, 토큰을 수신할 수 있다. 그리고, 전자 장치(104)는, 사용자 계정을 로그인하기 위한 ID(915) 및 PASSWORD(917)를 입력하는 사용자 입력에 따라, 도 9(c)에서와 같이, 예약이 완료되었음을 나타내는 정보(921)를 디스플레이 상에 디스플레이할 수 있다.
도 10은, 다양한 실시예들에 따른, 적어도 하나의 IoT 장치가 등록되는 과정을 나타내는 화면들을 도시하는 도면이다. 예를 들어, 전자 장치(101)(예를 들어, 도 2a의 제 1 전자 장치(101))는 사용자 계정으로 등록되지 않은 전자 장치로 가정하고, 전자 장치(104)(예를 들어, 도 2a의 제 2 전자 장치(104))는 사용자 계정으로 등록된 전자 장치라고 가정할 수 있다. 전자 장치(101)는 사용자 계정으로 등록되어 있지 않지만, IoT 서버(예를 들어, 도 2b의 제 1 서버(108))로부터 수신한 임시 인증 정보를 이용하여 IoT 장치를 사용자 계정으로 등록할 수 있다. 구체적으로, IoT 서버는 사용자 계정과 관련된 서버(예를 들어, 도 2a의 제 2 서버(200))로부터 인증 정보를 획득할 수 있고, 획득된 인증 정보와 일대일 대응하는 임시 인증정보를 생성하고, 생성된 임시 인증 정보를 전자 장치(101)에게 전송할 수 있다. d예를 들어, 인증 정보는 적어도 하나의 제 2 토큰일 수 있고, 임시 인증 정보는 적어도 하나의 제 3 토큰일 수 있다. 전자 장치(101)는 임시 인증 정보를 이용하여 IoT 장치를 사용자 계정으로 등록시킬 수 있으므로, 사용자의 인증 정보가 전자 장치(101)에 전송되지 않을 수 있다. 예를 들어, 도 10(a)는, 사용자 계정으로 등록되어 있지 않은 전자 장치(101)가 임시 인증 정보를 이용하여 IoT 장치를 등록하는 UI일 수 있다. 도 10(b)는, 사용자 계정으로 등록되어 있는 전자 장치(104)에서 IoT 장치가 사용자 계정으로 등록되는 과정을 표시하는 UI일 수 있다. IoT 장치의 사용자 계정 등록이 완료되면, 도 10(c) 및 도 10(d)에서와 같이, 사용자 계정으로 등록되어 있지 않은 전자 장치(101)와 사용자 계정으로 등록되어 있는 전자 장치(104) 모두에서 등록된 IoT 장치의 등록 상태를 확인할 수 있다. 전자 장치(104)는, 등록된 IoT 장치의 기능을 추가, 삭제, 변경할 수 있는 UI를 제공할 수도 있다.
도 11은, 다양한 실시예들에 따른, 서버에 의한 적어도 하나의 IoT 장치를 등록하는 과정을 설명하기 위한 흐름도이다.
다양한 실시예에 따라서, 서버(108)(예: 서버(108))는, 1101 동작에서, 제 1 전자 장치(예: 도 2a의 제 1 전자 장치(101))로부터, 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 수신할 수 있다. 예를 들어, 적어도 하나의 IoT 장치의 등록 정보는, 서버에서 생성할 토큰의 유효 시간 등을 포함할 수 있다.
다양한 실시예에 따라서, 서버(108)는, 1103 동작에서, 인증 정보 생성 요청에 기반하여 인증 정보에 대한 접근에 이용되는 제 1 토큰을 생성하여, 제 1 토큰을 제 1 전자 장치(101) 및 제 2 전자 장치(예: 도 2a의 제 2 전자 장치(104))에게 전송할 수 있다. 한편, 제 1 전자 장치(101)가 제 1 토큰을 수신하여 제 2 전자 장치(104)에게 전달하는 경우, 서버(108)는 제 2 전자 장치(104)에게 제 1 토큰을 전송하지 않을 수 있다.
다양한 실시예에 따라서, 서버(108)는, 1105 동작에서, 제 2 전자 장치(104)로부터 제 1 토큰을 수신하면, 적어도 하나의 IoT 장치의 등록 정보를 전송할 수 있다. 예를 들어, 서버(108)는 제 2 전자 장치(104)로부터 수신된 제 1 토큰이, 1103 동작에서, 서버(108)가 생성한 제 1 토큰과 일치하는 경우, 적어도 하나의 IoT 장치의 등록 정보를 전송할 수 있다. 이에 따라, 서버(108)에서 생성한 제 1 토큰을 수신한 전자 장치만이 적어도 하나의 IoT 장치의 등록 정보를 조회할 수 있다.
다양한 실시예에 따라서, 서버(108)는, 1107 동작에서, 제 2 전자 장치(104)로부터 적어도 하나의 IoT 장치의 등록 정보에 기반하여 획득된 적어도 하나의 제 2 토큰을 수신할 수 있다. 적어도 하나의 제 2 토큰은 사용자 계정과 관련된 서버에서 생성될 수 있으며, 등록 정보에 포함된 IoT 장치의 개수만큼 생성될 수 있다. 예를 들어, 제 2 전자 장치(104)가 QR 코드 또는 사용자 계정과 관련된 어플리케이션의 알림으로 등록 정보를 수신한 경우, 제 2 전자 장치(104)로부터 제 2 토큰을 수신할 수 있다. 한편, 1107 동작에서는 제 2 전자 장치(104)로부터 제 2 토큰을 수신하는 것으로 설명하였으나, 서버(108)가 사용자 계정과 관련된 서버로부터 직접 제 2 토큰을 수신할 수도 있다. 예를 들어, 서버(108)가 SMS 또는 E-mail을 이용하여 사용자 계정과 관련된 서버의 웹 주소를 제2 전자 장치(104)에게 전송하고, 제 2 전자 장치(104)가 웹 주소에 접속하여 사용자 계정을 로그인하는 경우, 서버(108)는, 사용자 계정과 관련된 서버로부터 직접 적어도 하나의 제 2 토큰을 수신할 수도 있다.
다양한 실시예에 따라서, 서버(108)는, 1109 동작에서, 적어도 하나의 제 2 토큰에 대응하는 적어도 하나의 제 3 토큰을 생성하여, 제 1 전자 장치(101)에게 적어도 하나의 제 3 토큰이 생성되었음을 알리는 정보를 전송할 수 있다. 서버(108)가 적어도 하나의 제 2 토큰과 일대일 대응하는 적어도 하나의 제 3 토큰을 생성함으로써 적어도 하나의 제 2 토큰을 전자 장치로 전송하지 않을 수 있으므로, 사용자 계정에 대한 보안을 강화할 수 있다.
다양한 실시예에 따라서, 서버(108)는, 1111 동작에서, 제 1 전자 장치(101)로부터 제 1 토큰을 수신하면, 제 1 전자 장치(101)에게 적어도 하나의 제 3 토큰을 전송할 수 있다. 서버(108)가 제 3 토큰을 생성되었음을 알리는 정보를 전송하고, 제 1 토큰을 수신하면 제 3 토큰을 전송함으로써, 제 1 전자 장치(101)가 제 3 토큰을 조회할 수 있는 권한이 있는지 식별할 수 있다.
이에 따라, 사용자 계정과 관련된 서버에서 생성된 인증 정보(즉, 제 2 토큰)를 제 1 전자 장치(101)에게 전송하지 않고도 제 1 전자 장치(101)에서 적어도 하나의 IoT 장치를 등록할 수 있다.
다양한 실시예에 따라서, 전자 장치(101)는, 적어도 하나의 프로세서(예: 프로세서(120)) 및 메모리(예: 메모리(130))를 포함하고, 상기 메모리(예: 메모리(130))는, 실행 시에, 상기 적어도 하나의 프로세서(예: 프로세서(120))가, 적어도 하나의 IoT 장치의 등록 정보를 획득하고, 서버(108)에게, 상기 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 전송하고, 상기 서버로부터 제 1 토큰을 수신하고, 상기 적어도 하나의 IoT 장치의 등록 정보에 기반하여 생성된 적어도 하나의 제 2 토큰을 이용하여 적어도 하나의 제 3 토큰을 생성한 서버(108)에게, 상기 제 1 토큰을 포함하는 인증 정보 요청을 전송하고, 상기 서버로부터 상기 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 수신하고, 및 상기 적어도 하나의 IoT 장치에게 상기 제 3 토큰을 포함하는 인증 정보를 전송하도록 하는 인스트럭션(instruction)들을 저장할 수 있다.
다양한 실시예에 따라서, 상기 적어도 하나의 IoT 장치의 등록 정보는, 상기 적어도 하나의 IoT 장치의 개수, 상기 서버가 외부 전자 장치 또는 상기 전자 장치 중 적어도 하나에게 상기 제 1 토큰을 전송하는 타입, 또는 상기 적어도 하나의 제 3 토큰의 유효 시간을 설정하기 위한 정보를 포함할 수 있다.
다양한 실시예에 따라서, 상기 제 1 토큰을 전송하는 타입은, 큐알 코드(QR code), 이메일(E-mail) 또는 문자 메시지(SMS) 중 어느 하나일 수 있다.
다양한 실시예에 따라서, 상기 외부 전자 장치(104)는, 상기 서버로부터 상기 제 1 토큰을 수신하고, 상기 제 1 토큰을 이용하여 상기 적어도 하나의 IoT 장치의 등록 정보를 수신하고, 상기 적어도 하나의 IoT 장치의 등록 정보를 바탕으로 적어도 하나의 제 2 토큰을 획득하고, 상기 적어도 하나의 제 3 토큰은, 상기 외부 전자 장치에서 획득한 적어도 하나의 제 2 토큰과 일대일 대응할 수 있다.
다양한 실시예에 따라서, 상기 적어도 하나의 제 2 토큰은 상기 적어도 하나의 IoT 장치의 개수만큼 생성될 수 있다.
다양한 실시예에 따라서, 상기 적어도 하나의 제 2 토큰은 액세스 토큰(access token) 및 리프레쉬 토큰(refresh token)을 포함할 수 있다.
다양한 실시예에 따라서, 상기 제 1 토큰은 상기 적어도 하나의 제 3 토큰을 조회할 수 있는 권한을 가지는 토큰일 수 있다.
다양한 실시예에 따라서, 상기 적어도 하나의 제 3 토큰은, 상기 적어도 하나의 제 3 토큰을 수신한 적어도 하나의 IoT 장치에서 등록이 수행되면, 만료될 수 있다.
다양한 실시예에 따라서, 전자 장치(101)에서 IoT 장치를 등록하는 방법에 있어서, 적어도 하나의 IoT 장치의 등록 정보를 획득하는 동작, 서버에게, 상기 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 전송하는 동작, 상기 서버로부터 제 1 토큰을 수신하는 동작 상기 적어도 하나의 IoT 장치의 등록 정보에 기반하여 생성된 적어도 하나의 제 2 토큰을 이용하여 적어도 하나의 제 3 토큰을 생성한 서버에게, 상기 제 1 토큰을 포함하는 인증 정보 요청을 전송하는 동작, 상기 서버로부터 상기 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 수신하는 동작 및 상기 적어도 하나의 IoT 장치에게 상기 제 3 토큰을 포함하는 인증 정보를 전송하는 동작을 포함할 수 있다.
다양한 실시예에 따라서, 상기 적어도 하나의 IoT 장치의 등록 정보는, 상기 적어도 하나의 IoT 장치의 개수, 상기 서버가 외부 전자 장치 또는 상기 전자 장치 중 적어도 하나에게 상기 제 1 토큰을 전송하는 타입, 또는 상기 적어도 하나의 제 3 토큰의 유효 시간을 설정하기 위한 정보를 포함할 수 있다.
다양한 실시예에 따라서, 상기 제 1 토큰을 전송하는 타입은, 큐알 코드(QR code), 이메일(E-mail) 또는 문자 메시지(SMS) 중 어느 하나일 수 있다.
다양한 실시예에 따라서, 상기 외부 전자 장치(104)는, 상기 서버(108)로부터 상기 제 1 토큰을 수신하고, 상기 제 1 토큰을 이용하여 상기 적어도 하나의 IoT 장치의 등록 정보를 수신하고, 상기 적어도 하나의 IoT 장치의 등록 정보를 바탕으로 적어도 하나의 제 2 토큰을 획득하고, 상기 적어도 하나의 제 3 토큰은, 상기 외부 전자 장치에서 획득한 적어도 하나의 제 2 토큰과 일대일 대응할 수 있다.
다양한 실시예에 따라서, 상기 적어도 하나의 제 2 토큰은 상기 적어도 하나의 IoT 장치의 개수만큼 생성될 수 있다.
다양한 실시예에 따라서, 상기 제 3 토큰은 액세스 토큰(access token) 및 리프레쉬 토큰(refresh token)을 포함할 수 있다.
다양한 실시예에 따라서, 상기 제 1 토큰은 상기 적어도 하나의 제 3 토큰을 조회할 수 있는 권한을 가지는 토큰일 수 있다.
다양한 실시예에 따라서, 상기 적어도 하나의 제 3 토큰은, 상기 적어도 하나의 제 3 토큰을 수신한 적어도 하나의 IoT 장치에서 등록이 수행되면, 만료될 수 있다.
다양한 실시예에 따라서, 서버(108)는, 적어도 하나의 프로세서 및 메모리(예: 메모리(130))를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가, 제 1 전자 장치(예: 전자 장치(101))로부터, 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 수신하고, 상기 인증 정보 생성 요청에 기반하여 인증 정보에 대한 접근에 이용되는 제 1 토큰을 생성하여, 상기 제 1 토큰을 상기 제 1 전자 장치(예: 전자 장치(101)) 및 제 2 전자 장치(예: 전자 장치(104))에게 전송하고, 상기 제 2 전자 장치(예: 전자 장치(104))로부터 상기 제 1 토큰을 수신하면, 상기 적어도 하나의 IoT 장치의 등록 정보를 전송하고, 상기 제 2 전자 장치(예: 전자 장치(104))로부터 상기 적어도 하나의 IoT 장치의 등록 정보에 기반하여 획득된 적어도 하나의 제 2 토큰을 수신하고, 상기 적어도 하나의 제 2 토큰에 대응하는 적어도 하나의 제 3 토큰을 생성하여, 상기 제 1 전자 장치(예: 전자 장치(101))에게 상기 적어도 하나의 제 3 토큰이 생성되었음을 알리는 정보를 전송하고, 상기 제 1 전자 장치(예: 전자 장치(101))로부터 상기 제 1 토큰을 수신하면, 상기 제 1 전자 장치(예: 전자 장치(101))에게 상기 적어도 하나의 제 3 토큰을 전송하도록 하는 인스트럭션(instruction)들을 저장할 수 있다.
다양한 실시예에 따라서, 상기 인스트럭션들은, IoT 장치(예: IoT 장치(300))로부터 제 3 토큰을 포함하는 등록 요청을 수신하면, 상기 IoT 장치(예: IoT 장치(300))를 상기 서버(108)에 등록하고, 상기 제 3 토큰을 만료시키고, 상기 IoT 장치(예: IoT 장치(300))로부터 토큰 발급 요청을 수신하여 상기 제 3 토큰과 대응하는 제 2 토큰을 전송할 수 있다.
다양한 실시예에 따라서, 상기 적어도 하나의 IoT 장치의 등록 정보는, 상기 적어도 하나의 IoT 장치의 개수, 상기 서버가 상기 제 1 전자 장치(예: 전자 장치(101)) 또는 제 2 전자 장치(예: 전자 장치(104) 중 적어도 하나에게 상기 제 1 토큰을 전송하는 타입, 또는 상기 적어도 하나의 제 3 토큰의 유효 시간을 설정하기 위한 정보를 포함할 수 있다.
다양한 실시예에 따라서, 상기 제 1 토큰을 전송하는 타입은, 큐알 코드(QR code), 이메일(E-mail) 또는 문자 메시지(SMS) 중 어느 하나일 수 있다.
다양한 실시예에 따라서, 전자 장치(예: 전자 장치(104))는, 디스플레이(예: 표시 장치(160)), 적어도 하나의 프로세서(예: 프로세서(120)) 및 메모리(예: 메모리(130))를 포함하고, 상기 메모리(예: 메모리(130))는, 실행 시에, 상기 적어도 하나의 프로세서(예: 프로세서(120))가, 적어도 하나의 IoT 장치의 개수 또는 설치 시간 중 적어도 하나를 포함하는 등록 정보를 수신하여, 상기 디스플레이(예: 표시 장치(160)) 상에 표시하고, 상기 등록 정보에 대한 확인을 나타내는 입력을 수신하고, 상기 입력의 수신에 기반하여, 외부 서버(예: 서버(108))에게 상기 적어도 하나의 IoT 장치 각각에 대응하는 적어도 하나의 토큰 생성의 요청을 전송하고, 상기 외부 서버(예: 서버(108))로부터, 상기 적어도 하나의 토큰을 수신하고, 상기 수신된 적어도 하나의 토큰을, IoT 서버로 전송하도록 하는 인스트럭션(instruction)들을 저장할 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나","A 또는 B 중 적어도 하나,""A, B 또는 C," "A, B 및 C 중 적어도 하나,"및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체 는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, 비일시적은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
Claims (15)
- 전자 장치 에 있어서,적어도 하나의 프로세서; 및메모리;를 포함하고, 상기 메모리는, 실행 시에, 상기 적어도 하나의 프로세서가,적어도 하나의 IoT 장치의 등록 정보를 획득하고,서버 에게, 상기 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 전송하고,상기 서버로부터 제 1 토큰을 수신하고,상기 적어도 하나의 IoT 장치의 등록 정보에 기반하여 생성된 적어도 하나의 제 2 토큰 을 이용하여 적어도 하나의 제 3 토큰 을 생성한 서버에게, 상기 제 1 토큰을 포함하는 인증 정보 요청을 전송하고,상기 서버로부터 상기 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 수신하고, 및상기 적어도 하나의 IoT 장치에게 상기 제 3 토큰을 포함하는 인증 정보를 전송하도록 하는 인스트럭션(instruction)들을 저장하는 전자 장치.
- 제 1 항에 있어서,상기 적어도 하나의 IoT 장치의 등록 정보는, 상기 적어도 하나의 IoT 장치의 개수, 상기 서버가 외부 전자 장치 또는 상기 전자 장치 중 적어도 하나에게 상기 제 1 토큰을 전송하는 타입 , 또는 상기 적어도 하나의 제 3 토큰의 유효 시간을 설정하기 위한 정보를 포함하는 것을 특징으로 하는 전자 장치.
- 제 2 항에 있어서,상기 제 1 토큰을 전송하는 타입은, 큐알 코드(QR code), 이메일(E-mail) 또는 문자 메시지(SMS) 중 어느 하나인 것을 특징으로 하는 전자 장치.
- 제 2 항에 있어서,상기 외부 전자 장치는,상기 서버로부터 상기 제 1 토큰을 수신하고, 상기 제 1 토큰을 이용하여 상기 적어도 하나의 IoT 장치의 등록 정보를 수신하고,상기 적어도 하나의 IoT 장치의 등록 정보를 바탕으로 적어도 하나의 제 2 토큰을 획득하고,상기 적어도 하나의 제 3 토큰은, 상기 외부 전자 장치에서 획득한 적어도 하나의 제 2 토큰과 일대일 대응하는 것을 특징으로 하는 전자 장치.
- 제 4 항에 있어서,상기 적어도 하나의 제 2 토큰은 상기 적어도 하나의 IoT 장치의 개수만큼 생성되는 것을 특징으로 하는 전자 장치.
- 제 4 항에 있어서,상기 적어도 하나의 제 2 토큰은 액세스 토큰(access token) 및 리프레쉬 토큰(refresh token)을 포함하는 것을 특징으로 하는 전자 장치.
- 제 1 항에 있어서,상기 제 1 토큰은 상기 적어도 하나의 제 3 토큰을 조회할 수 있는 권한을 가지는 토큰인 것을 특징으로 하는 전자 장치.
- 제 1 항에 있어서,상기 적어도 하나의 제 3 토큰은, 상기 적어도 하나의 제 3 토큰을 수신한 적어도 하나의 IoT 장치에서 등록이 수행되면, 만료되는 것을 특징으로 하는 전자 장치.
- 전자 장치에서 IoT 장치를 등록하는 방법에 있어서,적어도 하나의 IoT 장치의 등록 정보를 획득하는 동작;서버에게, 상기 적어도 하나의 IoT 장치의 등록 정보를 포함하는 인증 정보 생성 요청을 전송하는 동작;상기 서버로부터 제 1 토큰을 수신하는 동작;상기 적어도 하나의 IoT 장치의 등록 정보에 기반하여 생성된 적어도 하나의 제 2 토큰을 이용하여 적어도 하나의 제 3 토큰을 생성한 서버에게, 상기 제 1 토큰을 포함하는 인증 정보 요청을 전송하는 동작;상기 서버로부터 상기 적어도 하나의 제 3 토큰을 포함하는 인증 정보를 수신하는 동작; 및상기 적어도 하나의 IoT 장치에게 상기 제 3 토큰을 포함하는 인증 정보를 전송하는 동작;을 포함하는 방법.
- 제 9 항에 있어서,상기 적어도 하나의 IoT 장치의 등록 정보는, 상기 적어도 하나의 IoT 장치의 개수, 상기 서버가 외부 전자 장치 또는 상기 전자 장치 중 적어도 하나에게 상기 제 1 토큰을 전송하는 타입, 또는 상기 적어도 하나의 제 3 토큰의 유효 시간을 설정하기 위한 정보를 포함하는 것을 특징으로 하는 방법.
- 제 10 항에 있어서,상기 제 1 토큰을 전송하는 타입은, 큐알 코드(QR code), 이메일(E-mail) 또는 문자 메시지(SMS) 중 어느 하나인 것을 특징으로 하는 방법.
- 제 10 항에 있어서,상기 외부 전자 장치는,상기 서버로부터 상기 제 1 토큰을 수신하고, 상기 제 1 토큰을 이용하여 상기 적어도 하나의 IoT 장치의 등록 정보를 수신하고,상기 적어도 하나의 IoT 장치의 등록 정보를 바탕으로 적어도 하나의 제 2 토큰을 획득하고,상기 적어도 하나의 제 3 토큰은, 상기 외부 전자 장치에서 확득한 적어도 하나의 제 2 토큰과 일대일 대응하는 것을 특징으로 하는 방법.
- 제 12 항에 있어서,상기 적어도 하나의 제 2 토큰은 상기 적어도 하나의 IoT 장치의 개수만큼 생성되는 것을 특징으로 하는 방법.
- 제 12 항에 있어서,상기 제 3 토큰은 액세스 토큰(access token) 및 리프레쉬 토큰(refresh token)을 포함하는 것을 특징으로 하는 방법.
- 제 9 항에 있어서,상기 제 1 토큰은 상기 적어도 하나의 제 3 토큰을 조회할 수 있는 권한을 가지는 토큰인 것을 특징으로 하는 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180148402A KR20200068068A (ko) | 2018-11-27 | 2018-11-27 | IoT 장치를 등록하는 전자 장치, 서버 및 그 작동 방법 |
KR10-2018-0148402 | 2018-11-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020111488A1 true WO2020111488A1 (ko) | 2020-06-04 |
Family
ID=70853757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2019/012603 WO2020111488A1 (ko) | 2018-11-27 | 2019-09-27 | 아이오티 장치를 등록하는 전자 장치, 서버 및 그 작동 방법 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20200068068A (ko) |
WO (1) | WO2020111488A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022197088A1 (ko) * | 2021-03-16 | 2022-09-22 | 삼성전자 주식회사 | Iot 서비스를 제공하는 장치 및 그 방법 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230157023A (ko) * | 2022-05-09 | 2023-11-16 | 삼성전자주식회사 | 사물 인터넷 장치를 제어하는 전자 장치 및 그 동작 방법 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150073827A (ko) * | 2013-12-20 | 2015-07-01 | 삼성전자주식회사 | 홈 네트워크 시스템에서 홈 디바이스를 서버에 등록하는 장치 및 방법 |
KR20160045505A (ko) * | 2014-10-17 | 2016-04-27 | 삼성전자주식회사 | 사물 인터넷을 위한 단말 및 그 동작 방법 |
KR101688812B1 (ko) * | 2016-04-18 | 2016-12-22 | (주)케이사인 | 소유자 인증 서버 기반의 IoT 기기 인가관리 방법 및 시스템 |
JP2017146849A (ja) * | 2016-02-18 | 2017-08-24 | キヤノン株式会社 | 情報処理システム、情報処理装置、サーバ装置、情報処理システムの制御方法、及びプログラム |
JP2018084979A (ja) * | 2016-11-24 | 2018-05-31 | 株式会社リコー | 認可サーバ及びリソース提供システム |
-
2018
- 2018-11-27 KR KR1020180148402A patent/KR20200068068A/ko unknown
-
2019
- 2019-09-27 WO PCT/KR2019/012603 patent/WO2020111488A1/ko active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150073827A (ko) * | 2013-12-20 | 2015-07-01 | 삼성전자주식회사 | 홈 네트워크 시스템에서 홈 디바이스를 서버에 등록하는 장치 및 방법 |
KR20160045505A (ko) * | 2014-10-17 | 2016-04-27 | 삼성전자주식회사 | 사물 인터넷을 위한 단말 및 그 동작 방법 |
JP2017146849A (ja) * | 2016-02-18 | 2017-08-24 | キヤノン株式会社 | 情報処理システム、情報処理装置、サーバ装置、情報処理システムの制御方法、及びプログラム |
KR101688812B1 (ko) * | 2016-04-18 | 2016-12-22 | (주)케이사인 | 소유자 인증 서버 기반의 IoT 기기 인가관리 방법 및 시스템 |
JP2018084979A (ja) * | 2016-11-24 | 2018-05-31 | 株式会社リコー | 認可サーバ及びリソース提供システム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022197088A1 (ko) * | 2021-03-16 | 2022-09-22 | 삼성전자 주식회사 | Iot 서비스를 제공하는 장치 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20200068068A (ko) | 2020-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019221451A1 (en) | Method and an electronic device connecting plurality of electronic devices to server through hub | |
WO2019164339A1 (en) | Electronic device and method for sharing screen data | |
KR20190095582A (ko) | 다른 전자 장치의 인증을 수행하는 전자 장치와 이의 동작 방법 | |
WO2020197275A1 (en) | Method for installing subscriber profile and electronic device therefor | |
WO2021150037A1 (en) | Method for providing user interface and electronic device therefor | |
WO2020184987A1 (en) | Electronic device including secure integrated circuit | |
WO2021060745A1 (en) | Electronic device for updating firmware by using security integrated circuit and operation method thereof | |
WO2019164264A1 (en) | Electronic apparatus and operating method thereof | |
WO2019039740A1 (en) | METHOD FOR PROVIDING SERVICE UPDATE AND ELECTRONIC DEVICE SUPPORTING SAID METHOD | |
WO2021086012A1 (en) | Method for transmitting data based on multiple communication schemes and electronic device supporting same | |
WO2020166894A1 (en) | Electronic device and method for recommending word in same | |
WO2020060114A1 (ko) | 신분 정보를 제공하는 장치 및 그 시스템 | |
WO2015093902A1 (ko) | 스마트 홈 시스템의 피 제어 장치 검색 및 제어 방법과 장치 | |
WO2020111488A1 (ko) | 아이오티 장치를 등록하는 전자 장치, 서버 및 그 작동 방법 | |
WO2020096262A1 (ko) | 전자 장치, 그의 개인 정보 제공 방법 및 이를 기록한 컴퓨터 판독 가능 기록매체 | |
WO2020106076A1 (en) | Electronic device for scheduling wireless network service according to application and method of operating same | |
WO2020004805A1 (ko) | Nan 프로토콜에 기반한 네트워크 환경에서 데이터 통신을 위한 장치 및 방법 | |
WO2019083137A1 (ko) | 알림을 제어하기 위한 방법 및 그 전자 장치 | |
WO2020106091A1 (en) | Electronic device changing identification information based on state information and another electronic device identifying identification information | |
WO2020138909A1 (ko) | 콘텐트 공유 방법 및 그 전자 장치 | |
WO2020149555A1 (ko) | 암호화될 데이터의 정보량에 기반하여 암호화에 사용될 키를 선택하는 전자 장치 및 전자 장치의 동작 방법 | |
WO2019164204A1 (ko) | 전자 장치 및 그의 동작 방법 | |
WO2019203443A1 (ko) | 근거리 통신을 이용하여 디바이스들을 페어링하는 방법 및 이를 사용하는 전자 장치 | |
WO2019156411A1 (en) | Electronic device for connecting with external devices based on connection information and operating method thereof | |
WO2021101173A1 (ko) | 전자 장치 및 이를 이용한 근거리 통신 장치의 사용자 식별 정보 획득 방법 |
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: 19888826 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: 19888826 Country of ref document: EP Kind code of ref document: A1 |