org.xbill.DNS
Class NSEC3PARAMRecord

java.lang.Object
  extended by org.xbill.DNS.Record
      extended by org.xbill.DNS.NSEC3PARAMRecord
All Implemented Interfaces:
Serializable, Cloneable, Comparable

public class NSEC3PARAMRecord
extends Record

Next SECure name 3 Parameters - this record contains the parameters (hash algorithm, salt, iterations) used for a valid, complete NSEC3 chain present in a zone. Zones signed using NSEC3 must include this record at the zone apex to inform authoritative servers that NSEC3 is being used with the given parameters.

Author:
Brian Wellington, David Blacka
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.xbill.DNS.Record
dclass, name, ttl, type
 
Constructor Summary
NSEC3PARAMRecord(Name name, int dclass, long ttl, int hashAlg, int flags, int iterations, byte[] salt)
          Creates an NSEC3PARAM record from the given data.
 
Method Summary
 int getFlags()
          Returns the flags
 int getHashAlgorithm()
          Returns the hash algorithm
 int getIterations()
          Returns the number of iterations
 byte[] getSalt()
          Returns the salt
 byte[] hashName(Name name)
          Hashes a name with the parameters of this NSEC3PARAM record.
 
Methods inherited from class org.xbill.DNS.Record
byteArrayFromString, byteArrayToString, compareTo, equals, fromString, fromString, fromWire, getAdditionalName, getDClass, getName, getRRsetType, getTTL, getType, hashCode, newRecord, newRecord, newRecord, newRecord, rdataToString, rdataToWireCanonical, sameRRset, toString, toWire, toWireCanonical, unknownToString, withName
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

NSEC3PARAMRecord

public NSEC3PARAMRecord(Name name,
                        int dclass,
                        long ttl,
                        int hashAlg,
                        int flags,
                        int iterations,
                        byte[] salt)
Creates an NSEC3PARAM record from the given data.

Parameters:
name - The ownername of the NSEC3PARAM record (generally the zone name).
dclass - The class.
ttl - The TTL.
hashAlg - The hash algorithm.
flags - The value of the flags field.
iterations - The number of hash iterations.
salt - The salt to use (may be null).
Method Detail

getHashAlgorithm

public int getHashAlgorithm()
Returns the hash algorithm


getFlags

public int getFlags()
Returns the flags


getIterations

public int getIterations()
Returns the number of iterations


getSalt

public byte[] getSalt()
Returns the salt


hashName

public byte[] hashName(Name name)
                throws NoSuchAlgorithmException
Hashes a name with the parameters of this NSEC3PARAM record.

Parameters:
name - The name to hash
Returns:
The hashed version of the name
Throws:
NoSuchAlgorithmException - The hash algorithm is unknown.