Emissão de credenciais explicada: da oferta à credencial aceite
O OpenID4VCI é a norma europeia para colocar uma credencial na wallet de alguém: um diploma, um registo comercial, um certificado de inspeção. Entregar uma parece um único momento para o titular, mas várias coisas têm de encaixar por detrás, e cada uma delas pode falhar à sua maneira. Esta página percorre isso, usando uma transportadora como exemplo.
Duas formas de começar uma emissão
A maior parte das emissões começa com o emissor a oferecer uma credencial, normalmente como código QR ou ligação. Se o titular tem depois de se autenticar depende de uma coisa: o emissor já sabe com quem está a lidar. Ambos os caminhos terminam no mesmo sítio, com a credencial na wallet.
O titular já é conhecido
1. Issuer
Já sabe com quem está a lidar e oferece a credencial ali mesmo
2. Wallet
Aceita a oferta, por vezes confirmando um código curto enviado à parte
3. Wallet
Recolhe a credencial e liga-a a este dispositivo
O titular tem de se autenticar primeiro
1. Wallet
Começa a partir de uma oferta, ou vai ao emissor por iniciativa do titular
2. Autenticação do emissor
Conduz o titular pela autenticação e pela aceitação do que vai ser emitido
3. Wallet
Recolhe a credencial e liga-a a este dispositivo
O ciclo de vida completo de uma oferta de credencial
Uma emissão percorre os passos abaixo. Cada um pode falhar por si, e são essas falhas que uma linha de apoio acaba por tratar, por isso vale a pena saber onde se situam antes de desenhar o processo à sua volta.
Um exemplo prático: um certificado de inspeção para uma frota de transporte de mercadorias
Um centro de inspeção de veículos emite um certificado de inspeção para a business wallet de uma transportadora após uma inspeção de rotina. O inspetor já confirmou presencialmente quem é o gestor de frota no centro de inspeção, pelo que não há razão para o obrigar a autenticar-se de novo.
1. A oferta
O terminal no centro de inspeção mostra um código QR
Lê-lo abre a wallet e mostra que credencial está a ser oferecida
2. O que está a ser oferecido
A wallet lê a descrição da credencial publicada pelo emissor
Assim o gestor de frota vê o que o certificado contém antes de aceitar seja o que for
3. Confirmação
A wallet confirma um código curto que o centro de inspeção enviou por SMS ao gestor de frota
Quem fotografa o código QR por cima do ombro continua a não conseguir recolher o certificado
4. Ligá-la à wallet
A wallet prova que detém um segredo que nunca sai do dispositivo
O certificado está ligado a esse segredo, pelo que uma cópia dele não vale nada noutro dispositivo
5. Emitido e guardado
O centro de inspeção assina o certificado e a wallet guarda-o
A partir daqui a transportadora pode mostrá-lo a um cliente ou a um agente fiscalizador em segundos
Quando a credencial ainda não está pronta
O exemplo acima pressupõe que o resultado da inspeção é definitivo. Se um resultado limite tiver de passar primeiro por um inspetor sénior, o certificado não pode ser entregue no momento. A norma cobre esse caso em vez de obrigar o gestor de frota a voltar.
Emitida no momento
O titular sai com a credencial na sua wallet, de uma só vez.
Emitida mais tarde
O emissor diz que precisa de mais tempo, e a wallet recolhe a credencial assim que ela estiver pronta. O titular não tem de começar de novo nem de voltar presencialmente.
Fechar o ciclo
Depois da emissão, a wallet pode dizer ao emissor como ela terminou. Isto é opcional para ambos os lados e a entrega não é garantida, pelo que é útil para detetar um fluxo avariado, mas um emissor não pode concluir nada de uma mensagem que nunca chega.
Wallet
Pode dizer ao emissor como terminou a emissão
Guardada
A credencial está na wallet e pronta a usar
Falhou
Algo correu mal, por exemplo a credencial não passou na verificação
Recusada
O titular optou por não a guardar
O que isto significa para si
Issuer
Uma forma normalizada de entregar credenciais que todas as wallets conformes aceitam, sem integração por wallet e sem um portal onde os titulares tenham de se autenticar.
Titular
Vê o que lhe está a ser dado antes de o aceitar, e fica ligado ao seu dispositivo e não a uma autenticação que possa perder.
Verificador
As credenciais chegam já verificadas e já ligadas à wallet que as apresenta, pelo que aceitar uma é uma verificação e não uma investigação.
Aprofundamento técnico
Esta página explica o que a tecnologia faz e a quem diz respeito. A nossa documentação para programadores cobre a implementação em si: as mensagens, os campos e os exemplos práticos de que uma equipa de integração precisa.
Ler a documentação técnicaTermos relacionados
Perguntas frequentes
Quando é que o titular tem de se autenticar e quando não?
Depende de o emissor já saber com quem está a lidar. Um inspetor que acabou de verificar presencialmente um veículo não precisa que o gestor de frota se autentique outra vez, pelo que a credencial é oferecida no momento. Um serviço online que nunca se cruzou com o titular fá-lo passar primeiro pela sua própria autenticação. A própria oferta indica qual dos dois casos se aplica.
Como é que a wallet sabe o que está prestes a receber?
Cada emissor publica uma descrição daquilo que emite, e a wallet lê-a antes de mais nada. É isso que permite à wallet mostrar ao titular o que a credencial é e o que contém, para que o consentimento signifique alguma coisa. Significa também que um emissor pode acrescentar um novo tipo de credencial sem que todas as wallets precisem de atualização.
O que impede alguém de copiar uma credencial para outro dispositivo?
Antes de emitir, a wallet prova que detém um segredo que nunca sai do dispositivo, e o emissor liga a credencial a esse segredo. Mais tarde, um verificador pode pedir à wallet que prove o mesmo outra vez. Uma cópia da credencial sem esse segredo não passa na verificação, pelo que copiar o ficheiro não serve de nada.
E se a credencial não puder ser emitida de imediato?
Algumas verificações demoram mais do que uma pessoa está disposta a esperar: uma análise manual ou uma consulta a um registo externo lento. O emissor pode dizê-lo, e a wallet recolhe a credencial assim que ela estiver pronta. O titular não tem de começar de novo nem de voltar presencialmente.
O emissor fica a saber se a credencial foi efetivamente guardada?
Pode, mas apenas por cortesia. A wallet pode comunicar que a credencial foi guardada, que o titular a recusou ou que algo falhou. Nenhuma das partes é obrigada a suportar isto e a entrega não é garantida, pelo que um emissor deve tratá-lo como um sinal útil e nunca como um registo do que aconteceu.
Fontes
Esta página tem caráter meramente informativo e não constitui aconselhamento jurídico. Para orientações oficiais, consulte diretamente a OpenID Foundation e a Comissão Europeia.