Comprehensive Guide to Digital Certificates, Security Protocols, and Computer Architecture
Data Items in a Digital Certificate
- Serial Number
- Certificate Authority (CA) that issued the certificate
- CA Digital Signature
- Name of company/organization/individual owning the certificate
- Subject Public Key
- Validity Period of the certificate
- Hashing Algorithm
Conditions for Message Authenticity
- Digital Certificate
- Inclusion of Public Key
- Use of Public Key to hash the received message and produce a message digest
- Comparison of the generated hash to the digital signature
Usage of Encrypted Message Digest
- Financial Transactions
- Legal Documents
- Software Distribution
Process of Digital Signature
- Software is put through a hashing algorithm.
- The hash total is encrypted with a private key.
- The software and encrypted digest hash/digital signature are sent.
- The receiver possesses the sender's public key.
- The received hash/digital signature is decrypted with the public key.
- The receiver hashes the received software.
- If both hashes match, the software is authentic. OR
- The CA uses a hashing algorithm to generate a message digest from the particular certificate.
- The message digest is encrypted with the CA's private key.
Problems SSL and TSL Can Overcome
- Security: For example, alteration of transmitted messages.
- Privacy: For example, ensuring only the intended receiver can view the data.
- Authentication: For example, establishing trust in the other party.
Security Parameters
- Protocol: Which protocol to use.
- Session ID: Uniquely identifies a related series of messages between the server and client.
- Encryption Method: Public or private keys are used by symmetric or asymmetric encryption.
- Authentication Method: Use of digital certificates for authenticity.
- Compression Method: Method to be used for data compression.
Chapter 4: Parallel Processing
Definition
To perform a set of coordinated computations simultaneously in parallel.
Issues with Hardware
Processors need to communicate effectively to transfer processed data.
Issues with Software
- Suitable algorithm/program/software/design.
- Appropriate programming language that allows data processing by multiple processors simultaneously.
Types of Parallel Processing Systems
- Massive: Systems with a large number of processors.
- SISD (Single Instruction Single Data): A computer with only one processor executing one set of instructions on a single set of data. It lacks parallel processing capabilities.
- SIMD (Single Instruction Multiple Data): The processor has several ALUs, each executing the same instruction on different data.
- MIMD (Multiple Instruction Multiple Data): Multiple processors execute different instructions and operate on different data drawn from a common pool.
Chapter 1: Serial File Organization
Reasons for Choosing Serial File Organization
- No need to re-sort data when new data is added.
- Suitable for small files where searching requires minimal processing.
- New records can be easily appended.
- Suitable for batch processing of records.
Types of File Organization
- Sequential: File organized using a unique field, suitable for batch processing where order is not important.
- Random (Direct): Suitable for real-time processing, requires the fastest access to data, and eliminates the need to search through records.
Binary Number Representation
- Binary negative number with the largest magnitude: 10000000 01111111
- Smallest binary positive number: 01000000 00001000
- Decimal equivalent of 0.00195
Chapter 3: Flip-Flops
SR Flip-Flop Instability
When S=0 and R=0, the SR flip-flop produces Q=1 and Q'=1. This is unstable because Q and Q' should be complements of each other.
Advantages of JK Flip-Flop
- All four input combinations are valid.
- The 1-1 combination changes the output to its logical complement.
- Avoids the unstable state present in SR flip-flops.
- Invalid states cannot occur.
Role of Flip-Flops
- Memory and data storage.
- Stores a single bit of information.
Full Adder
- Carry (C): Represents the carry part of the addition of three bits.
- Sum (S): Represents the sum part of the addition of three bits.
Chapter 5: Operating Systems
Process State Transitions
- Blocked to Ready: When an I/O operation completes, a blocked process moves to the ready queue.
- Running to Ready: When a process's time slice expires, an interrupt occurs, and the process transitions to the ready state.
- Termination: When a process finishes execution, it enters the termination state.
Why a Process Cannot Move Directly from Ready to Blocked
A process must initiate an I/O operation to enter a blocked state. I/O operations require the process to be executing, which is only possible in the running state.
Role of Low-Level Scheduler in Multiprogramming OS
- Decides which process from the ready queue should get access to the processor (running state).
- Bases its decision on process priority.
- Invoked after an interrupt or OS call.
Virtual Machine Tasks
- Create and delete virtual machines.
- Make existing hardware available to the guest OS.
- Protect each virtual machine from the actions of other virtual machines.
Difference Between Guest OS and Host OS
- Guest OS: Runs inside a virtual machine and controls virtual hardware.
- Host OS: Controls the physical hardware and runs the virtual machine software.
Uses of Virtual Machines
- Trying out and using alternative operating systems.
- Testing software to identify potential problems.
- Easier to create a VM with a new OS than to set up a new physical computer system.
Limitations of Virtual Machines
- Slower execution speed due to the overhead of running the virtual machine software.
- Difficulty in accurately judging actual response times.
- Challenges in emulating certain hardware components.