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", salt=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.8) 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) + seed→salt API rename + PIITypeDef SSOT + Presidio bridge through public redact + 3 new types (v0.6.8) 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 Meets PIPL Art.28 sensitive PII categories, 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 PII 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.8.tar.gz (628.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.8-cp313-cp313-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

argus_redact-0.6.8-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.8-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.8-cp313-cp313-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

argus_redact-0.6.8-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.8-cp312-cp312-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

argus_redact-0.6.8-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.8-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.8-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

argus_redact-0.6.8-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.8-cp311-cp311-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

argus_redact-0.6.8-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.8-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.8-cp311-cp311-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

argus_redact-0.6.8-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.8-cp310-cp310-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

argus_redact-0.6.8-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.8-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.8-cp310-cp310-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

argus_redact-0.6.8-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.8.tar.gz.

File metadata

  • Download URL: argus_redact-0.6.8.tar.gz
  • Upload date:
  • Size: 628.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.8.tar.gz
Algorithm Hash digest
SHA256 deedcd1c84a469c026d5b8647933ebe591c9ad38575eb600d66958adf92762d5
MD5 f8462fc4ff1b3665f3f7214959ec07b9
BLAKE2b-256 6cd3f3fec60cf1521734561a0ff32dc10d47d9ed8920817a692d8b3ddeea3d02

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c27dd20c142856c2c5c71c37ece727cb003af55450a09721d04f957a615079f2
MD5 96754b2a6c4ca8285d07b7d76b4d4f45
BLAKE2b-256 ae1f418f809f282eede1ff8406b670a8cc8747d69a8f70faffb19d6a71cbfc50

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7d7ebaedf92b17d497ef0f0fb9a4b65bfdd2765c72504207ce45012181099d40
MD5 e21119ac2b972159a73ff36e635e880a
BLAKE2b-256 a66d78732f7b34436eed04755793b9e04f6e38c3c27230d28783cf06ee51a9fc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a745dd61346eeba5e5fd078ffc7c21cdabd61d1784e0e899211c7abb86bbbdcf
MD5 dd4d2880394295c7a83cdefe2768a963
BLAKE2b-256 13c0b60ed0a965eb208d59a6fd17fcd18418d795c0d96f68eb39aa6d681c8144

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 39294ea44477a2b9db858a953a2f1d7d67e75028f63dae0d5c7c5f578a70d59f
MD5 fc03dcd0dd45417de2cebb8cfcfdf5fd
BLAKE2b-256 cf26ea6dd35cf9bcccddc015923781a4ebab029b9075c0b911a21671a84868cb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 db8dded5869e771ca0c0df5214c794a1253e8eee93c587ea3276654417dfce5b
MD5 75d7eb22c82968a0d1221a353a5335c2
BLAKE2b-256 b6bf450b69a3b5752eebb75941e9be1ea278216169a201cb3b021d59856a09e7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1a42de54379ab25a5fb708c43586d19f7deca2e1a44d7977ac4c2c33eb90e6c7
MD5 201ff20c53899493fa3e2bc4248ac474
BLAKE2b-256 584cdbe8d4ff3c53e38f022f6f60711cc064453bc53b749a7deefd8bd6b1b31e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c257e044aea277fa3bee830dabed9d8067b7f7074168b17fedc24adb9632ec25
MD5 c192aadd9db6ac206b49ed1b6f450276
BLAKE2b-256 b9149cfa4ebcadef923d8e94f6f96c67ea5ce72402560827acfc34473cca576b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 53a8674e062af632e625f2c363e9ccb10e5ce8daae9ffcffc6c0ed265f27ff00
MD5 4be61677045545b65fc3a97e3e5f230b
BLAKE2b-256 44b73df586684825a029b7b36b5ffa5ab757cadbc58219228cd7b45d9ae13ee8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ba12fd54a2f2fe3b9025686a55ea502dc0567f0e0f96ff9006005651825c1544
MD5 a03fd3095929efaa8ba49dec1f1b72ab
BLAKE2b-256 0203222082e1846f3e08d0a50994713495891b7160fafcc73282c637e4be9d1f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 84fd6d080af5ad6821282d3e1a471ef5fcb870f79d026d135b113c736ac5a2c5
MD5 6bf9147305ea0dcdd22290ec3964f874
BLAKE2b-256 349174ccbef85f5e3b5e44cd9767ab5efb3f53f9dc80f0e5a2b6d03ff99bbed2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9d629f07f1a48902c8e3cc493781b4f3f1b5cfe3ffebcc408eeacf07dbb67c88
MD5 68820cabd2216dca6748d29114559e9f
BLAKE2b-256 20cd970e713dfe76f25863cba4331f3b6dd2d723c3557522130e89f67cb1afe4

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 15717af6ce2d7683198d3e3c23c10c442ca9541fc40ef9102c47c27e282cd430
MD5 892c7a2f40474f459edc548284991e19
BLAKE2b-256 6e8d40cec632e442abedcf0ed1a5052e0481ba8b9d3f207a36e6197908626556

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f9696d234980e95d5d6a1eb3f818a40cd9c9919052cbc04caf01245ab01da82c
MD5 7529a9aa03c7738f0d1b05752b00cd11
BLAKE2b-256 93683e79afdda55a68f812a889b410ccdffc81b4387d5df4e36e2ce403cd93a7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 fb0fdbe5625276e196e05f8375eefe16223eda44c53acbd21680c0001f9b5b12
MD5 f44ab7157614b448d7e1c103eb7e79a0
BLAKE2b-256 9c4fab708c71dfc9e765d5f7518b8d9e6e724f0183f886536360a243cc3f7b8e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a9fd47a883e1431c00f1079ebce4abac173110e9c9c99f3010c18d3e5491d9d8
MD5 c971199e8dd4ada0c6fd12da69932f39
BLAKE2b-256 4e68f0b0f57e0a09c9f5ff6049cdb71d879d0955beab218f387272cc18383104

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a499fa5e3deda4d772e9482d238a957250bcd8997fc51bb026c3c36f62a49203
MD5 200e2bb1775e035134aa703ea352caf6
BLAKE2b-256 1299e03d6175ecbf4ca57f3776a2217b3e4828a56ee5d56be1a6f438ffcdab52

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 faae7ac4e4d720d97be8ca366e1558a2660d83cbbaba7108839aaed68885cd0b
MD5 0d58af12a86c25450ffb4bafe3166dd6
BLAKE2b-256 b8641dc2b289ffad3c0f7a96405fd0c17d1c81897f23be769e3dda9f8e9b3e94

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e356bf0265f35551cc3ae9745f6b3de3fb5193f5fb2a2399ef27c1657b1703b3
MD5 7a90ea9002bd00713a39e1b3e9e519cb
BLAKE2b-256 d402c9c8682286be1435fa27fe56891e1d9e9cff0c92acb20b0ddbd6e81657da

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ec9d7d41e97a3dea95233361665ee29cb015aa1f401e60e038760938ab66e277
MD5 3a201f0de5d92b9317596ce56912438d
BLAKE2b-256 f404e9fd791d075cf4354e015df9fc36822a6d08d4f342e76bec534b255f4746

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 303884051810d6e80475dfececa9fe1a7aefb342cd959f34b6c6e46b13d0c7db
MD5 4c02482f251131f6581845d51e554429
BLAKE2b-256 153083f23fbc00fafd5ec14db4856bb72049f7cd065d21d16a71c64372de4ae3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a06b36746a4ddb0344ef1ca09cf014649e713b227b26c525e1cca28d22d7e4a0
MD5 4a0a6977153c8fb9c4000ea3a88672d0
BLAKE2b-256 0c5ace0fd56122d5476ec61c8f71ec86658cc66a6f80e1cdc30539a7af75c2d8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 dc1037c85e722d6b945354d3ee7fc86f79916564880677759851547086a8d901
MD5 f1fc7dad2d1fd8277c16d78715c6f7e1
BLAKE2b-256 1b2e2098fb03c600237b0d7c98758142736289b8e582484eef43cb3920d92600

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 303e8edb692e87a6d91f37f7bb2bad074135ec622de40be4006e44395231e628
MD5 bf36fcf44a96e2d3ea3c009b722c8074
BLAKE2b-256 e2bbdfb385819babf1448d1c4b8e2623c479934622436c5fda7ab8b8e81efc9c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0380a0a57f246d076062e94cb51bd30f9387a66c5ff4e82c3caa214e30cdab56
MD5 f728236876a1034ae3f9a8e529476490
BLAKE2b-256 c2e43bff06436c174d92980bd90168d08ed983c04ebe12011123f16527dbd486

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 90c7eaa7129b3cef69e718260070adfcb10c419deffe4da7b5bd8dfecb22a873
MD5 27330d74e92ff1d190890ecbcaf7a587
BLAKE2b-256 3cfc4e7be5615bad835756ea6c57ec5a8b8468e65f005651366ef73590577d64

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7dc4b777d0ec1bc14d4c386f12b4fc0d2ca70e6fec1a0feb55c5bc15b1b5555c
MD5 103e36f9d3301cc4e5be04995f1e2a97
BLAKE2b-256 a270951fa11a714a2d41497d4722f539a0d5e54c6ba7fe7286d1819529d02cb9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4965c2551f98d3a179153b09bcc9755e7f96e2934f8c180a5128789209359884
MD5 69639048157592c3b3c807a68096b8e9
BLAKE2b-256 133392aa43e46bfd75e395b10978f264672c796f60061a74dea671363a2b613c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for argus_redact-0.6.8-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a39063ec86a32a74e27624ff9f010ebfa5bcddd473987cbd84c3f940bcd15854
MD5 6ae2d3111c2f68927ddd2bdce977336e
BLAKE2b-256 6df805ef737493007020f53457654f6238ce3d31ce4b433d220b9ecd2d951f6b

See more details on using hashes here.

Provenance

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