ESMTP身份验证的机制

ESMTP身份验证的机制
ESMTP身份验证的机制

ESMTP身份验证的机制有很多种,最常见的是LOGIN机制,类似于POP3的身

份验证方式,即分两步输入账号和密码。在所有的验证机制中,信息全部采用

Base64编码。

例如,用https://www.360docs.net/doc/a18140570.html,邮件服务器发送邮件,从开始连接到身份验证的过程如

下(红色和蓝色分别代表客户端和服务器):

(连接到https://www.360docs.net/doc/a18140570.html,:25)

220sp1ESMTPv2.1

EHLOABCDEFG

https://www.360docs.net/doc/a18140570.html,

250-PIPELINING

250-SIZE20480000

250-ETRN

250-AUTHLOGINPLAINDIGEST-MD5CRAM-MD5(支持的身份验证机制种

类:LOGIN,PLAIN等)

2508BITMIME

AUTHLOGIN

334VXNlcm5hbWU6(Base64解码后:Username:)

Ymh3YW5n(Base64编码前:bhwang)

334UGFzc3dvcmQ6(Base64解码后:Password:)

bXlwYXNzd29yZCFteXBhc3N3b3JkISE=(Base64编码前:********)

235Authenticationsuccessful

另外一种较常见的机制是PLAIN。与LOGIN机制的不同之处在于一次性输入账号

和密码,格式为“账号密码”,其中为字节0。用PLAIN机制

代替上面的身份验证过程:

AUTHPLAIN

334

AGJod2FuZwBteXBhc3N3b3JkIW15cGFzc3dvcmQhIQ==(Base64编码

前:bhwang********)

235Authenticationsuccessful

有的ESMTP服务器,例如采用CoreMail系统的

https://www.360docs.net/doc/a18140570.html,,https://www.360docs.net/doc/a18140570.html,,https://www.360docs.net/doc/a18140570.html,,https://www.360docs.net/doc/a18140570.html,等,不回复334代

码行,客户端在输入AUTHPLAIN后,直接输入符合格式要求的账号和密码即可。LOGIN和PLAIN机制没有对账号和密码进行加密,相当于明文传输,Base64编

码只是一层纸而已。DIGEST-MD5,CRAM-MD5,GSSAPI,KERBEROS_V4等身份

验证机制能够加密传输内容。

SMTP(Simple Mail TransferProtocol)即简单邮件传输协议,它是一组用于由

源地址到目的地址传送邮件的规则,或

者说是由它来控制信件传输的一种中转

方式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时

找到下一个目的地。通过SMTP协议所指定的服务器,我们就可以把Email寄到收信人的服务器上了,整个过程只要

几分钟。SMTP服务器则是遵循SMTP

协议的发送邮件服务器,用来发送或中

转电子邮件。

SMTP的开发最初是为了在封闭的

网络中传送相对来说不太重要的简短邮

件,而不是为了在互联网中传送重要而敏感的信息,因此最初通过SMTP传输邮件时,安全性不高。

SMTP协议常用命令集

1.SMTP是工作在两种情况下:一是电子邮件从客户机传输到服务器;二是从某一个服务器传输到另一个服务器

2.SMTP是个请求/响应协议,命令和响应都是基于ASCII文本,并以CR和LF符结束。响应包括一个表示返回状态的三位数字代码

3.SMTP在TCP协议25号端口监听连接请求

4.连接和发送过程:

a.建立TCP连接

b.客户端发送HELO命令以标识发件人自己的身份,然后客户端发送MAIL命令服务器端正希望以OK作为响应,表明准备接收

c.客户端发送RCPT命令,以标识该电子邮件的计划接收人,可以有多个RCPT 行服务器端则表示是否愿意为收件人接受邮件

d.协商结束,发送邮件,用命令DATA发送

e.以.表示结束输入内容一起发送出去

f.结束此次发送,用QUIT命令退出。

5.另外两个命令:

VRFY---用于验证给定的用户邮箱是否存在,以及接收关于该用户的详细信息。EXPN---用于扩充邮件列表。

6.邮件路由过程:

SMTP服务器基于…域名服务DNS中计划收件人的域名来路由电子邮件。SMTP服务器基于DNS中的MX记录来路由电子邮件,MX记录注册了域名和相关的SMTP中继主机,属于该域的电子邮件都应向该主机发送。

若SMTP服务器https://www.360docs.net/doc/a18140570.html,收到一封信要发到mail@https://www.360docs.net/doc/a18140570.html,:

a.Sendmail请求DNS给出主机https://www.360docs.net/doc/a18140570.html,的CNAME记录,如有,假若CNAME到https://www.360docs.net/doc/a18140570.html,,则再次请求https://www.360docs.net/doc/a18140570.html,的CNAME记录,直到没有为止

b.假定被CNAME到https://www.360docs.net/doc/a18140570.html,,然后sendmail请求@ab

https://www.360docs.net/doc/a18140570.html,域的DNS给出https://www.360docs.net/doc/a18140570.html,的MX记录

shmail https://www.360docs.net/doc/a18140570.html,

https://www.360docs.net/doc/a18140570.html,

c.Sendmail最后请求DNS给出https://www.360docs.net/doc/a18140570.html,的A记录,即IP地址,若返回值为1.2.3.4

d.Sendmail与1.2.3.4连接,传送这封给mail@https://www.360docs.net/doc/a18140570.html,的信到1.2.3.4这台服务器的SMTP后台程序

7.SMTP基本命令集:

命令描述

------------------------------

HELO向服务器标识用户身份发送者能欺骗,说谎,但一般情况下服务器都能检测到。

MAIL初始化邮件传输

mail form :

RCPT标识单个的邮件接收人;常在MAIL命令后面可有多个rcpt to:

DATA在单个或多个RCPT命令后,表示所有的邮件接收人已标识,并初始化数据传输结束。

VRFY用于验证指定的用户/邮箱是否存在;由于安全方面的原因,服务器常禁止此命令

EXPN验证给定的邮箱列表是否存在,扩充邮箱列表,也常被禁用HELP查询服务器支持什么命令

NOOP无操作,服务器应响应OK

QUIT结束会话

RSET重置会话,当前传输被取消

--------------------------------

8.MAIL form 命令中指定的地址是称作envelope form地址,不需要和发送者自己的地址是一致的。

RCPT TO与之等同,指明的接收者地址称为envelope to地址,而与实际的to:行是什么无关。

9.为什么没有RCPT CC和RCPT BCC:?

所有的接收者协商都通过RCPT TO命令来实现,如果是BCC,则协商发送后在对方接收时被删掉信封接收者

10.邮件被分为信封部分,信头部分和信体部分

envelope form ,envelope to与message form:,message to:完全不相干。

evnelope是由服务器主机间SMTP后台提供的,而message form /to是

由用户提供的。有无冒号也是区别。

11.怎样由信封部分检查是否一封信是否是伪造的?

a.received行的关联性。

现在的SMTP邮件传输系统,在信封部分除了两端的内部主机处理的之个,考虑两个公司防火墙之间的部分,若两台防火墙机器分别为A和B,但接收者检查信封received:行时发现经过了C.则是伪造的。

b.received:行中的主机和IP地址对是否对应如:

Receibed:form https://www.360docs.net/doc/a18140570.html,(https://www.360docs.net/doc/a18140570.html,[104.128.23.115]by https://www.360docs.net/doc/a18140570.html,....

c.被人手动添加在最后面的received行:

Received:form https://www.360docs.net/doc/a18140570.html,([104.128.23.115])by

https://www.360docs.net/doc/a18140570.html,(8.8.5)

Received:form https://www.360docs.net/doc/a18140570.html, by https://www.360docs.net/doc/a18140570.html,(8.7.3)

Received:form https://www.360docs.net/doc/a18140570.html, by https://www.360docs.net/doc/a18140570.html,(8.6.4)

POP3命令列表:

一般telnet pop3Server110后就可以用这些命令了,大小写不敏感,不包括口令本身,注意不要让口令回显,等验证通过后再允许回显好了。

user username 认可

pass password 认可执行成功则状态转换

apop name,digest 认可一种安全传输口令的办法,执行成功导致状态转换,请参

见RFC 1321

stat 处理请求server回送邮箱统计资料,如邮件数、邮件总字节数

uidl n 处理 server返回用于该指定邮件的唯一标识,如果没有指定,返回所有的

list n 处理 server返回指定邮件的大小等

retr n 处理 server返回邮件的全部文本

dele n 处理 server标记删除,quit命令执行时才真正删除

rset 处理撤消所有的dele命令

top n,m 处理返回n号邮件的前m行内容,m必须是自然数

noop 处理 server返回一个肯定的响应

quit client希望结束会话。如果server处于'处理'状态,则现在进入'更新'状态,删

除那些标记成删除的邮件。如果server处于'认可'状态,则结束会话时server不进

入'更新'状态

关于apop命令

如果client使用user命令,口令将是明文。使用apop命令时,client第一次与server连接时,server向client发送一个ascii码问候,该问候由一个字符串组成,

它对于每个client的连接都是唯一的,client把它的纯文本口令附加到从server接收到的字符串之后,然后计算结果字符串的MD5摘要,client把username和MD5摘要作为apop命令的参数一起发送出去。

telnet pop3Server 110

user username

pass ****

stat

list

retr 1

retr 2

...

dele 1

dele 2

...

quit

SMTP 命令简介

什么是 SMTP

SMTP (Simple Mail Transfer Protocol) :电子邮件从客户机传输到服务器或从某一个服务器传输到另一个服务器使用的传输协议。 SMTP 是请求/响应协议,命令和响应都是基于ASCII 文本,并以 CR 和 LF 符结束。响应包括一个表示返回状态的三位数字代码。SMTP 在 TCP 协议 25端口监听连接请求。

什么是 ESMTP

ESMTP (Extended SMTP),顾名思义,扩展 SMTP 就是对标准 SMTP 协议进行的扩展。它与 SMTP服务的区别仅仅是,使用 SMTP 发信不需要验证用户帐户,而用 ESMTP发信时,服务器会要求用户提供用户名和密码以便验证身份。验证之后的邮件发送过程与 SMTP 方式没有两样。

SMTP 命令

SMTP 命令包括:

HELO 向服务器标识用户身份。发送者能欺骗,说谎,但一般情况下服务器都能检测到。

EHLO 向服务器标识用户身份。发送者能欺骗,说谎,但一般情况下服务器都能检测到。

MAIL FROM 命令中指定的地址是发件人地址

RCPT TO 标识单个的邮件接收人;可有多个 RCPT TO;常在 MAIL 命令后面。DATA 在单个或多个 RCPT 命令后,表示所有的邮件接收人已标识,并初始化数据传输,以 CRLF.CRLF 结束

VRFY 用于验证指定的用户/邮箱是否存在;由于安全方面的原因,服务器常禁止此命令

EXPN 验证给定的邮箱列表是否存在,扩充邮箱列表,也常被禁用

HELP 查询服务器支持什么命令

NOOP 无操作,服务器应响应 OK

RSET 重置会话,当前传输被取消

QUIT 结束会话

连接 Winmail Server 使用 SMTP 命令发送邮件

例如:安装 Winmail 的邮件服务器IP是192.168.0.1 (蓝色字体内容由客户端输入,红色字体内容是服务返回的)

telnet 192.168.0.1 25--------------------------------------- 使用 telnet 命令连接服务器25端口

Trying 192.168.0.1...--------------------------------------- 正在连接服务器 25 端口Connected to 192.168.0.1.----------------------------------- 连接服务器 25 端口成功220 Winmail Mail Server ESMTP ready------------------------- 显示服务器的标识名称(Winmail管理工具->高级设置->系统参数->基本参数中可更改)

helo https://www.360docs.net/doc/a18140570.html,------------------------------------------------向服务器标识用户身份,发信不要认证,跳过下面几步直接发送 mail from 命令

250 Winmail Mail Server

ehlo https://www.360docs.net/doc/a18140570.html,------------------------------------------------ ESMTP命令,发信需要认证。250-Winmail Mail Server

250-PIPELINING

250-AUTH=LOGIN PLAIN

250-AUTH LOGIN PLAIN

250-SIZE 20480000

250 8BITMIME

auth login------------------------------------------------- 进行用户身份认证

334 VXNlcm5hbWU6

Y29zdGFAYW1heGl0Lm5ldA==----------------------------------- BASE64 加密后的用户名

334 UGFzc3dvcmQ6

MTk4MjIxNA==----------------------------------------------- BASE64 加密后的密码

235 auth successfully-------------------------------------- 身份认证成功

(535 auth failure------------------------------------------ 身份认证失败)

发到本系统中域名下的账户可跳过身份认证。

mail from:------------------------------ mail from 地址

test1@https://www.360docs.net/doc/a18140570.html,

250 ok----------------------------------------------------- 命令执行成功

rcpt to:-------------------------------- 递送给地址

test2@https://www.360docs.net/doc/a18140570.html,

250 ok----------------------------------------------------- 命令执行成功

data-------------------------------------------------------数据传输初始化

354 go ahead----------------------------------------------- 开始传输数据

From: test1@https://www.360docs.net/doc/a18140570.html,

To: test2@https://www.360docs.net/doc/a18140570.html,

Date: Mon, 25 Oct 2004 14:24:27 +0800

Subject: test mail

Hi, test2

This is a test mail, you don't reply it.

.

------------------------------------------------------------数据内容,包括BASE64加密后的邮件内容, 以 CRLF.CRLF 结束数据传输

250 ok message accepted for delivery----------------------- 命令执行成功

quit------------------------------------------------------- 结束会话

221 Winmail MailServer

Connection closed by foreign host.------------------------- 断开连接

SMTP示例:

5.2.MailForwarding

https://www.360docs.net/doc/a18140570.html,.example

account,theSMTPsessionfromherSUBMITservermightlooksomething

likethis:

S:https://www.360docs.net/doc/a18140570.html,.exampleESMTPserverready

C:https://www.360docs.net/doc/a18140570.html,

S:https://www.360docs.net/doc/a18140570.html,.example

S:250-DSN

S:250-AUTH

S:250-SUBMITTER

S:250SIZE

C:MAILFROM:SUBMITTER=alice@https://www.360docs.net/doc/a18140570.html,

S:250senderok

C:RCPTTO:

S:250recipientok

C:DATA

S:354okay,sendmessage

C:(messagebodygoeshere)

C:.

S:250messageaccepted

C:QUIT

S:221goodbye

https://www.360docs.net/doc/a18140570.html,.exampleMTAmustnowforwardthismessageto

bob@https://www.360docs.net/doc/a18140570.html,.example.Althoughtheoriginalsenderofthemessage

isalice@https://www.360docs.net/doc/a18140570.html,,Aliceisnotresponsibleforthismostrecent retransmissionofthemessage.Thatroleisfilledby

bob@https://www.360docs.net/doc/a18140570.html,.example,whoestablishedtheforwardingofmailto

bob@https://www.360docs.net/doc/a18140570.html,.example.Therefore,https://www.360docs.net/doc/a18140570.html,.exampleMTA determinesanewpurportedresponsibleaddressforthemessage,

namely,bob@https://www.360docs.net/doc/a18140570.html,.example,andsetstheSUBMITTERparameter accordingly.TheforwardingMTAalsoinsertsaResent-Fromheaderin themessagebodytoensurethepurportedresponsibleaddressderived fromtheRFC2822headersmatchestheSUBMITTERaddress.

S:https://www.360docs.net/doc/a18140570.html,.exampleESMTPserverready

C:https://www.360docs.net/doc/a18140570.html,.example

S:https://www.360docs.net/doc/a18140570.html,.example

S:250-DSN

S:250-AUTH

S:250-SUBMITTER

S:250SIZE

C:MAILFROM:

SUBMITTER=bob@https://www.360docs.net/doc/a18140570.html,.example

S:250senderok

C:RCPTTO:

S:250recipientok

C:DATA

S:354okay,sendmessage

C:Resent-From:bob@https://www.360docs.net/doc/a18140570.html,.example

C:ReceivedBy:...

C:(messagebodygoeshere)

C:.

S:250messageaccepted

C:QUIT

S:221goodbye

5.3.MobileUser

Aliceisattheairportanduseshermobilee-maildevicetosenda messagetoBob.Themessagetravelsthroughthecarriernetwork https://www.360docs.net/doc/a18140570.html,.example,https://www.360docs.net/doc/a18140570.html, addressontheFromlineofallhermessagessothatrepliesgoto herofficemailbox. HereisanexampleoftheSMTPsessionbetweentheMTAsat

https://www.360docs.net/doc/a18140570.html,.example.

S:https://www.360docs.net/doc/a18140570.html,.exampleESMTPserverready

C:https://www.360docs.net/doc/a18140570.html,.example

S:https://www.360docs.net/doc/a18140570.html,.example

S:250-DSN

S:250-AUTH

S:250-SUBMITTER

S:250SIZE

C:MAILFROM:

SUBMITTER=alice@https://www.360docs.net/doc/a18140570.html,.example

S:250senderok

C:RCPTTO:

S:250recipientok

C:DATA

S:354okay,sendmessage

C:Sender:alice@https://www.360docs.net/doc/a18140570.html,.example

C:ReceivedBy:...

C:(messagebodygoeshere)

C:.

S:250messageaccepted

C:QUIT

S:221goodbye

https://www.360docs.net/doc/a18140570.html,.exampleusestheSUBMITTERparameterto designatealice@https://www.360docs.net/doc/a18140570.html,.exampleastheresponsiblesubmitterfor thismessage.Further,thisMTAalsoinsertsaSenderheaderto ensurethepurportedresponsibleaddressderivedfromtheRFC2822 headersmatchestheSUBMITTERaddress.

Likewise,conventionalISPsmayalsochoosetousetheSUBMITTER parametertodesignateastheresponsi blesubmittertheuser?s addressontheISP?snetworkifthataddressisdifferentfromthe MAILFROMaddress.ThismaybeespeciallyusefulforISPsthathost multipledomainsorotherwiseshareMTAsamongmultipledomains. Whenthemessageissubsequentlyforwardedbythe

https://www.360docs.net/doc/a18140570.html,.exampleMTA,thatMTAwillreplacetheSUBMITTER parameterwithbob@https://www.360docs.net/doc/a18140570.html,.exampleasinSection5.2andadd itsownResent-Fromheader.

5.4.GuestE-MailService

Whileonabusinesstrip,Aliceusesthebroadbandaccessfacilities providedbytheExemplarHoteltoconnecttotheInternetandsend

e-mail.Thehotelroutesalloutbounde-mailthroughitsownSMTP server,https://www.360docs.net/doc/a18140570.html,.example.

TheSMTPsessionforAlice?smessagetoBobfromtheExemplarHotel wouldlooklikethis:

S:https://www.360docs.net/doc/a18140570.html,.exampleESMTPserverready

C:https://www.360docs.net/doc/a18140570.html,.example

S:https://www.360docs.net/doc/a18140570.html,.example

S:250-DSN

S:250-AUTH

S:250-SUBMITTER

S:250SIZE

C:MAILFROM:

SUBMITTER=guest.services@https://www.360docs.net/doc/a18140570.html,.example

S:250senderok

C:RCPTTO:

S:250recipientok

C:DATA

S:354okay,sendmessage

C:Resent-From:guest.services@https://www.360docs.net/doc/a18140570.html,.example

C:ReceivedBy:...

C:(messagebodygoeshere)

C:.

S:250messageaccepted

C:QUIT

S:221goodbye

https://www.360docs.net/doc/a18140570.html,.exampleusestheSUBMITTERparameterto designateagenericaccountguest.services@https://www.360docs.net/doc/a18140570.html,.exampleas theresponsiblesubmitteraddressforthismessage.Ageneric accountisusedsinceAliceherselfdoesnothaveanaccountatthat domain.Furthermore,thisclientalsoinsertsaResent-Fromheader toensurethepurportedresponsibleaddressderivedfromtheRFC2822 headerswiththeSUBMITTERaddress.

Asbefore,whenthemessageissubsequentlyforwardedbythe https://www.360docs.net/doc/a18140570.html,.exampleMTA,thatMTAwillreplacetheSUBMITTER parameterwithbob@https://www.360docs.net/doc/a18140570.html,.exampleasinSection5.2andadd itsownResent-Fromheader.

5.5.SUBMITTERUsedonaNon-DeliveryReport Alicesendsanincorrectlyaddressede-mailmessageandreceivesa

non-deliveryreportfromaSUBMITTER-compliantserver.

S:https://www.360docs.net/doc/a18140570.html,ESMTPserverready

C:https://www.360docs.net/doc/a18140570.html,.example

S:https://www.360docs.net/doc/a18140570.html,

S:250-DSN

S:250-AUTH

S:250-SUBMITTER

S:250SIZE

C:MAILFROM:<>SUBMITTER=mailer-daemon@https://www.360docs.net/doc/a18140570.html,.example

S:250OK

C:RCPTTO:

S:250OK

C:DATA

S:354OK,sendmessage

C:(messagebodygoeshere)

C:.

S:250messageaccepted

C:QUIT

S:221goodbye

SMTP协议在发送SMTP和接收SMTP之间的会话是靠发送SMTP的SMTP命令和接收SMTP反馈的应答来完成的。在通讯链路建立后,发送SMTP发送MAIL 命令指令邮件发送者,若接收SMTP此时可以接收邮件则作出OK的应答,然后发送SMTP继续发出RCPT命令以确认邮件是否收到,如果接收到就作出OK的应答,否则就发出拒绝接收应答,但这并不会对整个邮件操作造成影响。双方如此反复多次,直至邮件处理完毕。SMTP协议共包含10个SMTP命令,列表如下:

SMTP命令说明

HELLO<domain><CRLF>识别发送方到接收SMTP的一个HELLO命令

MAILFROM:<reverse-path><CRLF><reverse-path>为发送者地址。此命令告诉接收方一个新邮件发送的开始,并对所有的状态和缓冲区进行初始化。此命令开始一个邮件传输处理,最终完成将邮件数据传送到一个或多个邮箱中。

RCPTTO:<forward-path><CRLF><forward-path>标识各个邮件接收者的地址

DATA<CRLF>

接收SMTP将把其后的行为看作邮件数据去处理,以<CRLF>.<CRLF>标识数据的结尾。

REST<CRLF>退出/复位当前的邮件传输

NOOP<CRLF>要求接收SMTP仅做OK应答。(用于测试)

QUIT<CRLF>要求接收SMTP返回一个OK应答并关闭传输。

VRFY<string><CRLF>验证指定的邮箱是否存在,由于安全因素,服务器多禁止此命令。

EXPN<string><CRLF>验证给定的邮箱列表是否存在,扩充邮箱列表,也常禁止使用。

HELP<CRLF>查询服务器支持什么命令

注:<CRLF>为回车、换行,ASCII码分别为13、10(十进制)。

SMTP协议的每一个命令都会返回一个应答码,应答码的每一个数字都是有特定含义的,如第一位数字为2时表示命令成功;为5表失败;3表没有完成。一些较复杂的邮件程序利用该特点,首先检查应答码的首数字,并根据其值来决定下一步的动作。下面将SMTP的应答码列表如下:

应答码说明

501参数格式错误

502命令不可实现

503错误的命令序列

504命令参数不可实现

211系统状态或系统帮助响应

214帮助信息

220<domain>服务就绪

221<domain>服务关闭

421<domain>服务未就绪,关闭传输信道

250要求的邮件操作完成

251用户非本地,将转发向<forward-path>

450要求的邮件操作未完成,邮箱不可用

550要求的邮件操作未完成,邮箱不可用

451放弃要求的操作;处理过程中出错

551用户非本地,请尝试<forward-path>452系统存储不足,要求的操作未执行

552过量的存储分配,要求的操作未执行553邮箱名不可用,要求的操作未执行

354开始邮件输入,以"."结束

554操作失败

身份认证和访问控制实现原理

身份认证和访问控制实现原理 身份认证和访问控制的实现原理将根据系统的架构而有所不同。对于B/S架构,将采用利用Web服务器对SSL(Secure Socket Layer,安全套接字协议)技术的支持,可以实现系统的身份认证和访问控制安全需求。而对于C/S架构,将采用签名及签名验证的方式,来实现系统的身份认证和访问控制需求。以下将分别进行介绍: 基于SSL的身份认证和访问控制 目前,SSL技术已被大部份的Web Server及Browser广泛支持和使用。采用SSL技术,在用户使用浏览器访问Web服务器时,会在客户端和服务器之间建立安全的SSL通道。在SSL会话产生时:首先,服务器会传送它的服务器证书,客户端会自动的分析服务器证书,来验证服务器的身份。其次,服务器会要求用户出示客户端证书(即用户证书),服务器完成客户端证书的验证,来对用户进行身份认证。对客户端证书的验证包括验证客户端证书是否由服务器信任的证书颁发机构颁发、客户端证书是否在有效期内、客户端证书是否有效(即是否被窜改等)和客户端证书是否被吊销等。验证通过后,服务器会解析客户端证书,获取用户信息,并根据用户信息查询访问控制列表来决定是否授权访问。所有的过程都会在几秒钟内自动完成,对用户是透明的。 如下图所示,除了系统中已有的客户端浏览器、Web服务器外,要实现基于SSL的身份认证和访问控制安全原理,还需要增加下列模块: 基于SSL的身份认证和访问控制原理图 1.Web服务器证书 要利用SSL技术,在Web服务器上必需安装一个Web服务器证书,用来表明服务器的身份,并对Web服务器的安全性进行设置,使能SSL功能。服务器证书由CA 认证中心颁发,在服务器证书内表示了服务器的域名等证明服务器身份的信息、Web 服务器端的公钥以及CA对证书相关域内容的数字签名。服务器证书都有一个有效 期,Web服务器需要使能SSL功能的前提是必须拥有服务器证书,利用服务器证书 来协商、建立安全SSL安全通道。 这样,在用户使用浏览器访问Web服务器,发出SSL握手时,Web服务器将配置的服务器证书返回给客户端,通过验证服务器证书来验证他所访问的网站是否真

身份认证技术的发展与展望

身份认证技术的发展与展望 Internet迅猛发展带来了信息共享与安全这对矛盾共同体,加强网络安全建设、保障网络的安全运行成为网络存在的根本之道。网络身份认证技术发展到今天已经成为信息管理系统中必不可少的一部分,扮演着网络系统“看门人”的角色。 针对不同的安全威胁,目前存在多种主机安全技术和相关安全产品,如防病毒技术、个人防火墙、安全应用程序(如文件加密程序)、安全操作系统等。这些技术和产品在一定程度上满足人们的安全需求,却没有很好地解决以下两个问题: (1)系统访问,即开机时的保护问题,目前普遍采用的是基于口令的弱身份认证技术,很容易被攻破而造成泄密; (2)运行时保护,即在合法用户进入系统后因某种原因暂时离开计算机,此时任何人员均可在此系统之上进行操作,从而造成泄密。

将密码写在记事本上挂在电脑旁边,这样的事情相信很多公司的员工都曾经为之。出于安全的要求,现在公司的安全策略普遍要求员工的登陆密码要定期更换,而且不能重复,这使得想出一个自己能记住的长串密码成为一件让员工头疼的事情。为了便于记忆,员工往往会选择常用词或者号码作为密码,如果攻击者使用“字典攻击法”或者穷举尝试法来破译,很容易被穷举出来。传统的账号加密码的形式,账号基本上都是公开的,密码容易被猜中,容易忘记,也容易被盗。据统计,一个人平均下来要记15到20个密码。静态密码的隐患显而易见,尤其是在证券、银行等行业,轰动一时的“银广夏盗卖案”早就为业界敲响了警钟。 为了解决静态密码的安全问题,一种方式是同一个人员使用不同的密码进入不同的应用系统,避免所有的鸡蛋都在一个篮子里面的问题,然而需要记忆多个密码;第二种方式,采用软件VPN方式,登陆前先要使用VPN连接,这样可以面向一部分机器开放,但是第一次使用时下载VPN软件,每次访问

身份认证技术分析

JIANGSU UNIVERSITY 信息安全 身份认证技术分析 姓名: 学院: 专业班级: 学号: 二〇一一年十二月

摘要:本文总结并分析了身份认证的理论和应用,列举了一些对身份认证的攻击方法,并根据课堂学习和课后阅读,自己设计了一个利用数字签名实现的简单的身份认证方案。认证技术是信息安全中的一个重要内容,在“网络与信息安全”课程中我们学习了两种认证技术:消息认证与身份认证,消息认证用于保证信息的完整性与抗否认性,身份认证则用于鉴别用户身份。在网上商务日益火爆的今天,从某种意义上说,认证技术可能比信息加密本身更加重要。因为,很多情况下用户并不要求购物信息保密,只要确认网上商店不是假冒的(这就需要身份认证),自己与网上商店交换的信息未被第三方修改或伪造,并且网上商家不能赖帐(这就需要消息认证),商家也是如此。由于认证技术是一项包含很广泛的技术,集中于某一方面可能更有针对性,所以,在这篇论文中我没有涉及消息认证技术。运用课堂学到的理论、课后阅读获得的知识根据自己的分析,我对身份认证技术作了总结分类,并针对每一种认证技术分析了优点和漏洞,然后剖析了一些应用,最后提出了自己想到的一个简单的利用数字签名实现的身份认证方案。本文综合评价了某些认证机制和方案的优劣,并分析了身份认证的理论和应用,列举了一些对身份认证的各种实现方法、技术现状及发展趋势,同时设计了一个利用数字签名实现的简单的身份认证方案。 关键词:身份认证技术分析比较运用信息安全加密 身份认证系统的组成:出示证件的人,称作示证者P(Prover),又称声称者(Claimant)。验证者V(Verifier),检验声称者提出的证件的正确性和合法性,决定是否满足要求。第三方是可信赖者TP(Trusted third party),参与调解纠纷。在许多应用场合下没有第三方。 身份认证的物理基础:标识与认证是计算机网络系统中进行身份认证(主体识别)的基础,可识别用户身份、设备真伪。标识与认证是身份认证的两个部分。标识——用来表明用户的身份,确保用户在系统中的唯一性,可辨认性。以用户名+标识符ID来标明公开的明码信息 认证——对用户身份的真实性进行鉴别。认证信息不公开,难以仿造。认证信息有口令(密码);指纹;视网膜;智能IC卡等,声波等。 身份认证方式:单向认证(One-way Authentication)双向认证(Two-way Authentication)信任的第三方认证(Trusted Third-party Authentication)。随着网络时代的到来,人们可以通过网络得到各种各样的信息。但由于网络的开放性,它正面临着如计算机病毒、人为的恶意攻击、网络软件的漏洞和“后门”、非授权访问等安全威胁。因此,网络安全越来越受到重视。作为网络安全的第一道防线,亦即是最重要的一道防线,身份认证技术受到普遍关注。 一、基于秘密信息的身份认证方法口令核对 口令核对是系统为每一个合法用户建立一个用户名/口令对,当用户登录系统或使用某项功能时,提示用户输入自己的用户名和口令,系统通过核对用户输入的用户名、口令与系统内已有的合法用户的用户名/口令对(这些用户名/口令对在系统内是加密存储的)是否匹配,如与某一项用户名/口令对匹配,则该用户的身份得到了认证。 缺点:其安全性仅仅基于用户口令的保密性,而用户口令一般较短且是静态数据,容易猜测,且易被攻击,采用窥探、字典攻击、穷举尝试、网络数据流窃听、重放攻击等很容易攻破该认证系统。 2、单向认证

身份认证

身份认证 身份认证是在计算机网络中确认操作者身份的过程。身份认证可分为用户与主机间的认证和主机与主机之间的认证,下面主要介绍用户与主机间的身份认证。 在真实世界,对用户的身份认证基本方法可以分为这三种: (1) 根据你所知道的信息来证明你的身份(你知道什么) :例如口令、密码等; (2) 根据你所拥有的东西来证明你的身份(你有什么) :例如印章、智能卡等; (3) 直接根据独一无二的身体特征来证明你的身份(你是谁) ,比如指纹、声音、视网膜、签字、笔迹等等。 在网络世界中手段与真实世界中一致,为了达到更高的身份认证安全性,某些场景会将上面3种挑选2中混合使用,即所谓的双因素认证。 以下罗列几种常见的认证形式: 1.口令 1.1静态口令 1.1.1 简单静态口令 用户的口令由自己设定,当被认证对象要求访问服务系统时,提供服务的认证方要求被认证对象提交其口令,认证方收到口令后,与系统中存储的用户口令进行比较,以确认被认证对象是不是合法访问者。 这种方法的优点是:一般的系统(如UNIX, Windows NT,NetWare等)都提供了对口令认证的支持,对于封闭的小型系统来说不失为一种简单可行的方法。 然而,基于口令的认证方法存在下列不足: 1)用户每次访问系统时都要以明文方式输入口令,容易泄密。 2)口令在传输过程中可能被截获。 3)用户访问多个不同安全级别的系统时,都要求用户提供口令,用户为了记忆方便,往往采用相同的口令。 1.1.2 使用消息摘要算法的口令认证 认证过程: (1)存储用户ID和对应的口令摘要值在服务器数据库中; (2)当进行认证时,用户输入ID和口令,口令会在客户端上被计算出摘要值; (3)用户ID和摘要结果会被传输到服务器端进行认证; (4)服务器接收到用户ID和摘要结果后,认证程序会到数据库中根据用户ID获取已存储的相应的口令摘要,两个摘要比较的结果会返回到客户端通知用户认证成功与否。 缺点:因为相同口令的摘要值始终是一样的,但是为了防止重放攻击,应当保证客户端和服务器端的交换信息任何两次都是不同的,这就需要使用随机数技术来解决这个问题。 1.1.3 使用随机数的口令认证 认证过程: (1)存储用户ID和对应的口令摘要值在服务器数据库中; (2)用户输入ID,客户端将上传用户ID; (3)服务器在收到用户的认证请求,即仅包含用户ID的信息以后,认证程序检查ID是否已在数据库中注册,如果没有,将发送相应的错误信息给客户端。如果有,服务器将生成一个随机数以明文的形式回送到客户端; (4)客户端显示输入口令的用户界面,用户输入口令以后,口令会在客户端上被计算出摘要值。这个摘要值将作为密钥用于加密收到的随机数,加密采用对称算法; (5)服务器端接收到用随机数加密的口令摘要密文后,认证程序可以通过用户ID查找到对应存储在数据库中的口令摘要,用口令摘要解密收到的密文,解出的明文如果和数据库中存储的随机数一致,则认证通过; (6)服务器端将认证成功或失败的结果返回给客户端,完成身份认证。 静态口令认证的缺点:为了提高安全性,专门制定了口令政策以约束最终的用户,比如:口令长度至少8位;不能包含空格;口令必须以字母开头。这种方式可以有效地防范黑客的字典攻击,然而,这无疑增加了最终用户记忆口令的难度,致使很多人把复杂的口令记录在各种不安全的地方。因此有人提出了动态口令。

XX系统身份认证方案2001

XX信息网络 身份认证系统设计方案 1.系统建设的目标 XX信息系统是重要的涉密计算机信息系统,因此其对安全保密的要求非常高,在有必要对该系统的身份认证机制采用强化措施。 XX系统安全方案的目的是:解决①用户口令、数据通过网络时容易被截获、窃取、篡改的安全风险;②用户与涉密服务器在网上有可能无法正确确认对方的身份,从而被假冒访问的风险;③访问完成后用户的抵赖行为等安全危害。 XX系统安全方案的建设目标:是建立一个符合国家安全保密规定和技术要求、安全可靠、技术先进成熟、运行稳定、适用于多种运行环境的、统一的身份认证体系。 XX系统身份认证安全方案至少应可实现以下安全功能: ●强的身份认证、鉴别机制 ●数据处理、传输、访问的安全可信 ●数据处理、传输、访问的机密保护 ●数据处理、传输、访问的完整性 ●完善的安全审计功能 ●完善的CA证书及密钥管理

2.XX信息系统安全风险分析 建议在具体方案实施时,结合组织人事信息系统开发商、管理员一同进行。具体包括: 2.1系统安全风险分析 2.2系统安全需求分析 3.常见身份认证、鉴别技术简要介绍 3.1口令字 口令字是最常用且最经济的鉴别、认证方法,但口令字也是最不安全的方法,绝大部分的攻击都是从猜口令开始的,同时未经加密处理的口令字在传输过程中,也极易被截获,因而,口令字的身份认证机制对安全强度要求较高的系统是远远不够的。 3.2 IC卡 其基本原理是基于非对称加密体制,使用较低位RSA算法来实现的,因而其安全强度也不够高,且我国自身在IC方面自主技术还较落后,不可完全依赖IC卡来作为较强安全手段使用。 3.3动态口令(Sec ID) 动态口令牌,目前国内较多使用于银行等部门,且大部分是国外

身份认证技术与实现

身份认证技术与实现 为了确保通信机制的完整性和安全性,身份认证是首先要要完成的一项工作。身份认证机制可以的识别网络中各实体的真实身份,防止出现身份欺诈,保证参与通信的实体之间身份的真实性。下面就从身份认证的概念、意义及目前实现各种身份认证的技术这么三个大的方向来谈谈我对身份认证的认识。 一.身份认证的概念 身份认证就是系统审查用户身份的过程,从而来确定该用户是否有对某项资源的访问和使用权限。身份认证通过标识和鉴别用户的身份,提供一种判别确和认用户身份的机制。它是需要依赖于其他的技术,确认系统访问者的身份和权限,使计算机和网络的访问能够可靠、有效地执行,防止攻击者假冒合法用户获得资源的访问权限,从而保证了系统与数据的安全,以及授权访问者的合法利益。 计算机网络中的身份认证是通过将一个证据与实体身份绑定来实现的。实体包括用户、主机也可以是进程。证据与身份之间是一一对应的关系,双方通信过程中,一方实体想另一方实体提供这个证据来证明自己的身份,另一方通过相关机制来验证证据,确保实体与证据是否一致。 在验证的过程当中,我们常常有三种方式: (1)所知道的。根据用户所知道的某项信息来验证用户身份的真实性。 (2)所拥有的。根据用户所拥有的东西来验证用户身份的真实性。 (3)本身的特征。根据用户本身独一无二的特征来验证用户身份的真实性。 其中本身的特征是最具有安全保证的一种验证方式。其他的两种都是可以被伪造的,存在一定的不真实性和危险性。 二.实现身份认证的技术 就目前而言的身份认证技术,大体上可以分为两大类:生物身份认证技术和非生物身份技术。这两大类的认证技术相比较原来传统的认证技术而言具有很大的优势,它采用的我上述的第三种认证方式,它唯一而转悠的个人特点使得认证过程更具有安全保证和可靠性。下面我先来谈谈生物认证技术。 ①生物认证技术 生物认证技术的概念:通过计算机利用人体固有的胜利特征或行为特征来鉴别个人身份。利用了生物特征认证来替代密码认证。常用到的技术:指纹身份认证技术、视网膜身份认证技术、语音身份认证技术。 指纹身份认证技术:利用了人的指纹和掌纹作为合同签名的一种形式。现在广泛普及的指纹鉴定机构和指纹数据库更是扩大了指纹比对鉴定的运用。 指纹识别过程的实现:指纹注册过程和指纹比对过程。 这个图像是简易的描述了指纹身份认证的一般过程,上面两个大的方向走向,分别是事先采集指纹存档。后者是采集指纹与数据库信息比对,进行身份认证。

ESMTP身份验证的机制

ESMTP身份验证的机制有很多种,最常见的是LOGIN机制,类似于POP3的身 份验证方式,即分两步输入账号和密码。在所有的验证机制中,信息全部采用 Base64编码。 例如,用https://www.360docs.net/doc/a18140570.html,邮件服务器发送邮件,从开始连接到身份验证的过程如 下(红色和蓝色分别代表客户端和服务器): (连接到https://www.360docs.net/doc/a18140570.html,:25) 220sp1ESMTPv2.1 EHLOABCDEFG https://www.360docs.net/doc/a18140570.html, 250-PIPELINING 250-SIZE20480000 250-ETRN 250-AUTHLOGINPLAINDIGEST-MD5CRAM-MD5(支持的身份验证机制种 类:LOGIN,PLAIN等) 2508BITMIME AUTHLOGIN 334VXNlcm5hbWU6(Base64解码后:Username:) Ymh3YW5n(Base64编码前:bhwang) 334UGFzc3dvcmQ6(Base64解码后:Password:) bXlwYXNzd29yZCFteXBhc3N3b3JkISE=(Base64编码前:********) 235Authenticationsuccessful 另外一种较常见的机制是PLAIN。与LOGIN机制的不同之处在于一次性输入账号 和密码,格式为“账号密码”,其中为字节0。用PLAIN机制 代替上面的身份验证过程: AUTHPLAIN 334 AGJod2FuZwBteXBhc3N3b3JkIW15cGFzc3dvcmQhIQ==(Base64编码 前:bhwang********) 235Authenticationsuccessful 有的ESMTP服务器,例如采用CoreMail系统的 https://www.360docs.net/doc/a18140570.html,,https://www.360docs.net/doc/a18140570.html,,https://www.360docs.net/doc/a18140570.html,,https://www.360docs.net/doc/a18140570.html,等,不回复334代 码行,客户端在输入AUTHPLAIN后,直接输入符合格式要求的账号和密码即可。LOGIN和PLAIN机制没有对账号和密码进行加密,相当于明文传输,Base64编 码只是一层纸而已。DIGEST-MD5,CRAM-MD5,GSSAPI,KERBEROS_V4等身份 验证机制能够加密传输内容。

基于动态口令的身份认证机制及其安全性分析

一种基于动态口令的身份认证系统研究 傅德胜1,陈 昕2 (南京信息工程大学 计算机与软件学院, 江苏 南京 210044) 摘 要:身份认证在信息安全中起着非常重要的作用,建立安全的身份认证机制成为终端安全的关键之一。作为一种新型的认证模式,动态口令比传统的静态口令更加安全、可靠。本文阐述了动态口令的原理及现有动态口令方案的缺点,设计了一种新型的身份认证系统,并对其有效性进行了分析。 关键词:动态口令;身份认证;安全性 中图法分类号:TP309文献标识码: A A Study of Authentication System based on Dynamic Password FU De-sheng1, CHEN Xin2 (Department of Computer & software, Nanjing University of Information Science & Technology, Nanjing Jiangsu 210044, China) Abstract: Identity authentication plays a very important role in the system security, establishing a secure authentication mechanism becomes one of the keys in the terminal security. As a new mode of authentication,dynamic password is more secure and reliable than traditional static password. This paper describes the principle of dynamic password and disadvantages of the existing dynamic protocols,designs a new type of authentication system and analyzes the effectiveness of it. Key words: dynamic password; identity authentication; security 0 引言 身份认证是系统安全中最重要的问题,只有在进行安全可靠的身份认证的基础上,各种安全产品才能最有效地发挥安全防护作用;也只有完成了身份认证,网络系统才可能安全、高效地开放和共享各种网络资源、系统资源、信息资源。 目前大部分网络系统所使用的访问控制方法是传统的静态口令认证技术,通过用户名和口令的匹配来确认用户的合法性。但是,随着网络技术的进一步发展,以静态口令为基础的认证方式面临着很多的安全问题,渐渐无法满足用户的需求。动态口令的概念就是在这样的情况下产生的,它采用了基于同步或者异步方式而产生的一次性口令来代替传统的静态口令,从而避免了口令泄密带来的安全隐患。目前,基于动态口令的身份认证系统已应用在电子商务,电子政务,银行,证券等诸多领域。 1 传统的身份认证方式 传统的身份认证方式就是用户名口令核对法:系统为每一个合法用户建立一个ID/PW 对,当用户登录系统时,提示用户输入自己的用户名和口令,系统通过核对用户输入的用户名,口令与系统内已有的合法用户的ID/PW是否匹配,来验证用户的身份。 这种静态口令认证方式存在很多问题,最常见的是网络数据流窃听、截取/重放、暴力破解、窥探等攻击方式。静态口令的不安全因素是信息系统普遍存在的隐患。基于口令认证的身份鉴别的安全性成为信息安全中迫切需要解决的一个问题,动态口令认证方式应运而1傅德胜,男(1950--),教授,主要研究领域:信息安全 2陈昕,女(1984--),在读硕士研究生,主要研究领域:信息安全

身份认证方案

**部 身份认证规划方案

目录 第一章背景........................................错误!未定义书签。 1.1.信息系统现状................................ 错误!未定义书签。 ............................................ 错误!未定义书签。 应用系统................................... 错误!未定义书签。 目前现状................................... 错误!未定义书签。 1.2.**部安全需求................................ 错误!未定义书签。 1.3.要求........................................ 错误!未定义书签。 功能要求................................... 错误!未定义书签。 性能要求................................... 错误!未定义书签。第二章**部身份认证设计原则、设计依据和产品特点...错误!未定义书签。 2.1设计原则.................................... 错误!未定义书签。 2.2选用的身份认证产品特点和产品遵循的标准...... 错误!未定义书签。 2.3设计依据.................................... 错误!未定义书签。第三章**部身份认证系统的整体规划和部署............错误!未定义书签。 3.1 整体身份认证认证体系系统建设方案............ 错误!未定义书签。 ............................................ 错误!未定义书签。 3.1.2 **部证书类型和申请方式设计............ 错误!未定义书签。 3.1.3 证书申请流程.......................... 错误!未定义书签。 3.1.4 证书查询系统/认证服务器并发处理能力、证书验证和查询CRL 的时间...................................... 错误!未定义书签。第四章产品功能介绍和性能指标.......................错误!未定义书签。 4.1认证注册系统设计产品功能要求................ 错误!未定义书签。 4.1.1 密钥管理中心技术说明.................. 错误!未定义书签。 4.1.2 OCSP系统功能设计..................... 错误!未定义书签。 4.1.3 时间戳服务功能设计.................... 错误!未定义书签。 4.1.4 与其他CA认证中心的相互认证........... 错误!未定义书签。 ............................................ 错误!未定义书签。第五章身份认证与应用系统的结合.....................错误!未定义书签。

网络身份认证机制的分析与研究

宝鸡文理学院学报(自然科学版),第28卷,第3期,第2342236页,2008年9月 Jour na l of Baoji Univer sity of Arts and Sciences(Natur al Science),Vol.28,No.3,pp.2342236,Sept.2008 网络身份认证机制的分析与研究* 王西锋,张晓孪 (宝鸡文理学院计算机科学系,陕西宝鸡721007) 摘要:目的为设计安全系统中的认证机制提供一定的参考依据。方法分析比较几种典型的身份认证方式、协议及其安全性。结果认证机制提高了网络访问的安全性,统一身份认证是认证机制的一个重要趋势。结论认证机制的选取应从安全性和经济性等多方面考虑。 关键词:网络安全;身份认证;统一身份认证 中图分类号:T P309.2文献标志码:A文章编号:100721261(2008)0320234203 The analysis and study of the network identification mechanism WANG Xi2feng,ZH ANG Xiao2luan (https://www.360docs.net/doc/a18140570.html,puter Sci.,Baoji Univ.Arts&Sci.,Baoji721007,Shaanxi,China) Abstr act:Aim A frame of reference for the design of the authentication mechanism of safety sys2 tems is provided.Methods The features and its safety features of the typical ways and agreements are analyzed and compared deeply.Results Authentication mechanisms increase the security of the net2 work resources;unified identity authentication mechanism is an important tr end in this field.Conclu2 sion Security and economic aspects ar e consider ed when people selected authentication mechanisms. Key words:network secur ity;identity authentication;unified identity authentication 1引言 随着计算机技术和通信技术的快速发展,网络被广泛地应用于网上银行、网上购物、电子商务、远程教育和企业管理信息化等众多领域。但是,当前的互连网建立在TCP/IP协议体系的基础上,缺乏相应的安全功能,从而面临着自然或人为因素带来的各种安全威胁[1]。作为网络安全的重要组成部分,身份认证不但可以防止数据被窃听、修改、替换,还能限制非法用户访问网络资源。因此,身份认证的作用越来越重要。 2网络身份认证的过程 身份认证就是在网络系统中通过某种手段确认操作者身份的过程,其目的在于判明和确认通信双方和信息内容的真实性[1,2]。一般情况下,用户在访问系统之前,首先要经过身份认证系统来识别身份,然后才能访问监视器,根据用户的身份和授权数据库来决定用户是否有权访问某个资源,审计系统记录用户的请求和行为,同时入侵检测系统实时或非实时地检测是否有入侵行为。图1给出了网络安全 系统架构中用户访问网络资源的过程。 图1用户访问网络资源的流程 从图1可以明显看出,身份认证是网络安全体系中的第一道关卡,其它的安全服务如访问控制、审计等都要依赖于它,一旦非法用户通过了身份认证,就会对系统和资源的安全构成极大的威胁。因此,身份认证是网络安全中的一个重要环节。 3常见的身份认证方式与协议分析 在网络中,通信各方必须通过某种形式的身份认证方式和协议来证明其身份,然后才能实现不同 *收稿日期:2008203203,修回日期:2008203226.E2mail:1w2x3f@https://www.360docs.net/doc/a18140570.html, 基金项目:宝鸡文理学院重点科研项目(ZK07118) 作者简介:王西锋(19782),男,陕西渭南人,讲师,硕士,研究方向:计算机网络应用技术与安全.

相关主题
相关文档
最新文档