CN114846832A - 用于与外部电子装置进行通信的方法及其电子装置 - Google Patents
用于与外部电子装置进行通信的方法及其电子装置 Download PDFInfo
- Publication number
- CN114846832A CN114846832A CN202080090350.5A CN202080090350A CN114846832A CN 114846832 A CN114846832 A CN 114846832A CN 202080090350 A CN202080090350 A CN 202080090350A CN 114846832 A CN114846832 A CN 114846832A
- Authority
- CN
- China
- Prior art keywords
- electronic device
- external electronic
- external
- data
- certificate data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000004891 communication Methods 0.000 claims abstract description 227
- 230000004044 response Effects 0.000 claims abstract description 73
- 230000006870 function Effects 0.000 claims description 18
- 230000008569 process Effects 0.000 description 26
- 230000005540 biological transmission Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 230000000007 visual effect Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000004020 conductor Substances 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
- 230000003155 kinesthetic effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0267—Wireless devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/03—Protecting confidentiality, e.g. by encryption
-
- 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
-
- 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
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
本文公开了电子设备和方法。所述电子设备包括:存储器,其存储包括电子设备的第一证书数据和外部电子设备的第二证书数据的证书列表;短距离无线通信电路;和处理器。处理器实现所述方法,包括:检测用于请求建立与电子设备本地的设备的通信连接的触发事件;响应于检测到触发事件,控制短距离无线通信电路广播基于第一证书数据生成的通告包;从外部电子设备接收响应包,并且从所接收的响应包获取第三证书数据;基于第二证书数据和第三证书数据来验证外部电子设备;以及,如果外部电子设备被验证,则建立与外部电子设备的安全通信信道。
Description
技术领域
本公开所公开的实施例涉及电子设备之间的网络化互联通信,更具体地,涉及电子设备之间通过短距离通信的基于证书的数据共享。
背景技术
随着消费类电子设备的发展和普及,用户设备之间的连接和内容共享也在增加。短距离无线通信通常被用来实现位于共享区域内的设备之间的通信。短距离无线通信方法包括通过共同接入点共享,以及设备彼此之间的直接对等配对。通过本地无线保真(WiFi)电路进行基于直接配对的通信的示例包括“自组织(ad-hoc)”方法、移动接入点的使用和WiFi直连。
发明内容
技术问题
短距离无线通信方法在数据传输中存在缺点,即,用户手动配置短距离无线通信的设置。因此,对于没有经验和/或不熟悉无线通信的用户来说,可能难以配对设备。
当用户尝试将他或她的电子设备的内容提供给另一外部电子设备时,用户可能因此难以指定要提供内容的外部电子设备。
问题的解决方案
本公开的一方面是提供一种电子设备,包括:存储器,其存储包括电子设备的第一证书数据和外部电子设备的第二证书数据的证书列表;短距离无线通信电路;和处理器,其可操作地连接到存储器和短距离无线通信电路,其中,存储器可以存储指令,指令在执行时,使处理器:检测用于请求建立与电子设备本地的设备的通信连接的触发事件;响应于检测到触发事件,控制短距离无线通信电路以广播基于第一证书数据生成的通告包(advertisement packet);从外部电子设备接收响应包,并且从所接收的响应包获取第三证书数据;基于第二证书数据和第三证书数据来验证外部电子设备;以及,如果外部电子设备被验证,则建立与外部电子设备的安全通信信道。
本公开的另一方面是提供一种电子设备,包括:存储器,其被配置为存储电子设备的第一证书数据和与第一用户标识信息对应的第二证书数据;短距离无线通信电路;和处理器,其可操作地连接到存储器和短距离无线通信电路,其中,存储器可以存储指令,指令在执行时,使处理器:通过短距离无线通信电路,接收包括第三证书数据的通告包;响应于接收到通告包,将第三证书数据与第二证书数据进行比较;基于检测到第三证书数据与第二证书数据匹配,通过短距离无线通信电路,将基于第一证书数据生成的响应包传输到外部电子设备;以及,通过短距离无线通信电路,接收对所传输的响应包的响应,并且基于所接收的响应,建立与外部电子设备的安全通信信道。
本公开的另一方面是提供一种电子设备,包括:存储器,其被配置为存储电子设备的第一证书数据和外部电子设备的第二证书数据;短距离无线通信电路;长距离无线通信电路;和处理器,其可操作地连接到存储器、短距离无线通信电路和长距离通信电路,其中,存储器可以存储指令,指令在执行时,使处理器:通过长距离无线通信电路,使用用户账户登录到外部服务器;通过长距离无线通信电路,从外部服务器接收与用户账户对应的账户密钥值;检测用于请求建立与电子设备本地的设备的通信连接的触发事件;响应于检测到触发事件,控制短距离无线通信电路以广播包括所接收的账户密钥值的消息,其中,外部电子设备基于消息确定拥有与账户密钥值匹配的密钥值;通过短距离无线通信电路,来将第一证书数据传输到外部电子设备;通过短距离无线通信电路,从外部电子设备接收第三证书数据;以及,基于第二证书数据和第三证书数据,验证外部电子设备。
本公开的另一方面是提供一种电子设备,包括:存储器,其被配置为存储电子设备的第一证书数据和外部电子设备的第二证书数据;短距离无线通信电路;长距离无线通信电路;和处理器,其可操作地连接到存储器、短距离无线通信电路和长距离通信电路,其中,存储器可以存储指令,指令在执行时,使处理器:通过长距离无线通信电路,使用用户账户登录到外部服务器;通过长距离无线通信电路,从外部服务器接收与用户账户对应的账户密钥值;通过短距离无线通信电路,接收包括账户密钥值的消息;基于所接收的信息,标识外部电子设备具有与账户密钥值匹配的密钥值;通过短距离无线通信电路,从外部电子设备接收第三证书数据;基于第二证书数据和第三证书数据,验证外部电子设备;以及,基于检测到外部电子设备的验证完成,通过短距离无线通信电路,将第一证书数据传输到外部电子设备。
本公开的另一方面是提供一种用于由电子设备与外部电子设备进行通信的方法,并且该方法可以包括:在存储器中存储电子设备的第一证书数据和外部电子设备的第二证书数据;检测请求建立与电子设备本地的另一设备的通信连接的触发事件;响应于检测到触发事件,广播基于第一证书数据生成的通告包;基于检测到从外部电子设备接收响应于所广播的通告包接收的响应包,从响应包获取第三证书数据;基于第二证书数据和第三证书数据来验证外部电子设备;以及,基于检测到外部电子设备被验证,建立与外部电子设备的安全通信信道。
本公开的另一方面是提供一种用于由电子设备与外部电子设备进行通信的方法,并且该方法可以包括:存储电子设备的第一证书数据和外部电子设备的第二证书数据;响应于接收到包括第三证书数据的通告包,将第三证书数据与第二证书进行比较;基于检测到第三证书数据和第二证书数据之间匹配,将基于第一证书数据生成的响应包传输到外部电子设备;以及,基于所传输的响应包来从外部电子设备接收响应,并且基于响应来建立与外部电子设备的安全通信信道。
本公开的另一方面是提供一种用于由电子设备与外部电子设备进行通信的方法,并且该方法可以包括:存储电子设备的第一证书数据和外部电子设备的第二证书数据;使用用户账户登录到外部服务器;响应于检测到请求建立与电子设备本地的另一设备的通信连接的触发事件,从外部服务器接收与用户账户对应的账户密钥值;广播包括账户密钥值的消息;从外部电子设备接收对消息的响应,并且基于响应来标识外部电子设备具有与账户密钥值匹配的密钥值;将第一证书数据传输到外部电子设备;从外部电子设备接收第三证书数据;以及,基于第二证书数据和第三证书数据来验证外部电子设备。
本公开的另一方面是提供一种用于由电子设备与外部电子设备进行通信的方法,并且该方法可以包括:存储电子设备的第一证书数据和外部电子设备的第二证书数据;使用用户账户登录到外部服务器;从外部服务器接收与用户账户对应的账户密钥值;通过短距离无线通信电路,接收包括账户密钥值的消息;基于消息来标识外部电子设备具有与账户密钥值匹配的密钥值;从外部电子设备接收第三证书数据;基于第二证书数据和第三证书数据来验证外部电子设备;以及,如果外部电子设备的验证完成,则将第一证书数据传输到外部电子设备。
有益效果
根据本公开所公开的实施例,电子设备和外部电子设备可以彼此通信,而不需要电子设备和外部电子设备的一个或多个用户手动配置用于电子设备和外部电子设备之间的无线通信的设置。
根据本公开所公开的实施例,由于电子设备和外部电子设备使用为用户账户注册的电子设备和外部电子设备的证书来执行相互验证,因此受信任设备可以安全地建立彼此之间的通信连接。
根据本文件所公开的实施例,电子设备可以通过使用为电子设备注册的联系人信息,建立与和电子设备的用户相关的另一用户的外部电子设备的通信连接。
根据本公开所公开的实施例,由于可以通过使用为电子设备注册的联系人信息来将能够标识外部电子设备的信息提供给用户,因此电子设备的用户可以容易地标识连接到电子设备的外部电子设备的用户。
此外,还可以提供通过本公开直接或间接标识的各种效果。
附图说明
图1示出根据本公开的特定实施例的网络环境中的电子设备。
图2示出了在其中根据实施例的电子设备建立与外部电子设备的通信连接的设备到设备连接结构。
图3是示出根据实施例的在其中电子设备建立与外部电子设备的通信连接的过程的流程图。
图4是示出根据实施例的在其中电子设备建立与用相同的用户账户登录的外部电子设备的通信连接的过程的流程图。
图5是示出根据实施例的在其中电子设备获取共享账户密钥值并获取证书列表的过程的流程图。
图6是示出根据实施例的在其中电子设备建立与另一用户的外部电子设备的通信连接的过程的流程图。
图7概念性地示出根据实施例的用于由电子设备从服务器获取证书列表的方法。
图8示出根据实施例的由电子设备和外部电子设备获取的证书列表的示例。
图9是示出根据实施例的电子设备和外部电子设备执行相互验证的过程的流程图。
图10是示出根据实施例的电子设备获取外部电子设备的证书数据的过程的流程图。
图11示出根据实施例的电子设备通过使用利用随机数值调制的数据来识别外部电子设备的传输协议的示例。
图12示出根据实施例的电子设备通过用户界面检测触发事件的示例。
图13概念性地示出根据实施例的电子设备验证附近的外部电子设备并建立与外部电子设备的通信连接的结构。
图14示出根据实施例的在电子设备使用与外部电子设备连接的通信信道来共享内容的过程中由电子设备和用相同的用户账户登录的外部电子设备显示的屏幕的示例。
图15示出根据实施例的在电子设备使用与外部电子设备连接的通信信道来共享内容的过程中由电子设备和另一用户的外部电子设备显示的屏幕的示例。
图16示出根据实施例的表示数据共享状态的用户界面(UI)。
图17示出根据实施例的电子设备的共享UI。
图18示出根据实施例的根据数据共享状况的图标的示例。
图19示出根据实施例的表示数据共享状态的UI。
图20示出根据实施例的表示数据共享状态的UI。
图21示出外部电子设备中的连接请求UI。
对于附图的描述,相同或类似的附图标记可以用于相同或类似的元素。
具体实施方式
在下文中,将参考附图来描述本公开所公开的特定实施例。然而,这不是指将本公开限制于特定实施例,而是应被理解为包括本公开的实施例的各种修改、等同物和/或替代物。
图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)来控制与处理器120连接的电子设备101的至少一个其它组件(例如,硬件组件或软件组件),并可执行各种数据处理或计算。根据实施例,作为所述数据处理或计算的至少一部分,处理器120可将从另一组件(例如,传感器模块176或通信模块190)接收到的命令或数据加载到易失性存储器132中,对存储在易失性存储器132中的命令或数据进行处理,并将结果数据存储在非易失性存储器134中。根据实施例,处理器120可包括主处理器121(例如,中央处理单元(CPU)或应用处理器(AP))以及与主处理器121在操作上独立的或者相结合的辅助处理器123(例如,图形处理单元(GPU)、图像信号处理器(ISP)、传感器中枢处理器或通信处理器(CP))。附加或可替换地,辅助处理器123可被适配为比主处理器121耗电更少,或者被适配为特定于指定的功能。可将辅助处理器123实现为与主处理器121分离,或者实现为主处理器121的部分。
在主处理器121处于未激活(例如,睡眠)状态时,辅助处理器123(而非主处理器121)可控制与电子设备101的组件当中的至少一个组件(例如,显示设备160、传感器模块176或通信模块190)相关的功能或状态中的至少一些,或者在主处理器121处于激活状态(例如,执行应用)时,辅助处理器123可与主处理器121一起来控制。根据实施例,可将辅助处理器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可在对所述结果进行进一步处理的情况下或者在不对所述结果进行进一步处理的情况下将所述结果提供作为对所述请求的至少部分答复。为此,可使用例如云计算技术、分布式计算技术或客户机-服务器计算技术。
图2示出了在其中根据实施例的电子设备201(例如,图1的电子设备101)建立与外部电子设备202(例如,图1的电子设备102和电子设备104)的通信连接的设备到设备连接结构。
根据实施例的电子设备201可以包括处理器221、存储器222和短距离无线通信电路223。根据另一实施例,电子设备201还可以包括配置为与服务器203通信的长距离无线通信电路224。在这种情况下,短距离无线通信电路223和长距离无线通信电路224可以被配置为单独的芯片或模块,或者可以被形成为一个芯片或模块。根据实施例,电子设备201可以通过长距离无线通信协议(例如,支持图1的第二网络199的协议)与服务器203通信。处理器221可以通过执行存储在存储器222中的指令来执行控制,以操作电子设备201。
根据实施例的外部电子设备202可以包括处理器231、存储器232和短距离无线通信电路233。根据另一实施例,外部电子设备202还可以包括配置为与服务器203通信的长距离无线通信电路234。在这种情况下,短距离无线通信电路233和长距离无线通信电路234可以是单独的芯片或模块,或者可以被形成为一个芯片或模块(例如,图1的无线通信模块192)。根据实施例,外部电子设备202可以通过长距离无线通信协议(例如,支持图1的第二网络199的协议)来与服务器203通信。处理器231可以通过执行存储在存储器232中的指令来执行控制,以操作外部电子设备202。
根据实施例,为了共享内容,电子设备201可以建立与外部电子设备202的用于传输和接收数据的通信连接210。通信连接210可以是,例如,对等(P2P)通信连接(诸如WiFi自组织方法)、移动接入点和WiFi直连。内容可以是存储在存储器222中的数据或由电子设备201(例如,图1的显示设备160或声音输出设备155)输出的数据。例如,内容可以包括存储在存储器222中的多媒体数据或文本数据。可替换地,内容可以包括通过浏览器在电子设备的显示器上显示的页面或链接地址的至少一部分。
为了建立与外部电子设备202的通信连接210,电子设备201可以激活电子设备201的通信模块(例如,图1的通信模块190),并且尝试识别附近的设备,包括外部电子设备202。为了从所识别的附近设备当中选择外部电子设备202,电子设备201可以显示附近设备的列表,并且接收从列表中选择与外部电子设备202对应的项目的用户输入。电子设备201可以显示附近设备的列表,以表示诸如附近设备的型号名称的信息;然而,用户难以仅从型号名称知道哪个设备是用户想要连接的设备。
此外,如果电子设备201与外部电子设备202自动连接,则与用户的意图相反,会存在建立与不受信任设备的通信连接的危险,并且可能传输数据。
因此,根据本公开实施例,处理器221可以在服务器203中注册公共证书数据(在下文中,可以称为“第一证书数据”),其包括能够唯一地标识电子设备201的信息。此外,根据实施例的外部电子设备202的处理器231还可以在服务器203中注册公共证书数据(在下文中,可以称为“第二证书数据”),其包括能够唯一地标识外部电子设备202的信息。例如,第一证书数据可以包括由电子设备201生成的密钥对的至少一部分(例如,公共密钥)。第二证书数据可以包括由外部电子设备202生成的密钥对的至少一部分(例如,公共密钥)。
此外,根据本公开实施例的电子设备201可以从服务器203下载包括受信任设备的公共证书数据的证书列表。根据另一实施例,电子设备201可以不直接接收证书列表,而是可以使用云计算来使用存储在服务器203中的证书列表。电子设备201可以与位于附近的外部电子设备202交换公共证书数据,并且可以使用公共证书数据来执行相互验证。
根据本公开实施例,电子设备201和外部电子设备202可以注册与登录到服务器203的用户账户关联的公共证书数据。服务器203可以接受基于用户账户登录到服务器203的设备访问与用户账户关联地注册的公共证书数据。因此,如果用户的电子设备201用用户账户登录到服务器203,则处理器221可以允许电子设备201访问用户在他或她的设备中注册的设备的公共证书数据或下载公共证书数据。
根据本公开实施例,电子设备201和外部电子设备202可以是用相同的用户账户登录到服务器的设备。如果发生触发事件,则处理器221可以建立用于与外部电子设备202共享内容的通信连接210。也就是说,用户可以操纵电子设备201,以在用户所拥有的多个设备之间共享内容。例如,电子设备201可以接收用于选择与另一设备共享存储在存储器222中的照片文件的按钮的用户输入。对于另一示例,在显示在电子设备201上的内容中的至少一些被选择的状态下,处理器221可以接收“复制”或“粘贴到另一设备”的命令。触发事件是指用于建立电子设备201通过其将数据传输到外部电子设备202或从外部电子设备202接收数据的通信连接的指令被执行,并且不限于这些示例。
如果电子设备201和外部电子设备202用用户账户登录到服务器203,则电子设备201和外部电子设备202可以通过长距离无线通信电路224或234从服务器203接收与用户账户对应的账户密钥值。账户密钥值可以包括服务器203为用户账户生成的密钥值。因此,用相同的用户账户登录的设备可以从服务器203接收相同的账户密钥值。例如,电子设备201可以将账户密钥值存储在包括短距离无线通信电路223的通信芯片中。如果通过电子设备201或另一设备在服务器203中相对于用户账户注册关于用户的用户信息,则服务器203可以基于用户信息来生成账户密钥值。例如,服务器203可以通过将用户信息输入到用于生成账户密钥值的函数中来获取账户密钥值。用户信息可以包括能够标识用户的信息。例如,用户信息可以包括用于用户账户的账户凭证。
处理器221可以控制短距离无线通信电路223广播包括电子设备201的账户密钥值的消息。短距离无线通信电路223可以通过短距离无线通信(例如,基于蓝牙TM低能量(BLE)协议的通信)信号广播消息。处理器221可以通过将账户密钥与随机数合并来调制账户密钥,并且可以通过将调制后的账户密钥包括在消息中中来广播调制后的账户密钥。例如,处理器221可以通过使用布隆(bloom)过滤器来调制包括账户密钥的消息。外部电子设备202的处理器231可以通过短距离无线通信电路233接收消息。处理器231可以控制外部电子设备202,使外部电子设备202响应于广播消息而将包括外部电子设备202的账户密钥值的消息传输到电子设备201。电子设备201的处理器221可以基于从外部电子设备202接收的消息,识别具有相同的账户密钥值的外部电子设备202。电子设备201可以通过安全通信(例如,通过图1的通信模块190的安全通信)与所识别的外部电子设备202交换证书数据。
如果电子设备201将电子设备201的第一证书数据传输到外部电子设备202,则外部电子设备202的处理器231可以校验存储在服务器203中的或从服务器203接收的证书列表是否包括第一证书数据。如果证书列表包括第一证书数据,则处理器231可以控制外部电子设备202将外部电子设备202的第二证书数据传输到电子设备201。电子设备201的处理器221可以基于存储在服务器203中的或从服务器203接收的证书列表是否包括第二证书数据,验证外部电子设备202。如果证书列表不包括第一证书数据,则外部电子设备202可以终止通信连接,而不将第二证书数据传输到电子设备201。如果电子设备201和外部电子设备202使用证书数据彼此验证,则处理器221可以控制电子设备201,使得电子设备201和外部电子设备202彼此共享会话密钥,并且基于会话密钥来形成加密信道210。加密信道210可以被配置为能够传输和接收数据的通信连接方法,诸如自组织方法、移动接入点和WiFi直连。
根据另一实施例,电子设备201和外部电子设备202可以是基于不同的用户账户登录到服务器203的设备。例如,用户可能想从他或她的设备将内容传输到位于附近的他或她的朋友的设备,或从朋友的设备接收内容。根据实施例,电子设备201可以接收包括第二证书数据的证书列表,或者可以基于能够标识电子设备201的用户和外部电子设备202的用户之间的相关性的用户标识信息来访问证书列表。例如,用户标识信息可以包括存储在电子设备201的联系人存储装置(例如,配置在存储器222上的联系人数据库)中的外部电子设备202的标识信息(举更具体的示例而言,联系人信息(诸如电话号码、电子邮件地址或邮件账户)、设备特定的标识信息(诸如国际移动设备标识(IMEI))或服务用户标识信息(诸如社交媒体服务账户))。用户标识信息不一定被存储在电子设备201中,而是可以被存储在单独的设备中。
处理器221可以控制电子设备201在服务器203中注册电子设备201的第一证书数据和电子设备201的用户标识信息(在下文中,可以称为“第一用户标识信息”)。根据实施例的电子设备201可以将包括由电子设备201的用户存储的关于外部电子设备202的用户标识信息(在下文中,可以称为“第二用户标识信息”)的用户标识信息列表(在下文中,可以称为“第一用户标识信息列表”)提供给服务器203。由电子设备201的用户存储的用户标识信息和存储在服务器203中的用户标识信息可以同步。也就是说,如果由电子设备201的用户存储的用户标识信息发生改变,则存储在服务器203中的用户标识信息也可以根据所改变的内容而改变。外部电子设备202也可以在服务器203中注册外部电子设备202的第二证书数据和外部电子设备202的第二用户标识信息。此外,外部电子设备202还可以将包括由外部电子设备202的用户存储在电子设备201上的第一用户标识信息的用户标识信息列表(在下文中,可以称为“第二用户标识信息列表”)提供给服务器203。
服务器203可以基于从电子设备201和外部电子设备202提供的用户标识信息来生成证书列表。根据实施例,如果第一用户标识信息列表包括第二用户标识信息,并且第二用户标识信息列表包括第一用户标识信息,则服务器203可以确定这两个设备的用户是能够彼此信任的用户。服务器203可以生成包括第二证书数据的证书列表(在下文中,可以称为“第一证书列表”)。电子设备201可以用用户账户登录,以访问第一证书列表或下载第一证书列表。此外,服务器203可以生成包括第一证书数据的证书列表(在下文中,可以称为“第二证书列表”)。根据实施例,证书列表可以以证书数据被添加到用户标识信息列表(例如,联系人列表)的形式提供。
根据实施例,如果触发事件发生,则处理器221可以控制短距离无线通信电路223,以响应于所检测的触发事件来广播通告包。通告包可以基于第一证书数据来生成。例如,处理器221可以生成通告包,以包括通过将第一证书数据与随机数值合并而调制的数据。举另一示例而言,处理器221可以通过将第一证书数据输入到散列函数来获取散列值,并且可以生成通告包,以包括所获取的散列值。根据另一实施例,电子设备201可以获取与外部电子设备202共享的共享密钥,并且可以基于共享密钥生成通告包,以包括加密的第一证书数据。
外部电子设备202的处理器231可以通过短距离无线通信电路233接收所广播的通告包。处理器231可以从所接收的通告包中获取第一证书数据。处理器231可以基于所获取的第一证书数据是否被包括在从服务器203提供的证书列表中,验证电子设备201。例如,如果第一证书数据的散列值被包括在通告包中,则第一证书数据可以根据散列值(hashvalue)来获取。举另一示例而言,证书列表包括证书数据的散列值,并且处理器231可以通过彼此比较散列值来验证电子设备201。
如果电子设备201的验证成功完成,则外部电子设备202可以将包括第二证书数据的响应包传输到电子设备201。如果电子设备201没有被验证,则外部电子设备202可能不传输响应包。电子设备201的处理器221可以从所接收的响应包中获取第二证书数据。处理器221可以基于所获取的第二证书数据是否被包括在第一证书列表中(即,从服务器203接收的证书数据是否与从响应包获取的证书数据匹配),验证外部电子设备202。例如,如果第二证书数据的散列值被包括在响应包中,则第二证书数据可以根据散列值来获取。举另一示例而言,证书列表可以包括证书数据的散列值,并且处理器221可以通过比较散列值来验证外部电子设备202。如果外部电子设备202的验证成功完成,则处理器221可以控制电子设备201形成与外部电子设备202的安全通信信道(即,加密信道210)。
图3是示出根据实施例的在其中电子设备(例如,图2的电子设备201)建立与外部电子设备(例如,图2的外部电子设备202)的通信连接的过程的流程图300。
在操作310中,电子设备可以检测触发事件。例如,如果电子设备使用相机(例如,图1的相机模块180)捕获图像,然后选择显示在电子设备上的“共享到附近的受信任设备”菜单项目,则电子设备可以确定触发事件发生。举另一示例而言,如果电子设备接收到选择“复制”项目以将数据保存在剪贴板上的用户输入,或者在数据被保存在剪贴板上时接收到选择“粘贴到另一设备”项目的用户输入,则电子设备可以确定触发事件发生。
在操作320中,电子设备可以识别位于附近的外部电子设备。例如,电子设备可以通过短距离无线通信信号传输(例如,广播)通告包,并且可以响应于通告包来从外部电子设备接收响应包。
在操作330中,电子设备可以基于电子设备的第一证书数据和外部电子设备的第二证书数据来执行相互验证。根据实施例的电子设备和外部电子设备可以提前具有用于受信任设备的公共证书数据。可替换地,根据实施例,电子设备和外部电子设备可以通过长距离无线通信电路访问存储在服务器(例如,图2的服务器203)中的证书数据,以校验所接收的证书数据。
在操作340中,电子设备可以确定外部电子设备是否被成功验证。如果外部电子设备被成功验证,则在操作350中,电子设备可以建立与外部电子设备的安全通信信道。当触发事件是将内容数据传输到外部电子设备的命令时,电子设备可以通过所建立的安全通信信道将数据传输到外部电子设备。
图4是示出根据实施例的在其中电子设备401(例如,图2的电子设备201)建立与用相同的用户账户登录的外部电子设备402(例如,图2的外部电子设备202)的通信连接的过程的流程图400。
在操作411中,电子设备401可以通过长距离无线通信协议从所登录的外部服务器(例如,图2的服务器203)接收账户密钥值。此外,在操作412中,外部电子设备402可以通过长距离无线通信协议从外部服务器接收相同的账户密钥值。
如果在操作413中检测到触发事件,则在操作415中,电子设备401可以通过短距离无线通信(例如,BLE通信)信号广播包括账户密钥值的消息。外部电子设备402可以定期或在指定的时段内扫描短距离无线通信信号,以便接收广播的信号。
如果在操作417中外部电子设备402接收到广播的消息,则在操作419中,电子设备401和外部电子设备402可以基于账户密钥值来识别到电子设备401(其为用户的设备)和/或外部电子设备402位于短距离范围(例如,阈值距离)内。如果外部电子设备402被识别,则电子设备401可以激活电子设备401的处理器(例如,应用处理器),并且可以形成加密信道,以与所识别的外部电子设备402交换证书。
在操作421中,电子设备401可以将电子设备的第一证书数据传输到外部电子设备402,以便尝试与外部电子设备402进行相互验证。如果第一证书数据被接收,则在操作423中,外部电子设备402可以基于第一证书数据来验证电子设备401。根据实施例,外部电子设备402可以通过与操作427相同或类似的过程验证电子设备401。
如果电子设备401的验证成功完成,则在操作425中,外部电子设备402可以将外部电子设备402的第二证书数据传输到电子设备401。在操作427中,电子设备401可以基于所接收的第二证书数据来验证外部电子设备402。为了验证外部电子设备402,根据实施例的电子设备401可以确定:如果包括在用户账户中注册为受信任设备的至少一个设备的证书数据的证书列表包括第二证书数据,则外部电子设备402被验证。根据实施例的电子设备401可以从外部服务器获取用于验证外部电子设备402的证书列表。如果在操作427中外部电子设备402的验证成功完成,则在操作429中,电子设备401可以与外部电子设备402共享会话密钥,并且可以基于会话密钥来建立用于通信的安全通信信道。
图5是示出根据实施例的电子设备(例如,图2的电子设备201)获取共享账户密钥值并获取证书列表的过程的流程图500。将在下面描述的电子设备和外部服务器之间的信息传输可以通过长距离无线通信协议执行。
在操作510中,电子设备可以使用用户账户登录到外部服务器(例如,图2的服务器203)。例如,电子设备可以通过服务订阅过程将用户信息注册到外部服务器,创建用户账户,然后基于所创建的用户账户来执行与外部服务器的登录会话。
在操作520中,电子设备可以将用于标识用户的用户特定的信息传输到外部服务器。例如,电子设备可以将用户账户的账户凭证传输到外部服务器。接收用户特定的信息的外部服务器可以基于用户特定的信息来生成账户密钥值。在操作530中,电子设备可以接收由外部服务器生成的账户密钥值。
电子设备可以生成证书数据。例如,电子设备可以生成包括基于电子设备的唯一种子值生成的私有密钥和公共密钥的密钥对。在此,将在外部共享的公共证书数据可以包括公共密钥。在操作540中,电子设备可以在外部服务器中注册公共证书数据。外部服务器可以注册用于由电子设备登录的用户账户的公共证书数据。
在外部服务器中注册证书数据的操作可以由多个设备执行。如果通过相同的用户账户执行操作510至540,则外部服务器可以注册用于一个用户账户的多个证书数据。外部服务器可以生成包括为一个用户账户注册的一个或多个证书的数据的证书列表。在操作550中,电子设备可以从外部服务器接收证书列表。
图6是示出根据实施例的在其中电子设备601(例如,图2的电子设备201)建立与另一用户的外部电子设备602(例如,图2的外部电子设备202)的通信连接的过程的流程图600。
如果在操作611中检测到触发事件,则在操作613中,电子设备601可以广播包括电子设备601的第一证书数据的通告包。
如果在操作615中外部电子设备602接收到通告包,则在操作617中,外部电子设备602可以基于包括在通告包中的第一证书数据来验证电子设备601。根据实施例,外部电子设备602可以通过与操作621相同或类似的过程验证电子设备601。
如果电子设备601的验证成功完成,则在操作619中,外部电子设备602可以将包括外部电子设备的第二证书数据的响应包传输到电子设备601。在操作621中,电子设备601可以基于从所接收的响应包获取的第二证书数据来验证外部电子设备602。为了验证外部电子设备602,根据实施例的电子设备601可以确定:如果包括来自外部服务器的至少一个受信任设备的证书数据的证书列表包括第二证书数据,则外部电子设备602是验证的设备。
根据实施例,电子设备601可以从外部服务器(例如,图2的服务器203)获取证书列表。外部服务器可以获取第一用户标识信息列表,其包括能够标识电子设备601的用户的第一用户标识信息和能够标识由电子设备601的用户存储的其他用户的信息。第一用户标识信息和第一用户标识信息列表可以由电子设备601提供,不过也可以通过用与电子设备601相同的用户账户登录到外部服务器的另一设备提供。此外,外部服务器可以获取第二用户标识信息列表,其包括能够标识外部电子设备602的用户的第二用户标识信息和能够标识由外部电子设备602的用户存储的其他用户的信息。第二用户标识信息和第二用户标识信息列表可以由外部电子设备602提供,不过也可以通过用与外部电子设备602相同的用户账户登录到外部服务器的另一设备提供。如果第一用户标识信息列表包括第二用户标识信息,并且第二用户标识信息列表包括第一用户标识信息,则外部服务器可以将包括外部电子设备602的第二证书数据的证书列表提供给电子设备601。例如,如果使用分配有1234作为电话号码的智能手机的用户在智能手机的联系人存储装置中存储具有电话号码5678的联系人信息,并且使用分配有5678作为电话号码的智能手机的用户在智能手机的联系人存储装置中存储具有电话号码1234的联系人信息,则从这两个智能手机接收的联系人信息的外部服务器可以确定这两个设备是相互信任设备。如果在操作621中外部电子设备602的验证成功完成,则在操作623中,电子设备601可以与外部电子设备602共享会话密钥,并且可以基于会话密钥来建立用于通信的安全通信信道。
图7概念性地示出根据实施例的用于由电子设备701(例如,图2的电子设备201)从服务器703(例如,图2的服务器203)获得证书列表的方法。
参考图7,电子设备701是分配有作为第一用户标识信息711的电话号码000-xxxx-yyyy的设备。电子设备701可以生成第一证书数据712,其是能够清楚地标识电子设备701的唯一数字信息。电子设备701可以存储包括第二用户标识信息714的第一用户标识信息列表713。如果电子设备701登录到服务器703,则电子设备701可以将第一用户标识信息711、第一证书数据712和第一用户标识信息列表713传输到服务器703。
参考图7,外部电子设备702是可分配有作为第二用户标识信息721的电话号码010-aaaa-bbbb的设备。外部电子设备702可以生成第二证书数据722,其也可以是能够清楚地标识外部电子设备702的唯一信息。外部电子设备702存储包括第一用户标识信息724的第二用户标识信息列表723。如果外部电子设备702登录到服务器703,则外部电子设备702可以将第二用户标识信息721、第二证书数据722和第二用户标识信息列表723传输到服务器703。
服务器703可以将第一用户标识信息711与第二用户标识信息列表723进行比较,并且可以将第二用户标识信息721与第一用户标识信息列表713彼此比较。服务器703可以将基于比较结果生成的证书列表715和725分别提供给电子设备701和外部电子设备702。根据实施例,如果第二用户标识信息列表723包括第一用户标识信息711,并且第一用户标识信息列表713包括第二用户标识信息721,则证书列表715可以包括第二证书数据722,并且证书列表725可以包括第一证书数据712。图7示出第一证书数据712和第二证书数据722分别通过证书列表715和725进行传输的实施例;然而,根据另一实施例,服务器703可以将第二证书数据722包括在第一用户标识信息列表713中,然后将第一用户标识信息列表713传输到电子设备701,并且可以将第一证书数据712包括在第二用户标识信息列表723中,然后将第二用户标识信息列表723传输到外部电子设备702。根据另一实施例,服务器703可以将包括第二证书数据722的证书列表715包括在第一用户标识信息列表713中,然后将第一用户标识信息列表713传输到电子设备701,并且可以将包括第一证书数据712的证书列表725包括在第二用户标识信息列表723中,然后将第二用户标识信息列表723传输到外部电子设备702。
图8概念性地示出根据实施例的由电子设备(图7的701)和外部电子设备(图7的702)获取的证书列表的示例。
参考图8,由电子设备(图7的701)获取的证书列表815包括外部电子设备(图7的702)的用户标识信息801和第二证书数据802。此外,由外部电子设备(图7的702)获取的证书列表825可以包括电子设备(图7的701)的用户标识信息803和第一证书数据804。
虽然图8没有示出,但是根据其他实施例,电子设备(图7的701)和外部电子设备(图7的702)可以通过用户标识信息列表获取对应设备的证书数据,而不用接收单独的证书列表(815或825)。例如,电子设备(图7的701)可以从服务器(图7的703)获取包括外部电子设备(图7的702)的用户标识信息801和第二证书数据802的第一用户标识信息列表(图7的713),并且外部电子设备(图7的702)可以从服务器(图7的703)获取包括电子设备(图7的701)的用户标识信息803和第一证书数据804的第二用户标识信息列表(图7的723)。
图9是示出根据实施例的电子设备901(例如,图2的电子设备201)和外部电子设备902(例如,图2的外部电子设备202)执行相互验证的过程的流程图900。
作为电子设备901成功识别外部电子设备902(例如,图4的操作415至419)的结果,接下来在操作911中,根据实施例的电子设备901可以基于通用属性配置文件(genericattribute profile(GATT))来建立与外部电子设备902的通信连接。
在操作913中,根据实施例的电子设备901可以基于传输层安全(TLS)协议来与外部电子设备902交换密钥。在此,所交换的密钥可以包括电子设备901的第一证书数据和外部电子设备902的第二证书数据。电子设备901和外部电子设备902可以基于TLS来执行相互验证。如果相互验证成功,则电子设备901可以将数据(例如,内容)传输到外部电子设备902。
如果电子设备901和外部电子设备902成功相互验证(915),则在操作917中,电子设备901和外部电子设备902可以建立安全通信连接。如果电子设备901和外部电子设备902无法相互验证(919),则在操作921中,电子设备901可以终止基于GATT的通信连接。
如果电子设备901执行操作以识别外部电子设备,并且外部电子设备902没有被识别(920),则电子设备901和外部电子设备902之间的过程可能不会被执行。
在图9的示例中,电子设备901和外部电子设备902可以在相互验证(例如,操作913)之后生成安全连接915。电子设备901和外部电子设备902可以共享个人识别码(PIN),以通过安全连接915生成安全信道。例如,PIN码可以用于生成安全网络信道。安全网络信道可以由具有对应PIN码的电子设备(例如,电子设备901和外部电子设备902)访问。在这种情况下,电子设备901可以与另一受信任外部电子设备共享PIN码,以允许外部电子设备访问安全网络信道。
图10是示出根据实施例的在其中电子设备(例如,图2的电子设备201)获取外部电子设备(例如,图2的外部电子设备202)的证书数据的过程的流程图1000。
在操作1010中,电子设备可以使用用户账户登录到外部服务器。根据实施例,电子设备可以显示服务订阅屏幕,以进行用于在外部服务器上生成用户账户的服务订阅过程,并且可以接收用于服务订阅的信息。通过使用服务订阅屏幕,电子设备可以接收关于同意提供第一用户标识信息和第二用户标识信息的用户输入。
在操作1020中,电子设备可以在外部服务器中注册可用于标识用户的第一用户标识信息。电子设备可以生成第一证书数据,并且可以在外部服务器中注册所生成的第一证书数据。在操作1030中,注册第一用户标识信息和第一证书数据的电子设备可以将第二用户标识信息传输到外部服务器,第二用户标识信息可以是标识受信任用户的标识信息。第二用户标识信息可以是由电子设备的用户存储的信息,或者是由电子设备的用户从存储标识信息的单独的设备提取的信息。
如果将第二用户标识信息注册为其自己在外部服务器上的标识信息的外部电子设备将作为受信任设备的标识信息的第一用户标识信息传输到外部服务器,则在操作1040中,电子设备可以从外部服务器获取与第二用户标识信息对应的第二证书数据。
图11示出根据实施例的用于电子设备1101(例如,图2的电子设备201)通过使用利用随机数值调制的数据来识别外部电子设备1102(例如,外部电子设备202)的传输协议的示例
根据实施例的电子设备1101可以使用散列算法(例如,SHA-256)从所选择的账户密钥1111获取散列值。电子设备1101可以通过对所获取的散列值应用布隆散列过滤器来获取用于账户密钥1111的真/假数组1113。
电子设备1101可以生成随机数值,并且可以通过对所生成的随机数值应用布隆散列过滤器来获取用于随机数值的真/假数组1115。电子设备1101可以通过对用于随机数值的真/假数组1115执行至少一次的或(OR)运算来生成最终真/假数组1117。电子设备1101可以广播配置在最终真/假数组中的布隆过滤器1117。
外部电子设备1102可以使用散列算法从所选择的账户密钥获取散列值,并且可以通过对所获取的散列值应用布隆散列过滤器来获取真/假数组1121。如果外部电子设备1102接收到广播的布隆过滤器1117,则与真/假数组1121相比,外部电子设备1102可以高概率地识别到电子设备1101在附近。
电子设备1101和外部电子设备1102的应用处理器(例如,图1的处理器120)可以通过图11所示的过程被激活(或唤醒)。
布隆过滤器的特点是不会发生负面错误(negative error),在其中虽然通过布隆过滤器确定元素不属于集合,但是事实上,该元素属于集合。因此,如果在电子设备1101中生成的基于账户的信号通过利用布隆过滤器的特点来进行调制和传输,则不会发生即使外部电子设备1102是用户的设备也不执行验证过程的情况,并且以非常低的概率发生即使外部电子设备1102不是用户的设备也会执行验证过程的情况,从而有可能以高准确度识别用户的设备。
此外,布隆过滤器的数据结构的特点是占用空间小。因此,数据可以通过传输小数据的短距离无线通信信号(诸如BLE信号)进行实时传输。如果用于调制由电子设备1101传输的信号的方法改变,则可以防止用户不了解的隐私和跟踪问题。
图12示出根据实施例的在其中电子设备1201(例如,图2的电子设备201)通过用户界面检测触发事件的示例。
根据实施例,电子设备1201可以输出用户界面项目1210,以接收检测为触发事件的用户输入,从而建立与外部电子设备(例如,图2的外部电子设备202)的通信连接。例如,参考图12,电子设备1201可以检测选择请求将图像1205传输到附近的设备的用户界面项目1210的触摸输入。
根据实施例的电子设备1201可以执行用于建立与附近的外部电子设备的通信连接的过程(例如,图3的300、图4的400和图6的600)。
图13概念性地示出根据实施例的在其中电子设备1301(例如,图2的电子设备201)验证附近的外部电子设备1302(例如,图2的外部电子设备202)并建立通信连接的结构。
根据实施例的电子设备1301可以在服务器1303中注册电子设备1301的第一证书数据。服务器1303可以从外部电子设备1302获取外部电子设备1302的第二证书数据。服务器1303可以生成在服务器1303中注册证书数据的设备当中的电子设备1301可信任的设备的证书列表。例如,如果两个设备用相同的用户账户登录到服务器1303,或者如果两个设备具有彼此的用户标识信息,则服务器1303可以确定这两个设备是相互信任的设备。电子设备1301可以从服务器1303获取包括第二证书数据1312的证书列表。
电子设备1301可以建立与位于附近的设备1330中的外部电子设备1302的安全通信连接1320,其中,外部电子设备1302的第二证书数据1312被包括在电子设备1301的证书列表中,并且外部电子设备1302具有电子设备1301的第一证书数据1311。电子设备1301可能不建立与设备1304的通信连接,其中,设备1304的证书数据不被包括在电子设备1301的证书列表中,或者设备1304不具有电子设备1301的第一证书数据。
图13示出证书数据根据单独的证书列表来生成的实施例;然而,根据其他实施例,证书列表或证书数据可以被包括在用户标识信息列表中。例如,服务器1303可以将外部电子设备1302的第二证书数据或包括第二证书数据的证书列表插入到电子设备1301的用户标识信息列表(例如,图7的第一用户标识信息列表)中,并且电子设备1301可以通过从服务器1303接收的第一用户标识信息列表713获取第二证书数据。
图14示出根据实施例的在电子设备1301在与外部电子设备1302的通信信道之上共享内容的过程中,由都用相同的用户账户“登录”的电子设备1301和外部电子设备1302显示的屏幕的示例。
根据实施例的电子设备1301可以从外部服务器(例如,图2的服务器203)接收关于在外部服务器中注册的外部电子设备1302的设备标识信息以及外部电子设备1302的证书。设备标识信息可以是,例如,由在外部服务器中注册的外部电子设备1302的用户设置的昵称。可替换地,关于外部电子设备1302的设备标识信息可以在电子设备1301的本地进行设置。如果建立与外部电子设备1302的通信连接(例如,图4的操作429),则根据实施例的电子设备1301可以显示表示关于外部电子设备1302的设备标识信息的可视项目1410。
根据实施例,电子设备1301可以显示包括表示其相互验证已完成的至少一个外部电子设备1302的设备标识信息的设备列表。如果接收到在设备列表中选择表示外部电子设备1302的设备标识信息的用户输入,则电子设备1301可以将用于共享内容的数据传输到外部电子设备1302。
如果通过与电子设备1301连接的通信连接接收到内容,则根据实施例的外部电子设备1302可以显示指示表示传输内容的电子设备1301的设备标识信息的可视项目1420。
图15示出根据实施例的在电子设备1301使用与外部电子设备1302连接的通信信道来共享内容的过程中,由电子设备1301和另一用户的外部电子设备1302显示的屏幕的示例。
电子设备1301可以将证书列表的第二证书数据和外部电子设备1302的第二用户标识信息彼此关联地存储在电子设备1301的存储装置(例如,联系人存储装置)中。例如,如果第二用户标识信息是父亲的联系人信息,则电子设备1301可以存储包括第二证书数据的父亲的联系人信息。可替换地,电子设备1301可以从外部服务器(例如,图2的服务器203)接收包括第二证书数据的联系人信息。
如果基于第二证书数据来建立与外部电子设备1302的通信连接,则电子设备1301可以通过显示器(例如,图1的显示设备160)显示表示第二用户标识信息的可视项目1510。表示第二用户标识信息的可视项目1510可以是,例如,包括在联系人信息中的昵称。
根据实施例,电子设备1301可以显示包括表示其相互验证已完成的至少一个外部电子设备1302的用户标识信息的设备列表。如果接收到在设备列表中选择表示外部电子设备1302的用户标识信息的用户输入,则电子设备1301可以尝试将用于共享内容的数据传输到外部电子设备1302。
如果通过基于电子设备1301的第一证书数据建立的通信连接接收到内容,则根据实施例的外部电子设备1302可以显示指示表示电子设备1301的第一用户标识信息的可视项目1520。
图16示出根据实施例的电子设备的设置UI 1602。
在图16中,电子设备1601(例如,图2的电子设备201)可以在显示器1660上提供设置UI 1602。例如,设置UI 1602可以提供用于共享内容的设置。例如,设置UI 1602可以包括用于设置激活内容共享的界面1610(例如,可选择的屏幕上切换(on-screen toggle))。例如,电子设备1601可以基于对界面1610的输入来激活或停用内容共享功能。
例如,设置UI 1602可以提供内容共享范围设置。如果电子设备1601被设置为“朋友”模式1620,则电子设备1601被限制为与已知联系人共享内容,该联系人可以对应于先前存储在电子设备1601和用户的其他电子设备的联系人列表中的外部电子设备。如果电子设备1601被设置为“所有”模式1630,则电子设备1601可以与所有附近的外部电子设备共享内容。例如,在朋友模式1620下,即使电子设备1601从除了用户的电子设备之外的电子设备和/或未被存储在联系人中的外部电子设备接收到通告包,电子设备1601可能也不会在显示器1660上显示通告包。
根据实施例,当激活内容共享时(例如,当响应于接收到对界面1610的输入而激活共享时),或者当在激活内容共享的状态下接收到表示完成的输入(例如,选择“完成(done)”按钮1640的输入)时,电子设备1601可以广播通告信号(例如,图4的操作415或图6的操作613)。
图17示出根据实施例的电子设备的共享UI 1701。
例如,电子设备1601(例如,图2的电子设备201)可以在显示器1660上显示共享UI1701,共享UI 1701提供关于所识别的外部电子设备的信息并允许选择。例如,在共享UI1701上显示的外部电子设备可以是通过从外部电子设备接收通告信号而识别的外部电子设备。
根据实施例,电子设备1601可以基于外部电子设备的类型来生成外部电子设备的列表。例如,共享UI 1701可以包括“拥有的”电子设备的列表1710(例如“,我的设备”)、基于联系人的设备列表1720和另一电子设备列表1730。拥有的电子设备的列表1710可以包括关于属于与电子设备1601相同的账户的其他电子设备(例如,第一相同账户设备1711和第二相同账户设备1712)的信息。基于联系人的设备列表1720可以包括关于与电子设备1601的联系人信息匹配的外部电子设备(例如,第一外部电子设备1721、第二外部电子设备1722和第三外部电子设备1723)的信息。例如,基于联系人的设备列表1720可以包括响应于由电子设备1601传输的通告信号来传输信号(例如,通告信号)的外部电子设备中的至少一个(例如,第一外部电子设备1721、第二外部电子设备1722或第三外部电子设备1723)。例如,电子设备201可以基于从外部电子设备接收的标识信息(例如,联系人信息(诸如电话号码、电子邮件地址或邮件账户)、设备特定的标识信息(诸如国际移动设备标识(IMEI))或服务用户标识信息(诸如社交媒体服务账户))来显示基于联系人的设备列表1720。其他电子设备列表1730可以包括关于不属于电子设备1601的账户且不与联系人信息匹配的电子设备(例如,第一其他设备1731和第二其他设备1732)的信息。
根据实施例,电子设备1601可以接收在显示在共享UI 1701上的外部电子设备的列表(例如,拥有的电子设备的列表1710、基于联系人的设备列表1720或其他电子设备列表1730)中选择至少一个外部电子设备以传输内容的输入。电子设备1601可以通过基于选择输入将连接请求信号传输到至少一个外部电子设备并从至少一个外部电子设备接收对连接请求信号的响应,建立安全通信信道(例如,图6的操作623)。
根据实施例,如果在附近找到具有与其自己的账户相同的账户的外部电子设备,则电子设备1601可以在拥有的电子设备的列表1710中显示对应的外部电子设备。例如,电子设备1601可以不对其自身账户的外部电子设备执行单独的相互验证,并且可以在拥有的电子设备的列表1710中显示对应的外部电子设备。如果电子设备1601将数据传输到包括在拥有的电子设备的列表1710中的外部电子设备,则电子设备1601可以通过使用存储在电子设备1601中的证书数据来验证外部电子设备。如果成功地执行验证,则电子设备1601可以将内容(例如,数据)传输到对应的外部电子设备。
根据实施例,如果在附近找到包括在其自己的联系人存储装置中的外部电子设备,则电子设备1601可以在基于联系人的设备列表1720中显示外部电子设备。如果数据被传输到包括在基于联系人的设备列表1720中的外部电子设备,则外部电子设备的验证可以被执行。例如,电子设备1601可以基于从附近的外部电子设备接收的数据(例如,证书和/或与证书相关的散列信息)和存储在电子设备1601的联系人中的数据(例如,证书和/或与证书相关的散列信息),识别和验证外部电子设备。例如,当数据被传输到在基于联系人的设备列表1720中的外部电子设备时,电子设备1601可以通过使用联系人存储装置中的证书执行与外部电子设备的相互验证。如果成功地执行相互验证,则电子设备1601可以将数据传输到外部电子设备。
根据实施例,如果在附近找到除了其自己的电子设备和在联系人中的电子设备之外的外部电子设备,则电子设备1601可以在其他电子设备列表1730中显示外部电子设备。如果数据被传输到包括在其他电子设备列表1730中的外部电子设备,则外部电子设备的验证可以被执行。根据实施例,电子设备1601可以基于个人识别码(PIN)来验证包括在其他电子设备列表1730中的外部电子设备。例如,电子设备1601可能不存储用于在其他电子设备列表1730中的外部电子设备的证书数据。在这种情况下,电子设备1601可以生成用于建立安全信道的PIN码,并且可以基于PIN码来对外部电子设备执行相互验证。
根据实施例,电子设备1601可以在共享UI 1701上显示所标识的外部电子设备中的一些。例如,基于从外部电子设备接收的外部电子设备的状态,电子设备1601可以确定是否显示外部电子设备。如果外部电子设备传输表示屏幕关闭状态的信息,则电子设备1601可能不在共享UI 1701上显示对应的外部电子设备。如果外部电子设备传输表示屏幕开启状态的信息,则电子设备1601可以在共享UI 1701上显示对应的外部电子设备。如果外部电子设备接受内容共享,则电子设备1601可以被设置为在共享UI 1701上显示对应的外部电子设备。
在图17的示例中,如果电子设备1601被设置为图16的朋友模式1620,则电子设备1601可以从共享UI 1701中省略其他电子设备列表1730。
图18示出根据实施例的根据数据共享状况的图标的示例。
根据实施例,电子设备(例如,图17的电子设备1601)可以通过共享UI1701的图标显示外部电子设备的状态。在图18中,可以描述基于图17的第一外部电子设备1721的各种状态显示图标。
根据实施例,电子设备1601可以基于通信状态来显示图标。第一图标1801表示向对应的外部电子设备的数据传输正在待处理。例如,当用于另一外部电子设备的数据正在进行传输,并且对应的外部电子设备在向其他外部电子设备的数据传输完成之后等待接收数据时,对应的电子设备可以用类似于第一图标1801的形式显示。第二图标1802表示正在建立与对应的外部电子设备的安全连接。例如,在执行图4的操作415至429时,电子设备1601可以用类似于第二图标1802的形式显示外部电子设备。第三图标1803表示数据正在被传输到对应的外部电子设备。第四图标1804表示向对应的外部电子设备的数据传输成功完成。第五图标1805表示向对应的外部电子设备的数据传输至少部分失败。
图18所示的图标仅为示例,并且本公开实施例不限于此。例如,电子设备1601可以通过使用文本信息来显示外部电子设备的状态。
图19示出根据实施例的表示数据共享状态的UI 1991。
在图19的示例中,电子设备1601(例如,图2的电子设备201)可以在显示器1660上显示表示数据共享状态的UI 1991。电子设备1601可以通过使用图标和文本来提供共享状态信息。例如,第一电子设备1901可以表示等待,第二电子设备1902可以表示连接,第三电子设备1903可以表示数据无法传输,第四电子设备1904可以表示数据正在传输,并且第五电子设备1905可表示数据传输完成。
如果接收到激活通知栏的输入(例如,拖动输入1990),则电子设备1601可以在显示器1660上显示图20的UI。
图20示出根据实施例的表示数据共享状态的UI。
参考附图标记2001,响应于图19的激活通知栏的输入(例如,拖动输入1990),电子设备1601可以显示包括数据共享状态通知2010的通知栏。共享状态通知2010可以包括关于数据共享的简要信息(例如,关于将共享的外部电子设备的信息)。
参考附图标记2002,如果接收到共享状态通知2010的输入,则电子设备1601可以提供具体的共享状态。例如,附图标记2001的共享状态信息可以包括比图19的表示共享状态的UI 1991更具体的信息。例如,对于第三电子设备1903,电子设备1601可以在显示器1660上显示有多少文件无法传输。对于第五电子设备1905,电子设备1601可以在显示屏1660上显示有多少个文件成功传输。
图21示出外部电子设备中的连接请求UI。
根据实施例,电子设备(例如,图15的电子设备1601)可以将连接请求传输到外部电子设备2102(例如,图2的外部电子设备202)。例如,在外部电子设备2102的验证(例如,图6的操作621)之后,以及在建立安全通信信道(例如,图6的操作623)之前,电子设备1601可以将连接请求传输到外部电子设备2102。例如,如果连接请求被外部电子设备2102接受,则电子设备1601可以建立安全通信信道。
当从电子设备接收到连接请求时,图21的连接请求UI可以被显示在外部电子设备2102的显示器2160上。连接请求UI可以包括提示外部电子设备2102的用户接收内容的信息。
参考附图标记2191,连接请求UI 2110可以是询问是否接收文件的弹出消息。例如,连接请求UI 2110可以包括文件发送者(例如,爱丽丝(Alice))的信息2113、文件数量2112(例如,3)和/或PIN码信息2111(例如,007893)。在示例中,如果外部电子设备2102没有从连接请求获取关于文件数量的信息,则文件数量2112可以被省略。
参考附图标记2102,连接请求UI 2120可以是询问是否接收文件的弹出消息。例如,连接请求UI 2120可以包括文件发送者(例如,爱丽丝)的信息2113、文件数量2112(例如,3)和/或文件的缩略图2121。例如,在传输连接请求信号之后,电子设备1601可以通过使用一个或多个信号,将缩略图2121的数据传输到外部电子设备2102。举另一示例而言,电子设备1601可以将缩略图2121的地址(例如,统一资源定位符(URL)或压缩的URL)传输到外部电子设备2102。举又一示例而言,电子设备1601可以传输文件的摘要信息而不是缩略图2121。在这种情况下,摘要信息可以包括基于机器学习对将传输的内容提取的信息(例如,文本信息)。
根据实施例,外部电子设备2102可以基于与电子设备1601的关系来显示连接请求UI。例如,如果外部电子设备2102是存储在电子设备1601的联系人中的账户的电子设备,则外部电子设备2102可以显示附图标记2192的连接请求UI 2120。举又一示例而言,如果外部电子设备2102是另一设备(例如,图17的其他设备1731或1732),则外部电子设备2102可以基于PIN码来与电子设备1601通信。在这种情况下,外部电子设备2102可以显示附图标记2191的连接请求UI 2110。
如果外部电子设备2102接收到连接接受输入(例如,“接受”的输入),则外部电子设备2102可以将表示连接接受的响应信号传输到电子设备1601。例如,如果接收到连接接受响应,则电子设备1601可以建立与外部电子设备2102的安全连接。如果外部电子设备2102接收到连接拒绝输入(例如,“拒绝”的输入),则外部电子设备2102可以将表示连接拒绝的响应信号传输到电子设备1601。在这种情况下,电子设备1601可以显示表示数据传输失败的信息(例如,图18的第五图标1805)。
如上所述,本文所公开的电子设备可以包括:存储器,其被配置为存储包括电子设备的第一证书数据和外部电子设备的第二证书数据的证书列表;短距离无线通信电路;和处理器,其可操作地连接到存储器和短距离无线通信电路,以及,存储器可以存储指令,指令在执行时,使处理器:检测用于执行建立与电子设备周围的设备的通信连接的操作的触发事件;响应于检测到触发事件,控制短距离无线通信电路广播基于第一证书数据生成的通告包;如果响应于通告包从外部电子设备接收到响应包,从响应包中获取第三证书数据;基于第二证书数据和第三证书数据来验证外部电子设备;以及,如果外部电子设备被验证,则建立与外部电子设备的安全通信信道。
根据本公开实施例,指令在执行时,可以使处理器:使用散列函数从第一证书数据获取第一散列值;生成通告包,以便包括第一散列值;从响应包中获取包括第二散列值的第三证书数据;以及,基于将第二散列值与从第二证书数据生成的散列值进行比较的结果来验证外部电子设备。
根据本公开实施例,电子设备还可以包括:长距离无线通信电路,其被配置为与外部服务器通信,以及,指令在执行时,可以使处理器:通过长距离无线通信电路,在电子设备基于用户账户登录的外部服务器中注册关于电子设备的第一证书数据和第一用户标识信息。
根据本公开实施例,存储器可以被配置为存储关于外部电子设备的第二用户标识信息,以及,指令在执行时,可以使处理器:通过长距离无线通信电路,将第二用户标识信息传输到电子设备基于用户账户登录的外部服务器,以及,通过长距离无线通信电路,响应于第二用户标识信息,从外部服务器接收与第二用户标识信息对应的第二证书数据。
根据本公开实施例,第二用户标识信息可以包括与外部电子设备对应的联系人信息。
根据本公开实施例,电子设备还可以包括显示器,以及,指令在执行时,使处理器:通过显示器显示代表第二用户标识信息的可视项目;接收可视项目的用户输入;以及,响应于用户输入,使用短距离无线通信电路通过安全通信信道将与触发事件对应的内容数据传输到外部电子设备。
根据本公开实施例,指令在执行时,可以使处理器:获取与外部电子设备共享的共享密钥;基于共享密钥来加密第一证书数据;以及,生成包括加密的第一证书数据的通告包。
如上所述,本文所公开的电子设备可以包括:存储器,其被配置为存储电子设备的第一证书数据、关于外部电子设备的第一用户标识信息和与第一用户标识信息对应的第二证书数据;短距离无线通信电路;和处理器,其可操作地连接到存储器和短距离无线通信电路,以及,存储器可以存储指令,指令在执行时,使处理器:通过短距离无线通信电路,接收包括第三证书数据的通告包;响应于接收到通告包,将第三证书数据与第二证书数据进行比较;如果第三证书数据和第二证书数据匹配,则通过短距离无线通信电路,将基于第一证书数据生成的响应包传输到外部电子设备;以及,通过短距离无线通信电路,基于外部电子设备对所传输的响应包的响应来建立与外部电子设备的安全通信信道。
如上所述,本文所公开的电子设备可以包括:存储器,其被配置为存储电子设备的第一证书数据和外部电子设备的第二证书数据;短距离无线通信电路;长距离无线通信电路;和处理器,其可操作地连接到存储器、短距离无线通信电路和长距离通信电路,以及,存储器可以存储指令,指令在执行时,使处理器:通过长距离无线通信电路,基于用户账户来登录到外部服务器;通过长距离无线通信电路,从外部服务器接收与用户账户对应的账户密钥值;检测用于执行建立与电子设备周围的设备的通信连接的操作的触发事件;响应于检测到触发事件,控制短距离无线通信电路广播包括账户密钥值的消息基于消息来标识具有与账户密钥值相同的密钥值的外部电子设备;通过短距离无线通信电路,将第一证书数据传输到外部电子设备;通过短距离无线通信电路,从外部电子设备接收第三证书数据;以及,基于第二证书数据和第三证书数据来验证外部电子设备。
根据本公开实施例,指令在执行时,可以使处理器:使用布隆过滤器调制消息,并且控制短距离无线通信电路广播所调制的消息。
根据本公开实施例,指令在执行时,可以使处理器:通过长距离无线通信电路,将能够标识用户的用户特定的信息传输到外部服务器,并且通过长距离无线通信电路,从外部服务器接收基于用户特定的信息生成的账户密钥值。
根据本公开实施例,指令在执行时,可以使处理器:通过长距离无线通信电路,基于用户账户来在外部服务器中注册第一证书数据。
根据本公开实施例,指令在执行时,可以使处理器:通过长距离无线通信电路,基于用户账户来从外部服务器接收在外部服务器中注册的第二证书数据。
如上所述,本文所公开的电子设备可以包括:存储器,其被配置为存储电子设备的第一证书数据和外部电子设备的第二证书数据;短距离无线通信电路;长距离无线通信电路;和处理器,其可操作地连接到存储器、短距离无线通信电路和长距离通信电路,以及,存储器可以存储指令,指令在执行时,使处理器:通过长距离无线通信电路,基于用户账户来登录到外部服务器;通过长距离无线通信电路,从外部服务器接收与用户账户对应的账户密钥值;通过短距离无线通信电路,接收包括账户密钥值的消息;基于消息来标识具有与账户密钥值相同的密钥值的外部电子设备;通过短距离无线通信电路,从外部电子设备接收第三证书数据;基于第二证书数据和第三证书数据来验证外部电子设备;以及,如果外部电子设备的验证完成,则通过短距离无线通信电路,将第一证书数据传输到外部电子设备。
如上所述,本文所公开的用于由电子设备与外部电子设备通信的方法可以包括:存储电子设备的第一证书数据和外部电子设备的第二证书数据;检测用于建立与电子设备周围的设备的通信连接的触发事件;响应于检测到触发事件,广播基于第一证书数据生成的通告包;如果响应于通告包从外部电子设备接收到响应包,则从响应包中获取第三证书数据;基于第二证书数据和第三证书数据来验证外部电子设备;以及,如果外部电子设备被验证,则建立与外部电子设备的安全通信信道。
根据本公开实施例,该方法还可以包括:由电子设备基于用户账户来登录到外部服务器;将关于外部电子设备的第二用户标识信息传输到外部服务器;以及,响应于第二用户标识信息,从外部服务器接收与第二用户标识信息对应的第二证书数据。
如上所述,本文所公开的用于由电子设备与外部电子设备通信的方法可以包括:存储电子设备的第一证书数据和外部电子设备的第二证书数据;接收包括第三证书数据的通告包;响应于接收到通告包,将第三证书数据与第二证书数据进行比较;如果第三证书数据和第二证书数据匹配,则将基于第一证书数据生成的响应包传输到外部电子设备;以及,基于外部电子设备对所传输的响应包的响应,建立与外部电子设备的安全通信信道。
如上所述,本文所公开的用于由电子设备与外部电子设备通信的方法可以包括:存储电子设备的第一证书数据和外部电子设备的第二证书数据;基于用户账户来登录到外部服务器;从外部服务器接收与用户账户对应的账户密钥值;检测用于建立与电子设备周围的设备的通信连接的触发事件;响应于检测到触发事件,广播包括账户密钥值的消息;基于消息来标识具有与账户密钥值相同的密钥值的外部电子设备;将第一证书数据传输到外部电子设备;从外部电子设备接收第三证书数据;以及,基于第二证书数据和第三证书数据来验证外部电子设备。
根据本公开实施例,该方法还可以包括:基于用户账户来从外部服务器接收在外部服务器中注册的第二证书数据。
如上所述,本文所公开的用于由电子设备与外部电子设备通信的方法可以包括:存储电子设备的第一证书数据和外部电子设备的第二证书数据;基于用户账户来登录到外部服务器;从外部服务器接收与用户账户对应的账户密钥值;通过短距离无线通信电路,接收包括账户密钥值的消息;基于消息来标识具有与账户密钥值相同的密钥值的外部电子设备;从外部电子设备接收第三证书数据;基于第二证书数据和第三证书数据来验证外部电子设备;以及,如果外部电子设备的验证完成,则将第一证书数据传输到外部电子设备。
根据特定实施例的电子设备可以是各种类型的电子设备之一。电子设备可包括例如便携式通信设备(例如,智能手机)、计算机设备、便携式多媒体设备、便携式医疗设备、相机、可穿戴设备或家用电器。根据本公开的实施例,电子设备不限于以上所述的那些电子设备。
应该理解的是,本公开的特定实施例以及其中使用的术语并不意图将本文阐述的技术特征限制于具体实施例,而是包括针对对应实施例的各种改变、等同形式或替换形式。对于附图的描述,相似的附图标记可用来指代相似或相关的元素。将理解的是,与项目对应的单数形式的名词可包括一个或多个事物,除非相关上下文另有明确指示。如本文所使用的,诸如“A或B”、“A和B中的至少一个”、“A或B中的至少一个”、“A、B或C”、“A、B和C中的至少一个”以及“A、B或C中的至少一个”的短语中的每一个短语可包括在与所述多个短语中的对应一个短语中一起列举出的项目的任意一项或所有可能组合。如本文所使用的,诸如“第1”和“第2”或者“第一”和“第二”的术语可用于将对应组件与另一组件进行简单区分,并且不在其它方面(例如,重要性或顺序)限制所述组件。将理解的是,在使用了术语“可操作地”或“通信地”的情况下或者在不使用术语“可操作地”或“通信地”的情况下,如果一元件(例如,第一元件)被称为“与另一元件(例如,第二元件)耦合”、“耦合到另一元件(例如,第二元件)”、“与另一元件(例如,第二元件)连接”或“连接到另一元件(例如,第二元件)”,则意味着所述一元件可与所述另一元件直接(例如,有线地)连接、与所述另一元件无线连接、或经由第三元件与所述另一元件连接。
如本文所使用的,术语“模块”可包括以硬件、软件或固件实现的单元,并可与其他术语(例如,“逻辑”、“逻辑块”、“部分”或“电路”)可互换地使用。模块可以是被适配为执行一个或多个功能的单个集成组件或者是该单个集成组件的最小单元或部分。例如,根据实施例,可以以专用集成电路(ASIC)的形式来实现模块。
可将本文阐述的特定实施例实现为包括存储在可由机器(例如,电子设备101)读取的存储介质(例如,内部存储器136或外部存储器138)中的一个或多个指令的软件(例如,程序140)。例如,所述机器(例如,电子设备101)的处理器(例如,处理器120)可调用存储在存储介质中的所述一个或多个指令中的至少一个指令,并在处理器的控制下,在使用或无需使用一个或多个其它组件的情况下执行所述至少一个指令。这使得所述机器能够操作用于根据所调用的至少一个指令执行至少一个功能。所述一个或多个指令可包括由编译器生成的代码或能够由解释器执行的代码。可以以非暂时性存储介质的形式来提供机器可读存储介质。其中,术语“非暂时性”仅意味着所述存储介质是有形装置,并且不包括信号(例如,电磁波),但是该术语并不在数据被半永久性地存储在存储介质中与数据被临时存储在存储介质中之间进行区分。
根据实施例,可在计算机程序产品中包括和提供根据本公开的特定实施例的方法。计算机程序产品可作为产品在销售者和购买者之间进行交易。可以以机器可读存储介质(例如,紧凑盘只读存储器(CD-ROM))的形式来发布计算机程序产品,或者可经由应用商店(例如,Play StoreTM)在线发布(例如,下载或上传)计算机程序产品,或者可直接在两个用户设备(例如,智能手机)之间分发计算机程序产品。如果是在线发布的,则计算机程序产品中的至少部分可以是临时生成的,或者可将计算机程序产品中的至少部分至少临时存储在机器可读存储介质(诸如制造商的服务器、应用商店的服务器或转发服务器的存储器)中。
根据特定实施例,上述组件中的每个组件(例如,模块或程序)可包括单个实体或多个实体。根据特定实施例,可省略上述组件中的一个或多个组件,或者可添加一个或多个其它组件。可替换或附加地,可将多个组件(例如,模块或程序)集成为单个组件。在这种情况下,根据特定实施例,该集成组件可仍旧按照与所述多个组件中的对应一个组件在集成之前执行一个或多个功能相同或相似的方式,执行所述多个组件中的每一个组件的所述一个或多个功能。根据特定实施例,由模块、程序或另一组件所执行的操作可顺序地、并行地、重复地或以启发式方式来执行,或者所述操作中的一个或多个操作可按照不同的顺序来执行或被省略,或者可添加一个或多个其它操作。
Claims (15)
1.一种电子设备,包括:
存储器,其存储包括电子设备的第一证书数据和外部电子设备的第二证书数据的证书列表;
短距离无线通信电路;和
处理器,其可操作地连接到存储器和短距离无线通信电路,其中,存储器存储指令,指令在执行时,使处理器:
检测用于请求建立与电子设备本地的设备的通信连接的触发事件;
响应于检测到触发事件,控制短距离无线通信电路广播基于第一证书数据生成的通告包;
从外部电子设备接收响应包,并且从所接收的响应包获取第三证书数据;
基于第二证书数据和第三证书数据来验证外部电子设备;以及
如果外部电子设备被验证,则建立与外部电子设备的安全通信信道。
2.根据权利要求1所述的电子设备,
其中,指令在执行时,还使处理器:
使用散列函数从第一证书数据获取第一散列值;
其中,所生成的通告包包括第一散列值,其中,第三证书数据包括第二散列值;以及
其中,验证外部电子设备包括:将第三证书数据的第二散列值与从第二证书数据生成的散列值进行比较。
3.根据权利要求1所述的电子设备,还包括:长距离无线通信电路,其被配置为与外部服务器通信,
其中,指令在执行时,还使处理器:
基于用户账户来登录到外部服务器;以及
通过长距离无线通信电路,在外部服务器中注册存储在电子设备上的第一用户标识信息和第一证书数据。
4.根据权利要求3所述的电子设备,
其中,指令在执行时,还使处理器:
通过长距离无线通信电路,将存储在存储器中的第二用户标识信息传输到电子设备基于用户账户登录的外部服务器,以及
通过长距离无线通信电路,从外部服务器接收与第二用户标识信息对应的第二证书数据。
5.根据权利要求4所述的电子设备,其中,第二用户标识信息包括与外部电子设备对应的联系人信息。
6.根据权利要求4所述的电子设备,还包括显示器,
其中,指令在执行时,还使处理器:
显示代表第二用户标识信息的项目;以及
响应于接收到选择项目的用户输入,使用短距离无线通信电路通过安全通信信道将与所检测的触发事件对应的内容数据传输到外部电子设备。
7.根据权利要求1所述的电子设备,其中,指令在执行时,还使处理器:
获取与外部电子设备共享的共享密钥;以及
基于共享密钥来加密第一证书数据,其中,所生成的通告包包括加密的第一证书数据。
8.根据权利要求3所述的电子设备,
其中,指令在执行时,还使处理器:
从外部服务器下载证书列表。
9.一种电子设备的方法,所述方法包括:
在存储器中存储电子设备的第一证书数据和外部电子设备的第二证书数据;
检测请求建立与电子设备本地的另一设备的通信连接的触发事件;
响应于检测到触发事件,广播基于第一证书数据生成的通告包;
基于检测到从外部电子设备接收响应于所广播的通告包接收的响应包,从响应包获取第三证书数据;
基于第二证书数据和第三证书数据来验证外部电子设备;以及
基于检测到外部电子设备被验证,建立与外部电子设备的安全通信信道。
10.根据权利要求9所述的方法,还包括:
使用散列函数从第一证书数据获取第一散列值;
其中,所生成的通告包包括第一散列值,其中,第三证书数据包括第二散列值;以及
其中,验证外部电子设备包括:将第三证书数据的第二散列值与从第二证书数据生成的散列值进行比较。
11.根据权利要求9所述的方法,还包括:
基于用户账户来登录到外部服务器;以及
在外部服务器中注册存储在电子设备上的第一用户标识信息和第一证书数据。
12.根据权利要求11所述的方法,还包括:
将存储在存储器中的第二用户标识信息传输到外部服务器,以及
从外部服务器接收与第二用户标识信息对应的第二证书数据。
13.根据权利要求12所述的方法,其中,第二用户标识信息包括与外部电子设备对应的联系人信息。
14.根据权利要求12所述的方法,还包括:
显示代表第二用户标识信息的项目;
接收选择项目的用户输入;以及
通过安全通信信道将与所检测的触发事件对应的内容数据传输到外部电子设备。
15.根据权利要求9所述的方法,还包括:
获取与外部电子设备共享的共享密钥;以及
基于共享密钥来加密第一证书数据,其中,所生成的通告包包括加密的第一证书数据。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2019-0133855 | 2019-10-25 | ||
KR20190133855 | 2019-10-25 | ||
KR1020200015532A KR20210049653A (ko) | 2019-10-25 | 2020-02-10 | 외부 전자 장치와 통신하는 방법 및 그 전자 장치 |
KR10-2020-0015532 | 2020-02-10 | ||
PCT/KR2020/014553 WO2021080364A1 (en) | 2019-10-25 | 2020-10-23 | Method for communicating with external electronic apparatus and electronic apparatus thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114846832A true CN114846832A (zh) | 2022-08-02 |
Family
ID=75586366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080090350.5A Pending CN114846832A (zh) | 2019-10-25 | 2020-10-23 | 用于与外部电子装置进行通信的方法及其电子装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11570602B2 (zh) |
EP (1) | EP4032333A4 (zh) |
CN (1) | CN114846832A (zh) |
WO (1) | WO2021080364A1 (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035135A (zh) * | 2007-04-27 | 2007-09-12 | 清华大学 | 适用于无/弱本地存储客户端系统的数字证书系统 |
CN101114901A (zh) * | 2006-07-26 | 2008-01-30 | 联想(北京)有限公司 | 非接触式无线数据传输的安全认证系统、设备及方法 |
US20110119485A1 (en) * | 2009-11-16 | 2011-05-19 | Thomas Killian | Method and apparatus for providing radio communication with an object in a local environment |
US20150011160A1 (en) * | 2013-07-08 | 2015-01-08 | Research In Motion Limited | Docking station connectivity monitor/controller |
US20160105859A1 (en) * | 2014-03-17 | 2016-04-14 | Huawei Device Co., Ltd. | Method for Synchronizing Content among Terminals and Terminals |
US20160278006A1 (en) * | 2013-11-06 | 2016-09-22 | Lg Electronics Inc. | Method for transmitting and receiving data in wireless communication system and apparatus for performing the same |
US20180159694A1 (en) * | 2010-01-06 | 2018-06-07 | International Business Machines Corporation | Wireless Connections to a Wireless Access Point |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3045961A (en) | 1958-12-11 | 1962-07-24 | Poster Products Inc | Display and support fixture and clip |
DE60219431T2 (de) | 2001-02-06 | 2007-12-13 | Certicom Corp., Mississauga | Mobile zertifikatverteilung in einer infrastruktur mit öffentlichem schlüssel |
AU2003221069A1 (en) * | 2003-03-25 | 2004-10-18 | Kenichi Miyamoto | Authentication card and wireless authentication system for mutual authentication using the authentication card |
US20060136717A1 (en) | 2004-12-20 | 2006-06-22 | Mark Buer | System and method for authentication via a proximate device |
US9137012B2 (en) | 2006-02-03 | 2015-09-15 | Emc Corporation | Wireless authentication methods and apparatus |
KR100760103B1 (ko) * | 2006-03-02 | 2007-09-18 | 엘지전자 주식회사 | 근거리 통신 장치의 사용자 인증 방법 |
US9135612B1 (en) | 2011-04-17 | 2015-09-15 | Proctor Consulting, LLC | Proximity detection, virtual detection, or location based triggering of the exchange of value and information |
US9554061B1 (en) | 2006-12-15 | 2017-01-24 | Proctor Consulting LLP | Smart hub |
US8116749B2 (en) * | 2008-09-08 | 2012-02-14 | Proctor Jr James Arthur | Protocol for anonymous wireless communication |
US8045961B2 (en) * | 2009-06-22 | 2011-10-25 | Mourad Ben Ayed | Systems for wireless authentication based on bluetooth proximity |
US8498618B2 (en) | 2009-06-22 | 2013-07-30 | Mourad Ben Ayed | Systems for intelligent authentication based on proximity |
US8112066B2 (en) | 2009-06-22 | 2012-02-07 | Mourad Ben Ayed | System for NFC authentication based on BLUETOOTH proximity |
US8600360B1 (en) | 2010-10-01 | 2013-12-03 | Wallrust, Inc. | Method and system for connecting people in a social network |
US8914000B2 (en) | 2010-10-01 | 2014-12-16 | Wallrust, Inc. | Method and system for providing presence information |
US8275365B1 (en) | 2010-10-01 | 2012-09-25 | Hydrabyte, Inc. | Method and system for providing presence information |
US10237711B2 (en) | 2014-05-30 | 2019-03-19 | Apple Inc. | Dynamic types for activity continuation between electronic devices |
US9380123B2 (en) | 2014-05-30 | 2016-06-28 | Apple Inc. | Activity continuation between electronic devices |
US9451438B2 (en) | 2014-05-30 | 2016-09-20 | Apple Inc. | Predefined wireless pairing |
US10055567B2 (en) | 2014-05-30 | 2018-08-21 | Apple Inc. | Proximity unlock and lock operations for electronic devices |
US10193987B2 (en) | 2014-05-30 | 2019-01-29 | Apple Inc. | Activity continuation between electronic devices |
US9544714B2 (en) | 2014-05-30 | 2017-01-10 | Apple Inc. | Companion application for activity cooperation |
US9614845B2 (en) | 2015-04-15 | 2017-04-04 | Early Warning Services, Llc | Anonymous authentication and remote wireless token access |
WO2017205770A1 (en) | 2016-05-27 | 2017-11-30 | Afero, Inc. | System and method for establishing secure communication channels with internet things (iot) devices |
JP6627742B2 (ja) | 2016-12-22 | 2020-01-08 | 京セラドキュメントソリューションズ株式会社 | 情報処理装置及びプログラム |
US10298398B2 (en) * | 2016-12-28 | 2019-05-21 | Google Llc | Peer discovery, connection, and data transfer |
KR102663781B1 (ko) * | 2018-06-01 | 2024-05-10 | 애플 인크. | 컴퓨팅 디바이스들이 서로 근접해 있을 때를 식별할 수 있게 하기 위한 기법들 |
US11568082B2 (en) * | 2019-10-21 | 2023-01-31 | Megical Oy | Method and system for securing sensitive information |
-
2020
- 2020-10-23 EP EP20879210.1A patent/EP4032333A4/en active Pending
- 2020-10-23 WO PCT/KR2020/014553 patent/WO2021080364A1/en unknown
- 2020-10-23 CN CN202080090350.5A patent/CN114846832A/zh active Pending
- 2020-10-26 US US17/079,749 patent/US11570602B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101114901A (zh) * | 2006-07-26 | 2008-01-30 | 联想(北京)有限公司 | 非接触式无线数据传输的安全认证系统、设备及方法 |
CN101035135A (zh) * | 2007-04-27 | 2007-09-12 | 清华大学 | 适用于无/弱本地存储客户端系统的数字证书系统 |
US20110119485A1 (en) * | 2009-11-16 | 2011-05-19 | Thomas Killian | Method and apparatus for providing radio communication with an object in a local environment |
US20180159694A1 (en) * | 2010-01-06 | 2018-06-07 | International Business Machines Corporation | Wireless Connections to a Wireless Access Point |
US20150011160A1 (en) * | 2013-07-08 | 2015-01-08 | Research In Motion Limited | Docking station connectivity monitor/controller |
US20160278006A1 (en) * | 2013-11-06 | 2016-09-22 | Lg Electronics Inc. | Method for transmitting and receiving data in wireless communication system and apparatus for performing the same |
US20160105859A1 (en) * | 2014-03-17 | 2016-04-14 | Huawei Device Co., Ltd. | Method for Synchronizing Content among Terminals and Terminals |
Also Published As
Publication number | Publication date |
---|---|
US11570602B2 (en) | 2023-01-31 |
WO2021080364A1 (en) | 2021-04-29 |
EP4032333A1 (en) | 2022-07-27 |
EP4032333A4 (en) | 2022-11-09 |
US20210127245A1 (en) | 2021-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11544077B2 (en) | Method for setting device based on information associated with account and electronic device therefor | |
US11200018B2 (en) | Electronic device and method for sharing screen data | |
US11496900B2 (en) | Electronic device and method for storing user identification information | |
US11395132B2 (en) | Method for transferring subscription and electronic device for supporting the same | |
US11671806B2 (en) | Method for communication based on state of external electronic device and electronic device thereof | |
US11089443B2 (en) | Electronic device and method for connecting short range communication | |
EP4262146A1 (en) | Iot device and method for onboarding iot device to server | |
US11647111B2 (en) | Method for sharing Bluetooth communication information and electronic device therefor | |
CN112261642B (zh) | 用于转移订阅的方法和用于支持该方法的电子装置 | |
US20230261886A1 (en) | Electronic device and method for sharing data using blockchain network | |
US20220377553A1 (en) | Electronic device and method for performing peer to peer service in electronic device | |
KR20210049653A (ko) | 외부 전자 장치와 통신하는 방법 및 그 전자 장치 | |
KR20200068068A (ko) | IoT 장치를 등록하는 전자 장치, 서버 및 그 작동 방법 | |
US11570602B2 (en) | Method for communicating with external electronic apparatus and electronic apparatus thereof | |
CN116868599A (zh) | 用于发送/接收网络配置信息的电子装置及其运行方法 | |
US20220343747A1 (en) | Method and apparatus for providing location alarm service of electronic device | |
KR20220000719A (ko) | 전자 장치 및 전자 장치의 컨텐츠 전송 방법 | |
CN116975836A (zh) | 一种应用控制方法、装置、电子设备和存储介质 | |
KR20210101998A (ko) | 전자 장치 및 전자 장치에서의 p2p 서비스 수행 방법 |
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 |