Apresentando o BOLOS: Blockchain Open Ledger Operating System

Temos o prazer de apresentar o sistema operacional da Ledger, projetado pela sua equipe de firmware e aproveitando a experiência de alimentar milhões de elementos seguros incorporados no empreendimentos anteriores: o Blockchain Open Ledger Operating System, também conhecido como BOLOS.

O BOLOS representa uma grande mudança em comparação com o que a indústria de cartões inteligentes oferece hoje — ele coloca os desenvolvedores no comando, fornecendo uma estrutura discreta para criar aplicativos nativos portáteis de código-fonte em torno de um núcleo seguro, protegendo o núcleo contra ataques de aplicativos e isolando aplicativos de cada outro sem atrapalhá-lo em nada.

BOLOS é a maneira de transformar carteiras de hardware para Bitcoin em dispositivos de segurança pessoal — os usuários podem revisar e instalar aplicativos de terceiros que adicionarão novos recursos de privacidade em cima de seu próprio conjunto compartilhado de material criptográfico, sem expor esse material.

⚙ Implementação do BOLOS ⚙

A Ledger Blue apresentou a primeira implementação nativa do BOLOS. O isolamento é fornecido nativamente pela unidade de proteção de memória ARM e modos operacionais — cada aplicativo pode acessar apenas sua própria região de memória e opera no modo de usuário, interagindo com o sistema operacional em execução no modo supervisor.

Este mecanismo de isolamento estava disponível tanto no elemento seguro da Ledger Blue quanto em seu MCU não seguro, com uma implementação de código aberto fornecida para o MCU não seguro, pois gostaríamos de encorajar novos designs para usar MCUs ARM aproveitando esses mecanismos de proteção (como a linha STM32L0 da ST Microelectronics)

⚙ Implementação do BOLOS na aplicação do Ledger TEE ⚙

Ledger TEE (Ledger Trustlet) em um Samsung S6 Edge — Antio aplicativo da Ledger (INDISPONÍVEL)

O aplicativo TEE que foi disponibilizado para telefones Android com Trustonic TEE é baseado em um conceito diferente, mas um tanto semelhante — afinal, os TEEs oferecem uma versão avançada desse mecanismo de isolamento, então vamos considerá-los como uma caixa preta à qual não temos acesso mas fornece um conjunto semelhante de funcionalidades.

Ao lidar com esse modelo de caixa preta, fornecemos isolamento por meio de uma CPU virtual, reutilizando a arquitetura Moxie projetada por Anthony Green e já experimentada para casos de uso de Bitcoin por Jeff Garzik. Isso nos permite implementar aplicativos avançados de contrato inteligente com um impacto mínimo no desempenho, considerando que as CPUs habilitadas para TrustZone são significativamente mais poderosas do que um smartcard comum.

A mesma arquitetura também é usada para suportar BOLOS em HSMs.

Implementação do BOLOS no TEE

⚙ Módulos BOLOS ⚙

O BOLOS é organizado como um conjunto de blocos de construção simples para criar seus aplicativos:

  • Um bloco de entrada/saída para se comunicar com o mundo externo e periféricos de terceiros
  • Um bloco criptográfico implementando primitivas criptográficas de baixo nível
  • Um bloco de armazenamento para armazenamento no dispositivo, quando disponível
  • Um bloco de empacotamento para armazenamento de dispositivo externo, permitindo vincular dados com segurança ao aplicativo BOLOS em execução
  • Um bloco de endosso fornecendo prova de execução do aplicativo BOLOS
  • Um bloco de interface do usuário para confirmação e presença do usuário

Para mais informações, você pode consultar nossa página Doxygen: https://ledgerhq.github.io/bolos-tee/

Esse artigo descrevia como criar e executar seu primeiro aplicativo BOLOS no TEE e na Ledger Blue.

O aplicativo TEE estava disponível na Play Store — para usá-lo para fins de desenvolvimento, certifique-se de fornecer uma chave pública descompactada secp256k1 no menu “Opções” antes de comprar a licença.

Fonte: ledger.com

Compartilhe este artigo nas redes sociais

Veja outras categorias

Artigos relacionados

Trezor

Polygon no Trezor Suite

Polygon, anteriormente Matic Network, é uma estrutura que facilita a construção e conexão de projetos blockchain no Ethereum, resolvendo problemas de escalabilidade como altas taxas de gas e transações lentas,

Leia mais