1. 程式人生 > >SMTP身份驗證(LOGIN、PLAIN、CRAM-MD5)

SMTP身份驗證(LOGIN、PLAIN、CRAM-MD5)

其傳送使用者名稱與口令的格式應該是“<NULL>tim<NULL>tanstaaftanstaaf”。“tim”是使用者名稱,後邊的字串是口令,NULL是ASCII的0(所以無法使用telnet登入)。

CRAM-MD5方式
CRAM-MD5即是一種Keyed-MD5驗證方式,CRAM是“Challenge-Response Authentication Mechanism”的所寫。所謂Keyed-MD5,是將Clieng與Server共享的一個Key作為一部分MD5的輸入,正好郵件系統的使用者口令可以作為這個Key。具體的互動如下:

S: * OK IMAP4 Server
C: A0001 AUTHENTICATE CRAM-MD5
S: + PDE4OTYuNjk3MTcwOTUyQHBvc3RvZmZpY2UucmVzdG9uLm1jaS5uZXQ+ -------- Server傳送BASE64編碼的Timestamp、Hostname等給Client
C: dGltIGI5MTNhNjAyYzdlZGE3YTQ5NWI0ZTZlNzMzNGQzODkw ------- Client將收到的資訊加上使用者名稱和口令,編碼為BASE64傳送給Server
S: A0001 OK CRAM authentication successful ----------- Server使用該使用者的口令進行MD5運算,如果得到相同的輸出則認證成功 

Keyed-MD5的計算公式為:
MD5 ( (tanstaaftanstaaf XOR opad),MD5((tanstaaftanstaaf XOR ipad), <
[email protected]
>) ),其中

MD5()為標準的MD5演算法,“tanstaaftanstaaf”為使用者口令,“<[email protected]>”是從Server傳送過來的Timestamp和Hostname等,ipad和opad為Keyed-MD5演算法特定的常數。上面的公式得出的digest為"b913a602c7eda7a495b4e6e7334d3890",加上使用者名稱,即"tim b913a602c7eda7a495b4e6e7334d3890"進行BASE64的編碼,得到上面傳送給Server的“dGltIGI5MTNhNjAyYzdlZGE3YTQ5NWI0ZTZlNzMzNGQzODkw”。

相關推薦

SMTP身份驗證LOGINPLAINCRAM-MD5

其傳送使用者名稱與口令的格式應該是“<NULL>tim<NULL>tanstaaftanstaaf”。“tim”是使用者名稱,後邊的字串是口令,NULL是ASCII的0(所以無法使用telnet登入)。CRAM-MD5方式 CRAM-MD5即是一種Keyed-MD5驗證方式,CRAM是

SMTP驗證方式種類LOGINPLAINCRAM-MD5

其傳送使用者名稱與口令的格式應該是“<NULL>tim<NULL>tanstaaftanstaaf”。“tim”是使用者名稱,後邊的字串是口令,NULL是ASCII的0(所以無法使用telnet登入)。CRAM-MD5方式 CRAM-MD5即是一種Keyed-MD5驗證方式,CRAM是

WebApi 增加身份驗證 OAuth 2.0方式

1,在Webapi專案下新增如下引用:Microsoft.AspNet.WebApi.OwinOwinMicrosoft.Owin.Host.SystemWebMicrosoft.Owin.Security.OAuthMicrosoft.Owin.Security.CookiesMicrosoft.AspNe

asp.net中的窗體身份驗證完整篇之五:退出登入

    前面介紹過了如何使用Forms方式進行使用者身份驗證,然而,在大多網站中都會有一個“退出”功能,讓使用者可以通出登入。在asp.net中,退出的方式很簡單,只要在退出頁面中加上程式碼“FormsAuthentication.SignOut()”即可。     你可以使

OpenStack Ocata 安裝安裝身份驗證Keystone服務

11、安裝身份驗證(Keystone)服務: OpenStack標識服務為管理身份驗證、授權和服務目錄提供了單一的整合點。標識服務通常是使用者與使用者互動的第一個服務 建立該服務的資料庫和資料庫管理賬戶: controller# mysql -uroot -p123

Windows Server 2012 R2 -網站—安全性設定-身份驗證VMware workstation環境

安裝身份驗證元件:匿名身份驗證:任何使用者都可以直接匿名連線此網站,不需要身份認證:基本身份驗證:要求使用者輸入使用者名稱及密碼,但是使用者名稱及密碼並沒有加密,容易被攔截獲取資料。預設域:使用者連線網站時,可以使用兩種方式:1,域使用者賬戶:使用者輸入的使用者名稱及密碼會發

自定義ASP.NET MVC身份驗證Identity資訊

自定義ASP.NET MVC身份驗證資訊 1.前言 2.正文 ASP.NET 身份驗證(Identity)是ASP.NET應用的新一代身份認證(membership)系統。想要了解更多關於ASP.NET Identity的資訊請訪問http:/

表單驗證為後期功能完善添加

隱藏 ont with length type nbsp ava dex www. 一、表單驗證是否輸入為空,如果為空彈出alert。 function validate_required(field,alerttxt) { with (field) { if (valu

從零構建ipa-server.實現ldap+kerberos域用戶驗證開放防火墻,命令版

ESS 用戶 主機名 dir 創建 main domain 準備 rec 圖形配置方法請看上篇文章 1,實驗環境: 一臺主機物理主機兩臺虛擬機。物理主機的ip:192.168.9.6/24 gw:192.168.9.254 dns:8.8.8.8一臺虛擬機(server)網

android中對輸入手機號碼有效性驗證是否為正確的手機號碼

 在Utils包名下面建立電話號碼匹配工具類 public class TelNumMatch { /* * 10. * 移動: 2G號段(GSM網路)有139,138,137,136,135,134,159,158,152,151,150,

Apache基礎服務之Web訪問控制身份驗證虛擬目錄虛擬主機

火墻 不同 14. cfa 防火 控制 根據 主機名訪問 a20 Apache HTTP server之所以受到眾多企業的青睞,得益於其代碼開源、跨平臺、功能模塊化、可靈活定制等諸多優點,其不僅性能穩定,在安全性方面的表現也十分的出色。接下來我們通過Apache搭建網站來學

Asp.Net MVC3 簡單入門詳解過濾器Filter身份驗證快取防盜鏈國際化等

下面我們說幾個系統的Filter三、AcceptVerbs規定頁面的訪問形式,如 [AcceptVerbs(HttpVerbs.Post)]public ActionResult Example(){return View(); }頁面只能以Post形式訪問,即表單提交。四、Ac

AuthenticationStrategy身份驗證策略

AuthenticationStrategy(身份驗證策略) AuthenticationStrategy 是個無狀態的元件,在認證過程中會進行4次呼叫。 ① 在所有Realm被呼叫之前 ②在呼叫R

java 驗證手機號碼電話號碼包括最新的電信聯通和移動號碼

-s 轉義 電信號 auth input sim pem csharp class 一、目前的號碼段(2017-06-01更新) 二、代碼 package com.linbilin.test; import java.util.regex.Pattern;

Java基礎------生成一個六位數的驗證包含大寫字母小寫字母數字,並且不允許重復

參考 數組 rand 定義 ole ava length log post 問題描述:生成一個六位數的驗證碼(包含大寫字母、小寫字母、數字,並且不允許重復)? 參考代碼如下: import java.util.Arrays;import java.util.Random

使用keytool生成公鑰私鑰證書並且讀取出來,使用私鑰簽名jar並驗證

工具 crypto upload () 結構 清單文件 style too ref 參考鏈接:http://happyqing.iteye.com/blog/2139504     :https://blog.csdn.net/arjelarxfc/article/det

TornadocookieXSRF用戶驗證

edi AD 構造 通過 dpf eth 客戶端瀏覽器 tor rec --------------------Cookie操作--------------------1、設置Cookie1、set_cookie(name,value,domain=None,expires

Samba共享服務:匿名共享身份驗證賬戶映射訪問控制

water mdb linux png ado adf sta 備份 bios 實驗項目:Samba服務匿名共享;Samba服務身份驗證共享;Samba服務賬戶映射。Samba服務訪問控制 實驗環境:VMware虛擬機Linux系統(我這裏是Redhat6.5)Win7(這

easy-ui表單字段單字段---》驗證---》整數小數 %同時需要

put clas -o urn datebox easy from data rule // 單字段---》驗證---》整數、小數 、%(同時需要) <script> //保底值 $.extend($.fn.validatebox.defaults.

基於FormsAuthentication的用戶角色身份認證

就會 攻擊 context public contex onf decrypt 數據 分用 一般情況下,在我們做訪問權限管理的時候,會把用戶的正確登錄後的基本信息保存在Session中,以後用戶每次請求頁面或接口數據的時候,拿到 Session中存儲的用戶基本信息,查看