CN115104283A - 电子设备和用于在电子设备中执行对等服务的方法 - Google Patents
电子设备和用于在电子设备中执行对等服务的方法 Download PDFInfo
- Publication number
- CN115104283A CN115104283A CN202180013887.6A CN202180013887A CN115104283A CN 115104283 A CN115104283 A CN 115104283A CN 202180013887 A CN202180013887 A CN 202180013887A CN 115104283 A CN115104283 A CN 115104283A
- Authority
- CN
- China
- Prior art keywords
- electronic device
- external electronic
- service
- communication
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
- H04W12/069—Authentication using certificates or pre-shared keys
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
- G06F21/445—Program or device authentication by mutual authentication, e.g. between devices or programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
- H04L9/0841—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- 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/3263—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
- H04L9/3268—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/041—Key generation or derivation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/047—Key management, e.g. using generic bootstrapping architecture [GBA] without using a trusted network node as an anchor
- H04W12/0471—Key exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/10—Integrity
- H04W12/108—Source integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
- H04W12/121—Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
- H04W12/122—Counter-measures against attacks; Protection against rogue devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/50—Secure pairing of devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
- H04L2209/805—Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Algebra (AREA)
- Pure & Applied Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
根据本文档的各种实施例,公开了一种用于在电子设备中执行P2P服务的电子设备和方法,该电子设备包括:通信模块;处理器;存储器;以及安全模块,其中存储器可以被配置为存储指令,该指令在被执行时使得处理器能够在对等(P2P)服务被请求时从外部电子设备接收公开秘钥,经由安全模块向外部电子设备发送基于接收的公开秘钥生成的认证证书链,通过使用存储在安全模块中的根认证证书来验证从外部电子设备接收的认证证书链,从外部电子设备接收外部电子设备的加密的信息,通过使用根据接收的认证证书链的验证结果生成的共享密钥来解密外部电子设备的加密的信息,并且基于外部电子设备的解密的信息,经由通信模块执行与外部电子设备的P2P服务。其他各种实施例也是可能的。
Description
技术领域
本公开的各种实施例涉及促进具有混合异构通信方案的电子设备之间的设备搜索和连接,以及以适当的通信方案安全地执行对等(P2P)服务。
背景技术
通常,电子设备配备有诸如蓝牙、NFC或Wi-Fi的短距离通信技术,并且电子设备之间的P2P服务的典型示例包括文件传输、移动热点连接或音乐共享。为了使用P2P服务,用户可以预先识别在对应的服务中使用什么通信方案。例如,文件传输细分为蓝牙文件传输,使用NFC的Android BeamTM,通过使用BLE(蓝牙低能耗)和Wi-Fi发送到设备,或Wi-Fi直连。
在基于短距离通信的P2P服务的情况下,通过比较电话号码来认证用户。例如,散列电话号码的部分数据可以与循环冗余校验(CRC)一起发送,并且可以与存储在对方设备(counterpart device)中的散列(hash)信息进行比较,从而根据它们是否匹配,可以认证用户。
发明内容
技术问题
各种P2P服务可以被设计成基于短距离通信方案来提供服务,并且可以包括依赖于通信方案的服务或通信特性。结果,对于具有相同特征的服务,对于每个通信方案,可能存在冗余的服务或通信特性。因此,为了使用特定的P2P服务,用户需要预先识别在对应的服务中使用什么通信方案。
此外,使用短距离通信方案的P2P服务有可能在用户之间的认证期间被中间人(man-in-the-middle,MITM)攻击设备而暴露个人信息。MITM攻击设备在执行认证的电子设备之间窃取数据,并且电子设备因此可以将MITM攻击设备识别为认证的外部电子设备,使得该外部电子设备可以继续连接通信。
根据本公开的各种实施例,当可以通过多种通信方案执行与外部电子设备的P2P服务时,可以通过考虑外部电子设备的属性信息和服务的特性来执行服务移交(handover)。
根据本公开的各种实施例,为了防止第三人的干预,例如在与电子设备之间的P2P通信相关的通信期间的信息窃取,可以与外部电子设备交换公开秘钥以验证证书,并且可以生成共享密钥以执行关于外部电子设备的认证。
技术解决方案
各种实施例可以提供一种能够对电子设备中的用户进行优化的加热控制的电子设备,以及一种基于电子设备中的用户反馈来控制加热的方法。根据本公开的各种实施例的电子设备可以包括通信模块、安全模块、可操作地连接到通信模块和安全模块的处理器、以及可操作地连接到处理器的存储器,其中存储器存储指令,这些指令被配置为当被执行时,使得处理器能够在对等(P2P)服务被请求时从外部电子设备接收公开秘钥,通过安全模块将基于接收的公开秘钥生成的认证证书链发送到外部电子设备,通过使用存储在安全模块中的根认证证书来验证从外部电子设备接收的认证证书链,从外部电子设备接收关于外部电子设备的加密的信息,通过使用基于验证接收的认证证书链的结果生成的共享密钥来解密关于外部电子设备的加密的信息,并且基于关于外部电子设备的解密的信息通过通信模块执行与外部电子设备的P2P服务。
根据本公开的各种实施例的电子设备可以包括至少一个通信模块、可操作地连接到该通信模块的处理器、以及可操作地连接到该处理器的存储器,其中该存储器存储指令,这些指令被配置为当被执行时,使得该处理器能够通过通信模块识别对外部电子设备的服务请求,对该外部电子设备执行认证,根据认证的结果控制通信模块建立与外部电子设备的第一短距离通信的连接,通过第一短距离通信接收关于外部电子设备的通信信息,基于识别的通信信息识别用于将服务与外部电子设备连接的第二短距离通信,以及控制通信模块通过第二短距离通信连接到外部电子设备。
根据本公开的各种实施例的用于在电子设备中执行对等(P2P)服务的方法可以包括:在P2P服务被请求时,从外部电子设备接收公开秘钥,向外部电子设备发送基于接收的公开秘钥生成的认证证书链,通过使用存储在安全模块中的根认证证书来验证从外部电子设备接收的认证证书链,从外部电子设备接收关于外部电子设备的加密的信息,通过使用基于验证接收的认证证书链的结果生成的共享密钥来解密关于外部电子设备的加密的信息,以及基于关于外部电子设备的解密的信息执行与外部电子设备的P2P服务。
根据本公开的各种实施例的用于在电子设备中执行对等(P2P)服务的方法可以包括:识别对外部电子设备的服务请求,对外部电子设备执行认证,根据认证的结果建立与外部电子设备的第一短距离通信的连接,通过第一短距离通信接收关于外部电子设备的通信信息,基于识别的通信信息识别用于与外部电子设备连接的第二短距离通信,并控制通过第二短距离通信连接外部电子设备和服务。
有益效果
根据本公开的各种实施例,在与外部电子设备的P2P服务期间,电子设备可以通过考虑外部电子设备的属性信息和服务的特性来执行服务移交,使得可以使用适合于对应的服务的通信方案。
根据本公开的各种实施例,可以通过使用作为电子设备和外部电子设备之间的相互认证的结果而生成的公开秘钥来执行认证,从而防止MITM攻击并增强通信连接的安全性。
附图说明
图1是根据本公开的各种实施例的网络环境中的电子设备的框图。
图2是示出根据本公开的各种实施例的电子设备配置的示例的框图。
图3是示出根据本公开的各种实施例的在电子设备中为P2P服务执行认证的操作的示例的流程图。
图4是示出根据本公开的各种实施例的操作的示例的流程图,在该操作中,电子设备执行与外部电子设备的P2P服务。
图5是示出根据本公开的各种实施例的软件配置的示例的框图。
图6是示出根据本公开的各种实施例的软件结构的示例的图。
图7是示出根据本公开的各种实施例在电子设备中执行P2P服务的操作的示例的流程图。
图8是示出了根据本公开的各种实施例在电子设备中执行P2P服务的操作的示例的图。
图9是示出根据本公开的各种实施例在电子设备中执行P2P服务的操作的示例的流程图。
图10是示出根据本公开的各种实施例的在电子设备中识别P2P服务的服务目标设备的通信范围的操作的示例的流程图。
图11是示出了根据本公开的各种实施例的识别在电子设备中是否激活了具有服务目标设备的P2P服务的操作的示例的流程图。
图12是示出根据本公开的各种实施例的用于识别P2P服务是否被允许的屏幕配置的示例的图。
图13是示出根据本公开的各种实施例的识别在电子设备中是否激活了与服务目标设备的P2P服务的操作的示例的流程图。
图14是示出根据本公开的各种实施例的识别在电子设备中是否激活了与服务目标设备的P2P服务的操作的示例的流程图。
图15是示出根据本公开的各种实施例的识别在电子设备中是否激活了与服务目标设备的P2P服务的操作的示例的流程图。
图16是示出根据本公开的各种实施例的在电子设备之间的P2P服务中执行认证的操作的示例的流程图。
图17是示出根据本公开的各种实施例的在电子设备之间的P2P服务中执行认证的操作的示例的流程图。
图18是示出根据本公开的各种实施例的在电子设备之间的P2P服务中执行认证的操作的示例的流程图。
图19是示出根据本公开的各种实施例的通过在电子设备之间的P2P服务中执行认证来执行服务移交的操作的示例的流程图。
图20是示出根据本公开的各种实施例的用于通知电子设备之间的P2P服务中的服务移交的屏幕配置的示例的图。
图21是示出根据本公开的各种实施例的在电子设备之间的P2P服务中发现服务移交设备的操作的示例的流程图。
具体实施方式
在下文中,将参照附图描述本公开的各种实施例。应当理解,本文使用的实施例和术语并不旨在将本文阐述的技术特征限制于特定实施例,而是包括对应的实施例的各种变化、等同物或替代物。关于附图的描述,相似的附图标记可用于表示相似或相关的元件。对应于项目的名词的单数形式可以包括一个或多个项目,除非相关上下文清楚地指示不是这样。如本文使用的,诸如“A或B”或“A或B中的至少一个”的表达可以包括一起列举的项目的所有可能的组合。诸如“第一”、“第二”、“第一”和“第二”的表达可以修饰对应的元件,而不管其顺序或重要性。这些表达仅用于将对应的元件与另一个元件区分开,并不限制这些元件。当一个元件(例如,第一元件)被称为(可操作地或通信地)“连接”或“耦合”到另一个元件(例如,第二元件)时,它可以直接或经由另一个元件(例如,第三元件)连接或耦合到另一个元件。
根据情况,在本公开中使用的表述“配置为”可以与例如“适合于”、“具有能力”、“设计成”、“适合于”、“制成”或“能够”互换使用。术语“配置为”不一定意味着硬件中的“专门设计成”。或者,在某些情况下,表述“设备配置为”可以意味着该设备连同其他设备或部件一起“能够”。例如,短语“处理器适于(或配置为)执行A、B和C”可以表示仅用于执行对应的操作的专用处理器(例如,嵌入式处理器),或者可以通过执行存储在存储器设备中的一个或多个软件程序来执行对应的操作的通用处理器(例如,中央处理单元(CPU)或应用处理器(AP))。
根据本公开的各种实施例的电子设备可以包括例如智能手机、平板个人计算机(PC)、移动电话、视频电话、电子书阅读器(电子书阅读器)、台式PC、膝上型PC、上网本计算机、工作站、服务器、个人数字助理(PDA)、便携式多媒体播放器(PMP)、MPEG-1音频层3(MP3)播放器、移动医疗设备、相机和可穿戴设备中的至少一种。可穿戴设备可以包括附件类型(例如,手表、戒指、手镯、脚链、项链、眼镜、隐形眼镜或头戴式设备(HMD))、织物或衣服集成类型(例如,电子衣服)、身体安装类型(例如,皮肤垫或纹身)和生物可植入电路中的至少一种。在一些实施例中,电子设备可以包括例如电视、数字视频光盘(DVD)播放器、音频、冰箱、空调、真空吸尘器、烤箱、微波炉、洗衣机、空气净化器、机顶盒、家庭自动化控制面板、安全控制面板、电视盒(例如,Samsung HomeSyncTM、Apple TVTM或Google TVTM)、游戏控制台(例如,XboxTM和PlayStationTM)、电子词典、电子钥匙、摄像机和电子相框中的至少一种。
根据其他实施例,电子设备可以包括各种医疗设备(例如,各种便携式医疗测量设备(血糖监测设备、心率监测设备、血压测量设备、体温测量设备等)、磁共振血管造影(MRA)、磁共振成像(MRI)、计算机断层摄影(CT)机、超声波机等)、导航设备、全球定位系统(GPS)接收器、事件数据记录器(EDR)、飞行数据记录器(FDR)、车辆信息娱乐设备,用于船舶的电子设备(例如,船舶导航设备、陀螺罗盘等)、航空电子设备、安全设备、汽车主机、家用或工业机器人、银行的自动柜员机(ATM)、商店的销售点(POS)或物联网设备(例如,灯泡、各种传感器、电或气表、洒水设备、火警、恒温器、街灯、烤面包机、体育用品、热水箱、加热器、锅炉等)中的至少一种。根据一些实施例,电子设备可以包括家具或建筑物/结构的一部分、电子板、电子签名接收设备、投影仪和各种测量仪器(例如,水表、电表、煤气表、无线电波计等)中的至少一种。在各种实施例中,电子设备可以是柔性的,或者可以是一个或多个前述各种设备的组合。根据本公开的各种实施例的电子设备不限于上述设备。在本公开的各种实施例中,术语“用户”可以指使用电子设备的人或使用电子设备的设备(例如,人工智能电子设备)。
在下文中,将参照附图描述根据本公开的各种实施例的电子设备以及用于服务发现的电子设备和方法。在本公开中,术语用户可以指使用电子设备的人或使用电子设备的设备(例如,人工智能电子设备)。
图1是示出根据各种实施例的网络环境100中的电子设备101的框图。
参照图1,网络环境100中的电子设备101可经由第一网络198(例如,短距离无线通信网络)与电子设备102进行通信,或者经由第二网络199(例如,长距离无线通信网络)与电子设备104或服务器108进行通信。根据实施例,电子设备101可经由服务器108与电子设备104进行通信。根据实施例,电子设备101可包括处理器120、存储器130、输入设备150、声音输出设备155、显示设备160、音频模块170、传感器模块176、接口177、触觉模块179、相机模块180、电力管理模块188、电池189、通信模块190、用户识别模块(SIM)196或天线模块197。在一些实施例中,可从电子设备101中省略所述部件中的至少一个(例如,显示设备160或相机模块180),或者可将一个或更多个其它部件添加到电子设备101中。在一些实施例中,可将所述部件中的一些部件实现为单个集成电路。例如,可将传感器模块176(例如,指纹传感器、虹膜传感器、或照度传感器)实现为嵌入在显示设备160(例如,显示器)中。
处理器120可运行例如软件(例如,程序140)来控制电子设备101的与处理器120连接的至少一个其它部件(例如,硬件部件或软件部件),并可执行各种数据处理或计算。根据一个实施例,作为所述数据处理或计算的至少部分,处理器120可将从另一部件(例如,传感器模块176或通信模块190)接收到的命令或数据加载到易失性存储器132中,对存储在易失性存储器132中的命令或数据进行处理,并将结果数据存储在非易失性存储器134中。根据实施例,处理器120可包括主处理器121(例如,中央处理器(CPU)或应用处理器(AP))以及与主处理器121在操作上独立的或者相结合的辅助处理器123(例如,图形处理单元(GPU)、图像信号处理器(ISP)、传感器中枢处理器或通信处理器(CP))。另外地或者可选择地,辅助处理器123可被适配为比主处理器121耗电更少,或者被适配为具体用于指定的功能。可将辅助处理器123实现为与主处理器121分离,或者实现为主处理器121的部分。
在主处理器121处于未激活(例如,睡眠)状态时,辅助处理器123可控制与电子设备101(而非主处理器121)的部件之中的至少一个部件(例如,显示设备160、传感器模块176或通信模块190)相关的功能或状态中的至少一些,或者在主处理器121处于激活状态(例如,运行应用)时,辅助处理器123可与主处理器121一起来控制与电子设备101的部件之中的至少一个部件(例如,显示设备160、传感器模块176或通信模块190)相关的功能或状态中的至少一些。根据实施例,可将辅助处理器123(例如,图像信号处理器或通信处理器)实现为在功能上与辅助处理器123相关的另一部件(例如,相机模块180或通信模块190)的部分。
存储器130可存储由电子设备101的至少一个部件(例如,处理器120或传感器模块176)使用的各种数据。所述各种数据可包括例如软件(例如,程序140)以及针对与其相关的命令的输入数据或输出数据。存储器130可包括易失性存储器132或非易失性存储器134。
可将程序140作为软件存储在存储器130中,并且程序140可包括例如操作系统(OS)142、中间件144或应用146。
输入设备150可从电子设备101的外部(例如,用户)接收将由电子设备101的其它部件(例如,处理器120)使用的命令或数据。输入设备150可包括例如麦克风、鼠标、键盘或数字笔(例如,手写笔)。
声音输出设备155可将声音信号输出到电子设备101的外部。声音输出设备155可包括例如扬声器或接收器。扬声器可用于诸如播放多媒体或播放唱片的通用目的,接收器可用于呼入呼叫。根据实施例,可将接收器实现为与扬声器分离,或实现为扬声器的部分。
显示设备160可向电子设备101的外部(例如,用户)视觉地提供信息。显示设备160可包括例如显示器、全息设备或投影仪以及用于控制显示器、全息设备和投影仪中的相应一个的控制电路。根据实施例,显示设备160可包括被适配为检测触摸的触摸电路或被适配为测量由触摸引起的力的强度的传感器电路(例如,压力传感器)。
音频模块170可将声音转换为电信号,反之亦可。根据实施例,音频模块170可经由输入设备150获得声音,或者经由声音输出设备155或与电子设备101直接(例如,有线地)连接或无线连接的外部电子设备(例如,电子设备102)的耳机输出声音。
传感器模块176可检测电子设备101的操作状态(例如,功率或温度)或电子设备101外部的环境状态(例如,用户的状态),然后产生与检测到的状态相应的电信号或数据值。根据实施例,传感器模块176可包括例如手势传感器、陀螺仪传感器、大气压力传感器、磁性传感器、加速度传感器、握持传感器、接近传感器、颜色传感器、红外(IR)传感器、生物特征传感器、温度传感器、湿度传感器或照度传感器。
接口177可支持将用来使电子设备101与外部电子设备(例如,电子设备102)直接(例如,有线地)或无线连接的一个或更多个特定协议。根据实施例,接口177可包括例如高清晰度多媒体接口(HDMI)、通用串行总线(USB)接口、安全数字(SD)卡接口或音频接口。
连接端178可包括连接器,其中,电子设备101可经由所述连接器与外部电子设备(例如,电子设备102)物理连接。根据实施例,连接端178可包括例如HDMI连接器、USB连接器、SD卡连接器或音频连接器(例如,耳机连接器)。
触觉模块179可将电信号转换为可被用户经由他的触觉或动觉识别的机械刺激(例如,振动或运动)或电刺激。根据实施例,触觉模块179可包括例如电机、压电元件或电刺激器。
相机模块180可捕获静止图像或运动图像。根据实施例,相机模块180可包括一个或更多个透镜、图像传感器、图像信号处理器或闪光灯。
电力管理模块188可管理对电子设备101的供电。根据实施例,可将电力管理模块188实现为例如电力管理集成电路(PMIC)的至少部分。
电池189可对电子设备101的至少一个部件供电。根据实施例,电池189可包括例如不可再充电的原电池、可再充电的蓄电池、或燃料电池。
通信模块190可支持在电子设备101与外部电子设备(例如,电子设备102、电子设备104或服务器108)之间建立直接(例如,有线)通信信道或无线通信信道,并经由建立的通信信道执行通信。通信模块190可包括能够与处理器120(例如,应用处理器(AP))独立操作的一个或更多个通信处理器,并支持直接(例如,有线)通信或无线通信。根据实施例,通信模块190可包括无线通信模块192(例如,蜂窝通信模块、短距离无线通信模块或全球导航卫星系统(GNSS)通信模块)或有线通信模块194(例如,局域网(LAN)通信模块或电力线通信(PLC)模块)。这些通信模块中的相应一个可经由第一网络198(例如,短距离通信网络,诸如蓝牙、无线保真(Wi-Fi)直连或红外数据协会(IrDA))或第二网络199(例如,长距离通信网络,诸如蜂窝网络、互联网、或计算机网络(例如,LAN或广域网(WAN)))与外部电子设备进行通信。可将这些各种类型的通信模块实现为单个部件(例如,单个芯片),或可将这些各种类型的通信模块实现为彼此分离的多个部件(例如,多个芯片)。无线通信模块192可使用存储在用户识别模块196中的用户信息(例如,国际移动用户识别码(IMSI))识别并验证通信网络(诸如第一网络198或第二网络199)中的电子设备101。
天线模块197可将信号或电力发送到电子设备101的外部(例如,外部电子设备)或者从电子设备101的外部(例如,外部电子设备)接收信号或电力。根据实施例,天线模块197可包括天线,所述天线包括辐射元件,所述辐射元件由形成在基底(例如,PCB)中或形成在基底上的导电材料或导电图案构成。根据实施例,天线模块197可包括多个天线。在这种情况下,可由例如通信模块190(例如,无线通信模块192)从所述多个天线中选择适合于在通信网络(诸如第一网络198或第二网络199)中使用的通信方案的至少一个天线。随后可经由所选择的至少一个天线在通信模块190和外部电子设备之间发送或接收信号或电力。根据实施例,除了辐射元件之外的另外的部件(例如,射频集成电路(RFIC))可附加地形成为天线模块197的一部分。
上述部件中的至少一些可经由外设间通信方案(例如,总线、通用输入输出(GPIO)、串行外设接口(SPI)或移动工业处理器接口(MIPI))相互连接并在它们之间通信地传送信号(例如,命令或数据)。
根据实施例,可经由与第二网络199连接的服务器108在电子设备101和外部电子设备104之间发送或接收命令或数据。电子设备102和电子设备104中的每一个可以是与电子设备101相同类型的设备,或者是与电子设备101不同类型的设备。根据实施例,将在电子设备101运行的全部操作或一些操作可在外部电子设备102、外部电子设备104或服务器108中的一个或更多个运行。例如,如果电子设备101应该自动执行功能或服务或者应该响应于来自用户或另一设备的请求执行功能或服务,则电子设备101可请求所述一个或更多个外部电子设备执行所述功能或服务中的至少部分,而不是运行所述功能或服务,或者电子设备101除了运行所述功能或服务以外,还可请求所述一个或更多个外部电子设备执行所述功能或服务中的至少部分。接收到所述请求的所述一个或更多个外部电子设备可执行所述功能或服务中的所请求的所述至少部分,或者执行与所述请求相关的另外功能或另外服务,并将执行的结果传送到电子设备101。电子设备101可在对所述结果进行进一步处理的情况下或者在不对所述结果进行进一步处理的情况下将所述结果提供作为对所述请求的至少部分答复。为此,可使用例如云计算技术、分布式计算技术或客户机-服务器计算技术。
图2是示出根据本公开的各种实施例的电子设备配置的示例的框图。
参照图2,电子设备101可以包括处理器120、存储器130、显示设备160、通信模块190和安全模块220。
根据本公开的各种实施例,处理器120可以执行与P2P服务的服务移交相关的整体操作。
根据本公开的各种实施例,处理器120可以根据用户的P2P服务请求来识别P2P服务触发。例如,P2P服务可以包括通过短距离通信在电子设备之间的音乐共享服务或文件传输(例如,点击(tap)以共享或同步)。电子设备101可以通过检测指定的手势输入(例如,外部电子设备102的点击手势)或指定的应用的执行来识别P2P服务触发。
根据本公开的各种实施例,处理器120可以通过短距离通信模块210测量通信范围。例如,处理器120可以基于在电子设备101和服务目标设备(例如,外部电子设备102)之间交换的信息来确定服务目标设备是否位于可通信范围内。当外部电子设备102作为服务移交的主机设备操作时,交换的信息可以包括作为主机设备的主机设备名称、主机蓝牙地址、投射器(caster)设备名称或与投射器设备的连接类型,并且可以包括用于与电子设备101的通信连接的蓝牙地址。
根据本公开的各种实施例,基于通信方案的触发条件,可以省略测量通信范围的操作。例如,在由电子设备之间的接触触发的特定P2P服务(例如,点击以共享)的情况下,可以省略测量上述通信范围的操作。
根据本公开的各种实施例,处理器120可以通过短距离通信模块210接收外部电子设备102的测距封包,并基于封包的大小或通信强度来测量通信范围。
根据本公开的各种实施例,当确定外部电子设备102位于通信范围内时,处理器120可以确定服务移交。例如,可以确定其中P2P服务是可能的通信方案之一的通信方案,并且可以通过对应的通信方案来执行P2P服务。
根据本公开的各种实施例,处理器120可以向与P2P服务相关的应用(例如,文件传输应用、快速共享应用和音乐共享应用)或与通信方案相关的模块(例如,Wi-Fi感知模块211、Wi-Fi直连模块212、蓝牙模块213或NFC模块214)发送与服务移交相关的信息。
根据本公开的各种实施例,处理器120可以控制显示设备160显示用于向用户通知与服务移交相关的信息的屏幕。例如,该屏幕可以包括其中P2P服务被移交的设备信息或服务信息,并且可以包括用于选择针对对应的服务的许可响应或拒绝响应的项目。
根据本公开的各种实施例,当电子设备101通过短距离通信连接连接到外部电子设备102或外部电子设备102的外围设备时,服务移交可以包括通过支持的通信方案或对应于指定的通信条件(例如,通信范围或通信质量)的通信方案执行P2P服务的操作,或者允许P2P服务中的至少一些在对应的外围设备中执行的操作。例如,外围设备可以包括能够通过短距离通信连接到外部电子设备102来提供P2P服务的设备。
根据本公开的各种实施例,电子设备101可以执行到外部电子设备102的蓝牙高级音频分发简档(advanced audio distribution profile,A2DP)设备的服务移交,以输出电子设备101的内容。
根据本公开的各种实施例,为了执行与外部电子设备102的P2P服务,电子设备可以使用第一通信方案(例如,BLE)执行连接,并且使用第二通信方案(例如,Wi-Fi直连)执行P2P服务。
根据本公开的各种实施例,电子设备101可以维持先前在与外部电子设备102连接时使用的通信方案来执行服务移交,或者可以基于从外部电子设备102接收的附加信息使用另一通信方案来执行服务移交。
根据本公开的各种实施例,电子设备101可以包括通信模块190、安全模块220、可操作地连接到通信模块190和安全模块220的处理器120、以及可操作地连接到处理器120的存储器130,并且存储器130可以存储指令,当执行这些指令时,使得处理器120能够在P2P服务被请求时从外部电子设备102接收公开秘钥,通过安全模块将基于接收的公开秘钥生成的认证证书链发送到外部电子设备,通过使用存储在安全模块中的根认证证书来验证从外部电子设备接收的认证证书链,从外部电子设备接收关于外部电子设备的加密的信息,通过使用基于认证证书链验证结果生成的共享密钥来解密关于外部电子设备的加密的信息,以及基于关于外部电子设备的解密的信息,通过通信模块执行与外部电子设备的P2P服务。
根据本公开的各种实施例,指令可以使处理器120能够通过与外部电子设备102的GATT连接接收公开秘钥,并且通过通信模块190(或短距离通信模块210)接收关于外部电子设备102的加密的信息。
根据本公开的各种实施例,关于外部电子设备102的加密的信息可以包括外部电子设备的电话号码的至少一部分,并且指令可以使处理器120能够用共享密钥解密外部电子设备102的电话号码,并且通过将解密的值与存储在存储器130中的外部电子设备102的电话号码进行比较来识别外部电子设备102的有效性。
根据本公开的各种实施例,指令可以使得处理器120能够根据椭圆曲线迪菲-赫尔曼(Elliptic-curve Diffie-Hellman,ECDH)规则利用与外部电子设备102相同的共享密钥生成共享密钥。
根据本公开的各种实施例,电子设备101可以包括至少一个通信模块190、可操作地连接到通信模块190的处理器120以及可操作地连接到处理器120的存储器130,并且存储器130可以存储指令,这些指令在被执行时使得处理器120能够通过通信模块190识别外部电子设备的服务请求,对外部电子设备执行认证,根据认证的结果控制通信模块建立与外部电子设备的第一短距离通信的连接,通过第一短距离通信接收关于外部电子设备的通信信息,基于识别的通信信息识别用于将服务与外部电子设备连接的第二短距离通信,以及控制通信模块190(或短距离通信模块210)通过第二短距离通信连接到外部电子设备。
根据本公开的各种实施例,电子设备101可以进一步包括安全模块220,并且指令可以使处理器120能够向外部电子设备发送公开秘钥,从外部电子设备接收基于发送的公开秘钥生成的认证证书链,通过使用存储在安全模块中的根认证证书来验证从外部电子设备接收的认证证书链,控制安全模块220基于验证认证证书链的结果来识别与外部电子设备102共同使用的共享密钥,基于共享密钥来解密通信信息,并且基于解密的通信信息来识别与外部电子设备102的先前通信连接的信息。
根据本公开的各种实施例,指令可以使处理器120能够识别随机生成的随机数值(nonce value)和该随机数值的时间戳,并且控制安全模块220用共享密钥加密该随机数值。
根据本公开的各种实施例,指令可以使处理器120能够控制通信模块190(或短距离通信模块210)向外部电子设备102发送加密的随机数值,基于识别的时间戳值识别解密的通信信息和识别的随机数值是否对应,并且当确定解密的通信信息和识别的随机数值对应时,识别出先前已经与外部电子设备102执行了短距离通信。
根据本公开的各种实施例,指令可以使得处理器120能够释放第一短距离通信的连接,并且建立第二短距离通信的连接。
根据本公开的各种实施例,指令可以使得处理器120能够根据识别与外部电子设备102的第二短距离通信的连接来识别服务移交信息,并且控制通信模块190(或短距离通信模块210)将服务移交信息发送到P2P服务和应用。例如,服务移交信息可以包括与通过其执行P2P服务的通信方案相关的配置信息、关于至少一个外围设备的识别信息以及关于至少一个外围设备的通信信息中的至少一者。
根据本公开的各种实施例,显示器160可以显示与服务移交相关的通知信息。例如,可以显示根据电子设备发现找到的外部电子设备102的设备列表,并且用户可以选择在其中执行移交的设备。
根据本公开的各种实施例,通信模块190(或短距离通信模块210)可以与外部电子设备102或外部电子设备102执行P2P通信。例如,短距离通信模块210可以包括Wi-Fi感知模块211、Wi-Fi直连模块212、蓝牙模块213和NFC模块214中的至少一者,并且可以包括用于短距离通信的各种其他配置。
根据本公开的各种实施例,通信模块190可以包括短距离通信模块210。例如,短距离通信模块210可识别基于服务移交相关信息确定的通信方案,以控制Wi-Fi感知模块211、Wi-Fi直连模块212、蓝牙模块213和NFC模块214中的至少一者执行P2P通信。
根据本公开的各种实施例,电子设备101可以发送和接收P2P服务的广告数据。例如,广告数据可以包括TDS服务通用唯一识别符(UUID)、TDS广告类型(AD类型)和基于蓝牙SIG中定义的传输发现服务(TDS)协议的传输块。
根据本公开的各种实施例,电子设备101(或外部电子设备102)可以通过在基于TDS的广告数据的“传输数据”字段中包括连接到外部电子设备要求的特定通信方案和相关配置信息,来请求激活使用对应的通信方案的服务。
表1涉及基于TDS协议的广告数据。
根据本公开的各种实施例,支持音乐共享服务或点击以共享服务的电子设备101可以在广告数据中包括TDS UUID和TDS AD数据类型作为基础,并且可以通过在“传输数据”字段的服务数据中包括诸如音乐共享服务或点击以共享服务的服务识别符的信息来进行配置。表2涉及广告数据的结构,其中根据本公开的各种实施例配置“传输数据”字段。
[表2]
根据本公开的各种实施例,广告数据可以包括由P2P服务或特定应用配置或请求的信息。例如,广告数据的“P2P服务ID”字段可以包括关于所请求的P2P服务的识别信息,广告数据的“Tx功率补偿”字段可以包括用于识别邻近度的BLE传输功率补偿值,并且“设备ID”字段可以包括电子设备识别信息,或者“签名”字段可以包括特定电子设备的共享随机数值。另外,广告数据可以包括诸如关于用于发现BLE设备的广告时段的配置信息、关于连接到BLE的设备的识别信息或附加数据之类的信息。表3涉及根据本公开的各种实施例的关于包括在广告数据中的“类型”字段的信息。
[表3]
根据本公开的各种实施例,短距离通信模块210可以与外部电子设备102建立通用属性简档(generic attribute profile,GATT)连接。例如,响应于来自外部电子设备102的广告数据,电子设备101可以与外部电子设备102建立GATT连接。根据本公开的各种实施例,建立GATT连接的操作可以包括电子设备101对外部电子设备102提供的GATT服务执行服务发现的操作。例如,建立GATT连接的操作可以包括协商最大传输单元(MTU)大小以识别在建立GATT连接之后发送和接收的数据的大小的操作。表4涉及根据本公开的各种实施例在GATT连接中传送的数据中配置的TDS特征的各种示例。
[表4]
特性名称 | 要求 | 强制属性 | 可选属性 | 安全权限 |
TDS控制点 | O | 写,指示 | 写 | 无 |
密钥交换 | M | 写 | 可靠写入 |
根据本公开的各种实施例,电子设备101可以将TDS指定为GATT连接的主要服务,并且可以另外配置单独的特性,诸如与TDS控制点的密钥交换,这是TDS的特性,并且可以在数据交换期间应用。根据本公开的各种实施例,电子设备101可以配置TDS特性的“密钥交换”特性,以向外部电子设备102通知包括公开秘钥的数据的传输。根据本公开的各种实施例,在GATT连接中的数据的“传输发现服务”字段中,可以设置对应的特性的各种设置值。例如,可以包括指示对于特定特性的要求是必要的(M)或可选的(O)的值。对于强制属性或可选属性,可以包括与相应属性相关的写入或指示属性。此外,可以设置指示是否包括安全许可的值。
根据本公开的各种实施例,短距离通信模块210可以尝试与外部电子设备102进行BLE(或LE)配对。例如,BLE配对可以选择性地与认证分开执行。
根据本公开的各种实施例,通信模块190(或短距离通信模块210)可以释放与服务目标设备的GATT连接。例如,当电子设备101和外部电子设备102之间的通信信息的发现、认证或交换完成时,可以释放GATT连接。
根据本公开的各种实施例,在释放GATT连接之后需要用于服务转换的GATT重新连接的情况下,电子设备101可以设置包括与外部电子设备102交换的随机数的散列值的GATT连接的数据。例如,随机数用通过安全模块220生成的公开秘钥加密,并与外部电子设备102交换,并且可以用作相互识别符。
根据本公开的各种实施例,在电子设备101和外部电子设备102想要在GATT连接被释放时重新连接的情况下,安全模块220可以解密包括在从外部电子设备102广告的数据中的随机数,并且可以根据解密的随机数是否对应于从电子设备101发送到外部电子设备102的随机数来认证外部电子设备102为先前连接的用户。例如,电子设备101和外部电子设备102可以在生成随机数时将随机数与时间戳一起存储,以识别接收的随机数是否是从电子设备发送的随机数。
图3是示出根据本公开的各种实施例的在电子设备中为P2P服务执行认证的操作的示例的流程图。
参照图3,根据实施例,在操作311中,在请求P2P服务时,电子设备101可以从外部电子设备102接收公开秘钥。例如,电子设备101可以通过与外部电子设备102的GATT连接接收公开秘钥,并接收关于外部电子设备102的加密的信息。可以通过电子设备101的通信模块190建立GATT连接。
根据本公开的各种实施例,关于外部电子设备102的加密的信息可以包括电话号码的至少一部分,并且电子设备101可以用共享密钥解密外部电子设备102的电话号码,并且将解密的值与存储在存储器130中的外部电子设备102的电话号码进行比较,以识别外部电子设备102的有效性。
根据本公开的各种实施例,根据椭圆曲线迪菲-赫尔曼(ECDH)规则,可以与外部电子设备102中的共享密钥相同地生成共享密钥。
在操作312,电子设备101可将基于接收的公开秘钥生成的认证证书链发送到外部电子设备102。
在操作313,电子设备101可基于安全模块220的根认证证书来验证从外部电子设备102接收的认证证书链。
在操作314,电子设备101可以从外部电子设备102接收关于外部电子设备102的加密的信息。例如,外部电子设备102可以基于外部电子设备102中的认证证书链的验证结果,将关于外部电子设备102的加密的信息发送到电子设备101。
在操作315,电子设备101可控制安全模块220通过使用基于认证证书链验证结果生成的共享密钥解密关于外部电子设备102的加密的信息来识别外部电子设备102的有效性。
根据本公开的各种实施例,当电子设备101将在电子设备101中生成的公开秘钥发送到外部电子设备102时,电子设备101可以从外部电子设备102接收为发送的公开秘钥颁发的认证证书链。例如,电子设备101可以用安全模块220的根认证证书来验证接收的认证证书链,以验证外部电子设备102。
根据本公开的各种实施例,当根据认证证书链的验证结果确定外部电子设备102的有效性时,电子设备101可以生成共享密钥。
在操作316,电子设备101可基于确定外部电子设备102的有效性的结果来执行与外部电子设备102的P2P服务。例如,电子设备101可以通过通信模块190(或短距离通信模块210)与外部电子设备102执行P2P服务。
图4是示出根据本公开的各种实施例的操作的示例的流程图,在该操作中,电子设备执行与外部电子设备的P2P服务。
参照图4,在操作410,电子设备101可以识别对外部电子设备102的服务请求。
在操作420,电子设备101可通过通信模块190(或短距离通信模块210)与外部电子设备102建立第一短距离通信的连接(例如,GATT连接或BLE连接)。
根据本公开的各种实施例,电子设备101可以通过识别对外部电子设备102的服务请求来执行对外部电子设备102的认证。例如,电子设备101可以向外部电子设备102发送公开秘钥,并从外部电子设备102接收基于发送的公开秘钥生成的认证证书链。
根据本公开的各种实施例,电子设备101通过使用存储在安全模块220中的根认证证书来验证从外部电子设备102接收的认证证书链,并根据认证证书链的验证结果来认证外部电子设备102。
在操作430,电子设备101可通过第一短距离通信接收用于与外部电子设备102连接的通信信息。例如,电子设备101可以基于通信信息执行与外部电子设备102的服务移交。
在操作440,电子设备101可以基于识别的通信信息识别用于与外部电子设备102连接的第二短距离通信(例如,Wi-Fi直连、Wi-Fi感知或蓝牙)。例如,电子设备101可以向外部电子设备102发送包括与第二短距离通信相关的信息的服务移交相关信息。
在操作450,电子设备101可控制通过第二短距离通信连接到外部电子设备102。例如,可以在释放第一短距离通信的连接之后建立第二短距离通信的连接。
根据本公开的各种实施例,电子设备101可以控制安全模块220基于公开秘钥来解密通信信息,并且可以基于解码的通信信息来识别关于与外部电子设备的先前通信连接的信息。
根据本公开的各种实施例,电子设备101可以识别随机生成的随机数值和该随机数值的时间戳,用公开秘钥加密该随机数值,并且可以基于上述识别的时间戳的值来识别解密的通信信息和识别的随机数值是否彼此对应。当确定解密的通信信息和识别的随机数值彼此对应时,可以确认电子设备101先前已经执行了与外部电子设备的短距离通信。
根据本公开的各种实施例,电子设备101可以断开第一短距离通信并建立第二短距离通信的连接。
根据本公开的各种实施例,电子设备101可以根据确认与外部电子设备102的第二短距离通信的连接来识别服务移交信息,并将服务移交信息发送到与P2P服务相关的服务器或应用。服务移交信息可以包括与执行P2P服务的通信方案相关的配置信息、关于至少一个外围设备的识别信息和关于至少一个外围设备的通信信息中的至少一者。
图5是示出根据本公开的各种实施例的软件配置的示例的框图。
根据本公开的各种实施例,执行P2P服务的电子设备101或外部电子设备102可以基于超宽带(UWB)移动架构500进行操作。
参照图5,UWB移动架构500可以包括应用层510、框架520、平台530、内核540和硬件550。
根据本公开的各种实施例,应用层510可以包括UWB支付/收费应用、UWB测距/定位应用或UWB智能密钥应用。UWB智能密钥应用可以向认证服务器501发送认证信息和从认证服务器501接收认证信息。
根据本公开的各种实施例,应用UWB测距/定位应用可以提供用于在电子设备101中发现外部电子设备102并确定外部电子设备102是否位于通信范围内的服务。例如,UWB智能密钥应用可以通过UWB通信管理与电子设备101和外部电子设备102之间的认证相关的密钥(例如,从外部电子设备102接收的共享密钥或公开秘钥)。
根据本公开的各种实施例,应用框架520可以包括包含BLE开放应用编程接口(API)的蓝牙框架521、包含UWB开放API的UWB框架522、开放多媒体应用平台(OMAP)API523、包含BLE服务的蓝牙服务524、UWB服务525或包含安全元件服务的安全元件服务526。
根据本公开的各种实施例,在UWB移动架构500中提供的UWB服务525可以包括诸如连接管理器525a、UWB适配器525b、安全525c、测距525d、定位525e、移交(例如,BLE)525f等的服务。
根据本公开的各种实施例,电子设备101可以通过连接管理器525a与外部电子设备102建立UWB连接。
根据本公开的各种实施例,电子设备101可以通过UWB服务525的测距525d服务发送和接收用于发现外部电子设备102的测距封包。例如,电子设备101可以通过定位525e服务来确定外部电子设备102是否位于通信范围内。
根据本公开的各种实施例,电子设备101可以通过使用移交525f服务来执行到外部电子设备102的服务移交。例如,服务移交可以包括确定与外部电子设备102相关的通信方案并以确定的通信方案执行与外部电子设备102的P2P服务的操作。
根据本公开的各种实施例,平台530可以包括蓝牙硬件抽象层(HAL)531、UWB HAL532、NFC HAL 533或ESE SPI HAL 534。
内核540可以包括蓝牙驱动器541、UWB驱动器542、NFC驱动器543或ESE SPI驱动器544。
硬件550可以包括蓝牙芯片551、UWB芯片552、NFC芯片553或ESE芯片554。
图6是示出根据本公开的各种实施例的软件结构的示例的图。
参照图6,移动架构600可以包括应用层510和框架520。
根据本公开的各种实施例,应用层510可以包括P2P服务应用610和P2P服务控制应用620。
根据本公开的各种实施例,P2P服务应用610可以包括通过P2P连接提供各种服务的应用,诸如利用点击以共享功能传输照片的图库应用、音乐共享应用、用于快速文件传输的快速共享应用、或者用于文件共享的基于点击跟踪的文件传输(例如,同步功能)应用。
根据本公开的各种实施例,P2P服务控制服务器620可以用于执行设备之间的搜索和连接或认证,以支持异构通信方案,并且可以包括用于控制请求认证的订阅设备的订阅控制621服务器、用于控制待认证的投射器设备的投射器控制622服务器或电子设备DB623。
根据本公开的各种实施例,订阅控制621服务器和投射器控制622服务器可以控制P2P设备(例如,电子设备101或外部电子设备102)充当应用层510中的订阅(或客户端)或投射器。
根据本公开的各种实施例,电子设备DB 623可以包括关于与P2P服务相关的电子设备的信息,诸如执行P2P服务的电子设备的通信方案、服务信息或连接的外围设备(或投射器设备)信息。
根据本公开的各种实施例,电子设备DB 623可以包括服务移交的主机设备和访客设备的设备信息、通信信息或认证信息。例如,关于主机设备的信息可以包括主机设备的名称、蓝牙地址、关于投射器设备的信息或者关于与投射器设备的连接的信息。关于访客设备的信息可以包括访客设备的名称或蓝牙信息。
根据本公开的各种实施例,框架520可以包括P2P适配器630。例如,P2P适配器630可以由软件开发工具包(SDK)配置,并且可以在框架520中在P2P服务控制应用620之间传递(例如,进程间通信)与P2P设备相关的信息。
根据本公开的各种实施例,来自电子设备101的P2P服务请求可以被发送到P2P服务应用610。例如,P2P服务控制服务器620可以基于通过应用层510存储在电子设备DB 623中的信息来控制电子设备101作为订阅或投射器设备来操作。
根据本公开的各种实施例,通过在框架520中区别于P2P服务应用610和P2P服务控制服务器620的操作,P2P适配器630可以在电子设备101中以幽灵程序(demon program)的形式操作。例如,P2P服务控制服务器620可以绑定和使用P2P适配器630用于P2P服务。
图7是示出根据本公开的各种实施例在电子设备中执行P2P服务的操作的示例的流程图。
参照图7,在操作710,电子设备101可以根据来自用户的P2P服务请求来识别P2P服务触发。例如,P2P服务可以包括通过短距离通信在电子设备之间的音乐共享服务或文件传输。
根据本公开的各种实施例,电子设备101可以根据检测指定的手势输入(例如,外部电子设备102的点击手势)或指定的应用的执行来识别P2P服务触发。
在操作720,电子设备101可以发现P2P服务的服务目标设备。
根据本公开的各种实施例,电子设备101可以生成包括在对应的P2P服务或执行对应的P2P服务的应用中配置的信息的广告数据,并将该广告数据发送到外部电子设备102。例如,在应用中设置的信息可以包括能够区分执行的应用和可以在应用中执行的P2P服务(例如,文件传输)的类型的信息(例如,应用名称或应用ID)。在实施例中,电子设备101可以通过从至少一个外部电子设备(例如,外部电子设备102)接收对广告数据的响应来将外部电子设备102识别为服务目标设备。
在操作721,电子设备101和外部电子设备102可以建立GATT连接。例如,当短距离通信(例如,BLE)连接请求被包括在对广告数据的响应中时,电子设备101可以与外部电子设备102建立GATT连接。
根据本公开的各种实施例,可以通过用于BLE服务发现的BLE通信来建立和释放GATT连接。
在操作730,电子设备101和外部电子设备102可通过GATT连接执行BLE配对。例如,在电子设备101和外部电子设备102已经通过在先前的连接中交换电话号码信息而相互认证的情况下,可以省略上述BLE配对操作。
在操作740,电子设备101和外部电子设备102可以执行认证。例如,电子设备101和外部电子设备102可以基于公开秘钥加密电话号码。电子设备101和外部电子设备102可以基于BLE连接来交换加密的电话号码,并且可以用公开秘钥来解密电话号码以对对方设备执行认证。
根据本公开的各种实施例,可以基于通过在图2的安全模块220中执行公开秘钥生成操作而生成的公开秘钥来加密电话号码。
在操作741,电子设备101和外部电子设备102可以交换通信信息。例如,该信息是与电子设备101或外部电子设备102所请求的P2P服务相关的可用短距离通信信息,并且可以包括散列电话号码、CRC、电子设备的用户信息、蓝牙地址、通信方案类型(例如,Wi-Fi感知或Wi-Fi直连)、或者关于应用或P2P服务的附加信息。
根据本公开的各种实施例,关于应用或P2P服务的附加信息是特定应用或P2P服务所需的信息,可以包括用于音乐共享应用的外部电子设备102的外围设备信息(例如,蓝牙地址或外围设备的名称),并且可以针对音乐流应用交换与应用相关的账户信息。
根据本公开的各种实施例,电子设备101可以通过识别通信信息来确定可以移交P2P服务的通信方案。例如,通信信息可以包括关于可以在外部电子设备102中进行数据传输的通信方案(例如,Wi-Fi直连或UWB)的信息。
根据本公开的各种实施例,电子设备101和外部电子设备102可以基于通信信息来确定用于执行P2P服务的通信方案。
在操作750,电子设备101和外部电子设备102可测量通信范围(或电子设备101和外部电子设备102之间的距离)。例如,电子设备101和外部电子设备102可以基于交换的信息(例如,BLE封包的接收的信号强度指示符(RSSI))来确定电子设备101和外部电子设备102是否位于可以彼此通信的范围内。例如,电子设备101可以对BLE封包的RSSI值进行平均,基于平均值预测与外部电子设备102的距离,并将与预测的距离相对应的范围识别为通信范围。基于通信方案的触发条件,可以省略测量通信范围的操作。
根据本公开的各种实施例,电子设备101可以识别用于测量通信范围的通信方案(例如,UWB),并且基于通过识别的通信方案交换的信息来测量外部电子设备102的通信范围。例如,电子设备101可以在可以与外部电子设备102执行的通信方案中识别在测量的通信范围内具有指定的条件的通信质量的通信方案。
根据本公开的各种实施例,电子设备101可以通过UWB通信来测量到至少一个外部电子设备102的距离,并且可以基于测量的距离来识别通信方案或通信顺序。例如,电子设备101可以基于通信顺序识别优先通信方案,并将识别的通信方案确定为用于与外部电子设备102的P2P服务的通信方案。
根据本公开的各种实施例,电子设备101可以执行到识别的通信方案的服务移交,从而通过识别的通信方案来执行P2P服务。
根据本公开的各种实施例,在由电子设备101之间的接触触发的特定P2P服务(例如,点击以共享)的情况下,外部电子设备102可以省略上述测量通信范围的操作。
在操作760,响应于P2P服务触发,电子设备101可以在可以与对应的P2P服务相关的服务器和应用通信的范围内通知可以启动与外部电子设备102的P2P服务。例如,电子设备101可以基于交换的通信信息来识别其中执行P2P服务的通信方案或投射器设备。
根据本公开的各种实施例,电子设备101可以通知与服务相关联的服务器根据P2P服务的特性来执行服务移交。
在操作770,电子设备101和外部电子设备102可以释放GATT连接。例如,在此后执行BLE配对操作的情况下,电子设备101和外部电子设备102可以重新建立GATT连接。
根据本公开的各种实施例,尽管GATT连接被描述为针对服务移交而建立,但是各种其他短距离通信方案(例如,Wi-Fi感知)也是可能的。例如,电子设备101可以释放GATT连接,以减少由维持GATT连接引起的功耗。
在操作780,电子设备101和外部电子设备102可以执行P2P服务。例如,在P2P服务是音乐共享服务的情况下,电子设备101可以通过使用基于通过音乐共享服务或相关的应用的通信信息确定的通信方案来执行与外部电子设备102(或投射器设备)的P2P服务。
根据本公开的各种实施例,在通过所确定的通信方案不可能与外部电子设备102通信的情况下,电子设备101可以控制通过使用预定的基本通信方案(例如,蓝牙或BLE)来执行P2P服务。
图8是示出了根据本公开的各种实施例在电子设备中执行P2P服务的操作的示例的图。
参照图8,电子设备101可以识别用户通过P2P执行音乐共享应用或者请求音乐共享服务。例如,当用户选择音乐回放应用的屏幕700a上的指定按钮701时,电子设备101可以识别出对音乐共享服务的请求。
根据本公开的各种实施例,电子设备101可以根据服务请求将外部电子设备102识别为服务目标设备。例如,电子设备101可以通过通信模块190与外部电子设备102建立短距离通信连接(例如,GATT连接)。
根据本公开的各种实施例,电子设备101可以对外部电子设备102执行认证。例如,电子设备101和外部电子设备102可以生成并交换公开秘钥,并通过使用接收到的公开秘钥将发布的认证证书链发送到对方设备。
根据本公开的各种实施例,电子设备101和外部电子设备102可以通过使用存储的根认证证书来验证接收的认证证书链。例如,可以根据认证证书链的验证结果来完成相互认证。
根据本公开的各种实施例,当认证完成时,电子设备101可以从外部电子设备102接收通信信息。例如,通信信息可以包括可由外部电子设备102连接的通信方案信息、关于外部电子设备102的外围设备(例如,可通信地连接到车辆设备702或外部电子设备102的蓝牙扬声器703)的信息、或者可与外围设备连接的通信方案信息。
根据本公开的各种实施例,外部电子设备102可以显示屏幕700b,询问用户是否执行音乐共享服务。屏幕700b可以包括服务信息(例如,控制车辆设备702)或用于选择是否激活服务的项目(例如,拒绝或允许)。当用户选择“允许”项目时,外部电子设备102可以激活音乐共享服务,并且向电子设备101发送关于是否激活该服务的信息。
根据本公开的各种实施例,当识别服务是否在外部电子设备102中被激活时,电子设备101可以基于通信信息来确定用于音乐共享服务的与外部电子设备102的通信方案(例如,BLE或Wi-Fi感知)。例如,当外部电子设备102的外围设备被识别为用于服务移交的投射器设备时,电子设备101可以基于通信信息来确定用于音乐共享服务的与外围设备的通信方案。
根据本公开的各种实施例,电子设备101可以向外部电子设备102发送包括关于所确定的通信方案的信息的服务移交信息。例如,外部电子设备102可以基于服务移交信息识别通信方案,并且可以通过识别的通信方案与电子设备101激活音乐共享服务。
根据本公开的各种实施例,外部电子设备102可以基于服务移交信息使外围设备(例如,702或703)执行音乐共享服务。例如,外部电子设备102可以基于服务移交信息识别每个外围设备的通信方案,并且可以控制特定的外围设备(例如,车辆设备702)通过通信方案根据音乐共享服务输出音乐。
图9是示出根据本公开的各种实施例在电子设备中执行P2P服务的操作的示例的流程图。
参照图9,在操作910,电子设备101可以识别P2P服务触发。
在操作920,电子设备101可发现服务目标设备来执行触发的P2P服务。
在操作921,电子设备101可通过发现外部电子设备102作为服务目标设备来建立与外部电子设备102的GATT连接。
在操作930,电子设备101可对外部电子设备102执行认证。
在操作931,当对外部电子设备102的认证完成时,电子设备101可与外部电子设备102交换通信信息。
在操作940,电子设备101可测量与外部电子设备102的通信范围。例如,电子设备101可以基于交换的通信信息来确定外部电子设备102是否位于可通信范围内。
根据本公开的各个实施例,在由电子设备101和外部电子设备102之间的接触触发的特定的P2P服务的情况下,可以省略测量通信范围的上述操作。
在操作950,电子设备101可以确定服务移交。例如,电子设备101可以基于交换的通信信息来确定能够与外部电子设备102进行P2P服务的通信方案中的特定通信方案,并且可以确定通过对应的通信方案来执行P2P服务。
根据本公开的各种实施例,电子设备101可以识别通信方案中以指定的通信质量(例如,通信速度)进行通信的通信方案,并且确定到识别的通信方案的服务移交。例如,在不能识别指定的通信质量的通信方案的情况下,电子设备101可以控制使用指定的通信方案(例如,蓝牙或BLE)来执行P2P服务。
在操作951,电子设备101可将服务移交相关信息发送到外部电子设备102。例如,服务移交相关信息可以包括与通信方案或相应的通信方案相关的配置信息。
在操作961,电子设备101可将识别的服务移交相关信息发送到与P2P服务相关的服务器或应用,以通知服务移交。
在操作962,外部电子设备102可将从电子设备101接收的服务移交相关信息发送到与P2P服务相关的服务器或与P2P服务相关的外部电子设备102的应用,以通知服务移交。
在操作970,电子设备101和外部电子设备102可以释放GATT连接。例如,在此后执行BLE配对操作的情况下,电子设备101和外部电子设备102可以重新建立GATT连接。
在操作980,电子设备101和外部电子设备102可以执行P2P服务。例如,电子设备101和外部电子设备102可以通过服务器和与P2P服务相关的应用来执行P2P服务。
图10是示出根据本公开的各种实施例的在电子设备中识别与P2P服务的服务目标设备的通信范围的操作的示例的流程图。
参照图10,在操作1010,电子设备101可与作为P2P服务的服务目标设备的外部电子设备102建立GATT连接。
在操作1020,电子设备101和外部电子设备102可执行相互认证。
在操作1021,当认证完成时,电子设备101和外部电子设备102可交换通信信息。
在操作1030,电子设备101可向外部电子设备102请求测距封包。
在操作1041,电子设备101可开始扫描从外部电子设备102发送的测距封包。例如,电子设备101可以将扫描周期设置为100%占空比。
在操作1042,当电子设备101的测距封包请求被识别到时,外部电子设备102可开始测距封包广告。例如,外部电子设备102可以被设置为以每20毫秒-45dBm的功率进行广告。
在操作1050,外部电子设备102可以发送测距封包。例如,可以广告50个封包。
在操作1060,电子设备101可测量与外部电子设备102的通信范围。例如,电子设备101可以扫描广告的封包,基于扫描的封包的大小或通信速度预测外部电子设备102的距离,并根据预测的距离确定外部电子设备102是否位于通信范围内。
根据本公开的各种实施例,电子设备101可以通过与外部电子设备102的蓝牙连接来接收蓝牙封包,并且可以通过测量封包的接受值来识别通信范围。此外,电子设备101可以通过与外部电子设备102的Wi-Fi感知或UWB连接接收数据,并基于接收的数据测量与外部电子设备102的通信范围。
在操作1070,当外部电子设备102确定外部电子设备102位于通信范围内时,电子设备101可确定服务移交并将服务移交相关信息发送到外部电子设备102。
在操作1071,电子设备101可将服务移交相关信息发送到与P2P服务相关的服务器或应用,以通知服务移交。
在操作1072,外部电子设备102可将服务移交相关信息发送到与P2P服务相关的服务器或应用,以通知服务移交。
在操作1080,电子设备101和外部电子设备102可以释放GATT连接。例如,在此后执行BLE配对操作的情况下,电子设备101和外部电子设备102可以重新建立GATT连接。
图11是示出根据本公开的各种实施例的识别在电子设备中是否激活了与服务目标设备的P2P服务的操作的示例的流程图。
参照图11,电子设备101可以识别来自用户(例如,Tom)的对外部电子设备102的P2P服务请求。例如,P2P服务可以通过电子设备101控制外部电子设备102或外部电子设备102的外围设备(例如,车辆)。
在操作1110中,当P2P服务请求被识别时,电子设备101可以与外部电子设备102建立GATT连接。
在操作1120中,电子设备101可测量与外部电子设备102的通信范围。例如,当可以确定P2P服务是用于控制车辆设备还是外部电子设备102或者电子设备101位于外部电子设备102的外围设备(例如,车辆)内部时,可以省略测量通信范围的上述操作。
在操作1130中,当确定外部电子设备102位于通信范围内(例如,在第二电子设备内部)时,电子设备101可向外部电子设备102请求激活P2P服务。
根据本公开的各种实施例,激活P2P服务的请求可以被包括在基于TDS协议的TDS封包中,并被发送到外部电子设备102。
在操作1140中,外部电子设备102可以通过识别P2P服务激活请求来识别用户是否被允许使用P2P服务。例如,外部电子设备102可以在显示器(例如,图1的显示设备160)上显示能够对P2P服务的允许或拒绝作出响应的屏幕。
根据本公开的各种实施例,外部电子设备102可以通过屏幕显示关于从电子设备101请求的P2P服务的信息(例如,由电子设备101的用户进行AAA汽车控制)。例如,外部电子设备102的用户可以选择用于对激活P2P服务的许可或拒绝作出响应的按钮。
在操作1150,当通过屏幕输入许可响应时,外部电子设备102可激活P2P服务。
在操作1151,外部电子设备102可将关于P2P服务是否被激活的信息包括在TDS封包中,并将该信息发送到电子设备101。
在操作1160,在关于P2P服务是否被激活的信息指示服务许可的情况下,电子设备101可激活P2P服务。
在操作1170,电子设备101可将服务移交相关信息发送到外部电子设备102。例如,服务移交相关信息可以包括执行P2P服务的通信方案或应用的账户信息。
在操作1171,电子设备101可将识别的服务移交相关信息发送到与P2P服务相关的服务器或应用,以通知服务移交。
在操作1172中,外部电子设备102可将从电子设备101接收的服务移交相关信息发送到与激活的P2P服务相关的服务器或应用,以通知服务移交。
根据本公开的各种实施例,在P2P服务在外部电子设备102(或外部电子设备102的外围设备)中用于执行电子设备101中的音乐流服务的情况下,外部电子设备102可以通过服务的账户信息访问对应的服务的服务器或应用,以通过外部电子设备102执行电子设备101的服务。
在操作1180,电子设备101和外部电子设备102可以释放GATT连接。例如,在此后执行BLE配对操作的情况下,电子设备101和外部电子设备102可以重新建立GATT连接。
在操作1190中,电子设备101和外部电子设备102可通过激活的P2P服务的服务器或应用来执行P2P服务。例如,电子设备101中的音乐流服务被移交给外部电子设备102,并且外部电子设备102可以控制音乐流服务通过外部电子设备102或外围设备(例如,AAA汽车)来执行。
图12是示出根据本公开的各种实施例的用于识别P2P服务是否被允许的屏幕配置的示例的图。
参照图12,当从电子设备101接收到P2P服务激活请求时,外部电子设备102可以在显示器(例如,图1的显示器160)上显示用于询问用户许可激活P2P服务的屏幕1200。
根据本公开的各种实施例,屏幕1200可以包括通知电子设备101的用户(例如,“Tom”)请求与外部电子设备102的外围设备(例如,“AAA汽车”)的P2P服务(例如,经由蓝牙通信的AAA汽车控制)的内容、用于输入对P2P服务的拒绝响应的拒绝按钮1201、或者用于输入对P2P服务的许可响应的允许按钮1202。
根据本公开的各种实施例,当外部电子设备102的用户输入允许按钮1202时,外部电子设备102可以激活P2P服务并通知电子设备101P2P服务是否被激活。例如,当电子设备101识别P2P服务是否被激活时,向AAA汽车执行服务移交,并且电子设备101可以与AAA汽车执行P2P服务。
图13是示出根据本公开的各种实施例的识别在电子设备中是否激活了与服务目标设备的P2P服务的操作的示例的流程图。
根据本公开的各种实施例,电子设备101和外部电子设备102可以包括短距离通信模块(例如,210或210a)。例如,短距离通信模块(例如,210或210a)可以包括Wi-Fi感知模块(例如,211或211a)或Wi-Fi直连模块(例如,212或212a)。
参照图13,在操作1310,电子设备101可以与外部电子设备102建立GATT连接。
在操作1320,电子设备101可测量与外部电子设备102的通信范围。例如,当可以确定外部电子设备102是否连接到车辆设备并且电子设备101位于连接到外部电子设备102的车辆设备内部时,或者当通过与外部电子设备102的接触触发P2P服务时,可以省略测量上述通信范围的操作。
在操作1330,当确定外部电子设备102位于通信范围内(例如,在车辆设备内部)时,电子设备101可以向外部电子设备102请求激活P2P服务。例如,P2P服务激活请求可以被包括在TDS封包中,并被发送到外部电子设备102。
在操作1340,外部电子设备102可以通过识别P2P服务激活请求来识别用户是否被允许使用P2P服务。例如,外部电子设备102可以显示能够对P2P服务的许可或拒绝做出响应的屏幕,并且当通过屏幕输入许可响应时激活P2P服务。
在操作1351,在关于P2P服务是否被激活的信息指示服务许可的情况下,外部电子设备102可控制Wi-Fi感知模块211a(或Wi-Fi直连模块212a)打开通信会话以激活P2P服务。例如,短距离通信模块210a可以请求Wi-Fi感知模块211a打开通信会话或者控制Wi-Fi直连模块212a发起Wi-Fi直连通信。
在操作1352,外部电子设备102的Wi-Fi感知模块211a可根据通信会话打开请求执行用于订阅对应的服务的控制。
根据本公开的各种实施例,短距离通信模块210a可将通信会话打开请求发送到Wi-Fi直连模块212a,Wi-Fi直连模块212a可通过执行对等体(peer)发现和连接来搜索可通过Wi-Fi直连连接的设备,并且可被配置为连接到搜索到的设备。
在操作1353,外部电子设备102的Wi-Fi感知模块211a(或Wi-Fi直连模块212a)可将包括与服务订阅相关的信息的连接信息发送到短距离通信模块210a。例如,可以发送连接成功通知。
在操作1354,外部电子设备102可在TDS封包中包括关于P2P服务是否被激活的信息,并将该信息发送到电子设备101。
在操作1361,在关于P2P服务是否被激活的信息指示服务许可的情况下,电子设备101可控制Wi-Fi感知模块211(或Wi-Fi直连模块212)打开通信会话以激活P2P服务。例如,短距离通信模块210可以请求Wi-Fi感知模块211打开通信会话或者控制Wi-Fi直连模块212发起Wi-Fi直连通信。
在操作1362,电子设备101的Wi-Fi感知模块211可根据通信会话打开请求执行用于发布对应的服务的控制。根据本公开的各种实施例,短距离通信模块210可将通信会话打开请求发送到Wi-Fi直连模块212,Wi-Fi直连模块212可通过执行对等体发现和连接来搜索可通过Wi-Fi直连连接的设备,并且可被配置为连接到搜索到的设备。
在操作1363,电子设备101的Wi-Fi感知模块211(或Wi-Fi直连模块212)可将包括与发布服务相关的信息的连接信息发送到短距离通信模块210a。例如,可以发送连接成功通知。
在操作1364,电子设备101可将服务移交相关信息发送到外部电子设备102。
在操作1371,电子设备101可将识别的服务移交相关信息发送到Wi-Fi感知模块211,以请求执行服务移交。例如,Wi-Fi感知模块211可以将服务移交相关信息发送到与P2P服务相关的服务器或应用。
在操作1372,外部电子设备102可将识别的服务移交相关信息发送到Wi-Fi感知模块211a,以请求执行服务移交。例如,Wi-Fi感知模块211a可将服务移交相关信息发送到与P2P服务相关的服务器或应用。
在操作1380,电子设备101和外部电子设备102可以释放GATT连接。例如,在此后执行BLE配对操作的情况下,电子设备101和外部电子设备102可以重新建立GATT连接。
在操作1390,电子设备101的Wi-Fi感知模块211和外部电子设备102的Wi-Fi感知模块211a可以通过激活的P2P服务服务器或应用来执行P2P服务。
图14是示出根据本公开的各种实施例的识别在电子设备中是否激活了与服务目标设备的P2P服务的操作的示例的流程图。
根据本公开的各种实施例,电子设备101和外部电子设备102可以包括文件传输应用1401或1401a,其通过短距离通信模块(例如,210或210a)或点击以共享功能(例如,同步功能)来执行文件传输。文件传输应用1401或1401a可以是用于与电子设备101或外部电子设备102共享存储在服务器或云中的文件的图库应用。
根据本公开的各种实施例,当电子设备101的用户执行文件传输应用1401并选择要发送到至少一个外部电子设备(例如,102)的至少一个图像时,可以识别出P2P服务(例如,至少一个图像传输)被请求。例如,电子设备101可以识别出用户选择至少一个外部电子设备来发送至少一个图像以及对至少一个图像的选择。
根据本公开的各种实施例,随后的操作1410至1490被描述为电子设备101和外部电子设备102的操作,但是操作1410至1490可以分别利用电子设备101打算对其执行P2P服务的多个外部电子设备(例如,外部电子设备102)执行。
参照图14,在操作1410,电子设备101可以通过短距离通信模块210与外部电子设备102建立GATT连接。
在操作1420,电子设备101可通过短距离通信模块210测量与外部电子设备102的通信范围。例如,当可以确定电子设备101是否位于作为车辆设备的外部电子设备102内部时,或者当通过与外部电子设备102的接触触发P2P服务时,可以省略测量上述通信范围的操作。
在操作1430,当确定外部电子设备102位于通信范围内(例如,在第二电子设备内)时,电子设备101可通过短距离通信模块210向外部电子设备102请求激活P2P服务。例如,P2P服务激活请求可以被包括在TDS封包中,并被发送到外部电子设备102。
在操作1441,外部电子设备102的短距离通信模块210a可以通过识别P2P服务激活请求来识别用户是否被允许使用P2P服务。例如,多个外部电子设备(例如,102)中的每一个可以显示能够对P2P服务的许可或拒绝作出响应的屏幕,并且当通过屏幕输入许可响应时激活P2P服务。
在操作1442,当外部电子设备102发送P2P服务激活请求时,外部电子设备102可将点击跟踪命令发送到文件传输应用1401a,以执行识别将被发送到与外部电子设备102接触的电子设备101的文件的点击跟踪功能。例如,短距离通信模块210a可以向文件传输应用1401a发送点击跟踪命令。
在操作1443,外部电子设备102的文件传输应用1401a可根据点击跟踪命令识别将被发送到电子设备101的至少一个图像。
在操作1444,外部电子设备102的文件传输应用1401a可以通知短距离通信模块210a点击跟踪已经开始。
在操作1451,电子设备101可以根据P2P服务激活请求将点击跟踪命令发送到文件传输应用1401,以执行识别将被发送到与电子设备101接触的外部电子设备102的文件的点击跟踪功能。例如,短距离通信模块210可以向文件传输应用1401发送点击跟踪命令。
在操作1452,电子设备101的文件传输应用1401可根据点击跟踪命令执行用于识别将通过对应的应用发送的文件的点击跟踪。
在操作1453,电子设备101的文件传输应用1401可以通知短距离通信模块210点击跟踪已经开始。
在操作1461,外部电子设备102可将关于P2P服务是否被激活的信息(例如,服务激活的成功通知)包括在TDS封包中,并将该信息发送到电子设备101。
在操作1462,电子设备101可以向外部电子设备102发送确认消息,该确认消息指示从外部电子设备102接收的P2P服务激活结果(例如,服务激活成功)被识别。
在操作1463,电子设备101可以识别用于与至少一个外部电子设备(例如,102)的P2P服务移交的服务移交信息。例如,服务移交信息可以包括与执行P2P服务的通信方案相关的信息以及与至少一个外部电子设备(例如,102)中的每一个的通信方案相关的通信配置。
根据本公开的各种实施例,服务移交相关信息可以包括指示在外部电子设备102中通过Wi-Fi感知执行P2P服务以及在另一外部电子设备中通过Wi-Fi直连执行P2P服务的信息。
在操作1470,电子设备101可将识别的服务移交相关信息发送到外部电子设备102。例如,电子设备101可以向至少一个外部电子设备发送对应的服务移交相关信息。
在操作1471,电子设备101的短距离通信模块210可将识别的服务移交相关信息通知给文件传输应用1401。
在操作1472,外部电子设备102的短距离通信模块210a可将识别的服务移交相关信息通知给文件传输应用1401a。
根据本公开的各种实施例,文件传输应用1401或1401a可以通过使用包括在服务移交相关信息中的通信方案来执行P2P服务。
在操作1480,电子设备101的短距离通信模块210和外部电子设备102的短距离通信模块210a可以释放GATT连接。例如,在此后执行BLE配对操作的情况下,电子设备101和外部电子设备102可以重新建立GATT连接。
在操作1490,电子设备101和外部电子设备102可以通过电子设备101的文件传输应用1401和外部电子设备102的文件传输应用1401a来执行P2P服务。
根据本公开的各种实施例,电子设备101可以基于由至少一个外部电子设备(例如,102)支持的通信方案来执行服务移交。例如,电子设备101可以通过Wi-Fi感知与外部电子设备102执行P2P服务,并且可以通过Wi-Fi直连与另一外部电子设备执行P2P服务。
图15是示出根据本公开的各种实施例的识别在电子设备中是否激活了与服务目标设备的P2P服务的操作的示例的流程图。
根据本公开的各种实施例,电子设备101和外部电子设备102可以包括短距离通信模块(例如,210或210a)或文件传输应用1401或1401a。
参照图15,在操作1510,电子设备101的文件传输应用1401可以识别点击跟踪命令。例如,当电子设备101和外部电子设备102彼此接触时,文件传输应用1401可以确定通过电子设备101的传感器触发了点击跟踪操作。
在操作1520,外部电子设备102的文件传输应用1401a可以识别点击跟踪命令。例如,文件传输应用1401a可以确定当外部电子设备102和外部电子设备(例如,电子设备101)彼此接触时触发了点击跟踪操作。
在操作1521,外部电子设备102的文件传输应用1401a可以向外部电子设备102的短距离通信模块210a通知点击跟踪事件的发生。
在操作1522,外部电子设备102的短距离通信模块210a可以向电子设备101广告指示点击跟踪事件的发生的通知。例如,通知可以被包括在TDS封包中,并且可以包括UUID或散列数据。
在操作1530,电子设备101的短距离通信模块210可通过识别来自外部电子设备102的广告的通知来向电子设备101的文件传输应用1401通知点击跟踪事件的发生。例如,点击跟踪事件可以是外部电子设备102通过外部电子设备102的传感器检测到的点击跟踪事件的通知。
在操作1530,电子设备101的文件传输应用1401可通过识别有效点击和将被发送到外部电子设备102的文件来停止点击跟踪。
在操作1531,电子设备101的文件传输应用1401可发送包括关于由短距离通信模块210识别的有效点击的信息的结果。
在操作1532,电子设备101可通过短距离通信模块210向外部电子设备102请求用于服务移交的通信连接。
在操作1540,电子设备101可通过短距离通信模块210建立与外部电子设备102的GATT连接以进行服务移交。
在操作1561,电子设备101可将识别的服务移交相关信息通知给文件传输应用1401。
在操作1562,外部电子设备102可将识别的服务移交相关信息通知给文件传输应用1401a。
在操作1570,电子设备101和外部电子设备102可通过短距离通信模块210或210a释放GATT连接。例如,在此后执行BLE配对操作的情况下,电子设备101和外部电子设备102可以重新建立GATT连接。
在操作1580,电子设备101和外部电子设备102可以通过电子设备101的文件传输应用1401和外部电子设备102的文件传输应用1401a来执行P2P服务。
图16是示出根据本公开的各种实施例的在电子设备之间的P2P服务中执行认证的操作的示例的流程图。
根据本公开的各种实施例,电子设备101或外部电子设备102的制造商可以包括密钥存储器221或221a,来销售电子设备101或外部电子设备102。例如,密钥存储器221或221a可识别对根认证证书的认证证书签名请求(certificate signing request,CSR),并证明认证证书签名以通过根认证证书认证接收的密钥或认证证书链。
参照图16,执行P2P服务的电子设备(例如,电子设备101或外部电子设备102)可以生成包括一对私有密钥和公开秘钥的密钥对。
根据本公开的各种实施例,在操作1611,电子设备101的安全模块220可以生成包括一对私有密钥A和公开秘钥A的密钥对A。在操作1612,外部电子设备102的安全模块220a可以生成包括一对私有密钥B和公开秘钥B的密钥对B。
在操作1620,电子设备101或外部电子设备102可向对方设备请求认证。例如,发布P2P服务的电子设备可以向订阅P2P服务的电子设备发送包括公开秘钥(例如,公开秘钥A或公开秘钥B)的认证请求。
在操作1630,电子设备101可通过使用接收的外部电子设备102的公开秘钥B来生成认证证书链。
在操作1640,外部电子设备102可通过使用接收的电子设备101的公开秘钥A来生成认证证书链。
在操作1650,电子设备101和外部电子设备102可与对方设备交换生成的认证证书链。
在操作1661,电子设备101可通过存储在密钥存储器221中的根认证证书来验证接收的认证证书链。
在操作1662,外部电子设备102可通过存储在密钥存储器221a中的根认证证书来验证接收的认证证书链。
根据本公开的各种实施例,电子设备101和外部电子设备102可以基于通过每个设备的根认证证书验证认证证书链的结果来完成对于对方设备的认证。
在操作1671,电子设备101的安全模块220可根据认证证书链的验证结果生成共享密钥。
在操作1672,外部电子设备102的安全模块220a可根据认证证书链的验证结果生成共享密钥。
根据本公开的各种实施例的电子设备101或外部电子设备102可以根据认证证书链的验证来完成关于对方设备的认证,并且可以基于椭圆曲线迪菲-赫尔曼(ECDH)的密钥生成规则使用私有密钥(例如,私有密钥A或私有密钥B)来生成共享密钥。例如,共享密钥可以用于通过用SHA-256算法进行散列来解密外部电子设备102的数据。
根据本公开的各种实施例,由于电子设备(例如,电子设备101或外部电子设备102)通过使用公开秘钥和通过使用根认证证书互相认证的外部电子设备的认证证书链来执行认证,因此即使MITM攻击者窃取了公开秘钥或认证证书,解密也是不可能的,因此可以有效地防止中间人攻击。
图17是示出根据本公开的各种实施例的在电子设备之间执行P2P服务的认证的操作的示例的流程图。
根据本公开的各种实施例,电子设备101或外部电子设备102可以包括通信模块190或190a或安全模块220或220a。安全模块220或220a可以包括密钥存储器221或221a,或者在功能上连接到密钥存储器221或221a,以通过使用存储在密钥存储器221或221a中的认证证书来验证从对方设备接收的密钥或认证证书链。
参照图17,在操作1710,执行P2P服务的电子设备(例如,电子设备101或外部电子设备102)可以彼此建立GATT连接。
在操作1721,电子设备101可生成包括一对私有密钥A和公开秘钥A的密钥对A。
在操作1723,外部电子设备102可以生成包括一对私有密钥B和公开秘钥B的密钥对B。
在操作1731,电子设备101可通过GATT连接将公开秘钥A发送到外部电子设备102,用于公开秘钥A的认证。
在操作1732,当外部电子设备102从电子设备101接收公开秘钥A时,外部电子设备102可以请求外部电子设备102的安全模块220a证明公开秘钥A。
在操作1733,外部电子设备102的安全模块220a可发布公开秘钥A的认证证书链,并将认证证书链发送到通信模块190a。
在操作1734,外部电子设备102可以将公开秘钥A的认证证书链发送到电子设备101。
在操作1741中,外部电子设备102可通过GATT连接将公开秘钥B发送到电子设备101,用于公开秘钥B的认证
在操作1742,当电子设备101从外部电子设备102接收公开秘钥B时,电子设备101可以请求电子设备102的安全模块220证明公开秘钥B。
在操作1743,电子设备101的安全模块220可发布公开秘钥B的认证证书链,并将认证证书链发送到通信模块190。
在操作1744,电子设备101可将公开秘钥B的认证证书链发送到外部电子设备102。
在操作1751,外部电子设备102可将对于从电子设备101接收的公开秘钥B的认证证书链的验证请求发送到安全模块220a。
根据本公开的各种实施例,安全模块220a可以通过使用存储在密钥存储器221中的根认证证书来发送对公开秘钥B的认证证书链的验证的请求。
在操作1772,当公开秘钥B的认证证书链被验证为有效时,外部电子设备102的安全模块220a可生成可与电子设备101共同使用的共享密钥。
在操作1761,电子设备101可请求安全模块220验证从外部电子设备102接收的公开秘钥A的认证证书链的有效性。
根据本公开的各种实施例,安全模块220可以通过使用存储在密钥存储器221中的根认证证书来验证公开秘钥A的认证证书链的有效性。
在操作1771,当公开秘钥A的认证证书链被验证为有效时,电子设备101的安全模块220可生成可与外部电子设备102共同使用的共享密钥。
根据本公开的各种实施例,操作1731至1772的顺序可以改变。例如,在电子设备101通过操作1731将公开秘钥A发送到外部电子设备102之后,外部电子设备102可以通过操作1741将公开秘钥B发送到电子设备101。
图18是示出根据本公开的各种实施例的在电子设备之间执行P2P服务的认证的操作的示例的流程图。
参照图18,电子设备101和外部电子设备102可以建立GATT连接,并通过GATT连接交换认证信息,以执行关于对方设备的认证。
在操作1840,电子设备101和外部电子设备102可以交换附加信息。例如,附加信息可以包括对应的电子设备希望连接到对方设备的通信方案信息或者与特定的通信方案相关的配置信息。
在操作1841,电子设备101可以向外部电子设备102发送用共享密钥加密的随机数A。
在操作1842,外部电子设备102可以将利用共享密钥加密的随机数B发送到电子设备101。
根据本公开的各种实施例,随机数A和随机数B由每个电子设备随机生成,并且可以与时间戳一起被映射和存储。
在操作1851,电子设备101可通过用共享密钥解密随机数B来存储接收的加密的随机数B。
在操作1852,外部电子设备102可以通过用共享密钥解密随机数A来存储接收到的加密的随机数A。
在操作1860,电子设备101和第二电子设备102可以释放GATT连接。
图19是示出根据本公开的各种实施例的通过在电子设备之间执行P2P服务的认证来执行服务移交的操作的示例的流程图。
参照图19,在操作1912中,外部电子设备102可以配置扫描过滤器。
在操作1913中,外部电子设备102可以基于配置的扫描过滤器执行扫描。
在操作1920中,电子设备101可以识别P2P服务被请求。
在操作1931中,电子设备101可以识别存储的随机数B。例如,随机数B可以被加密并从外部电子设备102接收,并且可以通过使用与外部电子设备102共同生成的共享密钥来解密和存储。
在操作1932,电子设备101可以设置广告数据。例如,电子设备101可以将广告数据设置为包括TDS UUID和散列的随机数B。
在操作1933,当确定了P2P服务的服务移交时,电子设备101可以确定广告的开始。
在操作1941,电子设备101可以广告包括TDS UUID和散列的随机数B的广告数据。
在操作1942中,外部电子设备102可以识别存储的随机数A。例如,外部电子设备102可以识别存储在外部电子设备102中的随机数B的时间戳,并且可以识别包括与随机数B的时间戳相对应的时间戳的随机数A。
在操作1943,当随机数A被识别时,外部电子设备102可以向电子设备101请求通信连接。
在操作1950,电子设备101和外部电子设备102可以建立GATT连接。当通过GATT连接执行蓝牙配对时,电子设备101和外部电子设备102可以释放GATT连接。例如,当此后执行BLE配对操作时,电子设备101和外部电子设备102可以重新建立GATT连接。
图20是示出根据本公开的各种实施例的用于通知电子设备之间的P2P服务的服务移交的屏幕配置的示例的图。
参照图20,电子设备101可以通过与P2P服务相关的蓝牙应用向用户通知服务移交。例如,可以根据蓝牙应用的执行来显示服务移交通知屏幕2000。
根据本公开的各种实施例的服务移交通知屏幕2000可以根据服务移交或者在其中执行服务移交的电子设备的列表2010来显示通信方案信息(例如,“蓝牙”)。例如,电子设备列表2010可以包括通过对应的通信方案可连接到外部电子设备102的设备(外部电子设备102的车辆设备(AAA汽车)2001)。
根据本公开的各种实施例,当电子设备101的用户从电子设备列表2010中选择外部电子设备102的车辆设备2001时,可以向外部电子设备102的车辆设备2001执行服务移交,以在电子设备101和外部电子设备102的车辆设备2001之间执行P2P通信。
图21是示出根据本公开的各种实施例的在电子设备之间发现P2P服务中的服务移交设备的操作的示例的流程图。
参照图21,在操作2110,电子设备101可识别请求了用于通过至少一个外部电子设备(例如,102)输出电子设备101的声源的音乐共享服务。
在操作2120,电子设备101可以发现外部电子设备102。例如,电子设备102可以将外部电子设备102确定为发现的设备。
在操作2121,电子设备101可以向外部电子设备102请求P2P服务的连接。
在操作2122,响应于连接请求,电子设备101可与外部电子设备102建立GATT连接。
根据本公开的各种实施例,电子设备101可以通过GATT连接与外部电子设备102执行BLE配对,但是P2P服务用于将电子设备101的声源输出到外部电子设备的蓝牙A2DP设备,并且可以省略与外部电子设备102的配对操作。
在操作2140,电子设备101可对外部电子设备102执行认证。
在操作2141,外部电子设备102可以将与外部电子设备102的通信相关的信息发送到电子设备101。例如,该信息可以包括与可与外部电子设备102连接的通信方案或通信属性相关的信息。
根据本公开的各种实施例,电子设备101可以基于交换的信息来识别外部电子设备102是否位于通信范围内,但是对应的P2P服务打算通过执行到连接到外部电子设备102的设备的服务移交来从连接到外部电子设备102的设备输出电子设备101的声源,并且可以省略识别上述通信范围的操作。
在操作2150,电子设备101可以发现用于服务移交的电子设备。例如,电子设备101可以基于从外部电子设备102接收的与通信相关的信息,确定与用于执行P2P服务的设备(例如,外围设备2101)和用于执行P2P2服务的设备执行通信连接的方案。
在操作2151,电子设备101可将与服务移交相关的信息发送到外部电子设备102。例如,基于与外部电子设备102交换的通信信息,服务移交相关信息可以包括执行音乐共享服务的电子设备信息(例如,外部电子设备102或外围设备2101)、通信方案或与通信属性相关的信息。
在操作2160,外部电子设备102可识别从电子设备101发送的服务移交相关信息。
在操作2161,外部电子设备102可向包括在服务移交相关信息中的外围设备2101通知音乐共享服务的应用或服务移交。
根据本公开的各种实施例,电子设备101可以基于交换的外围设备信息来识别外部电子设备102的外围设备2101(例如,A2DP设备)以执行音乐共享服务并且识别通信方案(例如,蓝牙)以执行与外围设备2101的音乐共享服务。
在操作2170,电子设备101和外部电子设备102可以执行P2P服务。
在操作2171,外部电子设备102可以与外围设备2101执行P2P服务。例如,电子设备101可以通过蓝牙连接将电子设备101的声源发送到外围设备2101,并且可以控制声源从外围设备2101输出。
根据各种实施例的电子设备可以是各种类型的电子设备之一。电子设备可包括例如便携式通信设备(例如,智能电话)、计算机设备、便携式多媒体设备、便携式医疗设备、相机、可穿戴设备或家用电器。根据本公开的实施例,电子设备不限于以上所述的那些电子设备。
应该理解的是,本公开的各种实施例以及其中使用的术语并不意图将在此阐述的技术特征限制于具体实施例,而是包括针对相应实施例的各种改变、等同形式或替换形式。对于附图的描述,相似的参考标号可用来指代相似或相关的元件。将理解的是,与术语相应的单数形式的名词可包括一个或更多个事物,除非相关上下文另有明确指示。如这里所使用的,诸如“A或B”、“A和B中的至少一个”、“A或B中的至少一个”、“A、B或C”、“A、B和C中的至少一个”以及“A、B或C中的至少一个”的短语中的每一个短语可包括在与所述多个短语中的相应一个短语中一起列举出的项的任意一项或所有可能组合。如这里所使用的,诸如“第1”和“第2”或者“第一”和“第二”的术语可用于将相应部件与另一部件进行简单区分,并且不在其它方面(例如,重要性或顺序)限制所述部件。将理解的是,在使用了术语“可操作地”或“通信地”的情况下或者在不使用术语“可操作地”或“通信地”的情况下,如果一元件(例如,第一元件)被称为“与另一元件(例如,第二元件)结合”、“结合到另一元件(例如,第二元件)”、“与另一元件(例如,第二元件)连接”或“连接到另一元件(例如,第二元件)”,则意味着所述一元件可与所述另一元件直接(例如,有线地)连接、与所述另一元件无线连接、或经由第三元件与所述另一元件连接。
如这里所使用的,术语“模块”可包括以硬件、软件或固件实现的单元,并可与其他术语(例如,“逻辑”、“逻辑块”、“部分”或“电路”)可互换地使用。模块可以是被适配为执行一个或更多个功能的单个集成部件或者是该单个集成部件的最小单元或部分。例如,根据实施例,可以以专用集成电路(ASIC)的形式来实现模块。
可将在此阐述的各种实施例实现为包括存储在存储介质(例如,内部存储器#36或外部存储器#38)中的可由机器(例如,电子设备#01)读取的一个或更多个指令的软件(例如,程序#40)。例如,在处理器的控制下,所述机器(例如,电子设备#01)的处理器(例如,处理器#20)可在使用或无需使用一个或更多个其它部件的情况下调用存储在存储介质中的所述一个或更多个指令中的至少一个指令并运行所述至少一个指令。这使得所述机器能够操作用于根据所调用的至少一个指令执行至少一个功能。所述一个或更多个指令可包括由编译器产生的代码或能够由解释器运行的代码。可以以非暂时性存储介质的形式来提供机器可读存储介质。其中,术语“非暂时性存储介质”是有形设备,并且不包括信号(例如,电磁波),但是该术语并不在数据被半永久性地存储在存储介质中与数据被临时存储在存储介质中之间进行区分。例如,“非暂时性存储介质”可以包括临时存储数据的缓存器。
根据实施例,可在计算机程序产品中包括和提供根据本公开的各种实施例的方法。计算机程序产品可作为产品在销售者和购买者之间进行交易。可以以机器可读存储介质(例如,紧凑盘只读存储器(CD-ROM))的形式来发布计算机程序产品,或者可经由应用商店(例如,Play StoreTM)在线发布(例如,下载或上传)计算机程序产品,或者可直接在两个用户设备(例如,智能电话)之间分发(例如,下载或上传)计算机程序产品。如果是在线发布的,则计算机程序产品(例如,可下载应用)中的至少部分可以是临时产生的,或者可将计算机程序产品中的至少部分至少临时存储在机器可读存储介质(诸如制造商的服务器、应用商店的服务器或转发服务器的存储器)中。
根据各种实施例,上述部件中的每个部件(例如,模块或程序)可包括单个实体或多个实体。根据各种实施例,可省略上述部件中的一个或更多个部件,或者可添加一个或更多个其它部件。可选择地或者另外地,可将多个部件(例如,模块或程序)集成为单个部件。在这种情况下,根据各种实施例,该集成部件可仍旧按照与所述多个部件中的相应一个部件在集成之前执行一个或更多个功能相同或相似的方式,执行所述多个部件中的每一个部件的所述一个或更多个功能。根据各种实施例,由模块、程序或另一部件所执行的操作可顺序地、并行地、重复地或以启发式方式来执行,或者所述操作中的一个或更多个操作可按照不同的顺序来运行或被省略,或者可添加一个或更多个其它操作。
Claims (15)
1.一种电子设备,包括:
通信模块;
安全模块;
可操作地连接到通信模块和安全模块的处理器;以及
可操作地连接到处理器的存储器,其中所述存储器存储指令,所述指令被配置为当被执行时,使处理器能够:
在对等(P2P)服务被请求时,从外部电子设备接收公开秘钥;
通过安全模块将基于接收的公开秘钥生成的认证证书链发送到外部电子设备;
通过使用存储在安全模块中的根认证证书来验证从外部电子设备接收的认证证书链;
从外部电子设备接收关于外部电子设备的加密的信息;
通过使用基于验证接收的认证证书链的结果生成的共享密钥来解密关于外部电子设备的加密的信息;和
基于关于外部电子设备的解密的信息,通过通信模块执行与外部电子设备的P2P服务。
2.根据权利要求1所述的电子设备,其中所述指令被配置为使处理器能够通过通信模块,通过与外部电子设备的通用属性简档(GATT)连接接接收公开秘钥并且接收关于外部电子设备的加密的信息。
3.根据权利要求1所述的电子设备,其中关于外部电子设备的加密的信息包括外部电子设备的电话号码的至少一部分,其中所述指令被配置为使处理器能够:
用共享密钥解密外部电子设备的电话号码;和
通过将解密的值与存储在存储器中的外部电子设备的电话号码进行比较来识别外部电子设备的有效性。
4.根据权利要求1所述的电子设备,其中所述指令被配置为使处理器能够根据椭圆曲线迪菲-赫尔曼(ECDH)规则用与外部电子设备102相同的共享密钥生成共享密钥。
5.一种电子设备,包括:
至少一个通信模块;
可操作地连接到通信模块的处理器;以及
可操作地连接到处理器的存储器,其中所述存储器存储指令,所述指令被配置为当被执行时,使处理器能够:
通过通信模块识别对外部电子设备的服务请求;
对外部电子设备执行认证;
根据认证的结果,控制通信模块建立与外部电子设备的第一短距离通信的连接;
通过第一短距离通信接收关于外部电子设备的通信信息;
基于识别的通信信息,识别用于将服务与外部电子设备连接的第二短距离通信;和
控制通信模块通过第二短距离通信连接到外部电子设备。
6.根据权利要求5所述的电子设备,还包括可操作地连接到处理器的安全模块,其中所述指令被配置为使处理器能够:
向外部电子设备发送公开秘钥;
从外部电子设备接收基于发送的公开秘钥生成的认证证书链;
通过使用存储在安全模块中的根认证证书来验证从外部电子设备接收的认证证书链;和
基于验证认证证书链的结果,控制安全模块识别与外部电子设备共同使用的共享密钥。
7.根据权利要求6所述的电子设备,其中所述指令被配置为使处理器能够:
基于共享密钥解密通信信息;和
基于解密的通信信息识别与外部电子设备的先前通信连接的信息。
8.根据权利要求7所述的电子设备,其中所述指令被配置为使处理器能够:
识别随机生成的随机数值和随机数值的时间戳;和
控制安全模块用共享密钥加密随机数值。
9.根据权利要求8所述的电子设备,其中所述指令被配置为使处理器能够:
控制所述通信模块向外部电子设备发送加密的随机数值;
基于识别的时间戳值来识别解密的通信信息和识别的随机数值是否对应;和
当确定解密的通信信息和识别的随机数值对应时,识别出先前已经与外部电子设备执行了短距离通信。
10.根据权利要求5所述的电子设备,其中所述指令被配置为使所述处理器能够释放第一短距离通信的连接,并建立所述第二短距离通信的连接。
11.根据权利要求5所述的电子设备,其中所述指令被配置为使处理器能够:
根据识别与外部电子设备的第二短距离通信的连接来识别服务移交信息;和
向P2P服务和应用传送服务移交信息。
12.根据权利要求11所述的电子设备,其中所述服务移交信息包括与通过其执行P2P服务的通信方案相关的配置信息、关于执行服务移交的至少一个外围设备的识别信息、或者关于至少一个外围设备的通信信息中的至少一者。
13.一种用于在电子设备中执行对等(P2P)服务的方法,所述方法包括:
在请求P2P服务时,从外部电子设备接收公开秘钥;
将基于接收的公开秘钥生成的认证证书链发送到外部电子设备;
通过使用存储在安全模块中的根认证证书来验证从外部电子设备接收的认证证书链;
从外部电子设备接收关于外部电子设备的加密的信息;
通过使用基于验证接收的认证证书链的结果生成的共享密钥来解密关于外部电子设备的加密的信息;以及
基于关于外部电子设备的解密的信息,执行与外部电子设备的P2P服务。
14.根据权利要求13所述的方法,还包括通过与外部电子设备的GATT连接接收公开秘钥并接收关于外部电子设备的加密的信息。
15.一种用于在电子设备中执行对等(P2P)服务的方法,所述方法包括:
识别对外部电子设备的服务请求;
对外部电子设备执行认证;
根据认证的结果建立与外部电子设备的第一短距离通信的连接;
通过第一短距离通信接收关于外部电子设备的通信信息;
基于识别的通信信息识别用于与外部电子设备连接的第二短距离通信;和
控制通过第二短距离通信连接外部电子设备和服务。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20200015937 | 2020-02-10 | ||
KR10-2020-0015937 | 2020-02-10 | ||
KR10-2020-0016684 | 2020-02-11 | ||
KR1020200016684A KR20210101998A (ko) | 2020-02-10 | 2020-02-11 | 전자 장치 및 전자 장치에서의 p2p 서비스 수행 방법 |
PCT/KR2021/001738 WO2021162427A1 (ko) | 2020-02-10 | 2021-02-09 | 전자 장치 및 전자 장치에서의 피어 투 피어 서비스 수행 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115104283A true CN115104283A (zh) | 2022-09-23 |
Family
ID=77292379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180013887.6A Pending CN115104283A (zh) | 2020-02-10 | 2021-02-09 | 电子设备和用于在电子设备中执行对等服务的方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220377553A1 (zh) |
EP (1) | EP4102770A4 (zh) |
CN (1) | CN115104283A (zh) |
WO (1) | WO2021162427A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11677560B2 (en) * | 2021-03-09 | 2023-06-13 | Micron Technology, Inc. | Utilization of a memory device as security token |
WO2023039294A2 (en) * | 2021-09-13 | 2023-03-16 | Sonos, Inc. | Techniques for flexible control of playback devices |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1360814B1 (en) * | 2001-02-06 | 2007-04-11 | Certicom Corp. | Mobile certificate distribution in a public key infrastructure |
US20050177715A1 (en) * | 2004-02-09 | 2005-08-11 | Microsoft Corporation | Method and system for managing identities in a peer-to-peer networking environment |
US8150039B2 (en) * | 2008-04-15 | 2012-04-03 | Apple Inc. | Single security model in booting a computing device |
CN105981352B (zh) * | 2014-02-05 | 2018-03-13 | 苹果公司 | 控制器、由控制器控制的附件和通信方法 |
CN105359154B (zh) * | 2014-05-14 | 2018-06-26 | 华为技术有限公司 | 一种终端配对方法及配对终端 |
US10149159B1 (en) * | 2015-03-19 | 2018-12-04 | Proxidyne, Inc. | Trusted beacon system and method |
US10122801B2 (en) * | 2015-07-02 | 2018-11-06 | Qualcomm Incorporated | Service discovery and topology management |
US9980142B2 (en) * | 2016-03-22 | 2018-05-22 | Google Llc | Methods and apparatus for SIM-based authentication of non-SIM devices |
US10616808B2 (en) * | 2016-07-19 | 2020-04-07 | Qualcomm Incorporated | Exchanging network server registration credentials over a D2D network |
US10142325B2 (en) * | 2016-08-29 | 2018-11-27 | Ivanti, Inc. | Systems and methods for credentials distribution |
CN109690959B (zh) * | 2016-09-09 | 2021-02-26 | 华为技术有限公司 | 一种文件的发送方法、接收方法及终端 |
US10812974B2 (en) * | 2017-05-06 | 2020-10-20 | Vmware, Inc. | Virtual desktop client connection continuity |
US10721621B2 (en) * | 2018-05-23 | 2020-07-21 | Cisco Technology, Inc. | Updating policy for a video flow during transitions |
US10326797B1 (en) * | 2018-10-03 | 2019-06-18 | Clover Network, Inc | Provisioning a secure connection using a pre-shared key |
-
2021
- 2021-02-09 CN CN202180013887.6A patent/CN115104283A/zh active Pending
- 2021-02-09 WO PCT/KR2021/001738 patent/WO2021162427A1/ko unknown
- 2021-02-09 EP EP21753239.9A patent/EP4102770A4/en active Pending
-
2022
- 2022-08-05 US US17/882,212 patent/US20220377553A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4102770A4 (en) | 2023-11-01 |
US20220377553A1 (en) | 2022-11-24 |
WO2021162427A1 (ko) | 2021-08-19 |
EP4102770A1 (en) | 2022-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111542822B (zh) | 用于共享屏幕数据的电子装置和方法 | |
US11488234B2 (en) | Method, apparatus, and system for processing order information | |
US9386045B2 (en) | Device communication based on device trustworthiness | |
US20200265418A1 (en) | Electronic device and method for providing digital signature service of block chain using the same | |
US11496900B2 (en) | Electronic device and method for storing user identification information | |
WO2017041599A1 (zh) | 业务处理方法及电子设备 | |
US20220377553A1 (en) | Electronic device and method for performing peer to peer service in electronic device | |
US20220239509A1 (en) | Method for storing and recovering key for blockchain-based system, and device therefor | |
CN112655230B (zh) | 用于uwb事务处理的方法及其电子装置 | |
CN108769992B (zh) | 用户认证方法、装置、终端及存储介质 | |
CN114207618A (zh) | 用于基于融合密匙生成证明证书的电子设备和方法 | |
US11582815B2 (en) | Electronic device for receiving data packet in Bluetooth network environment and method thereof | |
US11089443B2 (en) | Electronic device and method for connecting short range communication | |
US11647564B2 (en) | Apparatus and method for performing data communication in NAN protocol-based network environment | |
US20230231701A1 (en) | Electronic device for managing right by using decentralized network, and operation method thereof | |
US20230261886A1 (en) | Electronic device and method for sharing data using blockchain network | |
US11290888B2 (en) | Electronic device for discovering device and method thereof | |
CN108460251B (zh) | 运行应用程序的方法、装置及系统 | |
CN114450663A (zh) | 使用安全集成电路来更新固件的电子装置及其操作方法 | |
KR20210049653A (ko) | 외부 전자 장치와 통신하는 방법 및 그 전자 장치 | |
CN108683684B (zh) | 登录目标即时通讯应用的方法、装置和系统 | |
JP2022076942A (ja) | 通信装置、通信装置の制御方法、及びプログラム | |
US11570602B2 (en) | Method for communicating with external electronic apparatus and electronic apparatus thereof | |
KR20210101998A (ko) | 전자 장치 및 전자 장치에서의 p2p 서비스 수행 방법 | |
US20220343747A1 (en) | Method and apparatus for providing location alarm service of electronic device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |