Craton Shield

ISO 26262 ASIL-B Pre-Assessment

ISO 26262 ASIL-B Pre-Assessment

Craton Shield 0.7.0 | Date: 2026-03-13

Scope

ISO 26262 "Road vehicles — Functional safety" defines safety lifecycle processes for automotive E/E systems. Craton Shield targets ASIL-B classification as a QM+ cybersecurity component that monitors but does not directly control vehicle dynamics. The Ferrocene qualified Rust toolchain covers ISO 26262 alongside IEC 61508 and DO-178C DAL, enabling the same compiler qualification evidence to support multi-domain certification (industrial via IEC 61508 SIL 2, medical via IEC 62304, avionics via DO-178C DAL C).

Rationale for ASIL-B: Craton Shield is a monitoring/protection layer. It does not actuate brakes, steering, or throttle. Failure modes are limited to missed detections (fail-safe: vehicle continues operating) or false positives (fail-safe: conservative deny). ASIL-B covers components where malfunction can contribute to injury severity S2 (severe) with controllability C2 (normally controllable).

Part 6 — Software Development

Table 1: Methods for Software Development (ASIL-B Requirements)

TopicISO 26262 MethodCraton Shield StatusEvidence
6.4.2 Design principlesSemi-formal notationPARTIALRust type system as semi-formal spec; need architecture diagrams
6.4.3 Modular designHierarchical modulesPRESENT18 crates, 4-layer architecture, clear dependency DAG
6.4.4 Design verificationStatic analysisPRESENTclippy::pedantic + deny(unsafe_code) on all non-FFI crates
6.4.5 Code reviewFormal code reviewPARTIALPR template requires review; no records yet (no git repo)
6.4.6 Programming language subsetSafe subsetPRESENTRust safe subset; unsafe only at FFI, HAL, and storage layers (37 items in production code: 6 in vs-ffi, 29 in vs-hal-linux, 2 in vs-storage)
6.4.7 Naming conventionsEnforcedPRESENTcargo fmt, clippy::pedantic, Rust naming conventions
6.4.8 Type safetyStrongly typedPRESENTRust's type system + #[repr(C)] for FFI

Table 5: Methods for Software Unit Testing (ASIL-B)

MethodRequired LevelCraton Shield StatusEvidence
Requirements-based testingRecommendedPRESENT1,085+ unit tests covering positive + negative paths
Interface testingRecommendedPRESENTCryptoProvider trait tests across all consumers
Fault injection testingRecommendedPARTIALError-path tests present; no systematic fault injection
Resource usage testingRecommendedPRESENTWCET harness, criterion benchmarks, binary size tracking
Back-to-back testingN/ANo model-based design

Table 7: Methods for Software Integration Testing (ASIL-B)

MethodRequired LevelCraton Shield StatusEvidence
Requirements-based testingHighly RecommendedPRESENT335+ integration tests (full_stack, attack_scenarios, etc.)
Interface testingHighly RecommendedPRESENTCross-crate integration tests, FFI roundtrip tests
Fault injectionRecommendedPRESENTota_attack.rs: signature tampering, expired metadata, replay

Table 9: Methods for Verification of Software Safety Requirements (ASIL-B)

MethodRequired LevelCraton Shield Status
Walk-throughRecommendedGAP — need documented review sessions
InspectionRecommendedGAP — need formal inspection records
Semi-formal verificationRecommendedPARTIAL — Rust type system provides static guarantees
Static analysisHighly RecommendedPRESENT — clippy pedantic + deny(unsafe_code)
Unit testingHighly RecommendedPRESENT — 1,085+ unit tests
Integration testingHighly RecommendedPRESENT — 335+ integration tests

Software Safety Analysis

Failure Mode and Effects Analysis (FMEA)

ComponentFailure ModeEffectSeverityDetectionMitigation
vs-can-monitorMissed flood detectionAttacker CAN injection undetectedS2Configurable thresholds, multi-detectorIDS correlation in vs-ids-engine
vs-cryptoKey compromiseUnauthorized OTA updateS3Zeroization, HSM delegationHardware key storage (HSM)
vs-cryptoRNG failurePredictable keys/noncesS3RNG output validation (S1 fix)Hardware RNG via HSM
vs-ota-validatorSignature bypassMalicious firmware installedS3Threshold signatures, TUF delegationBoot attestation fallback
vs-netfwRule bypassUnauthorized network accessS2Default-deny policyDefense in depth (IDS + firewall)
vs-secure-bootBoot verification failureTampered firmware executesS3PCR measurements, policy enforcementHalt or rollback on failure
vs-integrityHash collisionTampered region undetectedS1SHA-256 (collision resistant)Periodic re-measurement
vs-event-loggerLog tamperingForensic evidence destroyedS1HMAC chain verificationDetect chain break

Dependent Failure Analysis (DFA)

Common CauseAffected ComponentsIndependence Measure
Crypto provider failurevs-crypto consumers (OTA, boot, integrity)Separate verification paths; boot can halt
Memory corruptionAll cratesRust ownership prevents; no heap; stack-only
Clock failureTimer-dependent cratesTimeout defaults to deny; watchdog monitors
CAN bus failurevs-can-monitor, vs-ids-engineBus-off detection; Ethernet path independent

Software Metrics

MetricValueASIL-B Target
Unit test count1,085+N/A (coverage more relevant)
Integration test count335+N/A
Fuzz targets4N/A
Unsafe blocks37 (production: 6 in vs-ffi, 29 in vs-hal-linux, 2 in vs-storage)Minimize (FFI, HAL, and storage layers only)
Clippy warnings0 (pedantic mode)0
Known vulnerabilities0 (cargo audit)0
Binary size (release)254 KBN/A
CAN frame latency~265 ns (x86_64)< 1 ms
Firewall worst case~166 ns (worst case, 128-rule last-match)< 10 ms

Gap Summary

ISO 26262 RequirementStatusGap DescriptionEffort
Software architecture descriptionPARTIALNeed formal diagrams (SysML/UML)1 week
Software safety requirements specCOMPLETETraced in docs/requirements-traceability-matrix.mdDone
Code review recordsGAPNeed documented review sessionsOngoing
Formal inspection recordsGAPNeed structured inspection evidence1 week
Fault injection test planPARTIALExtend beyond OTA attack scenarios2 weeks
Software qualification reportGAPRequired for tool qualification1 week
Dependent failure analysis (formal)GAPNeed formal DFA report1 week
Safety manualCOMPLETESee docs/safety-manual.mdDone

Total estimated effort: 6-8 weeks (1 engineer) for ASIL-B pre-assessment completion

Recommendation

Craton Shield's technical implementation is well-suited for ASIL-B. The Rust language provides compile-time guarantees that satisfy many ISO 26262 Part 6 requirements by construction (memory safety, type safety, data race freedom). Primary gaps are in process documentation, not technical controls.

Recommended sequence:

  1. Generate architecture diagrams (SysML or equivalent)
  2. Establish code review records (git history will provide once repo is initialized)
  3. Extend fault injection to all safety-relevant crates

Note: Automotive-specific crates (signal-ids, diag-gateway, v2x, autosar, hal-qnx, vsoc-telemetry) are available in the auto/ repository.