基于区块链的图片处理方法及装置
技术领域
本申请涉及区块链技术领域,尤其涉及一种基于区块链的图片处理方法及装置。
背景技术
随着计算机和互联网技术的快速发展,人们获取各种信息变得越来越便利。但随之而来的,也为未经作者同意、随意盗取、传播他人的创作内容提供了极大的便利。例如,人们随意盗取某个网站上用户原创的图片、从某个网站上对图片进行截屏或者对正在展示的图片进行拍照等,从而导致用户的图片版权被侵犯。
因此,有必要提出一种可靠方案,以实现对用户创作的图片的版权保护。
发明内容
本说明书实施例的目的是提供一种基于区块链的图片处理方法及装置,每次在通过终端设备展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息更新目标图片的像素点阵中所存在的历史标识信息,使得目标图片中携带有版权所有者信息,后续在发生图片侵权事件时,便于进行版权保护;并且,在每次展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息对像素点阵中的历史标识信息进行更新,这样使得嵌入在像素点阵中的标识信息都是基于最近一次展示时的相关信息所生成的,从而在发生截屏攻击或者拍照攻击时,可以基于目标图片中所携带的环境信息进行版权追踪,从而实现目标图片的版权保护;另外,在本说明书实施例中,在区块链中对目标图片的相关信息进行加密,利用了区块链的不可篡改的属性,可实现图片版权的唯一追踪,从而进一步保障了图片的版权安全性。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供了一种基于区块链的图片处理方法,包括:
在通过终端设备展示目标图片时,获取所述目标图片的相关信息;其中,所述相关信息包括所述目标图片的版权所有者信息和当前的环境信息;所述环境信息包括以下信息中的至少一种:时间信息、地理位置信息和所述终端设备信息;
将所述相关信息发布至区块链,以由所述区块链中的节点设备对所述相关信息进行加密处理,得到对应的密文信息;
从所述区块链获取所述密文信息;
基于所述密文信息更新所述目标图片的像素点阵中所存在的历史标识信息;其中,所述历史标识信息基于所述目标图片在前一次被展示时的相关信息所确定。
本说明书实施例还提供了一种基于区块链的图片处理装置,包括:
第一获取模块,用于在通过终端设备展示目标图片时,获取所述目标图片的相关信息;其中,所述相关信息包括所述目标图片的版权所有者信息和当前的环境信息;所述环境信息包括以下信息中的至少一种:时间信息、地理位置信息和所述终端设备信息;
发布模块,用于将所述相关信息发布至区块链,以由所述区块链中的节点设备对所述相关信息进行加密处理,得到对应的密文信息;
第二获取模块,用于从所述区块链获取所述密文信息;
更新模块,用于基于所述密文信息更新所述目标图片的像素点阵中所存在的历史标识信息;其中,所述历史标识信息基于所述目标图片在前一次被展示时的相关信息所确定。
本说明书实施例还提供了一种基于区块链的图片处理设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
在通过终端设备展示目标图片时,获取所述目标图片的相关信息;其中,所述相关信息包括所述目标图片的版权所有者信息和当前的环境信息;所述环境信息包括以下信息中的至少一种:时间信息、地理位置信息和所述终端设备信息;
将所述相关信息发布至区块链,以由所述区块链中的节点设备对所述相关信息进行加密处理,得到对应的密文信息;
从所述区块链获取所述密文信息;
基于所述密文信息更新所述目标图片的像素点阵中所存在的历史标识信息;其中,所述历史标识信息基于所述目标图片在前一次被展示时的相关信息所确定。
本说明书实施例还提供了一种存储介质,用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:
在通过终端设备展示目标图片时,获取所述目标图片的相关信息;其中,所述相关信息包括所述目标图片的版权所有者信息和当前的环境信息;所述环境信息包括以下信息中的至少一种:时间信息、地理位置信息和所述终端设备信息;
将所述相关信息发布至区块链,以由所述区块链中的节点设备对所述相关信息进行加密处理,得到对应的密文信息;
从所述区块链获取所述密文信息;
基于所述密文信息更新所述目标图片的像素点阵中所存在的历史标识信息;其中,所述历史标识信息基于所述目标图片在前一次被展示时的相关信息所确定。
本实施例中的技术方案,每次在通过终端设备展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息更新目标图片的像素点阵中所存在的历史标识信息,使得目标图片中携带有版权所有者信息,后续在发生图片侵权事件时,便于进行版权保护;并且,在每次展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息对像素点阵中的历史标识信息进行更新,这样使得嵌入在像素点阵中的标识信息都是基于最近一次展示时的相关信息所生成的,从而在发生截屏攻击或者拍照攻击时,可以基于目标图片中所携带的环境信息进行版权追踪,从而实现目标图片的版权保护;另外,在本说明书实施例中,在区块链中对目标图片的相关信息进行加密,利用了区块链的不可篡改的属性,可实现图片版权的唯一追踪,从而进一步保障了图片的版权安全性。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之一;
图2为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之二;
图3(a)为本说明书实施例提供的基于区块链的图片处理方法中,更新前的目标图片的像素点阵的示意图;
图3(b)为本说明书实施例提供的基于区块链的图片处理方法中,更新后的目标图片的像素点阵的示意图;
图4为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之三;
图5(a)为本说明书实施例提供的基于区块链的图片处理方法中,发布前的目标图片的像素点阵的示意图;
图5(b)为本说明书实施例提供的基于区块链的图片处理方法中,在发布前的目标图片的像素点阵中***目标图片的相关信息后的像素点阵示意图之一;
图5(c)为本说明书实施例提供的基于区块链的图片处理方法中,将发布前的目标图片的像素点阵划分为多个像素区域的示意图;
图5(d)为本说明书实施例提供的基于区块链的图片处理方法中,在发布前的目标图片的像素点阵中***目标图片的相关信息后的像素点阵示意图之二;
图5(e)为本说明书实施例提供的基于区块链的图片处理方法中,在发布前的目标图片的像素点阵中***目标图片的相关信息后的像素点阵示意图之三;
图6为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之四;
图7为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之五;
图8为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之六;
图9为本说明书实施例提供的基于区块链的图片处理装置的模块组成示意图;
图10为本说明书实施例提供的基于区块链的图片处理设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本说明书实施例提供了一种基于区块链的图片处理方法、装置、设备及存储介质,在每次通过终端设备展示目标图片时,都会基于图片的版权所有者信息和当前的环境信息对图片的像素点阵中存在的历史标识信息进行更新,从而便于进行图片的版权保护。
本说明书实施例提供的基于区块链的图片处理方法,可以应用于手机、平板电脑、计算机等终端设备,也可以应用于服务器。即本说明书实施例提供的基于区块链的图片处理方法的执行主体可以为终端设备或者服务器,具体的,可以为安装在终端设备或者服务器上的基于区块链的图片处理装置。
当然,在某些应用场景下,也可以通过服务器和终端设备的交互来实现本说明书实施例提供的方法,即该方法中的某些步骤可以通过终端设备执行,某些步骤通过服务器执行,后续将会通过具体实施例进行说明。
图1为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之一,图1所示的方法至少包括如下步骤:
步骤102,在通过终端设备展示目标图片时,获取目标图片的相关信息;其中,上述相关信息包括目标图片的版权所有者信息和当前的环境信息;该环境信息包括以下信息中的至少一种:时间信息、地理位置信息和终端设备信息。
其中,上述终端设备可以为手机、平板电脑、计算机等智能设备。
通过终端设备所展示的目标图片,可以是存储在终端设备上的图片等离线环境下的图片、也可以是用户所浏览的网站上的图片等在线环境下的图片。在具体实施时,若是上述目标图片为离线环境下的图片,则本说明书实施例提供的方法的执行主体则为终端设备,若是上述目标图片为在线环境下的图片,则本说明书实施例提供的方法的执行主体可以为服务器、也可以为终端设备,或者还可以为终端设备和服务器,即通过终端设备和服务器之间的交互共同执行。
在本说明书实施例中,上述版权所有者可以为目标图片的创作者,也可以为目标图片的授权使用者或者拥有者等等。
上述版权所有者信息至少包括版权所有者的姓名和版权所有者的身份证号;当然,在具体实施时,还可以加入版权所有者的住址信息、性别、年龄、职业等信息,上述版权所有者信息只要包含可以唯一识别版权所有者的信息即可,本说明书实施例并不对上述版权所有者信息中所包含的具体信息进行限定。
在本说明书实施例中,上述环境信息可以包括时间信息、地理位置信息和终端设备信息中的任意一种、任意两种和三种。其中,上述地理位置信息可以为展示目标图片时,终端设备所定位出的当前所处的地理位置信息;上述时间信息则为展示目标图片的时间;上述终端设备信息则为可以展示该目标图片的终端设备的标识信息,可以包括终端设备的媒体访问控制(Media Access Control,MAC)地址和/或互连网协议(Internet Protocol,IP)地址。在具体实施时,上述终端设备信息可以为终端设备的MAC地址,也可以为终端设备的IP地址,或者同时包括MAC地址和IP地址。
步骤104,将上述相关信息发布至区块链,以由区块链中的节点设备对上述相关信息进行加密处理,得到对应的密文信息。
在本说明书实施例中,当获取到目标图片的相关信息后,由于该相关信息中包含有较多的信息,信息的数据量较大,为了实现可以将上述目标图片的相关信息嵌入至目标图片的像素点阵中,可以对上述所获取到的相关信息进行压缩处理。具体的,可以通过加密的方式实现对上述相关信息的压缩处理。
在具体实施时,可以将上述相关信息发布至区块链,通过区块链的节点设备对上述相关信息进行加密处理。通过加密,可以将上述相关信息转换为密文字符串,即实现了对上述相关信息的压缩处理,还提高了上述相关信息的安全性。
其中,在对上述相关信息进行加密处理时,可以采用哈希等加密算法。若是采用哈希算法对上述相关信息进行加密处理,可以理解为对上述相关信息进行哈希转换,从而得到该相关信息所对应的哈希值。当然,也可以采用其他加密算法对上述相关信息进行加密处理,本说明书实施例不再一一列举。
另外,需要说明的是,在本说明书实施例中,在对上述相关信息进行加密处理时,需要将上述相关信息上传至区块链中进行加密,这样利用了区块链的不可篡改性,从而保证了上述相关信息的真实性,在后续出现图片侵权事件时,可以实现对图片版权的唯一追踪。
步骤106,从区块链中获取上述密文信息。
步骤108,基于上述密文信息更新目标图片的像素点阵中所存在的历史标识信息;其中,上述历史标识信息基于目标图片在前一次被展示时的相关信息所确定。
在本说明书实施例中,在每次展示目标图片时,都对目标图片的像素矩阵中当前存在的历史标识信息进行更新处理,这样使得目标图片每被展示一次,都会将当前展示时的相关信息嵌入至像素点阵中,若是在该次展示目标图片时,有人通过截屏或者拍照的方式非法获取目标图片,可以基于目标图片中嵌入的当前的环境信息和版权所有者信息进行版权追踪,从而实现目标图片的版权保护。
在具体实施时,上述步骤108中,基于上述密文信息更新目标图片的像素点阵中所存在的历史标识信息,具体包括如下步骤一和步骤二;
步骤一、对上述密文信息进行编码处理,得到上述密文信息所对应的二进制字符串,作为目标图片当前的标识信息;
步骤二、使用上述标识信息替换历史标识信息。
其中,在上述步骤一中,可以采用现有的编码方式将上述密文信息转换为二进制字符串,即得到一系列由0和1这样的字符所组成的字符串,将该二进制字符串作为目标图片当前的标识信息。
需要说明的是,上述历史标识信息也为二进制字符串,是对目标图片在前一次被展示时的相关信息所对应的密文信息进行编码得到的。
在某些具体实施方式中,每次展示目标图片时,对目标图片的相关信息进行加密时所采用的加密算法可以相同,且对加密后的密文进行编码时所采用的编码方式也可以相同,这样,可以使得当前的标识信息和历史标识信息中所包含的二进制字符的个数相等。
当然,也可以采用不同的加密算法和编码方式进行处理,本说明书实施例并不对此进行限定。
图2为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之二,图2所示的方法,至少包括如下步骤:
步骤202,在通过终端设备展示目标图片时,获取目标图片的相关信息。
其中,上述相关信息包括目标图片的版权所有者信息和当前的环境信息;该环境信息包括以下信息中的至少一种:时间信息、地理位置信息和终端设备信息。
步骤204,将上述相关信息发布至区块链,以由区块链中的节点设备对上述相关信息进行加密处理,得到对应的密文信息。
步骤206,从区块链获取上述密文信息。
步骤208,对上述密文信息进行编码处理,得到该密文信息所对应的二进制字符串,作为目标图片当前的标识信息。
步骤210,使用该标识信息替换目标图片的像素点阵中所存在的历史标识信息。
其中,上述历史标识信息基于目标图片在前一次被展示时的相关信息所确定,且历史标识信息也为二进制字符串。
在具体实施时,上述步骤二中,使用上述标识信息替换历史标识信息,具体包括如下过程:确定历史标识信息中的各个历史二进制字符分别在像素点阵中的位置;使用历史标识信息中的各个二进制字符分别替换上述各位置处的历史二进制字符。
在本说明书实施例中,为了便于确定标识信息中的各二进制字符在像素点阵中的位置信息,在每次更新目标图片的像素点阵中所嵌入的标识信息后,各个二进制字符在像素点阵中的位置信息,以及其所替换的历史二进制字符。
为便于理解,下述将举例说明上述具体替换过程。
例如,在一种具体实施方式中,目标图片的像素点阵中当前存在的历史标识信息为00110,且嵌入该历史标识信息的目标图片的像素点阵如图3(a)所示,且在图3(a)中,使用方框将上述历史标识信息中的各历史二进制字符圈出。若是当前展示目标图片时,基于目标图片当前的相关信息所得到的当前的标识信息为01100,则使用当前的标识信息中的各个二进制字符替换掉图3(a)中的各个历史二进制字符,替换后得到的一种可能的像素点阵如图3(b)所示,即使用当前标识信息中的第一个二进制字符替换历史标识信息中的第一个历史二进制字符,使用当前标识信息中的第二个二进制字符替换历史标识信息中的第二个历史二进制字符,以此类推。
当然,上述图3(a)和图3(b)所对应实施例均为示例性说明,并不构成对本说明书实施例的限定。
另外,需要说明的是,在某些具体实施方式中,可能会存在当前确定出的标识信息中的二进制字符的个数与历史标识信息中的历史二进制字符的个数不相等的情况。例如,可以是当前的标识信息中的二进制字符的个数多于历史标识信息中的历史二进制字符的个数,也可以是当前的标识信息中的二进制字符的个数少于历史标识信息中的历史二进制字符的个数。若是当前确定出的标识信息中的二进制字符的个数多于历史标识信息中的历史二进制字符的个数,在某些位置处,可以使用两个或者三个等多个二进制字符替换一个历史二进制字符;若是当前确定出的标识信息中的二进制字符的个数少于历史标识信息中的历史二进制字符的个数,在某些位置处,可以直接删除该位置处所嵌入的历史二进制字符。
图4为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之三,图4所示的方法至少包括如下步骤:
步骤402,在通过终端设备展示目标图片时,获取目标图片的相关信息。
其中,上述相关信息包括目标图片的版权所有者信息和当前的环境信息;该环境信息包括以下信息中的至少一项:时间信息、地理位置信息和终端设备信息。
步骤404,将上述相关信息发布至区块链,以由区块链中的节点设备对上述相关信息进行加密处理,得到对应的密文信息。
步骤406,从区块链中获取上述密文信息。
步骤408,对上述密文信息进行编码处理,得到该密文信息所对应的二进制字符串,作为目标图片当前的标识信息。
步骤410,确定目标图片的像素点阵中所存在的历史标识信息中的各个历史二进制字符分别在像素点阵中的位置。
步骤412,使用上述标识信息中的各个二进制字符分别替换上述各位置处的历史二进制字符。
另外,在本说明书实施例中,为了在每次更新目标图片的像素点阵中所嵌入的历史标识信息时,便于查看该历史标识信息中的各历史二进制字符的嵌入位置信息,在上述步骤108中,基于密文信息更新上述目标图片的像素点阵中所存在的历史标识信息之后,本说明书实施例提供的方法还包括:
记录对上述像素点阵中的历史标识信息进行更新的更新过程信息,并将该更新过程信息存储至区块链中。
由于在本说明书实施例中,上述历史标识信息以及标识信息均由二进制字符串构成,因此,上述更新过程信息可以包含基于当前的密文信息编码得到的二进制字符串,以及二进制字符串中的各个二进制字符分别替换的哪个位置的历史二进制字符。
另外,在本说明书实施例中,将上述记录的更新过程信息上传至区块链中进行存储,由于区块链具有不可篡改性,因此,保证了上述更新过程信息的真实性和不可篡改性。后续再次展示目标图片时,为了确定出历史二进制字符在像素点阵中的位置信息,可以从区块链中获取该更新过程信息。
在一种具体实施方式中,在执行上述步骤102之前,本说明书实施例提供的方法还可以包括如下步骤:
获取目标图片的版权所有者信息和当前的环境信息;其中,当前的环境信息包括以下信息中的至少一种:当前的时间信息、当前所处的地理位置信息和当前所使用设备信息;基于上述版权所有者信息和当前的环境信息生成目标图片的标识信息,并将该标识信息嵌入目标图片的像素点阵中。
在一种具体实施方式中,可以是目标图片的创作者在完成目标图片的创作后,将目标图片发布之前,在目标图片的像素点阵中嵌入创作者相关信息和当前的环境信息;也可以是在目标图片的拥有者在获取到目标图片后,在目标图片的像素点阵中嵌入该拥有者相关信息和当前的环境信息等等。
其中,在该实施例中所提及到的当前的环境信息可以包括当前的时间信息、当前所处的地理位置信息和当前所使用设备信息中的任意一种、任意两种或者三种。且当前的时间信息则为在对目标图片的像素点阵进行处理时的时间信息,当前的地理位置信息则为在对目标图片的像素点阵进行处理时所处理的地理位置信息,当前所使用设备可以为当前对像素点阵进行处理时所使用的终端设备或服务器,当前所使用设备信息可以为当前所使用设备的标识信息,例如,若是所使用的为终端设备,则可以为该终端设备的MAC地址和/或IP地址等。
下述将详细介绍上述具体实施过程。
在具体实施时,可以在目标图片被发布之前,获取目标图片的版权所有者信息和当前的环境信息,将版权所有者信息和当前的环境信息上传至区块链,由区块中的节点设备对上述版权所有者信息和当前的环境信息进行加密处理,得到版权所有者信息和当前的环境信息所对应的密文信息。然后,从区块链中获取上述密文信息,对该密文信息进行编码处理,得到该密文信息所对应的二进制字符串,按照设定的***规则将该二进制字符串***至目标图片的像素点阵中或者使用该二进制字符串替换目标图片的像素点阵中的冗余点阵。
具体的,上述按照设定的***规则将该二进制字符串***至目标图片的像素点阵中,至少包括如下几种情形:
1)、将上述二进制字符串中的各二进制字符按照设定的字符间隔***目标图片的像素点阵中;
2)、按照设定的划分规则将上述像素点阵划分为多个像素区域,在指定的至少一个像素区域中***上述二进制字符串;
3)、按照设定的划分规则将上述像素点阵划分为多个像素区域,在每个像素区域中***上述二进制字符串中的一部分字符。
下述将一一举例进行说明。
上述情形1)中将二进制字符串中的各二进制字符按照设定的字符间隔***目标图片的像素点阵中,可以从像素点阵的任意位置开始,每间隔设定的字符间隔,如两个、三个像素点,***上述二进制字符串中的一个字符。
例如,在一种具体实施方式中,目标图片所对应的像素点阵为8*10的像素点阵,即该像素点阵中包括8行像素、10列像素,如图5(a)所示,根据目标图片的版权所有者信息和当前的环境信息所得到的二进制字符串为01101110,可以按照从每行像素的第三个像素点开始,每间隔三个像素点***一个二进制字符,将上述二进制字符串***目标图片的像素点阵中,***后得到的像素点阵的示意图如图5(b)所示,且所***的各个二进制字符串为图5(b)中的方框所圈出的像素点。最后,则基于图5(b)所对应的像素点阵生成图片,每次在展示目标图片时,展示的为基于图5(b)所对应的像素点点阵所生成的目标图标,并在每次展示时,基于展示时目标图片的相关信息替换该目标图片的像素点阵中当前存在的二进制字符串。
针对上述情形2),可以将目标图片的像素点阵划分为多个像素区域,将上述二进制字符串***上述某一个或者某几个像素区域中。
例如,继续沿用图5(a)所示的像素点阵,将上述像素点阵划分为四个像素区域,划分后的像素点阵如图5(c)所示,可以在上述四个像素区域中的某个像素区域中***上述二进制字符串,例如,可以在第二个像素区域中***上述二进制字符串,在将上述二进制字符串(01101110)***该像素点阵的第二像素区域中时,可以按照设定的***规则(例如,可以是从每行像素的第二个像素点开始每间隔一个像素点***一个二进制字符)将上述二进制字符串中的各二进制字符***该像素点阵的第二像素区域中,***后所得到的像素点阵的示意图如图5(d)所示。
当然,在本说明书实施例中,还可以将上述二进制字符串进行拆分,将二进制字符串中的二进制字符拆分为多份(所拆分成的份数与划分得到的像素区域的个数相等),然后在每个像素区域中***一份二进制字符。
例如,继续沿用图5(c)所示的像素点阵,将得到的二进制字符串01101110划分为四份(可以平均划分,也可以随机划分),例如,将该二进制字符串中的二进制字符平均划分为四份,分别为01、10、11、10,可以将01***第一像素区域,将10***第二像素区域,将11***第三像素区域,将10***第四像素区域。在每个像素区域中可以采用相同的***规则,也可以采用不同的***规则。在本实施例中,在每个像素区域中,都是从每行像素的第二个像素点开始每间隔一个像素点***一个二进制字符,***后的像素点阵如图5(e)所示。
另外,对于图片而言,一般都会存在一些冗余像素点,因此,在本说明书实施例中,也可以直接使用二进制字符串中的各二进制字符替换目标图片的像素点阵中的冗余像素点。
在具体实施时,若是目标图片的像素点阵中的冗余像素点的个数和二进制字符串中的二进制字符的个数相等,则可以直接使用二进制字符串中的各二进制字符依次替换像素点阵中的冗余像素点即可;若是冗余像素点的个数多与二进制字符串中的二进制字符的个数,则可以选取与二进制字符串中的二进制字符的个数相等数量个冗余像素点,并使用二进制字符串中的各二进制字符分别替换所选取的各个冗余像素点;若是冗余像素点的个数少于二进制字符串中的二进制字符的个数,则可以使用相等数量个二进制字符替换上述容易像素点,剩余的二进制字符则可以按照设定规则***像素点阵中;或者,若是冗余像素点的个数少于二进制字符串中的二进制字符的个数,可以使用两个或者多个二进制字符替换一个冗余像素点。
下述将通过具体实施例介绍本说明书实施例提供的基于区块链的图片处理方法。
在一种具体实施方式中,若是目标图片为存储在终端设备上的目标图片,则在使用终端设备展示目标图片时,可以通过终端设备对目标图片执行上述处理操作。图6为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之四,图6所示的方法,至少包括如下步骤:
步骤602,在通过终端设备展示目标图片时,该终端设备获取目标图片的相关信息。
具体的,上述相关信息包括目标图片的版权所有者信息和当前的环境信息;该环境信息包括当前的展示时间信息、当前所处的地理位置信息和该终端设备信息。
其中,上述版权所有者信息可以从目标图片的属性信息中获取,上述当前的展示时间信息可以为终端设备当前所显示的时间信息,上述当前所处的地理位置信息可以是通过该终端设备所定位出的地理位置信息,即可以从终端设备的定位信息中获取,上述终端设备信息可以为终端设备的MAC地址和/或IP地址信息。
步骤604,终端设备将上述相关信息发布至区块链,以由区块链中的节点设备对该相关信息进行加密处理,得到对应的密文信息。
步骤606,终端设备从区块链获取上述密文信息。
步骤608,终端设备对从区块链中获取的密文信息进行编码处理,得到该密文信息所对应的二进制字符串。
步骤610,终端设备确定目标图片的像素点阵中所嵌入的历史二进制字符串中的各历史二进制字符的位置信息。
其中,在具体实施时,终端设备可以从区块链中读取前一次对目标图片的像素点阵中的历史二进制字符串进行更新的更新过程信息,基于该更新过程信息确定各历史二进制字符在像素点阵中的位置信息。
步骤612,终端设备使用当前得到的二进制字符串中的各二进制字符分别替换各位置处的历史二进制字符。
步骤614,终端设备记录替换目标图片的像素点阵中的各历史二进制字符的过程信息。
步骤616,终端设备将上述记录的过程信息上传至区块链中进行存储。
在另外一种具体实施方式中,若是目标图片为某些网站上所展示的图片,用户浏览网站时通过终端设备对该图片进行展示,则在使用终端设备展示目标图片时,可以通过该网站所对应的服务器对目标图片执行上述处理操作。例如,用户在百度浏览照片,则可以通过百度服务器对该图片执行上述处理操作。图7为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之五,图7所示的方法,至少包括如下步骤:
步骤702,用户在通过终端设备浏览目标图片时,服务器获取该目标图片的相关信息。
其中,上述相关信息包括该目标图片的版权所有者信息和当前的环境信息;当前的环境信息可以包括展示目标图片的时间信息、终端设备所处的地理位置信息和终端设备信息中的任意一种、任意两种或者三种。
在具体实施时,服务器可以从自身获取终端设备展示目标图片时的时间信息,可以从终端设备获取终端设备当前所定位的地理位置信息和终端设备信息。其中,该终端设备信息可以为终端设备的MAC地址和/或IP地址。
步骤704,服务器将上述相关信息发布至区块链,以由区块链中的节点设备对上述相关信息进行加密处理,得到对应的密文信息。
步骤706,服务器从区块链中获取上述密文信息。
步骤708,服务器对上述密文信息进行编码处理,得到上述密文信息所对应的二进制字符串。
步骤710,服务器确定目标图片的像素点阵中所嵌入的历史二进制字符串中的各历史二进制字符的位置信息。
其中,在具体实施时,服务器可以从区块链中读取前一次对目标图片的像素点阵中的历史二进制字符串进行更新的更新过程信息,基于该更新过程信息确定各历史二进制字符在像素点阵中的位置信息。
步骤712,服务器使用当前得到的二进制字符串中的各二进制字符分别替换各位置处的历史二进制字符。
步骤714,服务器记录替换目标图片的像素点阵中的各历史二进制字符的过程信息。
步骤716,服务器将上述记录的过程信息上传至区块链中进行存储。
还例如,在某些具体实施方式中,若是目标图片为存储在终端设备上的图片,用户在使用终端设备浏览该图片时,也可以通过服务器对该图片进行上述处理。图8为本说明书实施例提供的基于区块链的图片处理方法的方法流程图之六,图8所示的方法,至少包括如下步骤:
步骤802,在通过终端设备展示目标图片时,该终端设备获取目标图片的相关信息。
其中,上述相关信息可以包括目标图片的版权所有者信息和当前的环境信息;该环境信息包括当前的展示时间信息、当前所处的地理位置信息和该终端设备信息。
在具体实施时,上述版权所有者信息可以从目标图片的属性信息中获取,上述当前的展示时间信息可以为终端设备当前所显示的时间信息,上述当前所处的地理位置信息可以是通过该终端设备所定位出的地理位置信息,即可以从终端设备的定位信息中获取,上述终端设备信息可以为终端设备的MAC地址和/或IP地址信息。
步骤804,终端设备将所获取的目标图片的相关信息发送给服务器。
步骤806,服务器将该相关信息发送至区块链,以由区块链中的节点设备对该相关信息进行加密处理,得到对应的密文信息。
步骤808,服务器从区块链中获取上述密文信息。
步骤810,服务器对上述密文信息进行编码处理,得到上述密文信息所对应的二进制字符串。
步骤812,服务器确定目标图片的像素点阵中所嵌入的历史二进制字符串中的各历史二进制字符的位置信息。
其中,在具体实施时,服务器可以从区块链中读取前一次对目标图片的像素点阵中的历史二进制字符串进行更新的更新过程信息,基于该更新过程信息确定各历史二进制字符在像素点阵中的位置信息。
步骤814,服务器使用当前得到的二进制字符串中的各二进制字符分别替换各位置处的历史二进制字符。
步骤816,服务器记录替换目标图片的像素点阵中的各历史二进制字符的过程信息,并将记录的该过程信息上传至区块链中进行存储,以及,服务器将替换后得到的像素点阵信息发送给终端设备。
步骤818,终端设备根据接收到的替换后的像素点阵信息更新该目标图片。
在本说明书实施例中,通过服务器和终端设备进行交互的方式实现对目标图片的处理,可以减少终端设备的工作量,降低终端设备的工作负担。
当然,上述只是结合可能的应用场景列举了本说明书实施例提供的基于区块链的图片处理方法的可能的具体实现方式,除此之外,还可以存在其他具体实施方式,例如,针对服务器和终端设备交互的情形的具体实施方式,本说明书不再一一列举。
本说明书实施例提供的基于区块链的图片处理方法,每次在通过终端设备展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息更新目标图片的像素点阵中所存在的历史标识信息,使得目标图片中携带有版权所有者信息,后续在发生图片侵权事件时,便于进行版权保护;并且,在每次展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息对像素点阵中的历史标识信息进行更新,这样使得嵌入在像素点阵中的标识信息都是基于最近一次展示时的相关信息所生成的,从而在发生截屏攻击或者拍照攻击时,可以基于目标图片中所携带的环境信息进行版权追踪,从而实现目标图片的版权保护;另外,在本说明书实施例中,在区块链中对目标图片的相关信息进行加密,利用了区块链的不可篡改的属性,可实现图片版权的唯一追踪,从而进一步保障了图片的版权安全性。
对应于本说明书实施例提供的基于区块链的图片处理方法,基于相同的思路,本说明书实施例还提供了一种基于区块链的图片处理装置,用于执行本说明书实施例提供的上述方法。图9为本说明书实施例提供的基于区块链的图片处理装置的模块组成示意图,图9所示的装置,至少包括如下模块:
第一获取模块902,用于在通过终端设备展示目标图片时,获取目标图片的相关信息;其中,相关信息包括目标图片的版权所有者信息和当前的环境信息;环境信息包括以下信息中的至少一种:时间信息、地理位置信息和终端设备信息;
发布模块904,用于将相关信息发布至区块链,以由区块链中的节点设备对相关信息进行加密处理,得到对应的密文信息;
第二获取模块906,用于从区块链获取密文信息;
更新模块908,用于基于密文信息更新目标图片的像素点阵中所存在的历史标识信息;其中,历史标识信息基于目标图片在前一次被展示时的相关信息所确定。
可选的,上述更新模块908,包括:
编码单元,用于对密文信息进行编码处理,得到密文信息所对应的二进制字符串,作为目标图片当前的标识信息;
替换单元,用于使用标识信息替换历史标识信息。
可选的,上述替换单元,具体用于:
确定历史标识信息中的各个历史二进制字符分别在像素点阵中的位置;使用标识信息中的各个二进制字符分别替换各位置处的历史二进制字符。
可选的,本说明书实施例提供的装置,还包括:
记录模块,用于记录对像素点阵中的历史标识信息进行更新的更新过程信息;
存储模块,用于将更新过程信息存储至区块链中。
可选的,本说明书实施例提供的装置,还包括:
第三获取模块,用于获取目标图片的版权所有者信息和当前的环境信息;其中,当前的环境信息包括以下信息中的至少一种:当前的时间信息、当前所处的地理位置信息和当前所使用设备信息;
生成模块,用于基于版权所有者信息和当前的环境信息生成目标图片的标识信息;
嵌入模块,用于将标识信息嵌入目标图片的像素点阵中。
可选的,版权所有者信息至少包括:版权所有者的姓名和版权所有者的身份证号;
终端设备信息包括终端设备的媒体访问控制MAC地址和/或互联网协议IP地址。
本说明书实施例的基于区块链的图片处理装置还可执行图1-图8中基于区块链的图片处理装置执行的方法,并实现基于区块链的图片处理装置在图1-图8所示实施例的功能,在此不再赘述。
本说明书实施例提供的基于区块链的图片处理装置,每次在通过终端设备展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息更新目标图片的像素点阵中所存在的历史标识信息,使得目标图片中携带有版权所有者信息,后续在发生图片侵权事件时,便于进行版权保护;并且,在每次展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息对像素点阵中的历史标识信息进行更新,这样使得嵌入在像素点阵中的标识信息都是基于最近一次展示时的相关信息所生成的,从而在发生截屏攻击或者拍照攻击时,可以基于目标图片中所携带的环境信息进行版权追踪,从而实现目标图片的版权保护;另外,在本说明书实施例中,在区块链中对目标图片的相关信息进行加密,利用了区块链的不可篡改的属性,可实现图片版权的唯一追踪,从而进一步保障了图片的版权安全性。
进一步地,基于上述图1至图8所示的方法,本说明书实施例还提供了一种基于区块链的图片处理设备,如图10所示。
基于区块链的图片处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器1001和存储器1002,存储器1002中可以存储有一个或一个以上存储应用程序或数据。其中,存储器1002可以是短暂存储或持久存储。存储在存储器1002的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对基于区块链的图片处理设备中的一系列计算机可执行指令信息。更进一步地,处理器1001可以设置为与存储器1002通信,在基于区块链的图片处理设备上执行存储器1002中的一系列计算机可执行指令信息。基于区块链的图片处理设备还可以包括一个或一个以上电源1003,一个或一个以上有线或无线网络接口1004,一个或一个以上输入输出接口1005,一个或一个以上键盘1006等。
在一个具体的实施例中,基于区块链的图片处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对基于区块链的图片处理设备中的一系列计算机可执行指令信息,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令信息:
在通过终端设备展示目标图片时,获取目标图片的相关信息;其中,相关信息包括目标图片的版权所有者信息和当前的环境信息;环境信息包括以下信息中的至少一种:时间信息、地理位置信息和终端设备信息;
将相关信息发布至区块链,以由区块链中的节点设备对相关信息进行加密处理,得到对应的密文信息;
从区块链获取密文信息;
基于密文信息更新目标图片的像素点阵中所存在的历史标识信息;其中,历史标识信息基于目标图片在前一次被展示时的相关信息所确定。
可选的,计算机可执行指令信息在被执行时,基于密文信息更新目标图片的像素点阵中所存在的历史标识信息,包括:
对密文信息进行编码处理,得到密文信息所对应的二进制字符串,作为目标图片当前的标识信息;
使用标识信息替换历史标识信息。
可选的,计算机可执行指令信息在被执行时,使用标识信息替换历史标识信息,包括:
确定历史标识信息中的各个历史二进制字符分别在像素点阵中的位置;
使用标识信息中的各个二进制字符分别替换各位置处的历史二进制字符。
可选的,计算机可执行指令信息在被执行时,基于密文信息更新目标图片的像素点阵中所存在的历史标识信息之后,还可执行如下步骤:
记录对像素点阵中的历史标识信息进行更新的更新过程信息,并将更新过程信息存储至区块链中。
可选的,计算机可执行指令信息在被执行时,在通过终端设备展示目标图片时,获取目标图片的相关信息之前,还可执行如下步骤:
获取目标图片的版权所有者信息和当前的环境信息;其中,当前的环境信息包括以下信息中的至少一种:当前的时间信息、当前所处的地理位置信息和当前所使用设备信息;
基于版权所有者信息和当前的环境信息生成目标图片的标识信息,并将标识信息嵌入目标图片的像素点阵中。
可选的,计算机可执行指令信息在被执行时,版权所有者信息至少包括:版权所有者的姓名和版权所有者的身份证号;
终端设备信息包括终端设备的媒体访问控制MAC地址和/或互联网协议IP地址。
本说明书实施例提供的基于区块链的图片处理设备,每次在通过终端设备展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息更新目标图片的像素点阵中所存在的历史标识信息,使得目标图片中携带有版权所有者信息,后续在发生图片侵权事件时,便于进行版权保护;并且,在每次展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息对像素点阵中的历史标识信息进行更新,这样使得嵌入在像素点阵中的标识信息都是基于最近一次展示时的相关信息所生成的,从而在发生截屏攻击或者拍照攻击时,可以基于目标图片中所携带的环境信息进行版权追踪,从而实现目标图片的版权保护;另外,在本说明书实施例中,在区块链中对目标图片的相关信息进行加密,利用了区块链的不可篡改的属性,可实现图片版权的唯一追踪,从而进一步保障了图片的版权安全性。
进一步地,基于上述图1至图8所示的方法,本说明书实施例还提供了一种存储介质,用于存储计算机可执行指令信息,一种具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令信息在被处理器执行时,能实现以下流程:
在通过终端设备展示目标图片时,获取目标图片的相关信息;其中,相关信息包括目标图片的版权所有者信息和当前的环境信息;环境信息包括以下信息中的至少一种:时间信息、地理位置信息和终端设备信息;
将相关信息发布至区块链,以由区块链中的节点设备对相关信息进行加密处理,得到对应的密文信息;
从区块链获取密文信息;
基于密文信息更新目标图片的像素点阵中所存在的历史标识信息;其中,历史标识信息基于目标图片在前一次被展示时的相关信息所确定。
可选的,该存储介质存储的计算机可执行指令信息在被处理器执行时,基于密文信息更新目标图片的像素点阵中所存在的历史标识信息,包括:
对密文信息进行编码处理,得到密文信息所对应的二进制字符串,作为目标图片当前的标识信息;
使用标识信息替换历史标识信息。
可选的,该存储介质存储的计算机可执行指令信息在被处理器执行时,使用标识信息替换历史标识信息,包括:
确定历史标识信息中的各个历史二进制字符分别在像素点阵中的位置;
使用标识信息中的各个二进制字符分别替换各位置处的历史二进制字符。
可选的,该存储介质存储的计算机可执行指令信息在被处理器执行时,基于密文信息更新目标图片的像素点阵中所存在的历史标识信息之后,还可执行如下步骤:
记录对像素点阵中的历史标识信息进行更新的更新过程信息,并将更新过程信息存储至区块链中。
可选的,该存储介质存储的计算机可执行指令信息在被处理器执行时,在通过终端设备展示目标图片时,获取目标图片的相关信息之前,还可执行如下步骤:
获取目标图片的版权所有者信息和当前的环境信息;其中,当前的环境信息包括以下信息中的至少一种:当前的时间信息、当前所处的地理位置信息和当前所使用设备信息;
基于版权所有者信息和当前的环境信息生成目标图片的标识信息,并将标识信息嵌入目标图片的像素点阵中。
可选的,该存储介质存储的计算机可执行指令信息在被处理器执行时,版权所有者信息至少包括:版权所有者的姓名和版权所有者的身份证号;
终端设备信息包括终端设备的媒体访问控制MAC地址和/或互联网协议IP地址。
本说明书实施例提供的存储介质存储的计算机可执行指令信息在被处理器执行时,每次在通过终端设备展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息更新目标图片的像素点阵中所存在的历史标识信息,使得目标图片中携带有版权所有者信息,后续在发生图片侵权事件时,便于进行版权保护;并且,在每次展示目标图片时,都会基于目标图片的版权所有者信息和当前的环境信息对像素点阵中的历史标识信息进行更新,这样使得嵌入在像素点阵中的标识信息都是基于最近一次展示时的相关信息所生成的,从而在发生截屏攻击或者拍照攻击时,可以基于目标图片中所携带的环境信息进行版权追踪,从而实现目标图片的版权保护;另外,在本说明书实施例中,在区块链中对目标图片的相关信息进行加密,利用了区块链的不可篡改的属性,可实现图片版权的唯一追踪,从而进一步保障了图片的版权安全性。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字***“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本说明书实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令信息实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令信息到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令信息产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令信息也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令信息产生包括指令信息装置的制造品,该指令信息装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令信息也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令信息提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令信息、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令信息的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。