Uma chave de interface de programação de aplicativo (API) é um código exclusivo usado por uma API para identificar um aplicativo ou usuário. As chaves de API são usadas para rastrear e controlar quem usa a API e como, e para autenticar e autorizar aplicativos de maneira semelhante a senhas e logins. Uma chave de API pode ser uma única chave ou um conjunto de várias chaves. Os usuários devem prestar atenção à sua segurança para se protegerem contra roubo e vazamento de dados.

API e chave de API

Para entender o que é uma chave de API, primeiro você deve examinar a própria API. Uma interface de programação de aplicativos, ou API, é um intermediário de software que permite a troca de informações entre dois ou mais aplicativos. Por exemplo, a API CoinMarketCap permite que outros aplicativos recuperem e usem dados de criptomoedas, como preço, volume e capitalização de mercado.

Uma chave de API pode ser uma única chave ou um conjunto de várias chaves. Vários sistemas usam essas chaves para autenticar e autorizar aplicativos, assim como logins e senhas. A chave da API é usada pelo cliente da API para autenticar o aplicativo que chama a API.

Por exemplo, se a Binance Academy quiser usar a API CoinMarketCap, então a CoinMarketCap irá gerar uma chave de API e usá-la para autenticar a Binance Academy (cliente API) que está solicitando acesso à API. Quando a Binance Academy acessa a API CoinMarketCap, a chave API é enviada ao CoinMarketCap junto com a solicitação.

Neste exemplo, apenas a Binance Academy pode usar a chave API sem compartilhá-la com terceiros. Compartilhar esta chave de API permitirá que terceiros acessem o CoinMarketCap e realizem ações em nome da Binance Academy.

Além disso, a API CoinMarketCap pode usar a chave API para verificar se o aplicativo está autorizado a acessar o recurso solicitado. Os proprietários de API também podem usar chaves de API para rastrear atividades de API, incluindo tipos de solicitação, tráfego e volume.

O que é uma chave de API

A chave de API é usada para controlar e rastrear quem está usando a API e como. O próprio termo “chave de API” pode ter vários significados. Alguns sistemas possuem apenas um código, enquanto outros possuem vários códigos para uma única chave de API.

Em outras palavras, uma chave de API é um código exclusivo ou um conjunto de códigos exclusivos usados ​​por uma API para autenticar e autorizar o usuário ou aplicativo chamador. Alguns códigos são usados ​​para autenticação, enquanto outros são usados ​​para criar assinaturas criptográficas que confirmam a legitimidade da solicitação.

Esses códigos de autenticação são chamados de “chave API”, enquanto os códigos para criação de assinaturas criptográficas possuem vários nomes, como “chave secreta”, “chave pública” ou “chave privada”. A autenticação envolve a identificação das entidades envolvidas e a confirmação da identidade.

A autorização, por sua vez, determina os serviços API aos quais o acesso é permitido. Uma chave de API funciona de forma semelhante a um login e senha de conta e também pode ser vinculada a outros recursos de segurança para aumentar a segurança geral.

O proprietário da API gera cada chave de API especificamente para uma entidade específica (mais sobre isso abaixo) e cada vez que um endpoint de API é chamado e requer autenticação e/ou autorização do usuário, a chave correspondente é usada.

Assinaturas criptográficas

Algumas chaves de API usam assinaturas criptográficas como uma camada adicional de verificação. Quando um usuário deseja passar determinados dados para a API, uma assinatura digital gerada por uma chave diferente pode ser adicionada à solicitação. Usando criptografia, o proprietário da API poderá verificar se a assinatura digital corresponde aos dados enviados.

Assinaturas simétricas e assimétricas

As seguintes categorias de chaves criptográficas são usadas para assinar dados enviados por meio da API:

Chaves simétricas

Eles envolvem o uso de uma chave secreta para assinar dados e verificar a assinatura. Ao usar chaves simétricas, o proprietário da API gera uma chave de API e uma chave secreta, que é usada para verificação de assinatura por serviços de API. A principal vantagem de usar uma única chave é que ela acelera o processo de geração e verificação de assinaturas e requer menos poder computacional. Um exemplo de uma boa chave simétrica é o HMAC.

Chaves assimétricas

Envolvem a utilização de duas chaves: privada e pública, que são diferentes entre si, mas possuem conexão criptográfica. A chave privada é usada para gerar a assinatura e a chave pública é usada para verificá-la. O proprietário da API gera a chave da API e o usuário gera as chaves privada e pública. Para verificar a assinatura, o proprietário da API utiliza apenas a chave pública, enquanto a chave privada é mantida em segredo.

A principal vantagem do uso de chaves assimétricas é o aumento da segurança ao separar as tarefas de geração e verificação de assinaturas. Isso permite que sistemas externos verifiquem assinaturas sem serem capazes de gerá-las. Além disso, alguns sistemas de criptografia assimétrica suportam a adição de uma senha às chaves privadas. Um exemplo é um par de chaves RSA.

Segurança da chave API

A segurança da chave API é de responsabilidade do usuário. As chaves de API funcionam como senhas e exigem o mesmo cuidado. Você não deve compartilhar sua chave API com terceiros, pois isso seria semelhante ao compartilhamento de sua senha e poderia colocar sua conta em risco.

As chaves de API costumam ser alvo de ataques cibernéticos porque podem ser usadas para realizar operações confidenciais do sistema, como solicitar informações pessoais ou realizar transações financeiras. Já houve casos em que invasores atacaram bancos de dados online com códigos e roubaram chaves de API.

O roubo de chaves de API pode levar a consequências negativas e perdas financeiras significativas. Além disso, algumas chaves de API não expiram, portanto, os invasores podem usá-las antes que as chaves sejam desativadas.

Dicas para usar chaves de API com segurança

As chaves de API fornecem acesso a dados confidenciais, por isso é fundamental usá-las com segurança. Siga estas diretrizes para uso seguro de chaves de API:

  1. Tente alterar as chaves de API periodicamente. Para alterar a chave, você deve excluir a chave de API atual e criar uma nova. Ao usar vários sistemas, não é difícil excluir e gerar chaves de API. Assim como alguns sistemas exigem alterações de senha a cada 30 a 90 dias, os proprietários de chaves devem alterar as chaves de API na mesma frequência, se possível.

  2. Crie uma lista branca de endereços IP. Ao criar uma nova chave de API, crie uma lista de endereços IP que terão permissão para usar essa chave (lista de permissões de IP). Além disso, você também pode especificar uma lista de endereços IP bloqueados (lista negra de IP). Então, se a chave for roubada, o endereço IP não reconhecido não poderá usá-la.

  3. Use várias chaves de API. Ter diversas chaves e distribuir tarefas entre elas reduz os riscos, pois a segurança da conta não dependerá de uma chave usada para todas as tarefas ao mesmo tempo. Além disso, para cada chave você pode criar diferentes listas brancas de endereços IP, aumentando significativamente o nível de segurança.

  4. Certifique-se de que as chaves de API sejam armazenadas com segurança. Não armazene chaves em locais públicos, em computadores públicos ou em formato de texto simples. Para aumentar a segurança de cada chave, use criptografia ou um serviço de gerenciamento de dados confidenciais e tome cuidado para não revelá-los acidentalmente.

  5. Não compartilhe suas chaves de API com ninguém. Fornecer a alguém uma chave de API é o mesmo que fornecer uma senha. Nesse caso, o terceiro recebe os mesmos recursos de autenticação e autorização que você. No caso de vazamento de dados, a chave API pode ser roubada e usada para hackear sua conta. A chave API deve ser usada apenas por você e pelo sistema que a gera.

Se sua chave de API cair nas mãos de terceiros, desative-a para evitar maiores danos. Em caso de perda financeira, faça capturas de tela das principais informações sobre o incidente e entre em contato com as organizações competentes, bem como registre um boletim de ocorrência. Dessa forma, você pode aumentar suas chances de recuperar fundos perdidos.

Para concluir

As chaves de API fornecem funções de autenticação e autorização, portanto os usuários devem armazená-las com segurança e usá-las com cautela. Existem muitos níveis e maneiras de proteger as chaves de API. A chave API deve ser tratada da mesma forma que a senha da sua conta.

Leitura recomendada

  • Princípios gerais de segurança

  • 5 tipos comuns de golpes de criptomoeda e como evitá-los