IP Library Granted Patent US 12,596,847
Granted Patent B2
US 12,596,847 · App. 18/634,739 · Granted Apr 7, 2026

Decentralized attestations for software artifacts

Inventor: Christian Martick (Brandenburg, DE)
Assignee: SAP SE
G06F21/64G06F21/6209
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,596,847
App. No.
18/634,739
Granted
Apr 7, 2026
Kind
B2
Abstract

Embodiments describe techniques for validating the integrity and compliance of software artifacts through the use of attestations. An attestation manager is capable of retrieving an attestation file from storage, validating the software artifact and the attestation chain within the attestation, and optionally generate new attestations to add to the attestation chain when the software artifact and the attestation chain have been validated. A public-key encryption scheme may be applied to validate attestations while a fingerprint comparison scheme may be applied to validate the software artifact.

Claims (38)

1 . A method, comprising:

retrieving an attestation file from storage, the attestation file including a first attestation that attests a software artifact satisfies a first property, the first attestation including a first cryptographic fingerprint associated with the software artifact and a first cryptographic signature;

validating the software artifact, wherein validating the software artifact includes:

applying a cryptographic algorithm on the software artifact to generate a second cryptographic fingerprint; and

comparing the first cryptographic fingerprint and the second cryptographic fingerprint;

validating contents of the first attestation, wherein validating the contents of the first attestation includes applying a first public-key to the contents of the first attestation other than the first cryptographic signature stored within the first attestation to generate a second cryptographic signature and comparing the first cryptographic signature and the second cryptographic signature; and

in response to successfully validating the contents of the first attestation and validating the software artifact, generating a second attestation that the software artifact satisfies a second property and adding the second attestation to the attestation file.

2 . The method as in claim 1 , wherein the software artifact is validated when the first cryptographic fingerprint and the second cryptographic fingerprint are the same.

3 . The method as in claim 1 , wherein the first property is one of a functional requirement, business requirement, and compliance requirement of the software artifact.

4 . The method as in claim 1 , wherein the first cryptographic signature was previously generated by applying a first private key that corresponds with the first public-key to the contents of the first attestation other than the first cryptographic signature.

5 . The method as in claim 1 , wherein the first attestation further includes the first public-key.

6 . The method as in claim 1 , wherein the first attestation further includes metadata describing the first attestation.

7 . The method as in claim 6 , wherein the metadata includes a name of a first attestor and a first attestation type.

8 . The method as in claim 1 , wherein the first attestation further includes metadata describing the software artifact.

9 . The method as in claim 1 , wherein generating the second attestation includes:

receiving metadata describing the second attestation;

generating a second cryptographic signature based on the metadata and the software artifact; and

writing the metadata, the second cryptographic signature, and the first cryptographic fingerprint in the second attestation.

10 . A system comprising:

one or more processors;

a non-transitory computer-readable medium storing a program executable by the one or more processors, the program comprising sets of instructions for:

retrieving an attestation file from storage, the attestation file including a first attestation that attests a software artifact satisfies a first property, the first attestation including a first cryptographic fingerprint associated with the software artifact and a first cryptographic signature;

validating the software artifact, wherein validating the software artifact includes:

applying a cryptographic algorithm on the software artifact to generate a second cryptographic fingerprint; and

comparing the first cryptographic fingerprint and the second cryptographic fingerprint;

validating contents of the first attestation, wherein validating the contents of the first attestation includes applying a first public-key to the contents of the first attestation other than the first cryptographic signature stored within the first attestation to generate a second cryptographic signature and comparing the first cryptographic signature and the second cryptographic signature; and

in response to successfully validating the contents of the first attestation and validating the software artifact, generating a second attestation that the software artifact satisfies a second property and adding the second attestation to the attestation file.

11 . The system of claim 10 , wherein the software artifact is validated when the first cryptographic fingerprint and the second cryptographic fingerprint are the same.

12 . The system of claim 10 , wherein the first cryptographic signature was previously generated by applying a first private key that corresponds with the first public-key to the contents of the first attestation other than the first cryptographic signature.

13 . The system of claim 10 , wherein the first attestation further includes the first public-key.

14 . A non-transitory computer-readable medium storing a program executable by one or more processors, the program comprising sets of instructions for:

retrieving an attestation file from storage, the attestation file including a first attestation that attests a software artifact satisfies a first property, the first attestation including a first cryptographic fingerprint associated with the software artifact and a first cryptographic signature;

validating the software artifact, wherein validating the software artifact includes:

applying a cryptographic algorithm on the software artifact to generate a second cryptographic fingerprint; and

comparing the first cryptographic fingerprint and the second cryptographic fingerprint;

validating contents of the first attestation, wherein validating the contents of the first attestation includes applying a first public-key to the contents of the first attestation other than the first cryptographic signature stored within the first attestation to generate a second cryptographic signature and comparing the first cryptographic signature and the second cryptographic signature; and

in response to successfully validating the contents of the first attestation and validating the software artifact, generating a second attestation that the software artifact satisfies a second property and adding the second attestation to the attestation file.

15 . The non-transitory computer-readable medium of claim 14 , wherein the software artifact is validated when the first cryptographic fingerprint and the second cryptographic fingerprint are the same.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2024
From: MARTICK, CHRISTIAN
To: SAP SE
Reel/Frame 067111/0093 →
Continuity (1)
Related Publication 20250322104A1 · Oct 16, 2025
References Cited (13)
US 11349670B1 · Miller · 2022 [cited by examiner]
US 11513782B1 · Landry · 2022 [cited by examiner]
US 20180173871A1 · Toth · 2018 [cited by examiner]
US 20220244932A1 · Lapiduz · 2022 [cited by examiner]
US 20230011621A1 · Jakobsson · 2023 [cited by examiner]
US 20230045734A1 · Cui · 2023 [cited by examiner]
US 20230079773A1 · Fritz · 2023 [cited by examiner]
US 20230088197A1 · Cline · 2023 [cited by examiner]
US 20230274034A1 · Melara · 2023 [cited by examiner]
US 20230334147A1 · Nunez Mencias · 2023 [cited by examiner]
US 20240104192A1 · Kalle · 2024 [cited by examiner]
US 20240329953A1 · Cliffe · 2024 [cited by examiner]
US 20250139264A1 · Ni · 2025 [cited by examiner]