The embedded tracking code can serve as a unique product signature by distinguishing itself from counterfeiting products that do not have any embedded tracking codes. However, when the entire design files are stolen, it is likely that expert attackers can use these design files to illegally reproduce parts with comparable quality and the same tracking code information. Therefore, we have modified the design of these embedded features such that they can be only printed correctly under a specific set of processing parameters such as printing orientation. In this case, despite being stolen, attackers will need to invest significant resources to determine the best combination of processing parameters to produce parts with high quality and the sane tracking codes, which can effectively distinguish counterfeits from the genuine products and protect the original rightful IP owner.
2.2.1 Obfuscating one-layer barcode
The embedded barcode feature can be modified with other 3D modelling features such as the surface feature to secure the original product. Here a CAD modeling scheme is developed such that the embedded barcode can only be 3D printed under a specific set of processing parameters (individual feature size, resolution of STL file and direction of slicing), while other attempts will not generate parts with the embedded barcode for an authentication process. In this way, attackers or other unauthorized users cannot reproduce the part with the embedded tracking code easily without knowing the processing parameters, which results in failure at passing the authentication steps.
The original CAD model for the barcode model is shown in Fig. 1(b), where the barcode stripes are extruded inside a solid prism. This model is modified such that the barcode stripes are applied with the “Extruded Surface” function inside the solid prism as shown in Fig. 6, so that it becomes an obfuscating embedded barcode model. Each barcode stripe is represented with an open surface in the same rectangular shape as the stripe. When these barcode stripes are performed with the “Extruded Surface” instead of the “Extruded Cut” function, the model shows orientation-dependent slicing results.
In the original CAD model, dimensions for the solid prism are 12 × 8 × 4 mm3, where the minimum width of the bar stripe is 0.13 mm. However, depending on the printer resolution and capability, a scale factor should be applied such that the minimum width of barcode stripe is a multiple of the printer layer thickness. The modified CAD model is translated to a standard tessellated file format STL and saved in coarse STL resolution, which is then imported to a slicer CatalystEX for FDM 3D printing. The minimum layer thickness 0.178 mm is chosen for 3D printing using this printer, therefore, the minimum width of stripe is scaled up to 0.178 mm with a scale factor of 1.37 applied to original CAD model dimensions, to ensure that it can be printed. The scaled model is sliced under default orientations and three other manually adjusted orientations, which are 90° rotations about x-, y-, and z-axis respectively. For this modified barcode model, auto-optimized orientation option is not available due to missing facets or reversed normal. Out of the four slicing orientations, it is observed that only the manually adjusted 90° rotation about x-axis orientation generates a toolpath for barcode, while other orientations slicing does not generate any barcode toolpath as shown in Fig. 7. It can be further indicated by the geometry of CAD model and slicing results that only when the extruded surfaces are normal to the slicing direction, the barcode extruded surface features can be recognized, and toolpath can be generated. However, when the smallest stripe width is 0.178 mm (scale factor of 1.37) the barcode pattern is not generated correctly as shown in Fig. 7(d) as opposed to Fig. 6(d). Therefore, the scale factor is further increased to 2.74 and 4.1 such that the smallest barcode stripe width is 0.356 mm and 0.534 mm, which are twice and thrice of the printer layer thickness, respectively.
It can be observed from the slicing results that toolpath of the barcode pattern is generated for both scaled model (2.74 and 4.1 scale factors) when placed under manually adjusted 90° rotation about x-axis orientation, however, the larger model with 4.1 scale factor has shown more precise barcode pattern toolpath than other models as shown in Fig. 8. Likewise, under the default orientation, all models (scale factor of 1.37, 2.74, and 4.1) generate toolpath only for the prism without any barcode stripes. These results have shown a close relationship between machine capability and design freedom. While AM allows a high degree of freeform fabrication, careful investigation needs to be implemented to achieve the best manufacturing outcomes. When the original design had a minimum stripe width below the printer resolution (0.178 mm), the security feature was not able to be implemented correctly. Under both XY and XZ orientations, the barcode stripes are printed with support materials in a wrong pattern. No difference can be observed when changing the slicing orientation with respect to the model. The slicing results are validated by the FDM printed parts as shown in Fig. 8, where support material is deposited for larger width barcode stripes and less for smaller widths.
From this experiment, it can be observed that when extra surfaces/planar surfaces are introduced, the STL tessellation file shows two surfaces, unlike the four extruded surfaces as originally in CAD model. When additional extruded surfaces (unclosed) are introduced in the solid prism, the solid prism shows “missing facets or reversed normal” error message in the Slicer when attempting to auto-optimize its orientation. Moreover, under the default orientation, the solid prism model is printed as one solid part without any support material deposited inside. However, when manual orientation to XY (90° rotation to x-axis from default), the embedded column of surface features is printed with the support material in the pattern of correct barcode design, and under all other 90° rotation, the model is printed as one solid part. But this phenomenon may or may not occur under other 3D printing techniques and slicing algorithms. In summary, by introducing four surfaces (in the shape of rectangular tube) with determined dimensions, a column of support materials can be printed without any dependence on the slicing orientation. Authentic parts will be printed by authorized users where support materials are deposited showing the barcode pattern for tracking and authentication process.
A micro-CT scanning and reconstruction by the Micro-CT system is performed on the FDM 3D printed modified barcode part as in Fig. 8(a) to validate previous discussion on the reading techniques. The printed prism, Fig. 8(b), is subjected to micro-CT scan and then cut to physically verify the presence of the code Fig. 8(c). When exposed to x-ray radiation as in Fig. 8(c), color indication shows the barcode stripes as printed with a different material than the prism model material. This can also quickly help in validating different printing results for the modified barcode model with security features under different orientations. Further, a 3D model can be reconstructed from the computed tomography scanned cross-section images. This step is necessary because the scanning orientation might not be sufficient to visualize the barcode pattern based on the assumption that this kind of tracking code can be embedded with 360° degree of freedom. The reconstructed model can be viewed at any angle and any cross-section to visualize the barcode pattern as in Fig. 8(c), which shows relatively good barcode pattern and contrast. With improved printer capability and resolution, dimensional accuracy can be increased, and the tracking code can be read faster.
2.2.2 Obfuscating multi-layer barcode
By combining the findings described earlier in the sections on multi-layer barcode and obfuscating one-layer bar code, the multi-layer barcode model as shown in Fig. 5 is enhanced with obfuscation security feature so that only under certain conditions will the correct barcode be printed, and only a certain viewing orientation can read the code correctly. The “Extruded Surface” function is performed on the barcode instead of “Extruded Cut” function. The “Extruded Surface” barcode is 30 mm in length with square sides that are either 0.6 × 0.6 mm2, 1.2 × 1.2 mm2, or 1.8 × 1.8 mm2, all embedded inside a cuboid enclosure that is 56 × 40 × 56 mm3 in length × width × height as shown in Fig. 9. The STL model is exported in coarse STL resolution, which is then imported into the slicer CatalystEX and sliced under different orientations as shown in Fig. 10. Only under the 90° rotation about x-axis will the barcode be printed correctly while other orientations cannot print the barcode at all. The STL model is then scaled down (scale factor 0.4) to a smaller size compatible for micro-CT imaging and sliced after rotations (x-90° and z-90°) as in Fig. 10(b) and (d) in CatalystEX (Stratasys, USA), and then sent the Stratasys Dimension Elite FDM 3D printer for 3D printing in ABSplus-P430 (Stratasys, USA) filament material. The two 3D printed cuboids have a dimension of 22.4 × 16 × 22.4 mm3 in length × width × height. The cuboid part that is sliced under 90° rotation about x-axis is subjected to micro-CT scan and reconstructed in NRecon Reconstruction Software to generate a 3D model of the scanned part. The reconstructed 3D model is opened in SolidWorks 2018 and displayed from side and isometric views as in Fig. 11 to validate that the x-90° rotation slicing orientation can properly generate the embedded barcode inside the 3D printed cuboid.