org.productivity.java.syslog4j.impl.message.modifier.hash
Class HashSyslogMessageModifier

java.lang.Object
  extended by org.productivity.java.syslog4j.impl.message.modifier.AbstractSyslogMessageModifier
      extended by org.productivity.java.syslog4j.impl.message.modifier.hash.HashSyslogMessageModifier
All Implemented Interfaces:
java.io.Serializable, SyslogConstants, SyslogMessageModifierIF

public class HashSyslogMessageModifier
extends AbstractSyslogMessageModifier

HashSyslogMessageModifier is an implementation of SyslogMessageModifierIF that provides support for Java Cryptographic hashes (MD5, SHA1, SHA256, etc.).

Syslog4j is licensed under the Lesser GNU Public License v2.1. A copy of the LGPL license is available in the META-INF folder in all distributions of Syslog4j and in the base directory of the "doc" ZIP.

Version:
$Id: HashSyslogMessageModifier.java,v 1.5 2010/10/28 05:10:57 cvs Exp $
Author:
<syslog4j@productivity.org>
See Also:
Serialized Form

Field Summary
protected  HashSyslogMessageModifierConfig config
           
 
Fields inherited from class org.productivity.java.syslog4j.impl.message.modifier.AbstractSyslogMessageModifier
messageModifierConfig
 
Fields inherited from interface org.productivity.java.syslog4j.SyslogConstants
AF_UNIX, CACHE_HOST_ADDRESS_DEFAULT, CHAR_SET_DEFAULT, CRLF, FACILITY_AUTH, FACILITY_AUTHPRIV, FACILITY_CRON, FACILITY_DAEMON, FACILITY_FTP, FACILITY_KERN, FACILITY_LOCAL0, FACILITY_LOCAL1, FACILITY_LOCAL2, FACILITY_LOCAL3, FACILITY_LOCAL4, FACILITY_LOCAL5, FACILITY_LOCAL6, FACILITY_LOCAL7, FACILITY_LPR, FACILITY_MAIL, FACILITY_NEWS, FACILITY_SYSLOG, FACILITY_USER, FACILITY_UUCP, IDENT_SUFFIX_DEFAULT, INCLUDE_IDENT_IN_MESSAGE_MODIFIER_DEFAULT, JNA_NATIVE_CLASS, LEVEL_ALERT, LEVEL_CRITICAL, LEVEL_DEBUG, LEVEL_EMERGENCY, LEVEL_ERROR, LEVEL_INFO, LEVEL_NOTICE, LEVEL_WARN, LF, MAX_MESSAGE_LENGTH_DEFAULT, MAX_QUEUE_SIZE_DEFAULT, MAX_SHUTDOWN_WAIT_DEFAULT, OPTION_LOG_CONS, OPTION_LOG_NDELAY, OPTION_LOG_NOWAIT, OPTION_LOG_ODELAY, OPTION_LOG_PERROR, OPTION_LOG_PID, OPTION_NONE, SEND_LOCAL_NAME_DEFAULT, SEND_LOCAL_NAME_DEFAULT_VALUE, SEND_LOCAL_TIMESTAMP_DEFAULT, SERVER_SHUTDOWN_WAIT_DEFAULT, SERVER_SOCKET_BACKLOG_DEFAULT, SHUTDOWN_INTERVAL, SOCK_DGRAM, SOCK_STREAM, SPLIT_MESSAGE_BEGIN_TEXT_DEFAULT, SPLIT_MESSAGE_END_TEXT_DEFAULT, STRUCTURED_DATA_APP_NAME_DEFAULT_VALUE, STRUCTURED_DATA_EMPTY_VALUE, STRUCTURED_DATA_NILVALUE, STRUCTURED_DATA_PROCESS_ID_DEFAULT_VALUE, SYSLOG_BUFFER_SIZE, SYSLOG_DATEFORMAT, SYSLOG_FACILITY_DEFAULT, SYSLOG_HOST_DEFAULT, SYSLOG_LIBRARY_DEFAULT, SYSLOG_MESSAGE_MODIFIER_PREFIX_DEFAULT, SYSLOG_MESSAGE_MODIFIER_SUFFIX_DEFAULT, SYSLOG_PATH_DEFAULT, SYSLOG_POOL_CONFIG_MAX_ACTIVE_DEFAULT, SYSLOG_POOL_CONFIG_MAX_IDLE_DEFAULT, SYSLOG_POOL_CONFIG_MAX_WAIT_DEFAULT, SYSLOG_POOL_CONFIG_MIN_EVICTABLE_IDLE_TIME_MILLIS_DEFAULT, SYSLOG_POOL_CONFIG_MIN_IDLE_DEFAULT, SYSLOG_POOL_CONFIG_NUM_TESTS_PER_EVICTION_RUN_DEFAULT, SYSLOG_POOL_CONFIG_SOFT_MIN_EVICTABLE_IDLE_TIME_MILLIS_DEFAULT, SYSLOG_POOL_CONFIG_TEST_ON_BORROW_DEFAULT, SYSLOG_POOL_CONFIG_TEST_ON_RETURN_DEFAULT, SYSLOG_POOL_CONFIG_TEST_WHILE_IDLE_DEFAULT, SYSLOG_POOL_CONFIG_TIME_BETWEEN_EVICTION_RUNS_MILLIS_DEFAULT, SYSLOG_PORT_DEFAULT, SYSLOG_SEQUENTIAL_MESSAGE_MODIFIER_FIRST_NUMBER_DEFAULT, SYSLOG_SEQUENTIAL_MESSAGE_MODIFIER_LAST_NUMBER_DEFAULT, SYSLOG_SEQUENTIAL_MESSAGE_MODIFIER_PAD_CHAR_DEFAULT, SYSLOG_SEQUENTIAL_MESSAGE_MODIFIER_PREFIX_DEFAULT, SYSLOG_SEQUENTIAL_MESSAGE_MODIFIER_SUFFIX_DEFAULT, SYSLOG_SEQUENTIAL_MESSAGE_MODIFIER_USE_PADDING_DEFAULT, SYSLOG_SOCKET_FAMILY_DEFAULT, SYSLOG_SOCKET_LIBRARY_DEFAULT, SYSLOG_SOCKET_PATH_DEFAULT, SYSLOG_SOCKET_PROTOCOL_DEFAULT, SYSLOG_SOCKET_TYPE_DEFAULT, TCP, TCP_DELIMITER_SEQUENCE_DEFAULT, TCP_FRESH_CONNECTION_INTERVAL_DEFAULT, TCP_KEEP_ALIVE_DEFAULT, TCP_MAX_ACTIVE_SOCKETS_BEHAVIOR_DEFAULT, TCP_MAX_ACTIVE_SOCKETS_DEFAULT, TCP_PERSISTENT_CONNECTION_DEFAULT, TCP_REUSE_ADDRESS_DEFAULT, TCP_SET_BUFFER_SIZE_DEFAULT, TCP_SO_LINGER_DEFAULT, TCP_SO_LINGER_SECONDS_DEFAULT, THREAD_LOOP_INTERVAL_DEFAULT, THREAD_PRIORITY_DEFAULT, THREADED_DEFAULT, THROW_EXCEPTION_ON_INITIALIZE_DEFAULT, THROW_EXCEPTION_ON_WRITE_DEFAULT, TRUNCATE_MESSAGE_DEFAULT, UDP, UNIX_SOCKET, UNIX_SYSLOG, USE_DAEMON_THREAD_DEFAULT, USE_STRUCTURED_DATA_DEFAULT, WRITE_RETRIES_DEFAULT
 
Constructor Summary
HashSyslogMessageModifier(HashSyslogMessageModifierConfig config)
           
 
Method Summary
static HashSyslogMessageModifier createMD5()
           
static HashSyslogMessageModifier createSHA1()
           
static HashSyslogMessageModifier createSHA160()
           
static HashSyslogMessageModifier createSHA256()
           
static HashSyslogMessageModifier createSHA384()
           
static HashSyslogMessageModifier createSHA512()
           
 HashSyslogMessageModifierConfig getConfig()
           
 java.lang.String modify(SyslogIF syslog, int facility, int level, java.lang.String message)
           
protected  java.security.MessageDigest obtainMessageDigest()
           
 boolean verify(java.lang.String message, byte[] hash)
           
 boolean verify(java.lang.String message, java.lang.String base64Hash)
           
 
Methods inherited from class org.productivity.java.syslog4j.impl.message.modifier.AbstractSyslogMessageModifier
parseInlineModifier, parseInlineModifier, verify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

config

protected HashSyslogMessageModifierConfig config
Constructor Detail

HashSyslogMessageModifier

public HashSyslogMessageModifier(HashSyslogMessageModifierConfig config)
                          throws SyslogRuntimeException
Throws:
SyslogRuntimeException
Method Detail

createMD5

public static final HashSyslogMessageModifier createMD5()

createSHA1

public static final HashSyslogMessageModifier createSHA1()

createSHA160

public static final HashSyslogMessageModifier createSHA160()

createSHA256

public static final HashSyslogMessageModifier createSHA256()

createSHA384

public static final HashSyslogMessageModifier createSHA384()

createSHA512

public static final HashSyslogMessageModifier createSHA512()

obtainMessageDigest

protected java.security.MessageDigest obtainMessageDigest()

getConfig

public HashSyslogMessageModifierConfig getConfig()

modify

public java.lang.String modify(SyslogIF syslog,
                               int facility,
                               int level,
                               java.lang.String message)

verify

public boolean verify(java.lang.String message,
                      java.lang.String base64Hash)
Specified by:
verify in class AbstractSyslogMessageModifier

verify

public boolean verify(java.lang.String message,
                      byte[] hash)