Network identity policy engine
Project description
WodiMask
WodiMask is a network identity and policy engine.
It defines how traffic behaves on the network by modeling identity, context, and intent, then producing a deterministic routing decision.
This repository contains the control layer.
What WodiMask Does
WodiMask models network behavior before execution.
Given:
- a network identity
- a runtime context
- a set of policies
WodiMask produces:
- a behavior profile
- IP rotation intent
- regional intent
- logging posture
- risk flags
The output is a RoutingDecision.
That decision is designed to be consumed by a lower execution layer.
Core Model
Network behavior should be programmable.
Traditional VPNs operate as binary tunnels: connect or disconnect.
WodiMask is built around a single flow:
Identity + Context + Policy → RoutingDecision
This flow is pure, deterministic, and testable.
Identity
Identity represents a network persona.
It encodes:
- how stable the identity should be
- how exposed it is allowed to be
- which region it prefers to appear from
Identity answers one question:
How should this traffic look from the outside?
Context
Context represents what is happening right now.
It includes:
- which app initiated the request
- the target domain
- the current network environment
- time
- risk profile
Context is evaluated per request or per session.
Policy
Policy is declarative intent.
Policies map runtime context to behavior rules.
A rule defines:
- which profile to use
- whether IP rotation is allowed or required
- how much logging is acceptable
Policies contain no execution logic. They describe intent only.
Decision Engine
The decision engine is the core.
It:
- takes identity, context, and policy
- applies deterministic logic
- emits a routing decision
The engine has:
- no network access
- no side effects
- no hidden state
Given the same inputs, it always produces the same output.
Execution Boundary
This repository ends at decision making.
Execution is expected to happen elsewhere:
- a local proxy
- a tunnel adapter
- a routing service
- a future data plane
The control layer remains isolated by design.
Current State
- Identity model implemented
- Context model implemented
- Declarative policy system implemented
- Deterministic decision engine implemented
- Unit tests in place
This is the foundation layer.
License
This project is License under Apache 2.0. See LICENSE for details
Author
Caleb Wodi
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wodimask-0.1.0.tar.gz.
File metadata
- Download URL: wodimask-0.1.0.tar.gz
- Upload date:
- Size: 8.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3152845a2a2ff47b02ac3105c7117af9e5b815a254fd43a807569ef2de2bd3c
|
|
| MD5 |
46b6f618f3e8e2837cc1015c3caea1f3
|
|
| BLAKE2b-256 |
d1d6fdc205c9b030fc63f863f267ec034ca69d7f2b3a9cb6672d548d13467cf5
|
File details
Details for the file wodimask-0.1.0-py3-none-any.whl.
File metadata
- Download URL: wodimask-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
baa970296ff5e828b70818830339b9691a9eefcc0cef599af0d4ad8b0a8af553
|
|
| MD5 |
210074091f18483df10d2772458c2540
|
|
| BLAKE2b-256 |
5c7f1b4cd0c1735eee57dd55e59230a994ffb6aa0b8c838994fd2f25eaea3747
|