aboutsummaryrefslogtreecommitdiffstats
path: root/poc/spike6_gek.py
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-09-19 14:24:13 +0200
committerChristophe Besson <cbesson@gmail.com>2026-09-19 14:24:13 +0200
commit86188385cbdae1ee90c1dca7a7b9db2edef1ecd4 (patch)
treecc01153f05e84ad6cd34556caecd3f4bc335d0bd /poc/spike6_gek.py
parentd2495a2c4b89fbbfc18cefec83ae96cabdd745e2 (diff)
downloadmeshbay-86188385cbdae1ee90c1dca7a7b9db2edef1ecd4.tar.gz
style: ruff's own fixes, mechanically applied
`ruff check .` had gone unrun long enough to report 568 errors, which is the same as having no linter: the next real finding would have been invisible in the noise. This is the 521 it fixes by itself, in 173 files, and nothing else — the 98 it cannot fix are the next commit. What actually changed: import sorting (225), imports nobody used (87, none of them a re-export — no `__init__.py` is touched, which was the one way this could have broken an import elsewhere), `datetime.timezone.utc` to `datetime.UTC` (69) and `asyncio.TimeoutError` to `TimeoutError` (18), both plain aliases on the 3.12 this project requires, `Optional[X]` to `X | None` (24), and f-strings with nothing to interpolate (19). Checked rather than assumed: every module in the three packages still imports, and the suite is 2893 passed — the same count, test for test, as the merge before it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'poc/spike6_gek.py')
-rw-r--r--poc/spike6_gek.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/poc/spike6_gek.py b/poc/spike6_gek.py
index 89ab06c..3595d6d 100644
--- a/poc/spike6_gek.py
+++ b/poc/spike6_gek.py
@@ -16,14 +16,20 @@ Validates the full GEK lifecycle:
The hub stores opaque encrypted blobs — it never sees the GEK in cleartext.
"""
-import asyncio, httpx, base64, os, json, time
+import asyncio
+import base64
+import json
+import os
+import time
from pathlib import Path
+
+import blake3
+import httpx
+from cryptography.hazmat.primitives import hashes, serialization
from cryptography.hazmat.primitives.asymmetric.ed25519 import Ed25519PrivateKey
from cryptography.hazmat.primitives.asymmetric.x25519 import X25519PrivateKey, X25519PublicKey
from cryptography.hazmat.primitives.ciphers.aead import ChaCha20Poly1305
from cryptography.hazmat.primitives.kdf.hkdf import HKDF
-from cryptography.hazmat.primitives import hashes, serialization
-import blake3
HUB_URL = "http://meshbay.org"
STATE_FILE = Path("node_state.json")
@@ -218,7 +224,7 @@ async def main():
wrap_ms = (time.perf_counter()-t0)*1000
print(f" {PASS} Wrapped in {wrap_ms:.2f}ms")
print(f" pk_eph : {bundle_bob['pk_eph_b64'][:24]}...")
- print(f" (different from Alice's bundle — ephemeral key is unique)")
+ print(" (different from Alice's bundle — ephemeral key is unique)")
r = await c.post(
f"{HUB_URL}/v1/groups/{group_id}/members/bob_member/gek",
@@ -301,10 +307,10 @@ async def main():
print(f" {PASS} Wrong private key correctly rejected (AEAD auth failed)")
print("\n" + "="*55)
- print(f"Spike 6 COMPLETE — GEK distribution validated.")
+ print("Spike 6 COMPLETE — GEK distribution validated.")
print(f" wrap_gek : {wrap_ms:.2f} ms")
print(f" unwrap_gek : {unwrap_ms:.2f} ms")
- print(f" Hub role : stores opaque bundle, never sees GEK in clear")
- print(f" Security : wrong key rejected by AEAD authentication tag")
+ print(" Hub role : stores opaque bundle, never sees GEK in clear")
+ print(" Security : wrong key rejected by AEAD authentication tag")
asyncio.run(main())