Week 6 Encryption Flashcards
1
Q
What is encryption?
A
Encryption is a fundamental concept in software and security engineering, serving as a crucial mechanism for protecting data confidentiality, integrity, and privacy. It involves the transformation of plaintext data into ciphertext using cryptographic algorithms and keys, making it unreadable to unauthorized parties.
2
Q
What sre the principles of encryption?
A
- Data Protection: Encryption safeguards sensitive data stored in databases, files, and storage devices from unauthorized access or theft.
- Secure Communication: Encryption ensures the confidentiality and integrity of data transmitted over networks, including emails, instant messages, and web traffic.
- Digital Signatures: Encryption-based digital signatures authenticate the origin and integrity of digital documents, contracts, and transactions.
- Secure Transactions: Encryption secures online transactions, including e-commerce purchases, banking transactions, and electronic fund transfers.
- Virtual Private Networks (VPNs): Encryption is used in VPNs to create secure and private communication channels over public networks, such as the internet.
- Cloud Security: Encryption protects data stored in cloud environments, ensuring confidentiality and compliance with regulatory requirements.
2
Q
What are common encryption techniques?
A
-
Symmetric Encryption:
Uses a single key for both encryption and decryption.
Examples include Advanced Encryption Standard (AES), Data Encryption Standard (DES), and Triple DES (3DES). -
Asymmetric Encryption (Public-Key Encryption):
Utilizes a pair of public and private keys for encryption and decryption.
Examples include RSA (Rivest-Shamir-Adleman), Elliptic Curve Cryptography (ECC), and Diffie-Hellman key exchange. -
Hash Functions:
Produce fixed-size output (hash) from variable-size input (plaintext)
Used for data integrity verification, digital signatures, and password hashing.
Examples include SHA-256 (Secure Hash Algorithm 256-bit) and MD5 (Message Digest Algorithm 5). -
Key Exchange Protocols:
Facilitate secure exchange of cryptographic keys between parties.
Examples include Diffie-Hellman key exchange, Elliptic Curve Diffie-Hellman (ECDH), and Key Exchange Algorithm (KEA). -
Hybrid Encryption:
Combines symmetric and asymmetric encryption for efficiency and security.
Asymmetric encryption is used to exchange a symmetric key, which is then used for encrypting data.
Widely used in secure communication protocols like SSL/TLS.
3
Q
What are the best practices for Encryption?
A
- Use Strong Encryption Algorithms: Select widely recognized and vetted encryption algorithms with strong security guarantees.
- Secure Key Management: Implement robust key management practices, including key generation, storage, distribution, rotation, and revocation.
- Encryption Everywhere: Encrypt data at rest, in transit, and during processing to maintain continuous protection across all stages of data lifecycle.
- Regularly Update Encryption Mechanisms: Stay current with encryption standards, algorithms, and protocols to address emerging threats and vulnerabilities.
- Secure Implementation: Implement encryption securely, considering factors such as algorithm selection, key length, initialization vector (IV) usage, and secure random number generation.
- Compliance and Regulation: Ensure compliance with data protection regulations and industry standards governing encryption practices, such as GDPR, HIPAA, and PCI DSS.
4
Q
A