Package com.sun.mail.smtp
Class DigestMD5
- java.lang.Object
-
- com.sun.mail.smtp.DigestMD5
-
public class DigestMD5 extends java.lang.Object
DIGEST-MD5 authentication support.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
clientResponse
private static char[]
digits
private MailLogger
logger
private java.security.MessageDigest
md5
private java.lang.String
uri
-
Constructor Summary
Constructors Constructor Description DigestMD5(MailLogger logger)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]
authClient(java.lang.String host, java.lang.String user, java.lang.String passwd, java.lang.String realm, java.lang.String serverChallenge)
Return client's authentication response to server's challenge.boolean
authServer(java.lang.String serverResponse)
Allow the client to authenticate the server based on its response.private static java.lang.String
toHex(byte[] bytes)
Convert a byte array to a string of hex digits representing the bytes.private java.util.Map<java.lang.String,java.lang.String>
tokenize(java.lang.String serverResponse)
Tokenize a response from the server.
-
-
-
Field Detail
-
logger
private MailLogger logger
-
md5
private java.security.MessageDigest md5
-
uri
private java.lang.String uri
-
clientResponse
private java.lang.String clientResponse
-
digits
private static char[] digits
-
-
Constructor Detail
-
DigestMD5
public DigestMD5(MailLogger logger)
-
-
Method Detail
-
authClient
public byte[] authClient(java.lang.String host, java.lang.String user, java.lang.String passwd, java.lang.String realm, java.lang.String serverChallenge) throws java.io.IOException
Return client's authentication response to server's challenge.- Parameters:
host
- the host nameuser
- the user namepasswd
- the user's passwordrealm
- the security realmserverChallenge
- the challenge from the server- Returns:
- byte array with client's response
- Throws:
java.io.IOException
- for I/O errors
-
authServer
public boolean authServer(java.lang.String serverResponse) throws java.io.IOException
Allow the client to authenticate the server based on its response.- Parameters:
serverResponse
- the response that was received from the server- Returns:
- true if server is authenticated
- Throws:
java.io.IOException
- for character conversion failures
-
tokenize
private java.util.Map<java.lang.String,java.lang.String> tokenize(java.lang.String serverResponse) throws java.io.IOException
Tokenize a response from the server.- Returns:
- Map containing key/value pairs from server
- Throws:
java.io.IOException
-
toHex
private static java.lang.String toHex(byte[] bytes)
Convert a byte array to a string of hex digits representing the bytes.
-
-