Softpanorama

May the source be with you, but remember the KISS principle ;-)
Contents Bulletin Scripting in shell and Perl Network troubleshooting History Humor

Crypto Algorithms Links

News

See Also Recommended Books Recommended Links Tutorials FAQs and References Recommended Papers
Symmetric Crypto Random Generators  Steganography Digital signatures Certificates management in OMU Compression and crypto Digital Code Signing
One-Time-Pad Magazines eBooks University Courses History Humor Etc

Cryptanalysis:
  1. Operations performed in converting encrypted messages to plain text without initial knowledge of the crypto-algorithm and/or key employed in the encryption. [NIS]
  2. The study of encrypted texts.

Although cryptography is an ancient art, it had not been widely used until late 19th century. And outside military, real mass application started only with widespread use of personal computers.  Before, say, 1990 outside of government classified systems and military the primary users of encryption have been financial institutions with their electronic fund transfer operations. The advent of the Internet in late 80th/early 90th as a cheap vehicle for transferring information electronically to all parts of the world and its inherent lack of security has inspired the use of encryption as a protection for sensitive information. As a direct result, new and rather esoteric encryption algorithms has been developed and put in widespread use to meet those challenges.

One result of the growing economic use of the Internet is the recognition by users and vendors alike that there is a need to provide a mechanism to protect the confidentiality of Internet users and the content of their transactions. Here encryption naturally comes to into play.

This page may help students by providing annotated links to the main topics in cryptography algorithms, including single-key cryptography algorithms, public-key cryptography algorithms, key negotiation algorithms, message authentication algorithms (digital signatures).  Essentially basic information and it can be found also on any other similar university course pages.

Please note that many of those algorithms represent a new areas of computer science.

In Internet age cryptography is important for the same reasons that photo IDs were important before and fences were important even before that. Cryptography offers three essential services that protect internet user and his/her data from theft and fraud. These services are authentication, integrity, and confidentiality.  The latter in view of latest NSA revelations is mostly illusionary unless you take special measures such as dual layer encryption and  steganography.  Especially vulnerable are any data stored in the cloud, especially your address books and emails that are stored in Web mail accounts such as Gmail, hotmail or Yahoo mail.  

There's a saying that "on the Internet, nobody knows you're a dog." And one of the things that make Internet so attractive, I would say addictive, is the (fake) anonymity it offers. In reality this anonymity is an illusion. Moreover most of your activities are probably stored for five years or more. Some are stored probably for life. In other words you are like a bug under the microscope.

With the current capabilities of various companies (Google, Facebook, Amazon to name a few) and agencies to intercept and log your internet communications this anonymity is greatly exaggerated. Email is probably the most abused type of service. It is routinely intercepted and analyzed. And actually "could email" is a remote storage that does not belong to you so in no way we can talk seriously about anonymity of such email. 

Transborder communication are the natural, by law, domain of national three letter agencies. For example all your emails to addresses outside the country are intercepted and stored as a matter of policy.  

The US government intercept approximately 1.6 billion messages a day. You also can be pretty sure that all your email to foreign addresses for the last decade or so is stored somewhere and can be retrieved and analyzed in case of necessity. Capabilities of modern storage goes into petabytes(1015) with large government agencies able to store Zettabytes(1021). If we assume that there are 100 millions(108) of active Internet users in the USA (out of 300 million population), then one just one petabyte storage allows approximately 107 per individual. Ten megabytes is a lot of storage for compressed text information and corresponds probably to 100 megabytes uncompressed. If we assume that information is stored for 10 years that's 10 megabytes per year. And this is just one petabyte, the storage  that even a medium income individual can assemble without much problems.

One petabyte is 1000 gigabytes which can be stored on 250 4 GB drives, $200 each. So we are taking about something like $70K ($50K for drives and, say,  $20K for hardware and software for those drives, assuming 12 drives per server, such as RB-1200 ($700) ). There are a number of different 2U cases that feature 12x3.5" hot swap bays (3 vertically x 4 horizontally -- See Supermicro's SC827)

Any defense from a "fishbowl" effect of such massive storage is based on cryptography or steganography (you can hide messages and "junk" plaintext with a side effect of increasing storage requirements.

Snowden revelations also greatly increased the value of non-standard, custom crypto-algorithms. Now after Snowden revelation we can assume that newer standard crypto algorithms are compromised (it's still unclear if DEC was compromised, as at the time of its creation the priorities were different).  That means that you need to use "pre-encryption" with non-standard algorithms and additional key even if your channel is encrypted to ensure privacy of transmission. 

With your Web access logs situation is a little bit more fuzzy. If you use particular IP from a particular provider, it not that difficult to log all your web activity. All your Google searches and all you activity on Youtube is logged, no question about it :-). And those logs probably are stored for a very long time. But here we are talking about logs, and the data you've sent, not the data you retrieve. If you use proxies like anonimizers it's more difficult, but at the same time it automatically makes your traffic more suspicious and it comes under higher level of scrutiny. The same is true about usage of PGP for emails. Steganography is much more subtle way to ensure privacy of your emails that PGP encryption. Using "Aesop language" can be viewed as the simplest way to apply steganography to your emails.

In any case without cryptography, privacy of your Internet activities is non-existent. The right assumption is that when you access Internet you are living in a fishbowl.

If you're trying to conduct business you face different problem. Here you need to assure your customers that "you are you, not some impostor".  Customers need to be sure that that they're ordering  from real businesses. Not from a fake sites designed to steal their financial information. Cryptography also offers a solution to this problem. Certificates are sometimes called "digital IDs," because they can be used to verify the identity of someone you don't know. This process is called "authentication". Certificates can be used with another technique, "digital signatures", to ensure that nobody impersonate you and/or to protect the integrity of data. It's very easy to forge email (although primitive forging is easy to detect), but it's really hard to forge a digitally signed email message.

The level we discuss this subject is very basic and mainly oriented on CS students of Network Security course or similar.  I would like to stress again that I not specialist in this particular area, but I hope it still useful for computer science students, especially to students of "Network Security" course that I used to teach. 

See also

Symmetric Crypto Algorithms

Introduction to Public-Key Cryptography

Digital Signatures

Dr. Nikolai Bezroukov


Top Visited
Switchboard
Latest
Past week
Past month

NEWS CONTENTS

Old News ;-)

[Jun 09, 2017] Youll never guess where Russian spies are hiding their control servers

The article is a click bait (Article says nothing about where Russians hide their C&C servers, only where they hide their URLs), the idea is not new (a variant of steganography, as foetusinc noted in his comment below), and probably those groups are not Russian, but still hiding URL for the control server in spam on some useless social forums like Britney Spears fan club is pretty clever idea...
Jun 09, 2017 | arstechnica.com

According to a report published Tuesday by researchers from antivirus provider Eset, a recently discovered backdoor Trojan used comments posted to Britney Spears's official Instagram account to locate the control server

... ... ...

The extension will look at each photo's comment and will compute a custom hash value. If the hash matches 183, it will then run this regular expression on the comment in order to obtain the path of the bit.ly URL:

(?:\\u200d(?:#|@)(\\w)

Looking at the photo's comments, there was only one for which the hash matches 183. This comment was posted on February 6, while the original photo was posted in early January. Taking the comment and running it through the regex, you get the following bit.ly URL:

http://bit.ly/2kdhuHX

Looking a bit more closely at the regular expression, we see it is looking for either @|# or the Unicode character \200d. This character is actually a non-printable character called 'Zero Width Joiner,' normally used to separate emojis. Pasting the actual comment or looking at its source, you can see that this character precedes each character that makes the path of the bit.ly URL:

smith2155#2hot make loveid to her, uupss #Hot #X

When resolving this shortened link, it leads to static.travelclothes.org/dolR_1ert.php , which was used in the past as a watering hole C&C by the Turla crew.

foetusinc Ars Scholae Palatinae Jun 6, 2017 8:16 PM Popular

So spammy social media comments are the new numbers stations ? I've assumed for a while that somebody out there must be doing something similar with image steganography, but leave it to the Russians to come up with something this brilliantly simple.
dramamoose Smack-Fu Master, in training Jun 6, 2017 6:52 PM
That's brilliant, and incredibly similar in principle if not execution to tried and true espionage techniques for communication; codewords in BBC broadcasts, newspaper ads sending information, etc. Why risk using a central server which can be eliminated if you can just hide your information in the incredible amount of simple-to-post, easier-to-read social networking out there. If you covered enough sites, you'd likely be able to slip in requests that even a security pro wouldn't be able to pick up. Sure, there are some people who don't use Facebook, Twitter, Instagram, or Reddit, but there aren't that many. Combine it with a few regional networking sites and you could probably hide the traffic in a way that even somebody looking for the transmissions couldn't find them.

[Dec 26, 2016] Google Releases Tool To Find Common Crypto Bugs

Dec 26, 2016 | tech.slashdot.org
(onthewire.io) 22

Posted by BeauHD on Monday December 19, 2016 @05:45PM from the come-out-come-out-wherever-you-are dept.

Trailrunner7 quotes a report from On the Wire:

Google has released a new set of tests it uses to probe cryptographic libraries for vulnerabilities to known attacks . The tests can be used against most kinds of crypto algorithms and the company already has found 40 new weaknesses in existing algorithms. The tests are called Project Wycheproof , and Google's engineers designed them to help developers implement crypto libraries without having to become experts. Cryptographic libraries can be quite difficult to implement and making errors can lead to serious security problems. Attackers often will look for weak crypto implementations as a means of circumventing strong encryption in a target app. Among the issues that Google's engineers found with the Project Wycheproof tests is one in ECDH that allows an attacker to recover the private key in some circumstances.

The bug is the result of some libraries not checking the elliptic curve points that they get from outside sources.

"In cryptography, subtle mistakes can have catastrophic consequences, and mistakes in open source cryptographic software libraries repeat too often and remain undiscovered for too long.

Good implementation guidelines, however, are hard to come by: understanding how to implement cryptography securely requires digesting decades' worth of academic literature.

We recognize that software engineers fix and prevent bugs with unit testing, and we found that many cryptographic issues can be resolved by the same means," Daniel Bleichenbacher and Thai Duong, security engineers at Google, said in a post announcing the tool release.

"Encodings of public keys typically contain the curve for the public key point.

If such an encoding is used in the key exchange then it is important to check that the public and secret key used to compute the shared ECDH secret are using the same curve. Some libraries fail to do this check," Google's documentation says.

[Dec 09, 2015] Three ways to easily encrypt your data on Linux

Ok, so you need to quickly encrypt the contents of you pen drive. The easiest solution is to compress them using the 7z archive file format, that is open source, cross-platform, and supports 256-bit encryption using the AES algorithm.

Linux has LUKS, which can encrypt partitions or do whole-disk encryption. When you create a new partition, the partition manager will give you the option to, say, encrypt the /home directory.

Encrypt with Seahorse

The third option that I will show basically utilizes the popular GNU PG tool to encrypt anything you want in your disk. What we need to install first are the following packages: gpg, seahorse, seahorse-nautilus, seahorse-daemon, and seahorse-contracts which is needed if you're using ElementaryOS like I do. The encryption will be based on a key that we need to create first by opening a terminal, and typing the following command:

[Apr 21, 2015] Documentary Inside NSA - Discovery Channel

Looks like it was created in early 90th, judging from equipment we see.
Apr 21, 2014| YouTube

Documentary Inside NSA - Discovery Channel

[Apr 21, 2015] The Future of Freedom: A Feature Interview with NSA Whistleblower William Binney (2015)

Jan 28, 2015 | youtube.com

A 36-year veteran of America’s Intelligence Community, William Binney resigned from his position as Director for Global Communications Intelligence (COMINT) at the National Security Agency (NSA) and blew the whistle, after discovering that his efforts to protect the privacy and security of Americans were being undermined by those above him in the chain of command.

The NSA data-monitoring program which Binney and his team had developed -- codenamed ThinThread -- was being aimed not at foreign targets as intended, but at Americans (codenamed as Stellar Wind); destroying privacy here and around the world. Binney voices his call to action for the billions of individuals whose rights are currently being violated.

William Binney speaks out in this feature-length interview with Tragedy and Hope's Richard Grove, focused on the topic of the ever-growing Surveillance State in America.

On January 22, 2015: (Berlin, Germany) – The Government Accountability Project (GAP) is proud to announce that retired NSA Technical Director and GAP client, William "Bill" Binney, will accept the Sam Adams Associates for Integrity in Intelligence Award today in Berlin, Germany. The award is presented annually by the Sam Adams Associates for Integrity in Intelligence (SAAII) to a professional who has taken a strong stand for ethics and integrity. http://whistleblower.org/press/nsa-wh...

Would You Like to Know More?

Subscribe to the Peace Revolution podcast produced by Tragedy and Hope: http://www.PeaceRevolution.org

[Apr 21, 2015] NSA Whistleblower - Jesselyn Radack & Thomas Drake London Real

Mar 16, 2014 | YouTube

Jesselyn Radack is Edward Snowden's Attorney
Thomas Drake is an Former NSA Executive & Whistleblower
Bulletproof Coffee http://bit.ly/bulletprooflr

[Dec 28, 2012] Senate Renews FISA Warrantless Wiretapping Program

December 28, 2012 | Antiwar.com

The US Senate on Friday reauthorized the warrantless wiretapping program started under President George W. Bush by a 73 to 23 vote, easily evading the several amendments proposed to check its dangerous surveillance powers.

The FISA Amendments Act of 2008 authorized broad, warrantless surveillance of Americans’ international communications, checked only by a secretive Foreign Intelligence Surveillance Court that doesn’t make it’s activities and procedures available to the public.

Even though the government has acknowledged that the secretive program has exceeded its legal limits, violating Americans’ Fourth Amendment constitutional rights, the Obama administration has aggressively pushed for its full renewal.

When the law was passed in 2008 it amended the Bush administration’s initial program and broadened powers for domestic surveillance. President Obama was a presidential candidate at the time, and warned that, while he was voting for its passage, it “does not resolve all of the concerns that we have about President Bush’s abuse of executive power.”

However, as President Obama has fully embraced the unchecked executive powers and secretive surveillance capabilities built into the FISA Amendment. And the controversy that the bill conjured in 2008 is contrasted with the subdued acceptance of it in 2012.

“The Bush administration’s program of warrantless wiretapping, once considered a radical threat to the Fourth Amendment, has become institutionalized for another five years,” said Michelle Richardson, the ACLU’s legislative counsel.

Several tame amendment were proposed by Senators Ron Wyden, Rand Paul, and Jeff Merkely to try and rein in the surveillance program. But they were all rejected, and the Obama administration has refused to release any further information about it.

“The only thing the public really knows about it so far,” writes Julian Sanchez, a policy scholar at the Cato Institute, “is that it was almost immediately misused, resulting in ‘significant and systemic’ overcollection of Americans’ purely domestic communications. Subsequent reporting revealed that the improperly ‘overcollected’ communications could number in the millions, and included former president Clinton’s private e-mails. So naturally, the Senate is charging ahead toward the renewal of these sweeping powers without hearings or debate.”

As the American for Civil Liberties Union has explained, the Director of National Intelligence James Clapper says “it isn’t even ‘reasonably possible’ to estimate how many Americans are swept up in the NSA’s expansive dragnet.”

The Obama administration, as is usual in cases where they disregard the Constitution, promises this mass surveillance comes with strong safeguards and accountability. In reality, the war on terrorism is continuing to be used to justify major infringements on the civil liberties of Americans.

[Dec 11, 2011] San Francisco Team Solves DARPA Shredder Challenge by Elizabeth Montalbano

I you do not anybody to read particular document don't shred, burn.
12/05/11 | InformationWeek

A San Francisco-based programming team pieced together five shredded documents in 33 days to win the U.S. Defense Advanced Research Projects Agency's (DARPA's) Shredder Challenge.

The three programmers used custom computer-vision algorithms to assemble the complex puzzles comprised of documents, which were shredded into more than 10,000 pieces. The team spent nearly 600 hours creating the algorithms, designing them to suggest fragment pairings.

The programmers were then able to manually verify the pairings to piece together the documents, which had Antonio Prohias, the creator of the Spy vs. Spy comic strip, as their common, running theme.

DARPA organizers were surprised not only that all of the puzzles were solved, but in a relatively short time.

"Lots of experts were skeptical that a solution could be produced at all, let alone within the short time frame," says DARPA's Dan Kaufman.

He says the most effective approaches combined computational tools, crowdsourcing, and "clever detective work."

[Dec 11, 2011] Cryptographers Believe 'Size Does Matter' to Stay Safe Online by Royal Holloway

12/02/11 | University of London

Royal Holloway, University of London researchers are analyzing the Transport Layer Security (TLS) system to identify weaknesses. The TLS system is designed to ensure the security and safety of online personal information, but vulnerabilities were found in version 1.0 of the system. The researchers say that TLS version 1.2 offers improved security.

"Our analysis of TLS version 1.2 gives us higher confidence that the data we share online will be kept safe, secure, and private," says Royal Holloway professor Kenny Paterson. TLS encrypts messages as they are transmitted across the Internet, keeping personal data insulated against attack. The researchers have found only one vulnerability in the latest version of TLS. "There is still scope for a 'distinguishing attack' against TLS 1.2, where an attacker could tell whether a user has sent a 'yes' or a 'no' during a transaction, for example," Paterson says.

However, he notes that this kind of attack is considered theoretical, and it is very unlikely that it would actually arise in practice. TLS uses a Message Authentication Code (MAC) tag to help provide security, and for the Royal Holloway attack to work, the MAC tag would need to be small.

[Feb 24 2003] Program Hides Secret Messages in Executables By Kevin Poulsen

I doubt that this is promising as described, but something along those lines (with predefined set of equivalencies) can be developed further. Consider instructions equivalencies as some kind of bit mask that can be applied to any of the program strings
Feb 24 2003 | SecurityFocus

Netizens with extreme privacy needs got a new tool for their cyber utility belts recently with the release of an application that lets users hide secret messages in virtually any executable computer program, without changing the program's size or affecting its operation.

The tool is called "Hydan," an old English word for the act of hiding something, and it's part of a research project by Columbia University computer science masters student Rakan El-Khalil, who showed off the program to a small group of open-source programmers and hackers gathered at the second annual CodeCon conference in San Francisco on Sunday.

Hydan is a novel development in the field of steganography -- the science of burying secret messages in seemingly innocuous content. Popular stego programs operate on image and music files, where a secret missive can be hidden without altering the content enough to be perceived by human senses. But because they contain instructions for a computer's processor, executable files are less forgiving of tampering. Improperly changing a single bit of executable code can render an application completely unusable.

El-Khalil's research focused on redundancies in the Intel x86 instruction set -- places where at least two different instructions are effectively the same. Each choice between two redundant options can represent a single bit of data. "The problem with program binaries is there is just not a lot of redundancy in them," said El-Khalil.

He found some of that useful redundancy in the instructions that tell the computer to add or subtract.

A computer instruction to add the number 50 to another value, for example, can be replaced with an instruction to subtract the number -50 instead. Mathematically, the instructions are the same. In choosing between the two, a stego program can get one bit of covert storage out of each addition or subtraction operation in the executable -- without changing the way the application runs, or adding a single byte to its size. "If we use a scenario in which addition is zero, and subtraction is one, we can just go through and flip them as needed," El-Khalil explained.

El-Khalil concedes that the method is imperfect -- an application that's been impressed with a secret message has considerably more "negative subtractions" than an unadulterated program, making it easy to pick out through a statistical analysis. Hydan could also break programs that are self-modifying or employ other unconventional techniques. And it's less efficient than stego programs for image and sound files: good steganography for a JPEG file can hide one byte of storage in 17 bytes of image, while Hydan's ratio is one byte of storage to 150 bytes of code.

Future versions of Hydan will boost that capacity by finding different places to code data, such as in the order of a program's functions, and the order in which arguments are passed to those functions. For now, the application is still powerful enough to secretly stash the United States Constitution and the Declaration of Independence in a single copy of Microsoft Word.

Beyond the covert uses, the technology could be used to attach a digital signature to an application, or to embed an executable with a virtual watermark.

[Feb 5, 2003] The Crypto Gardening Guide and Planting Tips by Peter Gutmann, pgut001@cs.auckland.ac.nz

crypto_guide

Question H: How flexible is your design?

Discussion: That question isn't what you think. A better way of phrasing it would be "How ambiguous is your design?". Flexibility in an abstract crypto design is a Good Thing. Ambiguity in a specification is a Bad Thing. Unfortunately, a cryptographer's flexibility is an implementer's ambiguity, or more bluntly an implementer's nightmare. An example of this is IPsec's IKE, which is so flexible/ambiguous that no two people can agree on what it should look like. As a result, even after years of work, there are still implementations that can't (or barely) interoperate, and even when they interoperate it's often only because implementers figured out what the other side was doing and adapted their code to match it.

Resolution: Once you've impressed everyone with the power and flexibility of your design, provide a sketch of a simple, straightforward, easy-to-get-right profile that implementors can work with. This is a standard feature of protocol specifications, either done explicitly (MUST/SHOULD/MAY) or implicitly when everyone ignores all but the most simple, straightforward part
of the specification. Another way of looking at this is that if implementors are going to ignore much of your design in order to make implementation practical, you want to be the one deciding which bits get used and which don't.

See also: Question G.

Question I: How big a problem are you really solving?

Discussion: Many problems pointed out in crypto papers are relatively insignificant to non-cryptographers, or can be fixed with a trivial update of existing code rather than by changing the crypto design. For example, the "correct" solution to various attacks (real and theoretical) on PKCS #1 v1.5 padding is for implementors to switch to something better such as OAEP, Simple
RSA, PSS, or whatever they're wearing in Santa Barbara this year. However, since the problem can also be resolved with "Don't do that, then", it's easier to stick with an existing solution rather than re-engineering everything to use a new protocol (see the Final Thoughts for a longer discussion on this).

Resolution: Unlike cryptographers, implementors probably won't appreciate the advantages of a design secure in the IND-CCAn+1 model where the previous was only IND-CCAn if it requires a complete redeployment of all of their products. Don't expect to see a new design widely adopted any time soon unless (a) it's being deployed in a greenfields development or (b) you've found a hole
exploitable in O(1) time by an army of script kiddies.

San's primer on key length in symmetric and asymmetric cyphers

Cryptology ePrint Archive Complete Contents

2002/185 ( PDF )
Turing, a fast stream cipher
Greg Rose and Philip Hawkes
2002/182 ( PS PS.GZ )
Oblivious Keyword Search
Wakaha Ogata and Kaoru Kurosawa
2002/142 ( PDF )
On the Applicability of Distinguishing Attacks Against Stream Ciphers
Greg Rose and Philip Hawkes
2002/131 ( PS PS.GZ PDF )
An Improved Pseudorandom Generator Based on Hardness of Factoring
Nenad Dedic and Leonid Reyzin and Salil Vadhan

AES Home Page

Cryptography Technology

Since graduating in theoretical physics and electrical engineering some 30+ years ago I have had an interest in cryptography and this has developed with the advent of progressively more powerful home computers. In recent years I have played with a number of algorithms where I have taken a particular interest in the techniques involved in making algorithms go as fast as possible.

Random findings

Springer LINK Lecture Notes in Computer Science 2133

Public-Key Crypto-systems Using Symmetric-Key Crypto-algorithms

Bruce Christianson, Bruno Crispo, and James A. Malcolm

Abstract. The prospect of quantum computing makes it timely to consider the future of public-key crypto-systems. Both factorization and discrete logarithm correspond to a single quantum measurement, upon a superposition of candidate keys transformed into the fourier domain. Accordingly, both these problems can be solved by a quantum computer in a time essentially proportional to the bit-length of the modulus, a speed-up of exponential order.

At first sight, the resulting collapse of asymmetric-key crypto-algorithms seems to herald the doom of public-key crypto-systems. However for most security services, asymmetric-key crypto-algorithms actually offer relatively little practical advantage over symmetric-key algorithms. Most of the differences popularly attributed to the choice of crypto-algorithm actually result from subtle changes in assumptions about hardware or domain management.

In fact it is straightforward to see that symmetric-key algorithms can be embodied into tamper-proof hardware in such a way as to provide equivalent function to a public-key crypto-system, but the assumption that physical tampering never occurs is too strong for practical purposes. Our aim here is to build a system which relies merely upon tamper-evident hardware, but which maintains the property that users who abuse their cryptographic modules through malice or stupidity harm only themselves, and those others who have explicitly trusted them.

LNCS 2133, p. 182 ff.

Full article in PDF (35 KB)

AES and Beyond- The IETF and Strong Crypto

Nortel slides about some crypto issues in networking. Pretty basic, but still useful.

Crypto Scientists Crack Prime Problem

Recently, a group of Indian scientists made news by announcing an algorithm that appears to be able to tell quickly whether a number is prime or not.

http://zdnet.com.com/2100-1104-949170.html

If you're mathematically minded, the actual downloadable primality.pdf is worth reading.

So what does this actually mean for cryptography? First, a little background.

Many of the popular common crypto algorithms work because of "something to do with prime numbers". Most security books are about that vague. So math research about primes could have interesting effects on our field. But is being able to determine whether a number is prime quickly going to be able to help or hinder us? Let's look at the RSA algorithm as an illustrative example. (It lost its patent a few years back, so it's okay to discuss now.)

... ... ...

Public key crypto algorithms such as RSA depend on there being two keys used to encrypt and decrypt a message. (Hence, the "generate a key pair" step you see when setting up many applications that use cryptography.) Every user has a complimentary set made up of a private key and a public key. Anything encrypted with the private key can be decrypted with the public key, and anything encrypted with the public key can be decrypted with the private key. Only you should have a copy of your private key, but anyone can have your public key because it's, well, public. If someone encrypts traffic with your public key, it doesn't matter to you because only you can decrypt it.

So, you're probably thinking, if I have a message to send to Jane, I want to encrypt it. I can't encrypt it with my public key, because she doesn't have my private key to decrypt it. So I'll encrypt it with my private key, and she can decrypt it with my public key. Right? Not quite, but this is a really common mistake. Sure, Jane can decrypt the message with your public key. But so can anyone else. What you need to do is encrypt the message with Jane's public key, so that only Jane's private key (which only Jane should have) can decrypt it.

So, the RSA algorithm says this:

8 and 9 are relatively prime. When broken down as much as possible,

8 = 2 x 2 x 2
9 = 3 x 3

Nothing in common.

8 and 20 are not relatively prime.

8 = 2 x 2 x 2
20 = 2 x 2 x 5

They have 2 in common, so they're not relatively prime.

If E and D are chosen correctly, then let's make C the ciphertext and P the plaintext.

C = M to the E power mod N
M = C to the D power mod N

So, something encrypted with N and E (the public key) can be solved for M -- decrypted into the plaintext. Something encrypted with N and D (the private key) can be solved for the ciphertext C. And since E and D fit together in a defined mathematical relationship as above, you cannot automatically deduce one from the other, but can encrypt and decrypt. The beauty of the modulus is that it's a one way operation. You know what the remainder is, but you'll have to try brute-forcing it to figure out whether it's C multiplied by one with a remainder of three, by two with a remainder of three... by forty thousand with a remainder of three... [grin] That takes a lot of time.

If you want to see an example of this worked out with numbers, there's a clear one at http://math.kennesaw.edu/maa/talks/RSAEncryptionAlgorithm.htm

So, back to our original point. Being able to quickly determine whether a number is prime -- what effect does that have on all this? Well, one of the weakest points about RSA and other public key algorithms is that their large prime numbers are only probably prime. It's really hard to tell whether a number with eight zillion digits is actually prime or not -- you have to try dividing it by every prime number up to half of its value or so. That's very time consuming. Since those of us that use PGP, etc., don't want to wait too long for our keys to be generated, the RSA algorithm picks values for P and Q that are very likely to be prime, but that's not known for certain.

If those numbers aren't actually prime, then there may be different solutions for the equations other than the ones that are supposed to work. So, someone might be able to decrypt a message without having the matching key -- they'd just need a matching key, if there were more than one. (That's what could happen if P and Q aren't prime.) If the new algorithm can determine whether P and Q are really prime and they're not for a given key pair, that could lead to a weakness in RSA. But if that's the case, RSA and other algorithm authors could modify their software to use the new algorithm to ensure that P and Q really are prime, and that would defeat that sort of attack.

There's a lot of sound and fury at the moment about this article, and many people are freaking out about it, but I don't think it's anything to worry about. Mathematicians haven't fully satisfied themselves yet that it's a good tester for primes -- I don't think we'll be seeing exploit code in the near future.

Information on cryptography useful collection of links:

[Oct 20, 2002] Crypto++ Library 5.0 - a Free C++ Class Library of Cryptographic Schemes

[Oct 20, 2002] Speed Comparison of Popular Crypto Algorithms

Here are speed benchmarks for some of the most popular hash algorithms and symmetric and asymmetric ciphers. All were coded in C++ or ported to C++ from C implementations, compiled with Microsoft Visual C++ 6.0 SP4 (optimize for speed, blend code generation), and ran on a Celeron 850MHz processor under Windows 2000 SP 1. Two assembly routines were used for multiple-precision addition and subtraction.

Algorithm Bytes Processed Time Taken Megabytes(2^20 bytes)/Second
CRC-32 1073741824 8.682 117.945
Adler-32 2147483648 6.970 293.831
MD2 8388608 11.276 0.709
MD5 1073741824 10.165 100.738
SHA-1 536870912 10.565 48.462
SHA-256 268435456 10.345 24.746
SHA-512 67108864 7.761 8.246
HAVAL (pass=3) 536870912 7.922 64.630
HAVAL (pass=4) 536870912 12.337 41.501
HAVAL (pass=5) 268435456 7.090 36.107
Tiger 268435456 10.325 24.794
RIPE-MD160 268435456 8.332 30.725
Panama Hash (little endian) 1073741824 7.401 138.360
Panama Hash (big endian) 1073741824 11.797 86.802
MDC/MD5 268435456 9.884 25.900
Luby-Rackoff/MD5 67108864 8.402 7.617
DES 134217728 9.945 12.871
DES-XEX3 134217728 11.716 10.925
DES-EDE3 33554432 6.740 4.748
IDEA 134217728 11.286 11.341
RC2 33554432 7.912 4.044
RC5 (r=16) 536870912 12.988 39.421
Blowfish 134217728 7.091 18.051
Diamond2 67108864 11.086 5.773
Diamond2 Lite 67108864 9.403 6.806
3-WAY 201326592 12.728 15.085
TEA 134217728 12.799 10.001
SAFER (r=8) 67108864 10.565 6.058
GOST 134217728 12.829 9.977
SHARK (r=6) 268435456 12.878 19.879
CAST-128 134217728 7.090 18.054
CAST-256 134217728 9.995 12.806
Square 268435456 7.801 32.816
SKIPJACK 67108864 12.017 5.326
RC6 268435456 7.871 32.524
MARS 268435456 8.503 30.107
Rijndael 268435456 8.442 30.325
Twofish 268435456 9.974 25.667
Serpent 134217728 10.505 12.185
ARC4 536870912 8.122 63.039
SEAL 1073741824 8.672 118.081
WAKE 1073741824 13.029 78.594
Panama Cipher (little endian) 1073741824 8.512 120.301
Panama Cipher (big endian) 536870912 7.091 72.204
Sapphire 134217728 12.868 9.947
MD5-MAC 1073741824 12.078 84.782
XMACC/MD5 1073741824 11.096 92.286
HMAC/MD5 1073741824 10.254 99.863
CBC-MAC/RC6 268435456 8.713 29.381
DMAC/RC6 268435456 8.642 29.623
BlumBlumShub 512 524288 10.766 0.046
BlumBlumShub 1024 262144 12.668 0.020
BlumBlumShub 2048 65536 8.903 0.007

[Oct 20, 2002] Cryptographic Algorithms

discussion of several popular algorithms

[Aug 3, 2002] Useful links

O'Reilly Java Center -- News -- An Interview with Jonathan Knudsen

Java Cryptography -- Sample chapter Authentication

The first challenge of building a secure application is authentication. Let's look at some examples of authentication from everyday life:

Authentication is tremendously important in computer applications. The program or person you communicate with may be in the next room or on another continent; you have none of the usual visual or aural clues that are helpful in everyday transactions. Public key cryptography offers some powerful tools for proving identity.

In this chapter, I'll describe three cryptographic concepts that are useful for authentication:

A common feature of applications, especially custom-developed "enterprise" applications, is a login window. Users have to authenticate themselves to the application before they use it. In this chapter, we'll examine several ways to implement this with cryptography.[1] In the next section, for instance, I'll show two ways to use a message digest to avoid transmitting a password in cleartext from a client to a server. Later on, we'll use digital signatures instead of passwords.

Index of -~timtas-aes

aesutil 1.0.1 (Stable)
by Tim Tassonis - Friday, July 19th 2002 13:20 EDT

About: aesutil is a small library and command line program to encrypt or decrypt data using the Rijndael algorithm in CBC mode.

Changes: A Windows port of the commandline utility, and better option handling.


Recommended Links

Softpanorama hot topic of the month

Softpanorama Recommended

Ten most useful resources:

Directories and Portals

Best metalink collections:

Associations and public organizations

Government:

The Rijndael Page -- new standard cypher.

People:

Companies:

Prime numbers and random number generators:

Etc:


FAQs and References


Tutorials

Basic

Encryption and Security Tutorial

Certicom - Online Tutorial

Welcome to the Elliptic Curve Cryptosystem Classroom. This site provides an intuitive introduction to Elliptic Curves and how they are used to create a secure and powerful cryptosystem. The first three sections introduce and explain the properties of elliptic curves. A background understanding of abstract algebra is required, much of which can be found in the Background Algebra section. The next section describes the factor that makes elliptic curve groups suitable for a cryptosystem though the introduction of the Elliptic Curve Discrete Logarithm Problem (ECDLP). The last section brings the theory together and explains how elliptic curves and the ECDLP are applied in an encryption scheme. This classroom requires a JAVA enabled browser for the interactive elliptic curve experiments and animated examples.

Elliptic curves as algebraic/geometric entities have been studied extensively for the past 150 years, and from these studies has emerged a rich and deep theory. Elliptic curve systems as applied to cryptography were first proposed in 1985 independently by Neal Koblitz from the University of Washington, and Victor Miller, who was then at IBM, Yorktown Heights.

Many cryptosystems often require the use of algebraic groups. Elliptic curves may be used to form elliptic curve groups. A group is a set of elements with custom-defined arithmetic operations on those elements. For elliptic curve groups, these specific operations are defined geometrically. By introducing more stringent properties to the elements of a group, such as limiting the number of points on such a curve, creates an underlying field for an elliptic curve group. In this classroom, elliptic curves are first examined over real numbers in order to illustrate the geometrical properties of elliptic curve groups. Thereafter, elliptic curves groups are examined with the underlying fields of Fp (where p is a prime) and F2m (a binary representation with 2m elements).

Quantum Cryptography Tutorial

Cryptography for encryption, signatures and authentication

Cryptography -- mainly PGP related...


Magazines


eBooks


Recommended Papers


Number theory

Prime Numbers - University of Tennessee


Usenet


Block encryption


SSL


SSH

SSH - Tech Corner - Cryptographic Algorithms


Lecture Notes


Compression and security

The Mandala Centre - Compression and Security - One on one compression FAQ



University Courses

Crypto and Security Courses

Lectures for Computer Security

These lectures contain the base introductory material used for this course. After these lectures, the student will be familiar with the underlying concepts of advanced operating systems.

Crypto Lectures


History


Humor

See also Humor

My boss asked me for a letter describing my partner Bob Smith, and this is what I wrote:

Bob Smith, my assistant programmer, can always be found

hard at work in his cubicle. Bob works independently, without

wasting company time talking to colleagues. Bob never

thinks twice about assisting fellow employees, and he always

finishes given assignments on time. Often Bob takes extended

measures to complete his work, sometimes skipping

coffee breaks. Bob is a dedicated individual who has absolutely no

vanity in spite of his high accomplishments and profound

knowledge in his field. I firmly believe that Bob can

be classed as a high-caliber employee, the type which cannot

be dispensed with. Consequently, I duly recommend that Bob

be promoted to executive management, and a proposal will

be executed as soon as possible.

S.D. - Project Leader

Shortly afterward I sent the following follow-up note: That bastard Bob was reading over my shoulder while I wrote the report sent to you earlier today. Kindly read only the odd numbered lines (1, 3, 5, etc.) for my true assessment. Regards,

S.D.


Recommended Links

Softpanorama hot topic of the month

Softpanorama Recommended



Etc

FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available in our efforts to advance understanding of environmental, political, human rights, economic, democracy, scientific, and social justice issues, etc. We believe this constitutes a 'fair use' of any such copyrighted material as provided for in section 107 of the US Copyright Law. In accordance with Title 17 U.S.C. Section 107, the material on this site is distributed without profit exclusivly for research and educational purposes.   If you wish to use copyrighted material from this site for purposes of your own that go beyond 'fair use', you must obtain permission from the copyright owner. 

ABUSE: IPs or network segments from which we detect a stream of probes might be blocked for no less then 90 days. Multiple types of probes increase this period.  

Society

Groupthink : Two Party System as Polyarchy : Corruption of Regulators : Bureaucracies : Understanding Micromanagers and Control Freaks : Toxic Managers :   Harvard Mafia : Diplomatic Communication : Surviving a Bad Performance Review : Insufficient Retirement Funds as Immanent Problem of Neoliberal Regime : PseudoScience : Who Rules America : Neoliberalism  : The Iron Law of Oligarchy : Libertarian Philosophy

Quotes

War and Peace : Skeptical Finance : John Kenneth Galbraith :Talleyrand : Oscar Wilde : Otto Von Bismarck : Keynes : George Carlin : Skeptics : Propaganda  : SE quotes : Language Design and Programming Quotes : Random IT-related quotesSomerset Maugham : Marcus Aurelius : Kurt Vonnegut : Eric Hoffer : Winston Churchill : Napoleon Bonaparte : Ambrose BierceBernard Shaw : Mark Twain Quotes

Bulletin:

Vol 25, No.12 (December, 2013) Rational Fools vs. Efficient Crooks The efficient markets hypothesis : Political Skeptic Bulletin, 2013 : Unemployment Bulletin, 2010 :  Vol 23, No.10 (October, 2011) An observation about corporate security departments : Slightly Skeptical Euromaydan Chronicles, June 2014 : Greenspan legacy bulletin, 2008 : Vol 25, No.10 (October, 2013) Cryptolocker Trojan (Win32/Crilock.A) : Vol 25, No.08 (August, 2013) Cloud providers as intelligence collection hubs : Financial Humor Bulletin, 2010 : Inequality Bulletin, 2009 : Financial Humor Bulletin, 2008 : Copyleft Problems Bulletin, 2004 : Financial Humor Bulletin, 2011 : Energy Bulletin, 2010 : Malware Protection Bulletin, 2010 : Vol 26, No.1 (January, 2013) Object-Oriented Cult : Political Skeptic Bulletin, 2011 : Vol 23, No.11 (November, 2011) Softpanorama classification of sysadmin horror stories : Vol 25, No.05 (May, 2013) Corporate bullshit as a communication method  : Vol 25, No.06 (June, 2013) A Note on the Relationship of Brooks Law and Conway Law

History:

Fifty glorious years (1950-2000): the triumph of the US computer engineering : Donald Knuth : TAoCP and its Influence of Computer Science : Richard Stallman : Linus Torvalds  : Larry Wall  : John K. Ousterhout : CTSS : Multix OS Unix History : Unix shell history : VI editor : History of pipes concept : Solaris : MS DOSProgramming Languages History : PL/1 : Simula 67 : C : History of GCC developmentScripting Languages : Perl history   : OS History : Mail : DNS : SSH : CPU Instruction Sets : SPARC systems 1987-2006 : Norton Commander : Norton Utilities : Norton Ghost : Frontpage history : Malware Defense History : GNU Screen : OSS early history

Classic books:

The Peter Principle : Parkinson Law : 1984 : The Mythical Man-MonthHow to Solve It by George Polya : The Art of Computer Programming : The Elements of Programming Style : The Unix Hater’s Handbook : The Jargon file : The True Believer : Programming Pearls : The Good Soldier Svejk : The Power Elite

Most popular humor pages:

Manifest of the Softpanorama IT Slacker Society : Ten Commandments of the IT Slackers Society : Computer Humor Collection : BSD Logo Story : The Cuckoo's Egg : IT Slang : C++ Humor : ARE YOU A BBS ADDICT? : The Perl Purity Test : Object oriented programmers of all nations : Financial Humor : Financial Humor Bulletin, 2008 : Financial Humor Bulletin, 2010 : The Most Comprehensive Collection of Editor-related Humor : Programming Language Humor : Goldman Sachs related humor : Greenspan humor : C Humor : Scripting Humor : Real Programmers Humor : Web Humor : GPL-related Humor : OFM Humor : Politically Incorrect Humor : IDS Humor : "Linux Sucks" Humor : Russian Musical Humor : Best Russian Programmer Humor : Microsoft plans to buy Catholic Church : Richard Stallman Related Humor : Admin Humor : Perl-related Humor : Linus Torvalds Related humor : PseudoScience Related Humor : Networking Humor : Shell Humor : Financial Humor Bulletin, 2011 : Financial Humor Bulletin, 2012 : Financial Humor Bulletin, 2013 : Java Humor : Software Engineering Humor : Sun Solaris Related Humor : Education Humor : IBM Humor : Assembler-related Humor : VIM Humor : Computer Viruses Humor : Bright tomorrow is rescheduled to a day after tomorrow : Classic Computer Humor

The Last but not Least


Copyright © 1996-2016 by Dr. Nikolai Bezroukov. www.softpanorama.org was created as a service to the UN Sustainable Development Networking Programme (SDNP) in the author free time. This document is an industrial compilation designed and created exclusively for educational use and is distributed under the Softpanorama Content License.

The site uses AdSense so you need to be aware of Google privacy policy. You you do not want to be tracked by Google please disable Javascript for this site. This site is perfectly usable without Javascript.

Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available to advance understanding of computer science, IT technology, economic, scientific, and social issues. We believe this constitutes a 'fair use' of any such copyrighted material as provided by section 107 of the US Copyright Law according to which such material can be distributed without profit exclusively for research and educational purposes.

This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Grammar and spelling errors should be expected. The site contain some broken links as it develops like a living tree...

You can use PayPal to make a contribution, supporting development of this site and speed up access. In case softpanorama.org is down you can use the at softpanorama.info

Disclaimer:

The statements, views and opinions presented on this web page are those of the author (or referenced source) and are not endorsed by, nor do they necessarily reflect, the opinions of the author present and former employers, SDNP or any other organization the author may be associated with. We do not warrant the correctness of the information provided or its fitness for any purpose.

Last modified: June 12, 2017