Skip to main content

What is cryptographic and more



Cryptographyis about constructing and analyzing protocols that prevent third parties or the public from reading private messages. Various aspects of information security such as data confidentiality, data integrity, authentication, and non-repudiation are central to modern cryptography.
Prior to the modern age, cryptography was effectively synonymous with encryption, the conversion of information from a readable state to apparent nonsense.
Modern cryptography is heavily based on mathematical theory and computer science. Cryptographic algorithms are designed around computational hardness assumptions, making the algorithms hard for adversaries to break.
There exist information-theoretically secure schemes that probably cannot be broken even with unlimited computing power.


Caesar Cipher
The Caesar cipher is one of the earliest known and simplest ciphers. It is a type of substitution cipher in which each letter in the plaintext is shifted to a certain number of places down the alphabet. For example, with a shift of 1, A would be replaced by B, B would become C, and so on. The method is named after Julius Caesar, who allegedly used it to communicate with his generals.
Here is a quick example of the encryption and decryption steps involved with the Caesar cipher. The text we will encrypt is "defend the east wall of the castle," with a shift (key) of 1.

techhb82.csltr.jpeg

Plaintext: "defend the east wall of the castle"
Ciphertext: "efgfoe uif fbtu xbmm pg uif dbtumf"
It is easy to see how each character in the plaintext is shifted up the alphabet. Decryption is just as easy, by using an offset of -1.
Another example:
Plaintext: "abcdefghijklmnopqrstuvwxyz"
Ciphertext: "bcdefghijklmnopqrstuvwxyza"
The text above is shifted by 1 offset.



Vigenère cipher

The Vigenère cipher is a method to encrypt alphabetic text by using the position of the letter of the input on the key.
The key is a word decided by the user and is kept secret.
The message cannot be decrypted without the key.
Let's encrypt the word "sololearn" with the key "web".
Word: sololearn
Key: web
Encrypted message: osmwpfwvo
The explanation follows:
w e b w e b w e b
s  o l  o  l  e a  r n
w + s = o
e + o = s
b + l = m
w + o = w
e + l = p
b + e = f
w + a = w
e + r = v
b + n = o



Hashing

Hashing means generating value or values from a string of text using a mathematical function.
Hashing is one way to enable security during the process of message transmission when the message is intended for a particular recipient only. A formula generates the hash, which helps to protect the security of the transmission against tampering.
When a user sends a secure message, a hash of the intended message is generated and encrypted and is sent along with the message. When the message is received, the receiver decrypts the hash as well as the message. Then, the receiver creates another hash from the message. If the two hashes are identical when compared, then a secure transmission has occurred. This hashing process ensures that an unauthorized end user does not alter the message.
Here is a small example in Python that encrypts "Hello World" in SHA-1 (Secure Hashing Algorithm):
.




Comments

Popular posts from this blog

Top 5 programming language for artificial intelligence research

Here are the top 5 programming languages for artificial intelligence research: 1. LISP LISP (List Processing) is that high level language which impresses AI developers quite well and has been used in many classic AI Projects as well. The factor that places it at the last position is that, in comparison to others it is not fast. 2. C++ The very reason C++ is used in AI solutions is its speed; it is probably the fastest language out of all. Therefore, whenever speed is the prime concern of any AI developer, C++ is opted. 3. JAVA Java is in the top five because of its familiarity and easy to use features. This OOP language allows easy coding of algorithms which covers the major part of AI. 4. Prolog The reason Prolog is preferred for AI solutions is that it pretty much revolves around a dedicated set of mechanisms which consists of a small, flexible yet well-built programming framework. 5. Python One of the leading languages used for developin...

The Entrepreneurial Journey of Ashish Mishra: A Visionary Leader in Business and Technology

In the dynamic world of business and technology, Ashish Mishra stands out as a true trailblazer, successfully navigating the realms of entrepreneurship with two thriving ventures under his belt. With an impressive background as a salesperson and a keen eye for business opportunities, Ashish has carved a niche for himself as the founder and driving force behind Pentagon Decorators and Tech HB82. Early Career: A Foundation in Sales Ashish's journey into the business world began as a salesperson, where he honed his communication skills and developed a deep understanding of customer needs. Spending nearly three years in the challenging yet rewarding field of sales laid the groundwork for his future ventures. It was during this time that he cultivated the entrepreneurial spirit that would eventually lead him to launch his own businesses. Tech HB82: Bridging the Gap in Technology In 2019, Ashish took a bold step into the tech industry with the inception of Tech HB82. Recognizing the eve...

Computing in Python I: Fundamentals and Procedural Programming

Learn the fundamentals of computer programming in Python, from the basics of how a computer runs lines of code, to the write-run-debug cycle of program development, to working with variables, mathematical operators, and logical operators.      Techhb82    About this course This course starts from the beginning, covering the basics of how a computer interprets lines of code; how to write programs, evaluate their output, and revise the code itself; how to work with variables and their changing values; and how to use mathematical, boolean, and relational operators. By the end of this course, you'll be able to write small programs in Python that use variables, mathematical operators, and logical operators. For example, you could write programs that carry out complex mathematical operations, like calculating the interest rate necessary to reach a savings goal, recommending apparel options based on weather patterns, or calculating a grade based ...