掌桥专利:专业的专利平台
掌桥专利
首页

一种剪贴板数据的隐私保护方法及电子设备

文献发布时间:2024-01-17 01:15:20


一种剪贴板数据的隐私保护方法及电子设备

技术领域

本申请涉及数据安全技术领域,尤其涉及一种剪贴板数据的隐私保护方法及电子设备。

背景技术

剪贴板是一个可以提供暂存数据功能及共享功能的模块。当用户在手机、平板等电子设备中选中复制的内容(如文字),并输入复制操作(如点击复制选项)后,电子设备可将复制的内容存入剪贴板中。后续,电子设备中的应用程序(application,APP)通过读取剪贴板,则可获取到剪贴板中的数据。例如,手机在将备忘录中的信息1复制到剪贴板后,若启动购物APP,则购物APP可以从剪贴板中读取信息1,以用于粘贴显示或者个性化推荐等场景。

并且,剪贴板中存储的可能是涉及用户隐私的数据,如电话号码、身份证、车牌号等隐私数据。若APP可以随意读取并使用这些数据,则极有可能造成隐私数据泄露。

进一步的,在一些场景中,多个电子设备的剪贴板数据可以彼此同步,多个电子设备中任一设备的剪贴板数据可以同步到多个电子设备中的其他电子设备中。因此,多个电子设备中任一电子设备的APP均可以读取到多个电子设备产生的剪贴板数据。相应的,隐私数据泄露的风险则更大。然而,现有技术中尚缺少一种可以针对该场景中的剪贴板数据有效的进行隐私保护的方案。

发明内容

本申请实施例提供一种剪贴板数据的隐私保护方法及电子设备,用于解决剪贴板中隐私数据泄露的问题,实现对剪贴板中隐私数据的有效保护。

第一方面,本申请提供一种剪贴板数据的隐私保护方法,应用于包括第一设备(如手机100)和第二设备(如平板110)的系统。第一设备接收用户对第一数据的第一操作。其中,第一操作包括复制操作或者剪切操作。第一设备响应于第一操作,显示第一提示信息。其中,第一提示信息提示已加密。第一设备将第二数据同步至第二设备的剪贴板。其中,第二数据是第一设备对第一数据加密得到的。第二设备接收用户的粘贴操作。第二设备响应于粘贴操作,显示第二提示信息。其中,第二提示信息提示已解密。第二设备显示第一数据。其中,第一数据是第二设备对第二数据解密得到的。

综上所述,采用本申请实施例的方法,第一设备可对复制的明文数据加密得到密文数据,并且同步给第二设备。并且,在第二设备中,仅在用户主动请求读取剪贴板的场景下,才对同步的密文数据进行解密显示。从而在多个电子设备之间同步剪贴板数据的同时,实现剪贴板数据的隐私保护,避免隐私泄露。

在第一方面的一种可能的设计方式中,在第二设备显示第一数据之后,上述方法还包括:第二设备对第一数据加密,得到第二数据。第二设备将第二数据存储至第二设备的剪贴板,并显示第三提示信息。其中,所示第三提示信息提示已加密。

由此可见,采用本实施例的方法,在第二设备成功显示解密后的第一数据后,可以再次触发对第一数据加密,使得剪贴板中暂存的数据再次恢复到加密的状态。从而有利于剪贴板数据的隐私保护。

在第一方面的另一种可能的设计方式中,第一设备和第二设备绑定相同的用户账号。上述第一设备对第一数据加密得到第二数据,包括:第一设备利用第一密钥对第一数据加密,得到第二数据。其中,第一密钥由第一设备根据预设的加密算法和用户账号生成。上述第二设备对第二数据解密得到第一数据,包括:第二设备利用第二密钥对第二数据解密,得到第一数据;其中,第二密钥由第二设备根据预设的加密算法和用户账号生成。

由此可见,采用本实施例的方法,第一设备和第二设备可以基于用户账号和预设加密算法来生成密钥(如加密密钥、解密密钥),使得在第二设备中生成的第一密钥与第一设备中生成的第二密钥相同,可以对同步的第二数据成功解密。

在第一方面的另一种可能的设计方式中,对第一数据加密的算法为对称加密算法,对第二数据解密的算法为对称加密算法的逆算法。

由此可见,采用本实施例的方法,使用对称算法,则可以确保利用相同的密钥来成功完成加解密。

在第一方面的另一种可能的设计方式中,上述第一设备根据预设的加密算法和用户账号生成第一密钥,包括:第一设备的第一剪贴板模块响应于第一操作,向第一设备的第一加密引擎发送第一请求;其中,第一请求中包括第一数据。第一加密引擎响应于接收到第一请求,向第一设备的第一密钥管理模块发送第二请求。第一密钥管理模块响应于接收到第二请求,获取第一设备绑定的用户账号,根据预设的加密算法和第一设备绑定的用户账号生成第一密钥。第一密钥管理模块向第一加密引擎发送第一密钥。

上述利用第一密钥对第一数据加密,得到第二数据,包括:第一加密引擎响应于接收到第一密钥,利用第一密钥对第一数据加密,得到第二数据。

由此可见,采用本实施例的方法,第一设备可以完成对第一数据的加密。

在第一方面的另一种可能的设计方式中,上述第二设备根据预设的加密算法和用户账号生成第二密钥,包括:第二设备的第二剪贴板模块响应于粘贴操作,向第二设备的第二加密引擎发送第三请求;其中,第三请求中包括第二数据。第二加密引擎响应于接收到第三请求,向第二设备的第二密钥管理模块发送第四请求。第二密钥管理模块响应于接收到第四请求,获取第二设备绑定的用户账号,根据预设的加密算法和第二设备绑定的用户账号生成第二密钥。第二密钥管理模块向第二加密引擎发送第二密钥。

上述利用第二密钥对第二数据解密,得到第一数据,包括:第二加密引擎响应于接收到第二密钥,利用第二密钥对第二数据解密,得到第一数据。

由此可见,采用本实施例的方法,第二设备可以完成对第二数据的加密。

在第一方面的另一种可能的设计方式中,上述方法还包括:在第一设备和第二设备绑定相同的用户账号后,第一设备和第二设备建立信任关系;其中,信任关系包括:第二设备是第一设备的信任设备,和/或,第一设备是第二设备的信任设备。上述第一设备将第二数据同步至第二设备的剪贴板,包括:若第二设备是第一设备的信任设备,第一设备将第二数据同步至第二设备的剪贴板。

由此可见,采用本实施例的方法,可先在绑定相同用户账号的电子设备之间建立可信关系,其中,可信任的电子设备之间可以成功建立可信链接,而不可信任的电子设备之间不能成功建立可信链接。在此基础上,后续可在成功建立可信链接的电子设备之间同步剪贴板数据,避免将剪贴板数据泄露给不信任的设备。

在第一方面的另一种可能的设计方式中,上述第一设备将第二数据同步至第二设备的剪贴板,包括:第一设备基于数据传输协议将第二数据同步至第二设备的剪贴板;其中,数据传输协议包括:一碰OneHop、近场通信NFC或者高带宽数字内容保护技术HDCP。

在第一方面的另一种可能的设计方式中,上述第二设备接收用户的粘贴操作,包括:在第二设备激活文本输入框的情况下,第二设备接收用户的粘贴操作。上述第二设备显示第一数据,包括:第二设备在文本输入框中显示第一数据。

由此可见,采用本实施例的方法,可以在文本输入框中输入文本的场景下,触发解密并填充显示。从而可以提升输入效率。

第二方面,本申请提供一种剪切板数据的隐私保护方法,应用于第一设备。其中,第一设备接收用户对第一数据的第一操作;其中,第一操作包括复制操作或者剪切操作。第一设备响应于第一操作,显示第一提示信息;其中,第一提示信息提示已加密。若第二设备是第一设备的信任设备,第一设备将第二数据同步至第二设备的剪贴板中;其中,第二数据是对第一数据加密得到的。

关于第二方面的效果,可参见上述第一方面及其可能的设计方式中说明,此处不再赘述。

第三方面,本申请提供一种剪切板数据的隐私保护方法,应用于第二设备。其中,第二设备在第一剪贴板中存储第二数据;其中,第一剪贴板是第二设备的剪贴板,第二数据是密文数据。第二设备接收用户的粘贴操作。第二设备响应于粘贴操作,显示第二提示信息;其中,第二提示信息用于提示已解密。第二设备显示第一数据;其中,第一数据是第二设备对第二数据解密得到的。

关于第三方面的效果,可参见上述第一方面及其可能的设计方式中说明,此处不再赘述。

第四方面,本申请提供一种电子设备,包括:触摸屏、存储器和一个或多个处理器,所述存储器与所述处理器耦合;其中,所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如上述第一方面、第二方面及其任一种可能的设计方式中,第一设备执行的步骤。

第五方面,本申请提供一种电子设备,包括:触摸屏、存储器和一个或多个处理器,所述存储器与所述处理器耦合;其中,所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如上述第一方面、第三方面及其任一种可能的设计方式中,第二设备执行的步骤。

第六方面,本申请提供一种剪贴板数据的隐私保护系统,所述系统包括上述第五方面的电子设备和第六方面的电子设备。

第七方面,本申请提供一种计算机可读存储介质,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如上述第一方面、第二方面、第三方面及其任一种可能的设计方式中的方法。

第八方面,本申请提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如上述第一方面、第二方面、第三方面及其任一种可能的设计方式中的方法。

可以理解地,上述提供的第四方面和第五方面所述的电子设备,第六方面所述的系统,其方面所述的计算机存储介质,第八方面所述的计算机程序产品所能达到的有益效果,可参考第一方面、第二方面、第三方面及其任一种可能的设计方式中的有益效果,此处不再赘述。

附图说明

图1为本申请实施例提供的一种手机界面的示意图之一;

图2为本申请实施例提供的一种隐私保护系统的构成示意图;

图3为本申请实施例提供的一种手机的硬件结构的示意图;

图4为本申请实施例提供的一种手机的软件结构框图;

图5为本申请实施例提供的剪贴板数据的隐私保护方法的实现示意图之一;

图6为本申请实施例提供的剪贴板数据的隐私保护方法的实现示意图之二;

图7A为本申请实施例提供的剪贴板数据的隐私保护方法的实现示意图之三;

图7B为本申请实施例提供的剪贴板数据的隐私保护方法的实现示意图之四;

图7C为本申请实施例提供的一种手机界面的示意图之二;

图8为本申请实施例提供的剪贴板数据的隐私保护方法的实现示意图之五;

图9A为本申请实施例提供的剪贴板数据的隐私保护方法的实现示意图之六;

图9B为本申请实施例提供的一种平板界面的示意图之一;

图9C为本申请实施例提供的一种平板界面的示意图之二;

图9D为本申请实施例提供的一种剪贴板中数据变化的示意图;

图10为本申请实施例提供的剪贴板数据的隐私保护方法的实现示意图之七;

图11为本申请实施例提供的剪贴板数据的隐私保护方法的实现示意图之八;

图12为本申请实施例提供的剪贴板数据的隐私保护方法的流程图;

图13为本申请实施例提供的一种芯片系统的结构图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请的描述中,除非另有说明,“至少一个”是指一个或多个,“多个”是指两个或多于两个。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。

本申请实施例提供一种剪贴板数据的隐私保护方法,该方法可用于保护电子设备的剪贴板数据的隐私,避免隐私泄露。在详细说明本申请方案之前,先以电子设备是手机为例,并结合图1对常规技术中提供的一些隐私保护方案及其存在的问题做简单介绍。

请参见图1中的(a),在一些实现方式中,在APP读取剪贴板时,例如,当用户点击聊天APP的输入框使光标在输入框中闪烁时,即激活输入框时,聊天APP可读取剪贴板,手机可提示APP1(如聊天应用)从APP2(如备忘录、浏览器)中粘贴剪贴板数据。如此,用户可以清楚APP1是否读取了隐私数据。但是,这种方式仅仅只是起到了提示作用,而无法从根本上阻止APP1读取剪贴板中的数据。

请参见图1中的(b),在另一些实现方式中,在APP读取剪贴板时,例如,聊天APP启动时主动读取剪贴板,手机可提示某APP(如聊天APP)想要读取剪贴板。同时,还可提供本次允许读取选项,如图1中的(b)中“本次允许”按钮;本次拒绝读取选项以及倒计时,如图1中的(b)中“拒绝(5s)”按钮;以及,始终拒绝选项,如图1中的(b)中“始终拒绝”按钮。

在用户选择本次允许读取选项后,手机才允许该APP此次读取剪贴板中的数据。在用户选择本次拒绝读取选项后,手机则拒绝该APP此次读取剪贴板中的数据。在用户选择始终拒绝选项后,手机则会拒绝该APP此次以及以后读取剪贴板中的数据,即不会再次提示。另外,若倒计时结束时,手机还未接收到用户对任一选项的操作,则默认此次拒绝。如此,手机可以基于用户的选择来确定APP读取剪贴板的权限,达到保护剪贴板数据的隐私的目的。与此同时,在这种实现方式中,若用户选择本次允许读取选项,本次拒绝读取选项或者不对任一选项进行选择,后续该APP再次读取剪贴板时,则会再次显示提示,并需要用户再次选择。从而会对用户造成干扰。

手机中需要读取剪贴板的APP的数量越多,对用户的干扰越严重。另外,图1中的(a)所示的实现方式,只能针对单个电子设备实现对剪切板数据的隐私保护。而在多个电子设备的剪贴板数据可以彼此同步的场景中,多个电子设备中任一电子设备的剪贴板数据可以同步到多个电子设备中的其他电子设备中。因此,多个电子设备中任一电子设备的APP均可以读取到多个电子设备产生的剪贴板数据。相应的,隐私数据泄露的风险则更大。同样的,采用上述图1中的(a)或者图1中的(b)所示的方式来进行隐私保护,也会出现上述问题。

基于此,本申请实施例提供了一种剪贴板数据的隐私保护方法,该方法可用于本申请实施例提供的隐私保护系统。该隐私保护系统包括多个电子设备。示例性的,本申请实施例中的电子设备可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备等支持剪贴板功能的设备,本申请实施例对该电子设备的具体形态不作特殊限制。

例如,如图2中的(a)所示,该隐私保护系统可以包括手机100和平板110。又例如,如图2中的(b)所示,该隐私保护系统可以包括手机100、平板110和笔记本电脑120。在下文实施例中,主要以图2中的(a)所示的隐私保护系统为例,来说明本申请方案。

其中,该多个电子设备绑定有相同的用户账号。例如,用户账号是荣耀账号。该用户账号可以区分使用电子设备的用户。示例性的,以电子设备是手机100为例,手机100绑定的用户账号发生变化,则表明使用该手机100的用户发生了变化。

同时,该多个电子设备(如手机100和平板110)之间可以使用通用串行总线(universal serial bus,USB)建立有线连接。或者,该多个电子设备(如手机100和平板110)之间可以通过全球移动通讯系统(global system for mobile communications,GSM)、通用分组无线服务(general packet radio service,GPRS)、码分多址接入(codedivision multiple access,CDMA)、宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE)、蓝牙、无线保真(wireless fidelity,Wi-Fi)、NFC、基于互联网协议的语音通话(voice over Internet protocol,VoIP)、支持网络切片架构的通信协议建立无线连接。本申请实施例中,通过在该多个电子设备之间建立有线连接或者无线连接,使得多个电子设备之间的剪贴板数据可以实现同步。

采用上述隐私保护系统,可实现本申请实施例提供的一种剪贴板数据的隐私保护方法,该方法具体如下:在上述多个电子设备中的第一设备(如手机100)检测到用户的复制操作或者剪切操作后,可对复制的内容或者剪切的内容进行加密,将加密后的内容存在剪贴板中。其中,为了方便说明,可以将复制的内容或者剪切的内容称为第一数据,该第一数据是加密前的数据,为明文数据。以及,可以将加密后的内容称为第二数据,该第二数据是加密后的数据,为密文数据。并且,加密密钥(第一密钥)由第一设备根据第一设备的用户账号(如荣耀账号)和预设加密算法而生成。而后,第一设备可将第二数据同步至多个电子设备中的第二设备(如平板110)的剪贴板中。第二设备在检测到用户主动请求读取剪贴板的操作(如粘贴操作)后,响应于该操作,第二设备可对剪贴板中的第二数据进行解密。其中,解密密钥(第二密钥)由第二设备根据第二设备的用户账号(如荣耀账号)和预设加密算法而生成。由于第一设备的用户账号和第二设备的用户账号相同,则生成的解密密钥与加密密钥相同,利用该解密密钥可以成功解密第二数据,得到第一数据。从而可以显示解密出来的明文数据。

综上所述,采用本申请实施例提供的一种剪贴板数据的隐私保护方法,其一,第一设备可对复制的明文数据加密得到密文数据,而后暂存在剪贴板中。并且,在第二设备中,仅在用户主动请求读取剪贴板的场景下,才对同步的密文数据进行解密显示。从而可以保护剪贴板数据的安全,避免剪贴板中的隐私泄露。其二,第一设备和第二设备可以基于用户账号和预设加密算法来生成密钥(如加密密钥、解密密钥),使得在第二设备中生成的解密密钥与第一设备中生成的加密密钥相同,可以对同步的第二数据成功解密。从而在多个电子设备之间同步剪贴板数据的同时,实现剪贴板数据的隐私保护。即,跨设备实现剪贴板数据的隐私保护。其三,上述方案无需用户执行任何操作,不会影响对电子设备的使用。

示例性的,以手机100为例,来说明本申请实施例中电子设备的硬件结构和软件结构。

请参见图3,为本申请实施例提供的一种手机100的硬件结构图。如图3所示,手机100可以包括处理器310,外部存储器接口320,内部存储器321,通用串行总线(universalserial bus,USB)接口330,充电管理模块340,电源管理模块341,电池342,天线1,天线2,移动通信模块350,无线通信模块360,音频模块370,扬声器370A,受话器370B,麦克风370C,耳机接口370D,传感器模块380,按键390,马达391,指示器392,摄像头393,显示屏394,以及用户标识模块(subscriber identification module,SIM)卡接口395等。

可以理解的是,本实施例示意的结构并不构成对电子设备的具体限定。在另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。

处理器310可以包括一个或多个处理单元,例如:处理器310可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。

可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备的结构限定。在另一些实施例中,电子设备也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。

充电管理模块340用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块340可以通过USB接口330接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块340可以通过电子设备300的无线充电线圈接收无线充电输入。充电管理模块340为电池342充电的同时,还可以通过电源管理模块341为电子设备供电。

电源管理模块341用于连接电池342,充电管理模块340与处理器310。电源管理模块341接收电池342和/或充电管理模块340的输入,为处理器310,内部存储器321,外部存储器,显示屏394,摄像头393,和无线通信模块360等供电。电源管理模块341还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块341也可以设置于处理器310中。在另一些实施例中,电源管理模块341和充电管理模块340也可以设置于同一个器件中。

电子设备的无线通信功能可以通过天线1,天线2,移动通信模块350,无线通信模块360,调制解调处理器以及基带处理器等实现。

无线通信模块360可以提供应用在电子设备300上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块360可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块360经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器310。无线通信模块360还可以从处理器310接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。

电子设备通过GPU,显示屏394,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏394和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器310可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。

电子设备可以通过ISP,摄像头393,视频编解码器,GPU,显示屏394以及应用处理器等实现拍摄功能。ISP用于处理摄像头393反馈的数据。摄像头393用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。在一些实施例中,电子设备可以包括1个或N个摄像头393,N为大于1的正整数。

外部存储器接口320可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口320与处理器310通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。

内部存储器321可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器310通过运行存储在内部存储器321的指令,从而执行电子设备的各种功能应用以及数据处理。例如,处理器310可以通过执行存储在内部存储器321中的指令,响应于用户展开显示屏394的操作,在显示屏384显示不同的内容。内部存储器321可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器321可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universalflash storage,UFS)等。

电子设备可以通过音频模块370,扬声器370A,受话器370B,麦克风370C,耳机接口370D,以及应用处理器等实现音频功能。例如音乐播放,录音等。

按键390包括开机键,音量键等。按键390可以是机械按键。也可以是触摸式按键。电子设备可以接收按键输入,产生与电子设备的用户设置以及功能控制有关的键信号输入。马达391可以产生振动提示。马达391可以用于来电振动提示,也可以用于触摸振动反馈。指示器392可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口395用于连接SIM卡。SIM卡可以通过插入SIM卡接口395,或从SIM卡接口395拔出,实现和电子设备的接触和分离。电子设备可以支持1个或N个SIM卡接口,N为大于1的正整数。

请参照图4,为本申请实施例提供的一种手机100的软件结构框图。手机100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明手机100的软件结构。

如图4所示,分层架构可将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层(简称应用层)410,应用程序框架层(简称框架层)420,硬件抽象层(hardwareabstract layer,HAL)层430,以及内核层(Kernel,也称为驱动层、系统层)440。

应用层(Application)410可以包括一系列APP。该多个APP可以为浏览器,备忘录,地图,聊天,音乐,视频,购物以及新闻等APP。

本申请实施例中,手机100可接收用户在上述APP的应用界面中的第一预设操作,如选中复制或者剪切的内容的操作。响应于该第一预设操作,手机100可显示复制/剪切选项。后续,手机100可接收用户对复制/剪切选项的选择操作。响应于用户对复制/剪切选项的选择操作,手机100可向剪贴板中写入复制或者剪切的内容。

本申请实施例中,手机100还可以接收用户在上述APP的应用界面中的第二操作,如对文本输入框的长按操作。响应于该第二预设操作,手机100可显示粘贴选项。后续,手机100可接收用户对粘贴选项的选择操作。响应于用户对粘贴选项的选择操作,手机100可从剪贴板(如剪贴板缓冲器(buffer)423)中读取内容并显示。

示例性的,在备忘录APP的应用界面中,手机100响应于用户长按选中文本“13511111111”的操作(即第一预设操作),可以显示包括复制选项、搜索选项的快捷菜单条。手机100(如备忘录APP)响应于用户对复制选项的选择操作,可向剪贴板写入文本“13511111111”。而后,在聊天APP的应用界面中,手机100响应于用户在文本输入框中的长按操作(即第二预设操作),可以显示包括粘贴选项、搜索选项的快捷菜单条。手机100(如聊天APP)响应于用户对粘贴选项的选择操作,可从剪贴板中读取文本“13511111111”,并将文本“13511111111”自动填充在文本输入框内。

框架层420为应用层410的APP提供应用编程接口(application programminginterface,API)和编程框架。框架层420包括一些预先定义的函数。

如图4所示,框架层420中设置有剪贴板模块421。剪贴板模块421可提供数据暂存(即写入)和读取的功能。即,剪贴板模块421为通常意义上所说的剪贴板。剪贴板模块421包括剪贴板控件422和剪贴板缓冲器(buffer)423。

在本申请实施例中,剪贴板控件422可用于接收应用层410向剪贴板写入数据的写入请求或者从剪贴板读取数据的读取请求,响应于应用层410的请求(如写入请求、读取请求),可以与底层(如内核层440)交互,完成加解密处理。剪切板缓冲器423可用于存储加密前的明文数据(如第一数据)或者加密后的密文数据(如第二数据)。

硬件抽象层430用于连接框架层420和内核层440。例如,硬件抽象层430可以在框架层420和内核层440之间进行数据传输,如传输复制或剪切的内容。当然,硬件抽象层430也可以对来自底层(如内核层440)的数据进行处理,然后再传输给框架层420。

如图4所示,硬件抽象层430可以包括HAL接口定义语言(HAL interfacedefinition language,HIDL)接口和HAL接口。其中,硬件抽象层430通过提供标准的HIDL接口给上层(如剪贴板模块421)进行调用,保持与上层的正常通信。以及,硬件抽象层430通过标准的HAL接口,如HAL3.0,向内核层440传输数据,并接收内核层440上传的数据。如,向内核层440传输第一数据,而后接收内核层440经过加密处理后上报的第二数据。

内核层440位于硬件抽象层430之下,是硬件和软件之间的层。如图4所示,本申请实施例中,内核层440中可以包括剪贴板加密引擎441,系统密钥管理442和账号服务443。其中,剪贴板加密引擎441可用于对第一数据进行加密,或者对加密得到的第二数据进行解密。系统密钥管理442用于生成加解密的密钥(如加密密钥、解密密钥)。其中,加解密的密钥基于用户账号和预设加密算法而生成。用户账号可从账号服务443中获取。

请参见图5,以图2中的(a)所示的隐私保护系统为例,即第一设备是手机100,第二设备是平板110,本申请实施例的方法可以包括以下几个流程:(1)手机100和平板110建立可信链接;(2)手机100对复制或剪切的内容(如第一数据)加密后写入剪贴板;(3)手机100和平板110同步剪贴板数据(如第二数据);(4)平板110对剪贴板数据(如第二数据)解密并显示;(5)平板110对解密后的内容(如第一数据)再次加密后写入剪贴板。应注意,流程(1)和流程(2)必须在流程(3)之前完成,但是流程(1)和流程(2)并无严格的先后顺序。

下面将分别针对上述各个流程来详细说明:

(1)手机100和平板110建立可信链接。

请参见图6中的(a),在一种场景中,用户1在使用设备a(如手机100)和设备b(如平板110),用户2在使用设备c,用户2借用了用户1的用户账号1。即,设备a、设备b和设备c都绑定了用户账号1。在这种场景中,设备a和设备b是同一用户在使用,是互相可信任的。设备c上虽然绑定有相同的用户账号,但是于设备a和设备b而言,由于使用用户不同,极有可能是不可信任的。

本申请实施例中,可先在绑定相同用户账号的电子设备之间建立可信链接,其中,可信任的电子设备之间(如图6中的设备a和设备b)可以成功建立可信链接,而不可信任的电子设备之间(如图6中的设备a、设备b分别与设备c)不能成功建立可信链接。在此基础上,后续可在成功建立可信链接的电子设备之间同步剪贴板数据,避免将剪贴板数据泄露给不信任的设备。

请参见图6中的(b),手机100绑定用户账号1后,若平板110同样绑定用户账号1,则可以在平板110上提示是否加入信任环。响应于用户选择加入信任环的操作,平板110可以显示验证界面,以进行可信验证。

在详细介绍可信验证的实现之前,需要先在此说明的是:由于手机100和平板110上可以绑定相同的用户账号,则手机100和平板110通常是属于同一生产商的,例如,都属于荣耀。因此,平板110的服务器和手机100的服务器通常都是同一个云服务器。或者,平板110的服务器和手机100的服务器是两个比较容易实现数据交互的服务器。基于此,在下文说明中,将平板110的服务器和手机100的服务器统称为服务器。

在一些实施例中,验证界面可以是数字解锁、图案解锁、指纹解锁和/或人脸解锁的解锁界面。例如,验证界面中包括输入数字密码的键盘。又例如,验证界面中包括绘制解锁图案的九宫格点阵图。平板110可接收用户在验证界面输入的第一解锁密码,并将第一解锁密码发送给服务器,以供服务器进行可信验证。服务器将手机100的第二解锁密码和平板110发送来的第一解锁密码匹配,若第二解锁密码和第一解锁密码相同,则可成功建立手机100和平板110的可信链接;若第二解密密码和第一解密密码不相同,则无法成功建立手机100和平板110的可信链接。

在一些实施例中,验证界面是输入验证码的界面。平板110响应于用户选择加入信任环的操作,可向服务器发送加入请求。服务器响应于该接入请求,可向手机100下发第一验证码。该第一验证码用于建立可信链接时的验证。在显示验证界面后,平板110可接收用户在验证界面输入的第二验证码,并将第二验证码发送给服务器。服务器将第一验证码和第二验证码匹配。若第一验证码和第二验证码相同,例如,用户从手机100上查看到验证码“123456”(第一验证码)后,正确的将验证码“123456”(第二验证码)输入到验证界面中,则第二验证码和第一验证码相同,则可成功建立手机100和平板110的可信链接;若第二验证码和第一验证码不同,则无法成功建立手机100和平板110的可信链接。

在另一些实施例中,验证界面是扫码界面。平板110响应于用户选择加入信任环的操作,可向服务器发送加入请求。服务器响应于该接入请求,可向手机100下发动第一二维码。该第一二维码用于建立可信链接的验证。在显示验证界面后,平板110可获取扫码得到的第二二维码,并将第二二维码发送给服务器。服务器将第一二维码和第二二维码匹配。若第一二维码和第二二维码相同,例如,在扫码界面中,用户扫描的二维码(第二二维码)正是手机100上显示的第一二维码,则第一二维码和第二二维码相同,则可成功建立手机100和平板110的可信链接;若第二二维码和第一二维码不同,则无法成功建立手机100和平板110的可信链接。

在成功建立可信链接后,可将手机100和平板110添加到同一信任环中。其中,处于同一信任环中的电子设备,才可以同步剪贴板数据。

在一些实施例中,在建立可信任链接后,手机100和平板110可进一步协商共享密钥。其中,手机100和平板110可通过公钥交换,私钥验签,从而协商出共享密钥。该共享密钥用于同步剪贴板数据时的加密传输。从而可以进一步提升数据安全性,避免在电子设备之间同步数据的过程中,数据被其他设备非法截取。

应注意,上述关于流程(1)的说明中,主要以手机100和平板110两个电子设备为例,来说明了建立可信链接的过程。实际中,还可以将两个以上的电子设备通过建立可信链接后添加到同一信任环中。示例性的,在建立手机100和平板110的可信链接的基础上,若笔记本电脑也绑定了同样的用户账号,则可同样按照前述流程(1),例如,用户在笔记本电脑的验证界面中输入手机100的解锁密码或者输入平板110的解锁密码,来建立笔记本电脑与手机100、平板110的可信链接。在成功建立可信链接后,形成的信任环中则包括手机100、平板110和笔记本电脑共3个电子设备。也就是说,当有新的设备绑定同样的用户账号时,则可同样采用流程(1)来加入信任环。

(2)手机100对复制或剪切的内容(如第一数据)加密后写入剪贴板。请参见图7A,在手机100中,流程(2)可以包括:

S700、第一APP接收用户对第一数据的第一操作。

其中,第一APP可以是手机100中安装的一个APP。如第一APP可以为备忘录,新闻,浏览器等APP。

其中,第一数据是第一APP的应用界面中的内容。该第一数据可以是文本、图片、音频、视频等形式的内容。应理解,第一数据是明文数据,即未经加密的数据。

其中,第一操作用于触发第一APP向剪贴板写入第一数据。在一种具体的实现方式中,第一操作可以是在手机100选中第一数据后,用户对复制选项或者剪切选项的选择操作(如点击操作)。示例性的,以第一APP是图7B中的(a)所示的备忘录APP,第一数据是备忘录APP中的文本“13511111111”为例,第一操作可以是在选中文本“13511111111”后,用户对快捷菜单中复制选项的点击操作。在另一种具体的实现方式中,第一操作可以是手机100选中第一数据后,用户按下第一预设快捷键组合的操作。例如,第一预设快捷键组合可以是“Ctrl”+“c”,或者第一预设快捷键组合可以是“Ctrl”+“x”。

S701、第一APP响应于第一操作,向剪贴板模块(第一剪贴板模块)请求写入第一数据。

其中,可以将请求写入第一数据的请求称为第一请求。

S702、剪贴板模块向剪贴板加密引擎请求加密第一数据。

其中,可以将请求加密第一数据的请求记为第二请求。

相较于直接将复制或者剪切的内容(明文数据)存入剪贴板中的方式,本申请实施例中,剪贴板模块在接收到写入第一数据的请求后,先向底层的剪贴板加密引擎发送加密第一数据的请求,该加密第一数据的请求中包括第一数据,以请求对第一数据进行加密而后存储。有利于保护剪贴板中的隐私数据。

S703、剪贴板加密引擎(第一加密引擎)向系统密钥管理请求获取加密密钥。

剪贴板加密引擎在接收到加密第一数据的请求后,向系统密钥管理发送获取加密密钥的请求,以请求获取加密密钥。其中,加密密钥用于对第一数据进行加密处理。

S704、系统密钥管理(第一密钥管理模块)向账号服务获取手机100的用户账号。

本申请实施例中,系统管理密钥在接收到获取加密密钥的请求后,向账号服务获取用户账号,以用于后续生成加密密钥。

S705、系统密钥管理调用预设加密算法,根据预设加密算法和用户账号生成加密密钥。

其中,预设加密算法是预先指定的,用于生成剪贴板的加密密钥的算法。例如,预设加密算法可以是哈希(HASH)算法、AES256加密算法等。应注意,不同电子设备(如手机100、平板110)中,系统密钥管理中的预设加密算法是相同的。或者,同一生产商的电子设备中,系统密钥管理中的预设加密算法是相同的。例如,荣耀手机、荣耀平板中的预设加密算法相同。

在一些实施例中,系统密钥管理中包括加解密算法库,系统密钥管理可以调用加解密算法库中的预设加密算法。采用该预设加密算法对用户账号进行相应的计算,生成加密密钥。

本申请实施例中,系统密钥管理基于用户账号生成加密密钥,从而有利于其他登录相同用户账号的电子设备(如平板110)可以生成对应的解密密钥。

应注意,在同一电子设备中,系统密钥管理在生成一次密钥后,则可存储该密钥。后续再次对剪贴板数据加解密时,剪贴板加密引擎可以直接从系统密钥管理中获取该密钥。从而可以减少数据运算。

S706、系统密钥管理向剪贴板加密引擎发送加密密钥。

S707、剪贴板加密引擎利用加密密钥,对第一数据加密,生成第二数据。

其中,对第一数据加密后得到的第二数据是密文数据。

在一些实施例中,采用对称加密算法,对第一数据加密,从而有利于绑定相同的用户账号的电子设备(如平板110)可以采用同样基于用户账号生成的密钥来完成解密。

S708、剪贴板加密引擎向剪贴板模块发送第二数据。

S709、剪贴板模块存储第二数据。

例如,剪贴板模块将第二数据存储在剪贴板缓冲器中。

示例性的,第一数据是图7B中的(a)所示的文本“13511111111”,如图7B中的(c)所示,剪贴板缓冲器中存储的与文本“13511111111”对应的第二数据可以是“1010101010101010101010101111111111111111”。显然,剪贴板缓冲器中的第二数据不是文本“13511111111”本身,而是加密后的密文。

也就是说,本申请实施例中,存储在剪贴板模块中的是第一数据的密文。从而可以保护剪贴板中的隐私数据。例如,购物、聊天等APP在启动时主动读取剪贴板,则只能读取到密文,而无法得到原始数据,即第一数据。

在一些实施例中,在S709之后,剪贴板模块还可以向第一APP反馈复制或剪切成功(即成功写入)的消息。第一APP在接收到复制或剪切成功的消息后,可以显示复制或剪切成功的通知,用于提示已复制或剪切成功。

示例性的,以第一APP是图7B中的(a)所示的备忘录APP为例,备忘录APP在接收到复制或剪切成功的消息后,可以显示如图7B中的(b)示出的通知710。该通知710中包括已复制的文字信息。

采用上述流程(2),可以将复制或剪切的明文数据加密后存入剪贴板中,有利于剪贴板数据的隐私保护。并且,加密密钥基于用户账号生成,从而可以使登录同样的用户账号的电子设备(如平板110)可以对密文数据成功解密。

在前述流程(2)中,在用户请求复制或者剪切第一数据后,经过加密处理,可得到第二数据。其中,第一数据是明文数据,第二数据是密文数据。在一些实施例中,为了提示数据从未加密到加密的状态变化,流程(2)还包括:第一APP响应于用户对第一数据的第一操作,显示第一标识,如第一标识是图7C中的(a)所示的锁打开的图标(即虚线框中的图标),用于指示第一数据是未加密的明文数据。以及,第一APP在接收到复制或剪切成功的消息后,可以显示第二标识(也可以称为第一提示信息),如第二标识是图7C中的(b)所示的通知720(复制或剪切成功的通知)中锁关闭的图标(即虚线框中的图标),用于指示剪贴板中存储的是密文数据,即已加密。

(3)手机100和平板110同步剪贴板数据(如第二数据)。

在建立了手机100和平板110之间的可信链接之后,手机100可将剪贴板数据同步给平板110的剪贴板。示例性的,如图8所示,手机100和平板110之间可基于一碰(OneHop)、NFC、高带宽数字内容保护技术(high bandwidth digital content protection,HDCP)等数据传输协议,来完成剪贴板数据的同步。

在一些实施例中,手机100可以利用共享密钥对剪贴板数据二次加密后传输给平板110。平板110在接收到二次加密后的剪贴板数据后,可以利用共享密钥来解密得到剪贴板数据(如第二数据),并存入剪贴板中,从而提高数据传输的安全性。应理解,利用共享密钥解密得到的剪贴板数据(如第二数据)依然是密文数据。

(4)平板110对剪贴板数据(如第二数据)解密并显示。请参见图9A,在平板110中,流程(4)可以包括:

S900、第二APP接收用户的第二操作。

其中,第二APP可以是平板110中安装的APP中的一个。如第二APP可以是聊天、购物等APP。应注意,第二APP和第一APP可以是不同的APP,例如,第二APP可以是聊天APP,第一APP可以是备忘录APP。或者,第二APP和第一APP可以是相同的APP,例如,第二APP和第一APP均为聊天APP。

其中,第二操作用于触发第二APP读取剪贴板,如第二操作为粘贴操作。在一种具体的实现方式中,第二APP可接收用户对文本输入框的长按操作。响应于长按操作,第二APP可显示包括粘贴选项的快捷菜单。第二操作可以是用户对粘贴选项的选择操作(如点击操作)。示例性的,以第二APP是图9B中的(a)所示的聊天APP为例,聊天APP响应于用户对输入框的长按操作,可显示图9B中的(a)所示的快捷菜单920,该快捷菜单中包括粘贴选项和搜一搜选项。如图9B中的(b)所示,第二操作可以是用户对快捷菜单920中粘贴选项的点击操作。在另一种具体的实现方式中,第二操作可以是在激活输入框后,用户按下第二预设快捷键组合的操作。例如,第二预设快捷键组合是“Ctrl”+“v”。

S901、第二APP响应于第二操作,向剪贴板模块(第二剪贴板模块)请求读取剪贴板中的数据。

其中,可以将请求读取剪贴板中的数据的请求称为第三请求。

实际中,除上述S900所述的用户的第二操作外,用户点击应用图标启动APP,或者APP在运行过程中,均可能会触发读取剪贴板。需要说明的是,本申请实施例中,除上述第二操作外、其他触发读取剪贴板的场景中,剪贴板模块均是直接将剪贴板中暂存的密文数据(如第二数据)反馈给相应的APP。这些场景下,APP获取的剪贴板数据是加密的数据,即无法获取到明文数据。从而可以避免剪贴板中的隐私泄露。

并且,本申请实施例中,仅针对因上述第二操作触发读取剪贴板的场景,才会对剪贴板中的数据解密后反馈给APP。具体过程可参见如下S902及其后续步骤。

S902、剪贴板模块向剪贴板加密引擎(第二加密引擎)请求解密第二数据。

其中,可以将请求解密第二数据的请求记为第四请求。并且,解密第二数据的请求中携带有第二数据。

S903、剪贴板加密引擎向系统密钥管理(第二密钥管理模块)请求获取解密密钥。

其中,解密密钥用于对第二数据进行解密处理。

S904、系统密钥管理从账号服务中获取平板110的用户账号。

本申请实施例中,手机100和平板110处于同一隐私保护系统,两者都登录有相同的用户账号。如都登录有相同的荣耀账号。

S905、系统密钥管理调用预设加密算法,根据预设加密算法和用户账号生成解密密钥。

平板110的用户账号与手机100的用户账号相同,并且都采用相同的加密算法,则在平板110中,系统密钥管理采用平板110的用户账号和预设加密算法生成的解密密钥,和在手机100中,系统管理密钥采用手机100的用户账号和预设加密算法生成的加密密钥相同。

S906、系统密钥管理向剪贴板加密引擎发送解密密钥。

S907、剪贴板解密引擎利用解密密钥,对第二数据解密,生成第一数据。

由于对第一数据加密得到第二数据时,采用的加密算法是对称加密算法,则在对第二数据解密得到第一数据的过程中,仅需采用与加密密钥相同的解密密钥,以及采用该对称加密算法的逆算法,即可成功解密。同时,基于前文说明可知,平板110中生成的解密密钥和手机100中生成的加密密钥相同,因此可以利用解密密钥,对第二数据成功解密。应理解,对第二数据解密后得到的第一数据则是明文数据。

S908、剪贴板解密引擎向剪贴板模块发送第一数据。

S909、剪贴板模块存储第一数据。

也就是说,剪贴板模块将其暂存的密文数据(如第二数据)替换为明文数据(如第一数据)。示例性的,如图9D所示,在解密前,剪贴板缓冲器中存储的是密文数据“1010101010101010101010101111111111111111”,解密后,剪贴板缓冲器中存储的是明文数据“13511111111”。

S910、剪贴板模块向第二APP返回第一数据。

本申请实施例中,与用户点击应用图标启动APP,或者APP在运行过程中,主动触发读取剪贴板的场景不同的是:在由用户的第二操作触发读取剪贴板的场景中,即用户主动请求读取剪贴板的场景中,剪贴板模块向第二APP返回的是明文数据。从而可以在不泄露剪贴板的隐私数据的情况下,方便用户快速获取所需的明文数据。

S911、第二APP在文本输入框中显示第一数据。

示例性的,以第二APP是图9B中的(b)所示的聊天APP,第一数据是文本“13511111111”为例,该聊天APP响应于用户对图9B中的(b)所示的快捷菜单920中粘贴选项的点击操作,可在图9B中的(c)中的文本输入框中显示文本“13511111111”。

采用上述流程(4),在将手机100的剪贴板数据同步到平板110后,在平板110中,仅针对用户主动请求读取剪贴板的场景,如第二操作触发读取剪贴板的场景,基于用户账号和预设加密算法来生成解密密钥。由于平板110的用户账号和手机100的用户账号相同,则平板110可以生成与解密密钥相同的解密密钥。后续利用该解密密钥可以成功对剪贴板中的数据进行解密,并将解密后的明文数据提供给前端显示。如此,可以跨设备,针对用户主动请求读取剪贴板的场景显示明文数据。从而可以跨设备实现剪贴板数据的隐私保护。

在前述流程(4)中,在用户主动请求读取剪贴板前,剪贴板中的数据是密文数据(如第二数据),在用户主动请求读取剪贴板后,则可以对剪贴板中的数据解密得到明文数据(如第一数据)。在一些实施例中,为了提示平板110响应于用户主动请求读取剪贴板的操作(如第二操作),可以对剪贴板中的数据解密,流程(4)还包括:第二APP在接收到用户输入的第二操作之前,显示第二标识。第二标识用于指示剪贴板中存储的是密文数据。如图9C中的(a)所示,在一种具体的实现方式中,用户输入第二操作之前是指:用户长按文本输入框,显示包括粘贴选项的快捷菜单(如快捷菜单920)之后,且用户选择粘贴选项之前。第二标识可以是图9C中的(a)所示的锁关闭的图标(即虚线框中的图标)。以及,第二APP在接收到用户的第二操作之后的预设时间(如100毫秒)内,显示第一标识(也可以称为第二提示信息)。第一标识用于指示第二操作可触发解密第二数据,或者可指示已经解密第二数据。如图9C中的(b)所示,在一种具体的实现方式中,用户输入第二操作之后的预设时间是指:第二APP检测到用户对快捷菜单(如快捷菜单920)中的粘贴选项的选择操作时起,至第二APP显示第一数据之间的部分或者全部时间。第二标识可以是图9C中的(b)所示的锁开启的图标(即虚线框中的图标)。

为了便于对跨设备剪贴板数据同步的场景中,剪贴板数据的隐私保护(即上述流程(2)-流程(4))的具体实现和效果的理解,下面以一个完整的示例来进行说明。

请参见图10,在手机100中,用户长按触屏可以触发显示剪贴板控件(如复制选项),而后用户点击剪贴板控件(如复制选项)即可触发写入数据至剪贴板,即触发流程(2),从而触发加密。经过流程(2),剪贴板模块可以将明文数据加密为密文数据后暂存到剪贴板模块中。在完成加密存储后,经过流程(3),手机100可将剪贴板数据同步给绑定有同样的用户账号的平板110。平板110在接收到来自手机100的剪贴板数据后,用户长按APP中的文本输入框可触发显示剪贴板控件(如粘贴选项),而后用户点击剪贴板控件(如粘贴选项)可以触发读取剪贴板,即触发流程(4),从而触发解密。经过流程(4),剪贴板模块可以将剪贴板中的密文数据解密为明文数据并返回给前段显示。从而可以在绑定有相同的用户账号的电子设备中,仅针对用户主动请求读取剪贴板的情况,对剪贴板中的密文数据解密并显示。如此,可以跨设备实现剪贴板数据的隐私保护。也就是说,在共享剪贴板数据的同时,可以保护剪贴板数据的隐私。

(5)平板110对解密后的内容(如第一数据)再次加密后写入剪贴板。请参见图11,在平板110中,流程(5)可以包括:

S1101、第二APP在显示第一数据后,向剪贴板模块返回显示成功的结果。

示例性的,以第二APP是图9B中的(c)所示的聊天APP,第一数据是图9B中的(c)所示的文本输入框中的文本“13511111111”为例,聊天APP在显示文本“13511111111”,可以向剪贴板模块返回结果1,用于指示成功显示文本“13511111111”。

S1102、剪贴板模块响应于接收到显示成功的结果,请求加密第一数据。

流程(5)与流程(2)的主要区别在于:流程(2)中,由第一APP响应于用户对第一数据的第一操作,向剪贴板模块发送复制第一数据的请求,从而触发对第一数据加密。而在流程(5)中,由第二APP在显示第一数据后,向剪贴板模块返回显示结果来触发对第一数据加密。如此,在对剪贴板中数据解密并用于前端(如第二APP)显示后,可以及时触发再次对解密后的数据加密,以进一步提高剪贴板数据的安全性。

如图11所示,流程(5)还包括S1103-1109,S1103-S1109的实现原理和过程,与流程(2)中S703-S709的实现原理和过程类似,具体可参见流程(2)中S703-S709的说明,此处不再赘述。唯一不同的是,流程(5)是在平板110中实现,流程(2)是在手机100中实现。

同样的,在将第二数据存储至第二设备的剪贴板后,平板110也可以显示第二标识(也可以称为第三提示信息),已提示已经将数据加密后存入剪贴板中。

采用上述流程(5),在第二APP成功显示解密后的第一数据后,可以再次触发对第一数据加密,使得剪贴板中暂存的数据再次恢复到加密的状态。从而有利于剪贴板数据的隐私保护。

另外,需要说明的是,前述流程(4)和流程(5),主要针对跨设备的场景进行了说明。实际中,在任一设备(如手机100)中对明文数据加密并暂存到剪贴板模块后,在该设备(如手机100)中,也仅响应于用户的第二操作,才可以对剪贴板中的密文数据解密得到明文数据,而后在前端显示。也就是说,在单个电子设备内部,也仅在用户主动请求读取剪贴板的情况下,才会对剪贴板的数据进行解密并显示。从而可以在单设备中实现剪贴板数据的隐私保护。

因为隐私保护系统中包括如图3所示的软件结构的电子设备,如手机100、平板110等,所以隐私保护系统可以执行本申请实施例的方法。下文实施例中,以图2中的(a)所示的隐私保护系统中的手机100和平板110为执行主体来说明本申请实施例的方法。

请参见图12,本申请实施例的方法可以包括:

S1201、手机100和平板110建立可信链接。

在一些实施例中,在建立可信链接后,手机100和平板110还可以协商用于数据同步的共享密钥。

应注意,在建立起可信链接之后,手机100和平板110可基于该可信链接多次完成剪贴板数据同步。也就是说,无需在每次数据同步前建立可信链接。

S1202、手机100接收用户对第一数据的第一操作,第一操作用于触发手机100复制或剪切第一数据。其中,第一数据是明文数据。

例如,第一操作可以是用户在选中第一数据后,点击复制或者剪切选项的操作。又例如,第一操作可以是用户在选中第一数据后,按下“Ctrl”+“c”或者“Ctrl”+“x”组合键的操作。

S1203、手机100响应于第一操作,根据手机100的用户账号和预设加密算法生成加密密钥。

例如,预设加密算法是HASH算法,用户账号是12345678,则加密密钥可以是12345678的HASH值。

S1204、手机100利用加密密钥加密第一数据,得到第二数据,将第二数据存入剪贴板中。其中,第二数据是密文数据。

本申请实施例中,将明文数据加密后存入剪贴板中,则APP在启动时或者运行过程中,主动读取剪贴板时,也只能读取到密文数据。从而可以保护剪贴板数据中的用户隐私。

S1205、手机100基于可信链接,将手机100的剪贴板中的第二数据同步给平板110。

S1206、平板110接收用户的第二操作,第二操作用于触发平板110读取剪贴板。

例如,第二操作可以是用户在长按文本输入框后,点击粘贴选项的操作。又例如,第二操作可以是用户在激活文本输入框后,按下“Ctrl”+“v”组合键的操作。

S1207、平板110响应于第二操作,根据平板110的用户账号和预设加密算法生成解密密钥。其中,解密密钥与加密密钥相同。

平板110的用户账号和手机100的用户账号相同,并且都采用相同的预设加密算法,则平板110生成的解密密钥,与手机100生成的加密密钥相同。

S1208、平板110利用解密密钥解密第二数据,得到第一数据。

本申请实施例中,解密密钥和加密密钥相同,则平板110可以对剪贴板中的密文数据成功解密。从而可以实现剪贴板中的密文数据跨设备使用。

S1209、平板110在当前界面的文本输入框中显示第一数据。

在一些实施例中,在显示第一数据后,还包括:

S1210、平板110利用解密密钥加密第一数据,得到第二数据,将第二数据存入剪贴板中。

本实施例中,在显示解密后的明文数据后,平板110可以及时对解密后得到的明文数据再次加密并存入剪贴板中,以避免解密后导致隐私泄露。从而可以进一步提高剪贴板数据的安全性。

本申请另一些实施例提供了一种电子设备,该电子设备可以为上述实施例中的第一设备(如手机100)。该电子设备可以包括:上述显示屏(如触摸屏)、存储器和一个或多个处理器。该显示屏、存储器和处理器耦合。该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,电子设备可执行上述方法实施例中第一设备执行的各个功能或者步骤。

本申请另一些实施例提供了一种电子设备,该电子设备可以为上述实施例中的第二设备(如平板110)。该电子设备可以包括:上述显示屏(如触摸屏)、存储器和一个或多个处理器。该显示屏、存储器和处理器耦合。该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,电子设备可执行上述方法实施例中第二设备执行的各个功能或者步骤。

本申请实施例还提供一种芯片系统,如图13所示,该芯片系统1300包括至少一个处理器1301和至少一个接口电路1302。处理器1301和接口电路1302可通过线路互联。例如,接口电路1302可用于从其它装置(例如电子设备的存储器)接收信号。又例如,接口电路1302可用于向其它装置(例如处理器1301)发送信号。示例性的,接口电路1302可读取存储器中存储的指令,并将该指令发送给处理器1301。当所述指令被处理器1301执行时,可使得电子设备执行上述实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。

本申请实施例还提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在上述第一设备(如手机100)上运行时,使得该第一设备执行上述方法实施例中第一设备执行的各个功能或者步骤。或者,当所述计算机指令在上述第二设备(如平板110)上运行时,使得该第二设备执行上述方法实施例中第二设备执行的各个功能或者步骤。

本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中第一设备执行的各个功能或者步骤,或者,使得所述计算机执行上述方法实施例中第二设备执行的各个功能或者步骤。

通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

相关技术
  • 一种基于隐私数据保护的智能网联汽车数据训练方法、电子设备及计算机可读存储介质
  • 一种基于剪贴板的数据操作方法、装置及电子设备
技术分类

06120116087290