Basic Internet Security. Post date: 13 Oct This book gives hands-on explanations on how to make your digital communication and data more secure and. PDF Drive is your search engine for PDF files. CISSP® Certified Information Systems Security Professional Study Guide Seventh Edition James CISSP (ISC)2 . Ujjwal Sahay is the Author of the book HACK-X-CRYPT: A STRAI. study in information security, computer forensics, disaster recovery, and end- By.
|Language:||English, Spanish, Portuguese|
|Genre:||Science & Research|
|ePub File Size:||18.47 MB|
|PDF File Size:||10.80 MB|
|Distribution:||Free* [*Regsitration Required]|
Keep smartphone and network devices up-to-date. . In this book, we will introduce knowledge about cyber- security from familiar topics, and. A catalogue record for this book is available from the British Library .. Security workers use honeypots to collect valuable information about new methods and. One of my goals in writing this book was to illuminate some of those black boxes that are so popular in information security books today. On the other hand.
Design a method that will extend a key that is 64 bits long into a string of bits. In the cryptanalysis business, this is known as a depth. If all of the plaintext were known, there would be little point in recovering the key. My goal is to cover each topic in just enough detail so that a reader can appreciate the basic security issue at hand and to avoid getting bogged down in trivia. The double transposition is not a trivial cipher to break. Something You Have.
Advances in Security in Computing and Communications This book presents some of the state-of-the-art research work in the field of cryptography and security in computing and communications. Building the Infrastructure for Cloud Security: A Solutions View This book provides a comprehensive look at the various facets of cloud security - infrastructure, network, services, Compliance and users.
Android Security Cookbook Keith Makan, et al Practical recipes to delve into Android's security mechanisms by troubleshooting common vulnerabilities in applications and Android OS versions.
Web Application Security Guide Jan Schejbal This book provides explicit hacks, tutorials, penetration tests, and step-by-step demonstrations for security professionals and Web application developers to defend their most vulnerable applications. Web Application Security for Dummies Mike Shema This book is a quick guide to understanding how to make your website secure.
Theory and Practice of Cryptography and Network Security Protocols This book discusses some of the critical challenges that are being faced by the current computing world and also describes some mechanisms to defend against these challenges. The Security Development Lifecycle: Nmap Cookbook: The Fat-Free Guide to Network Security Scanning This book provides simplified coverage of network scanning features available in the Nmap suite of utilities.
Kali Linux Wireless Penetration Testing Beginner's Guide This book presents wireless pentesting from the ground up, introducing all elements of penetration testing with each new technology. The Coming Swarm: Juniper SRX Series: Security Engineering: Building Dependable Distributed Systems This book makes it clear just how difficult it is to protect information systems from corruption, eavesdropping, unauthorized use, and general malice.
Handbook of Information Security Management Micki Krause Bringing together the knowledge, skills, techniques, and tools required of IT security professionals, it facilitates the up-to-date understanding required to stay one step ahead of evolving threats, standards, and regulations.
Forensic Discovery Dan Farmer, Wietse Venema This book covers both theory and hands-on practice of computer forensics , introducing a powerful approach that can often recover evidence considered lost forever.
Open Source Security Tools: A Practical Guide to Security Apps This book is a practical, hands-on introduction to open source security tools. Cryptography and Security in Computing Jaydip Sen The purpose of this book is to present some of the critical security challenges in today's computing world and to discuss mechanisms for defending against those attacks by using classical and modern approaches of cryptography mechanisms.
Applied Cryptography and Network Security Jaydip Sen This book discusses some of the critical security challenges faced by today's computing world and provides insights to possible mechanisms to defend against these attacks.
Security Enhanced Applications for Information Systems this book aims to present a number of innovative security enhanced applications. Identity Management on a Shoestring Ganesh Prasad, et al This book is aimed at Security and IT practitioners especially architects in end-user organisations who are responsible for implementing an enterprise-wide Identity and Access Management IAM system. Visual Cryptography and Its Applications Jonathan Weir, et al In this book, one of the data security methods known as visual cryptography VC is presented.
Public-Key Cryptography: Theory and Practice Bodo Moeller This book examines multiple aspects of public-key cryptography. Rethinking Public Key Infrastructures and Digital Certificates In this book, the author proposes cryptographic building blocks for the design of digital certificates that preserve privacy without sacrificing security.
Firewalls Complete Marcus Goncalves This info-packed book covers virtually all firewall techniques, technologies, and brands - and even includes a blueprint for designing your own. Wiley's Information Security Book Bundle - A Free Page Sampler Whether you're a seasoned veteran of Information Security or a newcomer, there are valuable lessons and advice in these pages for you.
Baier, et al This book explains claims-based identity how to use it in the context of some commonly occurring scenarios. Leading Security Experts Explain How This book features a collection of essays and insightful analyses by leaders who have found unusual solutions for writing secure code, designing secure applications, addressing modern challenges such as wireless security, and much more.
Nmap Network Scanning: The Official Nmap Guide This book is the official guide to the Nmap Security Scanner, a free and open source utility used by millions of people for network discovery, administration, and security auditing. Improving Web Services Security: Scenarios and Implementation Using end-to-end application scenarios, this free book shows you how to design and implement authentication and authorization in WCF Windows Communication Foundation.
Hacking the Xbox: An Introduction to Reverse Engineering This book shows Xbox owners how to increase the value and utility of their system, Hacking the Xbox features step-by-step tutorials on hardware modification that teach basic hacking techniques as well as essential reverse engineering skills.
Mastering Ethereum: Building Smart Contracts and DApps The book is intended to serve both as a reference manual and as a cover-to-cover exploration of Ethereum. Mastering Bitcoin: Programming the Open Blockchain This book is your guide through the seemingly complex world of Bitcoin , providing the knowledge you need to participate in the internet of money. Secrets of Network Cartography: A Comprehensive Guide to Nmap In this book, thirteen different Nmap scans are profiled, with advantages, disadvantages, and usage guidelines for each one.
Zwicky, et al This book is is a practical and detailed step-by-step guide to designing and installing firewalls and configuring Internet services to work with a firewall. Inference Control. Simple Security Protocols. Authentication Protocols. Authentication and TCP. Zero Knowledge Proofs. The Best Authentication Protocol? Digital Signature. Symmetric Key.
Public Key Encryption. Math Essentials. DES S-Boxes. One of my goals in writing this book was to illuminate some of those black boxes that are so popular in information security books today. As a result, I sometimes ignore details that I deem irrelevant to the topic at hand. Another goal of mine was to present the topic in a lively and interesting way. Some security textbooks offer a large dollop of dry useless theory.
Reading one of these books is about as exciting as reading a calculus textbook. Other security books offer nothing but a collection of apparently unrelated facts, giving the impression that security is not really a coherent subject at all. Then there are books that present the topic as a collection of high-level managerial platitudes. Finally, some security books focus on the human factors in security. While it is certainly critical to understand the role that human nature plays in security, I would argue that a security engineer must have a solid understanding of the inherent strengths and weaknesses of the technology before the human factors can be fully appreciated.
My goal is to cover each topic in just enough detail so that a reader can appreciate the basic security issue at hand and to avoid getting bogged down in trivia. In particular, the mathematical formalism has been kept to a bare minimum the Appendix contains a review of all necessary math topics. Despite this self-imposed limitation, this book contains more substantive cryptography than most other security books.
Networking basics arise in a few sections. The schedule that I generally follow in my undergraduate security class appears in the table below. This schedule allows ample time to cover a few of the optional topics. Chapter 1. Introduction 2. Classic Cryptography 3. Symmetric Key Crypto 4. Public Key Crypto 5. Hash Functions Hours 1 3 4 4 3 6. Advanced Cryptanalysis 7. Authentication 8. Authorization 0 4 2 9. Authentication Protocols 4 Real-World Protocols Software Flaws and Malware Insecurity in Software 4 4 4 Sections 2.
Section 3. Omit 4. Cover 5. The remainder of 5. Omit entire chapter. Cover all. Cover 8. Sections 8. Sections 9. Sections Recommended to cover part of Then cover only the bare minimum of crypto and software topics.
Although Chapter 6 is somewhat more technical than other chapters, it provides a solid introduction to cryptanalysis, a topic that is usually not treated in any substantive way, even in crypto books. To stay within the time constraints, you can de-emphasize the software topics. In any incarnation, a security course based on this book is an ideal venue for individual or group projects. The annotated bibliography provides an excellent starting point to search for suitable projects.
In addition, many topics and problems lend themselves well to class discussions or in-class assignments see, for example, Problem 13 in Chapter 10 or Problem 11 in Chapter In addition, a solutions manual is available to instructors sorry students from the publisher.
The Math Essentials of Appendix A-2 are required in various places. Elementary modular arithmetic A Permutations A The elementary linear algebra in A Appendix A-3 is only used as a reference for problems in Chapter 3. Just as any large and complex piece of software must have bugs, this book inevitably has errors. I will try to maintain a reasonably up-to-data errata on the textbook website. Also, I would appreciate a copy of any software that you develop that is related to the topics in this book.
Applets that illustrate algorithms and protocols would be especially nice.
My work experience includes seven years at the National Security Agency followed by two years at a Silicon Valley startup company where I helped design and develop a digital rights management security product.
This real-world work was sandwiched between academic jobs. While in academia, my research interests have included a wide variety of security topics. With my return to academia in , I quickly realized that none of the available security textbooks had much connection with the real world.
I can say that many of my former students who are now at leading Silicon Valley companies tell me that the information they learned in my course has proved useful in the real world. I do have a life outside of information security. I also spend too much time watching cartoons. Another favorite activity of mine is complaining about the absurd price of housing in the San Francisco Bay Area.
I want to thank my thesis advisor, Clyde F. Martin for introducing me to this fascinating subject. In my seven years at NSA, I learned more about security than I could have learned in a lifetime anywhere else.
Unfortunately, the people who taught me so much must remain anonymous. At my ill-fated startup company, MediaSnap, Inc. In spite of these pressures, we produced a high-quality digital rights management product that was far ahead of its time.
I want to thank all at MediaSnap, and especially Joe Pasqua and Paul Clarke, for giving me the chance to work on such a fascinating and challenging project. Richard Low, a colleague here at SJSU, provided helpful feedback on an early version of the manuscript.
David Blockus deserves special mention for giving me detailed comments on each chapter at a particularly critical juncture in the writing of this book. I want to thank all of the people at Wiley who applied their vast expertise to make the book writing process as painless as possible.
Trudy is a generic bad guy who is trying to attack the system in some way. Some authors employ a team of bad guys where the name implies the particular nefarious activity. Trudy will be our all-purpose bad guy. Alice, Bob, Trudy and the rest of the gang need not be humans. For example, one possible scenario would be that Alice is a laptop, Bob a server, and Trudy a human.
Information has integrity if unauthorized writing is prohibited. Denial of service, or DoS, attacks are a relatively recent concern. Such attacks try to reduce access to information. As a result of the rise in DoS attacks, data availability has become a fundamental issue in information security.
Bob might then take his business elsewhere. Although these two authentication problems look similar on the surface, under the surface they are completely different. Authentication over a network is open to many kinds of attacks. The messages sent over a network can be viewed by Trudy. To make matters worse, Trudy can not only intercept messages, she can alter messages and insert messages of her own making.
She can also replay old messages in an effort to, say, convince AOB that she is really Bob. Authentication in such a situation requires careful attention to the protocols that are used. Cryptography also has an important role to play in security protocols. Enforcing such restrictions is the domain of authorization. Note that authorization places restrictions on the actions of authenticated users. Modern software systems tend to be large, complex, and rife with bugs.
How can AOB be sure that its software is behaving correctly? On the other hand, some software is written with the intent of doing evil. Such malicious software, or malware, includes the all-too-familiar computer viruses and worms that plague the Internet today. What can Trudy do to increase the nastiness of such pests?
Bob also has many software concerns. For example, when Bob enters his password on his computer, how does he know that his password has not been captured and sent to Trudy? If Bob conducts a transaction at www. Operating systems are themselves large and complex pieces of software. OSs also enforce much of the security in any system, so some knowledge of OSs is necessary in order to more fully appreciate the challenges of information security.
What is the system supposed to do? How does it do it? Does it really work? I believe this is appropriate, since the strengths, weaknesses, and inherent limitations of the mechanisms directly affect all of the other critical aspects of security. In other words, without a reasonable understanding of the mechanisms, it is not possible to have an informed discussion of any of the other three issues.
These classic systems illustrate fundamental principles that are employed in modern digital cipher systems, but in a more user-friendly format. Hash functions are used in many different contexts in information security. Some of these uses are quite surprising and not always intuitive. In fact, weak passwords present a major security weakness in most systems. The alternatives to passwords include biometrics and smartcards. Authorization deals with restrictions placed on authenticated users.
Authorization leads naturally to a few relatively specialized topics. If both types of information are on a single system, how can we enforce such restrictions? The idea behind such modeling is to lay out the essential security requirements of a system. If so, the system would automatically inherit all of the security properties that are known to hold for such a model. Multilevel security also provides an opportunity to discuss covert channels and inference control. Covert channels are unintended channels of communication.
Such channels are common and create potential security problems. Inference control attempts to limit the information that can unintentionally leak out of a database due to legitimate user queries. Regardless of the type of access control employed, attacks are bound to occur. An intrusion detection system IDS is designed to detect attacks in progress.
Many examples will be provided, each of which illustrates a particular security pitfall. Cryptography will prove useful in authentication protocols. Hash functions also have an important role to play in security protocols.
This nicely illustrates the challenges inherent in developing security protocols. These attacks include various combinations of attacks on the protocol itself, as well as the underlying cryptography. This is a huge topic, and we can only cover selected issues. We then consider the requirements of a so-called trusted OS.
A trusted OS provides strong assurances that the OS is performing properly. After this background, we consider a recent attempt by Microsoft to implement a trusted OS for the PC platform. This discussion further illustrates the challenges inherent in implementing security in software. For example, suppose that Bob wants to purchase an item from Amazon. Various access control issues arise in such a transaction Part II , and all of these security mechanisms are enforced in software Part IV.
To take just one more example, a great deal of security today rests on passwords. Users want to choose easy to remember passwords, but this makes it easier for Trudy to guess passwords—as discussed in Chapter 7. An obvious solution is to assign strong passwords to users. However, this is almost certain to result in passwords written on post-it notes and posted in prominent locations, making the system less secure than if users were allowed to choose their own relatively weak passwords.
My goal is to present just enough of the theory so that the reader can grasp the fundamental principles. The problem is expecting otherwise and thinking that having problems is a problem. Rubin 1. Give an example where availability is the overriding concern. RFID tags are extremely small devices capable of broadcasting a number over the air that can be read by a nearby sensor.
It is predicted that RFID tags will soon be found in all sorts of products, including paper money, clothing items, and so on. Discuss some privacy and other security concerns that this might raise. Discuss an example where privacy is required. Read the article  on Byzantine failure.
Describe the problem and explain why the problem cannot occur if there are four generals, only one of which is a traitor. Why is this problem relevant to information security? These characters, as any one might readily guess, form a cipher—that is to say, they convey a meaning.
This chapter will lay the foundation for the remaining crypto chapters, which, in turn, underpin much of the remainder of the book. Crypto as a black box. A handful of special topics are also covered. The precise meaning should be clear from context.
The original data is known as plaintext, and the result of encryption is ciphertext. We decrypt the ciphertext to recover the original plaintext. In public key crypto, the encryption key is appropriately known as the public key, whereas the decryption key, which must remain secret, is the private key.
In symmetric key crypto, the key is known as a symmetric key. A fundamental tenet of cryptography is that the inner workings of the cryptosystem are completely known to the attacker, Trudy, and the only secret is a key. What is the point of Kerckhoffs Principle? Reverse engineering efforts can easily recover algorithms from software, and algorithms embedded in tamper-resistant hardware are susceptible to similar attacks.
And even more to the point, secret crypto-algorithms have a long history of failing to be secure once the algorithm has been exposed to public scrutiny—see  for a timely example. For these reasons, the cryptographic community will not accept an algorithm as secure until it has withstood extensive analyses by many cryptographers over an extended period of time.
In other contexts, Kerckhoffs Principle is taken to mean that the security design itself is open. Although Kerckhoffs Principle in both forms is widely accepted in principle, there are many real-world temptations to violate this fundamental tenet, almost invariably with disastrous consequences for security.
Although the history of crypto is a fascinating topic , the purpose of this material is simply to provide an elementary introduction to some of the crucial concepts that arise in modern cryptography.
First on our agenda is the simple substitution, which is one of the oldest cipher systems—dating back at least 2, years—and one that is ideal for illustrating basic attacks.
We then turn our attention to a double transposition cipher, which includes important concepts that are used in modern ciphers. Finally, we consider the only practical cryptosystem that is provably secure—the onetime pad.
Using the key of 3, we can encrypt the plaintext message fourscoreandsevenyearsago by looking up each letter in the plaintext row and substituting the corresponding letter in the ciphertext row or by simply replacing each letter by the letter that is three positions ahead of it in the alphabet. To decrypt, we simply look up the ciphertext letter in the ciphertext row and replace it with the corresponding letter in the plaintext row, or simply shift each ciphertext letter backward by three.
Then she can try each of the 26 possible keys, decrypting the message with each putative key and checking whether the resulting putative plaintext looks like sensible plaintext. The brute force approach of trying all possible keys until we stumble across the correct one is known as an exhaustive key search. How large of a keyspace is large enough? Extrapolating this to a state-of-the-art PC with a single 4 GHz processor, Trudy could test fewer than keys per second on one such machine.
The simple substitution cipher need not be limited to shifting by n. With our superfast computer that tests keys per second, a keyspace of size would take more than millennia to exhaust.
Does this mean that a simple substitution cipher is secure? The answer is no, as the attack described in the next section illustrates. Assuming the underlying message is English, Trudy can make use of the English letter frequency counts in Figure 2. English letter frequency counts. This attack also shows that cipher designers must guard against clever attacks. But how can we protect against all such attacks, since clever new attacks are developed all the time?
As a result, a cipher can only be considered secure as long as no attack against it has yet been found. Ideally, we would like to have mathematical proof that there is no feasible attack on the system. Lacking a proof of the strength of a cipher, we could require that the best-known attack on the system is impractical. Ciphertext frequency counts. Both factors are necessary.
The recipient who knows the key can simply put the ciphertext into the appropriate sized matrix and undo the permutations to recover the plaintext. For example, to decrypt ciphertext 2. Then the columns are numbered as 4, 2, 1, 3 and rearranged to 1, 2, 3, 4. Unlike a simple substitution, the double transposition does nothing to disguise the letters that appear in the message.
Abbreviated Alphabet. The double transposition is not a trivial cipher to break. Our alphabet and the corresponding binary representation of letters are given in Table 2. It is important to note that the mapping between letters and bits is not secret. Suppose a spy named Alice wants to encrypt the plaintext message heilhitler using a one-time pad. The one-time pad requires a key consisting of a randomly selected string of bits that is the same length as the message.
The key is then XORed with the plaintext to yield the ciphertext. A fancier way to say this is that we add the plaintext and key bits modulo 2.
Suppose the spy Alice has the key which is of the proper length to encrypt the message above. Then to encrypt, Alice computes plaintext: First, suppose that Alice has an enemy, Charlie, within her spy organization. Suppose that Alice is captured by her enemies, who have also intercepted the ciphertext. The captors are eager to read the message, and Alice is encouraged to provide the key for this super-secret message. Alice claims that she is actually a double-agent and to prove it she claims that the key is If the key is chosen at random, then an attacker who sees the ciphertext has no information about the message other than its length.
And since we could pad the message with any number of random letters before encryption, the length is of no use either. So the ciphertext provides no information at all about the plaintext. This is the sense in which the one-time pad is provably secure. Of course, this assumes that the cipher is used correctly. The pad, or key, must be chosen at random, used only once, and must be known only by the sender and receiver. However, there is one serious drawback to the one-time pad: If we can securely transmit the pad, why not simply transmit the plaintext by the same means and do away with the encryption?
However, for modern high data-rate systems, a one-time pad cipher is totally impractical. Why is it that the one-time pad can only be used once?
In the cryptanalysis business, this is known as a depth. This cannot be good for anyone except for Trudy, the cryptanalyst. Using the same bit encoding as in Table 2. Then P1: But far more devastating is the fact that Trudy can now guess a putative message P1 and check her results using P2.
In the s and s, Soviet spies entering the United States brought one-time pad keys with them. The spies used these keys to encrypt important messages, which were then sent back to Moscow. These messages dealt with the most sensitive spy operations of the time. Yesterday he learned that they had dismissed him from his work. His active work in progressive organizations in the past was cause of his dismissal. They meet once a month for the payment of dues.
CHESTER is interested in whether we are satisfied with the collaboration and whether there are not any misunderstandings. The Soviet spies were well trained and never reused the key, yet many of the intercepted ciphertext messages were eventually decrypted by American cryptanalysts.
How can that be, given that the one-time pad is provably secure? As a result, many messages were in depth, which enabled the cryptanalysis of these messages.
This message refers to David Greenglass and his wife Ruth. Table 2. The codebook in Table 2. A codebook is a substitution cipher, but the substitutions are far from simple, since substitutions are for entire words—or even phrases.
The codebook illustrated in Table 2. Excerpt from a German codebook. Ciphertext The ciphertext message, as shown in Figure 2. At the time, the British and French were at war with Germany and its allies, but the United States was neutral . The Russians had recovered a damaged version of the German codebook, and the partial codebook had been passed on to the British. Through painstaking analyses, the Figure 2.
The Zimmermann telegram. The British were initially hesitant to release the Zimmermann telegram since they feared that the Germans would realize that their cipher was broken and, presumably, stop using it. However, in sifting through other cabled messages that had been sent at about the same time as the Zimmermann telegram, British analysts found that a variant of the telegram had been sent unencrypted. The version of the Zimmermann telegram that the British subsequently released closely matched the unencrypted version of the telegram.
Modern block ciphers use complex algorithms to generate ciphertext from plaintext and vice versa but at a higher level, a block cipher can be viewed as a codebook, where each key determines a distinct codebook. The contestants in the election were Republican Rutherford B. Hayes and Democrat Samuel J. Tilden had obtained a slight plurality of the popular vote, but it is the electoral college that determines the presidency.
In the electoral college, each state sends a delegation and the entire delegation is supposed to vote for the candidate who received the largest number of votes in that particular state though there is no legal requirement for a delegate to vote for a particular candidate, and on rare occasion a delegate will vote for another candidate. In , the electoral college delegations of four states were in dispute, and these held the balance.
A commission of 15 members was appointed to determine which state delegations were legitimate—and thus determine the presidency. The commission decided that all four states should go to Hayes and he became president of the United States. One of the ciphers used was a partial codebook together with a transposition on the words. Election of codebook. Plaintext Ciphertext Greenbacks Hayes votes Tilden telegram.. Copenhagen Greece Rochester Russia Warsaw..
A snippet of the codebook appears in Table 2. The permutation used for a message of 10 words was 9, 3, 6, 1, 10, 5, 2, 7, 4, 8. Situation unchanged. They are all idiots. The cryptanalysis of this weak cipher was relatively easy to accomplish . Since a permutation of a given length was used repeatedly, many messages of particular length were in depth—with respect to permutation as well as the codebook. The analyst had to be clever enough to consider the possibility that all messages of a given length were using the same permutation, but, with this insight, the permutations were easily recovered.
The codebook was then deduced from context and also with the aid of some unencrypted messages that provided clues as to the substance of the ciphertext messages.
And what did these decrypted messages reveal? By any measure, this cipher was poorly designed and weak. In this case, each time a permutation was reused, it gave the cryptanalyst more information that could be collated to recover the permutation. In modern cipher systems, we try to limit the use of a single 26 CRYPTO BASICS key so that we do not allow a cryptanalyst to accumulate too much information about a particular key—and to limit the damage if a key is discovered.
Late in the 20th century, cryptography became a critical technology for commercial and business communications as well. In this section, we mention a few other historical highlights from the past century. In , Secretary of State Henry L. Stimson ended the U. This would prove to be a costly mistake in the run up to the Japanese attack on Pearl Harbor. Shortly after the attack of December 7, , the United States restarted its cryptanalytic program in earnest.
This cipher was broken by American cryptanalysts before the attack on Pearl Harbor, but the intelligence gained code named Magic provided no clear indication of the impending attack . It is often claimed that the ULTRA intelligence was so valuable that in November of , Churchill decided not to inform the British city of Coventry of an impending attack by the German Luftwaffe, since the primary source of information on the attack came from Enigma decrypts .
Churchill was supposedly concerned that a warning might tip off the Germans that their cipher had been broken. The Enigma was initially broken by the Poles. After the fall of Poland, the Polish cryptanalysts escaped to France. Shortly thereafter, France fell to the Nazis and the Polish cryptanalysts escaped to England, where they provided their knowledge to British cryptanalysts. Remarkably, the Polish cryptanalysts were not allowed to continue their work on the Enigma.
A picture of the Enigma appears in Figure 2. Confusion is designed to obscure the relationship between the plaintext and ciphertext, while diffusion is supposed to spread the plaintext statistics through the ciphertext. A simple substitution cipher and a one-time pad employ only confusion, whereas a double transposition is a diffusion-only cipher. Figure 2. The Enigma cipher Courtesy of T. Perera and the Enigma Museum. In subsequent chapters, it will become clear how crucial these concepts are to modern block cipher design.
Until recently, cryptography remained primarily the domain of governments. That changed dramatically in the s, primarily due to the computer revolution, which led to the need to protect large amounts of electronic data. By the mids, even the U. After DES, academic interest in cryptography grew rapidly.
Public key cryptography was discovered or, more precisely, rediscovered shortly after the arrival of DES. In the s, the Clipper Chip and the development of a replacement for the aging DES were two of the many crypto highlights. While the distinction between public keys and symmetric keys might seem minor, it turns out that public key crypto can do some useful things that are impossible to achieve with symmetric ciphers. In public key cryptography, the encryption keys can be made public.
If, for example, you post your public key on the Internet, anyone with an Internet connection can encrypt a message for you, without any prior arrangement regarding the key. This is in stark contrast to a symmetric cipher, where the participants must agree on a key in advance.
Prior to the adoption of public key crypto, secure delivery of symmetric keys was the Achilles heel of modern cryptography. A spectacular case of a failed symmetric key distribution system can be seen in the exploits of the Walker family spy ring.
The Walker family sold cryptographic keys used by the U. Since the public key is public, anyone can decrypt this message. However, it can be used as a digital form of a handwritten signature—anyone can read the signature, but only the signer could have created the signature. Anything we can do with a symmetric cipher we can also accomplish with a public key cryptosystem.
Public key crypto also enables us to do things that cannot be accomplished with a symmetric cipher. So why not use public key crypto for everything? The primary reason is speed. Symmetric key crypto is orders of magnitude faster than public key crypto.
As a result, symmetric key crypto is used to encrypt the vast majority of data today. Yet public key crypto has a critical role to play in modern information security. Each of the classic ciphers discussed above is a symmetric cipher. Modern symmetric ciphers can be subdivided into stream ciphers and block ciphers. A block cipher is, in a sense, the generalization of a codebook. Conversely, when the key changes, a different codebook is selected. While stream ciphers dominated in the post-World War II era, today block ciphers are the kings of symmetric key crypto—with a few notable exceptions.
For example, if the input changes in one or more bits, the output should change in about half of its bits. By Kerckhoffs Principle, we assume that Trudy the cryptanalyst has complete knowledge of the inner workings of the algorithm. Another basic assumption is that Trudy has access to the ciphertext—otherwise, why bother to encrypt?
Creative Commons Attribution 4. Cracking Codes with Python Post date: The book features the source code to several ciphers and hacking programs for these ciphers. No Starch Press Publication date: Engineering Security Post date: It also focuses on usability, and the different mental models of security between end users and cryptographers. Handbook for Bloggers and Cyber-Dissidents Post date: Information Security for Journalists Post date: It lays out the most effective means of keeping your work private and safe from spying.
Protect to Enable Post date: It describes the increasing number of threats and vulnerabilities, but also offers strategies for developing solutions.