Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions app/api/routes/validate.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,11 +68,15 @@ async def validate_media(
app_id=capture_trust.get("app_id"),
issued_at=capture_trust["issued_at"],
key_id=capture_trust.get("key_id"),
device_public_key_fingerprint=capture_trust[
"device_public_key_fingerprint"
],
),
media_integrity=MediaIntegrityInfo(
content_hash_valid=media_integrity["content_hash_valid"],
signature_valid=media_integrity["signature_valid"],
capture_id_match=media_integrity["capture_id_match"],
fingerprint_match=media_integrity["fingerprint_match"],
content_hash=media_integrity["content_hash"],
capture_id=media_integrity["capture_id"],
captured_at=media_integrity["captured_at"],
Expand Down
6 changes: 6 additions & 0 deletions app/schemas/validate.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ class CaptureTrustInfo(APIResponse):
)
issued_at: int = Field(description="Unix timestamp when token was issued")
key_id: str | None = Field(default=None, description="Key ID used for signing")
device_public_key_fingerprint: str = Field(
description="SHA-256 fingerprint of the device's public key from the JWT"
)


class MediaIntegrityInfo(APIResponse):
Expand All @@ -33,6 +36,9 @@ class MediaIntegrityInfo(APIResponse):
capture_id_match: bool = Field(
description="Whether capture ID matches between JWT and media integrity"
)
fingerprint_match: bool = Field(
description="Whether device public key fingerprint matches between JWT and media integrity"
)
content_hash: str = Field(description="SHA256 hash of the media content")
capture_id: str = Field(description="Capture ID from media integrity")
captured_at: str = Field(description="ISO8601 timestamp of capture")
Expand Down