Aere Network public source. Everything here can be checked against the live chain (chain id 2800, https://rpc.aere.network). Scope note, stated up front rather than buried: consensus on chain 2800 is classical secp256k1 ECDSA QBFT. The post-quantum work in this repository is at the signature, precompile, account and transport layers. Nothing here makes the consensus post-quantum, and no document in it should be read as claiming so.
25 lines
734 B
Solidity
25 lines
734 B
Solidity
// SPDX-License-Identifier: MIT
|
|
pragma solidity ^0.8.20;
|
|
|
|
/// @title AerePingCounter - harmless call target for modular-account tests and
|
|
/// live session-key proofs on chain 2800.
|
|
contract AerePingCounter {
|
|
uint256 public pings;
|
|
uint256 public forbiddenCalls;
|
|
|
|
event Ping(address indexed from, uint256 count, uint256 value);
|
|
|
|
/// @notice The in-scope call: increments a counter, optionally accepts value.
|
|
function ping() external payable {
|
|
pings += 1;
|
|
emit Ping(msg.sender, pings, msg.value);
|
|
}
|
|
|
|
/// @notice Deliberately OUT of session scope in tests (wrong-selector case).
|
|
function forbidden() external {
|
|
forbiddenCalls += 1;
|
|
}
|
|
|
|
receive() external payable {}
|
|
}
|