CN111310132A - 一种基于java开发的集群证书认证方法 - Google Patents

一种基于java开发的集群证书认证方法 Download PDF

Info

Publication number
CN111310132A
CN111310132A CN202010110800.4A CN202010110800A CN111310132A CN 111310132 A CN111310132 A CN 111310132A CN 202010110800 A CN202010110800 A CN 202010110800A CN 111310132 A CN111310132 A CN 111310132A
Authority
CN
China
Prior art keywords
cluster
node
authentication method
certificate
java development
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.)
Pending
Application number
CN202010110800.4A
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.)
Shandong ICity Information Technology Co., Ltd.
Original Assignee
Shandong ICity Information Technology Co., Ltd.
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 Shandong ICity Information Technology Co., Ltd. filed Critical Shandong ICity Information Technology Co., Ltd.
Priority to CN202010110800.4A priority Critical patent/CN111310132A/zh
Publication of CN111310132A publication Critical patent/CN111310132A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

本发明特别涉及一种基于java开发的集群证书认证方法。该基于java开发的集群证书认证方法,先在各个节点上生成集群证书密文文件,并写入对应的密文,然后对密文进行解密;项目运行后,拦截用户操作请求,通过验证用户节点证书的有效日期判断是否继续使用集群。该基于java开发的集群证书认证方法,通过配置集群证书,不仅能够有效防止用户在未经授权的情况下随意扩展节点,同时还能够控制集群的使用周期。

Description

一种基于java开发的集群证书认证方法
技术领域
本发明涉及WEB开发技术领域,特别涉及一种基于java开发的集群证书认证方法。
背景技术
前端即网站前台部分,运行在PC端,移动端等浏览器上展现给用户浏览的网页。前端技术指通过浏览器到用户端计算机的统称,存贮于服务器端的统称为后端技术。前端开发主要职能就是把网站的界面更好地呈现给用户。
前端技术一般分为前端设计和前端开发,前端设计一般可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括基本的HTML和CSS以及JavaScript/ajax,现在最新的高级版本HTML5、CSS3,以及SVG等。
前端技术的发展是互联网自身发展变化的一个缩影。随着互联网技术的发展,HTML5,CSS3,前端框架的应用,跨平台响应式网页设计能够适应各种屏幕分辨率,完美的动效设计,给用户带来极高的用户体验。
在Web1.0时代,由于网速和终端能力的限制,大部分网站只能呈现简单的图文信息,并不能满足用户在界面上的需求,对界面技术的要求也不高。随着硬件的完善、高性能浏览器的出现和宽带的普及,技术可以在用户体验方面实现更多种可能,前端技术领域迸发出旺盛的生命力。
随着互联网进入Web2.0时代,各种类似桌面软件的Web应用大量涌现,前端由此发生了翻天覆地的变化。网页不再只是承载单一的文字和图片,各种富媒体让网页的内容更加生动,网页上软件化的交互形式为用户提供了更好的使用体验,这些都是基于前端技术实现的。
近年来,手机成为人们生活中不可或缺的一部分,成为人们身体的延伸,人们迎来了体验为王的时代。移动端的前端技术开发前景宽阔。此外,前端技术还能应用于智能电视、智能手表甚至人工智能领域。移动互联网带来了大量高性能的移动终端设备以及快速的无线网络,HTML5,node.jS的广泛应用,各类框架类库层出不穷。
在数据时代,随着互联网技术的迅速发展,产生了大量的数据,人们的工作和生活基本上都可以用数字化表示。为了保证集群的可控性,防止用户在未经授权的情况下随意扩展节点,同时可以有效的控制集群的使用周期,我们需要对集群添加证书认证功能。
RSA是第一个比较完善的公开密钥算法,它既能用于加密,也能用于数字签名。RSA的安全基于大数分解的难度。其公钥和私钥是一对大素数(100到200位十进制数或更大)的函数。从一个公钥和密文恢复出明文的难度,等价于分解两个大素数之积(这是公认的数学难题)。
这种算法非常可靠,密钥越长,它就越难破解。根据已经披露的文献,目前被破解的最长RSA密钥是768个二进制位。也就是说,长度超过768位的密钥,还无法破解(至少没人公开宣布)。因此可以认为,1024位的RSA密钥基本安全,2048位的密钥极其安全。
RSA加密:
在RSA中,明文、密钥和密文都是数字。RSA的加密过程可以用下面的公式来表达。
密文=明文E mod N
RSA的密文是对代表了明文的数字的E次方求mod N的结果。换句话说,就是将明文和自己做E次乘方,然后将其结果除以N求余数,这个余数就是密文。
加密公式中出现了两个数——E和N,到底都是什么数呢?RSA的加密是求明文的E次方mod N,因此只要知道E和N这两个数,任何人都可以完成加密的运算。所以说,E和N是RSA加密的密钥,也就是说,E和N的组合就是公钥。其中E是加密(Encryption)的首字母,N是数字(Number)首字母。
RSA解密,公式如下:
明文=密文D mod N
该公式表示对密文的数字的D次方求mod N就可以得到明文。换句话说,将密文自己做D次乘法,再对其结果除以N求余数,就可以得到明文。
这里使用的数字N和加密时使用的数字N是相同的。数D和数N组成起来就是RSA的解密密钥,因此D和N的组合就是私钥。只有知道D和N两个数的人才能够完成解密的运算。由于N是公钥的一部分,是公开的,因此单独将D称为私钥也是可以的。
在RSA中,加密和解密的形式是相同的。加密是求“E次方的mod N”,而解密则是求“D次方的mod N”。
基于上述情况,本发明提出了一种基于java开发的集群证书认证方法。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的基于java开发的集群证书认证方法。
本发明是通过如下技术方案实现的:
一种基于java开发的集群证书认证方法,其特征在于,包括以下步骤:
第一步,在各个节点上生成集群证书密文文件,并写入对应的密文;
第二步,对密文进行解密;
第二步,启动节点时,解密节点上的集群证书密文文件,通过验证节点权限和有效日期判断是否正常启动节点;
第三步,项目运行后,拦截用户操作请求,通过验证用户节点证书的有效日期判断是否继续使用集群。
所述第一步中,提供加密jar包enauth.jar,用于在各个节点上生成集群证书密文文件auth.propertis。
所述加密jar包enauth.jar为实施人员所有,其入参为IP和时间周期。
所述第二步中,提供解密jar包deauth.jar,开发者将所述解密jar包deauth.jar引入到各自的项目中,实现对密文的解密。
所述解密jar包deauth.jar仅对开发者提供,用于对密文的解密。
所述第二步中,启动节点时,启动监听,解密节点上的集群证书密文文件auth.propertis内容,并验证集群证书的有效日期是否大于当前日期,如果包含且在有效期内,则说明该节点有权限启动成功,否则启动失败,并在日志中打印原因。
所述第二步中,还要验证节点上的集群证书密文文件auth.propertis内容是否包含该执行节点的IP或主机名。
所述第三步中,项目运行后,用户在WEB页面上点击各种链接时,对其操作请求进行拦截并做权限验证,验证节点证书的有效日期是否大于当前日期,如果大于则说明没有超过授权期限,可以继续使用集群,否则则跳转到指定页面并告知用户服务不可用。
本发明的有益效果是:该基于java开发的集群证书认证方法,通过配置集群证书,不仅能够有效防止用户在未经授权的情况下随意扩展节点,同时还能够控制集群的使用周期。
附图说明
附图1为本发明基于java开发的集群证书加密方法示意图。
附图2为本发明基于java开发的集群节点启动验证方法示意图。
附图3为本发明基于java开发的集群证书操作验证方法示意图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合实施例,对本发明进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
该基于java开发的集群证书认证方法,包括以下步骤:
第一步,在各个节点上生成集群证书密文文件,并写入对应的密文;
第二步,对密文进行解密;
第二步,启动节点时,解密节点上的集群证书密文文件,通过验证节点权限和有效日期判断是否正常启动节点;
第三步,项目运行后,拦截用户操作请求,通过验证用户节点证书的有效日期判断是否继续使用集群。
所述第一步中,提供加密jar包enauth.jar,用于在各个节点上生成集群证书密文文件auth.propertis。
所述加密jar包enauth.jar为实施人员所有,其入参为IP和时间周期。
代码如下:
Figure BDA0002389926190000041
Figure BDA0002389926190000051
使用如下命令生成对应的密文:
java-jar enauth.jar
所述第二步中,提供解密jar包deauth.jar,开发者将所述解密jar包deauth.jar引入到各自的项目中,实现对密文的解密。
所述解密jar包deauth.jar仅对开发者提供,用于对密文的解密。
所述第二步中,启动节点时,启动监听,解密节点上的集群证书密文文件auth.propertis内容,并验证集群证书的有效日期是否大于当前日期,如果包含且在有效期内,则说明该节点有权限启动成功,否则启动失败,并在日志中打印原因。
所述第二步中,还要验证节点上的集群证书密文文件auth.propertis内容是否包含该执行节点的IP或主机名。
所述第三步中,项目运行后,用户在WEB页面上点击各种链接时,对其操作请求进行拦截并做权限验证,验证节点证书的有效日期是否大于当前日期,如果大于则说明没有超过授权期限,可以继续使用集群,否则则跳转到指定页面并告知用户服务不可用。
以上所述的实施例,只是本发明具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

Claims (8)

1.一种基于java开发的集群证书认证方法,其特征在于,包括以下步骤:
第一步,在各个节点上生成集群证书密文文件,并写入对应的密文;
第二步,启动节点时,解密节点上的集群证书密文文件,通过验证节点权限和有效日期判断是否正常启动节点;
第三步,项目运行后,拦截用户操作请求,通过验证用户节点证书的有效日期判断是否继续使用集群。
2.根据权利要求1所述的基于java开发的集群证书认证方法,其特征在于:所述第一步中,提供加密jar包enauth.jar,用于在各个节点上生成集群证书密文文件auth.propertis。
3.根据权利要求2所述的基于java开发的集群证书认证方法,其特征在于:所述加密jar包enauth.jar为实施人员所有,其入参为IP和时间周期。
4.根据权利要求1所述的基于java开发的集群证书认证方法,其特征在于:所述第二步和第三步中,提供解密jar包deauth.jar,开发者将所述解密jar包deauth.jar引入到各自的项目中,实现对密文的解密。
5.根据权利要求4所述的基于java开发的集群证书认证方法,其特征在于:所述解密jar包deauth.jar仅对开发者提供,用于对密文的解密。
6.根据权利要求2所述的基于java开发的集群证书认证方法,其特征在于:所述第二步中,启动节点时,启动监听,解密节点上的集群证书密文文件auth.propertis内容,验证节点上的集群证书密文文件auth.propertis内容是否包含该执行节点的IP或主机名,若包含则对有效日期进行验证,若不包含则启动失败,并在日志中打印原因。
7.根据权利要求6所述的基于java开发的集群证书认证方法,其特征在于:所述第二步中,验证集群证书的有效日期是否大于当前日期,如果包含且在有效期内,则说明该节点有权限启动成功,否则启动失败,并在日志中打印原因。
8.根据权利要求6所述的基于java开发的集群证书认证方法,其特征在于:所述第三步中,项目运行后,用户在WEB页面上点击各种链接时,对其操作请求进行拦截并做权限验证,验证节点证书的有效日期是否大于当前日期,如果大于则说明没有超过授权期限,可以继续使用集群,否则则跳转到指定页面并告知用户服务不可用。
CN202010110800.4A 2020-02-24 2020-02-24 一种基于java开发的集群证书认证方法 Pending CN111310132A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010110800.4A CN111310132A (zh) 2020-02-24 2020-02-24 一种基于java开发的集群证书认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010110800.4A CN111310132A (zh) 2020-02-24 2020-02-24 一种基于java开发的集群证书认证方法

Publications (1)

Publication Number Publication Date
CN111310132A true CN111310132A (zh) 2020-06-19

Family

ID=71160170

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010110800.4A Pending CN111310132A (zh) 2020-02-24 2020-02-24 一种基于java开发的集群证书认证方法

Country Status (1)

Country Link
CN (1) CN111310132A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104135482A (zh) * 2014-08-07 2014-11-05 浪潮(北京)电子信息产业有限公司 一种认证方法及装置、服务器
CN104735087A (zh) * 2015-04-16 2015-06-24 国家电网公司 一种基于公钥算法和SSL协议的多集群Hadoop系统安全优化方法
CN106487743A (zh) * 2015-08-25 2017-03-08 阿里巴巴集团控股有限公司 用于支持多用户集群身份验证的方法和设备
CN107257334A (zh) * 2017-06-08 2017-10-17 中国电子科技集团公司第三十二研究所 用于Hadoop集群的身份认证方法
CN109815010A (zh) * 2018-12-29 2019-05-28 深圳供电局有限公司 一种云平台统一身份认证方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104135482A (zh) * 2014-08-07 2014-11-05 浪潮(北京)电子信息产业有限公司 一种认证方法及装置、服务器
CN104735087A (zh) * 2015-04-16 2015-06-24 国家电网公司 一种基于公钥算法和SSL协议的多集群Hadoop系统安全优化方法
CN106487743A (zh) * 2015-08-25 2017-03-08 阿里巴巴集团控股有限公司 用于支持多用户集群身份验证的方法和设备
CN107257334A (zh) * 2017-06-08 2017-10-17 中国电子科技集团公司第三十二研究所 用于Hadoop集群的身份认证方法
CN109815010A (zh) * 2018-12-29 2019-05-28 深圳供电局有限公司 一种云平台统一身份认证方法及系统

Similar Documents

Publication Publication Date Title
US8347083B1 (en) Encrypted cross-origin communication via an intermediary
CN108769027B (zh) 安全通信方法、装置、移动终端和存储介质
US10055591B1 (en) Secure protocol attack mitigation
CN111898152B (zh) 一种页面展示方法、电子设备及存储介质
CN103548299A (zh) 用于基于网络的安全认证的系统和方法
CN109981576B (zh) 密钥迁移方法和装置
CN109977703A (zh) 一种安全键盘的加密方法、存储介质及终端设备
CN113836498A (zh) 网页源代码混淆方法、装置、电子装置和存储介质
JP2006216002A (ja) Urlセキュリティーシステム
CN114363088A (zh) 用于请求数据的方法和装置
CN113904810A (zh) 一种高效的隐私保护安全浏览方法
US20160328539A1 (en) Obscuring Software Code With Split Variables
CN113312576A (zh) 一种页面跳转方法、系统及装置
CN117725598A (zh) 安卓端数据加解密方法、装置、设备及介质
CN112199730A (zh) 一种终端上应用数据的处理方法、装置及电子设备
CN115442164B (zh) 多用户日志加解密方法、装置、设备及存储介质
CN111310132A (zh) 一种基于java开发的集群证书认证方法
CN114584327B (zh) 一种客户端生成的图形验证码的验证方法及系统
JP7276737B2 (ja) 本人認証システム及び本人認証方法
KR102258638B1 (ko) 자바스크립트 기반의 웹 자동화 공격 및 스니핑 차단 시스템 및 방법
CN115277225A (zh) 一种数据加密方法、解密方法及相关设备
CN102238150A (zh) 表单注册方法及服务器
CN111209544B (zh) Web应用安全保护方法、装置、电子设备及存储介质
CN111212068B (zh) 一种输入法对文字加解密的方法
KR101378549B1 (ko) 패턴을 이용한 동적 웹 컨텐츠 보안 서버 및 방법

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200619

RJ01 Rejection of invention patent application after publication