浅谈网络安全应用于身份认证

 

评阅教师

设计成绩

评阅日期

 

 

 

 

海南大学计算机科学与技术学院

计算机综合课程设计报告

 

 

   级:19级计算机科学与技术专业    

   员:王静静20191687310056            

   员:浅谈网络安全应用身份认证        

指导老师: 杨厚群                         

完成日期: 2022-6-18                       

 

 

 

 

 

 

 

 

目录

浅谈网络安全应用于身份认证

1.前言

2.身份认证概述

2.1身份认证定义

2.2身份认证方法

2.3生活中常见身份认证形式

2.3.1静态密码

2.3.2智能卡

2.3.3生物识别

3.网络环境下的身份认证

4.基于改进型Elgamal数字签名的身份认证模式

5. 安全性和效率分析

5.1安全性分析

5.2效率分析

6. 总结

7.参考文献

 

 

 

 

 

 

 

 

 

 

 

浅谈网络安全应用于身份认证

1.前言

网络技术的发展日新月异,电子化与网络化现象已经在人们的日常生活中随处可见,人们的生活可以说与网络息息相关。人类社会对提高计算机系统性能方面的技术各方面需求水平也在日益的提高,目前有许多的工作都只能是通过使用电脑上网才能正常进行,现代信息社会人类的工作日常生活中早已越来越离不开使用电脑上网和使用互联网了。计算机应用在我国近些年来的迅速蓬勃的发展已使信息网络技术已逐渐成为我国经济社会发展信息化的一个主要保障。信息网络涉及到国家的政府、军事、文教等诸多领域,存储、传输和处理的许多信息是政府宏观调控决策、商业经济信息、银行资金转账、股票证券、能源资源数据、科研数据等重要领域的信息。这里也有着不少鲜为人知的敏感的个人信息,即使是属于一些国家机密,但是也难免会吸引到来自于国内外社会的很多不法分子的恶意利用(例如信息泄露、信息窃取、数据篡改、数据删添、计算机病毒等)。罪犯通过互联网进行犯罪并不会像现实生活中一样留下难以解决的生物证据与痕迹,所有证据仅存在于网络上并且可以通过技术手段进行抹除,使得许多高技术计算机案件难以解决。计算机犯罪的解决难度给了高技术犯罪分子可乘之机,这些犯罪分子的存在时刻威胁的各个国家的计算机系统,尤其是网络新系统,网络安全的问题已经可以说是严重的社会问题,网络安全问题也成为计算机发展的关键问题。

网络安全的核心是是否拥有可信的网络安全身份认证体系。身份认证体系在信息安全体系有着举足轻重的地位,尽管这只是最基本的信息安全业务,但其他的信息安全业务都要它才能实现,如果身份认证系统遭到黑客的恶意入侵,系统内的针对攻击的安全布局会直接全部瘫痪,所以黑客进攻的首先目标通常都是先攻克身份认证系统。

实现了互联网身份信息验证可信,互联网行为轨迹跟踪验证可信,再加上通过区块链技术,打通了各地方政府部门,各相关产业之间存在着的互联网各种身份属性信息和行为活动的轨迹,为未来我国互联网的国家安全、社会经济安全、诚信的系统的构建提供了保证,在未来开放透明的宽带网络世界和物联网世界中构建起我国安全的网络长城。

2.身份认证概述

2.1身份认证定义

身分的确认过程又被叫做所谓"身份验证"或"身份鉴别"过程,是一种指在个人电脑系统或其他计算机网络系统过程中用来确定电脑操作者身分合法性的一个步骤,以此来判断电脑其实际使用者身分是否合法拥有其对于电脑特定资料内容的合法存取权与合法应用权利,这样做可有效使得对计算机资源和其他网络资源用户的合法授权资源访问权限保护的策略措施能够得以更为稳定可靠、高效和安全有效地来进行和执行,防止了恶意进攻者通过利用技术手段假冒威胁其他资源合法的授权资源用户身份来获得其他资源合法的合法授权资源访问的权限,确保维护了计算机系统资源安全和其他网络数据资源安全的绝对核心安全,以及保护合法的授权数据资源被访者用户本身享有的一切正当的合法利益。

计算机世界系统中所有的任何的性资讯中所能够涉及到的所有使用者特殊的数位身分信息则都是只能够是以针对某一位特定使用者的特殊的身分数字来所进行的描述呈现出来的,计算机系统仅只能够是用于的确认某一位特定使用者的特殊的数位身分,任何所谓的针对任何其他特定使用者身分进行的使用的授权则是都是只能是用于的针对该特定使用者数位身分所进行使用的授权。身分认证是透过标识与辨认特定使用者的真实身分,提供了一个判断使用者与确定使用者身分的机制。怎么样才可以合法确认一名在以物理网络数字身份来实施的互联网操作时的互联网操作员本身就是这个网络数字身分的唯一合法的拥有者,也就是说如果要用来确定这个互联网操作者身份与这个物理身份或者这个网络数字身分的相对应,身份关系的合法确认也仅仅就是要能够用来有效的解决好这种身份关系问题,成为了人们用来保障维护自己的互联网资产的安全的第一个重要法律关口,身份的合法确认也就变得具有意义了至关重要的意义。

2.2身份认证方法

在现实生活中,对用户的身份认证基本方法可以分为这三种:

(1)根据你所知道的信息来证明你的身份(what you know ,你知道什么);

(2)根据你所拥有的东西来证明你的身份(what you have ,你有什么);

(3)直接根据独一无二的身体特征来证明你的身份(who you are ,你是谁);

从根本上来说,在互联网进行身份认证也是根据以上三种方法,为了能更好的提高身份认证过程的安全性保障,个别情况下会混合两种方法,这也是一个双重因素认证的方法。双因素验证是指把这二个验证的方式有机整合了起来,提高了验证结果的安全稳定性,目前应用面上最大的验证双因素方式为:动态口令牌+静态密钥;USB KEY+静态密码;二层静态密码等等。

2.3生活中常见身份认证形式

2.3.1静态密码

用户独立设定自己在互联网的密码。通过输入对的密码登录互联网,计算机就认为进行登录操作的用户就是合法用户。现实中,大多数用户为防止遗忘丢失密码,通常会采用一些常见的有特定意义的数字用作密码,也会把密码记录在身边,使得密码泄露的可能性大大增加。密码输入后就处于静态,检验其正确性的过程需要在计算机内存和传输,可能会因此被一些恶意程序或在网络服务器上截获。所以,静态密钥机制虽然不管是应用开发或者系统部署上都是非常的简单,但是在系统安全角度上来讲,用户名/密码方式是一种目前最不可靠的身份信息验证方法。采用静态密码技术的身份信息验证技术也以因其操作简便快捷和相对低成本优势而迅速获得到了较为普遍广泛的应用。但是这种方法的绝对安全并没有保证,仅靠口令的保密性维持安全,任何知道口令的人都可以假装真正的用户。安全性不够的口令就有更大的可能性经历字典攻击、穷举攻击甚至暴力计算破解。

2.3.2智能卡

具有一个内部的集成了智能卡电路模块组成的智能卡芯片,芯片电路模块中将会自动保存着大量的与该智能卡用户身份信息等相关信息的数据,智能卡芯片一般是要由一个专门设计制造智能卡的芯片制造商来通过一个最先进专业的制造设备来进行生产,是指一个用户无法进行直接的拷贝数据操作的硬件。智能卡一般都是做为一个合法身份的卡使用者凭证而被随身携带,登记卡使用者时你就得必须要先亲自将这一个合法智能卡放在另一个专门设计制作的读卡器芯片中来读取该卡里面所存放着的其他有关的信息,以来进一步的证实该卡使用者的合法身份的身份。

智能卡验证技术是指利用智能卡硬件不可被重复验证以来确保智能卡使用者身分信息没有可能遭到仿冒。但是因为用户每次在智能卡过程中所读出到的身份数据都是相对静态保存的,使用内存扫描技术及远程网络远程监控技术等各种技术手段后仍然可以很容易的截获检测到用户的身份信息验证的信号,所以目前仍然还存在安全隐患。它是利用what you have方法。

基于智能卡的验证方法是基于一个双方因素的验证的方法(PIN+智能卡),就算是PIN卡及智能卡同时遭到他人盗取,用户身份也将无法再被冒用。

2.3.3生物识别

运用who you are方法,利用人类可被检测到的人类躯体结构或心理行为特征等的生物学特性来实施人类身份的确认工作的是一门科学技术。生物特性是指目前唯一已知的生物能够被测量到并最终可以被自动地识别出来与被验证出来的某种生物特性行为或生物活动方法。生物特征主要包括生物躯体特征与生物行为学特点二种。人体特点主要有:指纹、掌型、视网膜、虹膜、身体气味、脸型、手的神经血管结构以及DNA结构等等;动作特点主要有:签名、说话、走路步态等等。部分研究者还把视网膜生物辨识、虹膜识别技术以及指纹生物识别技术等技术归入高级视觉生物特征识别的技术;将掌型辨识、脸型辨识、语音识别技术以及标签生物识别技术也可归并为次级生物识别技术;把血管纹识别、人体气味辨识、DNA指纹鉴定技术等等都归之为比较"深奥的"生物指纹的识别技术,指纹的识别技术的使用最常见到的应用的领域就包括了门禁系统、微型手机支付等等。这种认证的方法是以研究人类的独一无二的,伴随人类终身发展的生物特性图像为理论基础,通过利用计算机图像存储与比对系统的处理功能技术和计算机网络技术来实现计算机对生物图像信息的分析处理功能与生物模式识别。该身份认证的技术上已经初步达到具有了较良好的程度上的社会稳定性、可信度指数值和社会有效性,和我国目前的传统的有效可靠的进行公民身份信息采集证明工作的技术手段相比较,无疑是产生出了质的飞跃。近几年来,国内外的生物指纹识别技术已经由研发阶段走向实用阶段,对该技术的研发与应用领域进一步深入扩展。

3.网络环境下的身份认证

在移动互联网环境条件下,身份信息验证变得越来越复杂繁琐,考虑到被认证的身份信息的使用双方之间通常也都是通过使用移动互联网设备而并非进行直接的通讯,像通过扫描指纹等其他技术手段验证也就无法进行。此外,大量的黑客随时随地都有可能试图向互联网方面渗透,窃取真正用户的口令或利用他人的身份接入。

如今在移动互联网环境下中通过采用一种基于公共身份加密技术的安全防护措施来进行客户身份的验证也已逐渐成为最主要安全的验证方式之一,具体的来说,使用一种符合X.509标准的身份标志,通过采用这种安全验证的方法客户通常都需要通过首先通过由某一个或多个第三方提供特定类型的公共身份证明及授权证书的(CA)身份验证中心来首先为其客户服务器提供一个身份标志,客户终端和服务器都会被分别要求首先通过在其CA系统中首先进行一个身份标识,在其进行客户会话的操作时和客户通信操作时需要首先进行身份标记,其中就包括了先把双方各自的公钥加密送给了对方,之后他们才可以通过交换对方的公钥进行加密来验证交换对方的数字签名、交换对方通讯系统的加密密钥等等。在需要确认对方是否已经认可了对方提供的有效身份证明时,还可能必须通过查询到相关的服务器,以进一步确定该身份证明到底是否有效。身份信息验证的流程如图表3-1所示.

 

3.1一些安全网络身份认证技术

3.1.1数字签名技术

数字签名结果(Digital Signatures)一般都是指被签名者可以通过直接使用私钥密码算法来完成针对其签署数量信息中包含的杂凑性数字信息所作相应的数字密码运算而得到的出来结果的其中一个结果,其最终计算的结果往往也是可通过直接地使用由被签名者所持有的数字秘密公钥密码来进行加以检验,用以来进一步地证实了其所待检验的签名行为数量信息本身的相对的完整性、签名者身份信息的相对的真实性程度和对其签名行为信息本身的相对可欺防抵赖性。

数字签名功能的真正实现还需要建立公钥密码机制,而对公开的密钥信息的有效管理则通常还需要通过公开的密钥认证机制来加以完成,即通过使用公开密钥认证机制来明确告知外界他人其所能掌握到的公开的密钥信息是否真实。数字签名技术可用于企业进行的各种数据安全管理服务,涉及到数据完整性、数据起源和鉴别、身份的确认和非身份完全的否认等等。数字签名的一般操作流程如以下所示。

(1)证书持有者对信息M做杂凑,得到杂凑值H。国际上公开使用的杂凑算法有MD5、SHA1等,在我国必须使用国家规定的杂凑算法。

(2)证书持有者可以通过私钥信息对H变换而得到S,变换的算法也应该是与证书信息中标明的变换主体公钥信息中标说明变换的算法相同。

(3)将信息S和原信息M同时进行传输并发布。其中,S为证书持有人对信息M的签名,该证书数据格式也可由根据世界各国的有关证书规范定义,国外最常见的证书规范格式为PKCS#7,数据中还包括了所用到的杂凑算法的信息。

(4)依赖方建立了到获得自己的信任锚起、信息发布者获得认证为止的证书认证的途径和验证该证书途径。一旦认证工作完成,即视为认定取得了该证书持有者的身份合法性,并正式承认取得了该证书,确认其属于该声称证书的持有者。

(5)依赖方使用证书持有者的证书验证对信息M的签名S。首先利用S中标识的杂凑算法给M作杂凑,得出杂凑值H’;然后再通过证书中的公钥对S变换,得到H"。比较H’和H",如果有二者相同,则签名验证成功;否则签名验证错误。

数字签名技术可用来进一步证明签名者身份信息的合法真实性,其技术基本原理也和"挑战—响应"的机制一致。为了有效防止网络中间人的入侵,基于数字签名技术的电子身份证书通常还必须同时结合其他数字证书应用。。动态数据认证使用到了一个三层的公钥认证方法。是指一种IC卡公钥由你卡的发卡行所认可,由国家认证中心负责确认的发卡银行公钥。这意味着想要校验IC卡的签名,终端必须要使用验证二个证书以恢复并校验IC卡公钥,并且使用这个公钥用来校验IC卡的动态签名。

3.1.2数字证书

数字证书亦称为数字公开密钥证书,是指由国际证书登记认可委员会组织机构(CA)统一密钥签名是确认的一个包含了数字公开密钥的所有者的信息、公开密钥的扩展密钥、签发者的信息、有效期及其他扩展的密钥信息内容的任意一种加密数据结构。最简单复杂最简单复杂的数字证书包括了一个公开的密钥、名称以及证书授权过程中使用的数字签名。一般地来说,数字证书内容中主要的是包括记录了身份证持有者和自己本人的一些基本信息、证件持有者使用的密码公钥、证件的签发管理机关负责人的亲笔签名、证件颁发的具体有效的日期时间以及其他基本个人信息等。数字证书的认证格式通常是使用X.509标准,是目前普遍被采用到的认证标准格式之一。

数字证书系统采用了公钥密码机制,公钥密码技术有效地解决了密钥信息存储的安全和分发保密问题以及密钥的管理问题。在电子商务技术领域应用中,商家必须拥有一个能够被开放使用的商业公钥,并且必须能够妥善维护保管好其私钥。消费者现在就已经可以直接通过手机利用这样一个人人众所能皆知的秘密公钥密码来直接为商家自己所发送而来商家的消息来进行设定密码,而且还能够更加安全的而又可靠的无误的地上消息传递给了其他的店家,商家也即可直接通过使用商家的自己所拥有的私钥密码来进行实现解密。但用户同时也就可通过使用其自己使用所有可用的加密私钥来对其身份信息资料进行加密,由于所有这些加密私钥都是只可以由其自己或本人所拥有,这实际上也是就相当于自己生成并加密生成了另一份连别人自己也都无法直接读所得到信息的加密文档,即就相当于自己生成了数字证书。采用数字证书,可被用于确保满足以下两点:

(1)保证信息内容必须是由签名者或本人亲自签字后发送出去的,签名者本人没有意思否认的或者是难以否认;

(2)保证信息内容从签发开始一直到收到这一整个过程中没有被任何人进行任何形式的篡改,签发的文件就是所要发出的真正文件。

4.基于改进型Elgamal数字签名的身份认证模式

4.1 Elgamal密码体制

Elgamal算法既可用于数字签名又可用于加密,其安全性依赖计算有限域上离散对数的难度。

G是一个阶为n的有限域,假定G上的离散对数问题是不可解的。1985年ELGamal提出了下述基于离散对数问题的公钥密码体制方案,表现出了陷门函数的特点。
(1)对于一个有限域和其中一个元素aeG,每个用户选定某一随机整数x(秘密密钥),公开ax(公开密钥)。假定信息为G中元素,用户A希望传递信息m给用户B。
(2)A产生一个随机数k并且计算出k(a)ak
(3)A查找B的公开密钥ab,计算(ab)kmabk
(4)A将元素对(akmabk)传递给8。
(5)B计算(ak)b,根据复原信息m。

ELGamal 密码体制是非确定性的,因为密文依赖于明文m和加密者选择的随机数k。所以,同样的明文可以被加密成许多密文。ELGamal密码体制和Diffie-Hellman系统的安全性是等价的。

4.2 Elgamal 数字签名方案

4.2.1数字签名机制

ELGamal体制的安全性是基于离散对数问题的困难性,是除RSA体制外另一个目前仍认为安全的、既可用于加密又可用于数字签名的公钥密码体制。基于ELGamal数字签名方案是基于离散对数的一种数字签名算法,该算法应用广泛,在密码学研究中占有重要地位。方案简述如下:设p是一个大素数,q是p-1的一个大素数因子;g是GF(P)中一个阶为q的元素,且gcd(g,p)=1。用户A选择一个随机数x,这里x∈[1,p-1],计算y=gx(mod p)。公开密钥是y,g,p。秘密密钥是x。用户A对消息签名,必须进行如下步骤:

(1)随机选取整数k,k∈[1,p-1]且gcd(k,p-1)=1;

(2)计算 r=gk(mod p);

(3)计算满足 m=xr+ks(mod(p-1))的s,即s=(m-xr)k-1(mod(p-1))

A对m的签名为(r,s)。B收到A发送来的m的签名(r,s)后,验证(r,s)是否满足方程 gm=yrrs(mod p),如果满足则拒绝。

4.2.2改进的数字签名机制

为能进一步地提高ELGamal算法的稳定性以及数据签名、验证的速度,现在几乎所有主流的数字签名验证系统,例如DSA算法,均大量使用到了散列函数和ELGamal函数的变型。ELGamal的数字签名的方法其实还有其他好的几种变形,下文所要给出介绍的改进型数字签名的方法就是其中ELGamal数字签名的方法中的一个。

方案简述如下:设p是一个大素数,q是p-1的一个大素数因子;g是GF(P)中一个阶为g的元素,且gcd(g,p)=1。用户A选择一个随机数x,这里x∈[1,p-],计算y=gx(mod p)。公开密钥是y,g,p。秘密密钥是x。用户A对消息m签名,必须进行如下步骤:

(1) 随机选取整数k,k∈[1,p-1]且gcd(k,p-1)=1;

(2) 计算r=gk(mod p)  (4-1)

(3) 计算满足 sx=f(m)k+r(mod (p-1)) (4-2)

s,即s=x-1(f(m)k+r)(mod(p-1))    (4-3)

A对m的签名为(r,s)。B收到A发送来的m的签名(r,s)后,验证(r,s)是否满足验证方程ys=rf(m)ⅹgr mod p  (4-4)

该方案减少了用户签名时的模逆运算次数,因为在签名过程中用户密钥x是不变的,所以用户只需计算一次x的模逆,这样就大大减少了模逆运算次数,从而提高了签名的效率。并且方案中所引入的散列函数也能够用来对抗其他一些攻击,提高了签名体系的稳定性。而且使用散列函数f可以对于明文m进行散列,能够有效减少明文的长度,增加签名的有效性。

 

  1. 安全性和效率分析

5.1安全性分析

ELGamal数字签名系统是基于在素数域上求离散对数的困难性问题。目前针对其的主要攻击的方式还包括直接攻击的求出离散对数算法、使用其特定算法的数学结构模型与参数模型的攻击等多种类型。但针对ELGamal数字签名方案的攻击主要从二个方向考虑的:一个是恢复密钥x;另一方面是不需要恢复密钥x,也就能够防止伪造签名。

(1)恢复密钥x的攻击

攻击 1:假设已知一组消息mii=1,2··n)及其相应的签名(risi(i=1,2··n),攻击者可能会试图解n个形如(4-2)的方程组成的方程组。但是,由于每个用户使用了不同的k值,所以方程组中共有n+l个未知数,其解有无穷多组。但是,如果签名时,k被重复使用,则方程组有唯一的一组解,就可以恢复密钥x。因此,为安全起见,k不能被重复选取。
    攻击2:因为不知道x和k的值,所以要想解形如(4-1)的方程等价于在GF(P)上求解离散对数问题。
    攻击 3:攻击者可能会试着找到ki(i=1,2··n)之间存在的某种线性关系,这也等价于计算离散对数问题。这是因为如果ki=cki(mod(p-1)),则有ri = rjc(mod p),如果离散对数可解,就可以得到C。
(2)伪造签名的攻击

攻击4:对给定的一个消息m,伪造者可能会试着去找满足式(4-4)的r,s。即使假设可随机选取某个整数j,计算r=gj(mod p),要得到s等价于在GF(P)上求解离散对数。如果伪造者首先找到了满足条件的s,可以通过解方程
rsyr=A(mod p)   (4-5) 
获得r的值。然而解方程(4-5)比解离散对数还要困难,它在多项式时间内是无法完成的。
    攻击5:尽管看起来同时求解(4-4)中的r和s似乎是可能的,但目前还没有找到一个有效的算法来解决它。

5.2效率分析

基于ELGamal的数字签名验证方法在数字签名、认证的过程中,涉及到了大量的整数的计算验证问题,尤其是对于包含大量的整数信息的多模的计算,涉及到模幂、模逆运算等等。这些运算也很明显大地影响着它的速度。特别是在签名过程中每个用户除选择x作为自己的秘密密钥,还要秘密选择一随机数k,并且为了安全起见,k 不能被重复使用,所以用户要不断地选择k,而且要计算k的模逆,对大数计算它的模逆需要花费大量的时间与精力。所以要想提高签名、验证速度,一方面要改进算法本身,提高运算速度,另一方面就是在不影响签名安全的前提下,改进数字签名方案。

  1. 总结

身份信息验证能够帮助用户判断通信的另一端是否是自己的通信目标,从而避免对方是由他人伪造和冒充等情况发生。身份认证不仅是网络安全的重要机制之一,也是网络安全的核心要素。在一个安全可信的网络通讯环境中,涉及到的所有通讯的各方都需要通过使用一种特定的形式上的用户身份验证的机制来进一步证实它们各自的合法身份,证实用户合法的真实身份信息与其所声称得到的信息是否完全相符,从而才可以有效进行各种针对各种不同类型用户通信的安全访问管理。这里所提供的是基于ELGama一数字签名技术的身份验证模式方案结合了密码学技术,并且它是一个采用了一个更有效、较高可靠度的基于ELGamal数字签名技术方法实现的身份信息验证模块,虽然在理论分析上,它是安全的,可以防止很多种攻击,并且也由于在使用该验证方法过程中也降低使用了类似的方法在ELGamal签名过程中产生的模逆运算的次数,因此也使得在身份验证的过程中同样也大幅降低产生了的模逆运算次数,使得该验证方法的安全有效性也有所增强,不过在其具体的实施验证过程中也同样还是会面临着不少问题。

7.参考文献

[1] https://www.sohu.com/a/164065742_99973808 河南盛世九久科技. 网络安全形势严峻 加强网络身份认证体系势在必行 .2017-8-12

[2] https://blog.csdn.net/wowotuo/article/details/82825427 songroom. 网络安全之身份认证 2018-9-23

[3] 卢开澄.计算机密码学.计算机网络中的数据保密与安全.清华大学出版社.1998

[4] 朱余文,孙琉.计算机密码应用基础.北京.科学出版社.2000

[5] 陈勤.数字签名算法的比较及其应用.计算机应用研究.1999

[6] 唐韶华等.基于Elgamal数字签名的用户鉴别方案.计算机工程.2000

[7] 陈卫.基于改进型Elgamal数字签名的身份认证研究与设计.合肥工业大学.2004-5-1

 

posted @ 2022-06-18 21:30  静?  阅读(92)  评论(0编辑  收藏  举报