Blockchain-based slider assembly whole-process data traceability management method and system
Patent Information
- Application Number
- CN202610944770.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-29
- Publication Date
- 2026-09-22
AI Technical Summary
然而,这些主流方案通常仅将区块链作为“存证工具”,未解决工序执行前的实体身份实时核验问题,也未建立跨主体的联合签名确权机制,更未设计严格的工序状态转移规则
[0055]本申请将滑块的二维码标识与其微观结构图像提取的物理指纹信息进行关联,生成第一关联信息,由于物理指纹信息无法被复制或替换,有效防止了标识被恶意更换,实现了“数字身份”与“物理实体”的强绑定;本发明要求每道工序的工序数据必须经过至少两个授权主体如设备主体和执行主体的联合签名才能生成有效工序记录,避免了单一主体权力过大的问题,确保了工序数据的真实性、完整性及责任主体的清晰界定;通过为滑块建立包含单向转移关系及返工计数器的工序状态机,并利用累加器对工序标识序列进行顺序依赖验证,从机制上杜绝了工序跳过、顺序错乱及无限返工等流程违规行为,保障了装配流程的合规性。
Smart Images

Figure CN122798136A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of industrial production management technology, and more specifically, to a blockchain-based method and system for full-process data traceability management of slider assembly. Background Technology
[0002] Currently, data traceability management in the assembly process of slider-type products is of crucial industrial value for ensuring product quality, locating faulty links, and implementing production responsibility. Traditional methods primarily rely on paper records or stand-alone databases for process data registration. However, these methods suffer from inherent problems such as data tampering, opaque records, and isolated information between processes. Once a quality anomaly occurs, it is difficult to quickly and accurately trace back to the specific process and responsible party. To address these shortcomings, existing technologies have introduced electronic identification such as barcodes and RFID, as well as centralized production execution systems. These methods associate the slider's identification with certain process parameters, enabling electronic collection of process data. However, these methods still face significant challenges: First, electronic identification such as QR code labels is easily replaced or forged, failing to guarantee a strong binding relationship between the "identifier" and the "physical slider entity"; second, centralized system database administrators possess excessive privileges, allowing them to unilaterally modify historical process records, making data reliability dependent on absolute trust in the administrator; finally, existing methods lack rigid constraints on process sequence, making it difficult to effectively prevent violations such as skipping processes, disordered sequences, or unauthorized rework.
[0003] In recent years, some studies have attempted to apply blockchain technology to manufacturing traceability, utilizing its immutability and decentralization to store process hash values. However, these mainstream solutions typically treat blockchain merely as a "proof-keeping tool," failing to address the issue of real-time verification of entity identities before process execution, the establishment of cross-entity joint signature confirmation mechanisms, or the design of strict process state transition rules. Therefore, unresolved technical shortcomings remain, such as the disconnect between "physical sliders" and "digital records," the ability of a single entity to independently complete data signatures, and the potential for process bypassing.
[0004] In summary, there is an urgent need for a traceability management method that can deeply integrate the physical entity of the slider, the operation permissions of multiple subjects, and the logical sequence of processes, in order to improve the credibility and supervision capabilities of assembly process data. Summary of the Invention
[0005] To address the shortcomings of existing technologies, this application provides a blockchain-based method and system for full-process data traceability management of slider assembly.
[0006] Firstly, this application provides a blockchain-based method for full-process data traceability management in slider assembly, including:
[0007] Obtain the slider, assign identification information to the slider, extract the fingerprint information of the slider, associate the identification information with the fingerprint information, and generate the first association information of the slider;
[0008] A process state machine is established for the slider, the process state machine includes process states arranged according to a preset process sequence, and the transitions are performed according to the process sequence;
[0009] Based on the current process, obtain the second association information of the current slider and compare it with the first association information. If the comparison result meets the preset comparison conditions, execute the current process.
[0010] After the current process is completed, the process data of the current process is obtained, the process data is signed by the verification information of at least two authorized entities to obtain the signed data, and then associated with the process data to generate the current process record;
[0011] The current process is verified using preset verification rules. If the current process is in a terminated state, the process record is output.
[0012] Furthermore, the step of acquiring the slider and assigning identification information to the slider includes:
[0013] A unique QR code identifier is generated for the slider, and the QR code identifier is associated with the attribute information of the slider to obtain the identifier information;
[0014] The attribute information includes: slider model, production batch, and source of raw materials.
[0015] Further, the extraction of the fingerprint information of the slider includes:
[0016] A microscopic structure image of a preset area on the slider is acquired, and physical fingerprint features are extracted from the microscopic structure image using a feature extraction algorithm;
[0017] The physical fingerprint features are stored in the form of a feature point set or the hash value of the feature point set;
[0018] The identification information is concatenated with the physical fingerprint features to obtain concatenated data, and the hash value of the concatenated data is calculated as the first associated information.
[0019] Furthermore, establishing a process state machine for the slider includes:
[0020] Define the state types of the process state machine, including a start state, at least one intermediate state, a termination state, and an abnormal state.
[0021] According to the preset process sequence, the direction from the starting state to the intermediate state and from the intermediate state to the ending state are set as a one-way transfer relationship;
[0022] In this process, any process state can be transferred to the abnormal state, and the one-way transfer relationship does not include the preset rework transfer path;
[0023] The process state of the slider includes a state vector, and each component of the state vector corresponds to the execution state of a process. The execution state includes incomplete, completed and qualified, and completed but unqualified. The initial value of each component is incomplete.
[0024] Furthermore, establishing a process state machine for the slider also includes:
[0025] Set a rework counter for the slider and set the initial value of the rework counter to 0;
[0026] If the process data of the current process does not meet the preset state conditions, the current state of the slider is transferred to the preset rework start state in the process sequence, and the value of the rework counter is incremented by 1.
[0027] After the slider is transferred to the rework start state, the corresponding component in the state vector is reset to incomplete;
[0028] If the value of the rework counter reaches the preset upper limit, the current state of the slider will be changed to an abnormal state.
[0029] Further, obtaining the second association information of the current slider and comparing it with the first association information includes:
[0030] Before each process is executed, the current identification information and current fingerprint information of the slider are re-acquired, and second association information is generated;
[0031] The first association information and the second association information are parsed into a first feature point set and a second feature point set, and the matching rate between the first feature point set and the second feature point set is calculated by a feature point matching algorithm.
[0032] If the matching rate is greater than a preset matching rate threshold, continue executing the current process; otherwise, change the current state of the slider to an abnormal state.
[0033] Furthermore, the step of signing the process data using verification information from at least two authorized entities includes:
[0034] The authorized entities include a first entity and a second entity, namely, the device entity and the execution entity;
[0035] Obtain the first private key of the first entity and the second private key of the second entity;
[0036] The device parameters in the process data are signed using the first private key to generate a first signature;
[0037] The second private key is used to sign the manual confirmation result in the process data to generate a second signature;
[0038] Verify whether the equipment parameters and the manual confirmation result meet the preset consistency conditions. If the consistency conditions are met, update the corresponding component in the state vector to "completed and qualified" and combine the process data, the first signature and the second signature into a data packet.
[0039] The data packet is linked with the previous process record to form the current process record;
[0040] If the consistency condition is not met, the current state of the slider will be transitioned to an abnormal state.
[0041] Furthermore, the step of verifying the status of the current process using preset verification rules includes:
[0042] Obtain the process identifier sequence of the completed processes of the slider, input the process identifier sequence into the accumulator, and generate the accumulated value;
[0043] Based on the accumulated value, the identifier of the current process, and the process sequence, a sequence dependency proof for the current process is generated and verified. If the verification passes, the current process is accepted; if the verification fails, it is determined to be an abnormal sequence, and the current state of the slider is transferred to an abnormal state.
[0044] Furthermore, the status verification of the current process also includes:
[0045] Extract signature data and process identifier from the current process record;
[0046] The signature data of each process is obtained in reverse order of the process sequence and matched with the expected authorized entity corresponding to each process. The first process that fails to match is designated as the responsible process.
[0047] The current process identifier, the responsible process identifier, and the status vector are combined to obtain the anomaly record.
[0048] Secondly, this application also provides a blockchain-based data traceability management system for the entire process of slider assembly, including: a data acquisition module, a construction module, a comparison module, a confirmation module, and a verification module.
[0049] Acquisition module: used to acquire the slider, assign identification information to the slider, extract the fingerprint information of the slider, associate the identification information with the fingerprint information, and generate the first association information of the slider;
[0050] Construction module: used to establish a process state machine for the slider, the process state machine includes process states arranged in a preset process sequence, and transitions are performed in the process sequence;
[0051] Comparison module: used to obtain the second association information of the current slider based on the current process, and compare it with the first association information. If the comparison result meets the preset comparison conditions, the current process is executed.
[0052] Confirmation module: After the current process is completed, it obtains the process data of the current process, signs the process data with the verification information of at least two authorized entities to obtain signature data, and associates it with the process data to generate the current process record;
[0053] Verification module: Used to verify the status of the current process according to preset verification rules, and output the process record when the current process status is terminated.
[0054] Compared with the prior art, the effective effects achieved by the present invention are as follows:
[0055] This application associates the QR code identifier of the slider with the physical fingerprint information extracted from its microstructure image to generate the first association information. Since the physical fingerprint information cannot be copied or replaced, it effectively prevents the identifier from being maliciously replaced, achieving a strong binding between "digital identity" and "physical entity". This invention requires that the process data of each process must be jointly signed by at least two authorized entities, such as the equipment entity and the execution entity, to generate a valid process record. This avoids the problem of excessive power of a single entity and ensures the authenticity, integrity and clear definition of the responsible entity of the process data. By establishing a process state machine for the slider that includes a one-way transfer relationship and a rework counter, and using an accumulator to perform sequential dependency verification on the process identifier sequence, the mechanism eliminates process violations such as process skipping, disordered sequence and unlimited rework, ensuring the compliance of the assembly process. Attached Figure Description
[0056] Figure 1 A flowchart illustrating the blockchain-based data traceability management method for the entire process of slider assembly provided in this application embodiment;
[0057] Figure 2 A flowchart of a state machine-based slider assembly process management method provided in this application embodiment;
[0058] Figure 3A flowchart illustrating the full-process data management method for slider assembly based on dual digital signature cross-validation provided in this application embodiment;
[0059] Figure 4 A schematic diagram of a blockchain-based slider assembly full-process data traceability management system provided in an embodiment of this application. Detailed Implementation
[0060] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.
[0061] See Figure 1 This is a flowchart of a blockchain-based data traceability management method for the entire process of slider assembly provided in this embodiment. The method includes steps S101 to S105, wherein:
[0062] S101: Obtain the slider, assign identification information to the slider, extract the fingerprint information of the slider, associate the identification information with the fingerprint information, and generate the first association information of the slider;
[0063] S102: Establish a process state machine for the slider, the process state machine includes process states arranged according to a preset process sequence, and transfers are performed according to the process sequence;
[0064] S103: Based on the current process, obtain the second association information of the current slider and compare it with the first association information. If the comparison result meets the preset comparison conditions, execute the current process.
[0065] S104: After the current process is completed, obtain the process data of the current process, sign the process data with the verification information of at least two authorized entities to obtain the signature data, and associate it with the process data to generate the current process record;
[0066] S105: Verify the status of the current process according to the preset verification rules. If the current process status is terminated, output the process record.
[0067] In practice, during the production process of ball bearing guides, the slider body needs to be assembled after machining.
[0068] As is well known, a ball bearing guide consists of a guide rail and a slider. The slider has a ball circulation mechanism inside. When the slider moves along the guide rail, the balls roll between the guide rail and the slider.
[0069] Slider assembly refers to the process of installing components such as balls, cages, circulators, and seals into the slider body.
[0070] In practice, the slider assembly process includes the following steps in sequence: assembly, circulator installation, ball assembly, seal installation, cage installation, and final quality inspection.
[0071] Each process generates data such as equipment parameters, operators, and quality inspection results.
[0072] As is generally known, blockchain technology records data using a distributed ledger and chained data structure.
[0073] As an optional implementation, in slider assembly, the data of each process is organized into blocks according to the execution order and linked one after the other. Each slider corresponds to an independent process chain, and all process records on the chain can be traversed through the slider identifier.
[0074] Regarding step S101:
[0075] Obtain the slider, assign identification information to the slider, extract the fingerprint information of the slider, associate the identification information with the fingerprint information, and generate the first association information of the slider.
[0076] In practice, when the slider enters the assembly process, the attribute information of the slider is obtained, including: slider model, production batch, and source of raw materials.
[0077] For example, the attribute information may also include: slider serial number, order number, customer code, design version number, material grade, heat treatment batch number, material arrival date, supplier code, etc.
[0078] As an optional implementation, the attribute information is QR code encoded according to the ISO / IEC 18004 standard. The encoding mode is selected according to the length and character type of the attribute information string, and the minimum symbol version is determined according to the data volume and error correction level to obtain the QR code graphic.
[0079] The QR code graphic is attached to the slider by laser engraving. The QR code graphic is scanned and parsed to obtain the QR code identifier corresponding to the slider. The QR code identifier is a unique string.
[0080] As is well known, the ISO / IEC 18004 standard includes rules for defining symbol versions, error correction levels, and encoding modes.
[0081] The versions range from 1 to 40. The higher the version number, the more modules the symbol represents, and the larger the amount of data that can be stored.
[0082] Error correction levels are divided into four levels: L, M, Q, and H. The error correction capabilities from low to high are as follows: Level L can recover about 7% of code word errors, Level M can recover about 15%, Level Q can recover about 25%, and Level H can recover about 30%.
[0083] Encoding modes include numeric mode, alphanumeric mode, byte mode, and Japanese mode, which are automatically selected based on the type of input characters.
[0084] The QR code identifier is associated with the attribute information of the slider to obtain the identifier information.
[0085] For example, if the slider model is WY-35, the production batch is BATCH-2401, and the raw material source is supplier A, then the attribute information can be concatenated into the string "WY-35|BATCH-2401|SUP-A" as the QR code identifier corresponding to the slider.
[0086] In practice, the byte encoding mode is selected according to the character type, and each character of the string is converted into ASCII code bytes to obtain a 23-byte raw data bit stream.
[0087] Based on environmental factors in the slider assembly line, such as the presence of oil, dust, and cutting fluid splashes, select the error correction level H.
[0088] Based on the data size of 23 bytes and the error correction level H, the minimum symbol version is determined to be version 2.
[0089] As an optional implementation, the Reed-Solomon error correction algorithm is invoked to generate error correction codewords.
[0090] As is known, the Reed-Solomon error correction algorithm is based on polynomial operations over the Galois field. It treats the original data codeword as polynomial coefficients, and performs polynomial division on the data polynomial using the generator polynomial constructed from the root sequence determined by the error correction level and version. The remainder obtained is the error correction codeword.
[0091] For example, according to version 2 and error correction level H, 18 error correction codewords need to be generated, each codeword being 8 bits. The 23 data codewords and the 18 error correction codewords are interleaved in the order specified by the standard to obtain a final information bit stream of 41 bytes.
[0092] Draw the symbol matrix of the 25×25 module of version 2, which includes functional patterns such as position detection patterns, timing patterns, and correction patterns.
[0093] The information bitstream is filled into the data module area in a serpentine order starting from the bottom right corner. Binary 1 corresponds to the dark module and 0 corresponds to the light module. A mask pattern is generated according to the standard, and the data module is XORed to obtain the QR code graphic.
[0094] Associating the QR code identifier with the QR code graphic, scanning the QR code graphic can parse the QR code identifier "WY-35|BATCH-2401|SUP-A", which serves as the identifier information for the slider.
[0095] A microscopic structure image of a preset area on the slider is acquired, and physical fingerprint features are extracted from the microscopic structure image using a feature extraction algorithm.
[0096] For example, a rectangular acquisition area can be defined on the non-working surface of the slider for physical feature extraction.
[0097] In a specific implementation, when the slider enters the assembly process for the first time, the intersection of the edges of the two cast positioning bosses on the side of the slider is used as a reference point, and the two reference points are connected to obtain a reference line; with the reference line as a reference, the offset of the acquisition area is determined along the vertical direction.
[0098] For example, the method for determining the offset is as follows: taking the baseline as the starting position, the acquisition window is moved successively along the vertical direction with a step size equal to the physical size corresponding to a single pixel of the camera. After each movement, the sum of gray-level gradient magnitudes of the microstructure image within the acquisition window is calculated, and the center position of the window when the sum of gray-level gradient magnitudes reaches its maximum value is recorded. The vertical distance of this center position relative to the baseline is used as the fixed offset.
[0099] The side length of the rectangular acquisition area is predetermined by the following method: take a slider of the same model, position it by the fixed offset, and acquire microstructure images using multiple candidate side lengths.
[0100] Candidate side lengths are selected from one-quarter to one-half of the camera's field of view, with four side length values chosen at equal intervals within this range. A scale-invariant feature transform algorithm is run on the image acquired for each side length, and the number of detected keypoints is counted.
[0101] The side length with the number of key points greater than a preset threshold and the smallest standard deviation of the number in each measurement is selected as the fixed side length to obtain the microstructure image of the rectangular acquisition area.
[0102] In a specific implementation, the quantity threshold is obtained by running a scale-invariant feature transformation algorithm on the microstructure image of the slider, statistically analyzing the distribution of the number of key points, and taking the mean minus twice the standard deviation as the quantity threshold.
[0103] A scale-invariant feature transformation algorithm is performed on the microstructure image to construct a Gaussian pyramid by setting an initial scale value, which is equal to half the average size of the grains in the slider microstructure image.
[0104] In a specific implementation, the average grain size is obtained by performing Fourier spectrum analysis on the microstructure image of the slider. That is, Fourier transform is performed on the image, and the frequency component with the largest amplitude other than the DC component is searched in the spectrum. The spatial period length corresponding to this frequency is taken as the average grain size.
[0105] The pyramid is constructed in four groups, each containing four levels of scale. The scales within each group increase in a geometric progression with a common ratio of the square root of 2. The next image group is obtained by downsampling the previous image group by half.
[0106] Subtracting the two Gaussian images at adjacent scales within each group yields three difference images, which are then used to construct the difference pyramid.
[0107] Extremum point detection is performed on each pixel in each difference image. The pixel is compared with the 8 neighboring pixels in the same layer, the corresponding position and the 8 neighboring pixels in the previous layer difference image (a total of 9 pixels), and the corresponding position and the 8 neighboring pixels in the next layer difference image (a total of 9 pixels), for a total of 26 neighboring pixels.
[0108] If the grayscale value of a pixel is the maximum or minimum value among these twenty-six pixels, it is recorded as a candidate keypoint.
[0109] The physical fingerprint features are stored in the form of a feature point set or the hash value of the feature point set;
[0110] The identification information is concatenated with the physical fingerprint features to obtain concatenated data, and the hash value of the concatenated data is calculated as the first associated information.
[0111] In practice, a Taylor expansion is performed on each candidate keypoint to fit the offset with sub-pixel precision.
[0112] When the absolute value of the offset is less than the offset convergence threshold, the coordinates of the corresponding candidate key point are updated to the sub-pixel position; otherwise, the corresponding candidate key point is discarded.
[0113] As an optional implementation, the offset convergence threshold is set to half the camera pixel pitch.
[0114] The contrast of the corresponding candidate keypoints is calculated, with a contrast threshold of 5% of the image's grayscale dynamic range. The grayscale dynamic range is determined by statistically analyzing the minimum and maximum grayscale values of the slider microstructure image. If the absolute contrast value is lower than the contrast threshold, the corresponding candidate keypoint is discarded.
[0115] The principal curvature ratio of the corresponding candidate keypoints is calculated. The principal curvature ratio threshold is determined by the following method: acquiring slider images, calculating the signal-to-noise ratio of the images, and calculating the principal curvature ratio threshold based on the functional relationship between the signal-to-noise ratio and the principal curvature ratio threshold that has been fitted experimentally in advance.
[0116] If the ratio is higher than the principal curvature ratio threshold, the corresponding candidate key point is discarded.
[0117] Using the key point as the center, a gradient direction histogram is generated within a circular neighborhood with a radius three times the current scale value. The histogram is divided into 36 bars, one bar for every 10 degrees.
[0118] In practice, the direction of the peak value of the histogram is taken as the primary direction of the candidate key point. If the amplitude of other directions reaches a preset proportion threshold of the peak amplitude, they are assigned as secondary directions.
[0119] The ratio threshold is determined by testing the matching repetition rate under different ratios, and the minimum value when the matching repetition rate is stable is taken.
[0120] Centered on the keypoint, a square neighborhood with a side length sixteen times the current scale value is selected. This neighborhood is then divided into four-by-four sub-blocks, for a total of sixteen sub-blocks. Within each sub-block, the gradient accumulation values in eight directions are calculated, forming a 128-dimensional descriptor vector. This vector is then normalized.
[0121] The descriptors of all key points are concatenated in order and serialized into a binary stream to obtain the feature point set as the physical fingerprint feature of the slider.
[0122] As an optional implementation, the binary stream can be computed with a SHA256 hash value and stored.
[0123] Read the generated identification information, which consists of a string composed of a QR code identifier and attribute information; concatenate the identification information with the physical fingerprint features in sequence, inserting a separator in between.
[0124] The concatenated data is input into the SHA256 hash function, and the calculated hash value is used as the first associated information.
[0125] For example, if the coordinates of the intersection of the edges of the two cast positioning bosses on the side of the slider are (10.0, 5.0) and (30.0, 5.0) respectively after visual recognition, the two points can be connected to obtain a straight line with a baseline of Y=5.0 mm.
[0126] The physical size corresponding to each camera pixel is 0.01 mm / pixel. Starting from the baseline, the acquisition window is moved vertically upwards in increments of 0.01 mm, and the sum of grayscale gradient magnitudes within the window is calculated after each movement.
[0127] The total gradient magnitude reaches its maximum when the window center moves to Y = 8.2 mm. Record the vertical distance of this center position relative to the baseline as a fixed offset of 3.2 mm.
[0128] The camera's field of view has a side length of 12 mm. The candidate side lengths are one-quarter to one-half of the field of view side length, that is, 3 mm to 6 mm, with three side lengths of 4 mm, 5 mm and 6 mm selected at equal intervals.
[0129] The number threshold was determined by taking typical images of the same type of slider and running SIFT. The mean number of keypoints was 70 and the standard deviation was 10. Subtracting twice the standard deviation from the mean yielded 50.
[0130] For each side length, an image was acquired and the SIFT algorithm was run. The number of key points was counted 5 times. When the side length was 4 mm, the number of key points was 32, 35, 33, 31 and 34 respectively. The average value was 33, which was lower than the number threshold.
[0131] When the side length is 5 mm, the number of key points are 48, 52, 49, 51 and 50 respectively, with an average of 50, which is lower than the number threshold.
[0132] When the side length is 6 mm, the number of key points are 65, 68, 63, 66, and 67, with a mean of 65.8 and a standard deviation of 1.9. A side length of 6 mm is selected as the fixed side length.
[0133] The camera exposure time was determined by scanning the grayscale response curve of the standard sample. When the main peak of the image grayscale histogram was at approximately 160, the exposure time was locked at 15 milliseconds. The coaxial light source current intensity was adjusted until the average grayscale gradient amplitude at the metal grain boundaries was maximized, and the locked current was 120 mA.
[0134] Move the camera to a position 3.2 mm off the baseline and with a 6 mm side length of the acquisition window, and take a microscopic image with a resolution of 1024×1024 pixels and 8-bit grayscale.
[0135] The SIFT algorithm is run on the microscopic image. The initial scale value is obtained through Fourier spectrum analysis, that is, Fourier transform is performed on the microscopic structure image of the slider. The spatial period length corresponding to the frequency with the largest amplitude other than the DC component in the spectrum is 0.5 mm. Half of this, 0.25 mm, is taken as the initial scale.
[0136] The Gaussian pyramids were constructed in four groups, each with four layers, with a downsampling factor of 2 between groups and a common scale ratio of √2. The Gaussian difference pyramids were constructed in three groups.
[0137] Extreme points are detected in the difference pyramid, with a neighborhood comparison range of 26 points. After Taylor expansion, the sub-pixel offset convergence threshold is set to 0.005 mm, which is half the pixel pitch.
[0138] The contrast threshold is set to 5% of the image's grayscale dynamic range, where the dynamic range is 0-255, so the contrast threshold is 12.75.
[0139] The threshold for the principal curvature ratio was determined to be 10 through a signal-to-noise ratio experiment; after screening, a total of 247 key points were obtained.
[0140] A primary direction is assigned to each keypoint, with a secondary direction ratio threshold of 80%, generating a 128-dimensional descriptor. All descriptors are concatenated into a binary stream, totaling 247×128×4 bytes, which serves as the physical fingerprint feature.
[0141] Regarding step S102:
[0142] A process state machine is established for the slider. The process state machine includes process states arranged in a preset process sequence, and transitions are performed in the process sequence.
[0143] See Figure 2 Here is a flowchart of the slider assembly process management method based on a state machine provided in this application embodiment, wherein:
[0144] Define the state types of the process state machine, including a start state, at least one intermediate state, a termination state, and an abnormal state.
[0145] In practice, a finite state machine can be used as the specific implementation of the process state machine.
[0146] The state types of the process state machine are defined as follows: the initial state corresponds to "to be assembled"; the intermediate states include four states: "circulator installation completed", "ball assembly completed", "seal installation completed", and "cage installation completed"; the final state corresponds to "final quality inspection completed".
[0147] According to the preset process sequence, the direction from the starting state to the intermediate state and from the intermediate state to the ending state are set as a one-way transfer relationship;
[0148] The process sequence is as follows: assembly, circulator installation, ball bearing assembly, seal installation, cage installation, and final quality inspection.
[0149] In this process, any process state can be transferred to the abnormal state, and the one-way transfer relationship does not include the preset rework transfer path;
[0150] In practice, if the final quality inspection fails, the ball bearing assembly is returned to the completed state for reassembly.
[0151] If the current process is any of the following: circulator installation, ball bearing assembly, seal installation, or cage installation, and the inspection result is unqualified, then it is allowed to return to the current process itself and re-execute it, that is, to transfer from the current state to itself.
[0152] The process state of the slider includes a state vector, the dimension of which is equal to the total number of assembly processes. Each component of the state vector corresponds to the execution state of a process. The execution state includes incomplete (0), completed and qualified (1), and completed and unqualified (2). The initial value of each component is incomplete (0).
[0153] A rework counter is set for the slider. The data type of the rework counter is an unsigned integer, and the initial value of the rework counter is set to 0.
[0154] If the process data of the current process does not meet the preset state conditions, the current state of the slider is transferred to the preset rework start state in the process sequence, and the value of the rework counter is incremented by 1.
[0155] In practice, the preset state conditions refer to the comparison results between the process data of the current process and the pre-stored qualification standards.
[0156] As an optional implementation, the equipment testing parameters collected in this process, such as pre-pressure values and dimensional measurement values, are compared with preset qualified ranges. At the same time, the operator's manual confirmation result, i.e., qualified or unqualified, is used as an auxiliary judgment to determine whether it is consistent with the equipment testing parameters.
[0157] The preset acceptable range is determined based on the accuracy requirements of the project.
[0158] The preset condition is considered met only when the equipment's detection parameters fall within the acceptable range and the operator confirms that the result is consistent with the equipment's detection parameters; otherwise, it is considered not met.
[0159] In practice, a self-loop transfer is considered a rework transfer path, which is also subject to the rework counter. Each self-loop transfer increments the rework counter by 1.
[0160] After the slider is transferred to the rework start state, the corresponding component in the state vector is reset to incomplete;
[0161] If the value of the rework counter reaches the preset upper limit, the current state of the slider will be changed to an abnormal state.
[0162] The preset upper limit value is set according to the maximum allowable number of repeated assembly operations for that process as specified in the process design document for the corresponding model slider.
[0163] For example, the process specification for ball assembly stipulates that the same slider body is allowed to be assembled with balls no more than 3 times. During repeated loading, the balls may be scratched or deformed on the surface. After more than 3 times, the assembly quality cannot be guaranteed.
[0164] In specific implementation, taking the ball slider with model WY-35 and production batch BATCH-2401 as an example, the assembly process of the slider is as follows: process 0 to be assembled (starting state S0), process 1 circulator installation (S1), process 2 ball assembly (S2), process 3 seal installation (S3), process 4 cage installation (S4), process 5 final quality inspection (termination state S5), and abnormal state is recorded as Err.
[0165] Create a state vector V for the slider, with a dimension of 6 and components of 0 (incomplete), 1 (complete and qualified), and 2 (complete and unqualified). Initially, V = [0,0,0,0,0,0].
[0166] Three rework counters, C1, C2, and C3, are set up simultaneously. C1 is used for rework from process 5 to process 2, C2 is used for rework from process 4 to process 2, and C3 is used for rework from process 3 to process 2. The initial value of each counter is 0.
[0167] Set the maximum preset value to 3.
[0168] For example, the slider starts from S0. After completing process 1, the verification is passed, V[1] is updated to 1, and the state is transferred to S1. After completing process 2, the verification is passed, V[2]=1, and the state is transferred to S2. After process 3, V[3]=1, and the state is transferred to S3. After process 4, V[4]=1, and the state is transferred to S4. In process 5, the pre-pressure value is detected as 135N (the qualified range is 120-140N). The operator confirms that it is qualified, V[5]=1, and the state is transferred to S5. Finally, V=[1,1,1,1,1,1].
[0169] If the pre-pressure value detected in process 5 is 150N, which is outside the range, and the operator confirms that it is unqualified, then rework is triggered: the state changes from S5 to the preset rework start state S2, C1 increases to 1, and V[5] remains at 0.
[0170] Repeat steps 2 to 5. If the second step is still unqualified, C1 becomes 2. If the third step is still unqualified, C1 reaches the upper limit of 3. Then the state is transferred to the abnormal state Err, V[5] is updated to 2, and the abnormal record is recorded.
[0171] If the number of balls is incorrect in process 2, a self-loop rework is triggered: the state changes from S2 to S2, and C1 increases.
[0172] Regarding step S103:
[0173] Based on the current process, obtain the second association information of the current slider and compare it with the first association information. If the comparison result meets the preset comparison conditions, execute the current process.
[0174] Before each process is executed, the QR code identifier and physical fingerprint of the slider are re-acquired, and second association information is generated.
[0175] The QR code identifier is obtained by scanning the QR code image on the non-working surface of the slider; the current physical fingerprint is obtained in the same way as the first fingerprint extraction: a microstructure image is captured in the preset collection area, and the scale-invariant feature transformation algorithm is run to extract the current feature point set.
[0176] The current QR code identifier and the current physical fingerprint are concatenated according to the same concatenation rules used to generate the first association information, and the SHA256 hash value is calculated on the concatenated data to obtain the second association information.
[0177] In practice, the QR code graphic on the non-working surface of the slider is first scanned and parsed to obtain the current QR code identifier.
[0178] Read the first association information stored in the blockchain during the initial binding and parse out the original QR code identifier; compare the current QR code identifier with the original QR code identifier.
[0179] If the two are inconsistent, it is determined that the current slider and the first bound slider do not have the same digital identity, the current state of the slider is transferred to an abnormal state and terminated.
[0180] If the two match, then proceed with physical fingerprint matching.
[0181] The original physical fingerprint features corresponding to the first association information are read from the storage medium and used as the first feature point set; the current physical fingerprint features in the second association information are used as the second feature point set.
[0182] As an optional implementation, a feature point matching algorithm based on nearest neighbor matching is used to calculate the matching rate. For each feature point in the first feature point set, the Euclidean distance between it and the descriptor of each feature point in the second feature point set is calculated to find the nearest distance and the second nearest distance.
[0183] If the ratio of the nearest distance to the second nearest distance is less than a preset threshold, then the pair of feature points is considered a matching pair. The number of matching pairs is counted, and the matching rate is equal to the number of matching points divided by the total number of feature points in the first feature point set.
[0184] The ratio threshold is determined according to the needs of the project; for example, the ratio threshold can be set to 75%.
[0185] If the matching rate is greater than a preset matching rate threshold, continue executing the current process; otherwise, change the current state of the slider to an abnormal state.
[0186] As an optional implementation method, the preset matching rate threshold is set based on the following: taking microscopic images of sliders of the same model, calculating the matching rate between each extracted feature point set and the initial feature point set, and statistically analyzing the mean and standard deviation of the matching rate. The mean minus three times the standard deviation is taken as the matching rate threshold.
[0187] When the calculated matching rate is greater than the matching rate threshold, it is determined that the current slider and the first bound slider are the same entity, and the current process continues; otherwise, it is determined that the slider has been swapped or the identifier has been forged, and the current state of the slider is transferred to an abnormal state.
[0188] For example, when the slider is first bound, the original QR code identifier is the string "WY-35|BATCH-2401|SUP-A".
[0189] Before the current process is executed, scan the QR code graphic on the non-working surface of the slider and parse it to obtain the current QR code identifier "WY-35|BATCH-2402|SUP-B".
[0190] The current identifier is compared with the original identifier. If they do not match, it is determined that the current slider is not the same digital identity as the slider that was first bound. The current state of the slider is then transferred to an abnormal state and the process is terminated. Physical fingerprint matching is no longer performed.
[0191] For example, when a slider is first bound, the original QR code is identified as "WY-35|BATCH-2401|SUP-A", and the original feature point set contains 237 feature points.
[0192] Before the current process is executed, scan the QR code to obtain the current identifier "WY-35|BATCH-2401|SUP-A", which is consistent with the original identifier.
[0193] Microscopic images of the acquisition area were captured, and the current feature point set, totaling 150 feature points, was extracted. A nearest neighbor matching algorithm was used, with a ratio threshold set to 0.75, to calculate matching point pairs.
[0194] For each feature point in the original feature point set, calculate its Euclidean distance to the descriptor of each feature point in the current feature point set, and find the nearest and second nearest distances. If the ratio of the nearest distance to the second nearest distance is less than or equal to 0.75, it is recorded as a matching point pair. The final count shows that there are 45 valid matching point pairs.
[0195] The pre-statistical number of matching pairs for this model of slider under normal fluctuations was 210 with a standard deviation of 5. Subtracting three times the standard deviation from the mean yielded 195, which was taken as the minimum pass rate threshold. Since 45 is less than 195, the physical fingerprint matching was deemed a failure.
[0196] If the QR code identifier is the same but the physical fingerprint is different, it means that the QR code label has been transferred to another slider, which will transfer the current state of the slider to an abnormal state and terminate it.
[0197] For example, the original QR code identifier and original feature point set that a certain slider is initially bound to are the same as those in Example 2, with the original identifier being "WY-35|BATCH-2401|SUP-A" and the original feature point set having 237 points.
[0198] Before executing the current process, scan the QR code to obtain the current identifier "WY-35|BATCH-2401|SUP-A", which is consistent with the original identifier. Acquire the current microstructure image and extract the current feature point set, which contains 241 feature points.
[0199] Using the nearest neighbor matching algorithm with a ratio threshold of 0.75, a total of 212 valid matching point pairs were found. Since 212 is greater than the minimum passing threshold of 195, the physical fingerprint matching is considered successful.
[0200] If the QR code identifier and the physical fingerprint are consistent, it confirms that the current slider and the slider that was bound at the beginning are the same physical entity, and it is allowed to continue to execute the current process.
[0201] Regarding step S104:
[0202] After the current process is completed, the process data of the current process is obtained, and the process data is signed by the verification information of at least two authorized entities to obtain the signed data, which is then associated with the process data to generate the current process record.
[0203] See Figure 3 The flowchart below shows a method for managing the entire process data of slider assembly based on dual digital signature cross-validation, as provided in this application embodiment.
[0204] The authorized entities include a first entity and a second entity, namely, the device entity and the execution entity;
[0205] For example, the main body of the equipment corresponds to the automated equipment that performs the corresponding process, such as a ball bearing assembly machine or a pre-compression testing machine, and the main body of execution corresponds to the operator who confirms the process results on site.
[0206] In practice, depending on the quality management level, a third entity, namely the confirmation entity, can be added, which corresponds to senior management personnel with final review authority, such as team leaders or quality inspection engineers.
[0207] Each authorized entity is pre-assigned an asymmetric key pair. The private key is stored in its own independent secure medium.
[0208] For example, the device's private key is embedded in the device controller's secure chip and cannot be exported; the operator's and team leader's private keys are stored in the secure area of their personal UKey or dedicated mobile terminal, and a PIN code must be inserted and verified for each signature. The public keys of all authorized entities, along with their identity identifiers such as device number and employee number, are pre-registered in the blockchain's authorization list.
[0209] Obtain the first private key of the first entity and the second private key of the second entity;
[0210] The device parameters in the process data are signed using the first private key to generate a first signature;
[0211] The second private key is used to sign the manual confirmation result in the process data to generate a second signature.
[0212] Verify whether the equipment parameters and the manual confirmation result meet the preset consistency conditions. If the consistency conditions are met, update the corresponding component in the state vector to "completed and qualified" and combine the process data, the first signature and the second signature into a data packet.
[0213] In practice, the equipment parameters of the current process are collected. These process parameters include: equipment number, process number, measured values of process parameters such as pre-pressure value, displacement, torque value, and qualification mark generated by the equipment self-inspection.
[0214] For example, the rule for generating the equipment self-inspection pass mark is as follows: compare the measured value with the preset pass range. If the measured value falls within the range, it is marked as "pass"; otherwise, it is marked as "fail".
[0215] By taking a standard sample of this model of slider, repeating the process at least 30 times under normal working conditions, recording the measured values, calculating the average value and standard deviation, setting the acceptable range as the average value plus or minus three times the standard deviation, and then taking the intersection with the tolerance range as the acceptable range.
[0216] The tolerance range is given directly by the product technical specifications or process design documents.
[0217] In practice, the equipment number, process number, measured value, and pass mark are concatenated into a string of equipment parameters in a preset order, such as "equipment number|process number|measured value|pass mark".
[0218] The device parameter string is calculated to obtain a SHA256 hash value. The hash value is then encrypted using the device private key by calling the Elliptic Curve Digital Signature Algorithm (ECDSA) to generate the first signature.
[0219] In practice, ECDSA is a digital signature algorithm based on elliptic curve cryptography. The signer generates a random number and uses the random number and the base point of the elliptic curve to calculate an elliptic curve point. The x-coordinate of this point is taken as the first component of the signature. Then, the private key, hash value, and the random number are used to calculate the second component of the signature through modulo operation. The two components are combined in a standard format to form the signature output.
[0220] The slider identifier, process number, manual confirmation result, and current timestamp are concatenated into a confirmation string in a preset order, for example, in the order of "slider identifier|process number|manual confirmation result|timestamp".
[0221] The manual confirmation result is input by the executing entity through a terminal, and the value is "qualified" or "unqualified". A SHA256 hash value is calculated on the confirmation string, and the hash value is encrypted using the executing entity's private key using the Elliptic Curve Digital Signature Algorithm (ECDSA) to generate a second signature.
[0222] As an optional implementation, the consistency condition determination process is as follows: The pass / fail flag field is parsed from the device parameter string, and the manual confirmation result field is parsed from the confirmation string. The values of the two fields are then compared. If the two strings are completely identical (both are "pass" or both are "fail"), the consistency condition is satisfied; otherwise, it is not satisfied.
[0223] In practice, if the consistency condition is met, i.e., the two are the same, the component value corresponding to this process in the state vector is updated to 1, i.e., when both are "qualified", or 2, i.e., when both are "unqualified".
[0224] Combine the device parameter string, confirmation string, first signature, second signature, and current timestamp into a data packet.
[0225] If the consistency condition is not met, i.e., the two are different, the current state of the slider is transferred to an abnormal state, the component value corresponding to the state vector is retained as "incomplete", and the processing of all subsequent processes is terminated.
[0226] It should be noted that when both the equipment self-inspection pass mark and the manual confirmation result are "pass", the corresponding component of the state vector is updated to 1, indicating that the pass has been completed and the slider is normally transferred to the next process according to the process sequence; when both are "fail", the corresponding component of the state vector is updated to 2, indicating that the failure has been completed. At this time, it is not directly judged as the final abnormality, but the rework process defined in step S102 is triggered.
[0227] As an optional implementation, the current data packet is linked to the previous process record in a chain.
[0228] For example, the overall hash value of the previously stored process record is read from the blockchain, and the hash value is inserted as an additional field into the header of the current data packet.
[0229] Then, the SHA256 hash value of the current data packet is calculated again to obtain the hash value of the current process record. The current data packet and its hash value are then written into the blockchain.
[0230] For example, if the product technical specifications of the slider specify that the pre-pressure range for the ball assembly process is 120N to 140N.
[0231] In this range, the pre-pressure value was measured by taking 30 standard samples. If the calculated average value is 130N and the standard deviation is 3.3N, the average value plus or minus three times the standard deviation is 120.1N to 139.9N. This value intersects with the tolerance range of 120N to 140N given in the specification. Finally, 120N to 140N is adopted.
[0232] The slider is marked "WY-35|BATCH-2401|SUP-A". After the ball assembly process is completed, if the equipment controller collects a pre-pressure value of 135N, which is within the acceptable range, the equipment self-inspection qualification mark is "qualified".
[0233] The device's private key is used to perform an ECDSA signature on the string "Device A|2|135|Qualified" to obtain the first signature.
[0234] The executing entity inputs the manual confirmation result as "qualified" through the terminal, performs ECDSA signature on the string "WY-35|2|qualified|2024-05-28T14:30:00" to obtain the second signature.
[0235] The equipment qualification mark and manual confirmation result are both "qualified", meeting the conditions. Update the component of process 2 in the state vector to 1. Combine the equipment parameter string, confirmation string, first signature, second signature, and timestamp into a data packet. Read the overall hash value of the previous process record, i.e., the cyclic device installation, append it to the data packet header, calculate the overall hash value of the current data packet, and write the data packet and its hash value into the blockchain.
[0236] For example, if the equipment controller collects a preload value of 150N after the ball bearing assembly process is completed, and 150N is outside the acceptable range, the equipment self-inspection qualification mark is "unqualified".
[0237] The device's private key is used to perform an ECDSA signature on the string "Device 01|2|150|Unqualified" to obtain the first signature.
[0238] The operator views the measured value of 150N and the equipment self-test mark "unqualified" displayed on the terminal, and judges on the spot, for example, if the measured value is indeed out of range, and inputs the manual confirmation result as "unqualified".
[0239] The terminal performs an ECDSA signature on the string “WY-35|BATCH-2401|SUP-A|2|Invalid|2024-05-28T15:00:00” to obtain a second signature.
[0240] The equipment's self-inspection pass mark is "fail" and the manual confirmation result is also "fail". Since the two are the same, they meet the consistency condition.
[0241] At this point, if the component of process 2 in the state vector is updated to "2 completed but unqualified", the current state of the slider is transferred to the preset rework start state in the process sequence, and the value of the rework counter is incremented by 1. If the value of the rework counter has not reached the preset upper limit, the corresponding component in the state vector is updated to "incomplete", and the process is re-executed. If the preset upper limit has been reached, the equipment parameter string, confirmation string, first signature, second signature, and timestamp are combined into a data packet, and the current process state is transferred to an abnormal state. Regarding step S105:
[0242] The current process is verified using preset verification rules. If the current process is in a terminated state, the process record is output.
[0243] Obtain the process identifier sequence of the completed processes of the slider, input the process identifier sequence into the accumulator, and generate the accumulated value.
[0244] As an optional implementation method, a sequential verification method based on cryptographic accumulators can be used to achieve cryptographic verification of the process sequence.
[0245] For example, an RSA-based accumulator is used as a specific implementation of the accumulator. This RSA accumulator aggregates a set into a single accumulated value through modulo exponentiation, and its security is based on the large integer factorization problem. The accumulator's parameters, modulus and generator, are generated during system initialization and shared by all nodes.
[0246] In practice, the process identifiers of the completed and qualified processes of the current slider are read from the blockchain and arranged in the order of process execution to obtain a process identifier sequence. For example, [1,2,3] indicates that processes 1, 2, and 3 have been completed.
[0247] The process identifier sequence is input into the RSA accumulator. The accumulated value is initialized as the modulo power of the generator. Each process identifier in the process identifier sequence is used as an exponent for accumulation operation, that is, the accumulated value is subjected to modulo exponentiation. The final output value is the accumulated value.
[0248] The accumulated value uniquely corresponds to the process identifier sequence. Any different sequence will produce a different accumulated value, and the original sequence cannot be deduced from the accumulated value.
[0249] Based on the accumulated value, the identifier of the current process, and the process sequence, a sequence dependency proof for the current process is generated and verified. If the verification passes, the current process is accepted; if the verification fails, it is determined to be an abnormal sequence, and the current state of the slider is transferred to an abnormal state.
[0250] The identifier of the current process and the preset process sequence determine that the current process must rely on the preceding process to complete.
[0251] As an optional implementation, a sequence dependency proof can be generated to prove that the current process conforms to the sequence dependency.
[0252] In practical implementation, a membership proof generation algorithm based on RSA accumulator can be used. The input of this algorithm is the current accumulated value and the set of predecessor process identifiers of the current process.
[0253] For example, all identifiers in the preceding process identifier set, i.e., the process identifier sequence, are multiplied together to obtain a product value. The base of the product value raised to the power of the generator is extracted from the current accumulated value, and this base is used as the evidence value.
[0254] After generating the evidence value, the evidence value, the current process identifier, and the current accumulated value are combined into an evidence data package.
[0255] Based on the proof data packet, a verification action is performed, multiplying the evidence value by the preceding step identifier multiple times, and then taking the remainder modulo to obtain the calculation result; the calculation result is compared with the accumulated value stored on the blockchain.
[0256] If the two are equal, the verification passes and the current process is accepted; if they are not equal, the verification fails, the sequence is judged to be abnormal, and the current state of the slider is transferred to the abnormal state.
[0257] Taking the slider of model WY-35 as an example, its process sequence is as follows: process 1: circulator installation, process 2: ball assembly, process 3: seal installation, process 4: cage installation, and process 5: final quality inspection.
[0258] During initialization, two prime numbers are multiplied to obtain the modulus, and an integer coprime to the modulus is selected as the generator. The initial value of the accumulator is set to the generator.
[0259] The illustrative example here uses small prime numbers. In practical engineering applications, the modulus of the accumulator should be a sufficiently large strong prime number, such as a secure prime number with a length of not less than 1024 bits. Specific parameters can be determined according to the system security level, referring to the national standard GB / T 32918 or relevant cryptographic standards.
[0260] For example, if we take prime numbers p=7 and q=17, then the modulus N=p×q=119; select an integer coprime to the modulus as the generator, for example g=2. Set the initial value A0 of the accumulator as the generator, i.e., A0=2.
[0261] Assuming the slider has completed steps 1 and 2, the step identifier sequence is [1, 2]. The accumulator performs the accumulation operation:
[0262] Accumulation process 1: The current accumulated value A0=2, calculate A1=(A0) mod N = 2 mod 119=2.
[0263] Accumulation step 2: Current accumulated value A1 = 2, calculate A2 = (A1) 2 mod N = 2 2 mod 119 = 4.
[0264] The final accumulated value A=4 is stored in the blockchain.
[0265] If the current process is process 3, the set of predecessor process identifiers is {1, 2}, and the predecessor product P = 1 × 2 = 2.
[0266] Read the accumulated value A=4 from the blockchain. Calculate the evidence value w using modular factorization (p=7, q=17), such that w... P ≡A(mod N). That is, solving for w. 2 ≡4 mod 119. We can find w=2, so the evidence value w=2.
[0267] Combine evidence value 2, current process identifier 3, and accumulated value 4 into a proof package.
[0268] During verification, w is calculated. P mod N=2 2 mod 119 = 4, which is equal to the accumulated value of 4. Verification passed, proceed to step 3.
[0269] If the slider only completes step 1 and skips step 2, the accumulated value A = 2. The preceding product P = 2, and we need to solve for w. 2 ≡2 mod 119. At this point, there is no integer w such that the remainder after squaring modulo 119 is 2. Therefore, valid evidence cannot be generated, verification fails, and the slider's process state transitions to an abnormal state.
[0270] Extract signature data and process identifier from the current process record;
[0271] The signature data of each process is obtained in reverse order of the process sequence and matched with the expected authorized entity corresponding to each process. The first process that fails to match is designated as the responsible process.
[0272] The current process identifier, the responsible process identifier, and the status vector are combined to obtain the anomaly record.
[0273] After determining that the sequence is abnormal, extract the signature data and process identifier from the current process record. The signature data includes the first signature and the second signature, and the process identifier is the number of the current process.
[0274] The signature data of each process is obtained in reverse order of the process sequence. All process records of the current slider are read from the blockchain. The process records are stored in the order of process execution. Each record contains a process identifier, a first signature, and a second signature.
[0275] Starting from the last record, i.e. the current process record, read each record backwards in sequence until the first record.
[0276] For each read process record, signature matching is performed based on the pre-established authorized subject mapping table.
[0277] For example, the authorization subject mapping table is established during initialization based on the production line's process documents. The process documents specify which equipment should perform each process and which operator should confirm it. Each entry in the table includes the process number, the expected equipment subject identifier (i.e., the equipment number), and the expected execution subject identifier (i.e., the operator's employee number).
[0278] The mapping table is stored in the configuration contract on the blockchain and cannot be tampered with.
[0279] The system queries the authorized entity mapping table to find the expected equipment entity identifier and expected execution entity identifier corresponding to the current process, and retrieves the public keys of these two entities from the authorization list of the blockchain.
[0280] The first signature is verified using the device's public key, and the second signature is verified using the operator's public key. If both signatures are verified successfully, the match is successful; otherwise, the match fails.
[0281] The verification process calls the verification function of the elliptic curve digital signature algorithm, taking the signature, original data, and public key as inputs, and outputting a boolean value.
[0282] The process identifier corresponding to the first failed match is designated as the responsible process. If all processes are successfully matched, the identifier of the current process is designated as the responsible process.
[0283] The current process identifier, the responsible process identifier, and the current slider's state vector are concatenated sequentially to form an exception record. This exception record is then written to the blockchain and stored in association with the slider identifier.
[0284] Taking the ball bearing assembly process as an example, in the authorized entity mapping table, the equipment entity identifier corresponding to process 2 is "Equipment A", and the execution entity identifier is "Operator B".
[0285] Obtain the public key of device A and the public key of operator B. The first signature is the signature of device A on the device parameter string "Device A|2|135|Qualified", and the second signature is the signature of operator B on the confirmation string "WY-35|BATCH-2401|SUP-A|2|Qualified|Timestamp".
[0286] To verify the first signature, call the ECDSA verification function, inputting the device A public key, the first signature, and the string "Device A|2|135|Qualified". Assume the function returns true.
[0287] To verify the second signature, call the ECDSA verification function. Input Operator B's public key, the second signature, and the string "WY-35|BATCH-2401|SUP-A|2|Qualified|Timestamp". The function returns true. If both are true, the match is successful.
[0288] If the private key for the second signature actually comes from operator C, and operator B's public key is used for verification, the ECDSA verification function returns false, indicating a failed match. This step is then designated as the responsible step.
[0289] Based on the same inventive concept, this application also provides a blockchain-based data traceability management system for the entire process of slider assembly, corresponding to the blockchain-based slider assembly data traceability management method.
[0290] See Figure 4 The diagram shown is a schematic of a blockchain-based data traceability management system for the entire process of slider assembly provided in this application embodiment. The system includes: a data acquisition module 10, a data construction module 20, a comparison module 30, a confirmation module 40, and a verification module 50, wherein:
[0291] Acquisition module 10: used to acquire the slider, assign identification information to the slider, extract the fingerprint information of the slider, associate the identification information with the fingerprint information, and generate the first association information of the slider;
[0292] Construction module 20: used to establish a process state machine for the slider, the process state machine including process states arranged according to a preset process sequence, and transitioning according to the process sequence;
[0293] Comparison module 30: Based on the current process, it obtains the second association information of the current slider and compares it with the first association information. If the comparison result meets the preset comparison conditions, it executes the current process.
[0294] Confirmation module 40: After the current process is completed, it obtains the process data of the current process, signs the process data with the verification information of at least two authorized entities to obtain signature data, and associates it with the process data to generate the current process record;
[0295] Verification module 50: Used to verify the status of the current process according to preset verification rules, and output the process record when the current process status is terminated.
[0296] Those skilled in the art will understand that, in the above-described method of the specific implementation, the order in which each step is written does not imply a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of each step should be determined by its function and possible internal logic.
[0297] In the description of this specification, the terms "exemplary," "for example," "specifically," etc., refer to a specific feature, structure, material, or characteristic described in connection with that embodiment or example, which is included in at least one embodiment or example of the invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.
Claims
1. A blockchain-based method for full-process data traceability management of slider assembly, characterized in that, The method includes: Obtain the slider, assign identification information to the slider, extract the fingerprint information of the slider, associate the identification information with the fingerprint information, and generate the first association information of the slider; A process state machine is established for the slider, the process state machine includes process states arranged according to a preset process sequence, and the transitions are performed according to the process sequence; Based on the current process, obtain the second association information of the current slider and compare it with the first association information. If the comparison result meets the preset comparison conditions, execute the current process. After the current process is completed, the process data of the current process is obtained, the process data is signed by the verification information of at least two authorized entities to obtain the signed data, and then associated with the process data to generate the current process record; The current process is verified using preset verification rules. If the current process is in a terminated state, the process record is output.
2. The blockchain-based data traceability management method for the entire process of slider assembly according to claim 1, characterized in that, The process of acquiring the slider and assigning identification information to the slider includes: A unique QR code identifier is generated for the slider, and the QR code identifier is associated with the attribute information of the slider to obtain the identifier information; The attribute information includes: slider model, production batch, and source of raw materials.
3. The blockchain-based data traceability management method for the entire process of slider assembly according to claim 1, characterized in that, The extraction of the fingerprint information from the slider includes: A microscopic structure image of a preset area on the slider is acquired, and physical fingerprint features are extracted from the microscopic structure image using a feature extraction algorithm; The physical fingerprint features are stored in the form of a feature point set or the hash value of the feature point set; The identification information is concatenated with the physical fingerprint features to obtain concatenated data, and the hash value of the concatenated data is calculated as the first associated information.
4. The blockchain-based data traceability management method for the entire process of slider assembly according to claim 1, characterized in that, The process state machine for the slider includes: Define the state types of the process state machine, including a start state, at least one intermediate state, a termination state, and an abnormal state. According to the preset process sequence, the direction from the starting state to the intermediate state and from the intermediate state to the ending state are set as a one-way transfer relationship; In this process, any process state can be transferred to the abnormal state, and the one-way transfer relationship does not include the preset rework transfer path; The process state of the slider includes a state vector, and each component of the state vector corresponds to the execution state of a process. The execution state includes incomplete, completed and qualified, and completed but unqualified. The initial value of each component is incomplete.
5. The blockchain-based data traceability management method for the entire process of slider assembly according to claim 4, characterized in that, The process state machine for establishing the slider also includes: Set a rework counter for the slider and set the initial value of the rework counter to 0; If the process data of the current process does not meet the preset state conditions, the corresponding component in the state vector is updated to "completed but unqualified", and the current state of the slider is transferred to the preset rework start state in the process sequence. At the same time, the value of the rework counter is incremented by 1. After the slider is transferred to the rework start state, the corresponding component in the state vector is reset to incomplete; If the value of the rework counter reaches the preset upper limit, the current state of the slider will be changed to an abnormal state.
6. The blockchain-based data traceability management method for the entire process of slider assembly according to claim 1, characterized in that, The step of obtaining the second association information of the current slider and comparing it with the first association information includes: Before each process is executed, the current identification information and current fingerprint information of the slider are re-acquired, and second association information is generated; The first association information and the second association information are parsed into a first feature point set and a second feature point set, and the matching rate between the first feature point set and the second feature point set is calculated by a feature point matching algorithm. If the matching rate is greater than a preset matching rate threshold, continue executing the current process; otherwise, change the current state of the slider to an abnormal state.
7. The blockchain-based data traceability management method for the entire process of slider assembly according to claim 1, characterized in that, The step of signing the process data using verification information from at least two authorized entities includes: The authorized entities include a first entity and a second entity, namely, the device entity and the execution entity; Obtain the first private key of the first entity and the second private key of the second entity; The device parameters in the process data are signed using the first private key to generate a first signature; The second private key is used to sign the manual confirmation result in the process data to generate a second signature; Verify whether the equipment parameters and the manual confirmation result meet the preset consistency conditions. If the consistency conditions are met, update the corresponding component in the state vector to "completed and qualified" and combine the process data, the first signature and the second signature into a data packet. The data packet is linked with the previous process record to form the current process record; If the consistency condition is not met, the current state of the slider will be transitioned to an abnormal state.
8. The blockchain-based data traceability management method for the entire process of slider assembly according to claim 1, characterized in that, The step of verifying the status of the current process according to preset verification rules includes: Obtain the process identifier sequence of the completed processes of the slider, input the process identifier sequence into the accumulator, and generate the accumulated value; Based on the accumulated value, the identifier of the current process, and the process sequence, a sequence dependency proof for the current process is generated and verified. If the verification passes, the current process is accepted; if the verification fails, it is determined to be an abnormal sequence, and the current state of the slider is transferred to an abnormal state.
9. The blockchain-based data traceability management method for the entire process of slider assembly according to claim 8, characterized in that, The status verification of the current process also includes: Extract signature data and process identifier from the current process record; The signature data of each process is obtained in reverse order of the process sequence and matched with the expected authorized entity corresponding to each process. The first process that fails to match is designated as the responsible process. The current process identifier, the responsible process identifier, and the status vector are combined to obtain the anomaly record.
10. A blockchain-based data traceability management system for the entire process of slider assembly, used to implement the blockchain-based data traceability management method for the entire process of slider assembly as described in any one of claims 1-9, characterized in that, The system includes: Acquisition module: used to acquire the slider, assign identification information to the slider, extract the fingerprint information of the slider, associate the identification information with the fingerprint information, and generate the first association information of the slider; Construction module: used to establish a process state machine for the slider, the process state machine includes process states arranged in a preset process sequence, and transitions are performed in the process sequence; Comparison module: used to obtain the second association information of the current slider based on the current process, and compare it with the first association information. If the comparison result meets the preset comparison conditions, the current process is executed. Confirmation module: After the current process is completed, it obtains the process data of the current process, signs the process data with the verification information of at least two authorized entities to obtain signature data, and associates it with the process data to generate the current process record; Verification module: Used to verify the status of the current process according to preset verification rules, and output the process record when the current process status is terminated.