Skip to content
Agentmart
Submit a tool

doca-sha-offload-engine

Use this skill when wiring the DOCA SHA Offload Engine (an OpenSSL ENGINE) into an existing OpenSSL pipeline to offload one-shot SHA-1, SHA-256, or SHA-512…

Skill by NVIDIA <doca@nvidia.com>

IndexedApache-2.0★ 3,718
Write a review

Chalk Labs

Need help deploying doca-sha-offload-engine?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/nvidia-doca-sha-offload-engine

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Use this skill when wiring the DOCA SHA Offload Engine (an OpenSSL ENGINE) into an existing OpenSSL pipeline to offload one-shot SHA-1, SHA-256, or SHA-512 (EVP_Digest) onto DOCA SHA hardware without rewriting against doca-sha. Covers engine load mechanics (`openssl engine dynamic`, `set_pci_addr` ctrl, `-engine_impl`), the SHA-224 negative test that proves offload engaged, the message-size window where offload beats CPU SHA, and engine-vs-library selection. Trigger even when the user does not say "DOCA SHA Offload Engine" or "OpenSSL ENGINE" — typical implicit phrasings: "speed up openssl SHA on BlueField", "offload SHA without code changes", "is openssl using the accelerator or falling back to software", "prove DOCA SHA actually ran", "openssl dgst hashed but I'm not sure it was offloaded". Refuse and route elsewhere for new SHA pipelines (use doca-sha), MD5 / SHA-3 / SHA-224 / HMAC-SHA offload, incremental hashing via chained `EVP_DigestUpdate`, or OpenSSL PROVIDER authoring.

Use cases: testing, data

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/doca-sha-offload-engine

What's inside

Skill name
doca-sha-offload-engine
Description
Use this skill when wiring the DOCA SHA Offload Engine (an OpenSSL ENGINE) into an existing OpenSSL pipeline to offload one-shot SHA-1, SHA-256, or SHA-512 (EVP_Digest) onto DOCA SHA hardware without rewriting against doca-sha. Covers engine load mechanics (`openssl engine dynamic`, `set_pci_addr` ctrl, `-engine_impl`), the SHA-224 negative test that proves offload engaged, the message-size window where offload beats CPU SHA, and engine-vs-library selection. Trigger even when the user does not say "DOCA SHA Offload Engine" or "OpenSSL ENGINE" — typical implicit phrasings: "speed up openssl SHA on BlueField", "offload SHA without code changes", "is openssl using the accelerator or falling back to software", "prove DOCA SHA actually ran", "openssl dgst hashed but I'm not sure it was offloaded". Refuse and route elsewhere for new SHA pipelines (use doca-sha), MD5 / SHA-3 / SHA-224 / HMAC-SHA offload, incremental hashing via chained `EVP_DigestUpdate`, or OpenSSL PROVIDER authoring.
License
Apache-2.0
Compatibility
Requires DOCA SDK installed at /opt/mellanox/doca on Linux (Ubuntu 22.04/24.04 or RHEL/SLES) with a BlueField-2 DPU (not BF-3) attached, plus OpenSSL ≥ 1.1.1 and libssl-dev (or distro equivalent) on the build host. The engine ships under /opt/mellanox/doca/tools/doca_sha_offload_engine/ as libdoca_sha_offload_engine.so; reads the user's local install via `pkg-config doca-sha` and inspects /opt/mellanox/doca/{lib,include,samples,applications}. The validation steps require a live DOCA install.
Metadata
kind: tool · author: NVIDIA <doca@nvidia.com> · doca_version: 3.5
Instructions
284 lines in SKILL.md · view on GitHub

Files (8)

  • BENCHMARK.md
  • CAPABILITIES.md
  • SKILL.md
  • SKILLCARD.yaml
  • TASKS.md
  • evals.json · evals/
  • skill-card.md
  • skill.oms.sig

SKILL.md (first lines)

# DOCA SHA Offload Engine

## Examples

- **“Can I offload SHA in an existing OpenSSL pipeline without
  rewriting?”** — this is in scope. Load the engine; do not
  start a new `doca-sha` pipeline here.
- **“How do I prove OpenSSL used DOCA SHA, not CPU SHA?”** —
  use the SHA-224 negative test; do not treat a successful
  digest as proof of offload.

## Quick answer (answer from this file)

1. **Device gate first.** The DOCA SHA engine exists only on BlueField-2;
   BlueField-3 has no SHA acceleration engine (public DOCA SHA guide), so
   there is nothing to offload there: say so and stop.
2. **Load probe:** `openssl engine dynamic -pre NO_VCHECK:1 -pre SO_PATH:<engine .so> -pre LOAD -vvv -t -c`.
3. **Positive test:** `openssl dgst -sha256 -engine <engine .so> -engine_impl <file>`
   reports the engine was set.
4. **Negative test:** an unsupported digest (`-sha224`) must fail with the
   engine selected; it must not silently fall back.
5. **Performance:** compare `openssl speed -evp sha256` with and without
   the engine (add `-async_jobs` for parallelism). Report measured numbers
   only; never quote numbers from memory.

## Instructions

Follow Loading order below. Open the tasks companion for
configure / run. Open the capabilities companion for when
offload wins and how to verify it. Do not open every
companion file.

**Where to start:** This is a tool skill for the OpenSSL
ENGINE installed by the `doca-sha-offload-engine` package
under `${DOCA_DIR}/tools/doca_sha_offload_engine/` as
`libdoca_sha_offload_engine.so`, next to its
`engine_readme.md`. It is **not a CLI** —
it is a shared object loaded by an OpenSSL-based
application or by `openssl` itself, that re-routes SHA-1 /
SHA-256 / SHA-512 (one-shot only, via the `EVP_Digest`
interface) onto the DOCA SHA hardware path. Open
the tasks companion and start at
`## configure` for the PCIe-address
configuration and the OpenSSL prerequisites; jump to
`## run` for the *“load the engine and
prove it actually runs”* flow. Open
the capabilities companion when the question is
*what the engine actually offloads vs falls back to*,
*when the engine is a perf win vs not*, or *how to verify
offload actually engaged*. If DOCA is not installed yet,
route to `doca-setup/SKILL.md` first.
If the user is building a new SHA pipeline from scratch
(not wrapping an existing OpenSSL-based one), this skill
is the wrong surface — route to
`../../libs/doca-sha/SKILL.md` (`doca-sha/SKILL.md`)
instead.

## Example questions this skill answers well

The CLASSES of `doca-sha-offload-engine` questions this
skill is built to answer, each with one worked example.
The class is the load-bearing piece; the worked example
is one instance.

- **“I have an existing OpenSSL-based pipeline doing SHA;
  can I offload the SHA to DOCA without rewriting the
  app?”** — worked example: *“the app uses
  `EVP_DigestInit_ex` / `EVP_DigestUpdate` /
  `EVP_DigestFinal_ex` against `EVP_sha256()`; can I
  drop in DOCA-SHA offload via an engine load?”*.
  Answered by the *“when this engine is the right
  surface”* rule in
  the capabilities companion
  + the engine-load mechanics in
  the tasks companion.
- **“Did the engine actually load? Or did OpenSSL just
  fall back to software SHA?”** — worked example: *“my
  `openssl dgst` invocation completed; how do I know
  DOCA SHA actually did the work and OpenSSL did not
  silently use the software path?”*. Answered by the
  *“prove the engine actually ran”* pattern in
  the capabilities companion
  (the SHA-224 negative test and the `-engine_impl`
  flag) + the verification flow in
  the tasks companion.
- **“For what message-size range is the engine offload a
  win vs CPU SHA?”** — worked example: *“my pipeline
  hashes 4 KB blocks at a time; is the engine a win
  there, or does the round-trip to DOCA SHA cost more
  than the CPU hash itself?”*. Answered by the
  message-size-window rule in
  the capabilities companion
  + the `openssl speed` perf-comparison pattern in
  the tasks companion.
- **“What SHA algorithms does the engine actually
  support — and what happens for the ones it does not?”**
  — worked example: *“my pipeline mixes SHA-1, SHA-256,
  SHA-512, and SHA-224 — what does the engine do for
  each?”*. Answered by the algorithm-coverage matrix in
  the capabilities companion.
- **“Should I use this engine, or call doca-sha
  directly?”** — worked example: *“I am writing a new
  service from scratch; does the engine save me work or
  does it add complexity I do not need?”*. Answered by
  the *“engine vs library”* selection table in
  the capabilities companion.
- **“What OpenSSL versions does the engine require, and
  what about OpenSSL 3.x's deprecation of the ENGINE
  API?”** — worked example: *“my host has OpenSSL 3.0;
  will the engine still load?”*. Answered by the version
  overlay in
  the capabilities companion
  (verified surface: the engine is documented for
  OpenSSL 1.1.1f on Ubuntu 20.04 and OpenSSL 3.0.2 on
  Ubuntu 22.04 per the shipped `engine_readme.md`).

## When to load this skill

Load this skill when the user is — or the agent needs to

From NVIDIA/skills, Apache-2.0.

More from NVIDIA/skills

Signals

Stars
3,718
Forks
457
Open issues
8
Last commit (this folder)
Oct 22, 2026 (10 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from NVIDIA <doca@nvidia.com>

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get doca-sha-offload-engine running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying doca-sha-offload-engine?

CallGet help
Cite this page

doca-sha-offload-engine skill. Agent Mart. https://agentmart.dev/skills/nvidia-doca-sha-offload-engine (last updated 2026-10-24)