Cryptographic identity, integrity hashes, and silent-deployment commands for enterprise rollouts.
This page is provided for corporate IT teams deploying VirtuCath onto managed Windows machines. It contains the cryptographic information needed to verify our binaries, the command-line switches needed for unattended deployment via SCCM, Intune, or equivalent fleet-management tools, and the policy / compliance information that typically appears on procurement security questionnaires.
For step-by-step deployment narrative (rollout planning, troubleshooting, log locations), see the IT Deployment Guide in the main documentation. This page is the cryptographic-identity and procurement reference that complements it.
VirtuCath is a desktop simulation tool intended as a design aid for research and development of deflectable micro-catheters. It is not, and must not be used as:
Engineering inputs (catheter geometry, material properties, simulation parameters) are not PHI and are unaffected by this restriction. Full intended-use language is in EULA §1; the limitation-of-liability treatment is in EULA §10.3.
For procurement reviewers: this scope deliberately keeps VirtuCath outside the FDA medical-device regulatory perimeter, the HIPAA covered-entity perimeter, and any clinical-system audit obligations. Treat it like a CAD/CAE tool, not a clinical platform.
The VirtuCath installer is published by VirtuCath, LLC, a limited liability company registered in the State of Minnesota, United States. The legal entity name appears as the Common Name (CN) and Organization (O) on our code-signing certificate.
| Field | Value |
|---|---|
| Publisher legal name | VirtuCath, LLC |
Signature subject (as shown by Get-AuthenticodeSignature) |
CN=VirtuCath LLC, O=VirtuCath LLC, L=Saint Louis Park, S=Minnesota, C=US |
| Registered address | |
| Support contact | support@virtucath.com |
All VirtuCath release binaries (the VirtuCath-<version>-Setup.exe
installer, VirtuCath.exe, and the bundled
pyarmor_runtime.pyd) are digitally signed with an
Organization Validation (OV) code-signing certificate issued by
SSL.com and signed via the SSL.com eSigner cloud signing service.
The OV process required SSL.com to independently verify the legal existence and
operational identity of VirtuCath, LLC before issuance.
| Field | Value |
|---|---|
| Certificate authority | SSL.com (via eSigner cloud signing) |
| Certificate type | Organization Validation (OV) code-signing certificate |
| Subject Common Name (CN) | VirtuCath LLC |
| Subject Organization (O) | VirtuCath LLC |
| Certificate SHA-1 thumbprint | 4BAF0924DE2FDB836E54DE1E89B42AE1F34C81ED |
| Certificate SHA-256 thumbprint | BCD62B8311C9574842A0B4DB450F06558BF791865CDCAABA1288FB4C2A5296AB |
| Valid until | 2027-10-08 |
On a Windows machine with the signed installer downloaded, run the following in PowerShell. The values that print MUST match the table above. If they do not, the binary you downloaded was not produced by VirtuCath, LLC and should not be installed.
All release signatures include an RFC 3161 timestamp countersignature
applied by SSL.com's timestamp authority at the moment of signing. The practical
consequence: signatures on binaries shipped before the certificate's
NotAfter date remain Authenticode-valid indefinitely, even
after the underlying certificate expires. Authenticode policy explicitly grandfathers
timestamped signatures past their cert's expiry.
The current certificate expires on the Valid until date in the previous section. Renewal will be initiated at least 30 days before that date. When the cert is renewed:
build_and_sign.py's auto-update routine) and a note in the
CHANGELOG.For audit purposes: the signature on each release was applied at the time the
build was produced (you can read the exact UTC timestamp from
(Get-AuthenticodeSignature *.exe).TimeStamperCertificate.NotBefore),
not at the time you downloaded the file.
SHA-256 hashes of each VirtuCath installer release. Compute the hash locally with
Get-FileHash <installer.exe> -Algorithm SHA256 and compare
against the value below before deploying. Hashes for retired versions are kept
for historical / audit reference.
| Version | Released | Filename | SHA-256 |
|---|---|---|---|
| 1.7.4 | 2026-11-03 | VirtuCath-1.7.4-Setup.exe |
fc7e71917661bb684a893c1cd03330b8edee7f2154c2e6bbfe1d14379d908feb |
| 1.7.3 | 2026-11-01 | VirtuCath-1.7.3-Setup.exe |
aedecd0f7ce8ac63e0be3075077dee92e0273517823f46632a2ca9777b3b4530 |
| 1.7.2 | 2026-10-18 | VirtuCath-1.7.2-Setup.exe |
78a51f324adcdaae9dd29886f7553f16f22f96f209dac6c6e33b8aaf474557a3 |
| 1.7.1 | 2026-10-13 | VirtuCath-1.7.1-Setup.exe |
c264adfaaf4803b7e82399edfb937b863407cead0842626670710f8a901833e8 |
| 1.7.0 | 2026-10-09 | VirtuCath-1.7.0-Setup.exe |
3ad2a7417d85ba6a16fb734edb8030d75c7cf485d581cdd8156ff6b89d82657d |
| 1.6.1 | 2026-09-30 | VirtuCath-1.6.1-Setup.exe |
104fca5f24fce61b20221d3df8274fd64957563f3b42e551913a2f927b5c27ff |
| 1.6.0 | 2026-09-27 | VirtuCath-1.6.0-Setup.exe |
d7f48dda7484b449852de0284b281a6872633029e747a52dd340025da6ce0886 |
| 1.5.3 | 2026-09-13 | VirtuCath-1.5.3-Setup.exe |
bc0595e2a8bb27e10d02b0ee6df9370dbf269d81f4fb6c841269a7a6245c1d7c |
| 1.5.2 | 2026-09-05 | VirtuCath-1.5.2-Setup.exe |
b1aa61ce0300491a78b80de32b9a84535f2bbba924702b75f7e300c69f6bf75d |
| 1.5.1 | 2026-09-01 | VirtuCath-1.5.1-Setup.exe |
7a55d793a7a80ec2ac53f8b53814b14a6e55f522c9eb1887311f7b09103c5913 |
| 1.5.0 | 2026-08-25 | VirtuCath-1.5.0-Setup.exe |
81c2ec5c9d76a48c1a52be3be98f8ff8b66c3fec3e51e354f035879d0c64216f |
| 1.2.5 | 2026-08-17 | VirtuCath-1.2.5-Setup.exe |
9edf1970921c90e6ceb5dd7fbc87b34042ebf2edcca0eafb36060a3c4656fd06 |
| 1.2.4 | 2026-08-17 | VirtuCath-1.2.4-Setup.exe |
8207c723a38a408d0ee4d5b9b00060dbbc0388ffb4f00ca785d4efc651429076 |
| 1.2.3 | 2026-08-08 | VirtuCath-1.2.3-Setup.exe |
9f72ed26d538d4b7a47ff5037c8dbfc387eeebe1ca43636e366810da323ea147 |
| 1.2.2 | 2026-08-02 | VirtuCath-1.2.2-Setup.exe |
e6b3c5979161ddbf2312f5b46abbb612798b48438123e9f0b6b2dee92f826ba3 |
| 1.2.1 | 2026-07-28 | VirtuCath-1.2.1-Setup.exe |
d3decf20d6d3fd1548cc3f126f99ce6e6021d6441ff9685fb2b800fc2e5a9285 |
| 1.2.0 | 2026-07-26 | VirtuCath-1.2.0-Setup.exe |
8ea9bde3ba16c507f638786e1cd9e13d1a2d4567e4a275f10af7b1c1554e3e8c |
| 1.1.2 | 2026-07-18 | VirtuCath-1.1.2-Setup.exe |
cdf0cc9b98a807d735c3d01abe60b4ab8b2ffa3c07f1bd6f0679ad630e9a18d4 |
| 1.1.1 | 2026-07-11 | VirtuCath-1.1.1-Setup.exe |
ddce5660295dac6c4f220bd7ab6940494270781ebb91f9cb4ea35bf4fb62fd44 |
| 1.1.0 | 2026-07-08 | VirtuCath-1.1.0-Setup.exe |
a5facd10ddf2e262d8851cdba58644b1894391fa546844d361a899b7979ee5ab |
| 1.0.10 | 2026-07-04 | VirtuCath-1.0.10-Setup.exe |
5b92af61ac36c1f037749f2ee1deb7d753a9bdefc8696864a6388f8d411f10e2 |
| 1.0.9 | 2026-06-28 | VirtuCath-1.0.9-Setup.exe |
a090701e43cb045d48d2c0aeb9d4457a620944adb446d3ea556d63204f8988b8 |
| 1.0.8 | 2026-06-27 | VirtuCath-1.0.8-Setup.exe |
925425e50619d88731311017407206164de904a14b64dabc66974607e6d5c683 |
| 1.0.7 | 2026-06-21 | VirtuCath-1.0.7-Setup.exe |
202f1a58ac7906a1534917396d81c2eac02741abf82aa038a3c1d5f30b11b31a |
| 1.0.6 | 2026-06-18 | VirtuCath-1.0.6-Setup.exe |
a3ea6f0b5d727d02026aa86812054fb27ef2c8bf6cb881fd719b9eda51db5818 |
| 1.0.5 | 2026-06-02 | VirtuCath-1.0.5-Setup.exe |
da48776ecf4e807b1baafb076275fa14c74f76c40079997056fddd9291e5e6b6 |
| 1.0.1 | 2026-05-29 | VirtuCath-1.0.1-Setup.exe |
3e22f09b74db5f3395c204e2b316d5585fd13dac259efd265e84b735eb7516bb |
| 1.0.0-rc.1 | 2026-05-12 | VirtuCath-1.0.0-rc.1-Setup.exe |
208371fb63162d51277219856dc17cac8cd5b7d87842f5b21b9b9e6eb7cf4865 |
Older 0.9.x setup files are not listed and are no longer supported. Customers on those versions should upgrade to 1.0 via the standard installer.
| Component | Requirement |
|---|---|
| Operating system | Windows 10 or Windows 11, 64-bit. Server SKUs (2019 / 2022) work but are not formally tested. |
| CPU | x86-64 with SSE4.2. 4 cores or more recommended for interactive simulation; the physics solver is single-threaded but the renderer and model build run on separate threads. |
| RAM | Minimum 4 GB free. Recommended 8 GB or more. Large catheter models (40+ sections / 200+ layers) can use 1–2 GB during simulation. |
| Disk | Approximately 2 GB free during install (the installed footprint is ~1.2 GB). Additional working space for session logs and exported reports. |
| GPU | OpenGL 3.3 or higher with current vendor drivers. Intel UHD / Iris,
NVIDIA, AMD all supported. A software-rendering fallback (Mesa
opengl32.dll) is bundled and triggered automatically if
hardware OpenGL fails or is disabled. |
| Display | 1920 × 1080 minimum. The UI auto-scales for high-DPI displays. |
| Visual C++ runtime | Microsoft Visual C++ 2015–2022 Redistributable (x64). The installer
bundles and auto-runs VC_redist.x64.exe if a compatible
version is not already present. |
| .NET | Not required. VirtuCath is a Python / PySide6 application; the .NET runtime is not used. |
| Network | HTTPS outbound to the domains listed in §10 below. No inbound ports. Offline-activated installs do not require any network connectivity. |
| Privileges | Per-user install: no admin required. Per-machine install
(/ALLUSERS): requires admin during install only;
application runs as the user thereafter. |
VirtuCath is built with PyInstaller (Python packaging) and PyArmor (Python bytecode obfuscation). Both produce binary signatures that several aggressive AV / EDR products historically flag on heuristic grounds, even though the underlying executable is benign and signed. Specific vendor / engine combinations vary — we deliberately do not maintain a public list of "products that flag us," because that list rots between signature updates. Behaviour varies by engine version, signature update state, and policy aggressiveness.
CN=VirtuCath LLC, O=VirtuCath LLC. If the
thumbprints do not match, do not allowlist — treat the file as
untrusted and contact us.[IT][AV-FP] in the subject line.We do not submit binaries to AV vendors pre-emptively (the signature-update churn would produce more false positives than it solves). Reactive remediation via the steps above has historically resolved every reported case.
The Inno Setup installer supports unattended deployment via standard Inno command-line switches. The most common patterns:
Installs to C:\Program Files\VirtuCath\. Requires
administrator privileges. No UAC prompts. No reboot.
Installs to %LOCALAPPDATA%\Programs\VirtuCath\. No
administrator rights needed.
| Switch | Effect |
|---|---|
/DIR="<path>" |
Override the install directory. |
/NOICONS |
Skip Start Menu shortcuts. |
/TASKS="desktopicon" |
Opt in to creating a desktop shortcut for the installing user. |
/LOG="<path>" |
Write a setup log to the given path. Useful for SCCM error diagnostics. |
/VERYSILENT |
Like /SILENT but suppresses the progress window entirely. |
The choice of /ALLUSERS vs /CURRENTUSER is remembered
across upgrades (Inno's UsePreviousPrivileges=yes), so a subsequent
upgrade installer launched without flags will respect the original install scope.
This is the recommended behaviour for fleet rollouts: deploy once with
/ALLUSERS /SILENT, and future updates pushed by the same mechanism
will land in the same location.
VirtuCath supports a machine-wide "enterprise mode" that disables the auto-updater (IT pushes updates instead), defaults the bug-report tool to local-save only, and excludes the user's catheter configuration from diagnostic bundles by default (engineering IP exfiltration risk). Activate via Group Policy / Intune by setting:
Or in PowerShell during deployment:
Users can verify enterprise mode is active by opening Help → About; the "Deployment" line will read "Enterprise mode (via machine-wide registry policy)".
Full enterprise-mode setup, including environment variable and license-tier detection, is documented in the IT Deployment Guide.
VirtuCath is largely an offline desktop application. The only outbound network traffic from a deployed install:
| Destination | When | Cadence |
|---|---|---|
*.cryptlex.com |
License validation (online activation only; offline-activated installs make zero network calls) | On activation, then per Cryptlex policy (typically every 30 days) |
virtucath.com/api/version |
Update-check polling | On launch and every 24 hours while running |
virtucath.com/api/report-bug |
Only when the user explicitly clicks Help → Report a Problem → Send to VirtuCath Support | User-action only; never automatic |
| Installer download URL | Only when the auto-updater is enabled (it is disabled automatically in enterprise mode) | User-action only |
All traffic is HTTPS with TLS 1.2 minimum. Proxy environments are supported via
the standard HTTP_PROXY / HTTPS_PROXY environment
variables. The app does not bypass system proxies.
If your network performs TLS interception (a common pattern for next-gen
firewalls), our HTTPS calls will fail certificate verification and the
auto-updater's Authenticode check on the downloaded installer will also fail.
Either allowlist virtucath.com and *.cryptlex.com to
bypass interception, or install your corporate root CA into the machine's
Windows trust store before deploying VirtuCath.
No telemetry. VirtuCath installs do not phone home for product analytics, usage tracking, crash counts, or any background data upload. The only outbound network traffic is exhaustively listed in §10. We do not embed Google Analytics, Meta Pixel, LinkedIn Insight, Sentry, Mixpanel, PostHog, Segment, or any other analytics / observability SDK in the desktop application.
Data residency. When VirtuCath does make a network call (license validation, update check, or a user-submitted bug report), the receiving infrastructure is located in the United States:
For EU / UK / Swiss customers, transfers rely on Standard Contractual Clauses (EU Decision 2021/914) plus the UK ICO International Data Transfer Addendum. See the Privacy Policy §6A for the full transfer mechanism.
Bug-report contents. When a user submits a bug report via Help → Report a Problem, the diagnostic bundle they upload (or save locally) is automatically redacted client-side: license keys, hardware identifiers, foreign email addresses, and user-home filesystem paths are masked before the bundle leaves the machine. The user's catheter configuration is opt-in (and OFF by default in enterprise mode — see §9).
Encryption. All in-transit traffic uses TLS 1.2 or higher. Stored bug-report bundles are kept in Cloudflare R2, which encrypts objects at rest by default. Local session logs on the user's machine are unencrypted plain text (they need to be readable by the user / support during diagnostics) but live inside the user's profile and are subject to whatever full-disk encryption (BitLocker etc.) you have applied at the OS level.
PII minimisation in the event archive. Cryptographically
verified webhook payloads from FastSpring and Cryptlex are archived to R2
for vendor-independent disaster recovery (the events/ bucket
prefix). Customer PII is removed before write: email
addresses are replaced with their HMAC-SHA256 hash (keyed by a server-side
pepper that never leaves the worker secret store); first / last names,
addresses, phone numbers, IP addresses, and company names are dropped
entirely. Order IDs, license IDs, subscription IDs, plan, and timestamps
are retained so a license-issuance event can be reconstructed if Cryptlex
ever becomes unavailable. The archive is bounded by the 90-day lifecycle
rule below; the pseudonymisation layer bounds it further — even if
the bucket were exposed, raw customer identities could not be recovered
without also obtaining the hashing pepper.
Local log contents. Session logs at
%LOCALAPPDATA%\VirtuCath\logs\ capture: application version, OS
version, Python tracebacks, OpenGL renderer string, simulation parameters the
user entered, and timing statistics. No Protected Health Information
(PHI) is captured by design — the application has no PHI input
surface (see §1). License keys and hardware identifiers are redacted at
the logging layer. Logs rotate at 10 MB per file with 5 rotated copies
retained, then the oldest is overwritten. Logs are never transmitted off-device
unless the user explicitly initiates a bug report.
Retention. Server-side data is retained on the following schedule. Bug-report and backup retention are enforced by Cloudflare R2 object-lifecycle rules, so deletion is automatic and auditable:
| Data category | Location | Retention |
|---|---|---|
| User-submitted bug-report bundles | Cloudflare R2 — bug-reports/ prefix |
90 days, then auto-deleted |
| Webhook event archive (signed FastSpring & Cryptlex payloads) | Cloudflare R2 — events/ prefix |
90 days, then auto-deleted. Email addresses are HMAC-hashed before write; names, addresses, phone numbers, IPs, and company names are dropped at the moment of write — raw PII is never stored in this archive. |
| D1 database backups | Cloudflare R2 — backups/ prefix |
365 days, then auto-deleted |
| License records (active & recently-expired) | Cryptlex | For the life of the license + 24 months for audit / refund handling |
| Payment & order records | FastSpring (Merchant of Record) | Per FastSpring's own retention policy — typically 7 years for tax compliance, which they handle on our behalf |
| Local session logs on user machine | %LOCALAPPDATA%\VirtuCath\logs\ |
Rotated at 10 MB / 5 files; oldest overwritten. User may delete at any time. |
Deletion on request. Customers may request earlier deletion of a specific bug-report bundle by emailing support@virtucath.com with the bundle's report ID (printed in the on-screen confirmation and in the notification email). Deletion is completed within 5 business days. End-user data-subject rights (access, deletion, portability) under GDPR / CCPA / state privacy laws are handled through the process described in the Privacy Policy §9.
Right-to-be-forgotten procedure for license customers. When a paid customer requests erasure under GDPR or CCPA, our internal procedure removes their records from each system that holds them: (1) HubSpot Contact and all associated Deals and Notes; (2) Cryptlex license metadata is anonymised (the license itself is preserved for the refund-window audit period per the row above, but PII metadata is stripped); (3) the R2 event archive is searched by the customer’s HMAC-hashed email and any matching objects are deleted. Steps (1)–(3) are completed within 30 calendar days of a verified request, per Article 12(3) GDPR.
We welcome reports of security vulnerabilities in VirtuCath or in our backend infrastructure. To report:
[SECURITY].virtucath.com/.well-known/security.txt
(RFC 9116).We commit to:
We do not currently run a paid bug-bounty program. Good-faith research conducted under this policy will not result in legal action.
Once a vulnerability is confirmed, we commit to publish a fixed release within the following targets. Severity is assessed against CVSS 3.1, with the exploitability context of a Windows-desktop simulation application that does not handle PHI or financial data:
| Severity | CVSS 3.1 range | Patch shipped within |
|---|---|---|
| Critical | 9.0 – 10.0 | 14 calendar days |
| High | 7.0 – 8.9 | 30 calendar days |
| Medium | 4.0 – 6.9 | 90 calendar days |
| Low / Informational | 0.1 – 3.9 | Best effort; bundled into the next scheduled release |
These are publication targets, not contractual SLAs. We will communicate slippage and the reason for it before the deadline elapses.
VirtuCath's build pipeline applies the following controls before any binary is released to customers:
requirements.txt; upgrades are intentional and
recorded in the CHANGELOG, not the byproduct of a "latest" floating tag.pip-audit, Snyk, or any
other CVE scanner your security team already operates — you can run
your own scan against our locked dependency set, on your own cadence,
against your own choice of vulnerability database. We commit to publishing
a patched release on the SLA in the previous table once a CVE that
materially affects VirtuCath is reported to us.wrangler secret put on the Cloudflare side and in the OS
credential store on the build machine; they are never written to
source-controlled files. The signing-cert PIN never leaves the build
machine — SSL.com's eSigner performs the actual signature
server-side, gated by a TOTP submitted by the build script.For non-security operational issues (crashes, deployment errors, license problems), use the regular support channel in §16 below.
The following third parties process VirtuCath data on our behalf. All processing relationships are governed by the vendor's published Data Processing Addendum (DPA), incorporating Standard Contractual Clauses for any EU/UK/Swiss-origin data:
| Subprocessor | Purpose | Data categories | Region / safeguards |
|---|---|---|---|
| Cryptlex | License key issuance, activation, validation | License key, machine fingerprint hash, activation IP, customer email
and FastSpring order identifiers (stored as visible: false
metadata so they are accessible only via the Cryptlex admin dashboard —
not exposed via the public activation API consumed by the desktop client) |
US / global anycast. SOC 2 Type II. Cryptlex DPA |
| Cloudflare, Inc. | Backend hosting (Workers), database (D1), object storage (R2), CDN for installer downloads | License activation requests, quote / order metadata, bug-report bundles, D1 backups | US-region storage with global edge. SOC 2 Type II, ISO 27001, ISO 27018. Cloudflare DPA |
| FastSpring (Bright Market, LLC) | Payment processing, tax handling, Merchant of Record | Customer name, billing address, email, payment instrument (tokenised — never seen by VirtuCath), order line items | US. PCI DSS Level 1, SOC 2 Type II. FastSpring DPA |
| SSL.com | Code-signing certificate issuance & eSigner cloud signing (§3) | Publisher identity attestation only — no customer data | US. WebTrust for CAs — Code Signing. SSL.com CPS |
| Make.com (Celonis SE) | Workflow automation: license fulfillment pipeline (FastSpring → Cryptlex → HubSpot), beta / contact / quote form routing, support email ingestion, transactional email orchestration | Customer email, name, license key, order ID, plan, form submission body,
cookie-consent state. Consent fields (marketing / analytics / preferences)
are passed through so the scenario can set HubSpot's
hs_marketable_status and hs_legal_basis per user opt-in. |
EU. SOC 2 Type II, ISO 27001. Make.com DPA |
| HubSpot, Inc. | CRM — customer Contact records, Deals (one per purchase / renewal), consent audit notes, sales pipeline | Customer email, name, company, lifecycle stage, license key, plan type, order ID, marketable status, legal basis, consent snapshot (as a timeline Note) | US (portal hosted on app-na2.hubspot.com). SOC 2 Type II,
ISO 27001, ISO 27018.
HubSpot DPA |
| Postmark (ActiveCampaign Postmark) | Transactional email delivery: license fulfillment emails, admin notifications, bug-report receipts, support replies | Customer email, name, license key (in the fulfillment email body), bug-report ID, message content | US. SOC 2 Type II. Postmark DPA |
Adding or replacing a subprocessor with material customer-data access will be announced on this page at least 30 days in advance, with the customer right to terminate for cause within that window (per the standard Article 28 GDPR pattern). Subscribe to the CHANGELOG to receive these notices.
VirtuCath software development is performed by employees of VirtuCath, LLC under written confidentiality obligations. No source-code development is subcontracted to third parties. Access to production systems (Cloudflare account, Cryptlex tenant, FastSpring store, signing-certificate custody) is limited to authorised employees, secured with multi-factor authentication (TOTP), and re-reviewed on any change in personnel assignment.
VirtuCath is a desktop application that continues to function fully offline. If our backend (Cloudflare Workers + D1) becomes unreachable for any reason — outage, DNS failure, our company ceasing operations — existing installations:
.exe they downloaded.This design intentionally minimises business-continuity risk for IT teams: a VirtuCath vendor outage does not stop your engineers from working.
The backend D1 database (license records, order metadata) is backed up weekly to
Cloudflare R2 under the backups/ prefix with 365-day retention
(§11). Backup integrity and restore procedures are tested as part of
our release-engineering process. Detailed RTO/RPO targets are available on
request for procurement reviewers under NDA.
Details of in-force cyber-liability and technology errors & omissions
coverage are available on request under a mutual NDA. Email
support@virtucath.com with subject
line beginning [IT][Insurance].
We have not yet commissioned an external penetration test of the backend or the desktop application at this stage. An internal threat model is maintained and is available to enterprise customers under NDA on request.
VirtuCath is a small-ISV desktop tool. We do not currently hold formal third-party attestations against any of the following frameworks:
Many of these frameworks are inapplicable to a desktop simulation tool that does not handle PHI, financial data, or government information; others are roadmap items we will pursue as enterprise demand justifies. If you require a specific attestation as part of procurement, contact us — we are happy to discuss timing and whether a contractual representation can stand in for a third-party audit.
SBOM. A CycloneDX 1.6 Software Bill of Materials
(virtucath.cdx.json) is shipped in the install directory alongside
EULA.txt and THIRD_PARTY_NOTICES.txt. The SBOM is
regenerated by the build script on each release from the actual Python
environment used to build the binary; it lists every direct and transitive
dependency with its version, license, and PURL identifier. This satisfies the
SBOM requirement of US Executive Order 14028 and most CISA "Secure Software
Development" attestation forms.
Code-signing. Authenticode signing with an OV certificate (§3) satisfies most "is this binary trustworthy?" controls in procurement questionnaires. The setup EXE is signed; the embedded uninstaller stub is currently unsigned for release 1.0.0-rc.1 (a planned 1.0.1 change — see CHANGELOG under Known limitations).
Penetration testing. We have not commissioned an external penetration test against the backend (Cloudflare Workers) or the desktop application at this stage; see §14 for the internal-threat-model status. Plans depend on enterprise customer demand.
Accessibility. The desktop UI has not been formally tested against WCAG 2.1 AA. The application is operable by keyboard for primary workflows; full screen-reader compatibility has not been verified. Federal Section 508 conformance is not asserted — if your procurement requires a VPAT, contact us.
Export control. VirtuCath is classified as EAR99 under US Export Administration Regulations: it is commercial off-the-shelf simulation software, contains no encryption beyond standard TLS, and is not specifically designed for any controlled end-use. No export license is required for shipment to most destinations. Customers in OFAC-embargoed jurisdictions are restricted by the EULA.
For IT-specific questions (deployment errors, fleet rollout planning, custom
installer requirements, audit/compliance documentation, SBOM requests,
AV-allowlisting attestations), email
support@virtucath.com with the subject line
beginning [IT]. For security vulnerabilities specifically, use the
channel in §12.
For end-user product questions (how to use the application, simulation results, licensing activation), the same email address works without a subject prefix.