Skip to main content

Encrypt PII, not meaning. Locally.

Project description

argus-redact

English · 中文说明

PRvL Rust Demo PyPI Downloads Tests codecov

Encrypt PII, not meaning. Locally.

The privacy layer between you and AI. Your identity stays on your device — AI gets the meaning, not you.

from argus_redact import redact

redacted, key = redact("张三的电话是13812345678,身份证号110101199003074610", names=["张三"], lang="zh", seed=42)
print(redacted)
# expected: P-83811的电话是138****5678,身份证号ID-03292

print(sorted(key.items()))
# expected: [('138****5678', '13812345678'), ('ID-03292', '110101199003074610'), ('P-83811', '张三')]
pip install argus-redact

Three Promises

Promise How
🛡️ Protected — your PII never leaves your device 3-layer local detection: regex → NER → local LLM
🧠 Usable — AI can still understand and help you Pseudonym replacement preserves meaning and context
🔄 Reversible — substring-level inverse via per-message key One-line restore() for verbatim LLM echoes; paraphrase / coref handled by compose layer, best-effort

Other tools shred your PII — it's gone forever. argus-redact encrypts it with a different key every time. ETH Zurich research shows LLMs can deanonymize users for $1-4/person when pseudonyms are fixed. We generate fresh random keys per call — the cloud sees unrelated pseudonyms every time.

Default redaction output

redact() emits per-type pseudonym codes, not Chinese label literals:

>>> redact("员工张三,身份证110101199003074610,电话13812345678", mode='fast', lang='zh')
('员工P-83811,身份证ID-89732,电话138****5678',
 {'P-83811': '张三', 'ID-89732': '110101199003074610', '138****5678': '13812345678'})
Type group Default output Strategy Reversible
person / organization P-NNNNN / O-NNNNN pseudonym
phone / email / bank_card 138****5678 (partial digits visible) mask
id_number / medical / ssn / ... ID-NNNNN / MED-NNNNN / SSN-NNNNN remove → per-type code
self_reference / 我妈 (kept verbatim) keep

To unify all reversible types under one prefix (hides PII type from the LLM):

redact(
    text,
    unified_prefix="R",
    config={
        "phone": {"strategy": "remove"},   # mask types must opt in to participate
        "email": {"strategy": "remove"},
    },
)
# → "员工R-83811,身份证R-89732,电话R-12345"

<TYPE_N> 1-based sequential token style is on the future-release candidate list (no committed timeline). See docs/configuration.md for the current strategy reference.

Privacy Levels

argus-redact evaluates your text from your perspective, not a regulator's:

🟢 Safe      — nothing about you is exposed
🟡 Caution   — contains personal info, not dangerous alone
🟠 Danger    — can narrow down to you specifically
🔴 Exposed   — directly identifies you
from argus_redact import redact

report = redact("身份证110101199003074610,手机13812345678,确诊糖尿病", report=True)
report.risk.level    # "critical"
report.risk.score    # 1.0
report.risk.reasons  # ("id_number (critical)", "phone (high)", "medical (critical)", ...)

This is what compliance frameworks don't tell you: how dangerous is it to share this specific text with AI?

Three Layers, Collaborative

Layer 1  Rust+Regex   phone, ID, bank card, email, self-reference, ...    <0.2ms
             │
         produce_hints() → text_intent, pii_density, self_reference_tier
             │
Layer 2  NER ← hints   locations, organizations, standalone names         10-100ms
Layer 3  Local LLM      implicit PII — symptoms→disease, behavior→belief  ~20s

Layers are not independent — L1 passes hints to L2, enabling collaborative detection. Instruction text ("帮我看看这段代码") skips NER entirely. High PII density lowers NER thresholds. Cross-layer agreement boosts confidence.

Unicode-hardened: NFKC normalization, zero-width stripping, Cyrillic/Greek confusable defense, Chinese digit detection (一三八零零一三八零零零 → detected as phone).

Core engine (regex matching, entity merging, restore, pseudonym generation) is written in Rust via PyO3 for maximum performance. Python handles orchestration, NER models, and LLM integration.

56 PII types across 3 layers — from phone numbers to medical diagnoses, religious beliefs, political opinions. Default is mode="fast" (Layer 1 only, zero deps, sub-ms). Opt in: mode="ner" (+ NER models) → mode="auto" (all three layers).

Telemetry: ARGUS_PERF_LOG=perf.jsonl for per-call timing breakdown. Details →

Deployment fit — modes have very different latency budgets; pick by where you sit in the request path:

Mode Latency (per doc) Suitable as
fast <1ms Inline gateway plugin / hot LLM proxy path
ner 10–100ms Sidecar / pre-flight middleware
auto ~20s (LLM-bound) Async batch / offline review queue

Don't put auto in front of an interactive LLM call. Use fast inline + auto in a parallel audit lane.

Limitations & When NOT to Rely on This

argus-redact is a PII data minimization aid, not an anonymization or compliance certification:

  • L1 fast (regex) matches well-defined formats. Novel or obfuscated variants, cross-field inference attacks pass through.
  • L2 NER is statistical inference; out-of-distribution text (informal, typo-heavy, minority names) has higher miss rate. See benchmark results for measured numbers.
  • No guarantee against adversarial inputs — attackers can craft text that evades detection.
  • Not a GDPR / PIPL anonymization framework — anonymization is a compliance process decision, not a single-library output.

When to use argus-redact: reversible pseudonymization for LLM pipelines where you need redact() → LLM → restore() with zero PII crossing the network boundary.

When to consider alternatives: if you need one-way English PII masking with a single model call, OpenAI Privacy Filter and similar model-based maskers may fit better. argus-redact's strongest suit is reversible pseudonymization with per-message keys; Chinese has the deepest support (HanLP + native validators), the other 7 languages have regex + spaCy NER coverage. Pick by the workload, not by exclusivity.

Combine argus-redact with audit logging, rate limiting, and upstream policy — no single layer is sufficient.

8 Languages

zh en ja ko de uk in br
Phone
National ID MOD11-2 + 15位旧版 SSN My Number RRN Tax ID NINO Aadhaar CPF/CNPJ
Bank/Card Luhn Luhn IBAN PAN
Person names HanLP spaCy spaCy spaCy spaCy spaCy spaCy spaCy
Email

Mix freely: lang=["zh", "en", "de"]. Pass known names: names=["王一", "张三"].

Performance

Rust core (PyO3) — M1 Max, mode="fast":

Text redact() restore() Throughput
Short (17 chars) 0.07ms 0.04ms 13,036 docs/sec
Medium (770 chars) 1.00ms 0.05ms 1,031 docs/sec
Long (10K chars) 22.2ms 0.05ms 45 docs/sec

Pre-built wheels for all major platforms — no Rust toolchain needed to install:

✓ Linux x86_64 (glibc + musl/Alpine)
✓ Linux aarch64 (Raspberry Pi + Alpine ARM)
✓ macOS (Apple Silicon + Intel)
✓ Windows x64
× Python 3.10 / 3.11 / 3.12 / 3.13

Detection accuracy

Mode Precision Recall F1
fast (regex) 78.3% 30.3% 43.7%
ner (+ spaCy) 72.8% 41.4% 52.8%
auto (+ Ollama 32B) skipped this run

ai4privacy en, 500 samples, v0.6.6. auto mode skipped on the maintainer's hardware — see benchmark-report.md for full matrix + reproduction commands.

For context: fast mode is high-precision / low-recall by design — it only emits formats it can validate (Luhn, MOD11-2, etc.). Recall comes from ner and auto at the cost of latency. Pick the mode for your deployment shape (see Deployment fit above). Full benchmarks → | Performance →

North Star

Dimension Current (v0.6.7) Next milestone
Protected 56 PII types, L1-L3. 0% PII leak on default profile across GPT-5 / Claude-Opus-4.5 / Gemini-2.5-Pro / GLM-4.5 in the PRvL reference suite. pseudonym-llm profile: 100% on three of four models; 96% / Bronze on Claude-Opus-4.5 (single reroll cell). Not a guarantee against adversarial inputs — see prvl-standard.md for full matrix. Cross-layer hints in 8 langs (zh/en/ja/ko/de/uk/in/br). SHAKE-256 derivation + full-salt entropy + faker identity-pass guard. State export omits salt by default; HTTP server refuses no-auth start; CLI writes O_NOFOLLOW + key files mode 0600; MCP token store TTL+LRU (v0.6.2). Windows CI + property-tested invariants + mutation-tested core (v0.6.3) + perf budget CI gate (v0.6.4) + session-isolation in integrations (v0.6.6) + README pinned-to-doctest + version-sync CI guard (v0.6.6) + compose namespace + pure-layer purity guard (v0.6.7) Adversarial testing
Usable PRvL U=100%. Pseudonym codes + realistic mode (zh + en + RFC shared) + per-call strategy overrides + keep strategy (whitelisted) + resumable streaming sessions + incremental streaming default + cross-language alias restore (zh ↔ en) Task-aware guidance
Reversible PRvL R by task: reference 100%, extract 50%, creative 0% (by design). Cross-language LLM rewrites (张三Zhang San) auto-restored via result.aliases + restore(text, key, aliases=...) Task-aware guidance
Compliance PIPL ~85%, risk assessment + profiles PIPL/GDPR/HIPAA (byproduct)
Coverage 8 langs, 4 LLMs benchmarked, 6 frameworks Browser extension

Risk Assessment

# Assess risk before sending to AI
report = redact(text, report=True)
report.risk.level         # "critical"
report.risk.pipl_articles # ("PIPL Art.28", "PIPL Art.51", ...)
report.entities           # detected PII details
report.stats              # per-layer timing
# CLI
argus-redact assess <<< "身份证110101199003074610"

Compliance profiles: redact(text, profile="pipl") / "gdpr" / "hipaa". Type filtering: redact(text, types=["phone", "id_number"]) / types_exclude=["address"].

Realistic Redaction (pseudonym-llm profile)

Default redaction emits placeholder labels ([TEL-79329], P-164) — clear for audit, but breaks downstream LLM reasoning because the message structure is gone. The pseudonym-llm profile replaces PII with realistic-looking but reserved-range fake values (e.g., 19999... mobile, 999... ID, 999999... bank card). LLMs reason correctly; humans can still tell it's synthetic if they know the convention.

Each call returns three text forms sharing one key dict:

Form Example Use for
audit_text 请拨打 [TEL-79329] 联系 P-164 Compliance archive — placeholder labels are auditable
downstream_text 请拨打 19999123456 联系张明 LLM input — semantic structure preserved
display_text 请拨打 19999123456ⓕ 联系张明ⓕ UI rendering — visible marker prevents confusion
from argus_redact import redact_pseudonym_llm, restore

# Chinese
zh = redact_pseudonym_llm("请拨打 13912345678 联系王建国", lang="zh")
zh.downstream_text  # "请拨打 19999123456 联系张明"           → LLM
zh.display_text     # "请拨打 19999123456ⓕ 联系张明ⓕ"        → UI

# English
en = redact_pseudonym_llm("Call (415) 555-1234, SSN 123-45-6789", lang="en")
en.downstream_text  # "Call (555) 555-0142, SSN 999-37-2811" → LLM
en.audit_text       # "Call [PHONE-23801], SSN [SSN-15772]"  → audit

# Mixed (auto-detect)
mx = redact_pseudonym_llm("客户Wang at user@company.com", lang="auto")

# Round-trip works on any of the three forms, in any language
restore(zh.downstream_text, zh.key)   # → original
restore(en.downstream_text, en.key)   # → original
restore(mx.downstream_text, mx.key)   # → original
# CLI emits all three forms as JSON
echo "Call (415) 555-1234" | \
  argus-redact redact -k key.json --profile pseudonym-llm -l en | \
  jq .downstream_text
# "Call (555) 555-0142"

Reserved ranges:

  • zh: 199-99-XXXXXX mobile (sub-segment unassigned by 工信部), 099- landline (no such area code), 999XXX ID address code (GB/T 2260 unassigned), 999999 bank BIN (银联 unassigned), 滨海市 fictional city.
  • en: (555) 555-01XX phone (FCC permanent fictional reservation), 999-XX-XXXX SSN (SSA never assigns 9XX), 999999 credit card BIN, John Doe / Jane Roe person, 1313 Mockingbird Lane address.
  • shared (RFC): example.com / .org / .net email (RFC 2606), 192.0.2.0/24 / 198.51.100.0/24 / 203.0.113.0/24 IPv4 (RFC 5737), 2001:db8::/32 IPv6 (RFC 3849), 00:00:5E:00:53:xx MAC (RFC 7042).

Argus Gateway integration: response headers should include X-Argus-Redact-Profile: pseudonym-llm; UI clients render display_text, LLM clients consume downstream_text. Storage of downstream_text as business truth is unsafe — it's synthetic by design.

Real users named like canonical fakes (e.g., a real customer named 张三 or John Doe): pass reserved_names={"person_zh": ()} (or person_en) to disable that locale's canonical-name pollution detection so the real user's name flows through normal redaction.

Streaming

For chat sessions or long-form input where text arrives in chunks, use StreamingRedactor (input side) and StreamingRestorer (output side). Both require complete logical units per chunk (sentence / paragraph / turn) — entities split across chunk boundaries are not handled.

from argus_redact.streaming import StreamingRedactor, StreamingRestorer

# Input side: redact each chunk; same original value across chunks → same fake
r = StreamingRedactor(salt=b"my-secret-salt", lang="zh")
for chunk in input_stream:                  # one sentence/paragraph/turn each
    res = r.feed(chunk)
    send_to_llm(res.downstream_text)

# Output side: restore LLM output stream at sentence boundaries
restorer = StreamingRestorer(r.aggregate_key())
for chunk in llm_output_stream:
    restored = restorer.feed(chunk)
    if restored:
        print(restored, end="")
print(restorer.flush(), end="")

True byte-level streaming (entities crossing chunk boundaries) needs full incremental detection and is roadmapped for a later release.

⚠️ Realistic-mode output must not be re-redacted (it would corrupt the key dict). redact_pseudonym_llm will raise PseudonymPollutionError if called on already-faked input — call restore() first.

Full API → · Design constraints →

Integrations

Install
LangChain / LlamaIndex / FastAPI core
Presidio bridge pip install argus-redact[presidio]
MCP Server (Claude Desktop / Cursor) pip install argus-redact[mcp]
HTTP API Server pip install argus-redact[serve]
Structured data (JSON / CSV) core
Streaming restore core
Docker slim 157MB / full 5GB

Security

PII never leaves your device. Per-message keys prevent cross-request profiling. Full security model →

Meets PIPL · GDPR · HIPAA technical requirements as a byproduct of its privacy-first design. Details →

Documentation

Getting Started Install, first redact/restore, key management
API Reference All parameters, return types, streaming, structured data
CLI Reference Commands, flags, serve, MCP server
Configuration Per-type strategies, enterprise mask rules, false positive reduction
Sensitive Info Taxonomy, privacy levels, roadmap
PII Type Catalog All 52 types — strategy, sensitivity, PIPL/GDPR/HIPAA mapping (auto-generated)
Architecture Three-layer engine, cross-layer hints, pure/impure separation
Language Packs Adding new languages
Security Model Threat model, compliance, per-message keys
PRvL Standard Open evaluation standard: Privacy × Reversibility × Language
Layer 3 Benchmark LLM model comparison, prompt design, regulatory analysis
Benchmarks Evaluation against 9 public PII datasets
Performance Latency, throughput, benchmark results

Contributing

CONTRIBUTING.md — language packs, test scenarios, framework integrations welcome.

Contributors

Who Contribution
@aiedwardyi Brazilian Portuguese language pack (CPF, CNPJ, phone)

License

Apache 2.0

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

argus_redact-0.6.7.tar.gz (621.5 kB view details)

Uploaded Source

Built Distributions

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

argus_redact-0.6.7-cp313-cp313-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.13Windows x86-64

argus_redact-0.6.7-cp313-cp313-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

argus_redact-0.6.7-cp313-cp313-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

argus_redact-0.6.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

argus_redact-0.6.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

argus_redact-0.6.7-cp313-cp313-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

argus_redact-0.6.7-cp313-cp313-macosx_10_12_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

argus_redact-0.6.7-cp312-cp312-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.12Windows x86-64

argus_redact-0.6.7-cp312-cp312-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

argus_redact-0.6.7-cp312-cp312-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

argus_redact-0.6.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

argus_redact-0.6.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

argus_redact-0.6.7-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

argus_redact-0.6.7-cp312-cp312-macosx_10_12_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

argus_redact-0.6.7-cp311-cp311-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.11Windows x86-64

argus_redact-0.6.7-cp311-cp311-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

argus_redact-0.6.7-cp311-cp311-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

argus_redact-0.6.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

argus_redact-0.6.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

argus_redact-0.6.7-cp311-cp311-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

argus_redact-0.6.7-cp311-cp311-macosx_10_12_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

argus_redact-0.6.7-cp310-cp310-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.10Windows x86-64

argus_redact-0.6.7-cp310-cp310-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

argus_redact-0.6.7-cp310-cp310-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

argus_redact-0.6.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

argus_redact-0.6.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

argus_redact-0.6.7-cp310-cp310-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

argus_redact-0.6.7-cp310-cp310-macosx_10_12_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file argus_redact-0.6.7.tar.gz.

File metadata

  • Download URL: argus_redact-0.6.7.tar.gz
  • Upload date:
  • Size: 621.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for argus_redact-0.6.7.tar.gz
Algorithm Hash digest
SHA256 15fe8fdf6d9669e1acfd067a2ad0ed08635881e0936ca6d353d7210effed9eb8
MD5 7e56c7b237cb11c7aa8a107c2e8a2f3d
BLAKE2b-256 25ed6f3671247bb9f9938ae2db29b9e552d96f1130c8e5dc2146aa277e9c8310

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7.tar.gz:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7ea16e63ab5e9c65c653269cea40924f2052c1c0792a8d3a4ad6943c84b832ba
MD5 126576d0f554dd63224e7974d857b342
BLAKE2b-256 546e6eca1501c1b9998224276a6865548b736aff5a6e1d7a1e3afffc5a5a9605

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp313-cp313-win_amd64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a3f62033947d925ee7f394f43799e7ee9e9acc86f4bc1b1fdba992b2cc931e21
MD5 9bf3e87ee911d3ee604b947a20b158fa
BLAKE2b-256 3f3a8d6079ff19c4b1c0f7cb95b10d8cd6833a437928a95d75ce58c8454be5f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 c96ce70ea9c065effe39c5462ac8ba406fe85c4904929cc02e583ba582b66450
MD5 2fa4903856c9c5807d43dec523f3b506
BLAKE2b-256 3515ff9f027a27a487cdeff1602e2b15e91509276e00d50a8a2cd473d8fd842d

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3806ae158c64311c6f368700eb0c4a879546029fba7aacd4143146cd08cfc0ca
MD5 d4a7db3d18e9ed7d94ef3cd214f9c967
BLAKE2b-256 a25e3d6626896e894c3ec21d43351dc954824170f9e5f2e45e004ac201c7cb72

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b91a641251917b3d064ad24972949b7955ac2d2ef88d0cd8fff9ade50f0b7478
MD5 1376cce4c5b6998e10936874a83eb7aa
BLAKE2b-256 383f983f61a773109b4e20e1da899c88720b0a5dc21ae3dd63dbb25e92dc19c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5ce540b359df8285510ded6cb14eb434834143c964316ad3bdb7b67a1190cb8d
MD5 a8123fef925600c967adc726ea4d1530
BLAKE2b-256 2370b66009d29656f1e1c26fbdeca0cff688fe91aa1569f2cc9de9f450bcd167

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 efbf76d206a4a2c4884881397d97ac19989eb3ee8d1d048f2b06db1c1e9e6735
MD5 39cbf69d88d22ad7837990402e491ce9
BLAKE2b-256 623297fa248a97bafa3d617199bcd4fb77c5edfa0c01350701d1710c68a7fd36

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 23137d5f6169a02c2d25e69e7729df96b3bb9aba218782454e57552df4eac738
MD5 efb2258e1e5767407e53e66963340919
BLAKE2b-256 8f759b8f8af74254ec5900451f74fbd9ca47fc6f49ee21a04111930d35bac4b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp312-cp312-win_amd64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 411c9fa2b73eb75ce4a87527a92e613fd13a02e975c0dab92e45050fff7a47c5
MD5 48879f70af01e3796d181a97d1356832
BLAKE2b-256 3a7895ba520bf1173ce204587fe1ad42091a7fb5e1b858a0b049f77c87244c94

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 accab08c773a300c783af77b211eda7b2f62f6bfadeac2520b69b4e5f98c889c
MD5 f1f2bc50be485663060260f4dca0ac93
BLAKE2b-256 9faf1b42a6dc94646643ed2b12bdff839907863866642880af4e5253d9518952

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 069aeb7ed2dda28a65b15a3aa9e9f6dfe663b6e42b03eea00f7157780ef6b569
MD5 3a672f9e67d92de51342b23146fb2b44
BLAKE2b-256 65f072a522ba9d4a64387cac188982fbf3ed2e7ddbd1981bf3b216bff805076a

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e0b66ba6126e941e98734cc022e75d3f3dc52e3261438ab2d9da7dff100cfb54
MD5 b4342fc25d97b29885f42bc293869c2d
BLAKE2b-256 51da2c9ffae0b2db764880f0ca4ae7db7592fe4d5f52e12d54131e93a52381e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 095f087f5fe1054f373ccc060bd9dc23f24698ae74132d6df692adaf04457a19
MD5 c369eb543f445b0cf61db680d78d2e85
BLAKE2b-256 67f20f985cd7be1a19b226679724db398f8b3c5a63edd693465edc27ac5213f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3a87d625638109b75df029d7ddb1bad8083556e2f991350de1ae20db24a71c17
MD5 12bce50eb5ad46eb98cbf36827a91345
BLAKE2b-256 cba9d665688633da3f9edfb8fbfc25998784100da46c5be4ad796bdedacb7de3

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 deb9e24726608fc05dfebe0b0307bcb13409dff25f8f04b28fbeab461c3eb351
MD5 d0add886dc9741bf0136aeecb3b7e3ad
BLAKE2b-256 b4eb7798195998f9386f71076336bb81ece8c3d2a495ccae695695e8cea2cb79

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp311-cp311-win_amd64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9ecdfbe0dbde39c695f8b7e36e25c2c60522052f98736b7b14a1d0f64caaf356
MD5 bee6dd96f39de8ad4a6c21e5d4c2e5ba
BLAKE2b-256 09ce428d991bb4648f2a2a01d91030436aa8d474ea14f9176dd3eb5a498579b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5cb5111b0804c3149b126962b6623cae315d3a0744ae7b844fc922fc817a1ee4
MD5 3e00f9860248d9033ebf067689c93ccc
BLAKE2b-256 ecb19c43ef4f7dd12a77afa533be40d831facf38fd51060a036c9d6a0516804c

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b8f0d8e33bc35e6b5d60d686e9889cff74c40f9356a18df59f02725dcb286095
MD5 ff6e5d1cbb793b8a9765a1631054aac0
BLAKE2b-256 2915c476cba889bb51bb98e4f5bc76273715726adeb909d9a4ff5308770e1623

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3ed70c5550e8643df4cdced85cff3b5ed041a1343681076d26c096395c587e67
MD5 81dc362fd9fada089526426853dcb0d7
BLAKE2b-256 9bd608e60f3158d56169f46b808d77fb7285953dcfa05a84629ab330678362ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f6442b6421ce1b4b532afd23b29de19cd796883cd0a977f83ecabc772ec0c8eb
MD5 b5440ee72389caba70b7ea799ee9dce0
BLAKE2b-256 6543337aed0cf9cac3b50e9cb528263426c71628cbf8587b57dd60bf14a53780

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1ab97f4710bebb2dd00c5e8d3e514ca06ed1e670cbfc2980a870c13a72df9bba
MD5 a7d9cde5b9558d0efc1586265016554f
BLAKE2b-256 9828225d60179cdceba9f7992600bd6c3eb721bf0f38bf4d6da90d68b1f93286

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 401a040471a63b44a3d2fea83a9d9fbbb9c83d0a137a06d42385a29fb3116c38
MD5 55033fb5ea594fdbac65d90687f7d69f
BLAKE2b-256 69828c0a6a92b021ba57367337a6ec8503674728c7875fda6024385a1561389f

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp310-cp310-win_amd64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c4646efd193963cbc0b862a25b6e58ff929d1db2bb41b3ab7c9953ead941dee6
MD5 0fd355e3824f928ef2bd15fe94b50952
BLAKE2b-256 ba4240471131394e579a62813d1538bb149f04f72256038935685b1e34a48cb6

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e132aa5d71621c5b9df223ce8e6ddf8502ebb0d56fd48c48a3adc6244afb8266
MD5 0b415c18d33cf1ebb20a7a4af47b3564
BLAKE2b-256 4d4a9b4616259e7f807ef517d614059b3e9cbf5a68bc8348de82a8d49ae39f83

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dd3636b098654b623c88b0d53033268d7f0ae40433061242f349aa21c056bb05
MD5 c98d4ecfa745f83c56a74aa6c0afefa2
BLAKE2b-256 839fe02b7c5d1614c60369d22b12024078d1b00eedfbba41b3b2bc792035a11c

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a33cd019b7a148e93d0ad1bcdec13e61d250c288fd391cb34292940b0c085e42
MD5 aacd5b6a36185fe3a9c7f31ec58174d8
BLAKE2b-256 5d73dfb7561b47305d5245ae587930f3e64d2f1752cbacd02106394e3ad51ab3

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e4089f16e010cb92f97748fa256983231e0392d783dde7bb6ad406fae205ed25
MD5 1ba079cfb8a1bd31f0fb13c0cd5cda5d
BLAKE2b-256 1eba4369c10f514da4cd6a67f1dfa9fd75dca59710353d1475b2e0135ce3819f

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argus_redact-0.6.7-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.6.7-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0dc23d344f4a09372f764cccf8886c97e8612af6d21783c5b68ed5a3a8861df4
MD5 7ad738c578fa74a8a9adb77dfa8f4f2f
BLAKE2b-256 fe20726fd290d4751507bba3ea6a87f4efe08a1bd2cdf069ae7996cd0daa0ae9

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.6.7-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: release.yml on wan9yu/argus-redact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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