The strongest notion of security, therefore, is security against existential forgery under an adaptive chosen message attack.
Key generation
Key generation is the process of generating keys for cryptography. The key is used to encrypt and decrypt data whatever the data is being encrypted or decrypted.
Modern cryptographic systems include symmetric-key algorithms (such as DES and AES) and public-key algorithms (such as RSA). Symmetric-key algorithms use a single shared key; keeping data secret requires keeping this key secret. Public-key algorithms use a public key and a private key. The public key is made available to anyone (often by means of a digital certificate). A sender will encrypt data with the public key; only the holder of the private key can decrypt this data.
Since public-key algorithms tend to be much slower than symmetric-key algorithms, modern systems such as TLS and its predecessor SSL as well as the SSH use a combination of the two in which:
The simplest method to read encrypted data is a brute force attack–simply attempting every number, up to the maximum length of the key. Therefore, it is important to use a sufficiently long key length; longer keys take exponentially longer time to attack, making a brute force attack invisible and impractical.
Currently, commonly used key lengths are:
In computer cryptography keys are integers. In some cases keys are randomly generated using a random number generator (RNG) or pseudorandom number generator (PRNG), the latter being a computer algorithm that produces data which appears random under analysis. Some types the PRNGs algorithms utilize system entropy to generate a seed data, such seeds produce better results, since this makes the initial conditions of the PRNG much more difficult for an attacker to guess.
In other situations, the key is created using a passphrase and a "key generation algorithm", using a cryptographic hash function such as SHA-1.
Symmetric-key algorithm
Symmetric-key algorithms is a method in cryptography. It is when the keys for decryption and encryption are exactly the same shared secret. You can generate the secret randomly, or from a password, or through a secret key-exchange procedure like Diffie-Hellman.
Symmetric-key algorithms are very important because they are faster on computers than the other kind:public-key algorithms. In public-key cryptography (asymmetric-key cryptography) the key for encryption can be given to the public with no problem, and everyone can send you secret messages. The key for encryption is "open" because, in practice, it cannot be used to get the key for decryption. This is very useful, but public-key cryptography algorithms are very slow on computers, so they are only used to send a secret key. Then symmetric-key algorithms are used for everything else because they are faster.
There are two kinds of symmetric-key algorithms, called stream ciphers and block ciphers. Stream ciphers encrypt a message as a stream of bits one at a time. Block ciphers take blocks of bits, encrypt them as a single unit, and sometimes use the answer later too. Blocks of 64 bits have been commonly used; though modern ciphers like the Advanced Encryption Standard use 128-bit blocks.
Examples of popular symmetric cyphers include Twofish, Serpent, AES (aka Rijndael), Blowfish, CAST5, RC4, TDES, and IDEA.
In history, some cryptanalysis methods exploited symmetry, so symmetric systems were less secure. Some attacks are called known-plaintext attacks, chosen plaintext attacks, differential cryptanalysis and linear cryptanalysis.
Other terms for symmetric-key encryption are secret-key, single-key, shared-key, one-key and eventually private-key encryption. This last term does not have the same meaning that the term "private key" has in public-key cryptography.
Unlike symmetric algorithms, asymmetric key algorithms use a different key for encryption than for decryption. Meaning, a user knowing the encryption key of an asymmetric algorithm can encrypt messages, but cannot calculate the decryption key and cannot decrypt messages encrypted with that key. A short comparison of these two types of algorithms is given below:
Symmetric-key algorithms are generally much less "computationally intensive" than asymmetric key algorithms. In practice, asymmetric key algorithms are typically hundreds to thousands times slower than symmetric key algorithms.
One disadvantage of symmetric-key algorithms is the requirement of a "shared secret key", with both parties holding the same copy at each end.
In order to ensure secure communications between everyone in a group of n people a total of "n"("n" - 1)/2 keys are needed, which is the total number of possible communication channels.
To limit the impact of a potential discovery by a cryptographic attacker, they should be changed regularly and kept secure during distribution and in service. The process of selecting, distributing and storing keys is known as key management, and is difficult to achieve reliably and securely.
In modern cryptosystems designs, both asymmetric (public key) and symmetric algorithms are used to take advantage of the best of both.
Asymmetric algorithms are used to distribute symmetric-keys at the start of a session. Once a symmetric key is known to all parties of the session, faster symmetric-key algorithms using that key can be used to encrypt the remainder of the session. This simplifies the key distribution problem, because asymmetric keys only have to be distributed authentically, while symmetric keys need to be distributed in both an authentic and confidential manner.
Systems that use such a hybrid approach include SSL, PGP and GPG, etc.
John Marshall
John Marshall (September 24, 1755 – July 6, 1835) was an American statesman and jurist who shaped American constitutional law and made the Supreme Court more powerful. Marshall was Chief Justice of the United States, working from February 4, 1801, until his death in 1835. He worked in the United States House of Representatives from March 4, 1799, to June 7, 1800, and, under President John Adams, was Secretary of State from June 6, 1800, to March 4, 1801. Marshall was from the Commonwealth of Virginia and a leader of the Federalist Party.
The longest working Chief Justice in Supreme Court history, Marshall ruled the Court for thirty years and was an important part of making the American legal system. His most important addition was judicial review; the power to stop laws that violate the Constitution. Marshall has been called the one that made the judicial branch special and powerful. Marshall also balanced the power between the federal and state government. He made sure the federal law was more powerful than state law and agreed with an expansive reading of the enumerated powers.
William H. Crawford
William Harris Crawford (February 24, 1772–September 15, 1834) was an important American politician, judge, and slaveowner during the early 19th century. He served as United States Secretary of War from 1815 to 1816 and United States Secretary of the Treasury from 1816 to 1825, and was a candidate for President of the United States in 1824.
In 1875, Crawford appeared on the 50 cent bill.
The town of Crawfordsville, Indiana, as well as Crawford County, Illinois; Crawford County, Iowa; Crawford County, Missouri; Crawford County, Arkansas; Crawford County, Wisconsin; Crawfordville, Georgia; and Crawford County, Georgia, are named for Crawford.
James McHenry
James McHenry (November 16, 1753 – May 3, 1816) was an early American statesman. McHenry was a signer of the United States Constitution. He was from Maryland. Fort McHenry was named for him. He was also a delegate to the Continental Congress from Maryland, and the third United States Secretary of War from January 27, 1796 to May 13, 1800, under Presidents George Washington and John Adams.
Timothy Pickering