QCOS NavCore™ Quantum GPS Security API Reference
Quantum-Enhanced GPS Security APIs
Copyright © 2024-2026 SoftQuantus Innovative OÜ. All Rights Reserved.
Overview
This document describes the Quantum GPS Security APIs that leverage real quantum computing for enhanced GPS security. These APIs provide:
- Quantum Random Number Generation (QRNG) - True quantum randomness for cryptographic nonces
- Post-Quantum Cryptography (PQC) - NIST-standardized quantum-resistant signatures
- QML Spoofing Detection - Quantum machine learning for GPS attack detection
- Quantum Kalman Filter - Enhanced state estimation for navigation
- Quantum Sensor Simulation - Atom interferometry sensor modeling
Base URL: https://api.qcos.softquantus.com
API Version: v1
Authentication: Bearer token required
Quick Start
# Generate quantum random nonce for GPS
curl -X GET "https://api.qcos.softquantus.com/api/v1/qrng/nonce?size=32" \
-H "Authorization: Bearer YOUR_API_KEY"
# Detect GPS spoofing
curl -X POST "https://api.qcos.softquantus.com/api/v1/spoofing/detect" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"signals": [
{"prn": 1, "cn0": 45.0, "doppler": 1500.0, "pseudorange": 22000000.0}
]
}'
Algorithm Catalog
GET /api/v1/algorithms
List all available quantum GPS algorithms.
Response:
{
"qrng": {
"name": "Quantum Random Number Generation",
"sources": ["quantum", "hybrid", "classical"],
"capabilities": ["random_bytes", "uuid", "nonce"],
"description": "True quantum randomness for cryptographic applications"
},
"pqc": {
"name": "Post-Quantum Cryptography",
"algorithms": {
"dilithium2": {"security_level": 2, "type": "signature"},
"dilithium3": {"security_level": 3, "type": "signature"},
"dilithium5": {"security_level": 5, "type": "signature"},
"falcon512": {"security_level": 1, "type": "signature"},
"falcon1024": {"security_level": 5, "type": "signature"},
"sphincs_sha256_128f": {"security_level": 1, "type": "signature"}
},
"description": "NIST-standardized post-quantum signatures"
},
"spoofing_detection": {
"name": "QML Spoofing Detection",
"attack_types": ["meaconing", "replay", "synthetic", "multipath"],
"description": "Quantum machine learning for GPS spoofing detection"
},
"kalman_filter": {
"name": "Quantum Kalman Filter",
"modes": ["classical", "hybrid_covariance", "full_quantum"],
"max_state_dim": 15,
"description": "Quantum-enhanced state estimation for navigation"
},
"sensor_simulation": {
"name": "Quantum Sensor Simulation",
"sensors": ["gravimeter", "magnetometer", "accelerometer", "gyroscope"],
"description": "Quantum atom interferometry sensor simulation"
}
}
Quantum Random Number Generation (QRNG)
POST /api/v1/qrng/bytes
Generate quantum random bytes for cryptographic applications.
Request Body:
{
"n_bytes": 32,
"source": "hybrid"
}
| Parameter | Type | Default | Description |
|---|---|---|---|
n_bytes | integer | 32 | Number of bytes to generate (1-1024) |
source | string | "auto" | Entropy source: quantum, hybrid, classical |
Response:
{
"data": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6...",
"n_bytes": 32,
"source": "hybrid",
"entropy_bits": 256.0,
"timestamp": "2026-02-06T17:30:00.000Z"
}
Use Cases:
- Cryptographic key generation
- Session tokens
- Initialization vectors
- Secure nonces
GET /api/v1/qrng/uuid
Generate a quantum random UUID version 4.
Response:
{
"uuid": "3fc3de41-85a4-4fa9-af93-f50f6a01733c",
"version": 4,
"source": "hybrid",
"timestamp": "2026-02-06T17:30:00.000Z"
}
GET /api/v1/qrng/nonce
Generate a quantum random nonce for GPS anti-spoofing.
Query Parameters:
| Parameter | Type | Default | Description |
|---|---|---|---|
size | integer | 32 | Nonce size in bytes (8-128) |
Response:
{
"nonce": "c4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9...",
"size_bytes": 32,
"purpose": "gps_anti_spoofing",
"source": "hybrid",
"timestamp": "2026-02-06T17:30:00.000Z"
}
Use Cases:
- GPS signal authentication
- Anti-replay protection
- Challenge-response protocols
- Time synchronization verification
Post-Quantum Cryptography (PQC)
POST /api/v1/pqc/keypair
Generate a post-quantum cryptographic keypair using NIST-standardized algorithms.
Request Body:
{
"algorithm": "dilithium3"
}
Supported Algorithms:
| Algorithm | Security Level | Public Key | Private Key | Signature |
|---|---|---|---|---|
dilithium2 | 2 (128-bit) | 1,312 B | 2,528 B | 2,420 B |
dilithium3 | 3 (192-bit) | 1,952 B | 4,000 B | 3,293 B |
dilithium5 | 5 (256-bit) | 2,592 B | 4,864 B | 4,595 B |
falcon512 | 1 (128-bit) | 897 B | 1,281 B | ~666 B |
falcon1024 | 5 (256-bit) | 1,793 B | 2,305 B | ~1,280 B |
sphincs_sha256_128f | 1 (128-bit) | 32 B | 64 B | 17,088 B |
Response:
{
"algorithm": "dilithium3",
"security_level": 3,
"public_key": "base64-encoded-public-key...",
"public_key_size": 1952,
"private_key_size": 4000,
"key_id": "key_abc123def456",
"created_at": "2026-02-06T17:30:00.000Z"
}
⚠️ Security Note: The private key is returned only in the response. Store it securely.
POST /api/v1/pqc/sign
Sign a message using post-quantum cryptography.
Request Body:
{
"message": "SGVsbG8gV29ybGQ=",
"private_key": "base64-encoded-private-key...",
"algorithm": "dilithium3"
}
Response:
{
"signature": "base64-encoded-signature...",
"signature_size": 3293,
"algorithm": "dilithium3",
"timestamp": "2026-02-06T17:30:00.000Z"
}
POST /api/v1/pqc/verify
Verify a post-quantum signature.
Request Body:
{
"message": "SGVsbG8gV29ybGQ=",
"signature": "base64-encoded-signature...",
"public_key": "base64-encoded-public-key...",
"algorithm": "dilithium3"
}
Response:
{
"valid": true,
"algorithm": "dilithium3",
"timestamp": "2026-02-06T17:30:00.000Z"
}
GPS Spoofing Detection
POST /api/v1/spoofing/detect
Analyze GPS signals for spoofing attacks using quantum machine learning.
Request Body:
{
"signals": [
{
"prn": 1,
"cn0": 45.0,
"doppler": 1500.0,
"pseudorange": 22000000.0,
"carrier_phase": 123456.789
},
{
"prn": 5,
"cn0": 42.0,
"doppler": -800.0,
"pseudorange": 21500000.0
},
{
"prn": 17,
"cn0": 38.0,
"doppler": 200.0,
"pseudorange": 23000000.0
}
],
"receiver_position": [51.5074, -0.1278, 100.0]
}
| Signal Field | Type | Required | Description |
|---|---|---|---|
prn | integer | Yes | Satellite PRN number (1-32) |
cn0 | float | Yes | Carrier-to-noise ratio (dB-Hz) |
doppler | float | Yes | Doppler shift (Hz) |
pseudorange | float | Yes | Pseudorange measurement (meters) |
carrier_phase | float | No | Carrier phase (cycles) |
Response:
{
"is_spoofed": false,
"confidence": 0.95,
"threat_level": "none",
"detected_attacks": [],
"recommendations": [],
"analysis_time_ms": 15.2,
"model_version": "qml_v1.0",
"timestamp": "2026-02-06T17:30:00.000Z"
}
Threat Levels:
| Level | Score Range | Description | Recommended Action |
|---|---|---|---|
none | 0.0 - 0.1 | No spoofing indicators | Continue normal operation |
low | 0.1 - 0.3 | Minor anomalies | Increase monitoring |
medium | 0.3 - 0.6 | Suspicious patterns | Enable fallback sensors |
high | 0.6 - 0.8 | Likely attack | Switch to backup navigation |
critical | 0.8 - 1.0 | Confirmed attack | Immediate position hold |
Detectable Attack Types:
- Meaconing - Rebroadcast of authentic GPS signals
- Replay - Delayed replay of recorded signals
- Synthetic - Artificially generated GPS signals
- Multipath - Exploited signal reflections
Quantum Kalman Filter
POST /api/v1/kalman/navigate
Process navigation measurements with quantum-enhanced Kalman filtering.
Request Body:
{
"measurements": [
{"value": 100.0, "variance": 1.0, "measurement_type": "position"},
{"value": 5.0, "variance": 0.1, "measurement_type": "velocity"}
],
"state_dim": 6,
"use_quantum": true
}
| Parameter | Type | Default | Description |
|---|---|---|---|
measurements | array | Required | List of measurement objects |
state_dim | integer | 6 | State vector dimension (1-15) |
use_quantum | boolean | true | Enable quantum processing |
Response:
{
"state": {
"x": 100.5,
"y": 200.3,
"z": 50.1,
"vx": 5.0,
"vy": 3.0,
"vz": 0.1
},
"covariance_trace": 2.5,
"innovation": 0.1,
"quantum_advantage": 1.2,
"processing_time_ms": 5.3,
"timestamp": "2026-02-06T17:30:00.000Z"
}
Quantum Advantage:
The quantum_advantage field indicates the speedup factor compared to classical processing:
1.0= Classical performance1.2= 20% quantum improvement2.0+= Significant quantum advantage
Quantum Sensor Simulation
POST /api/v1/sensor/simulate
Simulate quantum sensor measurements for testing and validation.
Request Body:
{
"sensor_type": "gravimeter",
"duration_ms": 100.0,
"n_atoms": 100000
}
Supported Sensors:
| Type | Physics | Precision | Applications |
|---|---|---|---|
gravimeter | Atom interferometry | 10⁻¹⁰ g | Gravity mapping, underground detection |
magnetometer | Atomic spin precession | 10⁻¹⁵ T | Magnetic navigation, anomaly detection |
accelerometer | Cold atom free-fall | 10⁻¹² m/s² | Inertial navigation, seismic sensing |
gyroscope | Sagnac effect | 10⁻¹¹ rad/s | Rotation sensing, heading hold |
Response:
{
"sensor_type": "gravimeter",
"measurement": 9.80665,
"uncertainty": 1e-10,
"snr": 1000000,
"n_samples": 1000,
"quantum_enhancement": 100.0,
"timestamp": "2026-02-06T17:30:00.000Z"
}
Azure Quantum Integration
NavCore integrates with Microsoft Azure Quantum for real quantum hardware execution.
Supported Providers
| Provider | Hardware | Max Qubits | Best For |
|---|---|---|---|
| IonQ | Trapped ions | 32 | High fidelity, all-to-all connectivity |
| Quantinuum | H-Series trapped ions | 20 | Highest fidelity gates |
| Rigetti | Superconducting | 84 | Fast execution, large circuits |
| PASQAL | Neutral atoms | 100+ | Optimization problems |
Configuration
export AZURE_QUANTUM_WORKSPACE_NAME=your-workspace
export AZURE_QUANTUM_RESOURCE_GROUP=your-resource-group
export AZURE_QUANTUM_SUBSCRIPTION_ID=your-subscription-id
export AZURE_QUANTUM_LOCATION=northeurope
Verified Results
Our Azure Quantum integration has been tested and verified:
✅ Workspace: softquantusQuantum (North Europe)
✅ Available Targets: 9 quantum processors
✅ Job Execution: SUCCEEDED
✅ Entropy Quality: 100% (4.0 bits / 4.0 bits max)
Error Codes
| Code | Description |
|---|---|
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Invalid or missing API key |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found - Endpoint or resource not found |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error - Server error |
| 503 | Service Unavailable - Quantum backend offline |
Error Response Format:
{
"detail": "Error description",
"error_code": "QRNG_ENTROPY_LOW",
"timestamp": "2026-02-06T17:30:00.000Z"
}
Rate Limits
| Endpoint Type | Limit | Window |
|---|---|---|
| QRNG endpoints | 100 req | per minute |
| PQC endpoints | 50 req | per minute |
| Spoofing detection | 20 req | per minute |
| Kalman filter | 100 req | per minute |
| Sensor simulation | 50 req | per minute |
SDKs and Libraries
Python SDK
from qcos import NavCore
# Initialize
navcore = NavCore(api_key="your-api-key")
# Generate quantum nonce
nonce = navcore.qrng.nonce(size=32)
print(f"Nonce: {nonce.hex()}")
# Detect spoofing
result = navcore.spoofing.detect(signals=[
{"prn": 1, "cn0": 45.0, "doppler": 1500.0, "pseudorange": 22e6}
])
print(f"Spoofed: {result.is_spoofed}, Confidence: {result.confidence}")
# PQC signing
keypair = navcore.pqc.generate_keypair("dilithium3")
signature = navcore.pqc.sign(message, keypair.private_key)
Changelog
v1.0.0 (2026-02-06)
- Initial release of Quantum GPS Security APIs
- QRNG with quantum/hybrid/classical sources
- PQC with CRYSTALS-Dilithium, Falcon, SPHINCS+
- QML-based spoofing detection
- Quantum Kalman filter navigation
- Quantum sensor simulation
- Azure Quantum integration
Copyright © 2024-2026 SoftQuantus Innovative OÜ. All Rights Reserved.
QCOS™ and NavCore™ are trademarks of SoftQuantus Innovative OÜ.