Anonymous collection of data from a group of authorized members
A system with multiple cameras and sensors, along with a secure data collection mechanism, addresses data protection and fraud detection in ADAS and AV systems, enhancing their security and reliability for autonomous operations.
Patent Information
- Application Number
- JP2024059833
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-01-19
- Filing Date
- 2024-04-02
- Publication Date
- 2024-12-17
- Estimated Expiration
- 2041-01-19
Smart Images

Figure 0007600511000272 
Figure 0007600511000273 
Figure 0007600511000274
Abstract
Description
[Background technology]
[0001] (Priority Claim) This application claims the benefit of priority to U.S. Provisional Application No. 62 / 963,047, filed January 19, 2020, which is incorporated by reference in its entirety.
[0002] Advanced driver assistance systems (ADAS) and autonomous vehicle (AV) systems use cameras and other sensors along with object classifiers designed to detect specific objects within the environment of a vehicle traveling on a road. Object classifiers are designed to detect predefined objects and are used within ADAS and AV systems to control the vehicle or alert the driver based on their location, the type of object detected, etc.
[0003] As ADAS and AV systems progress toward fully autonomous operation, it is beneficial to protect the data generated by these systems. Summary of the Invention
[0004] The following detailed description refers to the accompanying drawings. Whenever possible, the same reference numbers are used in the drawings and the following description to refer to the same or similar parts. Although some exemplary embodiments are described herein, modifications, adaptations, and other implementations are possible. For example, substitutions, additions, or modifications may be made to the components shown in the drawings, and the exemplary methods described herein may be modified by substituting, rearranging, deleting, or adding steps to the disclosed methods. Therefore, the following detailed description is not limited to the disclosed embodiments and examples.
[0005] The disclosed embodiments provide systems and methods that may be used as part of or in combination with autonomous driving / driving and / or driver assistance technology features. Driver assistance technology refers to any suitable technology that assists a driver in navigating and / or controlling a vehicle, such as forward collision warning (FCW), lane departure warning (LDW), and traffic sign recognition (TSR), as opposed to fully autonomous driving. In various embodiments, the system may include one, two, or more cameras that may be mounted on the vehicle and an associated processor that monitors the vehicle's environment. In further embodiments, additional types of sensors may be mounted on the vehicle and used in the autonomous driving and / or driver assistance system. In some examples of the subject matter disclosed herein, the system may provide techniques for processing images of the environment in front of a vehicle traveling on a road to train a neural network or deep learning algorithm to estimate the vehicle's future path based on the images. In yet further examples of the subject matter disclosed herein, the system may provide techniques for processing images of the environment in front of a vehicle traveling on a road with a trained neural network to estimate the vehicle's future path.
[0006] Systems and methods are provided as set forth in the claims and specification.
[0007] Any combination of the subject matter of any claim may be provided.
[0008] Any combination of any method and / or method steps disclosed in any figure and / or specification may be provided.
[0009] Any combination of any of the units, devices, and / or components disclosed in any of the figures and / or specification may be provided. Non-limiting examples of such units include collection units, image processors, etc. [Brief description of the drawings]
[0010] The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the concluding portion of the specification. The invention, however, both as to its organization and method of operation, together with its objects, features, and advantages, may best be understood by reference to the following detailed description when read in conjunction with the accompanying drawings.
[0011] [Figure 1] 1 is a block diagram representation of a system consistent with disclosed embodiments.
[0012] [Figure 2A] 1 is a schematic side view representation of an exemplary vehicle including a system consistent with disclosed embodiments.
[0013] [Figure 2B] 2B is a schematic plan view representation of the vehicle and system shown in FIG. 2A consistent with disclosed embodiments.
[0014] [Figure 2C] 1 is a schematic plan view representation of another embodiment of a vehicle including a system consistent with the disclosed embodiments.
[0015] [Figure 2D] 1 is a schematic plan view representation of yet another embodiment of a vehicle including a system consistent with the disclosed embodiments.
[0016] [Figure 2E] 1 is a schematic representation of an example vehicle control system consistent with disclosed embodiments.
[0017] [Diagram 3] 1 is a schematic representation of a vehicle interior including a rearview mirror and a user interface for a vehicle imaging system consistent with disclosed embodiments.
[0018] [Figure 4] 1 illustrates an example of a system and a number of authorized members.
[0019] [Diagram 5] 4 is a flow chart illustrating a method for generating a secret, according to one embodiment.
[0020] [Figure 6] 4 is a flow chart illustrating a method for generating a signature for a message by a group member according to one embodiment.
[0021] [Figure 7] 4 is a flow chart illustrating a method for verifying a signature of a message, according to one embodiment.
[0022] [Figure 8] 4 is a flow chart illustrating a method for generating a secret, according to one embodiment.
[0023] [Figure 9] 4 is a flow chart illustrating a method for generating a signature for a message by a group member according to one embodiment.
[0024] [Figure 10] 4 is a flow chart illustrating a method for verifying a signature of a message, according to one embodiment.
[0025] [Figure 11] 4 is an example of a method performed by a collection unit to implement the first scheme, according to one embodiment.
[0026] [Figure 12] 11 is an example of a method performed by a collection unit to implement the second scheme, according to one embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0027] In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be understood by those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, and components have not been described in detail so as not to obscure the present invention.
[0028] The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the concluding portion of the specification. The invention, however, both as to its organization and method of operation, together with its objects, features, and advantages, may best be understood by reference to the following detailed description when read in conjunction with the accompanying drawings.
[0029] It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some elements may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numerals may be repeated among the figures to indicate corresponding or analogous elements.
[0030] Because the illustrated embodiments of the invention can be implemented, for the most part, using electronic components and circuits known to those skilled in the art, details will not be described beyond the extent deemed necessary for an understanding and appreciation of the concepts underlying the invention, or so as not to obscure or impede the teachings of the invention as illustrated above.
[0031] Any reference in the specification to a method should be applied mutatis mutandis to a system capable of carrying out that method, and should be applied mutatis mutandis to a non-transitory computer readable medium storing instructions that, when executed by a computer, result in the performance of the method.
[0032] Any references in the specification to a system and any other components should be applied mutatis mutandis to methods that may be performed by a memory device, and should be applied mutatis mutandis to a non-transitory computer readable medium storing instructions that may be executed by a memory device.
[0033] Any reference in the specification to a non-transitory computer readable medium should be applied mutatis mutandis to a system capable of executing instructions stored on the non-transitory computer readable medium, and should be applied mutatis mutandis to a method that may be executed by a computer reading instructions stored on the non-transitory computer readable medium.
[0034] Any combination of any of the modules or units recited in any of the drawings, any part of the specification, and / or any of the claims may be provided. In particular, any combination of the claimed features may be provided.
[0035] The pixels may be pixels obtained by a camera or may be processed pixels.
[0036] Before describing in detail example features of processing images of an environment in front of a vehicle traveling on a road to train a neural network or deep learning algorithm to estimate a future path of the vehicle based on the images, or processing images of an environment in front of a vehicle traveling on a road with a trained neural network to estimate a future path of the vehicle, a description is provided of various possible implementations and configurations of a vehicle-mountable system that may be used to perform and implement methods according to examples of the subject matter disclosed herein. In some embodiments, various examples of the system may be mounted on a vehicle and may operate while the vehicle is in motion. In some embodiments, the system may implement methods according to examples of the subject matter disclosed herein.
[0037] However, it will be appreciated that embodiments of the present disclosure are not limited to scenarios in which suspicious upright object indications are caused by steep roads. Suspect upright object indications may be associated with a variety of other situations and may arise from other types of image data, including data that is not image-based or that is not exclusively image-based.
[0038] FIG. 1, referenced herein, is a block diagram representation of a system consistent with disclosed embodiments. System 100 may include various components depending on the requirements of a particular implementation. In some examples, system 100 may include a processing unit 110, an image acquisition unit 120, and one or more memory units 140, 150. Processing unit 110 may include one or more processing devices. In some embodiments, processing unit 110 may include an application processor 180, an image processor 190, or any other suitable processing device. Similarly, image acquisition unit 120 may include any number of image acquisition units and components depending on the requirements of a particular application. In some embodiments, image acquisition unit 120 may include one or more imaging devices (e.g., cameras), such as imaging device 122, imaging device 124, and imaging device 126. In some embodiments, system 100 may also include a data interface 128 communicatively connecting processing unit 110 to image acquisition unit 120. For example, the data interface 128 may include any wired and / or wireless link or links for transmitting image data acquired by the image acquisition unit 120 to the processing unit 110 .
[0039] Both application processor 180 and image processor 190 may include various types of processing devices. For example, either or both of application processor 180 and image processor 190 may include one or more microprocessors, preprocessors (such as image preprocessors), graphics processors, central processing units (CPUs), support circuits, digital signal processors, integrated circuits, memory, or any other type of device suitable for running applications and performing image processing and analysis. In some embodiments, application processor 180 and / or image processor 190 may include any type of single-core or multi-core processor, mobile device microcontroller, central processing unit, etc. A variety of processing devices may be used, including, for example, processors available from manufacturers such as Intel®, AMD®, etc., and the processing devices may include various architectures (e.g., x86 processors, ARM®, etc.).
[0040] In some embodiments, application processor 180 and / or image processor 190 may include any of the EyeQ series of processor chips available from Mobileye®. These processor designs include multiple processing units, each with a local memory and instruction set. Such processors may include video inputs that receive image data from multiple image sensors, and may also include video output capabilities. In one example, the EyeQ2® uses 90 nm-micron technology operating at 332 MHz. The EyeQ2® architecture has two floating-point hyper-threaded 32-bit RISC CPUs (MIPS32® 34K® cores), five Vision Computing Engines (VCEs), three Vector Microcode Processors (VMPs®), a Denali 64-bit Mobile DDR controller, a 128-bit Internal Sonics Interconnect, dual 16-bit video input and 18-bit video output controllers, a 16-channel DMA, and several peripherals. The MIPS34K CPU manages the 5 VCEs, 3 VMPs™ and DMA, the second MIPS34K CPU and multi-channel DMA, and other peripherals. The 5 VCEs, 3 VMPs, and the MIPS34K CPU can perform intensive vision calculations required by feature-rich bundle applications. In another example, the EyeQ3 is a third generation processor that is six times more powerful than the EyeQ2 and can be used in the disclosed examples. In yet another example, the EyeQ4, a fourth generation processor, can be used in the disclosed examples.
[0041] 1 shows two separate processing devices included within processing unit 110, more or fewer processing devices may be used. For example, in some instances, a single processing device may be used to accomplish the tasks of application processor 180 and image processor 190. In other embodiments, these tasks may be performed by three or more processing devices.
[0042] The processing unit 110 may include various types of devices. For example, the processing unit 110 may include various devices such as a controller, an image preprocessor, a central processing unit (CPU), support circuits, digital signal processors, integrated circuits, memory, or any other type of device for image processing and analysis. The image preprocessor may include a video processor for capturing, digitizing, and processing imagery from an image sensor. The CPU may include any number of microcontrollers or microprocessors. The support circuits may be any number of circuits commonly known in the art, including cache, power, clock, and input / output circuits. The memory may store software that, when executed by the processor, controls the operation of the system. The memory may include image processing software, including databases, and trained systems, such as neural networks. The memory may include any number of random access memories, read-only memories, flash memories, disk drives, optical storage devices, removable storage, and other types of storage. In one example, the memory may be separate from the processing unit 110. In another example, the memory may be integrated into the processing unit 110.
[0043] Each memory 140, 150 may include software instructions that, when executed by a processor (e.g., application processor 180 and / or image processor 190), may control the operation of various aspects of system 100. These memory units may include various databases and image processing software. Memory units 140, 150 may include random access memory, read-only memory, flash memory, disk drives, optical storage devices, tape storage, removable storage, and / or any other type of storage. In some examples, memory units 140, 150 may be separate from application processor 180 and / or image processor 190. In other embodiments, these memory units may be integrated into application processor 180 and / or image processor 190.
[0044] In some embodiments, the system may include a position sensor 130. The position sensor 130 may include any type of device suitable for determining a position associated with at least one component of the system 100. In some embodiments, the position sensor 130 may include a GPS receiver. Such a receiver may determine the position and velocity of a user by processing signals broadcast by Global Positioning System satellites. Position information from the position sensor 130 may be made available to the application processor 180 and / or the image processor 190.
[0045] In some embodiments, system 100 may be operatively connectable to various systems, devices, and units on board a vehicle in which system 100 may be installed, and system 100 may communicate with the vehicle's systems via any suitable interface (e.g., a communication bus). Examples of vehicle systems with which system 100 may cooperate include a throttle system, a braking system, and a steering system (e.g., throttle system 220, braking system 230, and steering system 240 of FIG. 2E).
[0046] In some embodiments, system 100 may include a user interface 170. User interface 170 may include any device suitable for providing information to or receiving input from one or more users of system 100, including, for example, a touch screen, a microphone, a keyboard, a pointer device, a track wheel, a camera, a knob, buttons, etc. Information may be provided to a user by system 100 via user interface 170.
[0047] In some embodiments, the system 100 may include a map database 160. The map database 160 may include any type of database for storing digital map data. In some examples, the map database 160 may include data related to the locations of various items, including roads, water features, geographic shapes, points of interest, and the like, in a reference coordinate system. The map database 160 may store not only the locations of such items, but also descriptors related to those items, including, for example, names associated with any of the stored features and other information about them. For example, the locations and types of known obstacles may be included in the database, including information about the topography of the road, or the slope of particular points along the road, and the like. In some embodiments, the map database 160 may be physically located with other components of the system 100. Alternatively or additionally, the map database 160 or portions thereof may be located remotely with respect to other components of the system 100 (e.g., the processing unit 110). In such embodiments, information from the map database 160 may be downloaded via a wired or wireless data connection to a network (e.g., via a cellular network and / or the Internet, etc.).
[0048] Imaging devices 122, 124, and 126 may each include any type of suitable device for capturing at least one image from an environment. In addition, any number of imaging devices may be used to obtain images for input to an image processor. Some examples of the subject matter disclosed herein may include or be implemented with only a single imaging device, while other examples may include or be implemented with two, three, or even four or more imaging devices. Imaging devices 122, 124, and 126 are further described below with reference to Figures 2B-2E.
[0049] It will be understood that the system 100 may include or be operatively associated with other types of sensors, including, for example, acoustic sensors, radio frequency (RF) sensors (e.g., radar transceivers), LiDAR sensors. Such sensors may be used independently or in cooperation with the image acquisition unit 120. For example, data from a radar system (not shown) may be used to validate processed information received from processing images acquired by the image acquisition unit 120, such as to filter certain false positives resulting from processing images acquired by the image acquisition unit 120, or may be combined with or otherwise supplement image data from the image acquisition unit 120 or some processed variant or derivative of image data from the image acquisition unit 120.
[0050] System 100, or various components thereof, may be incorporated into a variety of different platforms. In some embodiments, system 100 may be included in vehicle 200, as shown in FIG. 2A. For example, vehicle 200 may include processing unit 110 and any of the other components of system 100, as described above in connection with FIG. 1. Vehicle 200 may include only a single imaging device (e.g., a camera) in some embodiments, while multiple imaging devices may be used in other embodiments, such as those described in connection with FIGS. 2B-2E. For example, any of imaging devices 122 and 124 of vehicle 200 may be part of an ADAS (Advanced Driver Assistance System) imaging set, as shown in FIG. 2A.
[0051] The imaging device included in vehicle 200 as part of image capture unit 120 may be located in any suitable location. In some embodiments, as shown in Figures 2A-2E and 3, imaging device 122 may be located near the rearview mirror. This location may provide a line of sight similar to that of the driver of vehicle 200 and may aid in determining what the driver can and cannot see.
[0052] Other positions for the imaging devices of the image acquisition unit 120 may also be used. For example, the imaging device 124 may be located on or in the bumper of the vehicle 200. Such a position may be particularly suitable for an imaging device with a wide field of view. The line of sight of an imaging device located on the bumper may be different from the line of sight of the driver. The imaging devices (e.g., imaging devices 122, 124, and 126) may also be located in other positions. For example, the imaging device may be positioned in or on one or both side mirrors of the vehicle 200, on the roof of the vehicle 200, on the hood of the vehicle 200, on the trunk of the vehicle 200, on the side of the vehicle 200, attached to any window of the vehicle 200, positioned behind or in front of, in or near the front and / or rear light features of the vehicle 200, etc. The imaging device of the image acquisition unit 120, or one of the imaging devices used in the image acquisition unit 120, may have a field of view (FOV) different from that of the driver of the vehicle and may not always see the same objects. In one example, the FOV of the image capture unit 120 may extend beyond the FOV of a typical driver, so that objects outside the driver's FOV may be imaged. In yet another example, the FOV of the image capture unit 120 is a portion of the driver's FOV. In some embodiments, the FOV of the image capture unit 120 corresponds to a sector that covers an area of the road ahead of the vehicle, and possibly also covers the perimeter of the road.
[0053] In addition to the imaging device, vehicle 200 may include various other components of system 100. For example, processing unit 110 may be integrated into the vehicle's engine control unit (ECU) or included in vehicle 200 separate from the ECU. Vehicle 200 may also be equipped with a location sensor 130, such as a GPS receiver, and vehicle 200 may include a map database 160 and memory units 140 and 150.
[0054] Fig. 2A is a schematic side view representation of a vehicle imaging system according to an example of the subject matter disclosed herein. Fig. 2B is a schematic top view illustration of the example shown in Fig. 2A. As shown in Fig. 2B, the disclosed example may include a vehicle 200 including a system 100 having a first imaging device 122 positioned near a rearview mirror and / or near a driver of the vehicle 200, a second imaging device 124 positioned at or within a bumper region of the vehicle 200 (e.g., one of the bumper regions 210), and a processing unit 110.
[0055] As shown in Figure 2C, both imaging devices 122 and 124 may be positioned near the rearview mirror and / or near the driver of vehicle 200. Additionally, while two imaging devices 122 and 124 are shown in Figures 2B and 2C, it should be understood that other embodiments may include three or more imaging devices. For example, in the embodiment shown in Figure 2D, first, second, and third imaging devices 122, 124, and 126 are included in system 100 of vehicle 200.
[0056] 2D , imaging devices 122, 124, and 126 may be positioned near the rearview mirror and / or near the driver's seat of vehicle 200. The disclosed examples are not limited to any particular number and configuration of imaging devices, and the imaging devices may be located in any suitable location within and / or on vehicle 200.
[0057] It should also be understood that the disclosed embodiments are not limited to a particular type of vehicle 200, but may be applicable to all types of vehicles, including cars, trucks, trailers, motorcycles, bicycles, self-balancing transportation devices, and other types of vehicles.
[0058] The first imaging device 122 may include any suitable type of imaging device. The imaging device 122 may include an optical axis. In one example, the imaging device 122 may include an Aptina M9V024 WVGA sensor with a global shutter. In another example, a rolling shutter sensor may be used. The image acquisition unit 120, and any imaging device implemented as part of the image acquisition unit 120, may have any desired image resolution. For example, the imaging device 122 may provide a resolution of 1280×960 pixels and may include a rolling shutter.
[0059] Image acquisition unit 120, and any imaging devices implemented as part of image acquisition unit 120, may include various optical elements. In some embodiments, one or more lenses may be included to provide a desired focal length and field of view for image acquisition unit 120, and for any imaging devices implemented as part of image acquisition unit 120. In some examples, imaging devices implemented as part of image acquisition unit 120 may include or be associated with any optical element, such as, for example, a 6 mm lens or a 12 mm lens. In some examples, imaging device 122 may be configured to capture an image having a desired (and known) field of view (FOV).
[0060] The first imaging device 122 may have a scan rate associated with the acquisition of each of the first series of image scan lines. The scan rate may refer to the rate at which the image sensor may acquire image data associated with each pixel included in a particular scan line.
[0061] 2E is a schematic representation of a vehicle control system according to an example of the subject matter disclosed herein. As illustrated in FIG. 2E, vehicle 200 may include throttle system 220, brake system 230, and steering system 240. System 100 may provide inputs (e.g., control signals) to one or more of throttle system 220, brake system 230, and steering system 240 via one or more data links (e.g., any wired and / or wireless link or links for transmitting data). For example, based on analysis of images acquired by imaging devices 122, 124, and / or 126, system 100 may provide control signals to one or more of throttle system 220, brake system 230, and steering system 240 to drive vehicle 1200 (e.g., by causing acceleration, turning, lane change, etc.). Additionally, system 100 may receive inputs from one or more of throttle system 220, braking system 230, and steering system 240 that indicate the operating conditions of vehicle 200 (e.g., speed, whether vehicle 200 is braking and / or turning, etc.).
[0062] As shown in FIG. 3 , the vehicle 200 may also include a user interface 170 for interacting with a driver or passenger of the vehicle 200. For example, the user interface 170 in a vehicle application may include a touch screen 320, knobs 330, buttons 340, and a microphone 350. The driver or passenger of the vehicle 200 may also interact with the system 100 using handles (e.g., located on or near the steering column of the vehicle 200, including, for example, a turn signal handle) and buttons (e.g., located on the steering wheel of the vehicle 200), etc. In some embodiments, the microphone 350 may be positioned adjacent to the rearview mirror 310. Similarly, in some embodiments, the imaging device 122 may be located near the rearview mirror 310. In some embodiments, the user interface 170 may also include one or more speakers 360 (e.g., speakers of a vehicle audio system). For example, the system 100 may provide various notifications (e.g., alerts) via the speaker 360.
[0063] As will be appreciated by those skilled in the art having the benefit of this disclosure, numerous variations and / or modifications may be made to the disclosed embodiments described above. For example, not all components are essential to the operation of system 100. Additionally, any component may be located in any suitable portion of system 100, and the components may be rearranged in various configurations while still providing the functionality of the disclosed embodiments. Thus, the configurations described above are examples, and regardless of the configuration described above, system 100 may provide a wide range of functionality to analyze the surroundings of vehicle 200 and navigate and / or otherwise control and / or operate vehicle 200 in response to this analysis. Navigating, controlling, and / or operating vehicle 200 may include enabling and / or disabling (directly or via an intermediate controller, such as the controllers described above) various features, components, devices, modes, systems, and / or subsystems associated with vehicle 200. Navigation, control, and / or operation may alternatively or additionally include interaction with the user, drivers, passengers, passersby, and / or other vehicles or users (which may be located inside or outside of vehicle 200), for example, by providing visual, audio, tactile, and / or other sensory alerts and / or indications.
[0064] As described in further detail below, consistent with various disclosed embodiments, system 100 may provide various features related to autonomous driving, semi-autonomous driving, and / or driver assistance technology. For example, system 100 may analyze image data, location data (e.g., GPS location information), map data, speed data, and / or data from sensors included in vehicle 200. System 100 may collect data for analysis, for example, from image capture unit 120, location sensor 130, and other sensors. Additionally, system 100 may analyze the collected data to determine whether vehicle 200 should take a particular action, and then automatically take the determined action without human intervention. It will be understood that in some cases, the actions taken automatically by the vehicle are under human supervision, and the ability of a human to intervene, adjust, abort, or override the machine's actions is enabled under certain circumstances or at all times. For example, when vehicle 200 is traveling without human intervention, system 100 may automatically control braking, acceleration, and / or steering of vehicle 200 (e.g., by sending control signals to one or more of throttle system 220, braking system 230, and steering system 240). Additionally, system 100 may analyze the collected data and issue warnings, indications, recommendations, alerts, or instructions to a driver, passenger, user, or other person inside or outside of the vehicle (or other vehicles) based on the analysis of the collected data. Further details regarding various embodiments provided by system 100 are provided below.
[0065] The following terms and mathematical or textual expressions are used in the following text and figures. It should be noted that the terms may be represented by other mathematical or textual expressions. For example, the second part of the message signature may be generated in various ways, such as HMAC. K is just an example of the second part above. Other expressions may be used to represent other approaches for generating the second part above. Message (M). Message signature (S). The first part of the message signature (V). The second part (HMAC K (M)). Private key (K). First Member Secret
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
[0066] Many services and applications are based on the collection of data from authorized members by a collection unit (also called a collection device). The collection unit may be a computer controlled system or may include one or more computer controlled systems, one or more computer controlled subsystems, and the like. The collection unit may include communication circuitry for sending and receiving data from vehicles, sensors, or other data producers. For example, a road mapping application or a traffic control application collects data from many vehicles and generates maps, traffic load estimates, and the like. The collection unit may also include a processor or multiple processors that execute instructions to perform the methods and processes described herein.
[0067] An authorized member is a member who has the authority to provide data. A member may become an authorized member by applying any authentication and / or registration and / or other process.
[0068] An authorized member may be any type of data producing device, including a vehicle, a roadside unit, a sensor device, a monitoring device, or other such device. The data provided by an authorized member may relate to traffic, road conditions, or any other content.
[0069] A collection entity may collect information from multiple members of a group that are all authorized members, the collection unit being configured to collect only information sent by valid authorized members of the group.
[0070] 4 shows an example of a system and multiple authorized members, including a trusted unit 420, a collection unit 430, a processing unit 440, a network 410, a database 450, and authorized members such as a vehicle 402.
[0071] The trusted unit 420, the collection unit 430, and the processing unit 440 may include or be implemented using one or more computers. The trusted unit 420 may be trusted in the sense that it may generate and store secrets in a secure manner. The trusted unit 420 may be implemented using a secure enclave, a trusted execution environment (TEE), or other hardened secure devices. The trusted unit 420 may be isolated from the collection unit 430 and the processing unit 440 using various methods. For example, a random access memory device may be shared between the trusted unit 420 and the other units (the collection unit 430 or the processing unit 440), but the area of the memory device used by the trusted unit 420 is encrypted.
[0072] The collection unit 430 is configured to collect data from the authorized members and validate that the data was actually sent by the authorized members. The processing unit 440 may process the data from the authorized members (e.g., generate a map) and store the results of the processing in a database 450. The processing unit 440 may be implemented using a processor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or any other programmable or hardwired device designed to perform the functions described herein.
[0073] Anonymity is guaranteed for authorized members. The collection unit 430 cannot trace back the identity of the sending trusted member. Furthermore, the collection unit 430 cannot determine whether two messages originate from the same source or not. That is, the scheme preserves the anonymity of a given source. The security of the scheme relies on the assumption that it is not possible to collect a sequence of signatures that were all generated by the same group member.
[0074] The scheme also provides for disclosure of user identity in certain special circumstances. For example, in certain special circumstances, such as a member's violation of the terms of use, it is possible to trace back to discover the identity of the message originator. This capability is provided by introducing a trusted party that knows the secrets of all players in the scheme and the identities of the group members to whom the secrets have been distributed. This trusted party also generates the secrets used by the scheme. In the environment shown in FIG. 4, this trusted party is embodied in trusted unit 420.
[0075] The scheme may provide additional security requirements such as non-impersonation and fraud tracing.
[0076] For anti-spoofing, a policy may be implemented that one authorized member cannot masquerade as another authorized member. In general, a reasonably sized coalition of valid authorized group members cannot masquerade as another valid group member outside the coalition. That is, they cannot generate messages and signatures that, when presented to a trusted party, would cause the trusted party to act as if the message had been received by a group member outside the coalition.
[0077] Another policy is to provide cheater tracing. Generally, in cheater tracing, a coalition of valid group members (cheaters) may generate new fake group members so that the new fake members can produce signatures that are accepted by the collection unit. If a coalition of cheaters of reasonable size generates fake signatures, it is required that a trusted party be able to use the fake signatures to trace back the identity of the cheaters.
[0078] A method, system, and computer readable medium are provided for implementing a scheme for anonymous collection of data from authorized members.
[0079] The presentation of the proposed scheme ("First Scheme") is based on the finite field
number
number
number
number
number
[0080] (First scheme)
[0081] Generally, several operations are used to implement a scheme for anonymous data collection. In a first operation, secrets are generated. These secrets are stored at the trusted unit. In a second operation, a signature for the message is generated by a group member. This signature is sent together with the message to the collection unit. In a third operation, the collection unit verifies the signature. This is further explained in Figures 5-7.
[0082] 5 is a flow chart illustrating a method 500 for generating a secret, according to one embodiment. At 502, a trusted party:
number
number
number
number
[0083] At 504, for each authorized group member x, the trusted party
number
number
number
number
number
number
number
number
number
[0084] Each vector
number
number
number
[0085] 506, these secrets, i.e.
number
number
number
number
[0086] FIG. 6 is a flow diagram illustrating a method 600 for generating a signature by a group member for a message, according to one embodiment.
[0087] At 602, an authorized group member receives the secret generated by method 500, i.e.,
number
number
number
number
[0088] At 604, group member x is
number
number
number
number
[0089] At 606, the group members are linearly combined
number
number
number
number
number
number
[0090] 608, Digital Signature
number
[0091] 7 is a flow chart illustrating a method 700 for verifying a signature for a message, according to one embodiment. The signature may be verified by a collection unit. The collection unit may verify the signature for a message.
number
number
[0092] At 702, the collection unit
number
[0093] At 704, the collection unit is
number
number
[0094] At 706, the collection unit
number
number
[0095] 708, the generated hash
number
number
number
number
number
number
[0096] The signature scheme is secure. To prove that the signature scheme is secure,
number
number
number
number
number
number
number
number
number
[0097] According to the HMAC security assumption, the message
number
number
number
number
number
number
number
number
[0098] In addition, the scheme provides anonymity for the signer.
number
number
number
number
number
number
[0099] key
number
number
number
number
number
number
number
number
number
[0100] Vector
number
number
number
number
[0101] The collection unit and the observer of the communication are vector sets
number
number
number
number
number
number
number
number
number
number
number
number
number
number
number
[0102] The collection unit (or observer) was created by x
number
number
number
[0103] In a practical situation, the anonymity of a group member needs to be preserved regardless of the number of signatures it has generated or that have been collected by an adversary. This requirement is met in the following scenario: The observed traffic of messages with the corresponding signatures is generated by some group members. An adversary collecting the signatures cannot split the signatures into groups of messages coming from the same group member. b. Each group member owns several instances of signature schemes, each with different parameters. Whenever it wants to sign a message, it randomly chooses one of the signature schemes to use for signing.
[0104] In both scenarios, it is guaranteed that messages having signatures generated by the same scheme will be randomly intermixed among other messages.
[0105] The anonymity argument relies on the following assumption: selecting a subset of signatures generated by the same scheme from a larger set of signatures is a hard problem (in terms of non-deterministic polynomial time).
[0106] The only information an adversary can use to reveal the identity of a signer is the set of vectors
number
number
number
number
number
[0107] There are algorithms that solve this problem. However, they involve a small number of signature schemes or
number
number
[0108] There are some situations in which the identity of a group member who generated a message with a corresponding signature must be revealed. This disclosure of the signer's identity is required by each user.
number
number
[0109] The signature is
number
number
number
number
number
number
number
number
number
number
number
[0110] This process divides group members into groups of approximately equal size.
number
number
number
number
number
number
number
number
[0111] As such, the trace is performed as follows: a.
number
number
number
number
[0112] If you choose this method,
number
number
[0113] A coalition of cheaters refers to a scenario with two (or more) schemes, i.e., where a given group member knows the secret of group member x, i.e.
number
number
number
number
number
number
number
number
[0114] each
number
number
number
number
number
number
number
[0115] (Second scheme)
[0116] A scheme may be provided that provides security against fraudsters attempting to generate new false identities. The algebraic operations in this scheme include:
number
number
[0117]
number
number
number
[0118] By the new construction, (vector
number
number
number
[0119] Similar to the first scheme, several operations are used to implement the second scheme for anonymous data collection. In a first operation, secrets are generated. These secrets are stored at the trusted unit. In a second operation, a signature for the message is generated by a group member. This signature is sent together with the message to the collection unit. In a third operation, the collection unit verifies the signature. This is further explained in Figures 8-9.
[0120] 8 is a flow chart illustrating a method 800 for generating a secret, according to one embodiment. At 802, a trusted party:
number
number
number
number
[0121] At 804, for each authorized group member x, the trusted party
number
number
number
number
number
number
number
number
number
number
number
[0122] Each vector
number
number
number
[0123] In addition, random
number
number
number
number
[0124] At 806, for each group member x,
number
number
number
[0125] 9 is a flow chart illustrating a method 900 for generating a signature by group members for a message according to one embodiment. At 902, an authorized member x
number
number
number
number
[0126] At 904, group member x is
number
number
number
number
[0127] At 906, the group members are linear combinations of
number
number
number
number
[0128] Digital Signature
number
number
[0129] At 906, the digital signature is transmitted along with the message to a collection unit.
[0130] FIG. 10 is a flow chart illustrating a method 1000 for verifying a signature for a message, according to one embodiment.
[0131] The signature may be verified by the collection unit.
number
number
[0132] At 1002, the collection unit
number
[0133] At 1004, the collection unit
number
number
[0134]
number
number
number
number
number
[0135] Therefore, these two methods are
number
[0136] At 1006, the collection unit
number
number
[0137] 1008, the generated hash
number
number
number
number
number
number
[0138] The same aspects of security apply to the variant scheme (i.e., the second scheme) as to the first scheme. Similarly, the anonymity aspects apply to the variant scheme. Here, the anonymity aspects apply once
number
number
number
[0139] The second scheme also provides a mechanism for revealing the identity of the signer. For the purposes of verifying the identity of the sender of a message, a trusted unit may
number
number
number
number
number
[0140] In the cheater coalition scenario, we use the secrets of at least two group members x and x' and some nonzero integer vector
number
number
number
[0141] The secret matrix for x is
number
number
[0142] matrix
number
number
[0143]
number
number
number
[0144] If we can construct such an embedding between these subspaces of the matrix,
number
[0145] 11 is an example of a method 1100 performed by a collection unit to implement the first scheme, according to one embodiment. The method 1100 is for collecting data from a group of authorized members.
[0146] At 1102, a message and a message signature are received by a collection unit. The message signature received from the authorized member comprises a first portion and a second portion. The second portion is generated using a private key. The private key is calculated by applying a first plurality of mathematical operations to a first member secret assigned to the authorized member, a second member secret assigned to the authorized member, and a random vector.
[0147] At 1104, the collection unit validates whether the message was received from one of the authorized members of the group without identifying the authorized member that sent the message, and the validating includes applying a second plurality of mathematical operations to the secret first group, the secret second group, and the first portion of the message signature.
[0148] The first plurality of mathematical operations includes computing a product of multiplications of coefficients with a base and a random exponent. The first member secret is computed based on a first group secret of the secrets assigned to the group and a subset of the random vectors assigned to the authorized members. The second member secret is computed based on a second group secret of the secrets assigned to the group and a subset of the random vectors assigned to the authorized members. The first member secret and the second member secret are computed by applying modulo and addition operations. A collection unit has access to the first group of secrets and the second group of secrets but is unaware of the assignment of the first member secret and the second member secret to the authorized members of the group.
[0149] At 1106, if the message was not received from any authorized member of the group, the message is rejected by the collection unit.
[0150] At 1108, data embedded in the message is collected when the message is received from one of the authorized members of the group.
[0151] In one embodiment, the private key is a function of a first product of the multiplication of the first coefficient and a second product of the multiplication of the second coefficient. In a further embodiment, each first coefficient has a first base calculated by applying a modulo operation (mod p) to a first intermediate product of the multiplication of the first intermediate coefficient. In a further embodiment, each second coefficient has a second base calculated by applying a modulo operation to a second intermediate product of the multiplication of the second intermediate coefficient.
[0152] In another embodiment, the first intermediate coefficient has a base that is a secret from a first group of secrets and has a random exponent that is an element of a subset of random vectors assigned to authorized members, and the second intermediate coefficient has a base that is a secret from a second group of secrets and has a random exponent that is an element of a subset of random vectors assigned to authorized members.
[0153] In one embodiment, the validating comprises calculating, by the collection unit, a validation private key as a function of the first group of secrets, the second group of secrets, and the first part of the message signature. In a further embodiment, the validating comprises applying a modulo operation to a first validation product of the multiplication of the first validation coefficient and applying a modulo operation to a second validation product of the multiplication of the second validation coefficient.
[0154] In one embodiment, the different first validation coefficient has a base that is a secret different from the first group of secrets and a different random exponent. In such an embodiment, the different second validation coefficient has a base that is a secret different from the second group of secrets and a different random exponent, and the different random exponent belongs to the second part of the message signature. In a further embodiment, the second part of the message signature is generated using an encryption process, where validating comprises applying the encryption process using a validation private key to provide a validation intermediate result. In a further embodiment, validating comprises comparing the validation intermediate result with the second part of the signed message, and determining that the message was received from any of the authorized members of the group if the first part of the message signature is non-zero and the validation intermediate result is equal to the second part of the signed message.
[0155] In one embodiment, the first plurality of mathematical operations is calculated over a finite field having a predetermined size (p), and the modulo operation has a divisor equal to the predetermined size.
[0156] In one embodiment, the collected data may be further processed by a processing unit.
[0157] 12 is an example of a method 1200 performed by a collection unit to implement the second scheme, according to one embodiment. The method 1200 is for collecting data from a group of authorized members.
[0158] At 1202, a message and a message signature are received by a collection unit. The message signature received from the authorized member comprises a first portion and a second portion. The second portion is generated using a private key. The private key is calculated by applying a first plurality of mathematical operations to a member secret assigned to the authorized member and a random vector.
[0159] At 1204, the collection unit validates whether the message was received from one of the authorized members of the group without identifying the authorized member that sent the message, and the validating includes applying a second plurality of mathematical operations to the secret first group, the secret second group, and the first portion of the message signature.
[0160] The first plurality of mathematical operations includes modulo operations and calculation of products of multiplications of coefficients with bases and random exponents. A member secret is calculated based on a secret from a first group of secrets assigned to the group, a second group of secrets assigned to the group, a random matrix, and a subset of the random vectors assigned to the authorized members. A collection unit has access to the first group of secrets and the second group of secrets but is unaware of the assignment of member secrets to the authorized members of the group.
[0161] At 1206, if the message was not received from any authorized member of the group, the collection unit rejects the message.
[0162] At 1208, data embedded in the message is collected when the message is received from one of the authorized members of the group.
[0163] In one embodiment, the private key is a function of a set of matrices, where different matrices of the set are functions of a random matrix, an inverse of the random matrix, and an intermediate matrix including a first intermediate matrix element and a second intermediate matrix element. In a further embodiment, the first intermediate matrix element is a first intermediate product of a multiplication of a first intermediate coefficient, and the second intermediate matrix element is a second intermediate product of a multiplication of a second intermediate coefficient.
[0164] In one embodiment, the first intermediate coefficient has a base that is a secret from a first group of secrets and has a random exponent that is an element of a subset of the random vectors assigned to the authorized members, and the second intermediate coefficient has a base that is a secret from a second group of secrets and has a random exponent that is an element of a subset of the random vectors assigned to the authorized members (
number
[0165] In one embodiment, the intermediate matrix is a diagonal matrix and the secret key is a trace of a third matrix that is a product of multiplications of coefficient matrices, each coefficient matrix having a random exponent and a base that is the third intermediate matrix, and different third intermediate matrices are products of a random matrix multiplied by a different intermediate matrix and multiplied by the inverse of the random matrix.
[0166] For example, any of the method steps described may include more steps than those shown in the figures, only the steps shown in the figures, or substantially only the steps shown in the figures. The same applies to devices, processors, or components of a system, as well as to instructions stored on any non-transitory computer-readable storage medium.
[0167] The embodiments disclosed herein may also be implemented in a computer program for execution on a computer system, the computer program including at least code portions for performing steps of a method according to the invention when executed on a programmable apparatus such as a computer system, or code portions for enabling the programmable apparatus to perform functions of a device or system according to the invention. The computer program may cause the storage system to assign disk drives to disk drive groups.
[0168] A computer program includes instructions for executing a particular application program and / or operating system. A computer program may include, for example, one or more of a subroutine, function, procedure, object method, object implementation, executable application, applet, servlet, source code, object code, shared library / dynamic load library, and / or other sequence of instructions designed to execute on a computer system.
[0169] The computer program may be stored internally on a non-transitory computer readable medium. All or a portion of the computer program may be provided on a computer readable medium that is permanently, removably, or remotely coupled to an information processing system. The computer readable medium may include, for example, but is not limited to, any number of the following: magnetic storage media, including disk storage media and tape storage media; optical storage media, such as compact disk media (e.g., CD-ROM, CD-R, etc.) and digital video disk storage media; non-volatile memory storage media, including semiconductor-based memory units, such as flash memory, EEPROM, EPROM, ROM; volatile storage media, including ferromagnetic digital memory, MRAM, registers, buffers or caches, main memory, RAM, etc.
[0170] A computer process typically includes the program or part of a program that is being executed (running), current program values and state information, and resources used by an operating system to manage the execution of the process. An operating system (OS) is software that manages the sharing of computer resources and provides programmers with the interfaces used to access these resources. An operating system responds by processing system data and user input, and by allocating and managing tasks and internal system resources as services to users and programs of the system.
[0171] A computer system may include, for example, at least one processing unit, associated memory, and a number of input / output (I / O) devices. When executing a computer program, the computer system processes information in accordance with the computer program and produces resulting output information via the I / O devices.
[0172] In the foregoing specification, the invention has been described with reference to specific examples of its embodiments, but it will be apparent that various modifications and changes may be made therein without departing from the broader spirit and scope of the invention as set forth in the appended claims.
[0173] Additionally, in this specification and claims, terms such as "front," "rear," "top," "bottom," "above," and "below," when present, are used rather for descriptive purposes and not necessarily to describe permanent relative positions, with it being understood that the terms so used are interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operating in orientations other than those illustrated or otherwise described herein.
[0174] A connection as described herein may be any type of connection suitable for transferring signals from or to a respective node, unit, or device, for example via an intermediate device. Thus, unless otherwise indicated or described, a connection may be, for example, a direct connection or an indirect connection. A connection may be illustrated or described in relation to be a single connection, multiple connections, unidirectional connections, or bidirectional connections. However, different embodiments may vary the implementation of the connection. For example, separate unidirectional connections may be used rather than bidirectional connections, and vice versa. Also, multiple connections may be replaced with a single connection that transfers multiple signals serially or in a time-multiplexed manner. Similarly, a single connection that carries multiple signals may be separated into various different connections that carry subsets of these signals. Thus, many options exist for transferring signals.
[0175] Although particular conductivity types or polarities of potentials have been described in the examples, it will be understood that the conductivity types and polarities of potentials may be reversed.
[0176] Each signal described herein may be designed as positive logic or negative logic. In the case of a negative logic signal, the signal is active low and the logically true state corresponds to a logic level 0. In the case of a positive logic signal, the signal is active high and the logically true state corresponds to a logic level 1. It should be noted that any of the signals described herein may be designed as negative logic or positive logic signals. Thus, in alternative embodiments, those signals described as positive logic signals may be implemented as negative logic signals and those signals described as negative logic signals may be implemented as positive logic signals.
[0177] Additionally, the terms "assert" or "set" and "negate" (or "deassert" or "clear") are used herein to refer to the rendering of a signal, status bit, or similar device into a logically true or logically false state, respectively. If the logically true state is a logic level 1, then the logically false state is a logic level 0. And if the logically true state is a logic level 0, then the logically false state is a logic level 1.
[0178] Those skilled in the art will recognize that the boundaries between logical blocks are merely exemplary, and that alternative embodiments may merge logical blocks or circuit elements, or impose alternative decompositions of functionality on various logical blocks or circuit elements. Thus, it should be understood that the architectures depicted herein are merely exemplary, and that in fact many other architectures may be implemented which achieve the same functionality.
[0179] Any arrangement of components to achieve the same functionality is effectively "associated" such that the desired functionality is achieved. Thus, any two components combined herein to achieve a particular functionality may be considered to be "associated" with one another such that the desired functionality is achieved, regardless of architecture or intermediate components. Similarly, any two components so associated may be viewed as being "operably connected" or "operably coupled" with one another such that the desired functionality is achieved.
[0180] Moreover, those skilled in the art will recognize that the boundaries between the operations described above are merely exemplary. Operations may be combined into a single operation, a single operation may be distributed into additional operations, and operations may be performed with at least partial overlap in time. In addition, alternative embodiments may include multiple instances of a particular operation, and the order of operations may be changed in various other embodiments.
[0181] Also, for example, in one embodiment, the illustrated examples may be implemented as circuits located on a single integrated circuit or within the same apparatus. Alternatively, the examples may be implemented as any number of separate integrated circuits or separate devices interconnected with each other in a suitable manner.
[0182] Also, for example, the examples or portions thereof may be implemented as a soft or code representation of a physical circuit, or a logical representation that can be converted into a physical circuit, such as in any suitable type of hardware description language.
[0183] Furthermore, the present invention is not limited to physical devices or units implemented in non-programmable hardware, but may also apply to programmable devices or units capable of performing desired device functions by operating in accordance with suitable program code, such as mainframes, minicomputers, servers, workstations, personal computers, notepads, personal digital assistants, electronic games, automobiles and other embedded systems, mobile phones, and various other wireless devices, commonly referred to in this application as "computer systems."
[0184] However, other modifications, variations, and alternatives are also possible.The specification and drawings are accordingly to be regarded in an illustrative rather than a restrictive sense.
[0185] (Additional notes and examples)
[0186] Example 1 is a collection device for collecting data from a group of authorized members, the collection device including a communications circuit for receiving a message and a message signature from an authorized member; validating whether the message was received from one of the authorized members of the group without identifying the authorized member who sent the message, the validating including applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature, rejecting the message when the message was not received from any of the authorized members of the group; and a hardware processor for collecting data embedded in the message when the message was received from one of the authorized members of the group, the message signature received from an authorized member including a first portion and a second portion, the second portion being generated using a private key and including a first member secret assigned to the authorized member, a second member secret assigned to the authorized member, and a third member secret assigned to the authorized member. the secret key is calculated by applying a first plurality of mathematical operations to a secret from the first group of secrets assigned to the group and a random vector, the first plurality of mathematical operations including calculating a product of multiplications of coefficients having a base and a random exponent; the first member secret is calculated based on a secret from the first group of secrets assigned to the group and a subset of the random vector assigned to the authorized members; the second member secret is calculated based on a secret from the second group of secrets assigned to the group and the subset of the random vector assigned to the authorized members; the first member secret and the second member secret are calculated by applying modulo and addition operations; and the collection device has access to the first group of secrets and the second group of secrets but is unaware of the assignment of the first member secret and the second member secret to the authorized members of the group.
[0187] In Example 2, the subject matter of Example 1 includes the private key being a function of a first product of multiplications of a first coefficient and a second product of multiplications of a second coefficient.
[0188] In Example 3, the subject matter of Example 2 includes each first coefficient having a first base that is calculated by applying a modulo arithmetic (mod p) to a first intermediate product of the multiplication of the first intermediate coefficients.
[0189] In Example 4, the subject matter of Example 3 includes each second coefficient having a second base calculated by applying said modulo operation to a second intermediate product of the multiplication of the second intermediate coefficients.
[0190] In Example 5, the subject matter of Example 4 includes a first intermediate coefficient having a base that is a secret from the first group of secrets and having a random exponent that is an element of the subset of random vectors assigned to the authorized members, and a second intermediate coefficient having a base that is a secret from the second group of secrets and having a random exponent that is an element of the subset of random vectors assigned to the authorized members.
[0191] In Example 6, the subject matter of Examples 1-5 includes where the validating includes calculating a validation private key as a function of the first group of secrets, the second group of secrets, and the first portion of the message signature.
[0192] In Example 7, the subject matter of Example 6 includes the validating including applying a modulo operation to a first validation product of a multiplication of a first validation coefficient and applying the modulo operation to a second validation product of a multiplication of a second validation coefficient.
[0193] In Example 8, the subject matter of Examples 1-7 includes a different first validation coefficient having a base that is a different secret from the first group of secrets and a different random exponent, a different second validation coefficient having a base that is a different secret from the second group of secrets and the different random exponent, and the different random exponent belonging to the second portion of the message signature.
[0194] In Example 9, the subject matter of Example 8 includes where the second portion of the message signature is generated using a cryptographic process and where the validating includes applying the cryptographic process with the validation private key to provide a validation intermediate result.
[0195] In Example 10, the subject matter of Example 9 includes the validating including comparing the validation intermediate result to the second portion of a signed message and determining that the message was received from any of the authorized members of the group if the first portion of the message signature is non-zero and the validation intermediate result is equal to the second portion of the signed message.
[0196] In Example 11, the subject matter of Examples 1-10 includes the first plurality of mathematical operations being calculated over a finite field having a predetermined size (p), and the modulo operation having a divisor equal to the predetermined size.
[0197] Example 12 is a method for collecting data from a group of authorized members, the method comprising: receiving, by a collection unit, a message and a message signature; validating, by the collection unit, whether the message was received from one of the authorized members of the group without identifying the authorized member who sent the message, the validating comprising applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; rejecting, by the collection unit, the message when the message was not received from any of the authorized members of the group; and collecting data embedded in the message when the message is received from one of the authorized members of the group, the message signature received from the authorized member comprising a first portion and a second portion, the second portion being generated using a private key and assigned to the authorized member. the secret key is calculated by applying a first plurality of mathematical operations to a first member secret assigned to the group, a second member secret assigned to the authorized member, and a random vector, the first plurality of mathematical operations including computing a product of multiplications of coefficients having a base and a random exponent; the first member secret is calculated based on a secret from the first group of secrets assigned to the group and a subset of the random vector assigned to the authorized member; the second member secret is calculated based on a secret from the second group of secrets assigned to the group and the subset of the random vector assigned to the authorized member; the first member secret and the second member secret are calculated by applying modulo and addition operations; and the collection unit has access to the first group of secrets and the second group of secrets but is unaware of the assignment of first member secret and second member secret to the authorized members of the group.
[0198] In Example 13, the subject matter of Example 12 includes wherein the private key is a function of a first product of multiplications of a first coefficient and a second product of multiplications of a second coefficient.
[0199] In Example 14, the subject matter of Example 13 includes each first coefficient having a first base calculated by applying a modulo arithmetic (mod p) to a first intermediate product of the multiplication of the first intermediate coefficients.
[0200] In Example 15, the subject matter of Example 14 includes wherein each second coefficient has a second base calculated by applying the modulo operation to a second intermediate product of the multiplication of the second intermediate coefficients.
[0201] In Example 16, the subject matter of Example 15 includes a first intermediate coefficient having a base that is a secret from the first group of secrets and having a random exponent that is an element of the subset of random vectors assigned to the authorized members, and a second intermediate coefficient having a base that is a secret from the second group of secrets and having a random exponent that is an element of the subset of random vectors assigned to the authorized members.
[0202] In Example 17, the subject matter of Examples 12-16 includes the step of validating including calculating, by the collection unit, a validation private key as a function of the first group of secrets, the second group of secrets, and the first portion of the message signature.
[0203] In Example 18, the subject matter of Example 17 includes the step of validating including applying a modulo operation to a first validation product of a multiplication of a first validation coefficient and applying the modulo operation to a second validation product of a multiplication of a second validation coefficient.
[0204] In Example 19, the subject matter of Examples 12-18 includes a different first validation coefficient having a base that is a different secret from the first group of secrets and a different random exponent, a different second validation coefficient having a base that is a different secret from the second group of secrets and the different random exponent, and the different random exponent belonging to the second portion of the message signature.
[0205] In Example 20, the subject matter of Example 19 includes wherein the second portion of the message signature is generated using a cryptographic process, and the validation includes applying the cryptographic process using the validation private key to provide a validation intermediate result.
[0206] In Example 21, the subject matter of Example 20 includes the step of validating including comparing the validation intermediate result to the second portion of a signed message and determining that the message was received from any of the authorized members of the group if the first portion of the message signature is non-zero and the validation intermediate result is equal to the second portion of the signed message.
[0207] In Example 22, the subject matter of Examples 12 to 21 includes the first plurality of mathematical operations being calculated over a finite field having a predetermined size (p), and the modulo operation having a divisor equal to the predetermined size.
[0208] Example 23 is a non-transitory computer-readable medium including instructions for collecting data from a group of authorized members, the instructions, when executed by a machine, causing the machine to perform operations including receiving, by a collection unit, a message and a message signature; validating, by the collection unit, whether the message was received from one of the authorized members of the group without identifying the authorized member who sent the message, the validating comprising applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; rejecting, by the collection unit, the message when the message was not received from any of the authorized members of the group; and collecting data embedded in the message when the message is received from one of the authorized members of the group, wherein the message signature received from an authorized member includes a first portion and a second portion, the second portion being generated using a private key. a first member secret assigned to the authorized member, a second member secret assigned to the authorized member, and a random vector, the first plurality of mathematical operations including computing a product of multiplications of coefficients having a base and a random exponent, the first member secret being calculated based on a secret from the first group of secrets assigned to the group and a subset of the random vector assigned to the authorized member, the second member secret being calculated based on a secret from the second group of secrets assigned to the group and the subset of the random vector assigned to the authorized member, the first member secret and the second member secret being calculated by applying modulo and addition operations, and the collection unit has access to the first group of secrets and the second group of secrets but is unaware of the assignment of first member secrets and second member secrets to the authorized members of the group.
[0209] Example 24 is a collection device for collecting data from a group of authorized members, the collection device including a communications circuit for receiving a message and a message signature from an authorized member; a hardware processor for receiving the message and the message signature, validating whether the message was received from one of the authorized members of the group without identifying the authorized member who sent the message, the validating including applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature, rejecting the message when the message was not received from any of the authorized members of the group, and collecting data embedded in the message when the message was received from one of the authorized members of the group, the hardware processor including: a hardware processor having access to the first group of secrets and the second group of secrets but unaware of the assignment of member secrets to the authorized members of the group; and a hardware processor having access to the first group of secrets and the second group of secrets but unaware of the assignment of member secrets to the authorized members of the group.
[0210] In Example 25, the subject matter of Example 24 includes the private key being a function of a set of matrices, different matrices of the set being functions of the random matrix, an inverse of the random matrix, and an intermediate matrix including a first intermediate matrix element and a second intermediate matrix element.
[0211] In Example 26, the subject matter of Example 25 includes the first intermediate matrix element being a first intermediate product of a multiplication by a first intermediate coefficient, and the second intermediate matrix element being a second intermediate product of a multiplication by a second intermediate coefficient.
[0212] In Example 27, the subject matter of Examples 25-26 further comprises: a first intermediate coefficient having a base that is a secret from the first group of secrets and having a random exponent that is an element of the subset of random vectors assigned to the authorized members; and a second intermediate coefficient having a base that is a secret from the second group of secrets and having a random exponent that is an element of the subset of random vectors assigned to the authorized members.
number
[0213] In Example 28, the subject matter of Examples 25 to 27 includes the intermediate matrix being a diagonal matrix, the secret key being a trace of a third matrix that is a product of multiplication of coefficient matrices, each coefficient matrix having a random exponent and a base that is a third intermediate matrix, and different third intermediate matrices being a product of the random matrix multiplied by a different intermediate matrix and the inverse of the random matrix.
[0214] Example 29 is a method for collecting data from a group of authorized members, the method comprising: receiving, by a collection unit, a message and a message signature; validating, by the collection unit, whether the message was received from one of the authorized members of the group without identifying the authorized member who sent the message, the validating comprising applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; rejecting, by the collection unit, the message when the message was not received from any of the authorized members of the group; and collecting data embedded in the message when the message is received from one of the authorized members of the group, the method comprising: a message signature received from a collection unit includes a first portion and a second portion, the second portion being generated using a private key, the private key being calculated by applying a first plurality of mathematical operations to a member secret assigned to the authorized member and a random vector, the first plurality of mathematical operations including a modulo operation and a calculation of a product of multiplications of a coefficient with a base and a random exponent, the member secret being calculated based on a secret from the first group of secrets assigned to the group, a secret from the second group of secrets assigned to the group, and a subset of the random matrix and random vector assigned to the authorized member, and the collection unit has access to the first group of secrets and the second group of secrets but is unaware of the assignment of member secrets to the authorized members of the group.
[0215] In Example 30, the subject matter of Example 29 includes the private key being a function of a set of matrices, different matrices of the set being functions of the random matrix, an inverse of the random matrix, and an intermediate matrix including a first intermediate matrix element and a second intermediate matrix element.
[0216] In Example 31, the subject matter of Example 30 includes the first intermediate matrix element being a first intermediate product of multiplication by a first intermediate coefficient, and the second intermediate matrix element being a second intermediate product of multiplication by a second intermediate coefficient.
[0217] In Example 32, the subject matter of Examples 30-31 is further modified to provide a random exponent having a first intermediate coefficient having a base that is a secret from the first group of secrets and being an element of the subset of random vectors assigned to the authorized members, and a second intermediate coefficient having a base that is a secret from the second group of secrets and being an element of the subset of random vectors assigned to the authorized members (
number
[0218] In Example 33, the subject matter of Examples 30 to 32 includes the intermediate matrix being a diagonal matrix, the private key being a trace of a third matrix that is a product of multiplication of coefficient matrices, each coefficient matrix having a random exponent and a base that is a third intermediate matrix, and different third intermediate matrices being a product of multiplying the random matrix by a different intermediate matrix and multiplying the inverse of the random matrix.
[0219] Example 34 is a non-transitory computer-readable medium including instructions for collecting data from a group of authorized members, the instructions, when executed by a machine, causing the machine to: receive, by a collection unit, a message and a message signature; validate, by the collection unit, whether the message was received from any authorized member of the group without identifying the authorized member who sent the message, the validating comprising applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; reject the message when the collection unit validates that the message was not received from any of the authorized members of the group; and reject data embedded in the message when the collection unit validates that the message was received from any of the authorized members of the group. and collecting data from a message signature received from an authorized member, the message signature including a first portion and a second portion, the second portion being generated with a private key, the private key being calculated by applying a first plurality of mathematical operations to a member secret assigned to the authorized member and a random vector, the first plurality of mathematical operations including a modulo operation and a calculation of a product of multiplications of a coefficient with a base and a random exponent, the member secret being calculated based on a secret from the first group of secrets assigned to the group, a secret from the second group of secrets assigned to the group, and a subset of the random matrix and random vector assigned to the authorized member, the collection unit having access to the first group of secrets and the second group of secrets but unaware of the assignment of member secrets to the authorized members of the group.
[0220] Example 35 is at least one machine-readable medium including instructions that, when executed by the at least one machine-readable medium, a processing circuit configuration, cause the processing circuit configuration to perform operations to implement any of Examples 1 to 34.
[0221] Example 36 is an apparatus including means for implementing any one of Examples 1 to 34.
[0222] Example 37 is a system for implementing any of Examples 1 to 34.
[0223] Example 38 is a method for implementing any of Examples 1 to 34.
[0224] In the claims, any reference signs in parentheses shall not be construed as limiting the scope of the claim. The word "comprising" does not exclude the presence of elements or steps other than those recited in the claim. Furthermore, the terms "a" or "an" as used herein are defined as one or more. Also, the use of introductory phrases such as "at least one" and "one or more" in the claims should not be construed as suggesting that the introduction of another claim element with the indefinite article "a" or "an" limits any particular claim including the introduced claim element to an invention containing only one such element, even if the same claim includes the introductory phrase "one or more" or "at least one" and an indefinite article such as "a" or "an". The same applies to the use of definite articles. Unless otherwise specified, terms such as "first" and "second" are used to arbitrarily distinguish between the elements that such terms describe. Thus, these terms are not necessarily intended to indicate a temporal or other prioritization of such elements. The mere fact that certain measures are recited in mutually different claims does not indicate that a combination of these measures cannot be used to advantage.
[0225] While certain features of the invention have been illustrated and described herein, many modifications, substitutions, changes, and equivalents will now occur to those skilled in the art, and it is therefore to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the invention. (Item 1) A collection device for collecting data from a group of authorized members, comprising: a communication circuit for receiving a message and a message signature from an authorized member; validating whether the message was received from one of the authorized members of the group without identifying the authorized member who sent the message, said validating including applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; rejecting the message if the message was not received from any authorized member of the group; Collecting data embedded in said message upon receipt of said message from one of said authorized members of said group. A hardware processor for a message signature received from the authorized member, the message signature including a first portion and a second portion; the second part is generated using a private key; the private key is calculated by applying a first plurality of mathematical operations to a first member secret assigned to the authorized member, a second member secret assigned to the authorized member, and a random vector; the first plurality of mathematical operations includes computing a product of multiplications of coefficients with a base and a random exponent; the first member secret is calculated based on a secret from the first group of secrets assigned to the group and a subset of the random vectors assigned to the authorized members; the second member secret is calculated based on a secret from the second group of secrets assigned to the group and the subset of random vectors assigned to the authorized members; said first member secret and said second member secret are calculated by applying modulo and addition operations; the collection device has access to the first group of secrets and the second group of secrets but is unaware of the assignment of first and second member secrets to the authorized members of the groups; Hardware Processor and A collection device comprising: (Item 2) 2. The collection device of claim 1, wherein the secret key is a function of a first product of multiplication by a first coefficient and a second product of multiplication by a second coefficient. (Item 3) 3. The collection device of item 2, wherein each first coefficient has a first base calculated by applying a modulo operation (mod p) to a first intermediate product of a multiplication of the first intermediate coefficients. (Item 4) 4. The acquisition device of item 3, wherein each second coefficient has a second base calculated by applying the modulo operation to a second intermediate product of the multiplication of the second intermediate coefficients. (Item 5) a first intermediate coefficient having a base that is a secret from said first group of secrets and a random exponent that is an element of said subset of random vectors assigned to said authorized members; a second intermediate coefficient having a base that is a secret from said second group of secrets and having a random exponent that is an element of said subset of random vectors assigned to said authorized members; Item 4. A collection device according to item 4. (Item 6) 2. The collection device of claim 1, wherein the validating comprises calculating a validation private key as a function of the first group of secrets, the second group of secrets, and the first portion of the message signature. (Item 7) The above validity can be confirmed. applying a modulo operation to a first validation product of the multiplication of the first validation coefficient; applying said modulo operation to a second validation product of the multiplication by a second validation coefficient; 7. The collection device according to item 6, comprising: (Item 8) a different first validation coefficient having a secret base different from said first group of secrets and a different random exponent; a different second validation coefficient having a secret base different from said second group of secrets and said different random exponent; the different random exponent belongs to the second portion of the message signature; Item 1. The collection device according to item 1. (Item 9) 9. The collection device of item 8, wherein the second portion of the message signature is generated using a cryptographic process, and the validating includes applying the cryptographic process using a validation private key to provide a validation intermediate result. (Item 10) 10. The collection device of claim 9, wherein the validating comprises comparing the validation intermediate result with the second portion of the message signature, and determining that the message was received from any of the authorized members of the group if the first portion of the message signature is non-zero and the validation intermediate result is equal to the second portion of the message signature. (Item 11) 2. The collection device of claim 1, wherein the first plurality of mathematical operations are calculated over a finite field having a predetermined size (p) and the modulo operation has a divisor equal to the predetermined size. (Item 12) 1. A method for collecting data from a group of authorized members, the method comprising: receiving, by a collection unit, a message and a message signature; validating, by the collection unit, whether the message was received from one of the authorized members of the group without identifying the authorized member that sent the message, the validating step comprising applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; rejecting the message by said collection unit when the message was not received from any authorized member of said group; collecting data embedded in said message upon receipt of said message from one of said authorized members of said group; Equipped with the message signature received from the authorized member includes a first portion and a second portion; the second part is generated using a private key; the private key is calculated by applying a first plurality of mathematical operations to a first member secret assigned to the authorized member, a second member secret assigned to the authorized member, and a random vector; the first plurality of mathematical operations includes computing a product of multiplications of coefficients with a base and a random exponent; the first member secret is calculated based on a secret from the first group of secrets assigned to the group and a subset of the random vectors assigned to the authorized members; the second member secret is calculated based on a secret from the second group of secrets assigned to the group and the subset of random vectors assigned to the authorized members; said first member secret and said second member secret are calculated by applying modulo and addition operations; the collection unit has access to the first group of secrets and the second group of secrets but is unaware of the assignment of first and second member secrets to the authorized members of the groups; method. (Item 13) Item 13. The method of item 12, wherein the private key is a function of a first product of multiplication of a first coefficient and a second product of multiplication of a second coefficient. (Item 14) Item 14. The method of item 13, wherein each first coefficient has a first base that is calculated by applying a modulo operation (mod p) to a first intermediate product of a multiplication of the first intermediate coefficients. (Item 15) 15. The method of claim 14, wherein each second coefficient has a second base calculated by applying the modulo operation to a second intermediate product of the multiplication of the second intermediate coefficients. (Item 16) a first intermediate coefficient having a base that is a secret from said first group of secrets and a random exponent that is an element of said subset of random vectors assigned to said authorized members; a second intermediate coefficient having a base that is a secret from said second group of secrets and having a random exponent that is an element of said subset of random vectors assigned to said authorized members; Item 16. The method according to item 15. (Item 17) Item 13. The method of item 12, wherein the validating step comprises calculating, by the collection unit, a validation private key as a function of the first group of secrets, the second group of secrets, and the first part of the message signature. (Item 18) The step of validating the above applying a modulo operation to a first validation product of the multiplication of the first validation coefficient; applying said modulo operation to a second validation product of multiplication by a second validation coefficient; 18. The method according to item 17, comprising the steps of: (Item 19) Item 13. The method of item 12, wherein a different first validation coefficient has a secret base different from the first group of secrets and a different random exponent, and a different second validation coefficient has a secret base different from the second group of secrets and the different random exponent, the different random exponent belonging to the second part of the message signature. (Item 20) the second portion of the message signature is generated using a cryptographic process; 20. The method of claim 19, wherein the validation comprises applying the encryption process with a validation private key to provide a validation intermediate result. (Item 21) 21. The method of claim 20, wherein the validating step comprises: comparing the validation intermediate result with the second portion of the message signature; and determining that the message was received from any of the authorized members of the group if the first portion of the message signature is non-zero and the validation intermediate result is equal to the second portion of the message signature. (Item 22) Item 13. The method of item 12, wherein the first plurality of mathematical operations are calculated over a finite field having a predetermined size (p), and the modulo operation has a divisor equal to the predetermined size. (Item 23) 1. A computer program comprising instructions for collecting data from a group of authorized members, said instructions, when executed by a machine, causing the machine to: receiving, by a collection unit, a message and a message signature; validating, by the collection unit, whether the message was received from one of the authorized members of the group without identifying the authorized member who sent the message, the validating comprising applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; rejecting the message when the message is not received by the collection unit from any authorized member of the group; collecting data embedded in said message upon receipt of said message from one of said authorized members of said group; Executing an operation including a message signature received from the authorized member, the message signature including a first portion and a second portion; the second part is generated using a private key; the private key is calculated by applying a first plurality of mathematical operations to a first member secret assigned to the authorized member, a second member secret assigned to the authorized member, and a random vector; the first plurality of mathematical operations includes computing a product of multiplications of coefficients with a base and a random exponent; the first member secret is calculated based on a secret from the first group of secrets assigned to the group and a subset of the random vectors assigned to the authorized members; the second member secret is calculated based on a secret from the second group of secrets assigned to the group and the subset of random vectors assigned to the authorized members; said first member secret and said second member secret are calculated by applying modulo and addition operations; the collection unit has access to the first group of secrets and the second group of secrets but is unaware of the assignment of first and second member secrets to the authorized members of the groups; Computer program. (Item 24) A collection device for collecting data from a group of authorized members, comprising: a communication circuit for receiving a message and a message signature from an authorized member; receiving a message and a message signature; validating whether the message was received from one of the authorized members of the group without identifying the authorized member who sent the message, said validating including applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; rejecting the message if the message was not received from any authorized member of the group; Collecting data embedded in said message upon receipt of said message from one of said authorized members of said group. A hardware processor for a message signature received from the authorized member, the message signature including a first portion and a second portion; the second part is generated using a private key; The private key is calculated by applying a first plurality of mathematical operations to a member secret assigned to the authorized member and a random vector; the first plurality of mathematical operations includes a modulo operation and a calculation of a product of multiplication of a coefficient with a base and a random exponent; the member secret is calculated based on a secret from the first group of secrets assigned to the group, a secret from the second group of secrets assigned to the group, and a subset of the random matrices and random vectors assigned to the authorized members; the collection device has access to the first group of secrets and the second group of secrets but is unaware of the assignment of member secrets to the authorized members of the groups; Hardware Processor and A collection device comprising: (Item 25) 25. The collection device of item 24, wherein the secret key is a function of a set of matrices, and different matrices of the set are functions of the random matrix, an inverse of the random matrix, and an intermediate matrix including a first intermediate matrix element and a second intermediate matrix element. (Item 26) the first intermediate matrix element is a first intermediate product of multiplication by a first intermediate coefficient; 26. The collection device of item 25, wherein the second intermediate matrix element is a second intermediate product of multiplication by a second intermediate coefficient. (Item 27) a first intermediate coefficient having a base that is a secret from said first group of secrets and a random exponent that is an element of said subset of random vectors assigned to said authorized members; The second intermediate coefficient has a base that is a secret from the second group of secrets and is a random vector (
number
number
Claims
1. A collection device for collecting data from a group of authorized members, comprising: a communication circuit for receiving a message and a message signature from an authorized member; receiving a message and a message signature; validating whether the message was received from one of the authorized members of the group without identifying the authorized member who sent the message, said validating including applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; rejecting the message if the message was not received from any authorized member of the group; Upon receiving the message from one of the authorized members of the group, collect data embedded in the message. A hardware processor for a message signature received from the authorized member, the message signature including a first portion and a second portion; the second portion is generated using a private key; The private key is calculated by applying a first plurality of mathematical operations to a member secret assigned to the authorized member and a random vector; the member secret is calculated based on a secret from the first group of secrets assigned to the group, a secret from the second group of secrets assigned to the group, and a subset of the random matrices and random vectors assigned to the authorized members; the collection device has access to the first group of secrets and the second group of secrets, but is unaware of the assignment of member secrets to the authorized members of the groups; Hardware Processor and A collection device comprising:
2. The distinct matrices of the set of member secrets are functions of the random matrix, an inverse matrix of the random matrix, and an intermediate matrix including a first intermediate matrix element and a second intermediate matrix element; the first intermediate matrix elements are calculated based on a secret from the first group of secrets assigned to the group and a subset of the random vectors assigned to the authorized members, and the second intermediate matrix elements are calculated based on a secret from the second group of secrets assigned to the group and the subset of the random vectors assigned to the authorized members; the private key is a function of the set of member secrets; The collection device of claim 1 .
3. the first intermediate matrix element is a first intermediate product of a multiplication of a first intermediate coefficient; The acquisition device of claim 2 , wherein the second intermediate matrix element is a second intermediate product of a multiplication by a second intermediate coefficient.
4. a first intermediate coefficient having a base that is a secret from the first group of secrets and a random exponent that is an element of the subset of random vectors assigned to the authorized members; A second intermediate coefficient is a random vector having a base that is a secret from the second group of secrets and assigned to the authorized members. [0010] having a random index that is an element of said subset of The collection device of claim 3 .
5. 5. The collection device of claim 2, wherein the intermediate matrix is a diagonal matrix and the secret key is a trace of a third matrix that is a product of multiplications of coefficient matrices, each coefficient matrix having a random exponent and a base that is a matrix member secret, and different matrix member secrets are products of the random matrix multiplied by different intermediate matrices and multiplied by the inverse of the random matrix.
6. 1. A method for collecting data from a group of authorized members, the method comprising: receiving, by a collection unit, a message and a message signature; validating, by the collection unit, whether the message was received from one of the authorized members of the group without identifying the authorized member that sent the message, the validating step comprising applying a second plurality of mathematical operations to a secret first group, a secret second group, and a first portion of the message signature; rejecting the message when the message was not received by the collection unit from any authorized member of the group; collecting data embedded in said message upon receipt of said message from one of said authorized members of said group; Equipped with a message signature received from the authorized member, the message signature including a first portion and a second portion; the second portion is generated using a private key; The private key is calculated by applying a first plurality of mathematical operations to a member secret assigned to the authorized member and a random vector; the collection unit has access to the first group of secrets and the second group of secrets but is unaware of the assignment of member secrets to the authorized members of the groups; method.
7. The method of claim 6, wherein the distinct matrices of the set of member secrets are functions of a random matrix, an inverse of the random matrix, and an intermediate matrix including a first intermediate matrix element and a second intermediate matrix element; the first intermediate matrix elements are calculated based on a secret from the first group of secrets assigned to the group and a subset of the random vectors assigned to the authorized members, and the second intermediate matrix elements are calculated based on a secret from the second group of secrets assigned to the group and the subset of the random vectors assigned to the authorized members; the private key is a function of the set of member secrets; The method according to claim 6.
8. 8. The method of claim 7, wherein the first intermediate matrix element is a first intermediate product of a multiplication by a first intermediate coefficient, and the second intermediate matrix element is a second intermediate product of a multiplication by a second intermediate coefficient.
9. a first intermediate coefficient having a base that is a secret from the first group of secrets and a random exponent that is an element of the subset of random vectors assigned to the authorized members; A second intermediate coefficient is a random vector having a base that is a secret from the second group of secrets and assigned to the authorized members. [0025] having a random index that is an element of said subset of The method according to claim 8.
10. 10. The method of claim 7, wherein the intermediate matrix is a diagonal matrix and the secret key is a trace of a third matrix that is a product of multiplications of coefficient matrices, each coefficient matrix having a random exponent and a base that is a matrix member secret, and different matrix member secrets are products of the random matrix multiplied by different intermediate matrices and multiplied by the inverse of the random matrix.
11. A computer program comprising instructions for collecting data from a group of authorized members, said instructions, when executed by a machine, causing said machine to perform operations including the steps of the method according to any one of claims 6 to 10.
Citation Information
Patent Citations
Method and system for generating list signatures
JP2007538443A
Data collection system, data collection method, gateway device and data compaction system
JP2015023375A
Secure communication for IoT devices in vehicles
JP2020532215A
Electronic group signature method with revocable anonymity, equipment and programs for implementing the method
US20040260926A1
Group signature with local revocation verification with capacity for lifting anonymity
US20120017083A1
