Skip to main content

Encrypt PII, not meaning. Locally.

Project description

argus-redact

PRvL PII Leak 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, restore

redacted, key = redact("王五在协和医院做了体检,手机13812345678", names=["王五"])
# "P-83811在[LOCATION]做了体检,手机138****5678"

llm_output = call_llm(redacted)     # LLM never sees real identities
restored = restore(llm_output, key)  # one line to get everything back
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 — you get everything back, intact Per-message key, one-line restore

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, config={
    "_unified_prefix": "R",
    "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 roadmapped for v0.6.x. See docs/configuration.md for full 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.

~47 PII types across 4 levels — 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 →

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 niche is Chinese-optimized multi-layer detection + reversibility.

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

ai4privacy benchmark: Email P=95% R=94%. Chinese PII F1=97%. Benchmarks → | Performance →

North Star

Dimension Current (v0.5.9) Next milestone
Protected ~47 PII types, L1-L4. PII leak 0% across GPT-4o / Claude / Gemini. Cross-layer hints in 8 langs (zh/en/ja/ko/de/uk/in/br). MCP token-only key handling. Windows CI Adversarial testing
Usable PRvL U=100%. Pseudonym codes + realistic mode (zh + en + RFC shared) + per-call strategy overrides + keep strategy + 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 KeyEntry.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 → · Known limitations →

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.5.9.tar.gz (535.7 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.5.9-cp313-cp313-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.13Windows x86-64

argus_redact-0.5.9-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.5.9-cp313-cp313-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

argus_redact-0.5.9-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.5.9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.12+ x86-64

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

Uploaded CPython 3.12Windows x86-64

argus_redact-0.5.9-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.5.9-cp312-cp312-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

argus_redact-0.5.9-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.5.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.12+ x86-64

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

Uploaded CPython 3.11Windows x86-64

argus_redact-0.5.9-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.5.9-cp311-cp311-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

argus_redact-0.5.9-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.5.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 10.12+ x86-64

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

Uploaded CPython 3.10Windows x86-64

argus_redact-0.5.9-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.5.9-cp310-cp310-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

argus_redact-0.5.9-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.5.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

argus_redact-0.5.9-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.5.9.tar.gz.

File metadata

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

File hashes

Hashes for argus_redact-0.5.9.tar.gz
Algorithm Hash digest
SHA256 da5634cfa4c2b5027f6a6c46148d128272c67f78f049fb179138cf5c4109e255
MD5 f47a7ca59d2c1c87f041d5014cbf03b5
BLAKE2b-256 d213bf7d3f7a4f4294405dfa8e7f591c5a451368c00c209196ad95d26f589768

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9.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.5.9-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 fac7f679d846a6378aab58d6907bea2db26b3bd5df0caaad040e9d2a4c171a7d
MD5 675e81dadb712a1e6bc56a22448557b7
BLAKE2b-256 3aede8d16d28bb2e2f982a99451ebc9bfb70ae312f6f906e67d0087299e47180

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f58c9a156318bbfa6b300c1c307536456300484575f1fe3c39582a18a6bdefd5
MD5 aaad1e484f6d5960323340b83a2a71e7
BLAKE2b-256 75917597efe54d810e9c45fe3e4086fd237105c7272a23da106ccb60d885a123

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5e9300d23e524d263007ac5b6361e12fec65c650b6fb3a24752daa678e8bb0a9
MD5 97c0ff448f59f93c4df325700d33ab48
BLAKE2b-256 3750ee21188051b32cf9d2e92ec32320d65f587e29c85b2c11c540d9688c15b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 91de56d791d6c57ad52b45f67c83c49877af6ed23c8656613cb7f3631a14fe34
MD5 b240452c9406f05dc347913a860f315c
BLAKE2b-256 6427e86d91be6f7d6b9099d83acc838c91ad882720d1f5c47528ff8b6ae6e0ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e1d4d1d967d7f6bf6e9d0efff3da25ddaef2d3b15dead8274646dd429eef8778
MD5 0df8a515d781b2d8ac6b4dab2921c4f0
BLAKE2b-256 dc7fff36f9911a9198d0adf47c39e7443bc068b82e069582db1be805c020f748

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 655f42e38908e6069aa0f83db44c952ae0f0ca6f27dd174517620daa42d2eb9f
MD5 f8953a9d2f49707499faaa288159d5b3
BLAKE2b-256 1d5b7d772eb3f96f6a1d62800cadf096918379b35101cedd215cdfe2da34bbcf

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 11d568834a93585677e7d2963afcb03d224da86582fc39ee18dbef05c6601c44
MD5 f455247e47797a0d45d376adab4ed134
BLAKE2b-256 1c4f6dca4124aa34897b190da5ab9c32663ec57ddd5a8192e452527891e0154a

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8c43abb6bb9b22d767c05d67ee862e7f8ada2295b54da4cebcdbebdbc4cf353d
MD5 dc7aa5a9b1604b5a49f3fce3113b91f5
BLAKE2b-256 a983a0e49d34891f31c45225ceeec3e3daf752484782ec1a56dc21699ed17013

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f657b770e43f96fdf617772c312f063f84e87c9fa569f840d4234a4ba694cfe4
MD5 53fcc9d1a570c26a8354c0f8030d2aec
BLAKE2b-256 4247e122208ddef15c9adb0ff3fd7749e44e1c9662e340f6590fbd9133ed0c0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 28c7ae85edcc385e373bfca08bf9969a6dcffaa4306c22502c894ca1bf40b568
MD5 381fb4007da48707dfaac2f690a2f4bf
BLAKE2b-256 39ccb1b8bd53e47b4a90a88a5f0d277e58ff34ea79d6dc661634bf8d5dcdae20

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1226d4dcced46cf19f9877433be37aec872d0ca04a30a329d6c4eaf8caf0ce7e
MD5 052cf4d75cad959931e61f8350430244
BLAKE2b-256 f8c15613ea76bdbbf8816a66d0ad120049dcff506346e629f1815a71a1e9fbff

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 355f521482109b4f1837e65106a8915efe6d7109dea21e59dfcfe31e4900d7dd
MD5 a1d995722a0874bfe88daf9cf81cce72
BLAKE2b-256 d62837711855712f35204e1e83c384eda381e6a75bdfee7bc02d6c6d7ea6486c

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7a06333870d957beaf5146f7d8082ef4eb39a6bab32cd7e0a8c87f0000612512
MD5 e966449c7489381cb694c5328f9f2558
BLAKE2b-256 693303be1fe9a113ea4ba1af38f70d50104918bd56c9b8ddb8b7e1289a842fb5

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 051363d3fdb321a5d7ec6ffec171732d9fd06ac51da32db91dff901476877320
MD5 2ba18299457daffdc03942d0047c64ef
BLAKE2b-256 c50929e8f3a1cb7366835be72a8c6c2bacfbbefcf5d71a3ea7828c110651427f

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b520176ea5e80932ce4e36d165c8d6dc0efba4f24a8f641f79d020f409072e11
MD5 a98c15069307b1b9582487a0f2a8d03c
BLAKE2b-256 efceff3c4c46b661820494d9761bc15ba283f97dd326a61e7aa60d3b585aa61c

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ce6057e43caa1feffec637ef22db1adc8c35767b1c33719d628aad04ba6c970f
MD5 91e704cecc89ebc3893863c853e45045
BLAKE2b-256 7cf81a16796a7d3c389c7c9f3c2b401602dafac9d72d54e094d2f551b0b56779

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3a0dfad42eae7a12bfa43e6412854ba81e4e1bc67713f3a9800091507663c91d
MD5 aad7e714c1279b31d8f2f487f75d3717
BLAKE2b-256 eb96e9664c25a82d6fc43dce2b7698a18168552ca2493de551f0627ad2e6f27a

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0df0afdaaa0d3d3f80be64746ad08fd8c5a7adae3bbdc8dbf534505466051cea
MD5 55d82ff899139ac973d941cc675fa3a5
BLAKE2b-256 407c6f78156c78129cc97c33ab080895a1bc6bbf4e5ed9ebedfe3d33e6be2b0c

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7eec1a0c72df71cad772f3653837b53289607900f10da8ba5fc8d7de616b3075
MD5 b8b07728d983e1bc20752afee9fb236e
BLAKE2b-256 069a7cea92c1bbce3ccdceb21c0446e7b9782d1245a226f36f3846e65a626589

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e2dd54f9e97cebac4c914c39e03d5842d1a83b51713a3d2f336fcdcb9a7e9a04
MD5 55fb947fcc4e71bdaa7605db5035516c
BLAKE2b-256 a368b5c887cb2745495855de10ca757964f73c29c6b9f1d15b49fe406d114409

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e74a53bf22f6661528de53fa01eff9483d4a012d4877b2738c23100f7898a789
MD5 6276ba3697fb8f68ac882ae3cdfd4022
BLAKE2b-256 71a073045d190fbb4b9cf0c0e2cc025b829f30fb6973d37e69aead0fdec97e83

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 439e1a4ed62d45a13a88ce483cdc1fbf79ada9b994a46b985b52e6edbc914123
MD5 9e53bb8fde4c4a950813bdc7c37bf2b7
BLAKE2b-256 2b7727d364f9b080bcecd70b5a49bfa3dafe2229fd37c1a96e8037a78dff4283

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 02b5d7a598168c137b95912d16d7a545818d941fbb8d5ce27b002436725d888d
MD5 2745406764c49d28902e3fb86ba2bf4d
BLAKE2b-256 098886d6ef75ba3468bba7929f074a3f713d49f10d2400cdd37fac1e3cdb0b64

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7f59c64801d335d6711bf8fe57df3b62af9d1de4dd4b8c7a089d0e34974c2fde
MD5 91e1b62d708e476e1564fee635db438a
BLAKE2b-256 b70e07757346d5e506383f7436a345fd096fe8f0f21c1cc4e393c31574365416

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8b7896c234963f898e55baa47689a50f18929575b778de86a69f520ac4bed975
MD5 2da423117b6a5954150200899ad8dcea
BLAKE2b-256 a98293722937cd582cd236a9a93046551260a133631fba669749229aebd18745

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9e5ab9c2a052f13ac9ba16184b56a278c1da03d38b7ef21bc9af9a92f7ce1403
MD5 9779e96d92cea039e64b6a08f8721533
BLAKE2b-256 0f5fc47180649228539951eb6a6a41261bf5e26ae3a6744282906ea115a4b25f

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ce34e5bc640afdd17b0d163791e24daf068fe64cc40dcbb0dc5afb332a8d7ad5
MD5 d7ce175164a25e4723c7bb5658fac1d0
BLAKE2b-256 7a5e55ed4425eb392aa03dcc76b8d0bc66c8c542b6e7be1b9ed97cb48629d1bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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.5.9-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for argus_redact-0.5.9-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 28328d2ec02c004183270b62b755b2445932df3ded4a83aa2326e074f0239f14
MD5 b838df5e61754ae089813937b24e7ac5
BLAKE2b-256 e80d02f4d528a745a607c26447403b842acf01ec5d26a413084e3903e400e87f

See more details on using hashes here.

Provenance

The following attestation bundles were made for argus_redact-0.5.9-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