+353-1-416-8900REST OF WORLD
+44-20-3973-8888REST OF WORLD
1-917-300-0470EAST COAST U.S
1-800-526-8630U.S. (TOLL FREE)

Information Security. Principles and Practice. Edition No. 3

  • Book

  • 448 Pages
  • September 2021
  • John Wiley and Sons Ltd
  • ID: 5838645

Provides systematic guidance on meeting the information security challenges of the 21st century, featuring newly revised material throughout

Information Security: Principles and Practice is the must-have book for students, instructors, and early-stage professionals alike. Author Mark Stamp provides clear, accessible, and accurate information on the four critical components of information security: cryptography, access control, security protocols, and software. Readers are provided with a wealth of real-world examples that clarify complex topics, highlight important security issues, and demonstrate effective methods and strategies for protecting the confidentiality and integrity of data.

Fully revised and updated, the third edition of Information Security features a brand-new chapter on network security basics and expanded coverage of cross-site scripting (XSS) attacks, Stuxnet and other malware, the SSH protocol, secure software development, and security protocols. Fresh examples illustrate the Rivest-Shamir-Adleman (RSA) cryptosystem, Elliptic-curve cryptography (ECC), and hash functions based on bitcoin and blockchains. Updated problem sets, figures, tables, and graphs help readers develop a working knowledge of classic cryptosystems, symmetric and public key cryptography, cryptanalysis, simple authentication protocols, intrusion and malware detection systems, and more. Presenting a highly practical approach to information security, this popular textbook:

  • Provides up-to-date coverage of the rapidly evolving field of information security
  • Explains session keys, perfect forward secrecy, timestamps, SSH, SSL, IPSec, Kerberos, WEP, GSM, and other authentication protocols
  • Addresses access control techniques including authentication and authorization, ACLs and capabilities, and multilevel security and compartments
  • Discusses software tools used for malware detection, digital rights management, and operating systems security
  • Includes an instructor’s solution manual, PowerPoint slides, lecture videos, and additional teaching resources

Information Security: Principles and Practice, Third Edition is the perfect textbook for advanced undergraduate and graduate students in all Computer Science programs, and remains essential reading for professionals working in industrial or government security.

Table of Contents

Preface xv

About The Author xix

Acknowledgments xxi

1 Introductions 1

1.1 The Cast of Characters 1

1.2 Alice's Online Bank 2

1.2.1 Confidentiality, Integrity, and Availability 2

1.2.2 Beyond CIA 2

1.3 About This Book 4

1.3.1 Cryptography 4

1.3.2 Access Control 5

1.3.3 Network Security 6

1.3.4 Software 6

1.4 The People Problem 7

1.5 Principles and Practice 7

1.6 Problems 8

I Crypto 13

2 Classic Cryptography 15

2.1 Introduction 15

2.2 How to Speak Crypto 15

2.3 Classic Crypto 17

2.3.1 Simple Substitution Cipher 18

2.3.2 Cryptanalysis of a Simple Substitution 20

2.3.3 Definition of Secure 21

2.3.4 Double Transposition Cipher 22

2.3.5 One-Time Pad 23

2.3.6 Codebook Cipher 27

viii CONTENTS

2.4 Classic Crypto in History 28

2.4.1 Ciphers of the Election of 1876 28

2.4.2 Zimmermann Telegram 30

2.4.3 Project VENONA 32

2.5 Modern Crypto History 33

2.6 A Taxonomy of Cryptography 36

2.7 A Taxonomy of Cryptanalysis 37

2.8 Summary 39

2.9 Problems 39

3 Symmetric Ciphers 45

3.1 Introduction 45

3.2 Stream Ciphers 46

3.2.1 A5/1 47

3.2.2 RC4 49

3.3 Block Ciphers 51

3.3.1 Feistel Cipher 51

3.3.2 DES 52

3.3.3 Triple DES 57

3.3.4 AES 59

3.3.5 TEA 62

3.3.6 Block Cipher Modes 64

3.4 Integrity 68

3.5 Quantum Computers and Symmetric Crypto 70

3.6 Summary 72

3.7 Problems 72

4 Public Key Crypto 79

4.1 Introduction 79

4.2 Knapsack 82

4.3 RSA 85

4.3.1 Textbook RSA Example 87

4.3.2 Repeated Squaring 88

4.3.3 Speeding Up RSA 90

4.4 Diffie-Hellman 91

4.5 Elliptic Curve Cryptography 93

4.5.1 Elliptic Curve Math 93

4.5.2 ECC Diffie-Hellman 95

4.5.3 Realistic Elliptic Curve Example 96

4.6 Public Key Notation 97

4.7 Uses for Public Key Crypto 98

4.7.1 Confidentiality in the Real World 98

4.7.2 Signatures and Non-repudiation 99

CONTENTS ix

4.7.3 Confidentiality and Non-repudiation 99

4.8 Certificates and PKI 102

4.9 Quantum Computers and Public Key 104

4.10 Summary 106

4.11 Problems 106

5 Crypto Hash Functions++ 115

5.1 Introduction 115

5.2 What is a Cryptographic Hash Function? 116

5.3 The Birthday Problem 117

5.4 A Birthday Attack 119

5.5 Non-Cryptographic Hashes 120

5.6 SHA-3 121

5.7 HMAC 124

5.8 Cryptographic Hash Applications 126

5.8.1 Online Bids 126

5.8.2 Blockchain 127

5.9 Miscellaneous Crypto-Related Topics 136

5.9.1 Secret Sharing 136

5.9.2 Random Numbers 140

5.9.3 Information Hiding 143

5.10 Summary 147

5.11 Problems 147

II Access Control 159

6 Authentication 161

6.1 Introduction 161

6.2 Authentication Methods 162

6.3 Passwords 163

6.3.1 Keys Versus Passwords 164

6.3.2 Choosing Passwords 164

6.3.3 Attacking Systems via Passwords 166

6.3.4 Password Verification 167

6.3.5 Math of Password Cracking 168

6.3.6 Other Password Issues 173

6.4 Biometrics 174

6.4.1 Types of Errors 176

6.4.2 Biometric Examples 176

6.4.3 Biometric Error Rates 181

6.4.4 Biometric Conclusions 182

6.5 Something You Have 182

x CONTENTS

6.6 Two-Factor Authentication 183

6.7 Single Sign-On and Web Cookies 183

6.8 Summary 184

6.9 Problems 185

7 Authorization 195

7.1 Introduction 195

7.2 A Brief History of Authorization 196

7.2.1 The Orange Book 196

7.2.2 The Common Criteria 199

7.3 Access Control Matrix 200

7.3.1 ACLs and Capabilities 201

7.3.2 Confused Deputy 202

7.4 Multilevel Security Models 204

7.4.1 Bell-LaPadula 206

7.4.2 Biba's Model 207

7.4.3 Compartments 208

7.5 Covert Channels 210

7.6 Inference Control 212

7.7 CAPTCHA 214

7.8 Summary 216

7.9 Problems 216

III Topics in Network Security 221

8 Network Security Basics 223

8.1 Introduction 223

8.2 Networking Basics 223

8.2.1 The Protocol Stack 225

8.2.2 Application Layer 226

8.2.3 Transport Layer 228

8.2.4 Network Layer 231

8.2.5 Link Layer 233

8.3 Cross-Site Scripting Attacks 235

8.4 Firewalls 236

8.4.1 Packet Filter 238

8.4.2 Stateful Packet Filter 240

8.4.3 Application Proxy 240

8.4.4 Defense in Depth 242

8.5 Intrusion Detection Systems 243

8.5.1 Signature-Based IDS 245

8.5.2 Anomaly-Based IDS 246

CONTENTS xi

8.6 Summary 250

8.7 Problems 250

9 Simple Authentication Protocols 257

9.1 Introduction 257

9.2 Simple Security Protocols 259

9.3 Authentication Protocols 261

9.3.1 Authentication Using Symmetric Keys 264

9.3.2 Authentication Using Public Keys 267

9.3.3 Session Keys 268

9.3.4 Perfect Forward Secrecy 270

9.3.5 Mutual Authentication, Session Key, and PFS 273

9.3.6 Timestamps 273

9.4 ``Authentication"" and TCP 275

9.5 Zero Knowledge Proofs 278

9.6 Tips for Analyzing Protocols 282

9.7 Summary 284

9.8 Problems 284

10 Real-World Security Protocols 293

10.1 Introduction 293

10.2 SSH 294

10.2.1 SSH and the Man-in-the-Middle 295

10.3 SSL 296

10.3.1 SSL and the Man-in-the-Middle 299

10.3.2 SSL Connections 300

10.3.3 SSL Versus IPsec 300

10.4 IPsec 301

10.4.1 IKE Phase 1 302

10.4.2 IKE Phase 2 309

10.4.3 IPsec and IP Datagrams 310

10.4.4 Transport and Tunnel Modes 311

10.4.5 ESP and AH 313

10.5 Kerberos 314

10.5.1 Kerberized Login 316

10.5.2 Kerberos Ticket 316

10.5.3 Security of Kerberos 318

10.6 WEP 319

10.6.1 WEP Authentication 319

10.6.2 WEP Encryption 320

10.6.3 WEP Non-Integrity 320

10.6.4 Other WEP Issues 321

10.6.5 WEP: The Bottom Line 322

xii CONTENTS

10.7 GSM 322

10.7.1 GSM Architecture 323

10.7.2 GSM Security Architecture 324

10.7.3 GSM Authentication Protocol 326

10.7.4 GSM Security Flaws 327

10.7.5 GSM Conclusions 329

10.7.6 3GPP 330

10.8 Summary 330

10.9 Problems 331

IV Software 339

11 Software Flaws and Malware 341

11.1 Introduction 341

11.2 Software Flaws 341

11.2.1 Buffer Overflow 345

11.2.2 Incomplete Mediation 356

11.2.3 Race Conditions 356

11.3 Malware 358

11.3.1 Malware Examples 359

11.3.2 Malware Detection 365

11.3.3 The Future of Malware 367

11.3.4 The Future of Malware Detection 369

11.4 Miscellaneous Software-Based Attacks 369

11.4.1 Salami Attacks 369

11.4.2 Linearization Attacks 370

11.4.3 Time Bombs 371

11.4.4 Trusting Software 372

11.5 Summary 373

11.6 Problems 373

12 Insecurity in Software 381

12.1 Introduction 381

12.2 Software Reverse Engineering 382

12.2.1 Reversing Java Bytecode 384

12.2.2 SRE Example 385

12.2.3 Anti-Disassembly Techniques 390

12.2.4 Anti-Debugging Techniques 391

12.2.5 Software Tamper Resistance 392

12.3 Software Development 393

12.3.1 Flaws and Testing 395

12.3.2 Secure Software Development? 396

CONTENTS xiii

12.4 Summary 396

12.5 Problems 397

Appendix 403

A-1 Modular Arithmetic 403

A-2 Permutations 405

A-3 Probability 406

A-4 DES Permutations 406

Index 418

Authors

Mark Stamp San Jose State University.