一种跨平台的系统安全登录认证系统技术方案

技术编号:36116043 阅读:42 留言:0更新日期:2022-12-28 14:20
本发明专利技术涉及一种跨平台的系统安全登录认证系统,属于身份认证安全技术领域。本发明专利技术设计实现的跨平台的系统安全登录认证系统,能够克服由于不同平台、不同系统版本间系统登录模块界面风格及认证过程的差异,导致的软件难以开发维护、适配性差、安全性低的问题。安全性低的问题。安全性低的问题。

【技术实现步骤摘要】
一种跨平台的系统安全登录认证系统


[0001]本专利技术属于身份认证安全
,具体涉及一种跨平台的系统安全登录认证系统。

技术介绍

[0002]随着计算机安全的发展,各平台自带的系统登录模块已经无法满足要求,人们开始使用自研的系统登录模块,代替系统本身的登录模块。
[0003]系统登录涉及操作系统底层原理,由各系统厂商提供接口及界面:1.windows xp系统登录模块使用gina技术实现,界面使用windows api实现,如MFC等;2.windows 7以上系统登录模块使用Credential Providers技术实现,界面使用此模块自带的模板实现;3.Linux系统登录模块使用GNOME、LightDM等技术实现。
[0004]无论哪种操作系统,自带的系统登录模块都只进行了简单的系统用户名密码的认证,且使用了不同登录技术和不同界面api。不仅安全性差,且难以维护开发。开发人员需要根据不同系统及版本,使用相应技术,实现对应版本的登录模块,开发过程繁琐,尤其是在维护升级时,需要所有平台代码进行维护,由于牵扯到操作系统底层及跨平台开发,稍有不慎都可能造成无法进入操作系统或安全性问题,造成不可估量的后果。而且会使各个平台下界面风格不一致,增加使用学习成本和美观性。

技术实现思路

[0005](一)要解决的技术问题
[0006]本专利技术要解决的技术问题是:如何设计一种跨平台的系统安全登录认证系统,解决了操作系统本身提供的登录模块安全性低,且跨平台开发维护难度大的问题。r/>[0007](二)技术方案
[0008]为了解决上述技术问题,本专利技术提供了一种跨平台的系统安全登录认证系统,包括:
[0009]平台适配模块,此模块根据不同操作系统进行部署,仅处理与操作系统的交互;
[0010]跨平台安全认证模块,此模块使用Qt开发,用于登录界面展示及认证过程处理;
[0011]认证服务器,用于与跨平台安全认证模块通信,验证登录合法性。
[0012]优选地,与操作系统相关的操作在所述平台适配模块中实现,此模块仅调用跨平台安全认证模块的接口,获取认证结果,成功则登录进入系统,失败时将重新调用跨平台安全认证模块。
[0013]优选地,所述跨平台安全认证模块使用跨平台界面库Qt进行开发,拥有跨平台能力,此模块一经调用则开启事件循环,同步调用认证逻辑,等待认证结束后返回,此模块还具备TCP通信的能力,可连接认证服务器,将用户输入信息加密后发送到服务端,协助完成认证过程。
[0014]优选地,所述认证服务器部署在远端,或者部署在本地,通过TCP协议与跨平台安
全认证模块通信,将需要验证的信息与数据库中的内容进行比对验证,并将结果信息返回给跨平台安全认证模块,协助其完成身份认证。
[0015]优选地,所述系统安装部署在Windows XP/7/10、银河麒麟、中标麒麟或inux系统上;
[0016]在Windwos XP系统中,所述平台适配模块使用GINA技术,重写系统登录函数,循环调用跨平台安全认证模块,获取认证结果并尝试登录系统;
[0017]在Windwos 7/10系统中,所述平台适配模块使用Credential Providers技术,以子进程方式循环调用跨平台安全认证模块,并等待进程结束,获取认证结果并尝试登录系统;
[0018]在银河麒麟、中标麒麟或Linux系统上,所述平台适配模块使用LightDM技术,可直接循环调用平台安全认证模块,获取认证结果并尝试登录系统。
[0019]优选地,所述跨平台安全认证模块能够按照TCP认证协议,将人机交互界面中用户输入的内容,格式化后发送给认证服务器。
[0020]优选地,Windows XP系统下,所述跨平台安全认证模块选用msvc编译器与Qt进行联合编译,且选用MSVC2013版本作为msvc编译器的版本,还对Qt默认库加载路径进行调整,以解决缺库问题。
[0021]优选地,在Windows7/10系统中,使用修改系统函数入口的方式捕获认证动作,后续使用启动子进程,子进程调用跨平台安全认证模块的方式,适配跨平台认证流程,当系统认证开始时,新建一个子进程,锁住当前系统认证流程,执行认证逻辑,并通过进程返回值返回认证结果,然后继续执行系统认证流程;
[0022]Linux系统中,使用LightDM技术,通过调用跨平台安全认证模块,完成认证过程,然后通过LightDM/Gretter类,进行与操作系统间的交互。
[0023]优选地,跨平台安全认证模块中的通信功能使用定制的TCP模块,其内部定制TCP协议,输入消息类型和数据体,即可与认证服务器通信,且在定制TCP模块中设计了TCP黏包处理、MTU分包设计;该跨平台安全认证模块在Windows系统中使用winsocket实现,Linux系统中使用BSD socket实现。
[0024]本专利技术还提供了一种所述系统的设计方法。
[0025](三)有益效果
[0026]本专利技术设计实现了一种跨平台的系统安全登录认证系统,能够克服由于不同平台、不同系统版本间系统登录模块界面风格及认证过程的差异,导致的软件难以开发维护、适配性差、安全性低的问题。
附图说明
[0027]图1为本专利技术系统的模块调用关系示意图。
具体实施方式
[0028]为使本专利技术的目的、内容和优点更加清楚,下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。
[0029]本专利技术针对不同平台、不同系统版本间系统登录模块界面风格及认证过程的差
异,导致软件难以开发维护、适配性差、安全性低的问题,设计了一种跨平台的系统安全登录认证系统。
[0030](一)系统组成部件
[0031]本专利技术描述的系统主要包括以下几个部件:
[0032]1)平台适配模块,此模块根据不同操作系统进行部署,仅处理与操作系统的交互。
[0033]2)跨平台安全认证模块,此模块使用Qt开发,用于登录界面展示及认证过程处理。
[0034]3)认证服务器,用于和跨平台安全认证模块通信,验证登录合法性。
[0035](二)模块调用关系
[0036]本专利技术最大程度地掩盖了操作系统间的差异,将与操作系统相关的操作放入平台适配模块中,参考图1,此模块仅调用跨平台安全认证模块的接口,获取认证结果,成功则登录进入系统,失败时将重新调用跨平台安全认证模块。
[0037]跨平台安全认证模块使用跨平台界面库Qt进行开发,拥有跨平台能力,且可以做到在多种平台下界面风格统一,此模块一经调用则开启事件循环,同步调用认证逻辑,等待认证结束后返回。此模块还具备TCP通信的能力,可以连接认证服务器,将用户输入信息加密后发送到服务端,协助完成认证过程。
[0038]认证服务器可以部署在远端,也可以部署在本地,通过TCP协议与跨平台安全认证模块通信,将需要验证的信息与数据本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种跨平台的系统安全登录认证系统,其特征在于,包括:平台适配模块,此模块根据不同操作系统进行部署,仅处理与操作系统的交互;跨平台安全认证模块,此模块使用Qt开发,用于登录界面展示及认证过程处理;认证服务器,用于与跨平台安全认证模块通信,验证登录合法性。2.如权利要求1所述的系统,其特征在于,与操作系统相关的操作在所述平台适配模块中实现,此模块仅调用跨平台安全认证模块的接口,获取认证结果,成功则登录进入系统,失败时将重新调用跨平台安全认证模块。3.如权利要求2所述的系统,其特征在于,所述跨平台安全认证模块使用跨平台界面库Qt进行开发,拥有跨平台能力,此模块一经调用则开启事件循环,同步调用认证逻辑,等待认证结束后返回,此模块还具备TCP通信的能力,可连接认证服务器,将用户输入信息加密后发送到服务端,协助完成认证过程。4.如权利要求3所述的系统,其特征在于,所述认证服务器部署在远端,或者部署在本地,通过TCP协议与跨平台安全认证模块通信,将需要验证的信息与数据库中的内容进行比对验证,并将结果信息返回给跨平台安全认证模块,协助其完成身份认证。5.如权利要求4所述的系统,其特征在于,所述系统安装部署在Windows XP/7/10、银河麒麟、中标麒麟或inux系统上;在Windwos XP系统中,所述平台适配模块使用GINA技术,重写系统登录函数,循环调用跨平台安全认证模块,获取认证结果并尝试登录系统;在Windwos 7/10系统中,所述平台适配模块使用CredentialProviders技术,以子进程方式循环调用跨平台安全认证模块,并等待进程结束,获取认证结果并尝...

【专利技术属性】
技术研发人员:魏祎霄张满孔凯薇韩磊王宏鹏高景生胡佳
申请(专利权)人:北京计算机技术及应用研究所
类型:发明
国别省市:

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

1