一种基于令牌的数据分级脱敏方法技术

技术编号:38105566 阅读:13 留言:0更新日期:2023-07-06 09:27
本发明专利技术公开了一种基于令牌的数据分级脱敏方法,首先在系统正式对用户提供服务之前,初始化与脱敏有关的关键信息,用户向服务器发送数据请求,进行全脱敏操作,然后进行脱敏数据显示得到全脱敏数据,服务器获取客户端提交的分级脱敏请求完成分级脱敏,最后客户端得到分级脱敏数据JSON后,完成分级脱敏和客户端显示。本发明专利技术的方法引入了基于密钥体系的token令牌,在实现分级脱敏的前提下,保证了数据的安全性,在客户端和服务端传输令牌,避免了原始数据的反复查询,只需要对token区进行加密和解密即可实现分级脱敏,保障了系统的性能和效率,实现了针对不同用户权限和级别进行数据分级脱敏的方法,增强了系统的灵活性和便利性。性。性。

【技术实现步骤摘要】
一种基于令牌的数据分级脱敏方法


[0001]本专利技术属于数据保护
,具体涉及一种基于令牌的数据分级脱敏方法。

技术介绍

[0002]随着信息化和数据化的快速发展,人们获取和处理数据的方式和方式变得越来越多样化和复杂化,而其中涉及到的个人隐私和商业机密等敏感数据面临着被滥用和泄露的风险,从而对个人和企业造成潜在的威胁。法律法规和行业标准也对敏感数据的保护提出了更加严格的要求。为了保护敏感数据的隐私,减少数据泄露和滥用的风险,数据脱敏成为了一种重要的技术手段。
[0003]数据脱敏是一种数据保护技术,可以对敏感数据进行保护。数据脱敏一般通过数据加密、数据替换、数据删除等方法解除数据的敏感性,使得数据更安全。数据脱敏可以有效地减少数据泄露风险,在保护敏感数据的同时保证数据的可用性和可处理性,从而适应了当前数据安全和隐私保护的需求。
[0004]数据脱敏过程发生在服务器端接收到客户端请求后,在将敏感数据发送到客户端之前,对数据进行特定的数据转化操作,以保证客户端收到的数据是脱敏以后的结果。脱敏算法一般包括哈希、删除、隐藏、替换等。脱敏范围可以是整个数据项,也可以是数据项的一个部分区域。例如电话号码原始值为13800138000,对中间4位进行隐藏脱敏后值为138****8000。数据脱敏的目的是为了加强数据安全和隐私保护,在实际的应用过程中,对数据脱敏的要求是分级的,也就是希望不同级别和权限的用户的脱敏力度不同。
[0005]当前数据脱敏方法的主要缺陷是脱敏结果单一化和脱敏方向单一化。脱敏结果单一化是指数据一旦脱敏完成,所有客户端查看到数据值是一致的,即使客户端拥有更高的数据权限。如果想要实现按照不同客户端权限进行不同程度的脱敏,(比如某个客户端允许只隐藏2位手机号),则需要比较复杂的逻辑判断过程,实现成本非常高昂;脱敏方向单一化是指脱敏操作是单向的,一旦数据脱敏完成,则无法按照脱敏的逆运算进行还原,这样使得在需要查询原始数据时,必须从数据库中重新加载,这样数据处理的效率大大降低,在数据量较大的场景下,客户端需要等待较长时间才能查询到原始数据。

技术实现思路

[0006]为解决上述技术问题,本专利技术提出了一种基于令牌的数据分级脱敏方法,基于令牌(Token)技术,解决现有数据脱敏方法的缺陷,以灵活方便的方式实现数据的分级脱敏,在保证安全的同时,满足客户对数据敏感性要求。
[0007]本专利技术采用的技术方案为:一种基于令牌的数据分级脱敏方法,具体步骤如下:
[0008]S1、在系统正式对用户提供服务之前,初始化与脱敏有关的关键信息;
[0009]S2、用户向服务器发送数据请求,服务器根据请求的数据源信息获取原始数据,然后从分级脱敏信息表中查询得到与该数据源匹配的全脱敏掩码,按照掩码对应的数据格式对原始数据进行加密脱敏操作,向客户端返回包含全脱敏数据的JSON格式的token数据;
[0010]S3、基于步骤S2进行脱敏数据显示,客户端获得回送的token数据,根据payload区中的splitter和encSize,将全脱敏数据encData中的加密字符替换为encSize个*符号进行显示;
[0011]S4、基于步骤S3中客户端得到的全脱敏数据,进一步获取当前用户的分级脱敏数据,将全脱敏数据的token再次发送到服务端进行处理;
[0012]S5、服务器获取客户端提交的分级脱敏请求,取出token数据,并从用户登录信息中获取用户ID,然后从分级脱敏信息表中查询得到与该用户ID和数据源匹配的分级脱敏掩码,完成分级脱敏;
[0013]S6、客户端得到分级脱敏数据JSON后,按照与步骤S3相同的方法显示出分级脱敏后的数据信息,完成分级脱敏和客户端显示。
[0014]进一步地,所述步骤S1具体如下:
[0015]S11、生成密钥;
[0016]生成密钥用于对原始数据进行加密,进一步生成脱敏数据。
[0017]如果使用对称加密,则只需要生成一个密钥;如果采用非对称加密,则需要生成2个密钥,即加密密钥和解密密钥;密钥保存于服务器端的安全区。
[0018]S12、创建并初始化分级脱敏信息表;
[0019]分级脱敏信息表包括以下字段:数据源、全脱敏掩码、用户ID、用户分级脱敏掩码。各字段释义如下:
[0020](1)数据源:原始数据所在的表名和字段名;
[0021](2)全脱敏掩码:表达全脱敏格式的掩码表示,用#表示原始字符,*表示加密后的字符。掩码长度与原始数据长度相等;
[0022](3)用户ID:需要使用分级脱敏的用户ID,该用户访问数据源中原始数据时,将进行脱敏操作;
[0023](4)用户分级脱敏掩码:该用户的级别对应的脱敏掩码,使用#表示原始字符,*表示加密后的字符;掩码长度与原始数据长度相等。
[0024]进一步地,所述步骤S2具体如下:
[0025]S21、数据分区;
[0026]将原始数据按照脱敏掩码格式进行分区,掩码#对应的为非加密区,*对应的为加密区;其中,加密区长度>0,非加密区的长度≥0。
[0027]S22、数据加密;
[0028]从安全区中取出密钥,对加密区的原始数据区域进行加密操作。如果使用非对称加密,则此处密钥为加密密钥,否则采用对称加密;加密方法可以使用任何已知的安全加密算法,如AES、Blowfish、RSA算法。
[0029]S23、数据拼接;
[0030]将非加密区的原始数据与加后的密文拼接,拼接需要指定某个拼接字符x,要求
[0031][0032]其中,U表示非加密区所有字符集,C表示密文的所有字符集。拼接后形成脱敏数据,形式为:原文x密文x原文。
[0033]S24、回送token;
[0034]完成数据脱敏加密后,在回送到客户端之前,按照JSON格式生成数据脱敏令牌token:
[0035][0036]其中,payload表示载荷区,存放了数据源、全脱敏数据、拼接字符和加密区字符数量信息。签名区signature是使用密钥对payload区进行数字签名的结果。上述JSON数据将被回送到客户端。
[0037]进一步地,所述步骤S4具体如下:
[0038]进行分级脱敏请求,请求格式如下:
[0039][0040][0041]其中,reqType表示当前请求类型为分级脱敏数据,token区表示服务器端回送的令牌数据信息。
[0042]进一步地,所述步骤S5具体如下:
[0043]S51、数据校验;
[0044]服务器对payload区数据进行校验。服务器从安全区取出密钥,使用与步骤S33相
同的数字签名方法对payload区进行签名,并与客户端提交上来的signature区进行比对,如果完全相同,则认为payload区的数据正确,否则丢弃请求数据并返回错误信息。
[0045]S52、解密;...

【技术保护点】

【技术特征摘要】
1.一种基于令牌的数据分级脱敏方法,具体步骤如下:S1、在系统正式对用户提供服务之前,初始化与脱敏有关的关键信息;S2、用户向服务器发送数据请求,服务器根据请求的数据源信息获取原始数据,然后从分级脱敏信息表中查询得到与该数据源匹配的全脱敏掩码,按照掩码对应的数据格式对原始数据进行加密脱敏操作,向客户端返回包含全脱敏数据的JSON格式的token数据;S3、基于步骤S2进行脱敏数据显示,客户端获得回送的token数据,根据payload区中的splitter和encSize,将全脱敏数据encData中的加密字符替换为encSize个*符号进行显示;S4、基于步骤S3中客户端得到的全脱敏数据,进一步获取当前用户的分级脱敏数据,将全脱敏数据的token再次发送到服务端进行处理;S5、服务器获取客户端提交的分级脱敏请求,取出token数据,并从用户登录信息中获取用户ID,然后从分级脱敏信息表中查询得到与该用户ID和数据源匹配的分级脱敏掩码,完成分级脱敏;S6、客户端得到分级脱敏数据JSON后,按照与步骤S3相同的方法显示出分级脱敏后的数据信息,完成分级脱敏和客户端显示。2.根据权利要求1所述的一种基于令牌的数据分级脱敏方法,其特征在于,所述步骤S1具体如下:S11、生成密钥;生成密钥用于对原始数据进行加密,进一步生成脱敏数据;如果使用对称加密,则只需要生成一个密钥;如果采用非对称加密,则需要生成2个密钥,即加密密钥和解密密钥;密钥保存于服务器端的安全区;S12、创建并初始化分级脱敏信息表;分级脱敏信息表包括以下字段:数据源、全脱敏掩码、用户ID、用户分级脱敏掩码;各字段释义如下:(1)数据源:原始数据所在的表名和字段名;(2)全脱敏掩码:表达全脱敏格式的掩码表示,用#表示原始字符,*表示加密后的字符;掩码长度与原始数据长度相等;(3)用户ID:需要使用分级脱敏的用户ID,该用户访问数据源中原始数据时,将进行脱敏操作;(4)用户分级脱敏掩码:该用户的级别对应的脱敏掩码,使用#表示原始字符,*表示加密后的字符;掩码长度与原始数据长度相等。3.根据权利要求1所述的一种基于令牌的数据分级脱敏方法,其特征在于,所述步骤S2具体如下:S21、数据分区;将原始数据按照脱敏掩码格式进行分区,掩码#对应的为非加密...

【专利技术属性】
技术研发人员:唐雪峰陈科
申请(专利权)人:成都康赛信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1