Skip to main content

cryptography

cryptography




Cryptography is an art of converting the original text in an unknown format in such a way that the message sent from source to destination is secured. The process of cryptology involves converting an actual message into an encrypted format using a secret key, which is shared between the source and destination.
Strong cryptography is secreted and encrypted communication that is well-protected against cryptographic analysis and decryption to ensure it is readable only to intended parties.
Depending on the algorithms, protocols and implementation, a cryptographic system may be vulnerable to analysis, leading to possible cracking of the system. The ideal is an unbreakable system of which there is just one well known example: the one-time pad. The one-time pad is a system in which a randomly generated single-use private key is used to encrypt a message. The message is then decrypted by the receiver using a matching one-time pad and key. The challenge in this system is exchanging pads and keys without allowing them to be compromised.
Strong cryptography is used by most governments to protect communications. While it is increasingly available to the general public, there are still many countries where strong cryptography and encryption are kept from the general public, justified by the need to protect national security.
While the definition of strong cryptography in general may be broad, the The PCI Security Standards Council defines strong cryptography requirements for use in the payment card industry (PCI) specifically:  
“Cryptography based on industry-tested and accepted algorithms, along with strong key lengths (minimum 112-bits of effective key strength) and proper key-management practices. Cryptography is a method to protect data and includes both encryption (which is reversible) and hashing (which is not reversible, or “one way”). At the time of publication, examples of industry-tested and accepted standards and algorithms for minimum encryption strength include AES (128 bits and higher), TDES (minimum triple-length keys), RSA (2048 bits and higher), ECC (160 bits and higher), and ElGamal (2048 bits and higher).”
Demonstrating the strength of a given cryptographic system is a complex affair that requires in-depth consideration. As such, the demonstration is best achieved by a large number of collaborators. Planning tests, sharing and analyzing and reviewing of results are best conducted in a public forum.

Cryptography concept is based on two important entities:

i. Plain Text
ii. Ciphertext

Plain Text: The original message sent from sender to receiver is in the plain text format. In the above example, Alice sends original message to Bob, in the plain text format through the secured channel. The plain text information is easily accessible to other party if it`s not sent through the secured channel.

Ciphertext: Cipher text is the text in the encrypted form. The message converted from original plain text to unknown text, which is in unreadable format is called as Cipher text. In the above example, the original information, plain text is sent from Alice, is converted to an unreadable format that is cipher text, when sent to Bob. The cipher text ensures that message is not easily accessible to any person inside/outside the network.


Comments

Popular posts from this blog

The Seven-Step Model of Migration

Irrespective of the migration approach adopted, the Seven-step Model of Cloud Migration creates a more rational point of view towards the migration process and offers the ability to imbibe several best practices throughout the journey Step 1: Assess Cloud migration assessments are conducted to understand the complexities in the migration process at the code, design and architectural levels. The investment and the recurring costs are also evaluated along with gauging the tools, test cases, functionalities and other features related to the configuration. Step 2: Isolate The applications to be migrated to the cloud from the internal data center are freed of dependencies pertaining to the environment and the existing system. This step cuts a clearer picture about the complexity of the migration process. Step 3: Map Most organisations hold a detailed mapping of their environment with all the systems and applications. This information can be used to distinguish between the ...

Special Permissions in linux

The setuid permission on an executable file means that the command will run as the user owning the file, not as the user that ran the command. One example is the passwd command: [student@desktopX ~]$ ls -l /usr/bin/passwd -rw s r-xr-x. 1 root root 35504 Jul 16 2010 /usr/bin/passwd In a long listing, you can spot the setuid permissions by a lowercase s where you would normally expect the x (owner execute permissions) to be. If the owner does not have execute permissions, this will be replaced by an uppercase S . The special permission setgid on a directory means that files created in the directory will inherit their group ownership from the directory, rather than inheriting it from the creating user. This is commonly used on group collaborative directories to automatically change a file from the default private group to the shared group, or if files in a directory should be...

RequestsDependencyWarning: urllib3 (1.24.1) or chardet (3.0.4) doesn't match a supported version

import tweepy /usr/lib/python2.7/dist-packages/requests/__init__.py:80: RequestsDependencyWarning: urllib3 (1.24.1) or chardet (3.0.4) doesn't match a supported version!   RequestsDependencyWarning) Traceback (most recent call last):   File "<stdin>", line 1, in <module>   File "/usr/local/lib/python2.7/dist-packages/tweepy/__init__.py", line 14, in <module>     from tweepy.api import API   File "/usr/local/lib/python2.7/dist-packages/tweepy/api.py", line 12, in <module>     from tweepy.binder import bind_api   File "/usr/local/lib/python2.7/dist-packages/tweepy/binder.py", line 11, in <module>     import requests   File "/usr/lib/python2.7/dist-packages/requests/__init__.py", line 97, in <module>     from . import utils   File "/usr/lib/python2.7/dist-packages/requests/utils.py", line 26, in <module>     from ._internal_utils import to...

tag