Urgent.News

What's breaking now, across thousands of outlets.

Tech

Secrets locked to silicon: Machine-locked cryptography with wauth

If an attacker steals your database backup or leaks repository files, can they read your API keys? With wauth , encryption keys are derived from host hardware, making stolen vaults completely useless on foreign machines. This is Day 01 of the WAuth Open-Source Engineering Series. Production Implementation: Machine-Locked Key Derivation from wauth import WAuth # Initializes with machine-derived…

Secrets locked to silicon: Machine-locked cryptography with wauth

With wauth, encryption keys are derived from host hardware, making stolen vaults completely useless on foreign machines. This open-source engineering series explores the production implementation and benefits of machine-locked key derivation.

To initialize wauth, simply use WAuth to generate a machine-derived Fernet key bound to the hardware. This encrypted key can then be used to store sensitive secrets, such as the STRIPE_SECRET_KEY, in a secure manner. By setting the secret with the host-locked key, it becomes auto-decrypted only on the authorized host.

The hardware-bound key derivation process involves using a salted machine UUID and host ID to generate the 32-byte Fernet key. This ensures that encrypted vaults stolen from one machine cannot be decrypted on another, eliminating cross-machine portability risks. Additionally, all secrets are stored in local SQLite databases and encrypted at rest, leaving no plaintext leakage on disk.

By adopting wauth, developers can eliminate several attack vectors. Stolen database backups or leaked repository files are rendered useless on foreign machines, as the encrypted keys are tied to the host hardware. Storing symmetric encryption master keys in plaintext environment variables or alongside application code is no longer a concern. Furthermore, wauth provides cryptographically bound local secrets vaults for edge nodes and on-premise servers, enhancing overall security.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

The end of raw SQL strings: Pydantic v2 as your SQLite schema

Why should you maintain separate Pydantic schemas for your FastAPI endpoints and SQLAlchemy models for your database? WSQLite bridges the gap with zero boilerplate and enterprise performance.

  • WSQLite library simplifies SQLite schema management in Python apps
  • Pydantic v2 Native ORM mapping eliminates need for extra libraries
  • Auto-sync schema migrations and thread-safe connection pooling

Stop writing raw Kafka boilerplate in Python: A decorator is enough

Code is read twice as often as it is written — and the Kafka consumer loop is the code nobody enjoys re-reading. WKafka turns the entire consumer skeleton into a single, clean decorator.

  • WKafka library offers @kafka.consumer decorator to streamline Python Kafka consumer code
  • Automatically configures KAFKASERVER environment variable, defaults to localhost:9092
  • Tested with Python 3.9-3.14, open-source on GitHub and PyPI

Beyond boilerplate bots: Unified messaging architecture with wconnect

Building Telegram bots shouldn't require reinventing dispatch loops, attachment parsers, and connection pools. wconnect brings declarative, enterprise-grade messaging to Python.

  • Telegram bots simplified with declarative messaging in Python
  • In-memory streaming enables direct RAM processing of binary files
  • Open-source project available on GitHub and PyPI

Building an i18n Pipeline That Doesn't Break Screen Readers: EAA Compliance for Devs

The European Accessibility Act (EAA) has been in force since 28 June 2025, and if you ship e-commerce, banking, ticketing or e-reader products into the EU, it applies to you.

  • European Accessibility Act (EAA) enforced June 28, 2025
  • Translated text accessibility often overlooked in engineering
  • Pipeline created to prevent accessibility compliance breakdown

grok-bot-cli

Tested - working well - grok-bot-cli https://github.com/ScriptedAlchemy/grok-bot-cli

More from Saturday 26 September →