Enabling validation of content
The method enhances content validation by using cryptographic keys generated from hardware-specific data, addressing vulnerabilities in existing methods and significantly increasing trust in content authenticity.
Patent Information
- Application Number
- PCT/EP2023/076630
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-27
- Publication Date
- 2025-04-03
AI Technical Summary
Existing content validation methods rely solely on secret keys, making them vulnerable to adversaries who obtain the key, and internal adversaries can also generate fake content.
A method that involves obtaining content parameters, deriving values from a content capturing device, generating a cryptographic key based on hardware-specific data, and storing this key for verification purposes, ensuring that the content can be validated without direct communication with the content capturing device.
This solution significantly increases trust in content from content capturing devices by making it extremely difficult for adversaries to generate false content that would pass verification, as the cryptographic key is securely generated and stored.
Smart Images

Figure EP2023076630_03042025_PF_FP_ABST
Abstract
Description
ENABLING VALIDATION OF CONTENTTECHNICAL FIELD[oooi] The present disclosure relates to the field of content validation, and in particular to enabling validation of content captured by a content capturing device.BACKGROUND
[0002] The amount of content data in the form of images, audio recordings and video is constantly increasing. With the help of social media, connecting billions of people, it only takes minutes or seconds for new content to reach all corners of the world. However, using generative Al (artificial intelligence) such content is also becoming increasingly easy to manipulate, making it a hot target for malicious actors who want to spread false information. It is very difficult for a person to know whether an image, audio recording or video is authentic, manipulated or even completely fictious - such as those generated by deepfake Al generators or other types of generative Al services.
[0003] US 11,025,429 B2 discloses a system for cryptographically signing contextual content from a set of sensors. Contextual content is defined as data that is organized in such a way that it can be used to understand or assess some physical attributes of a given situation, place, area or object within some timeframe. The data earns its trustworthiness from being signed by a trusted contextual content device.
[0004] However, the solutions presented so far rely merely on a secret key. Hence, if an adversary would get hold of the secret key, fake content can easily be generated. Moreover, an internal adversary with access to the secret key would be able to generate fake content.SUMMARY
[0005] One object is to increase trust in content from a content capturing device.
[0006] In some aspects, the techniques described herein relate to a method for enabling validation of content captured by a content capturing device, the method being performed by a verification device, the method including: obtaining a set of contentparameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device; obtaining content-derived values, from the content capturing device, for a plurality of values of the content parameters; storing, in association with an identifier of the content capturing device, for each of the plurality of values of the content parameters, the content-derived values respectively associated with the value of the content parameter; obtaining a cryptographic key based on data specific to the content capturing device and key-generation data; providing the keygeneration data to the content capturing device for storage such that it is able to generate the cryptographic key; and storing the cryptographic key, such that it is accessible for the verification device without being in communication with the content capturing device, in association with an identifier of the content capturing device.
[0007] In some aspects, the techniques described herein relate to a method, further including: determining a definition of a strict subset of content parameters from a set of possible content parameters; storing the definition of the strict subset in the content capturing device and in storage available to the verification device.
[0008] In some aspects, the techniques described herein relate to a method, further including: defining a validation function, the validation function including using a oneway function based on the strict subset of content parameters and a piece of content; and wherein the storing the definition includes storing the validation function on the content capturing device and in storage available to the verification device.
[0009] In some aspects, the techniques described herein relate to a method, wherein the obtaining the cryptographic key includes: generating a seed; obtaining a value from a hardware specific function for the content capturing device; and determining the cryptographic key from a key derivation function, based on the seed and the hardware specific value; wherein the key-generation data is based on the seed, enabling the content capturing device to regenerate the seed.
[0010] In some aspects, the techniques described herein relate to a method, wherein the obtaining a value from a hardware specific function includes obtaining a self-test value from a self-test of hardware of the content capturing device.[oon] In some aspects, the techniques described herein relate to a method, wherein the obtaining a value from a hardware specific function includes obtaining a value from a physically unclonable function, PUF, of the content capturing device.
[0012] In some aspects, the techniques described herein relate to a method, wherein the obtaining a value includes obtaining a value from a non-volatile memory of the content capturing device.
[0013] In some aspects, the techniques described herein relate to a method, wherein the obtaining the content-derived values includes measuring side-channel values, wherein the side-channel values are the content-derived values.
[0014] In some aspects, the techniques described herein relate to a method 1 to 7, wherein the obtaining the content-derived value includes, for each of the plurality of values of the content parameters, obtaining a content-derived value as a result from a function specific to the content capturing device, wherein an input to the function is a respective at least one of the plurality of the content parameters.
[0015] In some aspects, the techniques described herein relate to a method, wherein the function specific to the content capturing device is a physically unclonable function, PUF or a message authentication code, MAC, function with a device-specific key.
[0016] In some aspects, the techniques described herein relate to a method, further including: receiving content to be verified, cryptographic data, content-derived values and an identifier of the content capturing device; reobtaining, from storage, the set of content parameters for the content capturing device; deriving, based on the content to be verified, a value of each content parameter, in the set of content parameters, for the content to be verified; obtaining a stored content-derived value for each value of a content parameter the set of content parameters; obtaining the cryptographic key for the content capturing device key from storage; verifying the cryptographic data using the cryptographic key; and verifying each one of the received content-derived values against respective stored content-derived values.
[0017] In some aspects, the techniques described herein relate to a verification device for enabling validation of content captured by a content capturing device, theverification device including: processing circuitry; and memory circuitry storing instructions that, when executed by the processing circuitry, cause the verification device to: obtain a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device; obtain content- derived values, from the content capturing device, for a plurality of values of the content parameters; store, in association with an identifier of the content capturing device, for each of the plurality of values of the content parameters, the content-derived values respectively associated with the value of the content parameter; obtain a cryptographic key based on data specific to the content capturing device and key-generation data; provide the key-generation data to the content capturing device for storage such that it is able to generate the cryptographic key; and store the cryptographic key, such that it is accessible for the verification device without being in communication with the content capturing device, in association with an identifier of the content capturing device.
[0018] In some aspects, the techniques described herein relate to a verification device, further including instructions that, when executed by the processing circuitry, cause the validation device to: determine a definition of a strict subset of content parameters from a set of possible content parameters; store the definition of the strict subset in the content capturing device and in storage available to the verification device.
[0019] In some aspects, the techniques described herein relate to a verification device, further including instructions that, when executed by the processing circuitry, cause the validation device to: define a validation function, the validation function including using a one-way function based on the strict subset of content parameters and a piece of content; and wherein the instructions to store the definition include instructions that, when executed by the processing circuitry, cause the validation device to store the validation function on the content capturing device and in storage available to the verification device.
[0020] In some aspects, the techniques described herein relate to a verification device, wherein the instructions to obtain the cryptographic key include instructions that, when executed by the processing circuitry, cause the validation device to: generate a seed; obtain a value from a hardware specific function for the content capturing device; and determine the cryptographic key from a key derivation function, based onthe seed and the hardware specific value; wherein the key-generation data is based on the seed, enabling the content capturing device to regenerate the seed.
[0021] In some aspects, the techniques described herein relate to a verification device, wherein the instructions to obtain a value from a hardware specific function include instructions that, when executed by the processing circuitry, cause the validation device to obtain a self-test value from a self-test of hardware of the content capturing device.
[0022] In some aspects, the techniques described herein relate to a verification device, wherein the instructions to obtain a value from a hardware specific function include instructions that, when executed by the processing circuitry, cause the validation device to obtain a value from a physically unclonable function, PUF, of the content capturing device.
[0023] In some aspects, the techniques described herein relate to a verification device, wherein the instructions to obtain a value include instructions that, when executed by the processing circuitry, cause the validation device to obtain a value from a non-volatile memory of the content capturing device.
[0024] In some aspects, the techniques described herein relate to a verification device 12 to 18, wherein the instructions to obtain the content-derived values include instructions that, when executed by the processing circuitry, cause the validation device to measure side-channel values, wherein the side-channel values are the content- derived values.
[0025] In some aspects, the techniques described herein relate to a verification device 12 to 18, wherein the instructions to obtain the content-derived value include instructions that, when executed by the processing circuitry, cause the validation device to, for each of the plurality of values of the content parameters, obtain a content-derived value as a result from a function specific to the content capturing device, wherein an input to the function is a respective at least one of the plurality of the content parameters.
[0026] In some aspects, the techniques described herein relate to a verification device, wherein the function specific to the content capturing device is a physically unclonable function, PUF or a message authentication code, MAC, function with a device-specific key.
[0027] In some aspects, the techniques described herein relate to a verification device 12 to 21, further including instructions that, when executed by the processing circuitry, cause the validation device to: receive content to be verified, cryptographic data, content-derived values and an identifier of the content capturing device; reobtain, from storage, the set of content parameters for the content capturing device; derive, based on the content to be verified, a value of each content parameter, in the set of content parameters, for the content to be verified; obtain a stored content-derived value for each value of a content parameter the set of content parameters; obtain the cryptographic key for the content capturing device key from storage; verify the cryptographic data using the cryptographic key; and verify each one of the received content-derived values against respective stored content-derived values;
[0028] In some aspects, the techniques described herein relate to a computer program for enabling validation of content captured by a content capturing device, the computer program including computer program code which, when executed on a verification device causes the verification device to: obtain a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device; obtain content-derived values, from the content capturing device, for a plurality of values of the content parameters; store, in association with an identifier of the content capturing device, for each of the plurality of values of the content parameters, the content-derived values respectively associated with the value of the content parameter; generate a cryptographic key based on data specific to the content capturing device and key-generation data; provide the key-generation data to the content capturing device for storage such that it is able to generate the cryptographic key; and store the cryptographic key, such that it is accessible for the verification device without being in communication with the content capturing device, in association with an identifier of the content capturing device.
[0029] In some aspects, the techniques described herein relate to a computer program product including a computer program and a computer readable means including non-transitory memory in which the computer program is stored.
[0030] In some aspects, the techniques described herein relate to a method for enabling validation of content captured by a content capturing device, the method being performed by the content capturing device, the method including: capturing content; obtaining a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device; obtaining respective content-derived values, from the content capturing device, for a plurality of values of the content parameters; generating a cryptographic key based on hardware specific data of the content capturing device and key-generation data stored in the content capturing device; deriving auxiliary data based on the captured content; cryptographically protecting the auxiliary data based on the cryptographic key, resulting in cryptographic data; and transmitting the content, the cryptographic data, and the content-derived values to a verification device.
[0031] In some aspects, the techniques described herein relate to a method, wherein the generating a cryptographic key includes: obtaining a seed based on the keygeneration data; obtaining a hardware specific value from a hardware specific function for the content capturing device; determining the cryptographic key from a key derivation function, based on the seed and the self-test value.
[0032] In some aspects, the techniques described herein relate to a method, wherein the cryptographically protecting the auxiliary data includes encrypting the auxiliary data.
[0033] In some aspects, the techniques described herein relate to a method 25 to 27, wherein the cryptographically protecting the auxiliary data includes generating a cryptographic signature of the auxiliary data.
[0034] In some aspects, the techniques described herein relate to a method 25 to 28, wherein the obtaining the content-derived values includes measuring a side-channel values, wherein the side-channel values are the content-derived values.
[0035] In some aspects, the techniques described herein relate to a method 25 to 28, wherein the obtaining the content-derived value includes, for each of the plurality of values of the content parameters, obtaining a content-derived value as a result from a function specific to the content capturing device, wherein an input to the function is a respective one of the plurality of the content parameters.
[0036] In some aspects, the techniques described herein relate to a method, wherein the function specific to the content capturing device is a physically unclonable function, PUF.
[0037] In some aspects, the techniques described herein relate to a content capturing device for enabling validation of content captured by the content capturing device, the content capturing device including: processing circuitry; and memory circuitry storing instructions that, when executed by the processing circuitry, cause the content capturing device to: capture content; obtain a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device; obtain respective content-derived values, from the content capturing device, for a plurality of values of the content parameters; generate a cryptographic key based on hardware specific data of the content capturing device and key-generation data stored in the content capturing device; derive auxiliary data based on the captured content; cryptographically protect the auxiliary data based on the cryptographic key, resulting in cryptographic data; and transmit the content, the cryptographic data, and the content-derived values to a verification device.
[0038] In some aspects, the techniques described herein relate to a content capturing device, wherein the instructions to generate a cryptographic key include instructions that, when executed by the processing circuitry, cause the content capturing device to: obtain a seed based on the key-generation data; obtain a hardware specific value from a hardware specific function for the content capturing device; determine the cryptographic key from a key derivation function, based on the seed and the self-test value.
[0039] In some aspects, the techniques described herein relate to a content capturing device, wherein the instructions to cryptographically protect the auxiliary datainclude instructions that, when executed by the processing circuitry, cause the content capturing device to encrypt the auxiliary data.
[0040] In some aspects, the techniques described herein relate to a content capturing device 32 to 34, wherein the instructions to cryptographically protect the auxiliary data include instructions that, when executed by the processing circuitry, cause the content capturing device to generate a cryptographic signature of the auxiliary data.
[0041] In some aspects, the techniques described herein relate to a content capturing device 32 to 35, wherein the instructions to obtain the content-derived values include instructions that, when executed by the processing circuitry, cause the content capturing device to measure a side-channel values, wherein the side-channel values are the content-derived values.
[0042] In some aspects, the techniques described herein relate to a content capturing device 32 to 35, wherein the instructions to obtain the content-derived value include instructions that, when executed by the processing circuitry, cause the content capturing device to, for each of the plurality of values of the content parameters, obtain a content-derived value as a result from a function specific to the content capturing device, wherein an input to the function is a respective one of the plurality of the content parameters.
[0043] In some aspects, the techniques described herein relate to a content capturing device, wherein the function specific to the content capturing device is a physically unclonable function, PUF.
[0044] In some aspects, the techniques described herein relate to a computer program for enabling validation of content captured by the content capturing device, the computer program including computer program code which, when executed on a content capturing device causes the content capturing device to: capture content; obtain a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device; obtain respective content- derived values, from the content capturing device, for a plurality of values of the content parameters; generate a cryptographic key based on hardware specific data of the contentcapturing device and key-generation data stored in the content capturing device; derive auxiliary data based on the captured content; cryptographically protect the auxiliary data based on the cryptographic key, resulting in cryptographic data; and transmit the content, the cryptographic data, and the content-derived values to a verification device.
[0045] In some aspects, the techniques described herein relate to a computer program product including a computer program and a computer readable means including non-transitory memory in which the computer program is stored.
[0046] Generally, all terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise herein. All references to "a / an / the element, apparatus, component, means, step, etc." are to be interpreted openly as referring to at least one instance of the element, apparatus, component, means, step, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated.BRIEF DESCRIPTION OF THE DRAWINGS
[0047] Aspects and embodiments are now described, by way of example, with reference to the accompanying drawings, in which:
[0048] Figs 1A-B are schematic diagrams illustrating an environment in which embodiments presented herein can be applied;
[0049] Figs 2A-D are swimlane diagrams and associated flowcharts illustrating embodiments of methods for enabling validation of content captured by a content capturing device;
[0050] Fig 3 is a schematic diagram illustrating components of the verification device and the content capturing device of Figs 1A-B;
[0051] Fig 4 is a schematic diagram showing functional modules of the verification device of Figs 1A-B according to one embodiment;
[0052] Fig 5 is a schematic diagram showing functional modules of the content capturing device of Figs 1A-B according to one embodiment; and
[0053] Fig 6 shows one example of a computer program product comprising computer readable means.DETAILED DESCRIPTION
[0054] The aspects of the present disclosure will now be described more fully hereinafter with reference to the accompanying drawings, in which certain embodiments of the invention are shown. These aspects may, however, be embodied in many different forms and should not be construed as limiting; rather, these embodiments are provided by way of example so that this disclosure will be thorough and complete, and to fully convey the scope of all aspects of invention to those skilled in the art. Like numbers refer to like elements throughout the description.
[0055] On an overview level, according to embodiments presented herein, the ability to verify the authenticity of media content is greatly improved. This based on verification of content-derived data, as well as verification of data that is specific to the content capturing device. In this way, it is extremely difficult for an adversary to generate false content that would pass such verification.
[0056] Figs 1A-B are schematic diagrams illustrating an environment in which embodiments presented herein can be applied. First, Fig 1A will be described.
[0057] A content capturing device 2 is capable of capturing content using one or more sensor devices 3a, 3b. For instance a sensor device 3a, 3b can be implemented as a video camera, still camera, microphone, environment sensor (such as temperature, location, air pressure, humidity, time or even location data), etc. The content capturing device 2 can be implemented as a computing device comprising one or more sensors. The content capturing device can e.g. be implemented as a smartphone, a tablet computer, a wearable device, a laptop computer, a stationary computer, etc.Alternatively, the content capturing device 2 can be implemented as a dedicated sensor device, such as a (video and / or still) camera or other imaging device, audio recorder,environment sensor (for e.g. temperature), location determiner (e.g. GPS (global positioning service) receiver), etc.
[0058] A verification device 1 is used in embodiments presented herein for verifying content that is captured by the content capturing device 2. The verification device lean be implemented in a server or other suitable computer device that is capable of connecting to the content capturing device 2. The content capturing device 2 can be provided by the manufacturer of the content capturing device 2, or by a third party.
[0059] According to embodiments presented herein, prior to being able to verify content by the content capturing device 2, the content capturing device 2 is registered with the verification device 1. For this registration to occur, the manufacturer provides the content capturing device 2 to the site of the verification device 1. The verification device 1 then communicates directly with the content capturing device 2. For instance, the verification device 1 can have direct and local access to the content capturing device 2 for obtaining data from and storing data to the content capturing device 2, as illustrated in Fig 1A.
[0060] Looking now to Fig 1B, it is illustrated a topology for when verification of content is performed. A requesting device 4 is a device that has received content from the content capturing device 2. The requesting device 4 wishes to verify the validity of such content. This verification is performed by the verification device 1, which the requesting device 4 communicates with.
[0061] All communication between the entities can be performed using any suitable protocol and medium. For instance, communication between entities can occur using internet protocol (IP) communication using wired communication such as Ethernet, and / or wireless communication, e.g. Wi-Fi and / or a cellular network, complying with any one or a combination of sixth generation (6G) mobile networks, next generation mobile networks (fifth generation, 5G), LTE (Long Term Evolution), UMTS (Universal Mobile Telecommunications System) utilising W-CDMA (Wideband Code Division Multiplex), or any other current or future wireless network, as long as the principles described hereinafter are applicable.
[0062] Figs 2A-D are swimlane diagrams and associated flowcharts illustrating embodiments of methods for enabling validation of content captured by a content capturing device. The swimlane diagrams can be considered to comprise a flow chart for methods in the content capturing device 2 in the middle swimlane and a flow chart for methods in the verification device 1 in the right swimlane. Communication between the requesting device 4, the content capturing device 2 and the verification device 1 is also shown. First, embodiments illustrated by Fig 2A will be described.
[0063] In an obtain content parameters step 40, the verification device 1 obtains a set of content parameters, wherein each content parameter defines a parameter for which its value depends on content that is capturable by the content capturing device 2.
[0064] The value of the content parameters not only varies based on the content, but also varies across content capturing devices 2. A device manufacturer may design a chip to make the measurement of multiple such content parameters available, and / or such content parameters can be based on implicitly available measurements.
[0065] When the manufacturer of a content capturing device 2 wants to register the device to enable verified and authenticated content, the manufacturer specifies the set of content parameters for the content capturing device 2, and sends the content capturing device 2 to the verification device 1. The content parameters are such that they will produce different response values depending on the sensor output. Values of the content parameters depend on the instance of hardware of the content capturing device 2. The values of content parameters are used as auxiliary data for the content produced by the content capturing device 2. The auxiliary data could also contain other data.
[0066] In an obtain content-derived values step 44, the verification device 1 obtains content-derived values, from the content capturing device 2, for a plurality of values of the content parameters.
[0067] Two different content capturing device 2 are unlikely to produce the same content-derived values for the same content parameters. This difference in values can be achieved using implicit randomness, since a hardware manufacturing processintroduces slight variations, or explicit randomness, where at least one unique secret parameter is randomly generated for each content-generating device.
[0068] For instance, the obtaining content-derived values can be achieved by measuring side-channel values, exhibiting implicit randomness across content capturing devices 2. In this case, the side-channel values are the content-derived values. Hence, the content-derived values are based on an implicit function where additional circuitry measures side-channel properties of the content circuitry during the creation of the content. Such side-channel values can e.g. be power consumption, electromagnetic emissions and / or timings. The measurements maybe one or several measurements performed at a regular interval.
[0069] For side-channel values, the content-derived values are obtained according to the following. Additional circuitry can be set up to enable measurement of the content generating circuitry. The content produced by the content generation circuitry is input to the additional circuitry. The additional circuitry measures the side-channel properties during the creation of the content.
[0070] Alternatively or additionally, the obtaining content-derived value can be achieved by, for each of the plurality of values of the content parameters, obtaining a content-derived value as a result from a function that is specific to the content capturing device 2, here denoted a specific function. An input to the specific function is a respective at least one of the plurality of the content parameters.
[0071] In one embodiment, the specific function is created using circuitry which utilize minor, arbitrary environmental variations affecting the manufacturing process such that the secondary measurements may be not only specific to differing content output but also unique to each content producing circuit. The specific function can e.g. be a physically unclonable function (PUF), which relies on circuitry-unique input-output mapping.
[0072] The PUF has the intrinsic capability that it is hardware-unique, meaning that an exact copy of the same PUF design will create different challenge-response pairs.This makes the PUF beneficial compared to e.g. a keyed hash function, which uses a keyin one-time-programmable (OTP) memory, since an attack that is able to steal the key can replicate the function. In contrast, the PUF would have to be probed for each possible challenge-response pair.
[0073] Furthermore, since PUF responses are generated on demand, they are only available when the PUF is activated. When the PUF is powered off, the secrets are not accessible, in contrast to an OTP key which is always present.
[0074] It may be that the PUF could provide more hardware-unique auxiliary data than side-channel measurements. On the other hand, the side-channel measurements are closer to the actual process in the content producing components while the PUF only operates on the result.
[0075] So, depending on what is seen as most valuable, different solutions (or a combination of several) can provide the most trustworthiness to the content.
[0076] For a PUF, the content derived values can be obtained according to the following. The content produced from the content generation circuitry is input to the circuitry. The circuitry transforms the content into challenge(s), e.g. using hash function. The challenge(s) is used as input to the PUF. The PUF is activated and produces one or several responses by configuring the circuitry-unique subfunctions according to the challenge, resulting in the PUF producing one or several responses.
[0077] In one embodiment, the specific function is based on a secret that is explicitly programmed into each content capturing device 2 by the manufacturer or the verification device 1. Each content producing circuit (or other part of the content capturing device 2) is then equipped with a function which can be provided with an explicitly programmed, secret, parameter which creates a unique substitution function for each circuit. For instance, a parameter configuring an 8-bit input to an 8-bit output function where the substitution is defined by combination of the parameter and the input. Also in this scenario, the recorded data for the circuitry can be used as input to the function.
[0078] For an explicitly programmed secret, the content derived values can be obtained according to the following. The content produced from the content generationcircuitry is input to the function. The function is configured using the secret parameter. The function is activated and produces output by transforming the input using the function which has been configured with the secret parameter.
[0079] In one embodiment, the specific function is based on a single function for all content producing functions, e.g. a keyed message authentication code (MAC) function. The procedure to obtain the content-derived values is similar to the embodiment based on the explicitly programmed secret, but with an additional step that the secret parameter (and possibly an identity) is supplied from the content producing circuit.
[0080] In one embodiment, the explicit common function may be a single PUF, where each component has a specified set of challenges that it is allowed to use, e.g. having a specific prefix, infix, or suffix.
[0081] It is to be noted that it is possible to use a combination of two or more of the above-mentioned procedures to produce the content-derived values. It is further possible to have different content generating circuitry using the same or different alternatives and using their joint auxiliary information as metadata.
[0082] In a store content-derived values step 46, the verification device 1 stores, in association with an identifier of the content capturing device 2, for each of the plurality of values of the content parameters, the content-derived values respectively associated with the value of the content parameter.
[0083] In an obtain key step 47, the verification device 1 obtains a cryptographic key based on data specific to the content capturing device 2 and key-generation data, e.g. as described with reference to Fig 2C of Fig 2D below. When the cryptographic key is symmetric, the actual generation of the cryptographic key can be performed by the content capturing device 2 or the verification device 1. When the cryptographic key comprises a key pair with a public and a secret key, it is the content capturing device 2 that generates the cryptographic key.
[0084] In a store key -generation data step 48, the verification device 1 providing the key-generation data to the content capturing device 2 for storage such that it is able to generate the cryptographic key. The content capturing device 2 then stores the key-generation data within content capturing device 2. The key-generation data is also stored in the verification device 1. It should be noted that step 48 can be performed prior to step 47, e.g. in the case that the cryptographic comprises a keypair with a public and a secret key.
[0085] In a store key step 49, the verification device 1 stores the cryptographic key or data which can be used to generate the key, such that it is accessible for the verification device 1 without being in communication with the content capturing device 2, in association with an identifier of the content capturing device 2. In some embodiments, more than one cryptographic key is used.
[0086] In a capture content step 140, the content capturing device 2 captures content.
[0087] In an obtain content parameters step 141, the content capturing device 2 obtains a set of content parameters. As described in more detail above, each content parameter defines a parameter of content that is capturable by the content capturing device 2.
[0088] In an obtain content derived values step 144, the content capturing device 2 obtains respective content-derived values, from the content capturing device 2, for a plurality of values of the content parameters, in accordance with what is described for step 44 above.
[0089] For instance, the obtaining the content-derived values can comprise measuring one or more side-channel values, wherein the side-channel values are the content-derived values. This is performed when corresponding side-channel values were measured in the obtain content-derived values step 44 by the verification device 1 during the registration phase.
[0090] The obtaining the content-derived value alternatively comprises, for each of the plurality of values of the content parameters, obtaining a content-derived value as a result from a function specific to the content capturing device 2, wherein an input to the function is a respective one of the plurality of the content parameters. This is performedwhen a corresponding function specific to the content capturing device was performed in the obtain content-derived values step 44 by the verification device 1.
[0091] The function specific to the content capturing device 2 can be a PUF (when PUF is used by the verification device 1 in step 44), or a MAC function with a devicespecific key (when this is used by the verification device 1 in step 44). The MAC function can be applied when PUF is not available e.g. due to the hardware not being equipped with device-unique circuitry that can be used for PUF.
[0092] In an generate key step 147, the content capturing device 2 (re-)generates a cryptographic key based on hardware specific data of the content capturing device 2 and key-generation data stored in the content capturing device 2. This cryptographic key corresponds to the cryptographic key generated by the verification device 1 (or the content capturing device 2) in step 47.
[0093] In a derive auxiliary data step 152, the content capturing device 2 derives auxiliary data based on the captured content.
[0094] In a protect auxiliary data step 154, the content capturing device 2 cryptographically protects the auxiliary data based on the cryptographic key, resulting in cryptographic data. The cryptographic protection can involve encrypting the auxiliary data. Alternatively or additionally, the cryptographic protection can involve generating a cryptographic signature of the auxiliary data. When encryption is applied, this prevents anyone from reading the auxiliary data whereas the signature adds integrity protection of the auxiliary data.
[0095] In a transmit content data step 156, the content capturing device 2 transmits the content, the cryptographic data, and the content-derived values to the verification device 1.
[0096] Looking now to Fig 2B, only new or modified steps, compared to those illustrated by Fig 2A, are described.
[0097] In an optional determine subset step 41, the verification device 1 determines a definition of a strict subset of content parameters from a set of possible contentparameters. This subset is a further level of security, since only the verification device will know the subset for the particular content capturing device 2. The subset is also provided to the content capturing device 2, such that the same subset can be used for auxiliary data of content to be validated.
[0098] In an optional define validation function step 42, the verification device 1 defines a validation function. The validation function comprises using a one-way function (e.g. hash function) based on the strict subset of content parameters and a piece of content. In other words, the validation function defines the strict subset of content parameters determined in step 41.
[0099] In an optional store validation data step 43, the verification device 1 stores the definition of the strict subset in the content capturing device 2, as well as in storage available to the verification device 1.
[0100] When the define validation function step 42 is performed, the storing the definition comprises storing the validation function on the content capturing device 2 and in storage available to the verification device 1.
[0101] In an optional receive content data step 50, the verification device 1 receives content to be verified, cryptographic data, content-derived values and an identifier of the content capturing device 2. This can be received from the requesting device 4, when the requesting device 4 wants to verify the validity of the content.
[0102] In an optional reobtain content parameters step 51, the verification device 1 reobtains, from storage, the set of content parameters for the content capturing device 2.
[0103] In an optional derive values from content step 52, the verification device 1 derives, based on the content to be verified, a value of each content parameter, in the set of content parameters, for the content to be verified. In other words, the set of content parameters defines what parameters that should be evaluated in the content.
[0104] In an optional obtain stored values step 54, the verification device 1 obtains a stored content-derived value for each value of a content parameter the set of content parameters.
[0105] In an optional obtain stored cryptographic key step 55, the verification device 1 obtains the cryptographic key for the content capturing device 2 key from storage.
[0106] In an optional verify cryptographic data step 57, the verification device 1 verifies the cryptographic data using the cryptographic key. This can be done by decrypting the cryptographic data, when the cryptographic data comprises encrypted data. Alternatively, or additionally, if the cryptographic data is a cryptographic signature of auxiliary data, the verification of the cryptographic data comprises verifying the signature using a public key corresponding to the secret key that was used to generate the cryptographic signature.
[0107] In an optional verify content-derived values step 58, the verification device 1 verifies each one of the received content-derived values against respective stored content-derived values. Optionally, the verification does not need to be a complete match; a match can then be positive as long as the match is greater than a predefined threshold, defining how much the values are allowed to differ. Alternatively or additionally, an error correlation can be applied.
[0108] In an optional transmit result step 59, the verification device 1 transmits the result of the verification(s) to the requesting device 4. Both verifications (of steps 57 and 58) need to pass for the content to be considered to be valid.
[0109] Looking now to Fig 2C, this illustrates optional sub-steps of the generate key step 47 performed by the verification device 1.
[0110] In an optional generate seed step 47a, the verification device 1 generates a seed. The seed can be any suitable seed data, e.g. (pseudo) random data.[om] In an optional obtain HW (hardware ) specific value step 47b, the verification device 1 obtains a value from a hardware specific function the content capturing device 2. Optionally, multiple such values are obtained.
[0112] The value from a hardware specific function can be a self-test value from a self-test of hardware of the content capturing device 2.
[0113] Alternatively or additionally, the value from a hardware specific function can be a value from a PUF of the content capturing device 2.
[0114] Alternatively or additionally, the value is read from a non-volatile memory of the content capturing device 2, storing a value that is specific for the content capturing device 2. This value can be programmed by the manufacturer of the content capturing device 2. The non-volatile memory can be a one-time-programmable memory (OTP), preventing any one from changing the value int the non-volatile memory.
[0115] In an optional determine cryptographic key step 47c, the verification device 1 determines the cryptographic key from a key derivation function (KDF), based on the seed and the hardware specific value(s). When this step is performed, the keygeneration data is thus based on the seed. In one embodiment, the key-generation data is the seed (or comprises the seed). The content capturing device is thereby enabled to be able to obtain the seed form the key-generation data that is stored in the content capturing device 2 in step 48. By basing the cryptographic key based on the hardwarespecific value, the cryptographic key is a hardware-entangled key.
[0116] Hence, the KDF is used to derive the cryptographic key from the seed and the hardware specific value(s), where the hardware specific value(s) would change for very small changes to any part of the hardware. In this way, a malicious actor trying to probe for the key and / or trying to alter the functionality of the circuits for measuring the content-derived values would also change the key itself (as the input to the key derivation would change). The self-test circuitry can include the content producing circuits to ensure that measurement points and their correlation to content are unchanged, as well as the memory for secure storage of the KDF itself to ensure that breaches in trust can be identified after the device leaves the content verification entity.Furthermore, the KDF could take the identity and other metadata of the content producing circuitry as input, to ensure that no component has been replaced postmanufacturing.
[0117] In one embodiment, the cryptographic key pair for the device is produced by a PUF rather than stored in memory. In such an embodiment, the self-test circuitry could be used as input to the PUF as a challenge, meaning that the PUF will produce a different key if the self-test result varies.
[0118] In one embodiment, the cryptographic key is a symmetric key, in which case the content verification service stores a copy of the key. Alternatively, the cryptographic key is an asymmetric key, in which a hardware-entangled private key is created by the content capturing device 2 and the corresponding public key is stored at the verification device 1. Both types of keys are feasible, but the trust model becomes easier in a scenario where the verifier only needs to store a public key.
[0119] Looking now to Fig 2D, this illustrates optional sub-steps of the generate key step 147 performed by the content capturing device 2.
[0120] In an optional obtain seed step 147a, the content capturing device 2 obtains a seed based on the key-generation data. For instance, when the key-generation data comprises the seed, the seed is extracted from the key-generation data. The seed is the seed that is generated in step 47a.
[0121] In an optional obtain HW specific value step 147b, the content capturing device 2 obtains a value from a hardware specific function the content capturing device 2. Optionally, multiple such values are obtained. The hardware-specific value corresponds to the hardware-specific value in step 47b.
[0122] In an optional determine cryptographic key step 147c, the content capturing device 2 determines the cryptographic key from a key derivation function, based on the seed and the self-test value. In this way, when validly obtained, the cryptographic key that is determined corresponds to the cryptographic key that is determined in step 47c.
[0123] Optionally, the content capturing device 2 can be implemented using multiple physical units. Additional devices e.g. smart watch, near eye displays, wearables, etc. that paired with a first device (e.g. smartphone) that may generate privacy sensitive content may also create trusted device content as described above. In other words, it is not necessary for all content producing circuitry to be present in the same physical encasing. Furthermore, if the first device is enabled with additional sensors, and corresponding measurements can also be obtained by other means by the verification device 1, those measurements can be used as additional sources for the proof of identity for the first device. For instance, the position of the first and additional device may be required to be the same (within a certain margin).
[0124] According to embodiments presented herein, additional layers of security are added that makes fabrication or falsification of content extremely difficult even for very capable malicious actors and moves the trust from individual devices to a common third party, i.e. the verification device.
[0125] Fig 3 is a schematic diagram illustrating components of the verification device 1 and the content capturing device 2 of Figs 1A-B. Processing circuitry 60 is provided using any combination of one or more of a suitable central processing unit (CPU), graphics processing unit (GPU), multiprocessor, neural processing unit (NPU), microcontroller, digital signal processor (DSP), etc., capable of executing software instructions 67 stored in memory circuitry 64, which can thus be a computer program product. The processing circuitry 60 could alternatively be implemented using an application specific integrated circuit (ASIC), field programmable gate array (FPGA), etc. The processing circuitry 60 can be configured to execute methods illustrated by Figs 2A-D, described above.
[0126] The memory circuitry 64 can be any combination of random-access memory (RAM) and / or read-only memory (ROM). The memory circuitry 64 also comprises non- transitory persistent storage, which, for example, can be any single one or combination of magnetic memory, optical memory, solid-state memory or even remotely mounted memory.
[0127] A data memory 66 is also provided for reading and / or storing data during execution of software instructions in the processing circuitry 6o. The data memory 66 can be any combination of RAM and / or ROM.
[0128] An I / O interface 62 is provided for communicating with external and / or internal entities, e.g. using wired communication, e.g. based on Ethernet, and / or wireless communication, e.g. Wi-Fi and / or a cellular network, complying with any one or a combination of sixth generation (6G) mobile networks, next generation mobile networks (fifth generation, 5G), LTE (Long Term Evolution), UMTS (Universal Mobile Telecommunications System) utilising W-CDMA (Wideband Code Division Multiplex), or any other current or future wireless network, as long as the principles described hereinafter are applicable.
[0129] Other components are omitted in order not to obscure the concepts presented herein.
[0130] Fig 4 is a schematic diagram showing functional modules of the verification device 1 of Figs 1A-B according to one embodiment. The modules are implemented using software instructions such as a computer program executing in the verification device 1. Alternatively or additionally, the modules are implemented using hardware, such as any one or more of an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or discrete logical circuits. The modules correspond to the steps performed by the verification device 1 in the methods illustrated in Figs 2A- 2C.
[0131] A parameter obtainer 70 corresponds to step 40. A subset determiner 71 corresponds to step 41. A function definer 72 corresponds to step 42. A validation data storer 73 corresponds to step 43. A value obtainer 74 corresponds to step 44. A value storer 76 corresponds to step 46. A key generator 77 corresponds to step 47. A seed generator 77a corresponds to step 47a. A HW specific value obtainer 77b corresponds to step 47b. A key determiner 77c corresponds to step 47c. A key-generation data storer 78 corresponds to step 48. A key storer 79 corresponds to step 49. A content data receiver 80 corresponds to step 50. A content parameters reobtainer 81 corresponds to step 51. A values from content-deriver 82 corresponds to step 52. A stored values obtainer 84corresponds to step 54. A stored key obtainer 85 corresponds to step 55. A cryptographic data verifier 87 corresponds to step 57. A value verifier 88 corresponds to step 58. A result transmitter 89 corresponds to step 59.
[0132] Fig 5 is a schematic diagram showing functional modules of the content capturing device 2 of Figs 1A-B according to one embodiment. The modules are implemented using software instructions such as a computer program executing in the content capturing device 2. Alternatively or additionally, the modules are implemented using hardware, such as any one or more of an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or discrete logical circuits. The modules correspond to the steps in the methods illustrated in Figs 2A-B and Fig 2D.
[0133] A content capturer 170 corresponds to step 140. A parameter obtainer 171 corresponds to step 141. A value obtainer 174 corresponds to step 144. A key generator 177 corresponds to step 147. A seed obtainer 177a corresponds to step 147a. A HW specific value obtainer 177b corresponds to step 147b. A key determiner 177c corresponds to step 147c. An auxiliary data deriver 182 corresponds to step 152. An auxiliary data protector 184 corresponds to step 154. A content data transmitter 186 corresponds to step 156.
[0134] Fig 6 shows one example of a computer program product 90 comprising computer readable means. On this computer readable means, a computer program 91 can be stored in a non-transitory memory. The computer program can cause processing circuitry to execute a method according to embodiments described herein. In this example, the computer program product 90 is in the form of a removable solid-state memory, e.g. a Universal Serial Bus (USB) drive. As explained above, the computer program product could also be embodied in a memory of a device, such as the computer program product 64 of Fig 3. While the computer program 91 is here schematically shown as a section of the removable solid-state memory, the computer program can be stored in any way which is suitable for the computer program product, such as another type of removable solid-state memory, or an optical disc, such as a CD (compact disc), a DVD (digital versatile disc) or a Blu-Ray disc.
[0135] The aspects of the present disclosure have mainly been described above with reference to a few embodiments. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the invention, as defined by the appended patent claims. Thus, while various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope being indicated by the following claims.
Claims
CLAIMS1. A method for enabling validation of content captured by a content capturing device (2), the method being performed by a verification device (1), the method comprising: obtaining (40) a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device (2); obtaining (44) content-derived values, from the content capturing device (2), for a plurality of values of the content parameters; storing (46), in association with an identifier of the content capturing device (2), for each of the plurality of values of the content parameters, the content-derived values respectively associated with the value of the content parameter; obtaining (47) a cryptographic key based on data specific to the content capturing device (2) and key-generation data; providing (48) the key-generation data to the content capturing device (2) for storage such that it is able to generate the cryptographic key; and storing (49) the cryptographic key, such that it is accessible for the verification device (1) without being in communication with the content capturing device (2), in association with an identifier of the content capturing device (2).
2. The method according to claim 1, further comprising: determining (41) a definition of a strict subset of content parameters from a set of possible content parameters; storing (43) the definition of the strict subset in the content capturing device (2) and in storage available to the verification device (1).
3. The method according to claim 2, further comprising: defining (42) a validation function, the validation function comprising using a oneway function based on the strict subset of content parameters and a piece of content; and wherein the storing (43) the definition comprises storing the validation function on the content capturing device (2) and in storage available to the verification device (1).
4. The method according to claim 3, wherein the obtaining (47) the cryptographic key comprises:generating (47a) a seed; obtaining (47b) a value from a hardware specific function for the content capturing device (2); and determining (47c) the cryptographic key from a key derivation function, based on the seed and the hardware specific value; wherein the key-generation data is based on the seed, enabling the content capturing device to regenerate the seed.
5. The method according to claim 4, wherein the obtaining (47b) a value from a hardware specific function comprises obtaining a self-test value from a self-test of hardware of the content capturing device (2).
6. The method according to claim 4, wherein the obtaining (47b) a value from a hardware specific function comprises obtaining a value from a physically unclonable function, PUF, of the content capturing device (2).
7. The method according to claim 4, wherein the obtaining (47b) a value comprises obtaining a value from a non-volatile memory of the content capturing device (2).
8. The method according to any one of the preceding claims, wherein the obtaining (44) the content-derived values comprises measuring side-channel values, wherein the side-channel values are the content-derived values.
9. The method according to any one of claims 1 to 7, wherein the obtaining (44) the content-derived value comprises, for each of the plurality of values of the content parameters, obtaining a content-derived value as a result from a function specific to the content capturing device (2), wherein an input to the function is a respective at least one of the plurality of the content parameters.
10. The method according to claim 9, wherein the function specific to the content capturing device (2) is a physically unclonable function, PUF or a message authentication code, MAC, function with a device-specific key.
11. The method according to any one of the preceding claims, further comprising: receiving (50) content to be verified, cryptographic data, content-derived valuesand an identifier of the content capturing device (2); reobtaining (51), from storage, the set of content parameters for the content capturing device (2); deriving (52), based on the content to be verified, a value of each content parameter, in the set of content parameters, for the content to be verified; obtaining (54) a stored content-derived value for each value of a content parameter the set of content parameters; obtaining (55) the cryptographic key for the content capturing device (2) key from storage; verifying (57) the cryptographic data using the cryptographic key; and verifying (58) each one of the received content-derived values against respective stored content-derived values.
12. A verification device (1) for enabling validation of content captured by a content capturing device (2), the verification device (1) comprising: processing circuitry (60); and memory circuitry (64) storing instructions (67) that, when executed by the processing circuitry, cause the verification device (1) to: obtain a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device (2); obtain content-derived values, from the content capturing device (2), for a plurality of values of the content parameters; store, in association with an identifier of the content capturing device (2), for each of the plurality of values of the content parameters, the content-derived values respectively associated with the value of the content parameter; obtain a cryptographic key based on data specific to the content capturing device (2) and key-generation data; provide the key-generation data to the content capturing device (2) for storage such that it is able to generate the cryptographic key; and store the cryptographic key, such that it is accessible for the verification device (1) without being in communication with the content capturing device (2), in association with an identifier of the content capturing device (2).13- The verification device (1) according to claim 12, further comprising instructions (67) that, when executed by the processing circuitry, cause the validation device (1) to: determine a definition of a strict subset of content parameters from a set of possible content parameters; store the definition of the strict subset in the content capturing device (2) and in storage available to the verification device (1).
14. The verification device (1) according to claim 13, further comprising instructions (67) that, when executed by the processing circuitry, cause the validation device (1) to: define a validation function, the validation function comprising using a one-way function based on the strict subset of content parameters and a piece of content; and wherein the instructions to store the definition comprise instructions (67) that, when executed by the processing circuitry, cause the validation device (1) to store the validation function on the content capturing device (2) and in storage available to the verification device (1).
15. The verification device (1) according to claim 14, wherein the instructions to obtain the cryptographic key comprise instructions (67) that, when executed by the processing circuitry, cause the validation device (1) to: generate a seed; obtain a value from a hardware specific function for the content capturing device (2); and determine the cryptographic key from a key derivation function, based on the seed and the hardware specific value; wherein the key-generation data is based on the seed, enabling the content capturing device to regenerate the seed.
16. The verification device (1) according to claim 15, wherein the instructions to obtain a value from a hardware specific function comprise instructions (67) that, when executed by the processing circuitry, cause the validation device (1) to obtain a self-test value from a self-test of hardware of the content capturing device (2).
17. The verification device (1) according to claim 15, wherein the instructions to obtain a value from a hardware specific function comprise instructions (67) that, whenexecuted by the processing circuitry, cause the validation device (1) to obtain a value from a physically unclonable function, PUF, of the content capturing device (2).
18. The verification device (1) according to claim 15, wherein the instructions to obtain a value comprise instructions (67) that, when executed by the processing circuitry, cause the validation device (1) to obtain a value from a non-volatile memory of the content capturing device (2).
19. The verification device (1) according to any one of claims 12 to 18, wherein the instructions to obtain the content-derived values comprise instructions (67) that, when executed by the processing circuitry, cause the validation device (1) to measure sidechannel values, wherein the side-channel values are the content-derived values.
20. The verification device (1) according to any one of claims 12 to 18, wherein the instructions to obtain the content-derived value comprise instructions (67) that, when executed by the processing circuitry, cause the validation device (1) to, for each of the plurality of values of the content parameters, obtain a content-derived value as a result from a function specific to the content capturing device (2), wherein an input to the function is a respective at least one of the plurality of the content parameters.
21. The verification device (1) according to claim 20, wherein the function specific to the content capturing device (2) is a physically unclonable function, PUF or a message authentication code, MAC, function with a device-specific key.
22. The verification device (1) according to any one of claims 12 to 21, further comprising instructions (67) that, when executed by the processing circuitry, cause the validation device (1) to: receive content to be verified, cryptographic data, content-derived values and an identifier of the content capturing device (2); reobtain, from storage, the set of content parameters for the content capturing device (2); derive, based on the content to be verified, a value of each content parameter, in the set of content parameters, for the content to be verified; obtain a stored content-derived value for each value of a content parameter the setof content parameters; obtain the cryptographic key for the content capturing device (2) key from storage; verify the cryptographic data using the cryptographic key; and verify each one of the received content-derived values against respective stored content-derived values;23. A computer program (67, 91) for enabling validation of content captured by a content capturing device (2), the computer program comprising computer program code which, when executed on a verification device (1) causes the verification device (1) to: obtain a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device (2); obtain content-derived values, from the content capturing device (2), for a plurality of values of the content parameters; store, in association with an identifier of the content capturing device (2), for each of the plurality of values of the content parameters, the content-derived values respectively associated with the value of the content parameter; generate a cryptographic key based on data specific to the content capturing device (2) and key-generation data; provide the key-generation data to the content capturing device (2) for storage such that it is able to generate the cryptographic key; and store the cryptographic key, such that it is accessible for the verification device (1) without being in communication with the content capturing device (2), in association with an identifier of the content capturing device (2).
24. A computer program product (64, 90) comprising a computer program according to claim 23 and a computer readable means comprising non-transitory memory in which the computer program is stored.
25. A method for enabling validation of content captured by a content capturing device (2), the method being performed by the content capturing device (2), the method comprising: capturing (140) content; obtaining (141) a set of content parameters, wherein each content parameterdefines a parameter of content that is capturable by the content capturing device (2); obtaining (144) respective content-derived values, from the content capturing device (2), for a plurality of values of the content parameters; generating (147) a cryptographic key based on hardware specific data of the content capturing device (2) and key-generation data stored in the content capturing device (2); deriving (152) auxiliary data based on the captured content; cryptographically (154) protecting the auxiliary data based on the cryptographic key, resulting in cryptographic data; and transmitting (156) the content, the cryptographic data, and the content-derived values to a verification device (1).
26. The method according to claim 25, wherein the generating (147) a cryptographic key comprises: obtaining (147a) a seed based on the key-generation data; obtaining (147b) a hardware specific value from a hardware specific function for the content capturing device (2); determining (147c) the cryptographic key from a key derivation function, based on the seed and the self-test value.
27. The method according to claim 25 or 26, wherein the cryptographically (154) protecting the auxiliary data comprises encrypting the auxiliary data.
28. The method according to any one of claims 25 to 27, wherein the cryptographically (154) protecting the auxiliary data comprises generating a cryptographic signature of the auxiliary data.
29. The method according to any one of claims 25 to 28, wherein the obtaining (144) the content-derived values comprises measuring a side-channel values, wherein the side-channel values are the content-derived values.
30. The method according to any one of claims 25 to 28, wherein the obtaining (144) the content-derived value comprises, for each of the plurality of values of the content parameters, obtaining a content-derived value as a result from a function specific to thecontent capturing device (2), wherein an input to the function is a respective one of the plurality of the content parameters.
31. The method according to claim 30, wherein the function specific to the content capturing device (2) is a physically unclonable function, PUF.
32. A content capturing device (2) for enabling validation of content captured by the content capturing device (2), the content capturing device (2) comprising: processing circuitry (60); and memory circuitry (64) storing instructions (67) that, when executed by the processing circuitry, cause the content capturing device (2) to: capture content; obtain a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device (2); obtain respective content-derived values, from the content capturing device (2), for a plurality of values of the content parameters; generate a cryptographic key based on hardware specific data of the content capturing device (2) and key-generation data stored in the content capturing device (2); derive auxiliary data based on the captured content; cryptographically protect the auxiliary data based on the cryptographic key, resulting in cryptographic data; and transmit the content, the cryptographic data, and the content-derived values to a verification device (1).
33. The content capturing device (2) according to claim 32, wherein the instructions to generate a cryptographic key comprise instructions (67) that, when executed by the processing circuitry, cause the content capturing device (2) to: obtain a seed based on the key-generation data; obtain a hardware specific value from a hardware specific function for the content capturing device (2); determine the cryptographic key from a key derivation function, based on the seed and the self-test value.34- The content capturing device (2) according to claim 32 or 33, wherein the instructions to cryptographically protect the auxiliary data comprise instructions (67) that, when executed by the processing circuitry, cause the content capturing device (2) to encrypt the auxiliary data.
35. The content capturing device (2) according to any one of claims 32 to 34, wherein the instructions to cryptographically protect the auxiliary data comprise instructions (67) that, when executed by the processing circuitry, cause the content capturing device (2) to generate a cryptographic signature of the auxiliary data.
36. The content capturing device (2) according to any one of claims 32 to 35, wherein the instructions to obtain the content-derived values comprise instructions (67) that, when executed by the processing circuitry, cause the content capturing device (2) to measure a side-channel values, wherein the side-channel values are the content-derived values.
37. The content capturing device (2) according to any one of claims 32 to 35, wherein the instructions to obtain the content-derived value comprise instructions (67) that, when executed by the processing circuitry, cause the content capturing device (2) to, for each of the plurality of values of the content parameters, obtain a content-derived value as a result from a function specific to the content capturing device (2), wherein an input to the function is a respective one of the plurality of the content parameters.
38. The content capturing device (2) according to claim 37, wherein the function specific to the content capturing device (2) is a physically unclonable function, PUF.
39. A computer program (67, 91) for enabling validation of content captured by the content capturing device (2), the computer program comprising computer program code which, when executed on a content capturing device (2) causes the content capturing device (2) to: capture content; obtain a set of content parameters, wherein each content parameter defines a parameter of content that is capturable by the content capturing device (2); obtain respective content-derived values, from the content capturing device (2), fora plurality of values of the content parameters; generate a cryptographic key based on hardware specific data of the content capturing device (2) and key-generation data stored in the content capturing device (2); derive auxiliary data based on the captured content; cryptographically protect the auxiliary data based on the cryptographic key, resulting in cryptographic data; and transmit the content, the cryptographic data, and the content-derived values to a verification device (1).
40. A computer program product (64, 90) comprising a computer program according to claim 39 and a computer readable means comprising non-transitory memory in which the computer program is stored.