HSMs: add text & pics on mesh construction
|
|
@ -314,9 +314,7 @@ heat from a heat gun as necessary to soften polymer compounds and to break glue
|
|||
|
||||
\subsection{Results}
|
||||
|
||||
\subsubsection{Overall observations}
|
||||
|
||||
\paragraph{Mesh materials.}
|
||||
\subsubsection{Mesh materials.}
|
||||
We found meshes constructed from rigid PCBs as well as a number of Flexible Printed Circuit (FPC) processes.
|
||||
Tamper-sensing meshes constructed from PCBs sometimes used parts of an existing PCB, and sometimes additional PCBs only
|
||||
containing a mesh were added. Sometimes, multiple rigid PCB meshes were assembled in a house of cards fashion to enclose
|
||||
|
|
@ -328,9 +326,157 @@ Overall, etched PCBs showed better resolution compared to silkscreen-printed mes
|
|||
flexible etched PCB meshes was generally in the order of \qtyrange{100}{200}{\micro\meter}, while feature size for
|
||||
printed foil meshes was coarser at between \qtyrange{500}{3000}{\micro\meter}.
|
||||
|
||||
\paragraph{Mesh layout.}
|
||||
\subsubsection{Mesh layout.}
|
||||
|
||||
\paragraph{Contact construction.}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\begin{subfigure}[t]{0.45\textwidth}
|
||||
\centering\includegraphics[width=\linewidth]{hsm_mesh_offset.jpg}
|
||||
\caption{Offset layers for more complete coverage}
|
||||
\label{hsm_fig_mesh_layout_offset}
|
||||
\end{subfigure}
|
||||
\quad
|
||||
\begin{subfigure}[t]{0.45\textwidth}
|
||||
\centering\includegraphics[width=\linewidth]{hsm_mesh_orthogonal.jpg}
|
||||
\caption{Orthogonal patterns on subsequent layers}
|
||||
\label{hsm_fig_mesh_layout_orthogonal}
|
||||
\end{subfigure}
|
||||
\quad
|
||||
\begin{subfigure}[t]{0.45\textwidth}
|
||||
\centering\includegraphics[width=\linewidth]{hsm_utimaco_mesh_gore.jpg}
|
||||
\caption{Combining orthogonal layers with area-covering pattern}
|
||||
\label{hsm_fig_mesh_layout_utimaco}
|
||||
\end{subfigure}
|
||||
\quad
|
||||
\begin{subfigure}[t]{0.45\textwidth}
|
||||
\centering\includegraphics[width=\linewidth]{hsm_mesh_stack_epp.jpg}
|
||||
\caption{Spacing mesh layers apart to constrict angular freedom of an attack tool}
|
||||
\label{hsm_fig_mesh_layout_epp}
|
||||
\end{subfigure}
|
||||
\caption{Mesh trace layout approaches for multi-layer meshes.}
|
||||
\label{hsm_fig_mesh_layout}
|
||||
\end{figure}
|
||||
|
||||
A key goal in tamper-sensing mesh design is to avoid any gaps in coverage. In single-layer meshes, gaps between adjacent
|
||||
mesh traces cannot be avoided, and provide an easy approach for an attack. In multi-layer meshes, these structure
|
||||
size-dependent gaps can be mitigated in multiple ways as shown in Figure~\ref{hsm_fig_mesh_layout}.
|
||||
|
||||
\paragraph{Offset patterns.} In a two-sided foil mesh, most of the gaps between adjacent traces can be covered by simply
|
||||
offsetting the pattern by one structure size in both axes between the foil's top and bottom layers as shown in
|
||||
Figure~\ref{hsm_fig_mesh_layout_offset}. Depending on the mesh layout, only a small number of point-shaped gaps remain
|
||||
at corners in mesh traces on one of the layers. The number of these gaps can be reduced by reducing the number of
|
||||
misaligned corners between both layers for instance by choosing a systematic serpentine or spiral trace layout.
|
||||
|
||||
\paragraph{Orthogonal patterns.} In some other specimens, the manufacturer chose the opposite approach of keeping the
|
||||
mesh pattern mostly orthogonal on the mesh's two layers as shown in Figure~\ref{hsm_fig_mesh_layout_orthogonal}. While
|
||||
this leads to a larger amount of gaps compared to offset patterns as described above, it also reduces the largest gap
|
||||
size to about one structure size by one structure size.
|
||||
|
||||
\paragraph{Combined approaches.} Figure~\ref{hsm_fig_mesh_layout_utimaco} shows the layout of a Gore tamper-sensing mesh
|
||||
foil used in an Utimaco HSM. This mesh consists of two foil layers bonded to each other. The outer foil is patterned on
|
||||
both sides with a sparse pattern of thin serpentine traces with the patterns on both layers being orthogonal to each
|
||||
other. Both patterns are oriented at a \qty{45}{\degree} angle relative to the sides of the rectangular enclosed volume.
|
||||
The inner foil is only patterned on one side, and contains a thicker serpentine trace laid out in a zigzag pattern. The
|
||||
two foil layers are aligned such that no gaps remain between the layers.
|
||||
|
||||
\paragraph{Using layer spacing.} Figure~\ref{hsm_fig_mesh_layout_epp} shows how an ATM Encrypting Pin Pad (EPP)
|
||||
implemented the mesh on its keypad. Off-the-shelf metal snap dome contacts were used on the surface of a conventional
|
||||
rigid PCB to create the keys. On top of the rigid PCB and contact domes, a two-layer copper/polyimide FPC with an
|
||||
additional polyimide cover layer was glued down. Meshes were placed on both layers of the FPC, as well as on one
|
||||
internal layer of the rigid PCB. The resulting structure had the FPC mesh layers separated from the rigid PCB mesh layer
|
||||
by several hundred micrometers of the rigid PCB's substrate. The meshes on both the FPC and the rigid PCB used a
|
||||
structure size of \qty{150}{\micro\meter}. The vertical separation between the two meshes was several times that
|
||||
structure size, which limits the possible angles an attack tool could be inserted through both mesh layers.
|
||||
|
||||
\subsubsection{3D construction.}
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\begin{subfigure}[t]{0.3\textwidth}
|
||||
\centering\includegraphics[width=\linewidth]{hsm_3d_style_fold_overlap.jpg}
|
||||
\caption{Folded with overlap}
|
||||
\label{hsm_fig_3d_struct_folded_overlap}
|
||||
\end{subfigure}
|
||||
\quad
|
||||
\begin{subfigure}[t]{0.3\textwidth}
|
||||
\centering\includegraphics[width=\linewidth]{hsm_3d_style_fold_no_overlap.jpg}
|
||||
\caption{Folded without overlap}
|
||||
\label{hsm_fig_3d_struct_folded_no_overlap}
|
||||
\end{subfigure}
|
||||
\quad
|
||||
\begin{subfigure}[t]{0.3\textwidth}
|
||||
\centering\includegraphics[width=\linewidth]{hsm_3d_style_vacform.jpg}
|
||||
\caption{Thermoformed}
|
||||
\label{hsm_fig_3d_struct_vacuum_form}
|
||||
\end{subfigure}
|
||||
\quad
|
||||
\begin{subfigure}[t]{0.3\textwidth}
|
||||
\centering\includegraphics[width=\linewidth]{example-image-1x1.pdf}
|
||||
\caption{House-of-Cards construction}
|
||||
\label{hsm_fig_3d_struct_house_of_cards}
|
||||
\end{subfigure}
|
||||
\quad
|
||||
\begin{subfigure}[t]{0.3\textwidth}
|
||||
\centering\includegraphics[width=\linewidth]{hsm_3d_style_lds.jpg}
|
||||
\caption{Laser Direct Structuring, Image from \cite{mahungORWLPCMost2016}}
|
||||
\label{hsm_fig_3d_struct_lds}
|
||||
\end{subfigure}
|
||||
\caption[3D mesh construction styles]{Construction styles used to fit tamper sensing meshes into 3D envelopes.}
|
||||
\label{hsm_fig_3d_struct}
|
||||
\end{figure}
|
||||
|
||||
In practice, meshes are almost always manufactured in planar processes first, and then transformed into a
|
||||
three-dimensional shape. Figure~\ref{hsm_fig_3d_struct}
|
||||
\subref{hsm_fig_3d_struct_folded_overlap}-\subref{hsm_fig_3d_struct_house_of_cards} show the construction styles we saw
|
||||
among our samples that shape a planar mesh into a three-dimensional structure.
|
||||
Figure~\ref{hsm_fig_3d_struct_folded_overlap} and Figure~\ref{hsm_fig_3d_struct_folded_no_overlap} have meshes produced
|
||||
as flexible printed circuits, in Figure~\ref{hsm_fig_3d_struct_folded_overlap} using a standard photolithographic
|
||||
copper/polyimide FPC process usually used for flexible PCBs, and in Figure~\ref{hsm_fig_3d_struct_folded_overlap} using
|
||||
a standard silver ink screenprinting process. The choice in Figure~\ref{hsm_fig_3d_struct_folded_no_overlap} not to
|
||||
overlap the mesh in the corner is likely caused by manufacturing considerations, since it might be difficult to ensure
|
||||
proper folding of a small foil tab with adhesive pre-applied.
|
||||
|
||||
Figure~\ref{hsm_fig_3d_struct_vacuum_form} shows a sample of a flexible circuit manufactured in a screenprinted
|
||||
silver-ink process thermoformed into a three-dimensional shape. The flexible circuit mesh is first produced in a
|
||||
standard planar printing process. After printing and curing, the resulting foil is then heated to soften it, and forced
|
||||
into a three-dimensional shape using a mold. Depending on the process, one or two molds, and vacuum or pressured air can
|
||||
be used to shape the foil. The process requires a screenprinted flexible circuit, and would not work with
|
||||
copper/polyimide flexible PCBs since their copper layer is too thick to plastically deform without tearing, and because
|
||||
polyimide is not sufficiently thermoplastic at low temperatures.
|
||||
|
||||
Thermoforming is a cheap industry standard process, but applied to flexible circuits it has some limitations. First,
|
||||
only 2.5-dimensional structures can be created since the starting product is always a planar sheet. Second, the sheet
|
||||
cannot be cut or contain slots or large holes before forming since it needs to be kept under a constant tension from all
|
||||
sides to ensure it evenly stretches into the mold. Finally, the depth achievable in such a process is rather limited,
|
||||
with no sample in our survey exceeding \qty{2}{\milli\meter}\todo{Get proper number}. Higher depths would require
|
||||
extensive deformation of the mesh circuit's plastic substrate, which could lead to tears in the mesh traces since the
|
||||
particle-based conductive inks used for screen-printed electronics are inelastic.
|
||||
|
||||
The specimen in Figure~\ref{hsm_fig_3d_struct_vacuum_form} shows one further design defect. The mesh shown does not
|
||||
extend to the edges of the plastic cover it has been molded into. When this cover is placed on top of a PCB to protect
|
||||
components on the PCB from tampering, this leaves a large gap between the bottom edge of the mesh and the PCB surface,
|
||||
through which probes can be inserted to access either the payload circuit or the mesh monitoring circuitry.
|
||||
\todoplaceholder{take pic of sample H08 card slot cover}
|
||||
|
||||
Figure~\ref{house of cards pcb construction} shows a card slot being protected by several rigid PCBs assembled into a
|
||||
three-dimensional structure. Solder connections between large pads are used to mechanically and electrically join the
|
||||
boards. While the rigid PCBs used in such as structure can be produced in a highly inexpensive, standard process, this
|
||||
style of construction requires manual assembly leading to increased labor cost. Furthermore, the construction leaves
|
||||
large gaps at edges and corners, which is not a problem for card slot protection in payment applications but which would
|
||||
be a flaw in a more standard HSM application.
|
||||
|
||||
Figure~\ref{hsm_fig_3d_struct_lds} shows the resutl of Laser Direct Structuring (LDS), a process that avoids some of the
|
||||
limitations of thermoformed planar meshes. In LDS, a plastic part is covered in a conductive pattern in a combination of
|
||||
selective laser erosion of its surface and a series of preparation and electroless metal plating steps. LDS allows
|
||||
covering complex three-dimensional shapes, with the main limitation being that all patterned areas must have a direct
|
||||
line of sight to the outside for the scanning laser to reach it. Thus, the outside of complex parts can be covered, but
|
||||
internal cavities cannot. LDS is commonly used to create complex antenna shapes on the surface of internal structural
|
||||
plastic parts for smartphones, but is more costly compared to screenprinting processes due to its complexity. A further
|
||||
disadvantage of LDS is that it is only suitable for single-layer patterns, while two layers are easily achievable in
|
||||
silkscreen and photolithographic PCB processes by patterning both sides of the substrate. More layers can be achived in
|
||||
these processes by simply stacking multiple foil layers and adding vias (through contacts), or by folding.
|
||||
|
||||
\subsubsection{Contact construction.}
|
||||
|
||||
\subsubsection{Payment Terminal Construction}
|
||||
|
||||
|
|
@ -338,18 +484,18 @@ printed foil meshes was coarser at between \qtyrange{500}{3000}{\micro\meter}.
|
|||
\centering
|
||||
\includegraphics[width=0.7\textwidth]{mesh_fold_screenshot.pdf}
|
||||
\caption[HSM appliance CT scan]{Computed Tomography (CT) scan of a corner of the PCIe HSM module from an Utimaco
|
||||
rackmount HSM appliance. Visible are several capacitors, the edge of a large IC, and a large Flat Flexible Cable
|
||||
(FFC) connector. Two layers of metal enclosures with resin potting in between are visible, and the security mesh can
|
||||
be seen folded between layers of the folded FFC cable connecting to the outside.}
|
||||
rackmount HSM appliance. Visible are several capacitors, the edge of a large IC, and a large Flat Flexible Cable
|
||||
(FFC) connector. Two layers of metal enclosures with resin potting in between are visible, and the security mesh
|
||||
can be seen folded between layers of the folded FFC cable connecting to the outside.}
|
||||
\label{hsm_fig_utimaco_ct}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=\textwidth]{cut_chip_scene.pdf}
|
||||
\caption[Ingenico Payment Terminal HSM CT Section Cut]{CT Section cut across the Ingenico potted module sample. The fold pattern of the mesh foil can be seen
|
||||
clearly. The mesh traces can be seen on both sides of the foil. The two-layer PCB and the lead frame and bond wires
|
||||
of a chip soldered on its top side are visible.}
|
||||
\caption[Ingenico Payment Terminal HSM CT Section Cut]{CT Section cut across the Ingenico potted module sample. The
|
||||
fold pattern of the mesh foil can be seen clearly. The mesh traces can be seen on both sides of the foil. The
|
||||
two-layer PCB and the lead frame and bond wires of a chip soldered on its top side are visible.}
|
||||
\label{fig_ingenico_cut}
|
||||
\end{figure}
|
||||
|
||||
|
|
@ -357,8 +503,8 @@ printed foil meshes was coarser at between \qtyrange{500}{3000}{\micro\meter}.
|
|||
\centering
|
||||
\includegraphics[width=\textwidth]{mesh_pitch.pdf}
|
||||
\caption[Ingenico Payment Terminal HSM Mesh Pitch]{A horizontal cut through the Ingenico potted module with
|
||||
millimeter scale next to the mesh foil. As is visible, the mesh has a trace pitch of \qty{1.0}{\milli\meter} and
|
||||
traces are offset between the two mesh layers to reduce the amount of gaps between traces.}
|
||||
millimeter scale next to the mesh foil. As is visible, the mesh has a trace pitch of \qty{1.0}{\milli\meter} and
|
||||
traces are offset between the two mesh layers to reduce the amount of gaps between traces.}
|
||||
\label{fig_ingenico_pitch}
|
||||
\end{figure}
|
||||
|
||||
|
|
@ -366,9 +512,9 @@ printed foil meshes was coarser at between \qtyrange{500}{3000}{\micro\meter}.
|
|||
\centering
|
||||
\includegraphics[width=\textwidth]{mesh_contact_joint.pdf}
|
||||
\caption[Ingenico Payment Terminal HSM Mesh Contacts]{Mesh contact joints in the Ingenico potted module sample. The
|
||||
mesh is a foil that is attached to the PCB through bent stamped metal contacts. The contacts are riveted into large
|
||||
contact pads patterend onto the mesh foil, and are soldered to the PCB. Next to the contacts, the mesh layout is
|
||||
visble clearly.}
|
||||
mesh is a foil that is attached to the PCB through bent stamped metal contacts. The contacts are riveted into
|
||||
large contact pads patterend onto the mesh foil, and are soldered to the PCB. Next to the contacts, the mesh
|
||||
layout is visble clearly.}
|
||||
\label{fig_ingenico_contacts}
|
||||
\end{figure}
|
||||
|
||||
|
|
@ -376,7 +522,7 @@ printed foil meshes was coarser at between \qtyrange{500}{3000}{\micro\meter}.
|
|||
\centering
|
||||
\includegraphics[width=\textwidth]{open_end_detail.pdf}
|
||||
\caption[Ingenico Payment Terminal HSM End Closure]{Connector end of the Ingenico potted module sample. This cut
|
||||
shows that the mesh only encloses the PCB on three sides, and the connector side is left unprotected.}
|
||||
shows that the mesh only encloses the PCB on three sides, and the connector side is left unprotected.}
|
||||
\label{fig_ingenico_end}
|
||||
\end{figure}
|
||||
|
||||
|
|
@ -384,10 +530,10 @@ printed foil meshes was coarser at between \qtyrange{500}{3000}{\micro\meter}.
|
|||
\centering
|
||||
\includegraphics[width=\textwidth]{mesh_geom.pdf}
|
||||
\caption[Ingenico Payment Terminal HSM Mesh 3D]{3D reconstruction of the mesh from the Ingenico potted module
|
||||
sample. The mesh layout can clearly be seen. From this 3D view, the mesh construction is evident: A T-shaped mesh
|
||||
foil is wrapped around the PCB on three sides, with PCB tabs at two corners acting as locating and fixturing
|
||||
features. In the corners, cylindrical components are visible that likely serve as an attempt at sensing intrusion
|
||||
through the corners.}
|
||||
sample. The mesh layout can clearly be seen. From this 3D view, the mesh construction is evident: A T-shaped
|
||||
mesh foil is wrapped around the PCB on three sides, with PCB tabs at two corners acting as locating and
|
||||
fixturing features. In the corners, cylindrical components are visible that likely serve as an attempt at
|
||||
sensing intrusion through the corners.}
|
||||
\label{fig_ingenico_3d}
|
||||
\end{figure}
|
||||
|
||||
|
|
|
|||
BIN
chapter-hsms/figures/hsm_3d_style_fold_no_overlap.jpg
Normal file
|
After Width: | Height: | Size: 369 KiB |
BIN
chapter-hsms/figures/hsm_3d_style_fold_overlap.jpg
Normal file
|
After Width: | Height: | Size: 299 KiB |
BIN
chapter-hsms/figures/hsm_3d_style_lds.jpg
Normal file
|
After Width: | Height: | Size: 265 KiB |
BIN
chapter-hsms/figures/hsm_3d_style_lds_raw.jpg
Normal file
|
After Width: | Height: | Size: 3.2 MiB |
BIN
chapter-hsms/figures/hsm_3d_style_vacform.jpg
Normal file
|
After Width: | Height: | Size: 226 KiB |
BIN
chapter-hsms/figures/hsm_mesh_offset.jpg
Normal file
|
After Width: | Height: | Size: 241 KiB |
BIN
chapter-hsms/figures/hsm_mesh_orthogonal.jpg
Normal file
|
After Width: | Height: | Size: 423 KiB |
BIN
chapter-hsms/figures/hsm_mesh_stack_epp.jpg
Normal file
|
After Width: | Height: | Size: 266 KiB |
BIN
chapter-hsms/figures/hsm_utimaco_mesh_gore.jpg
Normal file
|
After Width: | Height: | Size: 426 KiB |