本发明涉及信息安全领域,具体而言,涉及一种隐私信息保护方法及系统。
背景技术:
随着移动互联网的发展,网络购物正在逐步影响我们的生活,吃、穿、住、用、行大量的通过网上就能解决,物流业的发达让天南地北的商品等都可以快速流通。
电商技术解决了商家与消费者的交易场景。通过网上下单、支付、物流、收货点评等各个环节技术支持,基本解决了消费者在网上购买物品的各种问题。用户的收货地址、电话等隐私信息也存储在电商平台,并流转到物流企业。
在现有技术中,电商、物流等业务平台对于用户信息缺乏有效保护,使得物流企业以及电商平台的相关人员能够轻易查看到用户的隐私信息,造成隐私信息泄露,给用户的正常生活带来严重困扰。
技术实现要素:
有鉴于此,本发明实施例提供一种隐私信息保护方法及系统,以解决上述技术问题。
为实现上述目的,本发明提供如下技术方案:
第一方面,本发明实施例提供一种隐私信息保护方法,应用于隐私信息保护系统,隐私信息保护系统包括业务平台、密钥平台以及客户端,密钥与加密隐私信息分离保存,本次密钥保存在密钥平台,利用本次密钥对用户的隐私信息进行加密生成的本次加密隐私信息保存在业务平台,方法包括:
客户端在接收到隐私信息需求方发起的、读取私信息的授权申请后,通知用户,并在用户认可同意后提交授权信息;
密钥平台生成下次密钥,并将本次密钥以及下次密钥发送至业务平台,业务平台利用本次密钥以及本次加密隐私信息响应隐私信息需求方的需求;
业务平台在响应完成后,利用下次密钥对隐私信息进行加密,生成下次加密隐私信息,并丢弃本次密钥、下次密钥、隐私信息以及本次加密隐私信息,密钥与加密隐私信息仍然分离保存,下次密钥保存在密钥平台,下次加密隐私信息保存在业务平台。
上述方法至少有如下优点:
第一,隐私信息需求方每次需要读取隐私信息时,都必须通过用户的认可同意,从而可以确保用户的隐私信息仅在用户许可的范围内被查看,避免隐私信息的泄露。
第二,密钥与加密隐私信息分离保存,密钥保存在密钥平台,加密隐私信息保存在业务平台,业务平台只有在响应隐私信息需求方的需求时才会从密钥平台获取密钥,并且在响应完需求后,仍然将密钥与加密隐私信息分离保存,密钥保存在密钥平台,加密隐私信息保存在业务平台。从而,任何人从业务平台上都只能获取到加密隐私信息,而无法获取到相应的密钥,要获取相应的密钥只能通过用户授权的方式,避免了隐私信息从业务平台上泄露。
第三,该方法中使用的密钥为一次性密钥,在业务平台上使用完本次密钥以后,就将隐私信息用下次密钥加密,而将本次密钥丢弃,因此即使隐私信息需求方获得了本次密钥,之后想再次读取隐私信息时,由于本次密钥已经过期,因此只能再次向用户提出授权申请,从而避免了用户的隐私信息被隐私需求方随意读取而导致滥用的情况,有效保护了用户的隐私信息的安全。
在第一方面的一种可能的实现方式中,隐私信息保护系统中的区块链节点利用区块链智能合约执行隐私信息保护方法的步骤,并将产生的关键信息上链,以使用户能够通过客户端或者区块链的公开的查询手段查询隐私信息的授权使用记录。
基于区块链自身的特性,智能合约脚本以及上链的关键信息无法被轻易地修改,从而用户可以对这些关键信息进行查询,进而全面了解隐私信息的使用情况,并且及时发现隐私信息在使用过程中存在的安全性问题。同时,上链的关键信息还可以作为隐私信息出现泄漏时进行问题追溯的依据以及法律证据。
在第一方面的一种可能的实现方式中,区块链节点包括业务平台以及密钥平台。
在第一方面的一种可能的实现方式中,隐私信息保护系统还包括客户端服务器,客户端服务器用于对客户端的交互数据进行汇总,并与密钥平台以及业务平台进行数据交互,区块链节点还包括客户端服务器。
在第一方面的一种可能的实现方式中,关键信息包括业务信息、授权相关信息以及密钥相关信息中的至少一种信息。
在第一方面的一种可能的实现方式中,授权相关信息包括授权申请以及授权信息中的至少一种信息;
其中,授权申请包括隐私信息的使用场景以及隐私信息的用途说明中的至少一种信息;
授权信息包括授权的时间、授权的业务以及授权的业务平台中的至少一种信息。
在第一方面的一种可能的实现方式中,密钥信息包括密钥生成日志、密钥获取日志以及密钥标识中的至少一种信息。
在第一方面的一种可能的实现方式中,密钥平台采用如下方式之一部署:部署在独立服务器,与业务平台共享服务器,部署在客户端以及当隐私保护系统还包括客户端服务器时,与客户端服务器共享服务器。
密钥平台的部署方式非常灵活,可以根据实际环境进行部署,扩展了隐私信息保护方法的适用范围。
在第一方面的一种可能的实现方式中,业务平台是指为用户提供业务服务的系统平台。
第二方面,本发明实施例提供一种隐私信息保护系统,包括:业务平台、密钥平台以及客户端,密钥与加密隐私信息分离保存,本次密钥保存在密钥平台,利用本次密钥对用户的隐私信息进行加密生成的本次加密隐私信息保存在业务平台;
客户端用于在接收到隐私信息需求方发起的、读取私信息的授权申请后,通知用户,并在用户认可同意后提交授权信息;
密钥平台用于生成下次密钥,将本次密钥以及下次密钥发送至业务平台,并保存下次密钥;
业务平台用于利用本次密钥以及本次加密隐私信息响应隐私信息需求方的需求,以及用于在响应完成后,利用下次密钥对隐私信息进行加密,生成下次加密隐私信息,丢弃本次密钥、下次密钥、隐私信息以及本次加密隐私信息,并保存下次加密隐私信息,密钥与加密隐私信息仍然分离保存。
在该系统中,采用了隐私信息授权访问、将密钥以及加密隐私信息分离保存以及使用一次性密钥等一系列手段有效保证了用户隐私信息的安全性,避免了隐私信息的泄露和滥用。
为使本发明的上述目的、技术方案和有益效果能更明显易懂,下文特举实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的隐私信息保护系统的第一种结构示意图;
图2示出了本发明实施例提供的隐私信息保护系统的第二种结构示意图;
图3示出了一种可应用于本发明实施例中的电子设备的结构框图;
图4示出了本发明实施例提供的隐私信息保护方法的流程图;
图5示出了本发明实施例提供的隐私信息保护方法的步骤s10至步骤s16的流程图;
图6示出了本发明实施例提供的隐私信息保护方法的步骤s20至步骤s26的流程图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1示出了本发明实施例提供的隐私信息保护系统1的第一种结构示意图。参照图1,隐私信息保护系统1包括业务平台30、密钥平台20以及客户端10,图1中还包括与业务平台30通信连接的隐私信息需求方40。
其中,业务平台30可以是为用户提供业务服务的系统平台,例如,包括但不限于电商平台(如淘宝、京东等)、微信公众号以及物流平台(如顺丰、圆通等)中的任一种平台。上述平台很多都是现有平台,业务平台30可以在这些现有平台的基础上进行构建,降低开发成本,同时这些现有平台已有大量用户,便于推广本发明实施例提供的隐私信息保护方法。在本发明实施例中,业务平台30的功能还包括存储加密隐私信息、隐私信息的加解密以及响应隐私信息需求方40,当然,业务平台30自身也可以作为隐私信息需求方40。业务平台30可以部署于服务器,但不限于此种部署方式。
密钥平台20的主要功能包括生成密钥并提供给业务平台30使用,以及存储密钥。密钥平台20可以部署于独立服务器上,也可以和业务平台30共享服务器或者和客户端10部署在一起,但不限于这些部署方式。
其中,密钥平台20如果部署在客户端10,由于通常只有用户本地能对其进行访问,其安全性较高,但如果用户使用不同的电子设备,其中涉及密钥的同步问题比较复杂,此外计算密钥、存储密钥、关键信息上链等行为也会占用本地资源。密钥平台20如果部署在业务平台30或者独立部署,由于很多用户都可能对其进行访问,其安全性会下降,但不存在密钥同步的问题,也不存在占用本地资源的问题。在实际中可以根据具体的需求选择密钥平台20的部署方式。
客户端10的主要功能包括向业务平台30提供用户的隐私信息、通知用户进行授权以及提交授权信息等,用户和客户端10直接进行人机交互。客户端10可以部署于用户使用的电子设备上,例如台式机、手机、笔记本电脑、平板电脑、智能穿戴设备、车载设备等。客户端软件可以使用现有的浏览器用bs结构实现功能,也可在微信、支付宝等流行的软件嵌入,也可开发成独立部署应用程序。
隐私信息需求方40表示需要对隐私信息进行读取的主体,例如,这个主体可以是业务平台30本身,也可以是通过业务平台30来获得隐私信息的第三方等。
图2示出了本发明实施例提供的隐私信息保护系统1的第二种结构示意图。参照图2,与图1示出的实施方式相比,隐私信息保护系统1还可以包括客户端服务器50,客户端服务器50用于对客户端10的交互数据进行汇总,并与密钥平台20以及业务平台30进行数据交互,例如,将隐私信息需求方40发起的授权申请转发至客户端10,以及将客户端10的反馈的授权信息转发至密钥平台20或业务平台30。在该实施方式中,密钥平台20在部署时还可以和客户端服务器50共享服务器。
可以理解,图1以及图2示出的仅仅是本发明实施例提供的隐私信息保护系统1的两种具体的结构,但并不表示隐私信息保护系统1仅能实现为上述两种结构。在后文中,简便阐述,仍然以图1示出的方式为例阐述隐私信息保护系统1实现的功能。
图3示出了一种可应用于本发明实施例中的电子设备100的结构框图。如图3所示,电子设备100包括存储器102、存储控制器104、处理器106以及网络单元108等。这些组件通过一条或多条通讯总线/信号线110相互通讯。
存储器102可用于存储软件程序以及模块,如本发明实施例中的隐私信息保护方法对应的程序指令,处理器106通过运行存储在存储器102内的软件程序以及模块,从而执行本发明实施例提供的隐私信息保护方法的部分或全部的步骤。
存储器102可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。
处理器106可以是一种集成电路芯片,具有信号的处理能力。上述的处理器106可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、微控制单元(microcontrollerunit,mcu)、网络处理器(networkprocessor,np)或者其他常规处理器;还可以是专用处理器,包括数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuits,asic)、现场可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。
网络单元108用于接收以及发送网络信号,网络信号可以包括无线信号或者有线信号。
可以理解,图3所示的结构仅为示意,电子设备100还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。于本发明实施例中,电子设备100可以是服务器、个人计算机、移动设备、智能穿戴设备、车载设备等能够连接网络并具有运算处理能力的设备。在某些实施方式中,电子设备100还可以不限于物理设备,例如还可以是虚拟机、云服务器等。本发明实施例提供的隐私信息保护系统1在硬件上可以实现为一台或多台上述电子设备100的组合。
图4示出了本发明实施例提供的隐私信息保护方法的流程图。该方法应用与本发明实施例提供的隐私信息保护系统1,在隐私信息保护系统1中,密钥与加密隐私信息分离保存,密钥存储在密钥平台20,加密隐私信息存储在业务平台30。
该隐私信息保护方法的步骤可以多次重复执行,为便于阐述,将其中的一次执行称为本次。在本次执行该方法前,本次密钥保存在密钥平台20,利用本次密钥对用户的隐私信息进行加密生成的本次加密隐私信息保存在业务平台30。最初时,用户的隐私信息可以是由客户端10发送给业务平台30的,当然业务平台30也可能通过其他渠道获得用户的隐私信息。
隐私信息可以表示用户的某些不希望为其他人,或者至少是不希望为无关人士所知的信息,隐私信息一旦被泄漏或者被滥用,很可能影响用户的正常生活。
参照图4,隐私信息保护方法包括:
步骤s1:客户端10在接收到隐私信息需求方40发起的、读取私信息的授权申请后,通知用户,并在用户认可同意后提交授权信息。
隐私信息需求方40在有读取隐私信息的需求时,可以发起授权申请,授权申请通过业务平台30、密钥平台20或者其他渠道发送至客户端10,以使用户获知申请内容。授权申请的内容包括授权认证基本信息,例如需求方身份信息、需求内容等信息,授权申请还可以包括附加信息,例如隐私信息的使用场景以及隐私信息的用途说明中的至少一种信息,用户根据授权申请的内容,可以判断是否要进行授权,如果用户拒绝授权,则后续步骤不会执行,隐私信息需求方40无法读取到隐私信息。如果用户同意授权,客户端10提交授权信息,授权信息可以提交给业务平台30、密钥平台20等。授权信息的内容可以包括授权的时间、授权的业务以及授权的业务平台30中的至少一种信息,如果授权给密钥平台20,还可以包括授权的密钥平台20的信息。
步骤s2:密钥平台20生成下次密钥,并将本次密钥以及下次密钥发送至业务平台30,业务平台30利用本次密钥以及本次加密隐私信息响应隐私信息需求方40的需求。
在用户授权后,密钥平台20生成下次密钥,并读取出之前存储在本地的本次密钥,将两个密钥一起发送给业务平台30。
在某些实施方式中,业务平台30可以利用本次密钥对本次加密隐私信息进行解密,获得隐私信息的明文,并将隐私信息发送给隐私信息需求方40以满足其需求,隐私信息需求方40获得隐私信息后,可以将其用于完成相应的业务。在另一些实施方式中,业务平台30也可以将本次密钥和本次加密隐私信息发送给隐私信息需求方40以满足其需求,隐私信息需求方40获得本次密钥和本次加密隐私信息后,利用本次密钥解密本次加密隐私信息,获得隐私信息的明文,然后将其用于完成相应的业务。
步骤s3:业务平台30在响应完成后,利用下次密钥对隐私信息进行加密,生成下次加密隐私信息,并丢弃本次密钥、下次密钥、隐私信息以及本次加密隐私信息。
如果业务平台30在步骤s2中获得了隐私信息,在响应完隐私信息需求方40的需求后,业务平台30可以利用下次密钥对隐私信息进行加密,生成下次加密隐私信息。如果业务平台30在步骤s2中未获得隐私信息,在响应完隐私信息需求方40的需求后,密钥平台20可以利用本次密钥对本次加密隐私信息进行解密,获得隐私信息,之后再利用下次密钥对隐私信息进行加密,生成下次加密隐私信息。在生成下次加密隐私信息后,业务平台30将本次密钥、下次密钥、隐私信息以及本次加密隐私信息丢弃掉,即不进行保存。
处理完成后,在隐私信息保护系统1中,密钥与加密隐私信息仍然是分离保存的,下次密钥保存在密钥平台20,下次加密隐私信息保存在业务平台30。如果隐私信息需求方40(和本次的隐私信息需求方40不一定相同)下次需要读取隐私信息时,重复执行步骤s1至步骤s3即可。
从而,隐私信息需求方40每次需要读取隐私信息时,都必须发起授权申请并通过用户的认可同意,从而可以确保用户的隐私信息仅在用户许可的范围内被查看,避免隐私信息的泄露。
同时,在上述隐私信息保护系统1中,除了业务平台30响应隐私信息需求方40的时刻,在其他时间,业务平台30上只保存有加密隐私信息,而密钥平台20上只保存有密钥,从而,任何人,特别是业务平台30内部人员,从业务平台30上都只能获取到加密隐私信息,而无法获取到相应的密钥,从而并不能查看隐私信息的内容。要获取相应的密钥只能通过用户授权的方式,避免了隐私信息从业务平台30上泄露,保护了用户的隐私信息的安全。
此外,该方法中使用的密钥为一次性密钥,例如,本次密钥只用来响应隐私信息需求方40本次的需求,响应完需求后,业务平台30重新利用下次密钥加密信息,并且业务平台30上仅保存下次隐私信息,造成本次密钥已经失效,获得本次密钥的隐私信息需求方40或者其他人无法再利用本次密钥去解密下次加密隐私信息,而只能通过发起授权申请的方式尝试获得下次密钥,之前已经阐述过,授权是经过用户本人认可的,其安全性可以保证。这样,就避免了用户的隐私信息被隐私需求方随意读取而导致滥用的情况,进一步提高了隐私信息保护的力度。
进一步的,一次性密钥的生成还可以和用户授权的时间、隐私信息的使用场景、用户的个性化信息等信息关联,使得其更加难以破解,从而可以进一步提高密钥的安全强度,对用户的隐私信息提供更加有力的保护。例如,使用授权的时间戳、授权的业务平台30的id、授权的密钥平台20的id、客户端10的id以及用户预留或授权时输入的信息,进行哈希操作,生成一次性密钥,其安全强度将非常高。
下面通过更具体的实施例介绍该隐私信息保护方法。图5示出了本发明实施例提供的隐私信息保护方法的步骤s10至步骤s16的流程图。这些步骤在上述步骤s1之前执行,即用户通过客户端10将隐私信息提交到业务平台30时的情形。参照图5,该方法包括:
步骤s10:客户端10将隐私信息发送至业务平台30。
例如,用户在网上购物的收货地址、电话等私人信息用户通常只希望为发货方所知,不希望被泄漏给其他人,同时,即使对于发货方,用户通常也只希望其将获得的上述信息用于发货,而不是用于其他方面。上述私人信息即为一种隐私信息,上述发货方即为一种隐私信息需求方40。在这个例子中,业务平台30可以是一个电商平台,用户通过业务平台30购物后,将隐私信息发送至业务平台30并由业务平台30将其提供给隐私信息需求方40使用。
步骤s11:密钥平台20将生成的第一密钥以及第二密钥发送至业务平台30,存储第一密钥以及第二密钥。
在一种实施方式中,业务平台30在接收到隐私信息后,可以向密钥平台20发送使用密钥的使用申请,密钥平台20响应该申请,生成密钥并发送至业务平台30。在另一种实施方式中,也可以由客户端10在发送完隐私信息后通知密钥平台20生成密钥并发送至业务平台30,当然并不限于上述两种实施方式。
密钥被发送至业务平台30后,在密钥平台20本地存储已发送的密钥,这些密钥在后续步骤中会被使用。
根据实际情况,业务平台30响应隐私信息需求方40的读取隐私信息需求至少有两种方式:
第一种,客户端10在发送隐私信息的同时明确了隐私信息授权给隐私信息需求方40使用的时间、用途等内容,如果业务平台30确定在授权时间内可以完成需求响应,则业务平台30不使用第一密钥加密隐私信息,将隐私信息在本地直接以明文存储,在响应完需求后,直接跳转至步骤s15执行。一般适用于较短时间内就能完成隐私信息需求方40的需求响应的情况,认为隐私在短时内明文存储并不会造成安全问题,可以简化流程,加快处理速度。
第二种,客户端10在发送隐私信息的同时明确了隐私信息授权给隐私信息需求方40使用的时间、用途等内容,如果业务平台30确定在授权时间内不能完成需求响应,则需要利用第一密钥加密信息,避免隐私信息在本地长时间以明文存储,即顺序执行步骤12及后续的步骤。一般适用于较长时间内才能完成隐私信息需求方40的需求响应的情况,可以确保信息的安全性。
可以理解的,如果客户端10在发送隐私信息时,并未明确隐私信息授权给隐私信息需求方40使用的时间,业务平台30也可以自行估计响应需求所需的时间,并基于估计结果采取对应的方式,或者业务平台30也可以固定地采用上面的一种方式。
步骤s12:业务平台30利用第一密钥对隐私信息进行加密,生成第一加密隐私信息。
步骤s13:业务平台30利用第一密钥对第一加密隐私信息进行解密,获得隐私信息。
根据上面的阐述,步骤s12与步骤s13之间可能间隔较长的时间,此时为避免隐私信息长期明文存储,隐私信息被加密为第一隐私信息存储于业务平台30上,直至业务平台30需要利用其响应信息需求方40的需求时,业务平台30利用第一密钥对第一加密隐私信息进行解密,获得隐私信息的明文。
步骤s14:业务平台30利用隐私信息响应隐私信息需求方40读取隐私信息的需求。
例如,发货方要发货必然需要用户的收货信息,此时可以由业务平台30将用户的收货信息直接以明文方式发送至发货方,以满足其需求。
步骤t1:隐私信息需求方40获得隐私信息。
例如,发货方读取到用户的收货信息后可以打印快递单,进行发货。隐私信息需求方40的行为实际上不属于本发明实施例提供的方法中的一部分,在这里列出仅仅是为了方便阐述整个处理流程(类似的还有图6中的t2以及t3)。
在具体实施时,步骤s13、s14以及t1还有另一种替代方式,即业务平台30将第一密钥以及第一加密隐私信息发送至隐私信息需求方40,由隐私信息需求方40利用第一密钥对第一加密隐私信息进行解密以获得其需要的隐私信息。同时,在将第一密钥以及第一加密隐私信息发送至隐私信息需求方40后,业务平台30也利用第一密钥对第一加密隐私信息进行解密以获隐私信息,以便执行后续的步骤s15。
步骤s15:业务平台30利用第二密钥对隐私信息进行加密,生成第二加密隐私信息。
在响应完隐私信息需求方40读取隐私信息的需求后,由于此时第一密钥已经提供给私信息需求方40,可以任由第一密钥的持有者进行解密,可能造成隐私信息泄漏。此时需要利用第二密钥重新对隐私信息进行加密,以确保隐私信息的安全性。
执行步骤s15之后,第一密钥虽然被公开,但由于当前隐私信息已经改为由第二密钥进行加密,所以无需担心隐私信息被再次读取,因此,隐私信息需求方40获得的第一密钥可以认为是一次性的密钥,在读取完隐私信息后,如果未专门保存隐私信息的内容或者在其他外部机制的限制下禁止其保存隐私信息的内容,隐私信息需求方40想要再次直接从业务平台30读取隐私信息的内容是不行的,只能通过从用户处获得授权的方式。
步骤s16:业务平台30丢弃第一密钥、第二密钥、隐私信息以及第一加密隐私信息,存储第二加密隐私信息。
在业务平台30上只存储第二加密隐私信息,而对应的第二密钥存储于密钥服务器上,实现了密钥与加密隐私信息的分离保存,从而无论是业务平台30本身或者隐私信息需求方40,都无法直接解密第二加密隐私信息,确保了隐私信息的安全性。
如果某个隐私信息需求方40在首次读取隐私信息后的某个时刻,想要再次读取隐私信息的内容,由于在其本地以及业务平台30上都没有第二密钥,因此只能设法获得用户的授权,使得密钥平台20在授权成功后将第二密钥发送至业务平台30,从而确保每一次对隐私信息的读取都是用户可控的。
例如,收货地址应当在发货方发货时允许其读取一次以生成快递单,之后不再允许发货方随意读取,避免发货方将其用于与发货无关的用途。当然,在某些实际场景中,隐私信息需求方40如果确实需要再次读取隐私信息,例如快递单因故丢失,需要发货方重新获取收货地址以便生成快递单,可以采用用户授权机制,以确保隐私信息在征得用户同意的情况下被有限度地使用。具体可以采用图6中示出的做法。
图6示出了本发明实施例提供的隐私信息保护方法的步骤s20至步骤s26的流程图。参照图6,在步骤s16之后,该方法还可以包括:
步骤t2:隐私信息需求方40发起读取隐私信息的授权申请。
隐私信息需求方40需要再次读取业务平台30上的隐私信息时,生成授权申请,并将授权申请发送至业务平台30。
步骤s20:密钥平台20向客户端10发送授权申请。
密钥平台20在接收到授权申请后,将其转发至客户端10。
在具体实施时,步骤t2以及步骤s20还可以采取其他的实施方式,例如,隐私信息需求方40直接向客户端10发送授权申请,又例如,隐私信息需求方40向业务平台30发送授权申请,业务平台30将授权申请转发至密钥平台20,再由密钥平台20转发至客户端10等。
步骤s21:客户端10对业务平台30进行授权。
客户端10将授权申请的内容通知用户,如果用户认可授权申请内容,即允许隐私信息需求方40再次读取隐私信息,可以向业务平台30提交授权信息,从而完成对业务平台30的授权,执行后续步骤。否则不执行后续步骤,但也可以将授权结果反馈至隐私信息需求方40,告知其授权失败。从而,每次隐私信息被读取之前都要经过用户的授权,可以使用户完全掌握隐私信息的使用情况,避免隐私信息被随意读取并滥用。
在一些其他实施方式中,也可以由密钥平台20获得用户授权,此时客户端10需要将隐私信息提交到密钥平台20。
步骤s22:密钥平台20将第二密钥以及生成的第三密钥发送至业务平台30,存储第三密钥。
在步骤s11中,第二密钥是生成并存储在密钥平台20上,而第三密钥可以在步骤s22中生成并存储在密钥平台20上,以便在后续步骤中使用。
步骤s23:业务平台30利用第二密钥对第二加密隐私信息进行解密,获得隐私信息。
步骤s24:利用隐私信息响应隐私信息需求方40读取隐私信息的需求。
步骤s25:业务平台30利用第三密钥对隐私信息进行加密,生成第三加密隐私信息。
步骤s26:业务平台30丢弃第二密钥、第三密钥、隐私信息以及第二加密隐私信息,存储第三加密隐私信息。
步骤s24至步骤s27和步骤s13至步骤s16是类似的,同时隐私信息需求方40的行为t3和t1类似,只是其中的第一密钥变成了第二密钥,第二密钥变成了第三密钥,和第一密钥类似,第二密钥仍然是一次性的。此处为简单起见,不再进行重复阐述。
每次隐私信息需求方40要读取隐私信息时,都可以向业务平台30发起请求,并执行上述步骤s20至步骤s27,在用户的授权下完成对隐私信息的再次读取。
在本发明实施例的一种实施方式中,隐私信息保护系统1中包括区块链的节点。例如,对于图1示出的系统结构而言,区块链节点可以包括业务平台30以及密钥平台20,对于图2示出的系统结构而言,区块链节点可以包括业务平台30、密钥平台20以及客户端服务器50。密钥平台20上部署有区块链的智能合约脚本,本发明实施例中的方法的部分步骤可以通过智能合约脚本执行,区块链节点将执行这些步骤时产生的关键信息上联,以使用户能够通过客户端10或者区块链的公开的查询手段查询隐私信息的授权使用记录。
关键信息至少可以包括业务信息、授权相关信息以及密钥相关信息中的至少一种信息。
其中,业务信息是指和业务平台30每次提供的具体业务服务相关的信息。授权相关信息可以包括授权申请以及授权信息中的至少一种信息,关于授权申请以及授权信息具体可以包括的内容,在上面已经阐述,不再重复阐述。密钥信息包括密钥生成日志、密钥获取日志以及密钥标识中的至少一种信息,日志的内容具体可以包括密钥生成、获取(即被使用)的时间戳等信息。
关键信息的生成以及上链的时机可以在隐私信息保护方法的各个步骤的关键节点执行之后,例如包括但不限于业务平台30响应完隐私信息需求方40的业务需求后,业务平台30或密钥平台20获得授权后,密钥平台20生成密钥、发送密钥后,业务平台30使用密钥进行加密解密后,密钥平台20丢弃密钥后等时刻。
作为一种可选的实施方式,为减少区块链存储的数据量,在信息上链时可以不必将完整的信息上链,而是通过哈希算法等提取其对应的摘要信息,将摘要信息上链。
基于区块链自身的特性,智能合约脚本以及上链的关键信息无法被轻易地修改,从而任何用户都可以通过上述查询手段对上链的关键信息进行查询,进而全面了解隐私信息的使用情况,并且及时发现隐私信息在使用过程中存在的安全性问题。同时,上链的关键信息还可以作为隐私信息出现泄漏时进行问题追溯的依据以及法律证据。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得计算机设备执行本发明各个实施例所述方法的全部或部分步骤。前述的计算机设备包括:个人计算机、服务器、移动设备、智能穿戴设备、网络设备、虚拟设备等各种具有执行程序代码能力的设备,前述的存储介质包括:u盘、移动硬盘、只读存储器、随机存取存储器、磁碟、磁带或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。