Chaves Públicas vs Chaves Privadas: O que é PKC em Cripto

| Pontos Principais: |
| — O objetivo das chaves públicas e privadas é provar que uma transação enviada não foi forjada, mas que foi de fato assinada pelo proprietário dos fundos. — Ao possuir criptomoedas, o que você realmente possui é uma “chave privada” que habilita seu direito de detentor para gastar as criptomoedas associadas a ela. Como ela dá acesso às suas criptomoedas, ela deve ser mantida em segredo. — É possível recuperar a chave pública se você possuir a chave privada. No entanto, é impossível encontrar a chave privada usando apenas a chave pública. |
Se você tem se aventurado em cripto por algum tempo, pode ser que esteja se perguntando como funciona a sua carteira de criptomoedas. Você não está sozinho, porque a sua carteira não é a tecnologia mais simples de entender.
Naturalmente, há muitos aspectos no funcionamento de uma carteira de criptomoedas: a tecnologia blockchain subjacente que permite sua operação, o dispositivo utilizado para iniciar a transação e como esse dispositivo interage com a rede. Mas, se quiser se aprofundar para entender as carteiras de criptomoedas, talvez queira começar entendendo como elas funcionam na blockchain primeiro.
Provavelmente já sabe que a sua carteira de criptomoedas utiliza chaves públicas e privadas para funcionar. Mas sabia que chaves públicas e privadas existem muito antes das criptomoedas? Tudo graças a um conceito de criptografia chamado Criptografia de Chave Pública (PKC, ou “Public Key Cryptography”) ou Encriptação Assimétrica.
Mas o que é isso exatamente?
A Origem das Chaves Públicas e Privadas
O objetivo geral do PKC é permitir uma comunicação segura e privada usando assinaturas digitais em um canal público, em que podem existir espiões maliciosos.
Ao fazer isso, a PKC permite transições de um estado para outro, tornando quase impossível reverter o processo. Este processo prova que se tem acesso ao segredo sem revelá-lo a nenhuma outra parte. Para realizar isso com sucesso, a PKC utiliza um importante conceito matemático unidirecional, chamado função arapuca (“trapdoor function”). De forma simples, as Funções Arapuca são problemas matemáticos fáceis de computar em uma direção, mas quase impossíveis de reverter. Em essência, é perfeito para validar a autenticidade, pois a função arapuca significa que não pode ser falsificado.
Resolver esse problema exigirá uma enorme quantidade de tempo dos computadores (ou seja, milhares de anos) para calcular a resposta correta. No contexto do PKC, truques matemáticos como decomposição em fatores primos são as funções arapuca que impossibilitam a engenharia reversa (ou seja, a falsificação) de assinaturas criptográficas. Essencialmente, isso exigiria que o computador resolvesse um problema matemático virtualmente insolúvel.
Para manter a sua segurança, o PKC depende de um modelo de duas chaves: as chaves pública e chave privada. São esses dois componentes importantes que trabalham juntos para manter as suas informações importantes em segurança. Mas o que isso tem a ver com cripto?
Chaves Públicas e Privadas em Criptomoedas
De fato, a chave pública e as chaves privadas são essenciais para o funcionamento da blockchain pública. No contexto das criptomoedas, a PKC é usada para provar que uma transação foi assinada pelo proprietário dos fundos, em vez de ser o resultado de uma falsificação.
Então, como isso se encaixa na tecnologia blockchain que já conhecemos? E o que, afinal, significa “assinar” uma transação? Primeiro, vamos relembrar como as chaves públicas e privadas funcionam em carteiras cripto.
Chaves Públicas e Privadas em Carteiras de Criptomoedas
Normalmente, cada carteira cripto usa uma chave privada e uma chave pública. Ou seja, sua chave pública pode ser compartilhada com qualquer pessoa. Por outro lado, a sua chave privada é o código que permitirá o acesso de qualquer pessoa aos fundos armazenados neste endereço público.
Mas, na verdade, há mais do que isso.
O que são chaves privadas?
As chaves privadas são o fundamento de toda conta blockchain, sendo necessárias até mesmo para realizar as ações mais simples. Quando as pessoas dizem que “possuem” criptomoedas, o que elas realmente possuem é a chave privada da carteira associada a esses ativos. Em outras palavras, as criptomoedas vivem sempre na rede blockchain ao invés de “armazenadas” na carteira de criptomoedas em si. O usuário possui, na realidade, a chave privada dá acesso à conta.
A “chave privada” dá direito ao detentor de transferir, mover ou gastar as criptomoedas associadas. No entanto, se alguém tiver acesso a isso, também terá acesso à sua conta. É por isso — como o próprio nome sugere — que ela deve permanecer privada. Existe apenas uma chave privada para a conta, que funciona como uma senha privada que apenas o usuário deve conhecer.
No entanto, a sua chave privada não dá só acesso aos fundos. Ela controla como a sua carteira de criptomoedas funciona, e como ela interage com outras contas. A maioria das carteiras de criptomoedas usa a sua chave privada para criar a sua chave pública.
O que são Chaves Públicas?
As chaves públicas são visíveis para todos os usuários da rede e, às vezes, até mesmo além da rede. Essencialmente, as chaves públicas funcionam como um número de conta. Elas tornam cada carteira exclusivamente identificável para os participantes da rede. Assim como a chave privada, uma chave pública é composta por uma longa sequência de números. Geralmente, ela é gerada através da chave privada, mas esse nem sempre é o caso. A chave pública também permite criar uma coisa que você provavelmente está acostumado a ver, o endereço na blockchain. Os seus endereços na blockchain são simplesmente versões em hash dessa chave pública.
O Que é um Endereço de Blockchain?
O seu endereço blockchain é o código que pode ser compartilhado com outras pessoas para se receber criptomoedas. Normalmente, ele é derivado da sua chave pública. Ao enviar cripto para outra pessoa, é este endereço que ela vai ver. Na rede Ethereum, é aquele número longo, hexadecimal, que começa com 0x. E no caso do Bitcoin, note que a sua carteira Bitcoin gerará um novo endereço sempre que for negociar. Ambos os métodos são adequados. Em outras palavras, esse endereço de blockchain é totalmente seguro de se compartilhar.
Chaves Públicas vs Chaves Privadas: Como elas funcionam?
Agora você já sabe o que são chaves privadas e chaves públicas. Mas como elas funcionam? Cada uma tem suas funções específicas, mas ambas são igualmente importantes na execução e aprovação de transações. Dito isso, a forma como as suas chaves pública e privada interagem depende inteiramente do que se está tentando fazer com a sua carteira cripto.
Embora o PKC torne a encriptação e a assinatura possíveis, redes cripto usam apenas a assinatura. A assinatura serve para verificar a autenticidade de uma transação, garantindo que ela não foi forjada nem adulterada. Vamos ver como funciona.
Assinar uma transação com sua chave privada
Por exemplo, digamos que você queira enviar 1 ETH para o seu amigo Beto usando a rede Ethereum. Nesse caso, é possível saber o endereço de blockchain do Beto. Assim como no seu caso, o Beto também tem um conjunto definido de chaves públicas e privadas. A chave privada dele é a única que controla o endereço da chave pública correspondente.
Ao tentar enviar ether, é preciso necessário iniciar uma solicitação de transação. Nessa solicitação, especifica-se a quantia que se deseja enviar e para onde enviá-la — neste caso, queremos enviar 1 ETH para a conta do Beto. A partir daí, sua carteira cripto usa sua chave privada para assinar a transação. Uma assinatura é como uma impressão digital: ela prova à blockchain a sua intenção de realizar o plano na mensagem em anexo. Isso também prova que você é quem diz ser. Sua assinatura é criada por sua chave privada e inclui os detalhes da transação, que eventualmente se tornam parte dos dados da transação.
Após a assinatura, a transação assinada é transmitida à rede. Isso significa que cada node na rede pode revisá-la. Neste exemplo, os validadores da Ethereum verificam se a assinatura corresponde à sua chave pública, garantindo que você é quem diz ser e, portanto, possui os fundos que está tentando gastar. Eles também verificam se o endereço de Beto realmente existe na rede e se a transação é válida como um todo. Se as condições forem cumpridas, a transação será confirmada. O 1 ether desaparecerá da sua conta e chegará à de Beto.
Como proprietário da sua chave privada, apenas o titular pode assinar a transação capaz de movimentar os seus fundos. Desde que a chave privada seja mantida em segredo, ninguém poderá movimentar os seus fundos na blockchain. Sim — mesmo compartilhando sua chave pública, seu endereço e as assinaturas de todas as suas transações, seus fundos ficam seguros. É por isso que funções arapucas são brilhantes.
Chaves Privadas vs Públicas: A Base da sua Carteira de Criptomoedas
Claro, as chaves públicas e privadas são apenas o começo para entender o funcionamento interno de sua carteira de criptomoedas. Embora elas forneçam a base para transferir valor peer-to-peer, as carteiras de criptomoedas evoluíram para fazer mais do que isso. Atualmente, existem vários tipos diferentes de carteiras, que usam essa tecnologia de uma forma ligeiramente diferente.
Quer saber mais sobre a sua carteira de criptomoedas? Continue lendo para se aprofundar em como as carteiras de hoje funcionam, e como elas permitem gerenciar várias contas a partir de uma única interface.
