Understanding Security APIs - CrySyS Lab
Understanding Security APIs - CrySyS Lab
Understanding Security APIs - CrySyS Lab
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
6 Hardware <strong>Security</strong> Modules 58<br />
6.1 A Brief History of HSMs . . . . . . . . . . . . . . . . . . . . . . . . . 58<br />
6.2 Physical Tamper-resistance . . . . . . . . . . . . . . . . . . . . . . . . 61<br />
6.2.1 Tamper-Evidence . . . . . . . . . . . . . . . . . . . . . . . . . 66<br />
6.3 HSM Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68<br />
6.3.1 IBM 4758-001 . . . . . . . . . . . . . . . . . . . . . . . . . . . 68<br />
6.3.2 IBM 4758-002 . . . . . . . . . . . . . . . . . . . . . . . . . . . 69<br />
6.3.3 nCipher nForce . . . . . . . . . . . . . . . . . . . . . . . . . . 70<br />
6.3.4 nCipher nShield . . . . . . . . . . . . . . . . . . . . . . . . . . 71<br />
6.3.5 nCipher netHSM . . . . . . . . . . . . . . . . . . . . . . . . . 72<br />
6.3.6 Prism TSM200 . . . . . . . . . . . . . . . . . . . . . . . . . . 73<br />
6.3.7 Thales RG7000 . . . . . . . . . . . . . . . . . . . . . . . . . . 74<br />
6.3.8 Atalla NSP10000 . . . . . . . . . . . . . . . . . . . . . . . . . 75<br />
6.3.9 Chrysalis-ITS Luna CA3 . . . . . . . . . . . . . . . . . . . . . 76<br />
6.3.10 Visa <strong>Security</strong> Module . . . . . . . . . . . . . . . . . . . . . . . 77<br />
7 Analysis of <strong>Security</strong> <strong>APIs</strong> 78<br />
7.1 Abstractions of <strong>Security</strong> <strong>APIs</strong> . . . . . . . . . . . . . . . . . . . . . . 78<br />
7.1.1 Describing API Commands with Protocol Notation . . . . . . 78<br />
7.1.2 Key Typing Systems . . . . . . . . . . . . . . . . . . . . . . . 81<br />
7.1.3 Key Hierarchies . . . . . . . . . . . . . . . . . . . . . . . . . . 83<br />
7.1.4 Monotonicity and <strong>Security</strong> <strong>APIs</strong> . . . . . . . . . . . . . . . . . 84<br />
7.2 The Attacker’s Toolkit . . . . . . . . . . . . . . . . . . . . . . . . . . 86<br />
7.2.1 Unauthorised Type-casting . . . . . . . . . . . . . . . . . . . . 86<br />
7.2.2 The Meet-in-the-Middle Attack . . . . . . . . . . . . . . . . . 86<br />
7.2.3 Key Conjuring . . . . . . . . . . . . . . . . . . . . . . . . . . 87<br />
7.2.4 Related Key Attacks . . . . . . . . . . . . . . . . . . . . . . . 88<br />
7.2.5 Poor Key-half Binding . . . . . . . . . . . . . . . . . . . . . . 89<br />
7.2.6 Differential Protocol Analysis . . . . . . . . . . . . . . . . . . 89<br />
7.2.7 Timing Attacks . . . . . . . . . . . . . . . . . . . . . . . . . . 91<br />
7.2.8 Check Value Attacks . . . . . . . . . . . . . . . . . . . . . . . 92<br />
7.3 An Abundance of Attacks . . . . . . . . . . . . . . . . . . . . . . . . 93<br />
9