redact-secret · Report
Secret API key
sk-ant- prefixed secret API key.
Research record
Format revisions
- Revision 1
anthropic:secret-api-key@1current · draft, not reviewed · superseded by @2 · the family's current revision - Revision 2
anthropic:secret-api-key@2proposed · draft, not reviewed · supersedes @1
4 events in the review history: 3 observed, 1 reviewed. Latest: observed on 2026-10-04 by automation, project maintainer. Project-maintained review is not independent validation. The family record at this release.
Format
What it looks like
- Descriptive pattern
^sk-ant-api03-[A-Za-z0-9_-]{93}AA$
Parts are shown as recorded. Evidence classes belong to the facts below; no class is assigned to a part.
Format facts
Provider documented ·
provider-source· current · observed 2026-09-23Claude API key prefix table: the provider identifies sk-ant-api03- as the Claude API key prefix; the 93-character body, alphabet and AA suffix remain tool-corroborated
- platform.claude.com/docs/en/manage-claude/compliance-api-accessprovider-documentation · last read 2026-10-04 · latest outcome read · supports the provider identifies sk-ant-api03- as the Claude API key prefix; the 93-character body, alphabet and AA suffix remain tool-corroborated
Tool corroborated ·
tool-corroboration· current · observed 2026-09-23Pinned scanner rules are consistent with the contract grammar (2 artifacts: gitleaks 8.30.1; trufflehog 3.97.4).
- gitleaks/gitleaks @ v8.30.1: config/gitleaks.tomlscanner-rule-source · last read 2026-10-04 · latest outcome read · supports gitleaks 8.30.1: gitleaks.toml
- trufflesecurity/trufflehog @ v3.97.4: pkg/detectors/anthropic/anthropic.goscanner-rule-source · last read 2026-09-26 · latest outcome read · supports trufflehog 3.97.4: anthropic/anthropic
Provider documented ·
field-prefix· current · observed 2026-09-23prefix: sk-ant-api03- (Claude API key)
- platform.claude.com/docs/en/manage-claude/compliance-api-accessprovider-documentation · last read 2026-10-04 · latest outcome read · supports prefix: sk-ant-api03- (Claude API key)
Provider documented ·
field-sibling-prefixes· current · observed 2026-09-23sibling-prefixes: sk-ant-api01- (Compliance Access Key) and sk-ant-admin01- (Admin API key) are different key classes (Real secrets of other classes: used only as scoped prefix twins, never as benign controls.)
- platform.claude.com/docs/en/manage-claude/compliance-api-accessprovider-documentation · last read 2026-10-04 · latest outcome read · supports sibling-prefixes: sk-ant-api01- (Compliance Access Key) and sk-ant-admin01- (Admin API key) are different key classes
Tool corroborated ·
field-body· current · observed 2026-09-23body: 93 characters of [A-Za-z0-9_-] then a literal AA suffix (No length, alphabet or suffix twin is authored on this tool-only field.)
- gitleaks/gitleaks @ v8.30.1: config/gitleaks.tomlscanner-rule-source · last read 2026-10-04 · latest outcome read · supports body: 93 characters of [A-Za-z0-9_-] then a literal AA suffix
- trufflesecurity/trufflehog @ v3.97.4: pkg/detectors/anthropic/anthropic.goscanner-rule-source · last read 2026-09-26 · latest outcome read · supports body: 93 characters of [A-Za-z0-9_-] then a literal AA suffix
Provider documented ·
dossier-research· current · observed 2026-09-23Legacy dossier research (verdict ready, tier T1) cited 2 sources; the dossier does not attribute sources to individual properties.
- redact-secret/redact-secret @ 0a35cc713feb77419e40436bcfd083f9078c2cb8: docs/audits/evidence/642/README.mdproject-research-note · last read 2026-09-23 · latest outcome read · supports Final research evidence recorded by the legacy dossier
- platform.claude.com/docs/en/manage-claude/compliance-api-accessprovider-documentation · last read 2026-10-04 · latest outcome read · supports Cited by the legacy dossier research for this family
Open questions
No open question is recorded for this revision.
Benchmark dossier notes
- Shape
- prefix
sk-ant-api03-(Claude API key, created under Claude Console > Settings > API keys). Body: 93 characters from letters, digits, underscore and hyphen, then the two charactersAA, about 108 characters in all. The body, alphabet and tail are tool-corroborated, not provider-stated. - Basis
- T1 for the prefix (provider table quoted in the #642 evidence). Body grammar: scanner rules (gitleaks, trufflehog) per the #642 record and the #775 discovery pass; gitleaks and its fork betterleaks share a lineage, so that pair counts as one corroboration.
- Issuance
- not attempted. A key can be created in the Console; no sample was minted for this research.
- Contract in core
- detector-families.md; final evidence in the #642 record linked in the frontmatter.
In this benchmark
- Fixtures
- 30
- Left readable
- 0
- Redacted too much
- 0
- False alarms
- 0
30 fixtures: 9 expect a redaction, 18 must stay quiet, 3 record project policy. See every row
| Evidence level | Fixtures | Left readable | Too much | False alarms |
|---|---|---|---|---|
| T1Provider-documented | 11 | 0 | 0 | 0 |
| T2Tool-corroborated | 9 | 0 | 0 | 0 |
| T3Project policy | 6 | 0 | 0 | 0 |
| T0Pending review | 4 | 0 | 0 | 0 |
Every scanner on the same fixtures
In run order. Counts are what each scanner recorded on this family's fixtures, whichever rules it has; a scanner with no rule for the family has nothing to report on it.
| Scanner | Fixtures | Left readable | Too much | False alarms |
|---|---|---|---|---|
| flare-redactRuntime library · 1.6.1 · Published npm package · secrets-only (pii, generic_assignment disabled) · JavaScript engine1 rule targets it | 30 | 0 | 0 | 3 |
| gitleaksRepository scanner · 8.30.1 · Directory scan · default rules1 rule targets it | 30 | 3 | 0 | 1 |
| redact-secretProduct measured here · 0.1.0-beta.14 · Published npm package · default detectors1 detector mapped | 30 | 0 | 0 | 0 |
| trufflehogRepository scanner · 3.97.4 · Filesystem scan · verification disabled1 rule targets it | 30 | 4 | 0 | 0 |
Looks like it, but isn't
- Collisions
- the
api01andadmin01siblings below differ by one segment. The baresk-vendor-prefix path of a generic token rule is designed not to claim thesk-ant-namespace.
Scanner rules for this family
| Scanner | Rule | What the rule matches |
|---|---|---|
| flare-redact · rules 1.6.1 | anthropic_key | sk-ant- + 24-160 characters |
| gitleaks · rules 8.30.1 | anthropic-api-key | sk-ant-api03- + 93 chars + AA |
| trufflehog · rules 3.97.4 | anthropic | sk-ant-api03- or sk-ant-admin01- + 93 characters + AA |
No rule maps to this family in openredaction.
Fixtures in this family
| Fixture | Kind and evidence | redact-secret |
|---|---|---|
anthropic-token-api03-no-final-hyphen-prefix-twinanthropic · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
anthropic-token-api03-plain-twinanthropic · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
anthropic-token-api03-unicode-crlf-twinanthropic · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
anthropic-token-api03-vendor-stem-prefix-twinanthropic · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
anthropic-token-python-clientanthropic · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
anthropic-token-shape-1-bareanthropic · documented-format-literal | Project policyT3 · Project policy | Redacted |
anthropic-token-shape-1-quotedanthropic · documented-format-literal | Project policyT3 · Project policy | Redacted |
anthropic-token-shape-1-unicode-crlfanthropic · documented-format-literal | Project policyT3 · Project policy | Redacted |
anthropic-token-api03-admin-prefix-plain-twinanthropic · unsettled-evidence-input | Pending reviewT0 · Pending · twin | Unscored |
anthropic-token-api03-admin-prefix-unicode-crlf-twinanthropic · unsettled-evidence-input | Pending reviewT0 · Pending · twin | Unscored |
anthropic-token-api03-compliance-prefix-plain-twinanthropic · unsettled-evidence-input | Pending reviewT0 · Pending · twin | Unscored |
anthropic-token-api03-compliance-prefix-unicode-crlf-twinanthropic · unsettled-evidence-input | Pending reviewT0 · Pending · twin | Unscored |
anthropic-token-api03-curl-x-api-keyanthropic · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
anthropic-token-api03-dotenvanthropic · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
anthropic-token-api03-plainanthropic · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
anthropic-token-api03-python-sdkanthropic · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
anthropic-token-api03-underscore-prefix-twinanthropic · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
anthropic-token-api03-unicode-crlfanthropic · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
anthropic-token-env-api-keyanthropic · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
anthropic-token-env-template-placeholderanthropic · documentation-placeholder | Must not flagT1 · Provider-documented | Quiet |
anthropic-token-key-classes-note-proseanthropic · prose-mention | Must not flagT3 · Project policy | Quiet |
anthropic-token-label-proseanthropic · benign-lookalike | Must not flagT1 · Provider-documented | Quiet |
anthropic-token-maskanthropic · benign-lookalike | Must not flagT3 · Project policy | Quiet |
anthropic-token-mcp-server-envanthropic · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
anthropic-token-prefix-onlyanthropic · benign-lookalike | Must not flagT2 · Tool-corroborated | Quiet |
anthropic-token-referenceanthropic · benign-lookalike | Must not flagT3 · Project policy | Quiet |
anthropic-token-response-identifiers-public-idanthropic · public-identifier | Must not flagT2 · Tool-corroborated | Quiet |
anthropic-token-short-bodyanthropic · benign-lookalike | Must not flagT2 · Tool-corroborated | Quiet |
anthropic-token-x-api-key-headeranthropic · documented-format-literal | Must redactT1 · Provider-documented | Redacted |
anthropic-token-x-api-key-header-stem-twinanthropic · prefix-near-miss | Must not flagT2 · Tool-corroborated · twin | Quiet |
Sources
Documentation and code
- platform.claude.com/docs/en/manage-claude/compliance-api-access
Research log
- redact-secret/redact-secret#642Research issue
- Final evidence, pinned to a commit/redact-secret/redact-secret/blob/0a35cc713feb77419e40436bcfd083f9078c2cb8/docs/audits/evidence/642/README.md