IoT Security System com criptografia AES
Na era dos dispositivos interconectados, a garantia de sistemas de IoT é fundamental para proteger dados confidenciais do acesso não autorizado.Este projeto demonstra um sistema de segurança da IoT que aproveitava a criptografia AES (padrão avançado de criptografia) para transformar dados de texto simples em um "código secreto" que apenas os usuários autorizados podem decifrar.

Ao integrar o AES com uma moeda do Indusboard, garantimos que os dados transmitidos pelo Wi-Fi, como leituras de sensores ou mensagens do usuário, permaneçam confidenciais e à prova de violação.O sistema se alinha ao conceito do sistema de segurança de moedas da Indusboard, enfatizando a criptografia robusta para aplicativos de IoT.
O AES é um algoritmo de criptografia simétrica amplamente utilizado por sua eficiência e força.Aqui, nós o usamos para criptografar dados na placa de moeda, que suporta EAs acelerados por hardware por meio de seu mecanismo criptográfico.Este projeto evolui em duas partes:
Uma demonstração de criptografia independente usando AES-256.
Um sistema de remetente-remetente da IoT com uma interface da web para criptografar e descriptografar mensagens no modo AP/STA.
Suportado em qualquer placa e chip que apresenta aceleração de hardware AES embutida.O sistema de segurança da Indusboard Coin poderia teoricamente se integrar à IoT, usando AES juntamente com elementos seguros como o ATECC608A para armazenamento de chaves, embora este projeto se concentre no AES baseado em software para simplificar.
O AES (padrão de criptografia avançado) é um algoritmo de criptografia simétrica estabelecido pelo Instituto Nacional de Padrões e Tecnologia dos EUA (NIST) em 2001. É amplamente usado para proteger dados em aplicativos que variam de dispositivos bancários a IoT devido à sua velocidade, eficiência e segurança.O AES opera em blocos de dados de tamanho fixo (16 bytes ou 128 bits) e suporta tamanhos-chave de 128, 192 ou 256 bits-aqui, usamos variantes AES-128 e AES-256.
Como funciona o AES
Expansão-chave: A chave de criptografia (por exemplo, 32 bytes para AES-256) é expandida para um conjunto de chaves redondas usando uma programação-chave.Cada chave redonda é usada nas etapas de transformação subsequentes.
Processo de criptografia:
Subbytes: Cada byte do bloco de 16 bytes é substituído usando uma caixa S predefinida (caixa de substituição), adicionando não linearidade.
Shiftrows: As linhas do bloco são deslocadas ciclicamente para difundir os dados.
MixColumns: as colunas são misturadas usando uma transformação matemática para embarcar nos dados.
AddRoundkey: O bloco é xored com uma chave redonda.Esse processo se repete para várias rodadas (10 para AES-128, 14 para AES-256).
Decripção: As operações inversas (InvSubbytes, InvShiftrows, etc.) são aplicadas com a mesma chave para recuperar os dados originais.
Modos: os AES podem operar em modos como BCE (livro de código eletrônico) ou CBC (encadeamento de blocos cifra).O BCE criptografa cada bloco de forma independente, enquanto a CBC usa um vetor de inicialização (iv) para encadear blocos, aumentando a segurança.