Ephemeral refers to cryptographic keys that are generated for a single session or transaction and are discarded once the session or transaction is complete. This is in contrast to static keys, which remain the same for an extended period of time.
Modes of operation
a. Authenticated
b. Unauthenticated
c. Counter
Modes of operation refer to the way in which a block cipher is used to encrypt data. Authenticated modes provide both confidentiality and authenticity of data, while unauthenticated modes only provide confidentiality. Counter mode is a specific mode of operation that uses a counter as the input to the block cipher.
Blockchain and Public ledgers
Blockchain refers to a decentralized and distributed ledger that is used to record transactions. Public ledgers are blockchains that are accessible to anyone, allowing for transparency and immutability of data.
Cipher suites a. Stream b. Block
Cipher suites are collections of cryptographic algorithms that are used together to provide secure communication. Stream ciphers are ciphers that encrypt data one bit or byte at a time, while block ciphers encrypt data in fixed-size blocks.
Symmetric vs. asymmetric
Symmetric cryptography and asymmetric cryptography are two types of encryption techniques used in cryptography. In symmetric cryptography, the same key is used for encryption and decryption. It is fast, but the key must be shared between the sender and receiver, making it vulnerable to attacks if the key is intercepted. In contrast, asymmetric cryptography, also known as public-key cryptography, uses two keys for encryption and decryption. The public key is used for encryption, and the private key is used for decryption. This makes it more secure, but slower compared to symmetric cryptography.
Lightweight cryptography
Lightweight cryptography is a type of cryptography that is designed for low-end devices, such as IoT devices, which have limited computing power and memory. Lightweight cryptography aims to provide secure communication while still maintaining low overhead in terms of computational and memory requirements.
Steganography
-Audio
-Video
-Image
Steganography is the practice of hiding secret data within other data. Audio, video, and image steganography involves hiding secret data within audio, video, or image files, respectively. This can be used to securely transmit sensitive information without drawing attention to it.
Homomorphic encryption
Homomorphic encryption is an encryption technique that allows computations to be performed on encrypted data without having to first decrypt it. This provides a level of security as the data remains encrypted throughout the computation process.
Common use cases
Cryptography is used in various use cases that require different levels of security and privacy. Here are some common use cases for cryptography:
1. Low power devices: Cryptography is important for low-power devices, such as IoT devices, as it provides a secure method of communication and data storage.
2. Low latency: For real-time applications that require quick communication, cryptography is used to ensure the confidentiality and integrity of data, as well as to minimize latency.
3. High resiliency: In systems where data is critical, cryptography is used to provide a secure backup and recovery mechanism. This ensures the availability and integrity of data in case of a failure or attack.
4. Supporting confidentiality: Cryptography is used to secure sensitive information, such as personal information, financial data, and government secrets.
5. Supporting integrity: Cryptography is used to ensure that data has not been altered during transmission, providing data integrity.
6. Supporting obfuscation: Cryptography is used to obscure data, making it difficult for unauthorized parties to understand it.
7. Supporting authentication: Cryptography is used to verify the identity of a user or system, providing authentication.
8. Supporting non-repudiation: Cryptography is used to prevent the denial of actions performed by a user, providing non-repudiation.
Limitations
Cryptographic techniques have various limitations that must be taken into account when designing and implementing security solutions. Some of these limitations include:
1. Speed: Cryptographic algorithms can be computationally intensive, which can slow down the performance of systems that rely on them. This can be particularly problematic in low-power devices or high-performance computing environments.
2. Size: Cryptographic algorithms can also be quite large in terms of the amount of code and memory they require. This can limit the usability of cryptographic solutions in devices with limited memory and storage resources.
3. Weak keys: Cryptographic algorithms are only as strong as the keys that are used to secure them. If weak keys are used, the security of the encryption can be easily compromised.
4. Time: Cryptographic algorithms can also be time-sensitive, with the security of the encryption being reduced over time as technology advances and attackers become more sophisticated.
5. Longevity: Cryptographic algorithms may also have a limited lifespan, becoming obsolete as computing power increases and attackers find new ways to compromise them.
6. Predictability: Cryptographic algorithms can also be subject to attacks based on patterns or patterns of behavior that can be predicted over time.
7. Reuse: The reuse of cryptographic keys can also be a problem, as it makes the keys more susceptible to attack.
8. Entropy: Cryptographic algorithms require a source of randomness, or entropy, in order to generate secure keys. If the entropy source is compromised, the security of the encryption can be compromised.
9. Computational overheads: Cryptographic algorithms can be computationally intensive, which can consume significant amounts of computing resources and reduce performance.
10. Resource vs. security constraints: The implementation of cryptographic solutions must be balanced against the available resources and constraints of the systems in which they are used. The trade-off between security and resources is a complex one, and must be carefully considered in order to ensure that the right balance is struck.