암호학

수학노트
둘러보기로 가기 검색하러 가기

개요

  • 암호학은 정보를 의도하지 않은 수신자가 이해할 수 없는 형태로 변환하여 정보를 안전하게 유지하는 과학이다.
  • 암호학은 현대의 통신환경에서 필수적이다.
  • 공개 키 암호화는 모든 시민에게 강력한 암호화를 사용할 수 있게 해주는 기술이다.


메모

  • Elias, Yara, Kristin E. Lauter, Ekin Ozman, and Katherine E. Stange. “Ring-LWE Cryptography for the Number Theorist.” arXiv:1508.01375 [cs, Math], August 6, 2015. http://arxiv.org/abs/1508.01375.


노트

  • In all cases, cryptography, the coding enabling information to be kept secret, was flawed or missing.[1]
  • For years online security has focused on hard technical problems: Fixing software bugs or concealing data with cryptography.[1]
  • When you hear the word "cryptography," your brain probably jumps to someone sitting in a dark room staring at lines of code.[2]
  • Secret key cryptography uses one key across both the sending encryption and the receiver's decryption.[2]
  • Public Key Cryptography allows for the use of two keys, which are different for the sender and receiver.[2]
  • Drawing back to the question at hand, what is cryptography, the answer is fairly simple.[2]
  • Asymmetric encryption (or public-key cryptography) uses a separate key for encryption and decryption.[3]
  • Today, cryptography is used to protect digital data.[4]
  • An example of basic cryptography is a encrypted message in which letters are replaced with other characters.[4]
  • Therefore, modern cryptography involves developing encryption methods that are difficult for even supercomputers to break.[4]
  • The OECD Recommendation Concerning Guidelines for Cryptography Policy were adopted on 27 March 1997.[5]
  • However, the widespread use of cryptography raises a number of important issues.[5]
  • Traditionally, cryptography was most often used only by governments.[5]
  • Effective cryptography is an essential tool in a network environment for addressing these concerns.[5]
  • Cryptography uses two main styles or forms of encrypting data; symmetrical and asymmetrical.[6]
  • A key tool to secure the confidentiality of electronic communications is encryption or cryptography.[7]
  • In other words cryptography can be used as an electronic signature.[7]
  • Public-key cryptography is typically based on mathematical problems that are relatively easy to perform but cannot be easily reversed.[8]
  • "The Joy of Cryptography" is a silly title, but all the sensible titles were already taken.[9]
  • It was at least better than "You Can't Spell Cryptography without Cry".[9]
  • Cryptography is the art and science of keeping information secure from unintended audiences, of encrypting it.[10]
  • Public key cryptography adds a very significant benefit - it can serve to authenticate a source (e.g. a digital signature).[10]
  • Public key cryptography was invented by Whitfield Diffie and Martin Hellman in 1975.[10]
  • Provides a Cryptography Next Generation (CNG) implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm.[11]
  • TripleDESCng Provides a Cryptography Next Generation (CNG) implementation of the Triple Data Encryption Standard (3DES) algorithm.[11]
  • The second phase, the mechanization of cryptography, began shortly after World War I and continues even today.[12]
  • It is tempting to equate this phase with the appearance of public-key cryptography, but that is too narrow a view.[12]
  • It could be said that cryptography, or the art of secret writing, was born with writing itself.[13]
  • The world we know today would be impossible without cryptography.[13]
  • For this reason, public-key cryptography is also known as asymmetric cryptography.[13]
  • None of these marvels would be possible without cryptography.[13]
  • As of Android 9 (API level 28), the Crypto Java Cryptography Architecture (JCA) provider has been removed.[14]
  • Public key encryption is a technological revolution offering every citizen the opportunity to use robust cryptography.[15]
  • Cryptography techniques Cryptography is closely related to the disciplines of cryptology and cryptanalysis.[16]
  • However, cryptography makes it harder for attackers to access messages and data protected by encryption algorithms.[16]
  • Cryptography is the science of keeping information secure by transforming it into form that unintended recipients cannot understand.[17]
  • Encryption is an important part of cryptography, but doesn't encompass the entire science.[17]
  • For most of history, cryptography consisted of various substitution ciphers deployed to keep government and military communications secure.[17]
  • In fact, the development of computers and advances in cryptography went hand in hand.[17]
  • Cryptography is associated with the process of converting ordinary plain text into unintelligible text and vice-versa.[18]
  • Symmetric-key Cryptography: Both the sender and receiver share a single key.[18]
  • In Public-Key Cryptography two related keys (public and private key) are used.[18]
  • With symmetric cryptography, the same key is used for both encryption and decryption.[19]
  • Prior to the early 20th century, cryptography was mainly concerned with linguistic and lexicographic patterns.[20]
  • Computer use has thus supplanted linguistic cryptography, both for cipher design and cryptanalysis.[20]
  • Extensive open academic research into cryptography is relatively recent; it began only in the mid-1970s.[20]
  • Since then, cryptography has become a widely used tool in communications, computer networks, and computer security generally.[20]
  • But it is important to note that while cryptography is necessary for secure communications, it is not by itself sufficient.[21]
  • The second is to provide some real examples of cryptography in use today.[21]
  • It is no surprise, then, that new forms of cryptography came soon after the widespread development of computer communications.[21]
  • In cryptography, we start with the unencrypted data, referred to as plaintext.[21]
  • Cryptography deals with the actual securing of digital data.[22]
  • The primary objective of using cryptography is to provide the following four fundamental information security services.[22]
  • Cryptography may also refer to the art of cryptanalysis, by which cryptographic codes are broken.[23]
  • Collectively, the science of secure and secret communications, involving both cryptography and cryptanalysis, is known as cryptology.[23]
  • The principles of cryptography are today applied to the encryption of fax, television, and computer network communications.[23]
  • This Edureka video about what is Cryptography and why it is essential to protect the information shared across the internet.[24]
  • That’s where Encryption or Cryptography comes in.[24]
  • Further drilling down, Classical Cryptography is divided into Transposition Cipher and Substitution Cipher.[24]
  • cryptography is a package which provides cryptographic recipes and primitives to Python developers.[25]
  • In this segment, we'll discuss the fundamental concepts behind modern cryptography.[26]
  • Asymmetric keys and symmetric keys are two basic types of algorithms that are used in modern cryptography.[26]
  • In addition, cryptography also covers the obfuscation of information in images using techniques such as microdots or merging.[27]
  • When transmitting electronic data, the most common use of cryptography is to encrypt and decrypt email and other plain-text messages.[27]
  • In public key cryptography, we use a public and a private key.[28]
  • In general, cryptography provides us with a mechanism to protect data at rest, in motion, and, to a certain extent, in use.[28]
  • Provides a Cryptography Next Generation (CNG) implementation of the Triple Data Encryption Standard (3DES) algorithm.[29]

소스

웹 브라우저

말뭉치

  1. If you’re reading this, then I hope that sometime somebody or some web site told you that doing cryptography in a web browser is a bad idea.[1]
  2. Why not put cryptography in the browser?[1]
  3. What we see happening here is cryptography being used to protect the web site’s interests, not the user’s.[1]
  4. For example, there are cryptography libraries that exist in both Java and Flash.[2]
  5. There are two main criticisms of doing cryptography in JavaScript: security and speed.[2]
  6. For example, the post makes the point that Math.random() is not a good source of randomness, and thus it is impossible to get a suitable amount of random numbers for cryptography.[2]
  7. Until recently, JavaScript has been too slow to perform the many complex computations required for secure cryptography.[2]
  8. The Console uses browser cryptography both during authentication and to protect stored values the server is not meant to see.[3]
  9. It does mean you’re following best practices and making solid steps towards a stable, secure website and can more safely use tools like browser cryptography on modern browsers.[3]
  10. Such an infrastructure would not only be useful for integrity checking cryptography code, but could be used to mitigate XSS attacks.[4]
  11. The Web Cryptography API is a proposed addition to the HTML5 specification that will support cryptography for web applications.[5]
  12. The W3C proposal for the Web Cryptography API goes by the name of Encrypted Media Extensions (EME) and is currently in the draft phase.[5]
  13. Implementation of the Web Cryptography API in the Chrome browser, and in Mozilla Firefox has already begun.[5]
  14. Although PolyCrypt implements an older design of the Web Cryptography API, it is well suited for demonstration purposes.[5]
  15. The goal of this series of blog articles is to evaluate the Web Cryptography specification before analysing the Web Cryptography API.[6]
  16. To address these problems, the Web Cryptography Working Group of the World Wide Web Consortium convened to perform client-side cryptographic operations in the native implementation of the user agent.[6]
  17. Until fairly recently, browsers did not have any built-in cryptography APIs, leading to a large number of JavaScript libraries that implemented cryptography for web applications.[7]
  18. These features, whether provided through the Web Cryptography API or through the Node.js crypto module, are often referred to as “cryptographic primitives”.[7]
  19. The Web Cryptography API uses instances of the ArrayBuffer class to represent byte sequences, but most functions also accept any TypedArray as their input.[7]
  20. Unlike many other cryptographic libraries, the Web Crypto API enforces some usage patterns of keys that correlate to known best practices in cryptography.[7]
  21. This example is provided to illustrate how to use the W3C Web Cryptography API to perform symmetric encryption inside a web browser.[8]
  22. Using this example requires a web browser that implements a compatible version of the Web Cryptography API.[8]
  23. However, through 20+ years of history of web browsers, we're at the stage where in-browser cryptography is still problematic, and best you can rely on is SSL.[9]
  24. In the next weeks, we'll summarize our experience of developing cryptography for Google Chrome, porting LibreSSL, building Themis for PNaCl, etc.[9]
  25. Server-Gated Cryptography (SGC), also known as International Step-Up by Netscape, is a defunct mechanism that was used to step up from 40-bit or 56-bit to 128-bit cipher suites with SSL.[10]
  26. Although the weaker exported browsers would only include weaker ciphers in its initial SSL handshake, the browser also contained stronger cryptography algorithms.[10]
  27. Cryptography, the art and science of secret codes, has evolved dramatically over the centuries, especially since World War II.[11]
  28. Public-key cryptography provides a safe and easy way for the SSL software to share a secret key between your browser and a Web site you visit.[11]
  29. The latest effort underway is to implement support for the Web Cryptography API.[12]
  30. API is a collection of W3C standardised cryptography primitives defined in the Web Cryptography API specification.[12]
  31. The Web Cryptography API implementation has landed as an experimental feature in Node.js 15.0.0.[12]
  32. A better implementation would be to derive users' crypto keys from their passwords using a key derivation algorithm like PBKDF2 (available via the Web Cryptography API) with a high work factor.[13]
  33. Cryptography is the cornerstone of information security, including various aspects such as data confidentiality, data integrity, authentication, and non-repudiation.[14]
  34. The WebCrypto API was created to bring these important high-level cryptography capabilities to the web.[14]
  35. This blog post first talks about the advantages of implementing web cryptography through native APIs, and then introduces an overview of the WebCrypto API itself.[14]
  36. Long before the WebCrypto API was standardized, several JavaScript cryptography libraries were created and have successfully served the open web since.[14]
  37. Asymmetric encryption (or public-key cryptography) uses a separate key for encryption and decryption.[15]
  38. Elliptic curve cryptography (ECC) relies on the algebraic structure of elliptic curves over finite fields.[15]
  39. Let's take a little aside to talk about a neat property of elliptic curve cryptography.[16]

소스