Public Access
The MeshCore preset is the default for a new device, in the Settings and in the radio before the Scanner is opened. The setting now accepts it: it only took the 7 Meshtastic presets, so MeshCore picked in the App was not saved. Messages on MeshCore's public channel are decrypted with the channel's published key (AES-128, checked with 2 bytes of HMAC-SHA256): the row shows who says they sent it and the start of the text, the details the sender, the time and the whole text. Other channels and private messages stay encrypted. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0162FokPdvY2KsS4NBfwyWPk
19 lines
464 B
C++
19 lines
464 B
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
|
|
namespace roro::meshcore {
|
|
|
|
// AES-128 (FIPS 197), one block at a time, decryption only: what reading a MeshCore message
|
|
// takes. Small and dependency-free, so the same code runs in the PC tests and on the device.
|
|
class Aes128 {
|
|
public:
|
|
explicit Aes128(const uint8_t key[16]);
|
|
void decryptBlock(const uint8_t in[16], uint8_t out[16]) const;
|
|
|
|
private:
|
|
uint8_t roundKeys_[176];
|
|
};
|
|
|
|
} // namespace roro::meshcore
|