Class RRSIGRecord
Signature for a RRSET with a particular name, class, and type.
Inherited Members
Namespace: Makaretu.Dns
Assembly: Makaretu.Dns.dll
Syntax
public class RRSIGRecord : ResourceRecord, IWireSerialiser, ICloneable, IPresentationSerialiser
Remarks
Defined in RFC 4034 section 3.
Constructors
| Improve this Doc View SourceRRSIGRecord()
Creates a new instance of the RRSIGRecord class.
Declaration
public RRSIGRecord()
Properties
| Improve this Doc View SourceAlgorithm
Identifies the cryptographic algorithm to create the Signature.
Declaration
public SecurityAlgorithm Algorithm { get; set; }
Property Value
| Type | Description |
|---|---|
| SecurityAlgorithm | Identifies the type of key (RSA, ECDSA, ...) and the hashing algorithm. |
KeyTag
The key tag of the DNSKEYRecord that validates the Signature.
Declaration
public ushort KeyTag { get; set; }
Property Value
| Type | Description |
|---|---|
| UInt16 | The KeyTag() method produces this value. |
Labels
The number of labels in the original RRSIG RR owner name.
Declaration
public byte Labels { get; set; }
Property Value
| Type | Description |
|---|---|
| Byte |
Remarks
The significance of this field is that a validator uses it to determine whether the answer was synthesized from a wildcard.
OriginalTTL
The TTL of the covered RRset as it appears in the authoritative zone.
Declaration
public TimeSpan OriginalTTL { get; set; }
Property Value
| Type | Description |
|---|---|
| TimeSpan | The resolution is 1 second. |
Signature
The cryptographic signature.
Declaration
public byte[] Signature { get; set; }
Property Value
| Type | Description |
|---|---|
| Byte[] | The format depends upon the Algorithm. |
SignatureExpiration
The end date for the Signature.
Declaration
public DateTime SignatureExpiration { get; set; }
Property Value
| Type | Description |
|---|---|
| DateTime | The resolution is 1 second. |
SignatureInception
The start date for the Signature.
Declaration
public DateTime SignatureInception { get; set; }
Property Value
| Type | Description |
|---|---|
| DateTime | The resolution is 1 second. |
SignerName
The owner name of the DNSKEYRecord that validates the Signature.
Declaration
public DomainName SignerName { get; set; }
Property Value
| Type | Description |
|---|---|
| DomainName |
TypeCovered
The type of the RRset that is covered by this signature.
Declaration
public DnsType TypeCovered { get; set; }
Property Value
| Type | Description |
|---|---|
| DnsType | One of the DnsType values. |
Methods
| Improve this Doc View SourceReadData(PresentationReader)
Read the textual representation of the data that is specific to the resource record Type.
Declaration
public override void ReadData(PresentationReader reader)
Parameters
| Type | Name | Description |
|---|---|---|
| PresentationReader | reader | The source of the resource record's data. |
Overrides
Remarks
Derived classes must implement this method.
ReadData(WireReader, Int32)
Read the data that is specific to the resource record Type.
Declaration
public override void ReadData(WireReader reader, int length)
Parameters
| Type | Name | Description |
|---|---|---|
| WireReader | reader | The source of the resource record's data. |
| Int32 | length | The length, in bytes, of the data. |
Overrides
Remarks
Derived classes must implement this method.
WriteData(PresentationWriter)
Write the textual representation of the data that is specific to the resource record.
Declaration
public override void WriteData(PresentationWriter writer)
Parameters
| Type | Name | Description |
|---|---|---|
| PresentationWriter | writer | The destination for the resource record's data. |
Overrides
Remarks
Derived classes should implement this method.
By default, this will write the hex encoding of the GetData() preceeded by "#" and the number integer bytes.
WriteData(WireWriter)
Write the data that is specific to the resource record Type.
Declaration
public override void WriteData(WireWriter writer)
Parameters
| Type | Name | Description |
|---|---|---|
| WireWriter | writer | The destination for the DNS object's data. |
Overrides
Remarks
Derived classes must implement this method.