Example. Basic Coding and Encryption Concepts

One of the most important tasks (of the entire society) is the task of encoding messages and encrypting information. The science of cryptology (cryptos - secret, logos - science) deals with issues of protecting and hiding information. Cryptology has two main directions - cryptography and cryptanalysis. The goals of these directions are opposite. Cryptography deals with the construction and study of mathematical methods for transforming information, and cryptanalysis deals with the study of the possibility of decrypting information without a key.


The rule for matching a set of characters of one set X with the characters of another set Y. If each character X during encoding corresponds to a separate character Y, then this is encoding. If for each symbol from Y its prototype in X is uniquely found according to some rule, then this rule is called decoding. Coding is the process of converting letters (words) of the X alphabet into letters (words) of the Y alphabet.


The encryption rules must be chosen so that the encrypted message can be decrypted. Rules of the same type (for example, all ciphers of the Caesar cipher type, according to which each character of the alphabet is encoded by a symbol spaced k positions from it) are combined into classes, and inside the class a certain parameter is defined (numeric, symbolic table, etc.), allowing iterate ( vary) all the rules. This parameter is called an encryption key. It is usually secret and is communicated only to the person who must read the encrypted message (the owner of the key).


A permutation cipher only changes the order of the characters in the original message. These are ciphers whose transformations lead to changes only in the sequence of symbols of the open source message. A substitution cipher replaces each character of the encoded message with another character(s) without changing their order. These are ciphers whose transformations lead to the replacement of each character of the open message with other characters, and the order of the characters in the private message coincides with the order of the corresponding characters in the open message.


Reliability refers to the ability to resist breaking a cipher. When decrypting a message, everything except the key can be known, that is, the strength of the cipher is determined by the secrecy of the key, as well as the number of its keys. Even open cryptography is used, which uses different keys for encryption, and the key itself can be publicly available, published. The number of keys can reach hundreds of trillions.


X family of plaintext transformations. Members of this family are indexed, denoted by the symbol k; parameter k is the key. The key set K is the set of possible values ​​for key k. Usually the key is a sequential series of letters of the alphabet.


In symmetric cryptosystems, the same key is used for both encryption and decryption. Public key systems use two keys, a public and a private, that are mathematically (algorithmically) related to each other. Information is encrypted using a public key, which is available to everyone, and decrypted only using a private key, which is known only to the recipient of the message.


An electronic (digital) signature (EDS) is a cryptographic transformation attached to the text, which allows, when another user receives the text, to verify the authorship and authenticity of the message. There are two main requirements for digital signatures: ease of verification of signature authenticity; high difficulty of signature forgery.




During the encryption process, in order for the key to be fully used, it is necessary to repeatedly perform the encoding procedure with different elements. Basic cycles consist of repeated use of different key elements and differ from each other only in the number of repetitions and the order in which the key elements are used.


All modern cryptosystems are built on the Kirchhoff principle: the secrecy of encrypted messages is determined by the secrecy of the key. This means that even if the encryption algorithm is known to the cryptanalyst, he will nevertheless be unable to decrypt the private message if he does not have the appropriate key. All classical ciphers follow this principle and are designed in such a way that there is no way to break them more efficiently than by brute force over the entire key space, that is, trying all possible key values. It is clear that the strength of such ciphers is determined by the size of the key used in them.


Information security of an information system is the security of information processed by a computer system from internal (intra-system) or external threats, that is, the state of security of the system’s information resources, ensuring the sustainable functioning, integrity and evolution of the system. Protected information (system information resources) includes electronic documents and specifications, software, structures and databases, etc.


The security assessment of computer systems is based on various systems protection classes: minimum security class of systems (class D); class of systems with protection at the discretion of the user (class C); class of systems with mandatory protection (class B); class of systems with guaranteed protection (class A).


The main types of means of influencing computer networks and systems are computer viruses, logic bombs and mines (bookmarks, bugs), and penetration into information exchange. Example. A virus program on the Internet that repeatedly sent out its code in 2000 could, when opening an attachment to the text of a letter with an intriguing title (I Love You), send its code to all addresses recorded in the address book of the given recipient of the virus, which led to fan proliferation virus over the Internet, because the address book of each user can contain tens and hundreds of addresses


A computer virus is a special program that was compiled by someone with malicious intent or to demonstrate ambitious, in a bad sense, interests, capable of reproducing its code and moving from program to program (infection). The virus is associated with an infection that penetrates blood cells and travels throughout the human body. By intercepting control (interrupts), the virus connects to a running program or to other programs and then instructs the computer to write the infected version of the program, and then returns control to the program as if nothing had happened. Later or immediately, this virus can start working (by seizing control from the program).


As new computer viruses appear, developers of anti-virus programs write a vaccine against it - a so-called anti-virus program, which, by analyzing files, can recognize the hidden virus code in them and either remove this code (cure) or delete the infected file. Antivirus program databases are updated frequently.


One of the most popular anti-virus programs, AIDSTEST, is updated by the author (D. Lozinsky) sometimes twice a week. The well-known anti-virus program AVP from Kaspersky Lab contains in its database data on several tens of thousands of viruses cured by the program


Boot - infecting the starting sectors of disks, where the most important information about the structure and files of the disk is located (service areas of the disk, the so-called boot sectors); hardware-harmful - leading to malfunction, or even complete destruction of the equipment, for example, to a resonant effect on the hard drive, to the “breakdown” of a point on the display screen; software – infecting executable files (for example, exe files with directly launched programs); polymorphic - which undergo changes (mutations) from infection to infection, from carrier to carrier; stele c viruses - camouflage, invisible (not defining themselves either by size or by direct action); macro viruses – infecting documents and text editor templates used in their creation; multipurpose viruses.


Viruses in computer networks are especially dangerous, as they can paralyze the entire network. from external storage media (from copied files, from floppy disks); via email (from files attached to the letter); via the Internet (from downloaded files). There are various methods and software packages to combat viruses (antivirus packages).


If the system uses different platforms and operating environments, then the antivirus package must support all of these platforms; the anti-virus package should be simple and understandable, user-friendly, allowing you to select options unambiguously and definitely at every step of the work, and have a developed system of clear and informative tips; the anti-virus package must detect - say, using various heuristic procedures - new unknown viruses and have a database of viruses that is replenished and updated regularly; the anti-virus package must be licensed from a reliable, well-known supplier and manufacturer who regularly updates the database, and the supplier itself must have its own anti-virus center - a server, from where you can get the necessary urgent help and information.

Description of the presentation by individual slides:

1 slide

Slide description:

2 slide

Slide description:

PROBLEM OF INFORMATION PROTECTION, PROBLEM OF INFORMATION SECURITY cryptology (cryptos - secret, logos - science) cryptography cryptanalysis construction and research of mathematical methods for transforming information study of the possibility of decrypting information without a key cryptos and grofein - write. This is secret writing, a system of transcoding a message in order to make it incomprehensible to the uninitiated, and a discipline that studies the general properties and principles of secret writing systems.

3 slide

Slide description:

basic concepts of encoding and encryption Code is a rule for matching a set of characters of one set X to the characters of another set Y. If each character X during encoding corresponds to a separate character Y, then this is encoding. If for each symbol from Y its prototype in X is uniquely found according to some rule, then this rule is called decoding. Coding is the process of converting letters (words) of the X alphabet into letters (words) of the Y alphabet. When representing messages in a computer, all characters are encoded by bytes. The message that we want to send to the recipient will be called an open message. It is defined over some alphabet. The encrypted message can be constructed over another alphabet. Let's call it a closed message. The process of converting a clear message into a private message is encryption. If A is an open message, B is a closed message (cipher), f is an encryption rule, then f(A) = B.

4 slide

Slide description:

encryption rules Encryption rules must be chosen so that the encrypted message can be decrypted. Rules of the same type (for example, all ciphers of the Caesar cipher type, according to which each character of the alphabet is encoded by a symbol spaced k positions from it) are combined into classes, and inside the class a certain parameter is defined (numeric, symbolic table, etc.), allowing iterate ( vary) all the rules. This parameter is called an encryption key. It is usually secret and is communicated only to the person who must read the encrypted message (the owner of the key). With encoding there is no such secret key, since encoding aims only at a more condensed, compact representation of the message. If k is a key, then we can write f(k(A)) = B. For each key k, the transformation f(k) must be invertible, that is, f(k(B)) = A. The set of transformation f(k) and the correspondence of the set k is called a cipher.

5 slide

Slide description:

Ciphers permutation ciphers substitution ciphers only change the order of the characters in the original message. These are ciphers whose transformations lead to changes only in the sequence of symbols of the open source message. replaces each character of the encoded message with another character(s) without changing their order. These are ciphers whose transformations lead to the replacement of each character of the open message with other characters, and the order of the characters in the private message coincides with the order of the corresponding characters in the open message. Reliability refers to the ability to resist breaking a cipher. When decrypting a message, everything except the key can be known, that is, the strength of the cipher is determined by the secrecy of the key, as well as the number of its keys. Even open cryptography is used, which uses different keys for encryption, and the key itself can be publicly available, published. The number of keys can reach hundreds of trillions. One of the best examples of an encryption algorithm is the DES (Data Encrypted Standard) algorithm adopted in 1977 by the US National Bureau of Standards. Research of the algorithm by specialists has shown that there are no vulnerabilities yet on the basis of which it would be possible to propose a cryptanalysis method that is significantly better than exhaustive search of keys. In July 1991, a similar domestic cryptographic algorithm was introduced (standard GOST 28147-89), which surpasses DES in reliability.

6 slide

Slide description:

Cryptographic system cryptosystems symmetric electronic signature systems with a public key

7 slide

Slide description:

In public key systems, two keys are used - public and private, which are mathematically (algorithmically) related to each other. Information is encrypted using a public key, which is available to everyone, and is decrypted only using a private key, which is known only to the recipient of the message. An electronic (digital) signature (EDS) is a cryptographic transformation attached to the text, which allows, when the text is received by another user, to verify the authorship and authenticity of the message. There are two main requirements for digital signatures: ease of verification of signature authenticity; high difficulty of signature forgery. cryptosystems symmetric electronic signature systems with a public key

8 slide

Slide description:

Key management systems are information systems whose purpose is to compile and distribute keys among users of the information system. Developing key and password information is a typical task for a system security administrator. The key can be generated as an array of the required size of statistically independent and equally likely distributed elements over the binary set (0, 1). Passwords should be generated and distributed to users by the system security administrator, based on the basic principle of ensuring an equal probability of each alphabetic character appearing in the password. During the encryption process, in order for the key to be fully used, it is necessary to repeatedly perform the encoding procedure with different elements. Basic cycles consist of repeated use of different key elements and differ from each other only in the number of repetitions and the order in which the key elements are used.

Slide 9

Slide description:

All modern cryptosystems are built on the Kirchhoff principle: the secrecy of encrypted messages is determined by the secrecy of the key. This means that even if the encryption algorithm is known to the cryptanalyst, he will nevertheless be unable to decrypt the private message if he does not have the appropriate key. All classical ciphers follow this principle and are designed in such a way that there is no way to break them more efficiently than by brute force over the entire key space, that is, trying all possible key values. It is clear that the strength of such ciphers is determined by the size of the key used in them. Example. Russian ciphers often use a 256-bit key, and the volume of the key space is 2256. On no real existing or possible in the near future computer, it is possible to select a key (by brute force) in a time less than many hundreds of years. The Russian crypto-algorithm was designed with a large margin of reliability and durability.

10 slide

Slide description:

Information security of an information system is the security of information processed by a computer system from internal (intra-system) or external threats, that is, the state of security of the system’s information resources, ensuring the sustainable functioning, integrity and evolution of the system. Protected information (information resources of the system) includes electronic documents and specifications, software, structures and databases, etc. The assessment of the security of computer systems is based on various classes of system protection: class of systems of minimal security (class D); class of systems with protection at the discretion of the user (class C); class of systems with mandatory protection (class B); class of systems with guaranteed protection (class A).

11 slide

Slide description:

types of means of influencing computer networks and systems computer viruses logical bombs and mines introduction into information exchange A computer virus is a special program that is compiled by someone with malicious intent or to demonstrate ambitious, in a bad sense, interests, capable of reproducing its code and transition from program to program (infection). boot hardware-harmful software polymorphic stealth viruses macroviruses multi-purpose viruses infecting the starting sectors of disks, where the most important information about the structure and files of the disk is located (service areas of the disk, the so-called boot sectors) leading to disruption or even destruction of the hardware , for example, to a resonant effect on the hard drive, to the “breakdown” of a point on the display screen, infecting executable files (for example, exe files with directly launched programs) that undergo changes (mutations) from infection to infection, from carrier to carrier, camouflaged, imperceptible ( not defining themselves either by size or by direct action) infecting documents and text editor templates used in their creation

Slide description:

Principles for choosing antivirus programs: if the system uses different platforms and operating environments, then the antivirus package must support all these platforms; the anti-virus package should be simple and understandable, user-friendly, allowing you to select options unambiguously and definitely at every step of the work, and have a developed system of clear and informative tips; the anti-virus package must detect - say, using various heuristic procedures - new unknown viruses and have a database of viruses that is replenished and updated regularly; the anti-virus package must be licensed from a reliable, well-known supplier and manufacturer who regularly updates the database, and the supplier itself must have its own anti-virus center - a server, from where you can get the necessary urgent help and information.

Slide 14

Slide description:

Assignments: Make a plan for the lecture. Make up test questions for each item in the plan.

In modern society, the success of any type of activity strongly depends on the possession of certain information (information) and on the lack of it (it) among competitors. The stronger this effect is, the greater the potential losses from abuses in the information sphere and the greater the need for information protection. In a word, the emergence of the information processing industry led to the emergence of an industry of means of protecting it and to the actualization of the very problem of information protection, the problem of information security.

One of the most important tasks (of the entire society) is the task of encoding messages and encrypting information.

The science of cryptology ( cryptos- secret, logo- the science). Cryptology has two main areas - cryptography and cryptanalysis. The goals of these directions are opposite. Cryptography deals with the construction and study of mathematical methods for transforming information, and cryptanalysis deals with the study of the possibility of decrypting information without a key. The term "cryptography" comes from two Greek words: cryptos And grofein- write. Thus, it is secret writing, a system of transcoding a message in order to make it incomprehensible to the uninitiated, and a discipline that studies the general properties and principles of secret writing systems.

Let's introduce some basic concepts of coding and encryption.

A code is a rule for matching a set of characters of one set X to the characters of another set Y. If each character X during encoding corresponds to a separate character Y, then this is encoding. If for each symbol from Y its prototype in X is uniquely found according to some rule, then this rule is called decoding.

Coding is the process of converting letters (words) of the X alphabet into letters (words) of the Y alphabet.

When representing messages in a computer, all characters are encoded by bytes. Example. If each color is encoded with two bits, then you can encode no more than 2 2 = 4 flowers, three - 2 3 = 8 colors, eight bits (bytes) – 2 8 =256 colors. There are enough bytes to encode all the characters on a computer keyboard.

The message that we want to send to the recipient will be called an open message. It is naturally defined over some alphabet.

The encrypted message can be constructed over another alphabet. Let's call it a closed message. The process of converting a clear message into a private message is encryption.

If A– open message, IN– closed message (cipher), f– encryption rule, then f(A) = B.

The encryption rules must be chosen so that the encrypted message can be decrypted. Rules of the same type (for example, all ciphers such as the Caesar cipher, according to which each character of the alphabet is encoded with a symbol spaced n positions from it) are combined into classes, and within the class a certain parameter is defined (numeric, symbolic table, etc.), allowing iterate (vary) ) all the rules. This parameter is called an encryption key. It is usually secret and is communicated only to the person who must read the encrypted message (the owner of the key).

With encoding there is no such secret key, since encoding aims only at a more condensed, compact representation of the message.

If k– key, then you can write f(k(A)) = B. For every key k, transformation f(k) must be reversible, that is f(k(B)) = A. Conversion set f(k) and set matching k called a cipher.

There are two large groups of ciphers: permutation ciphers and substitution ciphers.

A permutation cipher only changes the order of the characters in the original message. These are ciphers whose transformations lead to changes only in the sequence of symbols of the open, original message.

A substitution cipher replaces each character of the encoded message with another character(s) without changing their order. These are ciphers whose transformations lead to the replacement of each character of the open message with other characters, and the order of the characters in the private message coincides with the order of the corresponding characters in the open message.

Reliability refers to the ability to resist breaking a cipher. When decrypting a message, everything except the key can be known, that is, the strength of the cipher is determined by the secrecy of the key, as well as the number of its keys. Even open cryptography is used, which uses different keys for encryption, and the key itself can be publicly available, published. The number of keys can reach hundreds of trillions.

One of the best examples of an encryption algorithm is the DES (Data Encrypted Standard) algorithm adopted in 1977 by the US National Bureau of Standards. Research of the algorithm by specialists has shown that there are no vulnerabilities yet on the basis of which it would be possible to propose a cryptanalysis method that is significantly better than exhaustive search of keys. In July 1991, a similar domestic cryptographic algorithm was introduced (standard GOST 28147-89), which surpasses DES in reliability.

Cryptographic system is a family of plaintext transformations. Members of this family are indexed, indicated by the symbol k; parameter k is the key. Many keys K is a set of possible key values k. Usually the key is a sequential series of letters of the alphabet.

The plaintext is usually of arbitrary length. If the text is large and cannot be processed by the encoder (computer) as a whole, then it is divided into blocks of a fixed length, and each block is encrypted separately, regardless of its position in the input sequence. Such cryptosystems are called block cipher systems.

Cryptosystems are divided into symmetric public key systems and electronic signature systems.

In symmetric cryptosystems, the same key is used for both encryption and decryption.

In public key systems, two keys are used - public and private, which are mathematically (algorithmically) related to each other. Information is encrypted using a public key, which is available to everyone, and decrypted only using a private key, which is known only to the recipient of the message.

An electronic (digital) signature (EDS) is a cryptographic transformation attached to the text, which allows, when another user receives the text, to verify the authorship and authenticity of the message. There are two main requirements for digital signatures: ease of verification of signature authenticity; high difficulty of signature forgery.

Cryptography studies, in addition to cryptosystems (symmetric, public key, electronic signature), also key management systems.

Key management systems are information systems whose purpose is to compile and distribute keys between users of the information system.

Developing key, password information is a typical task for a system security administrator. The key can be generated as an array of the required size that is statistically independent and equally likely distributed over a binary set of (0, 1) elements.

Example: For such purposes, you can use a program that generates a key based on the “electronic roulette” principle. When the number of users, that is, the amount of necessary key information, is very large, hardware random (pseudo-random) number sensors are more often used. Passwords also need to be changed. For example, the famous Morris virus attempts to log into a system by sequentially trying passwords from its internal heuristically compiled list of several hundred procedures that simulate the “composition” of passwords by a person.

Passwords should be generated and distributed to users by the system security administrator, based on the basic principle of ensuring an equal probability of each alphabetic character appearing in the password.

During the encryption process, in order for the key to be fully used, it is necessary to repeatedly perform the encoding procedure with different elements. Basic cycles consist of repeated use of different key elements and differ from each other only in the number of repetitions and the order in which the key elements are used.

Example: In banking systems, the initial exchange of keys between the client and the bank is carried out on magnetic media without transmitting keys through open computer networks. The client's secret key is stored on the bank's certification server and is not accessible to anyone. To carry out all operations with digital signature, software is installed on the client’s computer, which is provided by the bank, and all the necessary data for the client - public, private key, login, password, etc. - are usually stored on a separate floppy disk or on a special device connected to the client’s computer.

All modern cryptosystems are built on the Kirchhoff principle: the secrecy of encrypted messages is determined by the secrecy of the key.

This means that even if the encryption algorithm is known to the cryptanalyst, he will nevertheless not be able to decrypt the private message if he does not have the appropriate key. All classical ciphers follow this principle and are designed in such a way that there is no way to break them in a more efficient way than brute force over the entire key space, that is, trying all possible key values. It is clear that the strength of such encryption is determined by the size of the key used in them.

Example: Russian ciphers often use a 256-bit key, and the amount of key space is 2 256 . On no real existing or possible in the near future computer it is possible to find a key (by brute force) in a time less than many hundreds of years. The Russian crypto-algorithm was designed with a large margin of reliability and durability.

Information security of an information system is the security of information processed by a computer system from internal (intra-system) or external threats, that is, the state of security of the system’s information resources, ensuring the sustainable functioning, integrity and evolution of the system. Protected information (system information resources) includes electronic documents and specifications, software, structures and databases, etc.

The security assessment of computer systems is based on various systems protection classes:

class of minimum security systems (class D);

class of systems with protection at the discretion of the user (class C);

class of systems with mandatory protection (class B);

class of systems with guaranteed protection (class A).

These classes also have subclasses, but we will not detail them here.

12 answers

Coding converts data to another format using a publicly available schema so that it can be easily reversed.

Encryption converts data to another format in such a way that only individuals can change the conversion.

Encoding is designed to make data usable and uses publicly available schemas.

Encryption is designed to ensure data confidentiality, and thus the ability to change the transformation (keys) is limited to certain people.

Encoding is the process of transforming data so that it can be transmitted safely over a communication channel or stored safely on a storage medium. For example, computer hardware doesn't manipulate text, it just manipulates bytes, so a text encoding is a description of how text should be converted into bytes. Likewise, HTTP does not allow all characters to be transmitted securely, so the data may need to be encoded using base64 (uses only letters, numbers, and two safe characters).

When encoding or decoding, the emphasis is on everyone having the same algorithm, and that algorithm is usually well documented, widespread, and fairly easy to implement. Any user can eventually decode the encoded data.

Encryption, on the other hand, applies a transformation to a piece of data that can only be undone by specific (and secret) knowledge of how to decrypt it. The focus is on making sure that someone other than the intended recipient is trying to read the original data. An encoding algorithm that is kept secret is a form of encryption, but is quite vulnerable (it takes skill and time to develop any type of encryption, and by definition you cannot have someone else create such an encoding algorithm for you - or you should kill them). Instead, the most used encryption method uses secret keys: the algorithm is well known, but the encryption and decryption process requires the same key to be available for both operations, and the key is then kept secret. Decryption of encrypted data is only possible using the appropriate key.

Coding:

    Purpose: The purpose of encoding is to transform data so that it can be (and be safely) consumed by another type of system.

    Used to: ensure ease of use of data, i.e. To ensure its proper use.

    Data retrieval mechanism: no key and can be easily changed if we know which algorithm was used in the encoding.

    Algorithms used: ASCII, Unicode, URL encoding, Base64.

    Example: Binary data is sent via email or special characters are viewed on a web page.

Encryption:

    Purpose: The purpose of encryption is to transform data to keep it secret from others.

    Used for: maintaining data confidentiality, i.e. To ensure that data cannot be consumed by anyone other than the intended recipient(s).

    Data retrieval mechanism. The original data can be obtained if we know the key and encryption algorithm used.

    Algorithms used: AES, Blowfish, RSA.

    Example. Sending someone a secret email that they only have to read, or sending a password securely over the Internet.

Coding is the process of entering a sequence of characters into a special format for transmission or storage purposes

Encryption is the process of converting data into a secret code. Encryption is the most effective way to ensure data security. To read an encrypted file, you must have access to the secret key or password that allows you to decrypt it. Unencrypted data is called plaintext; the encrypted data is called ciphertext

See encoding as a way of storing or transmitting data between different systems. For example, if you want to store text on your hard drive, you will need to find a way to convert your characters into bits. Alternatively, if all you have is flash, you can encode the text using Morse. The result is always "readable" if you know how it is stored.

Encryption means that you want to make your data unreadable by encrypting it with an algorithm. For example, Caesar did this by replacing each letter with another. The result here is unreadable unless you know the secret "key" it was encrypted with.

I would say that both operations convert information from one form to another, with the difference being:

  • Coding means the transformation of information from one form to another, in most cases it is easily reversible.
  • Encryption means that the original information is hidden and includes encryption keys that must be passed to the encryption/decryption process to perform the transformation.

So, if it includes (symmetric or asymmetric) keys (aka "secret"), it's encryption, otherwise it's encoding.

Encoding designed to support ease of use and can be reversed by using the same algorithm that encoded the content, i.e. key is not used.

Encryption is intended to maintain confidentiality and requires the use of a key (kept secret) to return to the plaintext.

There are also two main terms that lead to confusion in the security world Hashing and Obfuscation

Hashing is designed to verify content integrity by detecting all changes through explicit changes to the hash output.

Obfuscation used to prevent people from understanding the meaning of something and is often used with computer code to prevent successful reverse engineering and/or theft of product functionality.

Encoding - example data 16
Then encoding 10000 means it is binary format or ASCII or UNCODED etc. which can be easily read by any system to understand its true meaning

Encryption - example data is 16, then the value of encryprion is 3t57 or could be anything depending on what algorithm is used for encryption, which can be easily read by any system BUT only the one who actually understands it and has the key decryption.

Encoding:

The purpose of encoding is to transform data so that it can be (and be safely) consumed by another type of system, e.g. binary data sent via email, or viewing special characters on a web page. The goal is not to keep information secret, but to ensure that it is consumed appropriately. Encoding converts data into another format using a publicly available schema so that it can be easily reversed. It does not require a key, since the only thing required for decoding is the algorithm that was used to encode it.

Examples: ASCII, Unicode, URL Encoding, Base64

Encryption:

The purpose of encryption is to transform data to keep it secret from others, e.g. by sending someone a secret email that only they should be able to read or securely sending a password over the Internet. Rather than focusing on usability, the goal is to ensure that the data cannot be used by anyone other than the intended recipient.

Encryption converts data into another format in such a way that only individuals can change the conversion. It uses a key that is kept secret in combination with plaintext and an algorithm to perform the encryption operation. So the ciphertext, algorithm and key are needed to get back to the plaintext.

Examples: AES, Blowfish, RSA

Example: ASCII, BASE64, UNICODE

ASCII VALUE "A" IS: 65

Encryption:

Encryption is a coding technique in which a message is encoded using an encryption algorithm so that only authorized personnel can access the message or information.

This is a special type of encoding that is used to transmit personal data, such as sending a username and password combination over the Internet to log in via email.

In encryption, the data to be encrypted (called plaintext) is transformed using an encryption algorithm such as AES encryption or RSA encryption using a secret key called a cipher. The encrypted data is called ciphertext, and finally the secret key can be used by the intended recipient to convert it back to plain text.

The basic concepts of coding and encryption of information, information security and anti-virus protection are considered.

In modern society, the success of any type of activity strongly depends on the possession of certain information (information) and on the lack of it (it) among competitors. The stronger this effect is, the greater the potential losses from abuses in the information sphere and the greater the need for information protection. In a word, the emergence of the information processing industry led to the emergence of an industry of means of protecting it and to the actualization of the very problem of information protection, the problem information security.

One of the most important tasks (of the entire society) is the task coding messages and encryption information.

Science deals with issues of information protection and concealment cryptology (cryptos - secret, logos - science). Cryptology has two main areas - cryptography And cryptanalysis. The goals of these directions are opposite. Cryptography deals with the construction and study of mathematical methods for transforming information, and cryptanalysis deals with the study of the possibility of decrypting information without key. The term "cryptography" comes from two Greek words: cryptoc And grofeinwrite. Thus, it is secret writing, a system of transcoding a message in order to make it incomprehensible to the uninitiated, and a discipline that studies the general properties and principles of secret writing systems.

Let's introduce some basic concepts coding And encryption.

Code – rule for matching a set of characters of one set X signs of another set Y. If each character X at coding corresponds to a separate sign Y, that is coding. If for each character from Y its prototype will be uniquely found according to some rule in X, then this rule is called decoding.

Coding – the process of transforming letters (words) of the alphabet X into letters (words) of the alphabet Y.

When representing messages in a computer, all characters are encoded by bytes.

Example. If each color is encoded with two bits, then no more than 2 2 = 4 colors can be encoded, with three – 2 3 = 8 colors, with eight bits (byte) – 256 colors.

The message that we want to send to the recipient will be called an open message. It is naturally defined over some alphabet.

The encrypted message can be constructed over another alphabet. Let's call it a closed message. The process of converting an open message into a closed message is encryption .

If A– open message, IN– closed message ( cipher ), f– rule encryption, That f(A) = B.

Rules encryption must be chosen so that the encrypted message can be decrypted. Rules of the same type (for example, all ciphers type cipher Caesar, according to which each character of the alphabet is encoded spaced from it by k positions by symbol) are combined into classes, and inside the class a certain parameter is defined (numeric, symbolic table, etc.), which allows you to iterate (vary) all the rules. This parameter is called encryption key. It is usually secret and is communicated only to the one who must read the encrypted message (the owner key).

At coding no such secret key, because coding aims only at a more condensed, compact presentation of the message.

If kkey, then we can write f(k(A)) = B. For each key k, transformation f(k) must be reversible, that is f(k(B)) = A. Conversion set f(k) and set correspondence k called code .

There are two large groups ciphers: ciphers permutations and ciphers replacements.

Cipher permutations only change the order of the characters in the original message. These are like this ciphers, transformations of which lead to a change only in the sequence of symbols of the open, original message.

Cipher substitution replaces each character of the encoded message with another character(s) without changing their order. These are like this ciphers, transformations of which lead to the replacement of each character of the open message with other characters, and the order of the characters of the closed message coincides with the order of the corresponding characters of the open message.

Under reliability refers to the ability to resist hacking cipher. When decrypting a message, everything can be known except key, that is cipher strength determined by secrecy key, as well as its number keys. Even open cryptography is used, which uses various keys For encryption, And you key may be publicly available, published. Number keys it can reach hundreds of trillions.

Example. One of the best examples of an algorithm encryption– standard algorithm adopted in 1977 by the US National Bureau of Standards encryption data DES (Data Encrypted Standard) . Research of the algorithm by specialists has shown that there are no vulnerabilities yet on the basis of which it would be possible to propose a cryptanalysis method that is significantly better than exhaustive search. keys. In July 1991, a similar domestic cryptographic algorithm (standard GOST 28147-89), which is superior DES By reliability.

Cryptographic system– family X transformations of plaintexts. Members of this family are indexed, indicated by the symbol k; parameter k is key. A bunch of keys K is a set of possible values key k. Usually key represents a sequential series of letters of the alphabet.

The plaintext is usually of arbitrary length. If the text is large and cannot be processed by the encoder (computer) as a whole, then it is divided into blocks of a fixed length, and each block is encrypted separately, regardless of its position in the input sequence. Such cryptosystems are called block systems. encryption.

Cryptosystems are divided into symmetric with open key and electronic signature systems.

IN symmetric cryptosystems, both for encryption and decryption, the same key.

In systems with open key two are used key– open and closed, which are mathematically (algorithmically) related to each other. Information is encrypted using open key, which is available to everyone, and can only be decrypted using a private key, which is known only to the recipient of the message.

Electronic (digital) signature (EDS) is called a cryptographic transformation attached to the text, which allows, when the text is received by another user, to verify the authorship and authenticity of the message. There are two main requirements for digital signatures: ease of verification of signature authenticity; high difficulty of signature forgery.

Cryptography studies, in addition to cryptosystems (symmetric, open key, electronic signature), also control systems keys.

Control systems keys are information systems whose purpose is to compile and distribute keys between users of the information system.

Development key, password information is a typical task for a system security administrator. Key can be generated as an array of the required size of statistically independent and equally likely distributed elements on the binary set (0, 1).

Example. For such purposes, you can use a program that generates key according to the principle of "electronic roulette". When the number of users, that is, the amount of necessary key information, is very large, hardware random (pseudo-random) number sensors are more often used. Passwords also need to be changed. For example, the famous virus Morris attempts to log into the system by sequentially trying passwords from his internal heuristically compiled list of several hundred procedures that simulate the “composition” of passwords by a person.

Passwords should be generated and distributed to users by the system security administrator, based on the basic principle of ensuring an equal probability of each alphabetic character appearing in the password.

In progress encryption, to key has been used completely, it is necessary to repeatedly perform the encoding procedure with different elements. Basic cycles consist of repeated use of different elements key and differ from each other only in the number of repetitions and the order in which key elements are used.

Example. In banking systems, the initial exchange keys between the client and the bank is carried out on magnetic media without transmission keys through open computer networks. Secret key the client is stored on the bank’s certification server and is closed for access. To carry out all operations with digital signature, software provided by the bank is installed on the client’s computer, and all necessary data for the client is open, closed key, login, password, etc. - are usually stored on a separate floppy disk or on a special device connected to the client’s computer.

All modern cryptosystems are built on Kirchhoff's principle: The secrecy of encrypted messages is determined by the secrecy key.

This means that even if the algorithm encryption will be known to the cryptanalyst, he, however, will not be able to decipher the closed message if he does not have the appropriate key. All classic ciphers correspond to this principle and are designed in such a way that there is no way to open them in a more efficient way than exhaustive search over the entire key space, that is, searching through all possible values key. It is clear that the persistence of such ciphers determined by the size used in them key.

Example. In Russian ciphers 256-bit is often used key, and the volume of the key space is 2,256 . On no real existing or possible in the near future computer it is possible to select key(complete search) in a time less than many hundreds of years. The Russian crypto-algorithm was designed with a large margin reliability, durability.

Information Security information system – security of information processed by a computer system from internal (intra-system) or external threats, that is, the state of security of the system’s information resources, ensuring the sustainable functioning, integrity and evolution of the system. Protected information (system information resources) includes electronic documents and specifications, software, structures and databases, etc.

The security assessment of computer systems is based on various protection classes systems:

    Class minimum security systems ( Class D);

    Class systems with protection at the discretion of the user ( Class C);

    Class systems with mandatory protection ( Class B);

    Class systems with guaranteed protection ( Class A).

These classes They also have subclasses, but we will not detail them here.

The main types of means of influencing computer networks and systems are computer viruses, logic bombs and mines (bookmarks, bugs), introduction into information exchange.

Example. Having sent out yours many times code in 2000, a virus program on the Internet could, when opening an attachment to the text of a letter with an intriguing title ( I love youI love you) send your code to all addresses recorded in the address book of this recipient virus, which led to fan reproduction virus over the Internet, because the address book of each user can contain tens and hundreds of addresses.

Computer virus - a special program that is compiled by someone with malicious intent or to demonstrate ambitious, in a bad sense, interests, capable of reproducing its code and to the transition from program to program (infection). Virus is similar to an infection that penetrates the blood cells and travels throughout the human body. Taking control (interrupts), virus connects to a running program or to other programs and then instructs the computer to write an infected version of the program, and then returns control to the program as if nothing had happened. Next or immediately this virus can earn (by intercepting control from the program).

As new computers emerge viruses developers of antivirus programs are writing a vaccine against it - the so-called antivirus program, which, by analyzing files, can recognize hidden code virus and either delete this code(cure) or delete the infected file. Antivirus program databases are updated frequently.

Example. Well-known antivirus program AVP Kaspersky Lab contains in its database data on several tens of thousands viruses cured by the program and is updated daily.

Viruses There are the following main types:

    boot– infecting the starting sectors of disks, where the most important information about the structure and files of the disk is located (service areas of the disk, the so-called boot-sector);

    hardware-harmful– leading to malfunction, or even complete destruction of the equipment, for example, to a resonant effect on the hard drive, to the “breakdown” of a point on the display screen;

    software– infecting executable files (for example, exe files with directly launched programs);

    polymorphic– which undergo changes (mutations) from infection to infection, from carrier to carrier;

    stealth viruses– camouflaged, invisible (not defining themselves either by size or by direct action);

    macroviruses– infecting documents and text editor templates used in their creation;

    multi-target viruses.

Particularly dangerous viruses in computer networks, as they can paralyze the entire network.

Viruses can penetrate the network, for example:

    from external storage media (from copied files, from floppy disks);

    via email (from files attached to the letter);

    via the Internet (from downloaded files).

There are various methods and software packages to combat viruses(antivirus packages).

When choosing antiviral agents, you must adhere to the following simple principles (similar to anti-influenza prophylaxis):

    if the system uses different platforms and operating environments, then the antivirus package must support all these platforms;

    the anti-virus package should be simple and understandable, user-friendly, allowing you to select options unambiguously and definitely at every step of the work, and have a developed system of clear and informative tips;

    the antivirus package must detect - say, using various heuristic procedures - new unknowns viruses and have a regularly replenished and updated database of viruses;

    the anti-virus package must be licensed from a reliable, well-known supplier and manufacturer who regularly updates the database, and the supplier itself must have its own anti-virus center - a server, from where you can get the necessary urgent help and information.

Example. Research suggests that if half the world's computers had constant, efficient antivirus protection, then computer viruses will lose the opportunity to reproduce.

mob_info