---
title: "Assinaturas web remotas"
description: "Assinaturas web remotas: assinatura em aplicação web com o backend controlando o processo e a chave privada disponível só no cliente, na maioria dos casos."
canonical: "https://docs.lacunasoftware.com/articles/pki-guide/web-signatures/remote"
locale: "pt-BR"
product: "Certificação Digital"
last_updated: "2026-10-12"
---

# Assinaturas web remotas

Uma *assinatura remota* é uma [assinatura digital](https://docs.lacunasoftware.com/articles/pki-guide/signatures) realizada com uma chave privada que não está disponível localmente,
ou seja, em que o algoritmo de assinatura em si precisa ser computado remotamente. Como a realização do algoritmo pode depender de
diversos fatores como latência de rede e intervenção do usuário, o processo de realizar assinaturas remotamente é inerentemente
assíncrono, significando que o processo se inicia, espera-se a realização remota do algoritmo e só então finaliza-se o processo.

Chamamos de *assinaturas web remotas* o caso especial de assinaturas remotas em que o processo de assinatura está sendo realizado numa
aplicação web com o backend controlando o processo, porém utilizando um certificado do usuário, cuja chave privada está disponível
somente no lado do cliente.

Na maioria dos casos **esta é a forma recomendada de implementar assinaturas web com nossos produtos** (veja o artigo
[assinaturas web](https://docs.lacunasoftware.com/articles/pki-guide/web-signatures) para exceções).

Esse processo, em linhas gerais, ocorre da seguinte maneira:

1. O backend inicia a assinatura, gerando os bytes que precisam ser utilizados como entrada do algoritmo de assinatura utilizando
   a chave privada do usuário (chamados de "to-sign-data")
1. O "to-sign-data" é transmitido para o lado do cliente
1. O algoritmo de assinatura é realizado no frontend com a chave privada do certificado do usuário
1. O resultado do algoritmo de assinatura é transmitido de volta ao servidor
1. O backend finaliza o processo de assinatura

![Web remote signature sequence](https://docs.lacunasoftware.com/images/pki-guide/web-remote-signature-sequence.png)

> **Observação**
>
> Isso é apenas uma visão geral. Existem passos adicionais, como ler a codificação binária do certificado no frontend e enviar
> ao backend.

**A forma recomendada de implementar assinaturas web remotas é utilizando o [Rest PKI Core](https://docs.lacunasoftware.com/articles/rest-pki/core)** em conjunto com
o [Web PKI](https://docs.lacunasoftware.com/articles/web-pki).

## Passo-a-passo

1. Siga os [Primeiros passos](https://docs.lacunasoftware.com/articles/rest-pki/core/integration/get-started) da documentação do Rest PKI Core: obtenha o endpoint e uma chave de
   API e adicione a biblioteca cliente da sua linguagem
1. Leia [Assinaturas em duas etapas](https://docs.lacunasoftware.com/articles/rest-pki/core/integration/two-step-signatures), que implementa o processo acima numa página da sua
   aplicação, com o Web PKI
1. Execute o exemplo *PAdES signature* com o Rest PKI Core do projeto [PkiSuiteSamples](https://github.com/LacunaSoftware/PkiSuiteSamples) da sua
   linguagem (.NET, Java, Node.js, PHP, Python ou Ruby)

> **Dica**
>
> Embora a solução envolva o Rest PKI Core em conjunto com o Web PKI (para as operações no backend e frontend respectivamente),
> **concentre-se na documentação do Rest PKI Core**, que já mostra o uso dos dois produtos integrados. Se preferir não construir a página de
> assinatura, crie uma [sessão de assinatura](https://docs.lacunasoftware.com/articles/rest-pki/core/integration/signature-sessions): a sua aplicação redireciona o usuário
> para uma página hospedada pelo Rest PKI Core, onde ele assina com o Web PKI ou com um certificado em nuvem.

## Implementações alternativas

Se a sua aplicação web for em .NET (C#, VB.NET, C++.NET), você pode também utilizar o [PKI SDK](https://docs.lacunasoftware.com/articles/pki-sdk) no backend
em conjunto com o Web PKI no frontend. Para mais informações, veja o artigo
[Assinatura com chave remota](https://docs.lacunasoftware.com/articles/pki-sdk/signatures/web-remote) na documentação do SDK.

Se você já possui uma biblioteca de terceiros para certificação digital ou deseja implementar o código do backend você mesmo,
você pode também utilizar o [Web PKI](https://docs.lacunasoftware.com/articles/web-pki) apenas para realizar as operações necessárias no frontend.

As aplicações já integradas ao [Rest PKI](https://docs.lacunasoftware.com/articles/rest-pki), produto legado que continua recebendo correções de bugs e de segurança, podem
continuar seguindo a documentação dele, que mostra o Rest PKI e o Web PKI integrados. Para levar uma delas ao Rest PKI Core, veja
[Migração do Rest PKI para o Rest PKI Core](https://docs.lacunasoftware.com/articles/rest-pki/core/integration/migrating-from-rest-pki).
