CN113157999A - 基于Filter与知识图谱的鉴权认证方法 - Google Patents

基于Filter与知识图谱的鉴权认证方法 Download PDF

Info

Publication number
CN113157999A
CN113157999A CN202110381764.XA CN202110381764A CN113157999A CN 113157999 A CN113157999 A CN 113157999A CN 202110381764 A CN202110381764 A CN 202110381764A CN 113157999 A CN113157999 A CN 113157999A
Authority
CN
China
Prior art keywords
token
user
filter
server
knowledge graph
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.)
Withdrawn
Application number
CN202110381764.XA
Other languages
English (en)
Inventor
蒋辰洋
傅啸
葛霆锋
袁祎铭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN202110381764.XA priority Critical patent/CN113157999A/zh
Publication of CN113157999A publication Critical patent/CN113157999A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Animal Behavior & Ethology (AREA)
  • Software Systems (AREA)
  • Computer And Data Communications (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于Filter与知识图谱的鉴权认证方法。本发明主要应用于服务端与知识图谱用户之间;客户端对知识图谱用户的信息和时间进行base64编码,并签名生成令牌发放给用户,用户保存访问令牌,并使用token令牌访问接口;服务端对token令牌进行解析验证,并且进行混合参数验证,然后根据token中解析出来的用户ID对用户的权限进行划分;服务端保存用户ID以及该ID在单位时间内的访问次数。本发明对知识图谱接口进行了保护,有效的隔离了无权限账户的使用,同时大大加速复合型参数的检测。

Description

基于Filter与知识图谱的鉴权认证方法
技术领域:
本发明属于网络信息处理技术领域,具体公开了一种基于Filter与知识图谱的鉴权认证方法。
背景技术:
知识图谱***数据庞大,如果没有鉴权功能,移动用户可随意接入和使用知识图谱的接口,数据的安全得不到保障,同时,用户的安全也会受到威胁。因此就需要一个方法来杜绝外来人员随意访问知识图谱的接口,采取用户鉴权的方式来识别出非法用户。用户鉴权,是对试图接入网络的用户进行鉴权,审核其是否有权访问网络。通过用户鉴权可以保护网络,防止非法盗用,保护数据;同时通过拒绝假冒合法客户的“入侵”而保护该网络中的客户。
发明内容:
本发明的目的是针对现有技术的不足,提供一种基于Filter与知识图谱的鉴权认证方法。
本发明解决其技术问题所采用的技术方案如下:
基于Filter与知识图谱的鉴权认证方法,主要应用于服务端与知识图谱用户之间;客户端对知识图谱用户的信息和时间进行base64编码,并签名生成令牌发放给用户,用户保存访问令牌,并使用token令牌访问接口;服务端对token令牌进行解析验证,并且进行混合参数验证,然后根据token中解析出来的用户ID对用户的权限进行划分;服务端保存用户ID以及该ID在单位时间内的访问次数。
进一步的,客户端具体实现如下:
1.1知识图谱用户在输入账号密码成功后,获取服务端生成的token作为访问令牌;
1.2知识图谱用户对token不进行解析,只做保存;
1.3知识图谱用户在使用接口时将token放入请求头中,并传入相应的匹配参数。
进一步的,服务端具体实现如下:
2.1服务端生成token令牌;
所述是Token令牌包括:token头部、token载荷和数字签名;三部分拼接时每部分之间用“.”隔开;且token头部、token载荷均由base64编码;
token头部放置有数字签名的方式;token载荷包括用户ID信息、token过期时间信息和其余自定义所需信息;数字签名是将token头部、token载荷和签发信息进行数字签名加密;
2.2服务端接收用户请求头中的token;然后解析用户请求头中的token,并验证。
进一步的,所述的数字签名加密算法采用RSA非对称加密,对token进行保护,其中RSA算法实现如下:
2.3.1任意选取两个不同的大素数p和q计算乘积n=pq,
Figure BDA0003013288740000021
Figure BDA0003013288740000022
Figure BDA0003013288740000023
合并可得
Figure BDA0003013288740000024
因为n=pq,因此
Figure BDA0003013288740000025
为关于n的函数;
2.3.2任意选取一个大整数e,满足
Figure BDA0003013288740000026
整数e用做加密钥,其中gcd()是对两数求最大公约数;
2.3.3确定的解密钥d,满足
Figure BDA0003013288740000027
Figure BDA0003013288740000028
Figure BDA0003013288740000029
是一个任意的整数;所以,若知道e和
Figure BDA00030132887400000210
则很容易计算出解密钥d;
2.3.4公开整数n和d,秘密保存解密钥d;
2.3.5将明文m(m<n是一个整数)加密成密文c,加密算法为c=E(m)=memodn;
2.3.6将密文c解密为明文m,解密算法为m=D(c)=cdmodn。
进一步的,步骤2.2具体解析验证如下:
①服务端设置有Filter过滤器,过滤器会拦截token并解析token是否有效,当解析出token超过过期时间或者token被修改过,过滤器向用户返回使用异常信息;当验证token有效时,会继续校验用户访问频率,每解析一次token代表用户访问一次接口,此访问信息会被记录在服务端的Redis数据库中,当单位时间访问接口次数超过限额,过滤器向用户返回使用异常信息,所诉的限额预先设置在Filter过滤器中;当单位时间请求次数低于限额时,会对token中的信息进行提取,并放入请求体中,方便此后的接口使用;
②服务器会对根据token中所解析出的用户唯一ID与Redis数据库中所保存的用户信息进行匹配,并且进行权限身份区分,为不同权限的用户提供相应的服务;
③服务器会对复合型参数进行验证,使用LSH原理构造一个hash族,复合型参数经过hash族后,把高维多参数据转换为低纬度少参数据;最终通过AND with 0R原则,让足够相似的数据映射为同一hash值的概率足够高;让不够相似的数据映射为同一hash值的概率足够小;最终如果前端传来的参数和预设的参数映射为同一hash值,则认为匹配成功。
进一步的,所述的AND with OR原则如公式(1)所示,让同一组属性匹配出的hash值全部相同才相同,再让所有组中至少有一组完全相同;其中每个组中有k个数据,一共有l组,k与l是能够控制的值,通过控制k与l来改变概率值;
1-(1-pk)l (1)
对于hash族h1,h2...hk的构造,设有参数x1,x2...xn,有权重w1,w2...wn符合N(0,δ2)正太分布;构造出hash函数族
Figure BDA0003013288740000031
Figure BDA0003013288740000032
其含义为让r长度上的点全映射到同一个点上,我通过控制w和b来构造不同的hash函数从而构成hash函数族。
本发明有益效果:
1.对知识图谱接口进行了保护,有效的隔离了无权限账户的使用。
2.通过对流量的限制,对接口进行了反爬虫保护,防止信息被窃取。
3.用户权限分级,不同用户提供不同服务。
4.对于知识图谱数据庞大的情况,如果遍历匹配进行复合型参数检测极其耗时,本发明能大大加速复合型参数的检测。
综上所述,本发明对于复合型参数验证提供了一种快速检测方式,无需遍历匹配检测,也增加了***接口访问的控制,隔离无权限的用户,无有效token令牌无法访问;并且通过限流收段对知识图谱中大量数据进行了反爬虫保护,防止大量的信息被窃取;并且能对用户权限划分,为不同用户提供相应的接口。
附图说明
图1为本发明流程图。
具体实施方法
下面结合附图和实施例对本发明作进一步说明。
如图1所示,本发明是一种基于Filter与知识图谱的鉴权方法,应用于服务端与知识图谱用户之间,其特征在于,用户保存访问令牌,记作token,用户利用token访问服务端的接口,服务端保存用户ID以及其该ID在单位时间内的访问次数,客户端保存有签发token所用的secret,所述的token由服务端生成并发放给用户。
本发明具体实现步骤如下:
1.对于客户端:
1.1知识图谱用户在输入账号密码成功后,获取服务端生成的token作为访问令牌;
1.2知识图谱用户对token不进行解析,只做保存;
1.3知识图谱用户在使用接口时将token放入请求头中,并传入相应的匹配参数;
2.对于服务端:
2.1服务端生成token令牌;
2.2Token令牌包括:token头部、token载荷和数字签名;三部分拼接时每部分之间用”.”隔开;且token头部、token载荷均由base64编码。
token头部放置有数字签名的方式;token载荷包括用户ID信息、token过期时间信息和其余自定义所需信息;数字签名是将token头部、token载荷和签发信息进行数字签名加密;
所述的数字签名加密算法采用RSA非对称加密,对token进行保护,其中RSA算法实现如下:
2.3.1任意选取两个不同的大素数p和q计算乘积n=pq,
Figure BDA0003013288740000051
Figure BDA0003013288740000052
Figure BDA0003013288740000053
合并可得
Figure BDA0003013288740000054
因为n=pq,因此
Figure BDA0003013288740000055
为关于n的函数。
2.3.2任意选取一个大整数e,满足
Figure BDA0003013288740000056
整数e用做加密钥,其中gcd()是对两数求最大公约数。
2.3.3确定的解密钥d,满足
Figure BDA0003013288740000057
Figure BDA0003013288740000058
Figure BDA0003013288740000059
是一个任意的整数;所以,若知道e和
Figure BDA00030132887400000510
则很容易计算出解密钥d。
2.3.4公开整数n和d,秘密保存解密钥d。
2.3.5将明文m(m<n是一个整数)加密成密文c,加密算法为c=E(m)=memodn。
2.3.6将密文c解密为明文m,解密算法为m=D(c)=cdmodn。
2.4服务端接收用户请求头中的token;
2.4.1服务端解析用户请求头中的token,并验证:
①服务端设置有Filter过滤器,过滤器会拦截token并解析token是否有效,当解析出token超过过期时间时或者token被修改过时,过滤器向用户返回使用异常信息;当验证token有效时,会继续校验用户访问频率,每解析一次token代表用户访问一次接口,此信息会被记录在服务端的Redis数据库中,当单位时间访问接口次数超过限额,过滤器向用户返回使用异常信息,所诉的限额预先设置在Filter过滤器中;当单位时间请求次数低于限额时,会对token中的信息进行提取,并放入请求体中,方便此后的接口使用。
②服务器会对根据token中所解析出的用户唯一ID与Redis数据库中所保存的用户信息进行匹配,并且进行权限身份区分,为不同权限的用户提供相应的服务。
③服务器会对复合型参数进行验证,使用LSH原理(局部敏感哈希),构造一个hash族,复合型参数经过hash族后,把高维多参数据转换为低纬度少参数据。最终通过AND withOR原则,让足够相似的数据,以极高的概率映射为同一hash值;让不够相似的数据,映射为同一hash值概率足够小。最终如果前端传来的参数和预设的参数映射为同一hash值,则认为匹配成功。
所述的AND with OR原则如公式(1)所示,让同一组属性匹配出的hash值全部相同才相同,再让所有组中至少有一组完全相同。其中每个组中有k个数据,一共有l组,k与l是能够控制的值,通过控制k与l来改变概率值。
1-(1-pk)l (1)
对于hash族h1,h2...hk的构造,设有参数x1,x2...xn,有权重w1,w2...wn符合N(0,δ2)正太分布。构造出hash函数族
Figure BDA0003013288740000061
Figure BDA0003013288740000062
其含义为让r长度上的点全映射到同一个点上,我通过控制w和b来构造不同的hash函数从而构成hash函数族。

Claims (6)

1.基于Filter与知识图谱的鉴权认证方法,其特征在于该方法应用于服务端与知识图谱用户之间;客户端对知识图谱用户的信息和时间进行base64编码,并签名生成令牌发放给用户,用户保存访问令牌,并使用token令牌访问接口;服务端对token令牌进行解析验证,并且进行混合参数验证,然后根据token中解析出来的用户ID对用户的权限进行划分;服务端保存用户ID以及该ID在单位时间内的访问次数。
2.根据权利要求1所述的基于Filter与知识图谱的鉴权认证方法,其特征在于客户端具体实现如下:
1.1知识图谱用户在输入账号密码成功后,获取服务端生成的token作为访问令牌;
1.2知识图谱用户对token不进行解析,只做保存;
1.3知识图谱用户在使用接口时将token放入请求头中,并传入相应的匹配参数。
3.根据权利要求1所述的基于Filter与知识图谱的鉴权认证方法,其特征在于服务端具体实现如下:
2.1服务端生成token令牌;
所述是Token令牌包括:token头部、token载荷和数字签名;三部分拼接时每部分之间用“.”隔开;且token头部、token载荷均由base64编码;
token头部放置有数字签名的方式;token载荷包括用户ID信息、token过期时间信息和其余自定义所需信息;数字签名是将token头部、token载荷和签发信息进行数字签名加密;
2.2服务端接收用户请求头中的token;然后解析用户请求头中的token,并验证。
4.根据权利要求3所述的基于Filter与知识图谱的鉴权认证方法,其特征在于所述的数字签名加密算法采用RSA非对称加密,对token进行保护,其中RSA算法实现如下:
2.3.1任意选取两个不同的大素数p和q计算乘积n=pq,
Figure FDA0003013288730000011
Figure FDA0003013288730000021
Figure FDA0003013288730000022
合并可得
Figure FDA0003013288730000023
因为n=pq,因此
Figure FDA0003013288730000024
为关于n的函数;
2.3.2任意选取一个大整数e,满足
Figure FDA0003013288730000025
整数e用做加密钥,其中gcd()是对两数求最大公约数;
2.3.3确定的解密钥d,满足
Figure FDA0003013288730000026
Figure FDA0003013288730000027
Figure FDA0003013288730000028
是一个任意的整数;所以,若知道e和
Figure FDA0003013288730000029
则很容易计算出解密钥d;
2.3.4公开整数n和d,秘密保存解密钥d;
2.3.5将明文m(m<n是一个整数)加密成密文c,加密算法为c=E(m)=memodn;
2.3.6将密文c解密为明文m,解密算法为m=D(c)=cdmodn。
5.根据权利要求3或4所述的基于Filter与知识图谱的鉴权认证方法,其特征在于步骤2.2具体解析验证如下:
①服务端设置有Filter过滤器,过滤器会拦截token并解析token是否有效,当解析出token超过过期时间或者token被修改过,过滤器向用户返回使用异常信息;当验证token有效时,会继续校验用户访问频率,每解析一次token代表用户访问一次接口,此访问信息会被记录在服务端的Redis数据库中,当单位时间访问接口次数超过限额,过滤器向用户返回使用异常信息,所诉的限额预先设置在Filter过滤器中;当单位时间请求次数低于限额时,会对token中的信息进行提取,并放入请求体中,方便此后的接口使用;
②服务器会对根据token中所解析出的用户唯一ID与Redis数据库中所保存的用户信息进行匹配,并且进行权限身份区分,为不同权限的用户提供相应的服务;
③服务器会对复合型参数进行验证,使用LSH原理构造一个hash族,复合型参数经过hash族后,把高维多参数据转换为低纬度少参数据;最终通过AND with OR原则,让足够相似的数据映射为同一hash值的概率足够高;让不够相似的数据映射为同一hash值的概率足够小;最终如果前端传来的参数和预设的参数映射为同一hash值,则认为匹配成功。
6.根据权利要求54所述的基于Filter与知识图谱的鉴权认证方法,其特征在于所述的AND with OR原则如公式(1)所示,让同一组属性匹配出的hash值全部相同才相同,再让所有组中至少有一组完全相同;其中每个组中有k个数据,一共有l组,k与l是能够控制的值,通过控制k与l来改变概率值;
1-(1-pk)l (1)
对于hash族h1,h2...hk的构造,设有参数x1,x2...xn,有权重w1,w2...wn符合N(0,δ2)正太分布;构造出hash函数族
Figure FDA0003013288730000031
Figure FDA0003013288730000032
其含义为让r长度上的点全映射到同一个点上,我通过控制w和b来构造不同的hash函数从而构成hash函数族。
CN202110381764.XA 2021-04-09 2021-04-09 基于Filter与知识图谱的鉴权认证方法 Withdrawn CN113157999A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110381764.XA CN113157999A (zh) 2021-04-09 2021-04-09 基于Filter与知识图谱的鉴权认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110381764.XA CN113157999A (zh) 2021-04-09 2021-04-09 基于Filter与知识图谱的鉴权认证方法

Publications (1)

Publication Number Publication Date
CN113157999A true CN113157999A (zh) 2021-07-23

Family

ID=76888961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110381764.XA Withdrawn CN113157999A (zh) 2021-04-09 2021-04-09 基于Filter与知识图谱的鉴权认证方法

Country Status (1)

Country Link
CN (1) CN113157999A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170374093A1 (en) * 2016-06-28 2017-12-28 Microsoft Technology Licensing, Llc Robust Matching for Identity Screening
CN108471432A (zh) * 2018-07-11 2018-08-31 北京智芯微电子科技有限公司 防止网络应用程序接口被恶意攻击的方法
CN109617907A (zh) * 2019-01-04 2019-04-12 平安科技(深圳)有限公司 认证方法、电子装置及计算机可读存储介质
CN109660546A (zh) * 2018-12-27 2019-04-19 泰华智慧产业集团股份有限公司 基于NetflixZuul的API网关实现鉴权的方法
CN109801192A (zh) * 2018-12-15 2019-05-24 深圳壹账通智能科技有限公司 电子合同签订方法、装置、计算机设备及存储介质
CN110225045A (zh) * 2019-06-18 2019-09-10 平安科技(深圳)有限公司 全链路数据鉴权方法、装置、设备及存储介质
CN111865920A (zh) * 2020-06-18 2020-10-30 多加网络科技(北京)有限公司 一种网关认证和身份鉴权的平台及其方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170374093A1 (en) * 2016-06-28 2017-12-28 Microsoft Technology Licensing, Llc Robust Matching for Identity Screening
CN108471432A (zh) * 2018-07-11 2018-08-31 北京智芯微电子科技有限公司 防止网络应用程序接口被恶意攻击的方法
CN109801192A (zh) * 2018-12-15 2019-05-24 深圳壹账通智能科技有限公司 电子合同签订方法、装置、计算机设备及存储介质
CN109660546A (zh) * 2018-12-27 2019-04-19 泰华智慧产业集团股份有限公司 基于NetflixZuul的API网关实现鉴权的方法
CN109617907A (zh) * 2019-01-04 2019-04-12 平安科技(深圳)有限公司 认证方法、电子装置及计算机可读存储介质
CN110225045A (zh) * 2019-06-18 2019-09-10 平安科技(深圳)有限公司 全链路数据鉴权方法、装置、设备及存储介质
CN111865920A (zh) * 2020-06-18 2020-10-30 多加网络科技(北京)有限公司 一种网关认证和身份鉴权的平台及其方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GUOZIQING506: "LSH(Locality Sensitive Hashing)原理与实现", 《HTTPS://BLOG.CSDN.NET/GUOZIQING506/ARTICLE/DETAILS/53019049》 *
WEIXIN_39867594: "java鉴权_SpringSecurity加密解密以及使用JWT鉴权", 《HTTP://BLOG.CSDN.NET/WEIXIN_39867594/ARTICLE/DETAILS/111170519》 *

Similar Documents

Publication Publication Date Title
CN106529327B9 (zh) 混合云环境下面向加密数据库的数据存取***及方法
CN105103119B (zh) 数据安全服务***
US20080025515A1 (en) Systems and Methods for Digitally-Signed Updates
EP2156354B1 (en) Method and system for preventing impersonation of a computer system user
CN105743638B (zh) 基于b/s架构***客户端授权认证的方法
US7624272B2 (en) Platform information for digital signatures
CA2899027C (en) Data security service
US20090097657A1 (en) Constructive Channel Key
US20030204724A1 (en) Methods for remotely changing a communications password
US20070014399A1 (en) High assurance key management overlay
CN103701787A (zh) 一种基于公开密钥算法实现的用户名口令认证方法
US20190087595A1 (en) Object level encryption system including encryption key management system
CN112182616A (zh) 核心表数据的密码技术安全控制方法及***
CN1447269A (zh) 基于硬件特征的证书认证***和方法
CN1645797A (zh) 在数字版权管理***中使用的优化安全数据传输的方法
CN116743470A (zh) 业务数据加密处理方法及装置
Said et al. A multi-factor authentication-based framework for identity management in cloud applications
CN111526010A (zh) 一种适用于用户身份认证的密钥托管方法
CN115021927B (zh) 一种面向密码机集群的管理员身份管控方法及***
CN113157999A (zh) 基于Filter与知识图谱的鉴权认证方法
Ma et al. Electronic contract ledger system based on blockchain technology
CN112818326A (zh) 一种usb设备权限确定方法、装置、设备和介质
CN115114648A (zh) 一种数据处理方法、装置及电子设备
CN111552940A (zh) 一种基于安全模块的数据传输***及方法
Krishnamoorthy et al. Proposal of HMAC based Protocol for Message Authenication in Kerberos Authentication Protocol

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20210723