Systems,apparatus and methods for authentication

A server-based authentication system validates multiple codes from a label with visual markers to enhance security in accessing digital content, addressing vulnerabilities in existing visual marker systems by ensuring only authorized users gain access.

GB2701412APending Publication Date: 2026-04-29H010 LTD
View PDF 7 Cites 0 Cited by

Patent Information

Authority / Receiving Office
GB · GB
Patent Type
Applications
Current Assignee / Owner
H010 LTD
Filing Date
2024-10-04
Publication Date
2026-04-29

AI Technical Summary

Technical Problem

Existing visual markers, such as barcodes and QR codes, are vulnerable to unauthorized sharing, compromising security in accessing digital content.

Method used

A server-based authentication system that validates multiple codes decoded from a label comprising a plurality of visual markers, requiring at least two codes to be authenticated before granting access to digital content, and optionally using serial numbers for additional verification.

Benefits of technology

Enhances security by ensuring that only authorized users gain access to digital content, reducing the risk of unauthorized sharing and improving system security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A computer-implemented method for authenticating a label comprising a plurality of respective visual markers, e.g. QR codes, each encoding a respective code, comprises: receiving a label authenticatio
Need to check novelty before this filing date? Find Prior Art

Description

The present invention relates to systems, apparatus and methods for authenticating labels including visual markers. Particularly, but not exclusively, the present invention relates to authenticating labels for providing access to digital content. BACKGROUND The use of visual markers such as barcodes, quick response “QR” codes and other styles of static marker for allowing quick and easy accessing of publicly available digital content is becoming increasingly part of everyday life. Using a smartphone or other similar device, an image can be captured including a visual marker from which a link can be automatically obtained for accessing digital content such as a webpage. Whilst visual markers have seen use in accessing digital content, such visual markers have vulnerabilities and are considered not well suited as an authentication method for providing secure access control. For example, one user in possession of a valid QR code for accessing a digital content can easily generate copies which can be shared with unauthorised users thereby undermining system security. It is an aim of the present invention to reduce or overcome one or more of the problems associated with prior art methods and associated systems. SUMMARY OF THE INVENTION According to an aspect of the disclosure, a server for authenticating a label comprising a plurality of respective visual markers each encoding a respective code is configured to: receive a label authentication request for authenticating the label from a user device; access a set of codes, wherein the set of codes comprises at least a two stored codes; perform a label authentication process in which at least a first code and a second code respectively decoded from respective visual markers of the label are to be validated with the set of codes; and provide the user device with access to at least one of a web service and a downloadable software application in dependence on whether at least the first code and the second code are validated with the set of codes. The set of codes may be stored in association with data for providing access to at least one of the web service and the downloadable software application. The data for providing access to at least one of the web service and the downloadable software application may comprise at least one of an address for the web service and an address for the downloadable software application. The set of codes may comprise stored codes each corresponding to a different respective visual marker of a known label. The set of codes may comprise N stored codes, wherein N may be a value in the range 2 to 10. The stored codes of the set of codes may each correspond to a different respective visual marker having a same visual marker type. The stored codes of the set of codes may comprise at least two stored codes corresponding to different visual marker types. The set of codes may be stored in association with at least one serial number corresponding to a serial number for the known label, and the server may be configured to validate a serial number obtained from the label with the at least one serial number. The set of codes may be stored in association with a plurality of different serial numbers each corresponding to a different known label, wherein each of the plurality of different serial numbers may be stored in association with data for providing access to a different web service and / or a different downloadable software application, and wherein in response to at least the first code and the second code being validated with the set of codes, the server may be configured to: validate a serial number obtained from the label with a respective one of the plurality of different serial numbers; and provide the user device with access to at least one of a web service and a downloadable software application stored in association with the respective one of the plurality of different serial numbers. The server may be configured to run the label authentication process and authenticate the label in dependence on whether a validation condition is met for the set of codes. The validation condition may define at least one of: a threshold number of stored codes to be validated for the set of codes; and a preset time duration for the threshold number of stored codes to be validated for the set of codes. The set of codes may comprise N stored codes. N may be a value in the range 2 to 10, and the threshold number of stored codes to be validated may be 2. Alternatively, the threshold number of stored codes to be validated may be greater than 2. The server may be configured to end or restart the label authentication process in response to one or more predetermined conditions, wherein the one or more predetermined conditions may comprise at least one of: determining at least one code decoded from the label as being invalid for the set of codes; a tracked motion associated with the user device exceeding a threshold motion for the user device during the label authentication process; the label disappearing, or at least partially disappearing, from a sequence of images captured by the user device during the label authentication process; detection of one or more objects in the sequence of images captured by the user device during the label authentication process; detection of at least one visual marker external to the label in the sequence of images captured by the user device during the label authentication process; and absence of detection of at least a subset of a group of predetermined colours in the sequence of images captured by the user device in a predetermined time duration during the label authentication process. The server may be configured to access a plurality of respective sets of codes, in which each set of codes may be stored in association with data for accessing a different web service and / or a different downloadable software application. The server may be configured to run a web application to perform the label authentication process. The server may be a web server. The user device may be operable to decode a first detected visual marker of the label to obtain a web address for the web application. Any of the server and the user device may decode one of the first detected visual marker and a second detected visual marker of the label to obtain the first code to be validated with the set of codes. The server may be configured to run the label authentication process to sequentially validate a plurality of codes decoded from sequentially detected visual markers of the label with the set of codes. The label to be authenticated may be one of an optically variable device “OVD” label and a digital label. In particular, the label may be a digital label and respective visual markers each encoding a respective code may be displayed in sequence. According to another aspect of the disclosure, a system comprises the server and the user device, wherein the user device may be one of: a smartphone device, a tablet device, a smartwatch device, and a laptop device. The system may further comprise the label, wherein the label comprises a plurality of layers, wherein different respective visual markers are embedded on respective layers. According to another aspect of the disclosure, a computer-implemented method for authenticating a label comprising a plurality of respective visual markers each encoding a respective code is provided. The method comprises: receiving a label authentication request for authenticating the label from a user device; accessing a set of codes, wherein the set of codes comprises at least two stored codes; performing a label authentication process in which at least a first code and a second code respectively decoded from respective visual markers of the label are to be validated with the set of codes; and providing the user device with access to at least one of a web service and a downloadable software application in dependence on whether at least the first code and the second code are validated with the set of codes. The computer-implemented method may further comprise: detecting, by the user device, a first visual marker of the label; decoding, by the user device, the first visual marker to obtain an address; and communicating, by the user device, the label authentication request for authenticating the label, the label authentication request being communicated to a server identified based on the address. According to another aspect of the disclosure, a computer program comprises instructions which, when executed by a computer, cause the computer to perform any of the above methods. Various aspect and features of the present invention are defined in the appended claims and within the text of the accompanying description. Example embodiments include at least systems, apparatus, methods, computer programs and a machine-readable, non-transitory storage mediums which store such computer programs. BRIEF DESCRIPTION OF THE FIGURES In orderthatthe present disclosure may be more readily understood, preferable embodiments thereof will now be described, by way of example only, with reference to the accompanying drawings, in which: Figure 1 is a schematic diagram illustrating a system comprising a server and a user device; Figures 2 and 3 are schematic diagrams illustrating examples of sets of codes accessible to the server for label authentication processing; Figure 4 is a schematic diagram illustrating a label comprising layers with visual markers; Figure 5 is a schematic diagram illustrating an example of two respective quick response (QR) codes for a label; Figures 6a and 6b are schematic diagrams illustrating labels comprising serial numbers; Figures 7 and 8 are schematic flowcharts illustrating methods; and Figure 9 is a schematic diagram illustrating an example of flow of data in a system; DETAILED DESCRIPTION OF THE DISCLOSURE The techniques of the present disclosure relate to labels comprising a plurality of respective visual markers. References herein to labels refer to any of physical labels and digital labels. A physical label may comprise a plurality of respective visual markers each encoding a respective code. Visual markers may be arranged in juxtaposition (e.g. side-by-side) and thus capable of being viewed simultaneously. For example, a label may comprise respective visual markers arranged in a grid or row formation and which may each be capable of being simultaneously observed in a same captured image. In some embodiments of the disclosure, a label may be an optically variable device (OVD) label for which an appearance differs depending on a perspective with respect to the label. In some cases, a label may comprise polarization filters and / or an array of lenticular lenses so that an appearance differs depending on a perspective with respect to the label. In some embodiments of the disclosure, a label may be a diffractive optically variable image device (DOVID) comprising diffractive gratings. Holograms are an example of a suitable DOVID that may be used. More generally, the optical properties of an OVD label, such as a holographic label, and the use of a plurality of respective visual markers contribute to providing secure access control. For example, whereas a traditional QR code can be simply photographed using a smartphone or other similar device, for a holographic label comprising a plurality of respective visual markers the optical properties are such that a single viewpoint with respect to the holographic label may not be sufficient to simultaneously observe and decode the visual markers. Moreover, the optical properties of the holographic label are such that a user may be required to scan the holographic label from different viewpoints in order for the visual markers to be correctly scanned. More generally, in some embodiments of the disclosure a physical label comprising a plurality of respective visual markers may be an optically variable device (OVD) label, such as a holographic label. In some embodiments of the disclosure, digital labels may be used for authentication. A digital label displayed by a device, such as a smartphone, tablet or other electronic device may be used for authentication. The digital label may comprise visual markers arranged in juxtaposition (e.g. in a grid or row formation). In some embodiments of the disclosure, a digital label may be displayed in an evolving manner to present respective markers at different times. For example, respective markers may be displayed sequentially, or with at least some of the respective markers displayed in a partially overlapping manner. In some examples, a first marker may be displayed and a second marker may be subsequently displayed and an evolving transition between the first and second markers may be displayed. The techniques of the present disclosure provide a server-based authentication for such labels and provides secure access control for digital content. Figure 1 schematically illustrates a system comprising a server 110 and user device 120 which communicate via a communications network 130. Figure 1 schematically illustrates an example for an individual user device 120. It will be appreciated that the server 110 may be accessible to a number of user devices via the network 130. For ease of explanation, the techniques of the present disclosure will generally be discussed in relation to an individual user device, however, it will be appreciated that any suitable number of user devices may communicate with the server for the techniques discussed herein. More generally, one or more user devices can be used to scan labels and authentication processing can be performed by the server 110 to provide one or more user devices with access to digital content. The server 110 can be accessible by any suitable number of user devices and may in some cases may be accessible via the Internet. The communications network 130 may be any suitable network and may correspond to a local area network (LAN), or multiple connected LANs, or a wide area network (WAN) such as the Internet. More generally, communication between the server 110 and the user device 120 may involve any suitable number of network devices (e.g. hubs, repeaters, bridges, switches, routers). The user device 120 may support any suitable wireless communication such as any of a Wi-Fi®, Bluetooth®, mobile network telecommunications (E.g. 3G, 4G, 5G) and so on. Techniques forexchange of data between servers and client devices are generally known and are not discussed in more detail. In embodiments of the disclosure, the server 110 is operable to receive data from the user device 120 and perform validation with respect to stored authentication data accessible to the server 110. In particular, the server 110 stores authentication data for one or more known labels (e.g. one or more known OVD labels and / or one or more known digital labels). The user device 110 is operable to capture images including a current label and codes decoded from that label are validated with stored codes accessible to the server. The server 110 comprises memory and processing circuitry to perform operations for authenticating a current label (also referred to as a subject label) based on information received from the user device and stored authentication data. The processing circuitry may comprise one or more CPUs, GPUs, DPUs or any combination thereof. The user device 120 may be a general purpose computing device connected to any suitable image sensor (e.g. a webcam), orthe user device 120 may be a computing device comprising an image senor. Examples of suitable user devices include a smartphone device, tablet device, a smartwatch device, and a laptop device among others. In embodiments of the disclosure, the server 110 has access to a set of codes that can be used for label authentication. In some embodiments of the disclosure, the server 110 may have access to a single set of codes for one known label (e.g. one known OVD label, such as a holographic label). Alternatively, in some embodiments of the disclosure the server 110 may have access to a plurality of different sets of codes each corresponding to a different known label. For example, a first set of codes may comprise a plurality of stored codes corresponding to a first known label, and a second set of codes may comprise a plurality of stored codes corresponding to a second known label. In some embodiments of the disclosure, the server 110 may comprise storage circuitry (e.g. any suitable memory such as volatile memory, non-volatile memory or a combination thereof) to store one or more sets of codes for one or more known labels. In some embodiments of the disclosure, the server 110 may communicate with another device (e.g. a storage device) to access a set of codes for a known label. For example, the server 110 may access a set of codes from a network-connected storage such as a datastore accessible to the server. In some examples, a cloud-based datastore may store one or more sets of codes that are accessible to the server 110. More generally, the server 110 comprises processing circuitry operable to access a set of codes for performing label authentication. Figure 2 schematically illustrates an example of a set of codes 200 that may be accessible to the server 110. The set of codes 200 comprises a first code 201 and a second code 202. The first code 201 corresponds to a code associated with a first visual marker of a known label. The second code corresponds to a code associated with a second visual marker of the known label. Figure 3 schematically illustrates an example of another set of codes 300 that may be accessible to the server 110. The set of codes 300 comprises a first code 301, a second code 302, and a third code 303, in which each of the first code, second code and third code corresponds to a different visual marker of a same known label. The codes 201,202, 301, 302, and 303 may comprise one or more of: numbers; letters; symbols and spaces. The codes may be of a same length or at least some of the codes may have different lengths. In some embodiments of the disclosure, a set of codes may comprise a stored code for each visual marker included in known a label. For example, referring to Figure 2 the set of codes 200 may correspond to a known two-marker label having two different visual markers that can be respectively decoded to obtain two different codes. Similarly, the set of codes 300 may correspond to another known three-marker label having three different visual markers that can be respectively decoded to obtain three different codes. More generally, Figures 2 and 3 provide examples of two different sets of codes that may be accessible to the server for authentication with respect to two different known labels. In some embodiments of the disclosure the server may have access to a plurality of respective sets of codes, in which each respective set of codes is different and corresponds to a different known label. Figure 4 schematically illustrates an example of an OVD label 400 comprising two respective visual markers each encoding a respective code. The OVD label 400 comprises two layers 401 and 402 with a respective visual marker on each layer. In the example shown, layer 401 is disposed vertically above layer 402. Figure 4 represents an example of a two-marker OVD label. More generally, in embodiments of the disclosure known OVD labels may comprise two or more layers having different respective visual markers. More generally, OVD labels may be produced with at least some of the layers comprising visual markers. In the techniques of the present disclosure, OVD labels may be attached to products for allowing secure access control to digital content, and potentially also serving as an anti-counterfeiting label for assuring users of product authenticity. Organisations may create digital content for access by users and secure access control for such content can be achieved using the visual markers of the OVD label. For example, digital content such as a web page or downloadable software application may be developed by an organisation for a particular product and / or product type, and secure access control can be achieved by requiring users to scan OVD labels attached to those particular products. Examples of suitable products may include bottles, garments, vehicles, presentation boxes for jewellery and so on. Still referring to Figure 4, the OVD label 400 can be scanned (e.g. using an image sensor of a device such as a smartphone) and one or both of the scanning device and the OVD label 400 can be repositioned in relation to the other to allow scanning of each of the visual markers. For example, the OVD label 400 may be arranged on a flat surface and the scanner (e.g. smartphone) may be repositioned by a user to capture images including the respective visual markers. Figure 4 provides an example of a OVD label having two different visual markers. More generally, in embodiments of the disclosure a label (such as an OVD label, or a label with markers arranged in juxtaposition and each capable of being simultaneously viewed, or a digital label) comprises at least two visual markers. A label may use one or more different marker types (e.g. linear bar codes, QR codes or other marker types). In some cases, each of the visual markers for a label may correspond to a same visual marker type. In other words, a single type of visual marker may be used for a label. In some cases, a label may comprise a first plurality of visual markers each corresponding to a first visual marker type, and a second plurality of visual markers each corresponding to a second visual marker type. In some embodiments of the disclosure, a label may use two or more QR codes as the visual markers. Figure 5 schematically illustrates an example of two QR codes 501 and 502 that may be used as visual markers for a label. For example, the QR code 501 may be provided on the layer 401, and the QR code 502 may be provided on the layer 402. Hence, Figure 5 represents an example of two QR codes that may be observed in images captured for the OVD label 400. For example, the QR code 501 may be observable in an image captured from a first viewpoint with respect to the OVD label 400, and the QR code 502 may be observable in another image captured from a different viewpoint with respect to the OVD label 400. In some cases, a label may use two or more different types of visual marker. For example, a combination of one or more QR codes and one or more linear barcodes may be used. For example, a QR code may be provided on the layer 401, and a linear barcode may be provided on the layer 402. More generally, labels may have any of the arrangements already discussed above and the server 110 can store one or more sets of codes corresponding to such labels. In some embodiments of the disclosure the server 110 may store a respective set of codes corresponding to a known label, in which the stored codes of the set of codes each correspond to a different respective visual marker forthat known label. In some embodiments of the disclosure, the stored codes of a respective set of codes each correspond to a different respective visual marker having a same visual marker type. For example, the stored codes may each correspond to a QR marker type. In some embodiments of the disclosure, the stored codes of a respective set of codes comprise at least two stored codes corresponding to different visual marker types. Put differently, one or more of the stored codes may correspond to a first marker type (e.g. QR marker type) and one or more of the stored codes may correspond to a second marker type (e.g. linear barcode marker type). More generally, visual markers of a label can be observed in captured images including a label and decoded to obtain codes to be used for validation with a set of two or more store codes accessible to the server. Optionally, in addition to using visual markers, serial numbers may also be used for authentication. This is discussed in more detail later. Decoding of visual markers included in captured images may be performed by the user device and / or the server. In some examples, the user device decodes a visual marker (e.g. a QR code, linear barcode or other similar marker for encoding information) to obtain a code associated with the visual marker. In other examples, the user device may communicate captured images (or portions of captured images corresponding to visual markers) for processing by the server to obtain a code associated with the visual marker. Accordingly, operations to decode a visual marker to obtain a code may be performed by any of the user device and the server device. In some examples, the user device may be solely responsible for decoding visual markers and communicating obtained codes for use by the server. In some examples, a QR scanning program may be run for decoding respective QR codes to obtain respective codes. Such programs can be installed on user devices such as smartphone devices, tablet devices and smartwatch devices among others. Embodiments of the disclosure provide a server (e.g. 110) for authenticating a label comprising a plurality of respective visual markers each encoding a respective code, wherein the server is configured to: receive a label authentication request for authenticating the label (e.g. 400, 600a, 600b) from the user device 120; access a set of codes (e.g. 200, 300), wherein the set of codes comprises at least two stored codes; run a label authentication process in which at least a first code and a second code respectively decoded from respective visual markers of the label are to be validated with the set of codes; and provide the user device (e.g. 120) with access to at least one of a web service and a downloadable software application in dependence on whether at least the first code and the second code are validated with the set of codes. The server is operable to run the label authentication process to perform validation of at least two codes decoded from a current label with a set of codes comprising at least two stored codes for a known label. The processing circuitry is operable to authenticate the current label in dependence on whether at least two codes obtained from the current label are validated with the set of codes. Therefore, authentication of the current label is conditional on at least two codes decoded from the current label being validated with at least two different stored codes of the set of codes. Validation of a single code decoded from the current label with a single stored code of the set of codes is not sufficient for authentication. The requirement for validation of at least two stored codes contributes to providing secure access control. In response to at least two codes obtained from the current label being validated with the set of codes, the server is operable to provide the user device with access to at least one of a web service and a downloadable software application. In the techniques of the present disclosure, a set of codes accessible to the server comprises N stored codes, where N is 2 or more. In some embodiments of the disclosure N may be a value in the range 2 to 10. For example, a set of codes accessible to the server may comprise 2 stored codes corresponding to a known two-marker label (e.g. OVD label 400 discussed previously with respect to Figure 4). In other examples, a set of codes accessible to the server may comprise 3 stored codes corresponding to a known three-marker label (e.g. similar to OVD label 400 but with an additional layer including a visual marker). More generally, a set of codes accessible to the server may comprise N stored codes corresponding to a known N-marker label. An example will now be discussed in which the server is operable to validate a current label which is a two-marker holographic label with a set of codes comprising two stored codes for a known two-marker holographic label. A user device can be operable to decode two codes from two respective visual markers of the current holographic label, and the server can be operable to run a label authentication process in which the two codes are validated with the set of codes. In response to the label authentication process validating the two codes with the set of codes, the server is operable to provide the user device with access to at least one of a web service and a downloadable software application. In response to the label authentication process not validating the two codes with the set of codes (e.g. only validating one of the two codes or validating neither of the two codes), the server is operable to deny access. It will be appreciated that the same principles may be applied for a set of codes comprising more than two stored codes. For example, a set of codes may comprise 10 stored codes corresponding to a known ten-marker label (e.g. a known ten-marker holographic label). Authentication in this case may require that at least two codes decoded from a current label are validated with the set of codes. Alternatively, a more rigorous condition may be required such as at least three codes decoded from a current label are validated with the set of codes. In some cases, authentication may require validation for each stored code of the set of codes (or a subset of the stored codes corresponding to a number in the range 2 up to the number of stored codes). The techniques of the present disclosure require validation for at least two stored codes of a set of codes, and as discussed in more detail later a more strict validation condition may be specified. Due to the optical properties of an OVD label, respective markers are generally observed at different times. For example, a current OVD label may comprise two markers (e.g. two QR codes) and a first marker may be observed in a captured image and decoded, and another marker may be observed in a subsequently captured image and decoded. For example, the user may be required to rotate the user device relative to the OVD label to observer different visual markers in turn. In some examples, each of the decoded codes to be validated with the set of codes may be received by the server 110 prior to running the label authentication process. In other words, codes may firstly be collected and then the server may run the authentication process. In some examples, the user may be required to have scanned at least two respective visual markers before the server starts the label authentication process. Alternatively, in some examples in response to receiving a first code decoded from a current label, the server may start the label authentication process to validate the first code with the set of codes, and a second code may be received during the label authentication process and validated with the set of codes. Hence more generally, the label authentication process may sequentially validate codes with the set of codes according to an order in which they are received. Moreover, as part of the label authentication process, a first code decoded from the first marker may be firstly validated with the set of codes, and subsequently a second code decoded from another marker may be validated with the set of codes. Continuing with the example of a set of codes comprising two stored codes for a known two-marker holographic label, the server 130 may run the label authentication process to validate a first code decoded from a current holographic label with the set of codes. The first code may potentially correspond to any of the two visual markers. More generally, that is to say that a marker that is detected first for a current holographic label comprising N markers can potentially be random with respect to the markers forthat current holographic label. The server can be operable to compare the first code with a respective stored code of the set of codes and validate the first code with the respective stored code in dependence on whether the first code matches the respective stored code. If there is a match, then the first code is validated with the set of codes, and the server 130 can proceed to perform validation for a second code (also referred to as a next decoded code) decoded from the current holographic label with the set of codes. If the first code does not match the respective stored code, then the server 130 can proceed to compare the first code with another respective stored code of the set of codes and validate the first code with the another respective stored code in dependence on whether the first code matches the another respective stored code. If the first code does not match the another respective stored code (indicating that the current label is not the same as the known label), then the server 130 determines that the first code is not validated with the set of codes. In this case (given that the set of codes comprises a code for each marker of the known two-marker holographic label) the server can determine, based on just the first code, that the current holographic label is not to be authenticated and accordingly the label authentication process can be ended (or restarted). If the first code is validated with the set of codes, then server 130 can proceed to perform validation for the second code with the set of codes. In this case, the server can be operable to compare the second code with a remaining stored code (i.e. the remaining stored code not validated with the first code) of the set of codes. If there is a match, then the second code is validated with the set of codes and the server is operable to provide the user device with access to at least one of a web service and a downloadable software application. If the second code does not match the remaining stored code, then the server is operable to determine that the current holographic label is not to be authenticated and accordingly the label authentication process can be ended (or restarted). It will be appreciated that the techniques discussed above with respect to a known two-marker holographic label and a set of codes comprising two stored codes can be similarly performed for a known N marker label and a set of codes comprising N stored codes. For example, a known label may comprise three respective visual markers each encoding a respective code (i.e. a first code, a second code and a third code), and a set of codes may comprise three stored codes (i.e. a first stored code, a second stored code and a third stored code) and the sever may run the label authentication process to: validate a first code obtained from a subject label with the set of codes; validate a second code obtained from the subject label with the set of codes; and authenticate the subject label in response to the first and second codes being validated with the set of codes. Optionally, the server may instead run the label authentication process to: validate a first code obtained from a subject label with the set of codes; validate a second code obtained from the subject label with the set of codes; validate a third code obtained from the subject label with the set of codes; and authenticate the subject label in response to the first, second and third codes being validated with the set of codes. More generally, in the techniques of the present disclosure the server is operable to authenticate a subject label in response to at least two codes being validated with a set of N codes, and optionally further codes may be validated for enhancement of security. In some examples, a user may manually instruct the user device 120 to transmit the label authentication request to the server 110. For example, a user may use the user device to access a web browser and navigate to a web service for the label authentication. For example, the web browser may display an interface element and the user may select the interface element to request label authentication. Alternatively, the server 110 may receive the label authentication request from the user device in response to the user device decoding a first detected marker of the label. The user device may decode a detected visual marker to obtain an address (e.g. web address) for a web application on the server apparatus for running the label authentication process. It will be appreciated that for a label comprising a plurality of respective visual markers, any of the plurality of respective visual markers may potentially be detected first and decoded by the user device. For example, referring to Figure 4, a visual marker on any of the two layers 401 and 402 may be detected first. In embodiments of the disclosure, any of the plurality of respective visual markers can be decodable to obtain an address for a service on the server 110 for running the label authentication process. For example, any of the plurality of respective visual markers can be decodable to obtain an address such as a uniform resource locator (URL) for the server. Accordingly, visual markers may be decoded to obtain an address and also a code to be validated with a set of codes accessible to the server. In some embodiments of the disclosure, the server is operable to run a web application to perform the label authentication process. The web application can be run in a web browser and an address (e.g. URL) for the web application can be obtained from a first detected marker of a label. Hence, a user device (e.g. smartphone) can scan a visual marker of a label to obtain an address (e.g. URL) and selection by the user (e.g. of an icon on a display of the user device) can cause the user device to send a label authentication request to the server to start running the web application. In some examples, in response to scanning the visual marker the user device may automatically send the label authentication request to the server. The server 110 may be a web server operable to store web server software. In some examples, the server may be a web server hosting a website for authentication of potentially multiple different labels. Moreover, multiple different labels may have markers that can be decoded to obtain a same URL for the web server such that the web server can act as a central service for authenticating labels and providing access to digital content. In response to authenticating labels, the web server may provide access to digital content hosted by the web server or by another server (e.g. another web server). In some examples, authentication of a t label with respect to a first set of codes may result in the web server providing access to a first web service and / or a first downloadable software application, whereas authentication of another label with respect to a second set of codes may result in the web server providing access to a second web service and / ora second downloadable software application. In some examples, the server 110 may be a web server hosting a website and in response to authenticating a label the web server may provide access to a respective web page hosted by that web server, in which the respective web page may be exclusively accessible via label authentication. The web page may optionally comprise a link selectable by a user for downloading a software application. In some examples, a web page and / or downloadable software application may be exclusively accessible via label authentication, or may be exclusively accessible via label authentication and a password secured registered user account. In some examples, a downloadable software application may correspond to a mobile application operable to run on a mobile device. In some examples, a downloadable software application may correspond to a full version of a downloadable software application or a lightweight version of that downloadable software application providing a subset of the functions of the full version without the need for a full download (e.g. an Apple® App Clip or an Android® Instant App). In some examples, the server 110 may be a web server hosting a website and may have access to a single set of codes corresponding to a single known label associated with at least one of a predetermined product, a predetermined product type, and a predetermined product line associated with an organisation. For example, an organisation may produce a given product and may attach a known OVD label to that given product, and a user’s user device can be used to scan the OVD label to access a website for the organisation to complete a label authentication process and subsequently access a web page and / or downloadable software application forthat organisation. More generally, the label authentication process may be implemented as web application running on a server for an organisation for allowing authentication of OVD labels and directing the user device to resources hosted by the server or another server associated with the organisation conditional on label authentication. For example, in response to scanning an OVD label on an item of clothing and completing a label authentication process, the user device may be able to access a webpage for an organisation which may be exclusively accessible using the OVD label. Optionally, the same webpage may also be accessible via a password secured registered user account for the website associated with that webpage. More generally, in some embodiments of the disclosure the server 110 may have access to a plurality of respective sets of codes corresponding to a plurality of known labels. The server 110 may perform a label authentication process for a current label with respect to any of the sets of codes and in response to authenticating provide access to a web service and / or software application that may be hosted by the server or another device. For example, a first code decoded from a first detected visual marker of a current label may be compared with any of the plurality of sets to identify a matching stored code, and in response to identifying a set including a matching stored code the label authentication processing can be continued with respect to that set. The first code may be compared with any of the sets by selecting sets either randomly or according to a predefined order. In some examples, a serial number may be included in the label and serial number matching may be performed prior to visual marker code authentication to determine a respective set of codes from the plurality of respective sets of codes. For example, a set of codes may comprise two or more codes and may be stored in association with a serial number, and comparison of a serial number obtained from a current label with serial numbers in the respective sets of codes may firstly be performed to select a respective set of codes. More generally, in some embodiments, in addition to validation of at least two codes from a label with a set of codes accessible to the server, validation of a serial number from the label with a serial number associated with the set of codes may be an additional requirement for authentication. The order in which the validations are performed is not particularly limited and may depend on the order in which such features are observed by the user device. The serial number may be provided in a form which is capable of being viewed more readily than the visual markers. For example, the label may comprise a portion surrounding an OVD region (e.g. holographic material), and the serial number may be printed on the surrounding portion and directly viewable as a regular 2D image. Accordingly, the serial number may be firstly detected and validated, and the visual markers may be subsequently detected and validated. In some embodiments of the disclosure, the server 110 may have access to a plurality of respective sets of codes, in which each respective set of codes corresponds to a different known label, and in which each set of codes is stored in association with data for accessing a different web service and / or a different downloadable software application. For example, a first set of codes may correspond to a first label associated with products from a first organisation and the set of codes may be stored in association with data such as a URL or other similar identifier for accessing a web service and / or a downloadable software application forthat organisation. In a similar manner, a second set of codes may correspond to a second label associated with products from another organisation and the second set of codes may be stored in association with data such as a URL or other similar identifier for accessing a web service and / or a downloadable software application forthat other organisation. Of course, as an alternative to this one or more of the visual markers for a label may instead be decoded to obtain an address (e.g. URL) fora web page hosted by a server of that organisation, in which the server is operable to access a single set of stored codes for authentication processing and providing access to a single web service hosted by that server or another server associated with the same organisation. In some embodiments of the disclosure, a combination of a plurality of visual markers and a serial number may be used. Figures 6a and 6b schematically illustrate example of two OVD labels 600a and 600b. The labels 600a and 600b both comprise the same visual markers. That is layer 601 and layer 602 are the same for both labels 600a and 600b. For example, layer 601 may include the QR code 501 and layer 602 may include the QR code 502. The labels 600a and 600b differ in that layer 603 includes a serial number for label 600a, whereas layer 604 includes a different serial number for label 600b. The serial numbers may take any suitable form. For example, the serial numbers may be numeric or alphanumeric serial numbers. More generally, a serial number may comprise any of: numbers, letters, typographical symbols, and / or spaces. Whereas the visual markers on the layers 601 and 602 are decoded to obtain a code, the serial numbers do not require such decoding. A serial number can be observed in a captured image and software, such as an optical character recognition (OCR) program (e.g. installed on a smartphone) can be used to extract the serial number. Figures 6a and 6b thus provide examples of two-marker OVD labels further comprising a serial number. Whilst Figures 6a and 6b show an example in which the serial number is provided in an upper layer of the label relative to the layers used for visual markers, it will be appreciated that the ordering of the layers is not particularly limited and can take any suitable form. The server 110 can be operable to access a set of codes stored in association with a plurality of different serial numbers each corresponding to a different known label, wherein each of the plurality of different serial numbers is stored in association with data for providing access a different web service and / or a different downloadable software application. For example, the set of codes 200 may comprise the first code 201 corresponding to the visual marker on the layer 601 and the second code 202 corresponding to the visual marker on the layer 602. Accordingly, the server can be operable to use the set of codes 200 for validation of any of the label 600a and 600b. Further to this, in response the set of codes 200 being validated, the server can be operable to match a serial number obtained from a label with a respective serial number associated with the set of codes 200. The serial numbers for the layers 603 and 604 may each be stored in association with the set of codes 200 and may each be stored in association with data for providing access to a different web service and / or a different downloadable software application. Therefore, in response the set of codes 200 being validated, serial number matching can be performed to match the serial number obtained from the label with a respective one of the serial numbers associated with the set of codes and the server can provide access to the web service and / or downloadable software application associated with the matched serial number. In some examples, one or more look-up tables may be used to store a set of codes, a plurality of associated serial numbers and data for accessing web services and / or downloadable software application. References to storing data in association may use any suitable data structure such as one or more tables. Use of OVD labels, such as holographic labels, having the same visual markers and at least one different serial number may be useful in that OVD labels can be manufactured using a partially shared process (i.e. with the same visual markers) and differing serial numbers can be applied for allowing access to different digital content. Furthermore, the use of a set of codes stored in association with a plurality of different serial numbers may be useful in that the server may have access to a single set of codes for performing label authentication and in response to validation of the set of codes, the server can perform serial number matching to identify a web service (and / or software application) from a plurality of different web services (and / or software applications) and provide access for that web service (and / or software application). Hence, the server may access a set of codes stored in association with a plurality of different serial numbers, in which each serial number corresponds to a serial number for a different known label having visual markers corresponding to the set of codes. Accordingly, the server can be operable to perform the label authentication process to perform validation with respect to the set of codes and, in response to at least a first code and a second code obtained from the label being validated with the set of codes, the server can be operable to: match a serial number obtained from the label with a respective one of the plurality of different serial numbers; and provide access to at least one of a web service and a downloadable software application stored in association with the respective one of the plurality of different serial numbers. Accordingly, stored codes corresponding to visual markers may be used by the server for authentication purposes, and serial numbers may be used by the server for directing authorised users to specific content. As explained above, the server 110 is operable to provide a user device with access to at least one of a web service and a downloadable software application in dependence on whether at least two codes are validated with a set of codes. In some embodiments of the disclosure, the server may impose further conditions for successful authentication. In some embodiments of the disclosure the server is operable to authenticate a current label in dependence on whether a validation condition is met for the set of codes, in which the validation condition defines at least one of: a threshold number of stored codes to be validated for the set of codes; and a preset time duration for the threshold number of stored codes to be validated for the set of codes. A validation condition may be specified in advance by a user and / or may be updated as needed. The threshold number of stored codes to be validated may be set to a value in the range 2 to N, where N is the number of stored codes included in the set of codes. Generally, whilst the requirement for two stored codes to be validated provides secure access control, a requirement for more than two stored codes to be validated can enhance security. For example, for a set of codes comprising 10 codes, the threshold number may be set to any value in the range 2 to 10. For a set of codes comprising 5 codes, the threshold number may be set to any value in the range 2 to 5. A larger threshold value generally requires a longer authentication processing in that a user is required to successfully scan a larger number of markers, however this also contributes to enhancing security. An admin user may freely decide on a threshold to be used. The threshold can be updated as needed. For example, when firstly releasing a product and / or for highly sensitive digital content, it may be more desirable to have higher levels of security and a threshold may be selected accordingly, whereas for other products and / or less sensitive digital content it may be more suitable to use a different threshold. Moreover, in the case of the server accessing potentially multiple sets of stored codes, different validation conditions (e.g. different thresholds for the number of stored codes to be validated and / or different preset time durations) may be specified for different sets of stored codes according to a level of desired security. More generally, a set of codes accessible to the server 110 may comprise N stored codes each corresponding to a different respective visual marker of the label, and the threshold number of stored codes to be validated may be set to any value in the range 2 to N. The validation condition can be updated in response to a user input to allow a change to the threshold number of stored codes to be validated. The validation condition may also specify a preset time duration for the threshold number of stored codes to be validated for the set of codes. The preset time duration may have any suitable value and may be set differently for different use cases. A time period of suitable duration for scanning two visual markers of a label may be set as the preset time duration. In the event that the preset time duration expires before validation of the threshold number, the label authentication process may end, or the label authentication process may automatically restart and this may continue in a looping fashion until the threshold number of stored codes is validated within the preset time duration. In some examples, the validation condition may specify a preset time duration between scanning of successive visual markers. For example, the validation condition may specify a time period such as 5 seconds between scanning one visual marker and a next visual marker and failure to do so may trigger the label authentication process to end or restart. More generally, the validation condition can specify at least one of a preset time duration for successfully authenticating a threshold number of stored codes and / or a preset time duration for scanning successive visual markers and this can protect against attempts by users to gain access via non-genuine means. In some embodiments of the disclosure, the server is operable to end or restart the label authentication process in response to one or more predetermined conditions. The one or more predetermined conditions may comprise at least one of: i) at least one code decoded from the label being invalid for the set of codes; ii) a tracked motion associated with the user device exceeding a threshold motion for the user device during the label authentication process; and iii) the label disappearing, or at least partially disappearing, from a sequence of images captured by the user device during the label authentication process; iv) detection of one or more objects in the sequence of images captured by the user device during the label authentication process; v) detection of at least one visual marker external to the label in the sequence of images captured by the user device during the label authentication process; and vi) absence of detection of at least one of a group of predetermined colours in the sequence of images captured by the user device in a predetermined time duration during the label authentication process. Accordingly, detection of one more predetermined conditions during the authentication process can be used to automatically end or restart the label authentication process. For item i), presence of at least one invalid code can indicate that the current label is not the same as the known label. For item ii), tracked motion exceeding a threshold motion may be indicative of suspicious user behaviour such as the user device being manipulated by the user to capture images of a number of different markers at different locations (i.e. not part of a same label). A tracked motion indicative of a change in orientation of the user device by at least a threshold angle and / or tracked motion indicative of a change in position of the user device by at least a threshold distance may trigger an end or restart of the label authentication process. For example, rotation of the user device by e.g. at least 90 degrees with respect to any of an X, Y or Z axis of a Cartesian coordinate system may be used for this purpose. Alternatively or in addition, displacement of the user device from an initial position by e.g. at least 1.5 metres may also be used for this purpose. One or both of an inertial measurement unit (IMU) and camera of the user device may be used for tracking motion of the user device. For example, motion data generated by the IMU may be made accessible to the server for comparison with one or more thresholds. More generally, one or more thresholds can be set so that motion associated with suspicious behaviour can trigger an end or restart of the label authentication processing. In some examples, wireless signal strength (e.g. Wi-Fi® and / or Bluetooth® signals) may be analysed for detecting motion of a user device. In some cases, motion associated with objects within images captured by the user device may be detected and object motion within the images exceeding a threshold motion may trigger an end or restart of the label authentication process. For example, movement of one or more objects across the field of view may be detected and certain motions may trigger ending or restating of the label authentication process. For item iii), movement of one or both of the user device and the label resulting in the label moving wholly or at least partially outside a camera field of view may be another indicator of suspicious user behaviour (e.g. a user attempting to use multiple respective labels in combination). Put differently, the current label may be required to remain fully within the view of the camera during the label authentication process. In some examples, the label may have a substantially square or circular area when viewed from above, and a threshold proportion of the area may be specified (e.g. 90%) such that at least the threshold proportion of the area may be required to remain fully within the view of the camera during the label authentication process. For item iv), detection of at least one object (other than the label) in the sequence of images may also trigger an end or restart of the label authentication process. For item v), image analysis techniques may be employed to detect an image region corresponding to a label in a captured image. Detection of visual markers from two spatially separated image regions may also trigger an end or restart of the label authentication process. For item vi), whilst viewing an OVD label (e.g. holographic material_, changes in the viewing perspective can typically be expected to result in observation of a group of predetermined colours. Specifically, a rainbow spectrum (or at least a partial rainbow spectrum) can be observed. Specifically, colours in the range red through to blue can be expected to be observed. Absence of one or more colours in the group of predetermined colours in the sequence of images captured by the user device in a predetermined time duration can be indicative of use of a current label that may in fact not be an OVD label (such as a holographic label). For example, the group of predetermined colours may comprise red, orange, yellow, green and blue. Captured images can be analysed and colours therein classified, and in response to absence of at least one predetermined colour for at least a predetermined time duration the server can end or restart the label authentication process. Embodiments of the disclosure include a system comprising the server 110 and the user device 120, in which the user device is one of a smartphone device, a tablet device, a smartwatch device, and a laptop device. Embodiments of the disclosure include a system comprising the server 110, the user device 120, and a label (e.g. 400) comprising a plurality of layers, wherein different respective visual markers are embedded on respective layers. Figure 7 is a schematic flowchart illustrating a computer-implemented method for authenticating a label comprising a plurality of respective visual markers each encoding a respective code. The method 700 comprises: receiving (at a step 710) a label authentication request for authenticating the label from a user device; accessing (at a step 720) a set of codes, wherein the set of codes comprises at least two stored codes; performing (at a step 730) a label authentication process in which at least a first code and a second code respectively decoded from respective visual markers of the label are to be validated with the set of codes; and providing (at a step 740) the user device with access to at least one of a web service and a downloadable software application in dependence on whether at least the first code and the second code are validated with the set of codes. Figure 8 is a schematic flowchart illustrating another computer-implemented method. The method 800 comprises: a user device: detecting (at a step 810) a first visual marker of the label; decoding (at a step 820) the first visual marker to obtain an address; and communicating (at a step 830) the label authentication request for authenticating the label, the label authentication request being communicated to a server identified based on the address; a server: receiving (at a step 840) the label authentication request for authenticating the label from the user device; accessing (at a step 850) a set of codes, wherein the set of codes comprises at least two stored codes; performing (at a step 860) a label authentication process in which at least a first code and a second code respectively decoded from respective visual markers of the label are to be validated with the set of codes; and providing (at a step 870) the user device with access to at least one of a web service and a downloadable software application in dependence on whether at least the first code and the second code are validated with the set of codes. The method 700 represents a computer-implemented method performed by the server. The method 800 represents a computer-implemented method performed by a system comprising the server and the user device. Figure 9 is a schematic diagram illustrating an example of flow of data in a system comprising the server 110 and the user device 120. At a step 910, the user device detects one or more visual markers in one or more images including a label comprising a plurality of respective visual markers each encoding a respective code. At a step 920, the user device sends a label authentication request for requesting authentication of the label. At a step 930, the server performs a label authentication process. The step 930 may comprise validating both a first code and a second code decoded from the label with a set of codes accessible to the server. At a step 940, the server determines whether at least two codes obtained from the label have been validated with the set of codes. If there are at least two validations, the server proceeds to the step 950 and provides access to at least one of a web service and a downloadable software application for the user device. At the step 960 the user device then accesses the web service and / or the downloadable software. For example, steps 950 and 960 may comprise the server sending data (e.g. one or more links, such as URLs or othersimilar data) to the user device. At the step 940, if there are not at least two validations, the server returns to the step 930 and continues the label authentication process. For example, visual markers may be sequentially detected and decoded by the user device, and codes may be sent from the user device to the server in an ongoing manner during the label authentication process. Hence, the step 930 may firstly be performed to validate a first code with the set of codes and the server may wait for a next code to be received and then validate the next code with the set of codes. Hence, as shown in Figure 9 the server may start the label authentication process in response to the label authentication request and may run the label authentication process until at least two validations are achieved. The server may end of restart the label authentication process using any of the conditions previously discussed. Hence, whilst not shown in Figure 9, the server may perform a step of checking for one or more conditions and may end or restart the label authentication process. Figure 9 represents an example of flow of data for authentication of a current label, in which the current label may be a physical label (e.g. OVD label) or a digital label. In the case of a digital label, another device (e.g. another user device) may display the digital label by displaying respective visual markers each encoding a respective code in sequence and the user device 120 can scan the display images to detect and decode the visual markers. For example, a sequence of evolving visual markers may be displayed with markers either being displayed such that a display of one marker ends before starting to display a next marker or being displayed such that transitions between markers are displayed. More generally, a digital label with evolving markers may be used in some cases. In some examples, a digital label may be displayed by a device such as another user device (e.g. smartphone device, tablet device and so on) or more generally any suitable electronic display such as a digital display tag (e.g. LCD tag). The invention may also broadly consist in the parts, elements, steps, examples and / or features referred to or indicated in the specification individually or collectively in any and all combinations of two or more said parts, elements, steps, examples and / or features. In particular, one or more features in any of the embodiments described herein may be combined with one or more features from any other embodiment(s) described herein. When used in this specification and claims, the terms "comprises" and "comprising" and variations thereof mean that the specified features, steps or integers are included. The terms are not to be interpreted to exclude the presence of other features, steps or components. It will be appreciated that example embodiments can be implemented by computer software operating on a general purpose a computing system. In these examples, computer software, which when executed by a computer, causes the computerto carry out any of the methods discussed above is considered as an embodiment of the present disclosure. Similarly, embodiments of the disclosure 5 are provided by a non-transitory, machine-readable storage medium which stores such computer software. Although certain example embodiments of the invention have been described, the scope of the appended claims is not intended to be limited solely to these embodiments. The claims are to be 10 construed literally, purposively, and / or to encompass equivalents. It will also be apparent that numerous modifications and variations of the present disclosure are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the disclosure may be practised otherwise than as specifically described herein. 15

Claims

1. A server for authenticating a label comprising a plurality of respective visual markers each encoding a respective code, wherein the server is configured to:receive a label authentication request for authenticating the label from a user device; access a set of codes, wherein the set of codes comprises at least a two stored codes;perform a label authentication process in which at least a first code and a second code respectively decoded from respective visual markers of the label are to be validated with the set of codes; andprovide the user device with access to at least one of a web service and a downloadable software application in dependence on whether at least the first code and the second code are validated with the set of codes.

2. The server according to claim 1, wherein the set of codes is stored in association with data for providing access to at least one of the web service and the downloadable software application.

3. The server according to claim 2, wherein the data for providing access to at least one of the web service and the downloadable software application comprises at least one of an address for the web service and an address for the downloadable software application.

4. The server according to any preceding claim, wherein the set of codes comprises stored codes each corresponding to a different respective visual marker of a known label.

5. The server according to claim 4, wherein the set of codes comprises N stored codes, wherein N is a value in the range 2 to 10.

6. The server according to claim 4 or claim 5, wherein the stored codes of the set of codes each correspond to a different respective visual marker having a same visual marker type.

7. The server according to claim 4 or claim 5, wherein the stored codes of the set of codes comprise at least two stored codes corresponding to different visual marker types.

8. The server according to any one of claims 4 to 7, wherein the set of codes is stored in association with at least one serial number corresponding to a serial number for the known label, and the server is configured to validate a serial number obtained from the label with the at least one serial number.

9. The server according to any preceding claim, wherein the set of codes is stored in association with a plurality of different serial numbers each corresponding to a different known label, wherein each of the plurality of different serial numbers is stored in association with data for providingaccess to a different web service and / or a different downloadable software application, and wherein in response to at least the first code and the second code being validated with the set of codes, the server is configured to:validate a serial number obtained from the label with a respective one of the plurality of different serial numbers; andprovide the user device with access to at least one of a web service and a downloadable software application stored in association with the respective one of the plurality of different serial numbers.

10. The server according to any preceding claim, wherein the server is configured to run the label authentication process and authenticate the label in dependence on whether a validation condition is met for the set of codes.

11. The server according to claim 10, wherein the validation condition defines at least one of: a threshold number of stored codes to be validated for the set of codes; anda preset time duration for the threshold number of stored codes to be validated for the set of codes.

12. The server according to claim 11 when dependent on claim 4, wherein the threshold number of stored codes to be validated is 2, or the threshold number of stored codes to be validated is greater than 2.

13. The server according to any preceding claim, wherein the server is configured to end or restart the label authentication process in response to one or more predetermined conditions, wherein the one or more predetermined conditions comprises at least one of:determining at least one code decoded from the label as being invalid for the set of codes;a tracked motion associated with the user device exceeding a threshold motion for the user device during the label authentication process;the label disappearing, or at least partially disappearing, from a sequence of images captured by the user device during the label authentication process;detection of one or more objects in the sequence of images captured by the user device during the label authentication process;detection of at least one visual marker external to the label in the sequence of images captured by the user device during the label authentication process; andabsence of detection of at least one of a group of predetermined colours in the sequence of images captured by the user device in a predetermined time duration during the label authentication process.

14. The server according to any preceding claim, wherein the server is configured to access a plurality of respective sets of codes, in which each set of codes is stored in association with data for accessing a different web service and / or a different downloadable software application.

15. The server according to any preceding claim, wherein the server is configured to run a web application to perform the label authentication process.

16. The server according to claim 15, wherein the user device is operable to decode a first detected visual marker of the label to obtain a web address for the web application.

17. The server according to claim 16, wherein any of the server and the user device is configured to decode one of the first detected visual marker and a second detected visual marker of the label to obtain the first code to be validated with the set of codes.

18. The server according to any preceding claim, wherein the server is configured to run the label authentication process to sequentially validate a plurality of codes decoded from sequentially detected visual markers of the label with the set of codes.

19. The server according to any preceding claim, wherein the label is one of an optically variable device “OVD” label and a digital label.

20. The server according to claim 19, wherein the label is a digital label and respective visual markers each encoding a respective code are to be displayed in sequence.

21. A system comprising:the server according to any preceding claim; andthe user device, wherein the user device is one of: a smartphone device, a tablet device, a smartwatch device, and a laptop device.

22. The system according to claim 21, further comprising the label, wherein the label comprises a plurality of layers, wherein different respective visual markers are embedded on respective layers.

23. A computer-implemented method for authenticating a label comprising a plurality of respective visual markers each encoding a respective code, the method comprising:receiving a label authentication request for authenticating the label from a user device; accessing a set of codes, wherein the set of codes comprises at least two stored codes;performing a label authentication process in which at least a first code and a second code respectively decoded from respective visual markers of the label are to be validated with the set of codes; andproviding the user device with access to at least one of a web service and a downloadable software application in dependence on whether at least the first code and the second code are validated with the set of codes.

24. The computer-implemented method according to claim 23, further comprising:detecting, by the user device, a first visual marker of the label;decoding, by the user device, the first visual marker to obtain an address; andcommunicating, by the user device, the label authentication request for authenticating the label, the label authentication request being communicated to a server identified based on the address.

25. A computer program comprising instructions which, when executed by a computer, cause the computer to perform the method according to any one of claims 23 and 24.

Citation Information

Patent Citations

  • Two-dimensional code authentication method, device and equipment and storage medium

    CN110837747A

  • Authentication system, method and label

    GB2524558A

  • Information processor and method, information processing system, recording medium and program

    JP2005182295A

  • Coaligned bar codes and validation means

    US20060022059A1

  • Dynamic bar code display apparatus, dynamic bar code generation method, and storage medium generation dynamic bar code

    US20060054695A1