Home Page Icon
Home Page
Table of Contents for
Title Page
Close
Title Page
by Al-Sakib Khan Pathan, Saiful Azad
Practical Cryptography
Cover Page
Title Page
Copyright Page
Preface
Acknowledgments
About the Editors
Chapter 1: Basics of Security and Cryptography
1.1 The Perimeter of Cryptography in Practice
1.2 Things That Cryptographic Technologies Cannot Do
Chapter 2: Classical Cryptographic Algorithms
2.1 Caesar Cipher
2.1.1 Algorithm
2.1.2 Implementation
2.1.3 Limitations
2.2 Monoalphabetic Cipher
2.2.1 Algorithm
2.2.2 Implementation
2.2.3 Limitations
2.3 Playfair Cipher
2.3.1 Algorithm
2.3.2 Implementation
2.3.3 Limitations
2.4 Polyalphabetic Cipher
2.4.1 Algorithm
2.4.2 Implementation
2.4.3 Limitations
Chapter 3: Rotor Machine
3.1 Background
3.2 Basic Concept
3.3 Systematization
3.4 Algorithm
3.5 Implementation
3.6 Limitations
Reference
Chapter 5: Data Encryption Standard
5.1 Primitive Operations
5.1.1 Operations for Encryption/Decryption
5.1.2 Operations for Subkey Generation
5.2 Basic Structure
5.3 DES Encryption Algorithm
5.4 DES Decryption Algorithm
5.5 Implementation
5.5.1 C++ Library Headers
5.5.2 The DES Class
5.5.3 Introducing the Member Variables of DES Class
5.5.4 Introducing the Member Functions of DES Class
5.5.5 The Keygen() Function
5.5.6 The PermChoice1() Function
5.5.7 The Split_Key() Function
5.5.8 The PermChoice2() Function
5.5.9 The Encrypt(char *) Function
5.5.10 The IP() Function
5.5.11 The Expansion() Function
5.5.12 The xor_oneE(int round) Function
5.5.13 The Substitution() Function
5.5.14 The Permutation() Function
5.5.15 The xor_two() Function
5.5.16 The Decrypt(char *) Function
5.5.17 The Main() Function
Chapter 6: Advanced Encryption Standard
6.1 Overview
6.2 History
6.3 Design Consideration
6.4 Primitive Operations of AES
6.5 Structure of AES
6.6 Overview of Key Expansion
6.7 Key Expansion Example
6.8 Encryption
6.9 An Encryption Example
6.10 Decryption
6.11 Limitations
6.12 Pros and Cons of AES
6.13 Implementation
6.14 Conclusion
Chapter 7: Asymmetric Key Algorithms
7.1 Basic Concept
7.2 Applications of Asymmetric Key Algorithms
7.2.1 Encryption/Decryption
7.2.2 Digital Signature
7.2.3 Encryption and Digital Signature
Chapter 8: The RSA Algorithm
8.1 The Concept
8.2 Operations
8.2.1 Key Generation
8.2.2 Encryption
8.2.3 Decryption
8.3 Applications of the RSA Algorithm
8.4 Implementation Code
Chapter 9: Elliptic Curve Cryptography
9.1 Introduction
9.2 Elliptic Curves over R
9.3 Elliptic Curves over ZP
9.3.1 Adding Points in Elliptic Curves over ZP
9.3.2 Scalar Multiplication
9.4 Discrete Logarithm Problem
9.5 Elliptic Curve Cryptography
9.5.1 Elliptic Curve Diffie–Hellman Key Exchange
9.5.2 Key Exchange Example
9.5.3 Elliptic Curve Encryption/Decryption
9.5.4 Encryption/Decryption Example
9.6 Implementation 1
9.7 Implementation 2
References
Chapter 10: Message Digest Algorithm 5
10.1 General Properties and Vulnerabilities
10.2 Design Principle
10.3 Algorithm Description
10.3.1 Add Padding Bits behind the Input Message
10.3.2 Add a 64-Bit Binary String That Is the Representation of the Message’s Length
10.3.3 Initialize Four 32-Bit Values
10.3.4 Compress Every 512-Bit Block
10.3.5 Generate the 128-Bit Output
10.4 An Example
10.5 Implementation 1
10.6 Implementation 2
10.7 Conclusion
References
Chapter 11: Secure Hash Algorithm
11.1 Basic Hash Function Concept
11.2 Applications
11.3 Steps of SHA-1
11.3.1 Appending Original Message Lengths and Padding
11.3.2 Initialization
11.3.3 Message Processing
11.3.4 Output
11.4 An Example
11.5 Implementation
11.6 Conclusion
Chapter 12: Fundamentals of Identity Based Cryptography
12.1 Introduction to Cryptography
12.1.1 Symmetric Cryptography
12.1.2 Asymmetric Cryptography
12.1.3 Diffie–Hellman (DH) Algorithms
12.1.4 Rivest, Shamir, and Adleman (RSA) Algorithms
12.1.5 Elliptic Curve Cryptography (ECC)
12.1.5.1 ECC Key Generation
12.1.5.2 Elliptic Curve Digital Signature Algorithm
12.2 ID-Based Cryptography
12.2.1 ID-Based Key Construction
12.2.2 Pairing Functions
12.2.3 Examples of ID-Based Encryption Schemes
12.2.3.1 Boneh and Franklin Encryption Scheme
12.2.3.2 Boneh and Boyen Encryption Schemes
12.2.3.3 Chen et al. Encryption Scheme
12.2.4 Examples of ID-Based Signature Algorithms
12.2.4.1 Paterson Signature Scheme
12.2.4.2 Hess Signature Scheme
12.2.4.3 Barreto et al. Signature Scheme
12.2.5 Arguments in Favor of IBC
12.2.6 Use of IBC in Network Security
12.3 Conclusion
References
Chapter 13: Symmetric Key Encryption Acceleration on Heterogeneous Many Core Architectures
13.1 Introduction
13.2 Modern Heterogeneous Many-Core Architectures
13.3 The OpenCL Programming Model
13.3.1 OpenCL Parallel Execution Model
13.3.2 OpenCL Memory Model
13.3.3 First OpenCL Example
13.4 Implementing AES in OpenCL
13.4.1 The AES Block Cipher
13.4.2 Modes of Operation
13.4.3 AES Kernels
13.4.4 AES Host Library
13.4.5 Putting It All Together
13.5 Implementation
13.6 Concluding Remarks
References
Chapter 14: Methods and Algorithms for Fast Hashing in Data Streaming
14.1 Introduction and Practical Situations
14.2 Terminology
14.3 The Data Streaming Problem
14.3.1 Related Information Theory and Formulations
14.3.2 Practical Applications and Designs
14.3.3 Current Research Topics
14.4 Simple 32-Bit Fast Hashing
14.4.1 Hashing and Blooming Basics
14.4.2 Traditional Hashing Methods
14.4.3 Hashing by Bit Manipulation
14.4.4 Quality Evaluation of Hash Functions
14.4.5 Example Designs for Fast Hashing
14.5 Practical Data Streaming
14.5.1 Distributions in Practice
14.5.2 Bloom Filters: Store, Lookup, and Efficiency
14.5.3 Unconventional Bloom Filter Designs for Data Streams
14.5.4 Practical Data Streaming Targets
14.5.5 Higher-Complexity Data Streaming Targets
14.6 Practical Fast Hashing and Blooming
14.6.1 Arbitrary Bit Length Hashing
14.6.2 Arbitrary Length Bloom Filters
14.6.3 Hardware Implementation
14.7 Practical Example: High-Speed Packet Traffic Processor
14.7.1 Example Data Streaming Target
14.7.2 Design for Hashing and Data Structures
14.8 Summary
References
Footnotes
Chapter 8: The RSA Algorithm
Chapter 13: Symmetric Key Encryption Acceleration on Heterogeneous Many-Core Architectures
Cryptography / Information Security
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Prev
Previous Chapter
Practical Cryptography
Next
Next Chapter
Copyright Page
PRACTICAL CRYPTOGRAPHY
Algorithms and Implementations Using C++
Saiful Azad
Al-Sakib Khan Pathan
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset