Skip to content
Back to skills

S32sdaf Unified Get Response

ASecurity

Provide a single operational entry point for all S32SDAF / Volkano get_response workflows, from simple UID+challenge requests through HSE2 scheme-specific requests. Resolves UID references, validates inputs, inspects smart-card state when needed, selects the correct key path, and routes execution to either the MCP wrapper or a raw-command-capable path when required.

  • 5 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added October 15, 2026
securityrailsdebuggingsecurity

Works with

  • mcp

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 15, 2026

npx -y skills add nxp-agentic-ai/s32-ds-ai-support --skill s32sdaf-unified-get-response --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of S32sdaf Unified Get Response?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for S32sdaf Unified Get Response
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/nxp-agentic-ai-s32sdaf-unified-get-response/badge)](https://www.skillsdirectory.com/skills/nxp-agentic-ai-s32sdaf-unified-get-response)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: s32sdaf-unified-get-response
description: Provide a single operational entry point for all S32SDAF / Volkano get_response workflows, from simple UID+challenge requests through HSE2 scheme-specific requests. Resolves UID references, validates inputs, inspects smart-card state when needed, selects the correct key path, and routes execution to either the MCP wrapper or a raw-command-capable path when required.
license: LA_OPT_Online Code Hosting NXP_Software_License
metadata:
  author: NXP
  version: "1.0.0"
  product: s32sdaf
  see_also: '[s32sdaf-kb-entrypoint, s32sdaf-discovery-and-status, s32sdaf-auth-device, s32sdaf-hse2-authentication, s32sdaf-register-key, s32sdaf-generate-debug-card, s32sdaf-secure-debug-session]'
  tags: '[s32sdaf, volkano, smartcard, authentication, challenge-response, get-response, hse2, adkp, kuid, adk1, security]'
---

# S32SDAF Unified Get Response

A single operational entry point for **all** S32SDAF / Volkano `get_response`
workflows, from simple UID+challenge requests through HSE2 scheme-specific
requests. Resolve UID references, validate inputs, inspect smart-card state when
needed, choose the correct key path, and route execution to either the MCP
wrapper or a raw-command-capable path. `get_response` is broader than a simple
authentication helper - it is its own operational workflow.

## When to use

Use this skill whenever the user wants to calculate a response through
`volkano.exe get_response`: generic UID+challenge, requests naming a key family
(`ADKP`, `kUID`, `ADK1`), requests naming `scheme_id` 1/2/3, UID-by-index
references (`UID#2`), cases where wrapper-vs-raw selection matters, and flows
needing OID/key-name context for ADK1.

Do not use it to register or wrap keys by themselves, delete records, change
passwords, generate debug-card artifacts, or pretend the MCP wrapper supports
raw-command selectors it does not actually expose.

## Available Capabilities

| Type | Name | Invocation |
|------|------|------------|
| Tool | `status` | verify MCP server reachability/config |
| Tool | `execute_action(action="discover", params={...})` | inspect UIDs/keys; resolve `UID#<n>` |
| Tool | `execute_action(action="get_response", params={...})` | wrapper for cases that fit its surface |
| Command | raw `volkano.exe get_response` | raw-capable path for selectors beyond the wrapper |
| Reference | Cases, decision table, error catalog | `references/cases-and-errors.md` |

Do not assume any wrapper selector (`key`, `oid`, `scheme_id`, `key_name`)
exists unless the actual tool surface confirms it. If a flow needs selectors the
wrapper lacks and no raw-capable path is available, report the implementation
gap - do not fake support.

## Quickstart

1. If readiness/card state is unknown, run `status` /
   `execute_action(action="discover", params={...})`.
2. Resolve `UID#<n>` via discovery; validate direct UID and challenge locally.
3. Determine key family (honor explicit choice) and scheme (1/2/3).
4. Decide wrapper vs raw per `references/cases-and-errors.md`.
5. Execute with the exact UID, challenge, key family, and scheme.
6. Present resolved UID, key family, scheme, execution path, and response.

## Workflow

1. **Confirm readiness.** `status`; if UID/key state uncertain,
   `execute_action(action="discover", params={...})`.
2. **Resolve UID.** Validate a direct UID locally; resolve `UID#<n>` via
   discovery. If the index is absent, stop and report it.
3. **Validate the challenge.** Valid hex, even length, expected size for the
   scheme when documented. Stop on failure; do not normalize.
4. **Determine the key path.** Explicit user choice wins; infer only
   conservatively. Never silently swap `kUID` and `ADKP`. For `ADK1`, confirm
   `oid`/`key_name` context.
5. **Determine the scheme.** `1` generic/HSE1; `2` HSE2 BootROM; `3` HSE2
   HSE-FW. If HSE2 without BootROM/HSE-FW named, ask one concise question.
6. **Verify card contents when needed.** Confirm the UID exists and the
   requested key family/OID prerequisites are present; if missing, stop and
   explain the path cannot be executed with current card contents.
7. **Select wrapper vs raw.** If all required selectors fit the wrapper, use
   `execute_action(action="get_response", params={...})`; else use a raw-capable path, or stop with
   an implementation-gap explanation. See `references/cases-and-errors.md`.
8. **Execute** with exact inputs; pass only selectors the chosen path truly
   supports.
9. **Present the result** (resolved UID, original index if any, key family,
   scheme, execution path, response, caveats/next steps).

Treat `ADK2` as out of scope for normal `get_response`; redirect to debug-card /
DCAT when appropriate.

## Guardrails

**Scope** - Read-oriented; it should not modify smart-card registrations. It may
require authenticated card access and valid existing key material.

**Destructive actions** - None.

**Secrets** - Do not echo the smart-card password unnecessarily.

**Refuse-and-escalate** -
- `UID#<n>` not present: stop; do not guess another UID.
- UID not registered: redirect to `s32sdaf-register-key`.
- Malformed challenge or wrong size for scheme: stop; do not normalize.
- Required key material missing: stop; do not silently switch families.
- Selectors exceed the wrapper and no raw path exists: report the
  implementation gap; do not claim the raw path was tested.
- Wrapper fails after local validation passed: suspect a wrapper limitation
  before blaming the input.
- ADK2 requested: redirect to `s32sdaf-generate-debug-card`.
- Full case list and failure catalog: `references/cases-and-errors.md`.

## Validation loop

1. Confirm the request is recognized as a `get_response` workflow.
2. Confirm UID index inputs are resolved and the challenge validated before
   execution.
3. Confirm correct key-family and scheme selection.
4. Confirm wrapper-vs-raw selection was made explicitly and no unsupported
   selector was silently ignored.
5. Pass criterion: a clear response the user can apply to the target device, or
   a clear explanation of the exact failure class and next step.

## Out of scope

- Registering or wrapping keys, deleting records, changing passwords.
- Generating debug-card / DCAT artifacts (use `s32sdaf-generate-debug-card`).
- Claiming raw-command execution when no raw-capable tool was used.

## See Also

- `references/cases-and-errors.md` - supported cases, input validation,
  wrapper-vs-raw decision table, error catalog, and result formatting.
- Related skills: `s32sdaf-auth-device` (narrow generic flow),
  `s32sdaf-hse2-authentication` (HSE2 reasoning), `s32sdaf-kb-entrypoint`
  (routing broad prompts), `s32sdaf-discovery-and-status` (readiness),
  `s32sdaf-register-key` (provisioning), `s32sdaf-generate-debug-card` (ADK2),
  `s32sdaf-secure-debug-session` (enable secure debugging in an S32DS launch
  config; the debugger and card compute the response automatically).

Files in this skill

  • SKILL.md6.8 KB
  • references/cases-and-errors.md4.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.