Skip to main content

Network identity policy engine

Project description

WodiMask

License: Apache 2.0

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wodimask-0.1.0.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wodimask-0.1.0-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

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

Hashes for wodimask-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d3152845a2a2ff47b02ac3105c7117af9e5b815a254fd43a807569ef2de2bd3c
MD5 46b6f618f3e8e2837cc1015c3caea1f3
BLAKE2b-256 d1d6fdc205c9b030fc63f863f267ec034ca69d7f2b3a9cb6672d548d13467cf5

See more details on using hashes here.

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

Hashes for wodimask-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 baa970296ff5e828b70818830339b9691a9eefcc0cef599af0d4ad8b0a8af553
MD5 210074091f18483df10d2772458c2540
BLAKE2b-256 5c7f1b4cd0c1735eee57dd55e59230a994ffb6aa0b8c838994fd2f25eaea3747

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page