---
title: "XmlSignature"
description: "Namespace: Lacuna.Pki.Xml"
canonical: "https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/XmlSignature"
locale: "pt-BR"
product: "PKI SDK"
last_updated: "2026-06-02"
---

# XmlSignature

**Namespace:** `Lacuna.Pki.Xml`  
**Assembly:** `Lacuna.Pki`  
_Class_

```csharp
public class XmlSignature : ICertificateStore
```

**Hierarquia:** [`object`](https://learn.microsoft.com/dotnet/api/system.object) → `XmlSignature`

## Construtores

### `XmlSignature(XmlElement, XmlIdResolutionTable)`

```csharp
public XmlSignature(XmlElement signatureElement, XmlIdResolutionTable idResolutionTable = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `signatureElement` | [`XmlElement`](https://learn.microsoft.com/dotnet/api/system.xml.xmlelement) |  |
| `idResolutionTable` | [`XmlIdResolutionTable`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/XmlIdResolutionTable) |  |

---

## Propriedades

### `ArchiveTimestamps`

```csharp
public List<XadesTimestamp> ArchiveTimestamps { get; }
```

**Retorno**

[`List<XadesTimestamp>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)

---

### `CertificateValues`

```csharp
public List<PKCertificate> CertificateValues { get; }
```

**Retorno**

[`List<PKCertificate>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)

---

### `CommitmentType`

```csharp
public CommitmentType CommitmentType { get; }
```

**Retorno**

[`CommitmentType`](https://docs.lacunasoftware.com/api/Lacuna.Pki/CommitmentType)

---

### `CompleteCertificateRefs`

```csharp
public List<CertificateReference> CompleteCertificateRefs { get; }
```

**Retorno**

[`List<CertificateReference>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)

---

### `CompleteRevocationRefs`

```csharp
public CompleteRevocationReferences CompleteRevocationRefs { get; }
```

**Retorno**

[`CompleteRevocationReferences`](https://docs.lacunasoftware.com/api/Lacuna.Pki/CompleteRevocationReferences)

---

### `DataObjectFormat`

```csharp
public DataObjectFormat DataObjectFormat { get; }
```

**Retorno**

[`DataObjectFormat`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/DataObjectFormat)

---

### `PolicyIdentifier`

```csharp
public XmlPolicyIdentifier PolicyIdentifier { get; }
```

**Retorno**

[`XmlPolicyIdentifier`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/XmlPolicyIdentifier)

---

### `RevocationValues`

```csharp
public RevocationValues RevocationValues { get; }
```

**Retorno**

[`RevocationValues`](https://docs.lacunasoftware.com/api/Lacuna.Pki/RevocationValues)

---

### `SigAndRefsTimestamps`

```csharp
public List<XadesTimestamp> SigAndRefsTimestamps { get; }
```

**Retorno**

[`List<XadesTimestamp>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)

---

### `SignatureAlgorithm`

```csharp
public SignatureAlgorithm SignatureAlgorithm { get; set; }
```

**Retorno**

[`SignatureAlgorithm`](https://docs.lacunasoftware.com/api/Lacuna.Pki/SignatureAlgorithm)

---

### `SignatureElementId`

```csharp
public string SignatureElementId { get; }
```

**Retorno**

[`string`](https://learn.microsoft.com/dotnet/api/system.string)

---

### `SignatureTimestamps`

```csharp
public List<XadesTimestamp> SignatureTimestamps { get; }
```

**Retorno**

[`List<XadesTimestamp>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)

---

### `SignatureValue`

```csharp
public byte[] SignatureValue { get; }
```

**Retorno**

[`byte[]`](https://learn.microsoft.com/dotnet/api/system.byte)

---

### `SignedDetachedResourceContent`

```csharp
public byte[] SignedDetachedResourceContent { get; set; }
```

**Retorno**

[`byte[]`](https://learn.microsoft.com/dotnet/api/system.byte)

---

### `SignedDetachedResourceUri`

```csharp
public string SignedDetachedResourceUri { get; set; }
```

**Retorno**

[`string`](https://learn.microsoft.com/dotnet/api/system.string)

---

### `SignedElement`

```csharp
public XmlElement SignedElement { get; }
```

**Retorno**

[`XmlElement`](https://learn.microsoft.com/dotnet/api/system.xml.xmlelement)

---

### `SignedEntityType`

```csharp
public XmlSignedEntityTypes SignedEntityType { get; set; }
```

**Retorno**

[`XmlSignedEntityTypes`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/XmlSignedEntityTypes)

---

### `SigningCertificate`

```csharp
public PKCertificate SigningCertificate { get; set; }
```

**Retorno**

[`PKCertificate`](https://docs.lacunasoftware.com/api/Lacuna.Pki/PKCertificate)

---

### `SigningCertificateReferences`

```csharp
public List<CertificateReference> SigningCertificateReferences { get; }
```

**Retorno**

[`List<CertificateReference>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)

---

### `SigningTime`

```csharp
public DateTimeOffset? SigningTime { get; }
```

**Retorno**

[`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset)

---

## Métodos

### `Validate(IXmlPolicyMapper, DateTimeOffset?, Func<string, byte[]>)`

```csharp
public ValidationResults Validate(IXmlPolicyMapper policyMapper, DateTimeOffset? dateReference = null, Func<string, byte[]> detachedResourceResolver = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policyMapper` | [`IXmlPolicyMapper`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/IXmlPolicyMapper) |  |
| `dateReference` | [`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `detachedResourceResolver` | [`Func<string, byte[]>`](https://learn.microsoft.com/dotnet/api/system.func-2) |  |

**Retorno**

[`ValidationResults`](https://docs.lacunasoftware.com/api/Lacuna.Pki/ValidationResults)

---

### `Validate(IXmlPolicyMapper, ValidationContext, Func<string, byte[]>)`

```csharp
public ValidationResults Validate(IXmlPolicyMapper policyMapper, ValidationContext validationContext, Func<string, byte[]> detachedResourceResolver = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policyMapper` | [`IXmlPolicyMapper`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/IXmlPolicyMapper) |  |
| `validationContext` | [`ValidationContext`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/ValidationContext) |  |
| `detachedResourceResolver` | [`Func<string, byte[]>`](https://learn.microsoft.com/dotnet/api/system.func-2) |  |

**Retorno**

[`ValidationResults`](https://docs.lacunasoftware.com/api/Lacuna.Pki/ValidationResults)

---

### `Validate(IXmlPolicyMapperBySignature, DateTimeOffset?, Func<string, byte[]>)`

```csharp
public ValidationResults Validate(IXmlPolicyMapperBySignature policyMapper, DateTimeOffset? dateReference = null, Func<string, byte[]> detachedResourceResolver = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policyMapper` | [`IXmlPolicyMapperBySignature`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/IXmlPolicyMapperBySignature) |  |
| `dateReference` | [`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `detachedResourceResolver` | [`Func<string, byte[]>`](https://learn.microsoft.com/dotnet/api/system.func-2) |  |

**Retorno**

[`ValidationResults`](https://docs.lacunasoftware.com/api/Lacuna.Pki/ValidationResults)

---

### `Validate(IXmlPolicyMapperBySignature, ValidationContext, Func<string, byte[]>)`

```csharp
public ValidationResults Validate(IXmlPolicyMapperBySignature policyMapper, ValidationContext validationContext, Func<string, byte[]> detachedResourceResolver = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policyMapper` | [`IXmlPolicyMapperBySignature`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/IXmlPolicyMapperBySignature) |  |
| `validationContext` | [`ValidationContext`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/ValidationContext) |  |
| `detachedResourceResolver` | [`Func<string, byte[]>`](https://learn.microsoft.com/dotnet/api/system.func-2) |  |

**Retorno**

[`ValidationResults`](https://docs.lacunasoftware.com/api/Lacuna.Pki/ValidationResults)

---

### `Validate(XmlPolicySpec, DateTimeOffset?, Func<string, byte[]>)`

```csharp
public ValidationResults Validate(XmlPolicySpec policy, DateTimeOffset? dateReference = null, Func<string, byte[]> detachedResourceResolver = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policy` | [`XmlPolicySpec`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/XmlPolicySpec) |  |
| `dateReference` | [`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `detachedResourceResolver` | [`Func<string, byte[]>`](https://learn.microsoft.com/dotnet/api/system.func-2) |  |

**Retorno**

[`ValidationResults`](https://docs.lacunasoftware.com/api/Lacuna.Pki/ValidationResults)

---

### `Validate(XmlPolicySpec, ValidationContext, Func<string, byte[]>)`

```csharp
public ValidationResults Validate(XmlPolicySpec policy, ValidationContext validationContext, Func<string, byte[]> detachedResourceResolver = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policy` | [`XmlPolicySpec`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Xml/XmlPolicySpec) |  |
| `validationContext` | [`ValidationContext`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/ValidationContext) |  |
| `detachedResourceResolver` | [`Func<string, byte[]>`](https://learn.microsoft.com/dotnet/api/system.func-2) |  |

**Retorno**

[`ValidationResults`](https://docs.lacunasoftware.com/api/Lacuna.Pki/ValidationResults)

---

## Membros herdados

[`ToString()`](https://learn.microsoft.com/dotnet/api/system.object.tostring), [`Equals(object)`](<https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object)>), [`Equals(object, object)`](<https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals(system-object-system-object)>), [`ReferenceEquals(object, object)`](https://learn.microsoft.com/dotnet/api/system.object.referenceequals), [`GetHashCode()`](https://learn.microsoft.com/dotnet/api/system.object.gethashcode), [`GetType()`](https://learn.microsoft.com/dotnet/api/system.object.gettype), [`MemberwiseClone()`](https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone)
