CPC G06F 21/64 (2013.01) [G06F 8/41 (2013.01); G06F 8/71 (2013.01); G06F 21/57 (2013.01)] | 20 Claims |
1. A computing system equipped for software provenance validation, the computing system comprising:
a digital memory; and
a processor in operable communication with the digital memory, the processor configured to perform software provenance validation steps which include (a) acquiring a provenance manifest and getting a candidate binary, (b) obtaining at least one candidate item, (c) attempting to build a validation binary based on the provenance manifest and the at least one candidate item, (d) when the attempting yields a success in building the validation binary, comparing the validation binary to the candidate binary, and producing a provenance attestation according to a result of comparing the binaries, (e) when the attempting yields a failure to build the validation binary, producing the provenance attestation according the failure, wherein the attempting yields the failure at least partially in response to finding an indication of at least one of the following: use of a non-deterministic compiler, use of a local storage to store a program part, storage of a program part outside of any publicly accessible location, or storage of a program part outside of any internet-accessible repository.
|