digplanet beta 1: Athena
Share digplanet:

Agriculture

Applied sciences

Arts

Belief

Business

Chronology

Culture

Education

Environment

Geography

Health

History

Humanities

Language

Law

Life

Mathematics

Nature

People

Politics

Science

Society

Technology

Cryptographic primitives are well-established, low-level cryptographic algorithms that are frequently used to build cryptographic protocols for computer security systems. These routines include, but are not limited to, one-way hash functions and encryption functions.

Rationale[edit]

When creating cryptographic systems, designers use cryptographic primitives as their most basic building blocks. Because of this, cryptographic primitives are designed to do one very specific task in a highly reliable fashion.

Since cryptographic primitives are used as building blocks, they must be very reliable, i.e. perform according to their specification. For example, if an encryption routine claims to be only breakable with X number of computer operations, then if it can be broken with significantly less than X operations, that cryptographic primitive is said to fail. If a cryptographic primitive is found to fail, almost every protocol that uses it becomes vulnerable. Since creating cryptographic routines is very hard, and testing them to be reliable takes a long time, it is essentially never sensible (nor secure) to design a new cryptographic primitive to suit the needs of a new cryptographic system. The reasons include:

  • The designer might not be competent in the mathematical and practical considerations involved in cryptographic primitives.
  • Designing a new cryptographic primitive is very time-consuming and very error prone, even for experts in the field.
  • Since algorithms in this field are not only required to be designed well, but also need to be tested well by the cryptologist community, even if a cryptographic routine looks good from a design point of view it might still contain errors. Successfully withstanding such scrutiny gives some confidence (in fact, so far, the only confidence) that the algorithm is indeed secure enough to use; security proofs for cryptographic primitives are generally not available.

Cryptographic primitives are similar in some ways to programming languages. A computer programmer rarely invents a new programming language while writing a new program; instead, he or she will use one of the already established programming languages to program in.

Cryptographic primitives are one of the building block of every crypto system, e.g., TLS, SSL, SSH, etc. Crypto system designers, not being in a position to definitively prove their security, must take the primitives they use as secure. Choosing the best primitive available for use in a protocol usually provides the best available security. However, compositional weaknesses are possible in any crypto system and it is the responsibility of the designer(s) to avoid them.

Commonly used primitives[edit]

Combining cryptographic primitives[edit]

Cryptographic primitives, on their own, are quite limited. They cannot be considered, properly, to be a cryptographic system. For instance, a bare encryption algorithm will provide no authentication mechanism, nor any explicit message integrity checking. Only when combined in security protocols, can more than one security requirement be addressed. For example, to transmit a message that is not only encoded but also protected from tinkering (i.e. it is confidential and integrity-protected), an encoding routine, such as DES, and a hash-routine such as SHA-1 can be used in combination. If the attacker does not know the encryption key, he can not modify the message such that message digest value(s) would be valid.

Combining cryptographic primitives to make a security protocol is itself an entire specialization. Most exploitable errors (i.e., insecurities in crypto systems) are due not to design errors in the primitives (assuming always that they were chosen with care), but to the way they are used, i.e. bad protocol design and buggy or not careful enough implementation. Mathematical analysis of protocols is, at the time of this writing, not mature. There are some basic properties that can be verified with automated methods, such as BAN logic. There are even methods for full verification (e.g. the SPI calculus) but they are extremely cumbersome and cannot be automated. Protocol design is an art requiring deep knowledge and much practice; even then mistakes are common. An illustrative example, for a real system, can be seen on the OpenSSL vulnerability news page at [1].

See also[edit]

References[edit]

  • Levente Buttyán, István Vajda : Kriptográfia és alkalmazásai (Cryptography and its applications), Typotex 2004, ISBN 963-9548-13-8
  • Menezes, Alfred J : Handbook of applied cryptography, CRC Press, ISBN 0-8493-8523-7, October 1996, 816 pages.

External links[edit]


Original courtesy of Wikipedia: http://en.wikipedia.org/wiki/Cryptographic_primitive — Please support Wikipedia.
A portion of the proceeds from advertising on Digplanet goes to supporting Wikipedia.
99 videos foundNext > 

Presentation over Cryptographic Primitives (RC4) ( Personal-Portfolio )

A presentation explaining the RC4 algorithm through animation. Coded with Flash AS3.0. The specification and required algorithms were already provided by the...

Elliptic Curve Cryptography and Applications

At the SIAM Annual Meeting held in Minneapolis in July, Dr. Kristin Lauter of Microsoft Research discussed Elliptic Curve Cryptography as a mainstream primit...

[FOSDEM 2013] Keccak, More Than Just SHA3SUM

Keccak, More Than Just SHA3SUM Gilles Van Assche Joan Daemen Michaël Peeters Recently, the American National Institute of Standards and Technology (NIST) ann...

"Privacy and the Complexity of Simple Queries" (CRCS Lunch Seminar)

CRCS Lunch Seminar (Wednesday, January 29, 2014) Speaker: Jon Ullman, Postdoctoral Fellow, Center for Research on Computation and Society (CRCS), Harvard Uni...

Lecture - 32 Basic Cryptographic Concepts Part : I

Lecture Series on Internet Technologies by Prof.I.Sengupta, Department of Computer Science & Engineering ,IIT Kharagpur. For more details on NPTEL visit http...

Theory and Practice of Cryptography

Google Tech Talks November, 28 2007 Topics include: Introduction to Modern Cryptography, Using Cryptography in Practice and at Google, Proofs of Security and...

The Book My Project | MABS Multicast Authentication Based on Batch Signature

info@thebookmyproject.com http://www.thebookmyproject.com/ To know more : http://www.thebookmyproject.com/?cars=mabs-multicast-authentication-based-on-batch-...

How to Solve for Primitive Roots : Solving Math Problems

Subscribe Now: http://www.youtube.com/subscription_center?add_user=ehoweducation Watch More: http://www.youtube.com/ehoweducation Solving for primitive roots...

The PHOTON Family of Lightweight Hash Functions (Crypto 2011)

Jian Guo, Thomas Peyrin, and Axel Poschmann Institute for Infocomm Research, Singapore; Nanyang Technological University, Singapore; and Nanyang Technologica...

Data Reduction -- The Hash Challenge

Deriving a small piece of data from a large one is a primitive that turns out to be very useful for many crypto aims: most notably in authentication, and non...

99 videos foundNext > 

We're sorry, but there's no news about "Cryptographic primitive" right now.

Loading

Oops, we seem to be having trouble contacting Twitter

Talk About Cryptographic primitive

You can talk about Cryptographic primitive with people all over the world in our discussions.

Support Wikipedia

A portion of the proceeds from advertising on Digplanet goes to supporting Wikipedia. Please add your support for Wikipedia!