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

# CadesSignature

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

```csharp
public class CadesSignature : ICertificateStore
```

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

## Propriedades

### `Certificates`

```csharp
public IEnumerable<PKCertificate> Certificates { get; }
```

**Retorno**

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

---

### `Crls`

```csharp
public IEnumerable<Crl> Crls { get; }
```

**Retorno**

[`IEnumerable<Crl>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1)

---

### `EncapsulatedContentType`

```csharp
public CmsContentType EncapsulatedContentType { get; }
```

**Retorno**

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

---

### `EncodedValue`

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

**Retorno**

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

---

### `HasEncapsulatedContent`

```csharp
public bool HasEncapsulatedContent { get; }
```

**Retorno**

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

---

### `Signers`

```csharp
public List<CadesSignerInfo> Signers { get; }
```

**Retorno**

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

---

## Métodos

### `GetEncapsulatedContent()`

```csharp
public byte[] GetEncapsulatedContent()
```

**Retorno**

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

---

### `Open(byte[])`

Open a CAdES signature

```csharp
public static CadesSignature Open(byte[] content)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `content` | [`byte[]`](https://learn.microsoft.com/dotnet/api/system.byte) | CAdES signature content bytes |

**Retorno**

[`CadesSignature`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesSignature) — CAdES signature object

---

### `Open(Stream)`

Open a CAdES signature

```csharp
public static CadesSignature Open(Stream stream)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `stream` | [`Stream`](https://learn.microsoft.com/dotnet/api/system.io.stream) | CAdES signature stream |

**Retorno**

[`CadesSignature`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesSignature) — CAdES signature object

---

### `Open(string)`

Open a CAdES signature

```csharp
public static CadesSignature Open(string path)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `path` | [`string`](https://learn.microsoft.com/dotnet/api/system.string) | CAdES signature file path |

**Retorno**

[`CadesSignature`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesSignature) — CAdES signature object

---

### `SetExternalData(byte[])`

```csharp
public void SetExternalData(byte[] content)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `content` | [`byte[]`](https://learn.microsoft.com/dotnet/api/system.byte) |  |

---

### `SetExternalData(Stream)`

```csharp
public void SetExternalData(Stream stream)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `stream` | [`Stream`](https://learn.microsoft.com/dotnet/api/system.io.stream) |  |

---

### `SetExternalData(string)`

```csharp
public void SetExternalData(string path)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `path` | [`string`](https://learn.microsoft.com/dotnet/api/system.string) |  |

---

### `SetExternalDataDigest(DigestAlgorithm, byte[])`

Provides a digest of the data that was signed, so that the validation of the signatures can be performed without
reading the original data. Multiple calls to this method will be necessary if there are multiple signers with
different digest algorithms.

WARNING: if this method is used, it is the caller's responsibility to make sure that the digest provided actually
matches the original signed data.

```csharp
public void SetExternalDataDigest(DigestAlgorithm digestAlgorithm, byte[] digestValue)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `digestAlgorithm` | [`DigestAlgorithm`](https://docs.lacunasoftware.com/api/Lacuna.Pki/DigestAlgorithm) |  |
| `digestValue` | [`byte[]`](https://learn.microsoft.com/dotnet/api/system.byte) |  |

---

### `ValidateAllSignatures(CadesPolicySpec, DateTimeOffset?, IReferencedCrlStore)`

```csharp
public Dictionary<CadesSignerInfo, ValidationResults> ValidateAllSignatures(CadesPolicySpec policy, DateTimeOffset? dateReference = null, IReferencedCrlStore crlStore = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policy` | [`CadesPolicySpec`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesPolicySpec) |  |
| `dateReference` | [`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `crlStore` | [`IReferencedCrlStore`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/IReferencedCrlStore) |  |

**Retorno**

[`Dictionary<CadesSignerInfo, ValidationResults>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2)

---

### `ValidateAllSignatures(CadesPolicySpec, ValidationContext)`

```csharp
public Dictionary<CadesSignerInfo, ValidationResults> ValidateAllSignatures(CadesPolicySpec policy, ValidationContext validationContext)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policy` | [`CadesPolicySpec`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesPolicySpec) |  |
| `validationContext` | [`ValidationContext`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/ValidationContext) |  |

**Retorno**

[`Dictionary<CadesSignerInfo, ValidationResults>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2)

---

### `ValidateAllSignatures(ICadesPolicyMapper, DateTimeOffset?, IReferencedCrlStore)`

```csharp
public Dictionary<CadesSignerInfo, ValidationResults> ValidateAllSignatures(ICadesPolicyMapper policyMapper, DateTimeOffset? dateReference = null, IReferencedCrlStore crlStore = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policyMapper` | [`ICadesPolicyMapper`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/ICadesPolicyMapper) |  |
| `dateReference` | [`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `crlStore` | [`IReferencedCrlStore`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/IReferencedCrlStore) |  |

**Retorno**

[`Dictionary<CadesSignerInfo, ValidationResults>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2)

---

### `ValidateAllSignatures(ICadesPolicyMapper, ValidationContext)`

```csharp
public Dictionary<CadesSignerInfo, ValidationResults> ValidateAllSignatures(ICadesPolicyMapper policyMapper, ValidationContext validationContext)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policyMapper` | [`ICadesPolicyMapper`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/ICadesPolicyMapper) |  |
| `validationContext` | [`ValidationContext`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/ValidationContext) |  |

**Retorno**

[`Dictionary<CadesSignerInfo, ValidationResults>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2)

---

### `ValidateAllSignatures(ICadesPolicyMapperBySignerInfo, DateTimeOffset?, IReferencedCrlStore)`

```csharp
public Dictionary<CadesSignerInfo, ValidationResults> ValidateAllSignatures(ICadesPolicyMapperBySignerInfo policyMapper, DateTimeOffset? dateReference = null, IReferencedCrlStore crlStore = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policyMapper` | [`ICadesPolicyMapperBySignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/ICadesPolicyMapperBySignerInfo) |  |
| `dateReference` | [`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `crlStore` | [`IReferencedCrlStore`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/IReferencedCrlStore) |  |

**Retorno**

[`Dictionary<CadesSignerInfo, ValidationResults>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2)

---

### `ValidateAllSignatures(ICadesPolicyMapperBySignerInfo, ValidationContext)`

```csharp
public Dictionary<CadesSignerInfo, ValidationResults> ValidateAllSignatures(ICadesPolicyMapperBySignerInfo policyMapper, ValidationContext validationContext)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `policyMapper` | [`ICadesPolicyMapperBySignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/ICadesPolicyMapperBySignerInfo) |  |
| `validationContext` | [`ValidationContext`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/ValidationContext) |  |

**Retorno**

[`Dictionary<CadesSignerInfo, ValidationResults>`](https://learn.microsoft.com/dotnet/api/system.collections.generic.dictionary-2)

---

### `ValidateSignature(CadesSignerInfo, CadesPolicySpec, DateTimeOffset?, IReferencedCrlStore)`

```csharp
public ValidationResults ValidateSignature(CadesSignerInfo signerInfo, CadesPolicySpec policy, DateTimeOffset? dateReference = null, IReferencedCrlStore crlStore = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `signerInfo` | [`CadesSignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesSignerInfo) |  |
| `policy` | [`CadesPolicySpec`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesPolicySpec) |  |
| `dateReference` | [`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `crlStore` | [`IReferencedCrlStore`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/IReferencedCrlStore) |  |

**Retorno**

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

---

### `ValidateSignature(CadesSignerInfo, CadesPolicySpec, ValidationContext)`

```csharp
public ValidationResults ValidateSignature(CadesSignerInfo signerInfo, CadesPolicySpec policy, ValidationContext validationContext)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `signerInfo` | [`CadesSignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesSignerInfo) |  |
| `policy` | [`CadesPolicySpec`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesPolicySpec) |  |
| `validationContext` | [`ValidationContext`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/ValidationContext) |  |

**Retorno**

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

---

### `ValidateSignature(CadesSignerInfo, ICadesPolicyMapper, DateTimeOffset?, IReferencedCrlStore)`

```csharp
public ValidationResults ValidateSignature(CadesSignerInfo signerInfo, ICadesPolicyMapper policyMapper, DateTimeOffset? dateReference = null, IReferencedCrlStore crlStore = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `signerInfo` | [`CadesSignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesSignerInfo) |  |
| `policyMapper` | [`ICadesPolicyMapper`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/ICadesPolicyMapper) |  |
| `dateReference` | [`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `crlStore` | [`IReferencedCrlStore`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/IReferencedCrlStore) |  |

**Retorno**

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

---

### `ValidateSignature(CadesSignerInfo, ICadesPolicyMapper, ValidationContext)`

```csharp
public ValidationResults ValidateSignature(CadesSignerInfo signerInfo, ICadesPolicyMapper policyMapper, ValidationContext validationContext)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `signerInfo` | [`CadesSignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesSignerInfo) |  |
| `policyMapper` | [`ICadesPolicyMapper`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/ICadesPolicyMapper) |  |
| `validationContext` | [`ValidationContext`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/ValidationContext) |  |

**Retorno**

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

---

### `ValidateSignature(CadesSignerInfo, ICadesPolicyMapperBySignerInfo, DateTimeOffset?, IReferencedCrlStore)`

```csharp
public ValidationResults ValidateSignature(CadesSignerInfo signerInfo, ICadesPolicyMapperBySignerInfo policyMapper, DateTimeOffset? dateReference = null, IReferencedCrlStore crlStore = null)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `signerInfo` | [`CadesSignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesSignerInfo) |  |
| `policyMapper` | [`ICadesPolicyMapperBySignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/ICadesPolicyMapperBySignerInfo) |  |
| `dateReference` | [`DateTimeOffset?`](https://learn.microsoft.com/dotnet/api/system.datetimeoffset) |  |
| `crlStore` | [`IReferencedCrlStore`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/IReferencedCrlStore) |  |

**Retorno**

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

---

### `ValidateSignature(CadesSignerInfo, ICadesPolicyMapperBySignerInfo, ValidationContext)`

```csharp
public ValidationResults ValidateSignature(CadesSignerInfo signerInfo, ICadesPolicyMapperBySignerInfo policyMapper, ValidationContext validationContext)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `signerInfo` | [`CadesSignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/CadesSignerInfo) |  |
| `policyMapper` | [`ICadesPolicyMapperBySignerInfo`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Cades/ICadesPolicyMapperBySignerInfo) |  |
| `validationContext` | [`ValidationContext`](https://docs.lacunasoftware.com/api/Lacuna.Pki.Stores/ValidationContext) |  |

**Retorno**

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

---

### `WriteEncapsulatedContent(Stream)`

```csharp
public void WriteEncapsulatedContent(Stream stream)
```

**Parâmetros**

| Nome | Tipo | Descrição |
|---|---|---|
| `stream` | [`Stream`](https://learn.microsoft.com/dotnet/api/system.io.stream) |  |

---

## 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)
