API Key Prefix Separability Check

Audit exact prefix-free API-key dispatch against explicit caller registry, no secret inspection or inferred provider; separability does not establish authentication/security.

Description

Prefix-based dispatch becomes ambiguous when one registered prefix begins with another.

Prefix-based dispatch becomes ambiguous when one registered prefix begins with another.1

Checking prefix relationships does not generate API keys or evaluate their secrecy. Use API Key Prefix Separability Check to evaluate the supplied inputs under the specific model below.

When to use API Key Prefix Separability Check

Use API Key Prefix Separability Check to evaluate the supplied inputs under the specific model below. Choose the intended encoding, alphabet or check and keep the exact character, key and measurement conventions described below.

How to use API Key Prefix Separability Check and understand its results

  1. Choose the intended encoding, alphabet or check and keep the exact character, key and measurement conventions described below.
  2. Enter Caller key prefixes, Candidate prefix using the field table and validation rules below, then run the tool.
  3. Read Existing prefixes containing candidate, Existing prefixes contained by candidate, Unambiguous prefix dispatch and interpret units, signs, ordering and placeholders as explained below.
  4. If the tool reports an input error, correct that field and rerun. A successful false result, empty match list or unknown-evidence placeholder has the specific meaning described here; check the limitations before applying the result.
Input fieldMeaningValue typeRequirement
callerKeyPrefixesCaller key prefixesarray of stringRequired; constraints below
candidatePrefixCandidate prefixstringRequired; constraints below

Enter unique nonblank existing prefixes and a nonblank candidate, each at most 128 UTF-16 code units. An exact duplicate candidate is an error. Return existing prefixes beginning with the candidate and existing prefixes that the candidate begins with, preserving caller order. Separability is true only when both lists are empty. Matching is case sensitive and the tool neither generates keys nor checks ownership.

unambiguous = no existing startsWith(candidate) and no candidate startsWith(existing)

Field order, units and branch conditions follow the implementation explanation above.

Output fieldMeaningValue type
existingPrefixesContainingCandidateExisting prefixes containing candidatearray of string
existingPrefixesContainedByCandidateExisting prefixes contained by candidatearray of string
unambiguousPrefixDispatchUnambiguous prefix dispatchboolean
json
{
  "input": {
    "callerKeyPrefixes": [
      "sk_live_",
      "sk_test_"
    ],
    "candidatePrefix": "sk_"
  },
  "output": {
    "existingPrefixesContainingCandidate": [
      "sk_live_",
      "sk_test_"
    ],
    "existingPrefixesContainedByCandidate": [],
    "unambiguousPrefixDispatch": false
  }
}

Limitations and assumptions

Checking prefix relationships does not generate API keys or evaluate their secrecy. Apply the exact scope and assumptions described above.

All listed fields require explicit values. Unexpected fields, incorrect types, nonfinite numbers and sparse arrays fail validation. Domain-specific bounds, alignments and supported tokens are stated above; extremely large inputs or outputs can also be rejected. These errors differ from successful results such as false, no matches or unknown evidence.

Alternative or Complementary methods

Use Enigma Plugboard Pairing Count Check for a related task: An Enigma plugboard pairs letters without sharing a letter between pairs.

Use WPA Passphrase Length/Charset Check for a related task: WPA input forms can distinguish a printable passphrase from a raw hexadecimal key.

References

  1. API Key Prefix Separability Check — tool.io

Similar or alternative tools

Don't forget to set a bookmark for tool.io!
Privacy | Imprint | Cookies