## 数学代写|密码学作业代写Cryptography代考|Design process of a cryptosystem

statistics-lab™ 为您的留学生涯保驾护航 在代写密码学Cryptography方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写密码学Cryptography代写方面经验极为丰富，各种代写密码学Cryptography相关的作业也就用不着说。

## 数学代写|密码学作业代写Cryptography代考|Design process of a cryptosystem

The following chapters will focus on describing cryptographic primitives and how they work. However, it is extremely important from a practical security perspective to recognise that the primitives themselves must always be considered as part of a process, rather than isolated mechanisms. The process that surrounds a cryptographic primitive includes the following.
SELECTION OR DESIGN OF APRIMITIVE
The selection of a cryptographic primitive depends on the application requirements. For example, with respect to selection of an encryption algorithm, this part of the process may involve asking questions such as:

Should we use symmetric or public-key encryption?

What requirements and/or restrictions on the key length exist?

Should we adopt a publicly known encryption algorithm or develop our own proprietary encryption algorithm?
Throughout our discussion of cryptographic primitives, we will investigate some of the properties which influence this selection (design) process. Note that in many cases the financial or operational constraints may dictate the use of certain primitives. For example, an organisation might be forced to use a specific primitive in order to comply with a relevant application standard.

## 数学代写|密码学作业代写Cryptography代考|Evaluating security

One of the most difficult aspects of cryptography is making an accurate assessment of the security of a given cryptosystem. We separate this discussion into assessing the security of cryptographic primitives, protocols, and cryptosystems.
ASSESSING THE SECURITY OF A CRYPTOGRAPHIC ALGORITHM
Historically, the security of cryptographic algorithms (and protocols) relied on a rather informal approach which considered known attacks on the algorithm, such as an exhaustive key search, and then designed the algorithm to make these attacks ineffective. Often the arguments put forward to justify the resulting ‘security’ were not particularly rigorous, and in many cases were experimental. This process resulted from the fact that cryptographic algorithm design is as much about engineering as mathematics.

The problem with such an informal approach is it does not provide any real notion of ‘proof’ that a cryptographic algorithm is secure. With this in mind, cryptographic researchers have gradually been developing and adopting methodologies for attempting to provide stronger arguments for the security of cryptographic algorithms. This concept of provable security attempts to assess the security of a cryptographic algorithm by starting from some assumptions about the attack environment (captured by a security model), and then showing the security of the cryptographic algorithm can be formally linked (reduced) to the difficulty of a computational problem which is better understood.
There are two potential problems with this type of approach:
The starting assumptions may not be the right ones. For example, there may be attacks which have not been considered in the security model.

The computational problem might not be as difficult as thought. Provable security arguments are essentially translations from one relatively poorly understood concept (the cryptographic algorithm) into a better understood concept (the computational problem). However, this does not guarantee any ‘security’ in the event that the computational problem is not as hard as originally believed.

# 密码学代写

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

## 数学代写|密码学作业代写Cryptography代考|Perfect secrecy

statistics-lab™ 为您的留学生涯保驾护航 在代写密码学Cryptography方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写密码学Cryptography代写方面经验极为丰富，各种代写密码学Cryptography相关的作业也就用不着说。

## 数学代写|密码学作业代写Cryptography代考|Perfect secrecy

The notion of a cryptosystem being ‘unbreakable’ is modeled by the concept of perfect secrecy.
MOTIVATING PERFECT SECRECY
An exhaustive key search can always be launched against any cryptosystem. However, there is an even more basic attack that can also always be conducted against a cryptosystem which does not even involve trying to obtain the decryption key: an attacker can simply try to guess the plaintext.

Guessing the plaintext is an attack that can never be prevented. Of course, for long and complicated plaintexts it is very unlikely that an interceptor will be able to guess the plaintext correctly, but there will always be a chance (ideally a very small one) that they could. Note that guessing the plaintext becomes a much more plausible attack when the number of possible plaintexts is small, such as when the plaintext is a four-digit PIN or a short password.
DEFINING PERFECT SECRECY
It is thus useful to come up with a notion of security in which guessing the plaintext is essentially the best attack that the interceptor can deploy. We say a cryptosystem has perfect secrecy if, after seeing the ciphertext, an interceptor gets no extra information about the plaintext other than what was known before the ciphertext was observed.

## 数学代写|密码学作业代写Cryptography代考|A simple cryptosystem offering perfect secrecy

We now demonstrate a very simple cryptosystem which offers perfect secrecy.
DESCRIPTION OF THE CRYPTOSYSTEM
Consider the following situation. An investor has to make a major financial decision regarding whether to purchase additional stock in a shareholding, or whether to sell his existing shares. At 14.00 he intends to inform his broker which instruction to follow. The decision is highly sensitive, so the investor wants to encrypt it to prevent competitors from learning his intent.

Table 3.1 describes a suitable cryptosystem for use in this scenario. This cryptosystem has two keys $K_1$ and $K_2$, two plaintexts BUY and SELL, and two ciphertexts 0 and 1. The notation $E_K$ (data) denotes the ciphertext created by encrypting the data using key $K$. The cryptosystem works as follows:

1. Investor and broker agree on a randomly chosen key in advance (either $K_1$ or $K_2$ ).
2. Once the investor makes his investment decision, he looks up Table 3.1 and reads the ciphertext in the row corresponding to the chosen key and the column corresponding to the chosen decision. For example, if the key is $K_1$ and the investor is selling then the ciphertext selected will be 1 .
3. At 14.00 the investor sends the single ciphertext bit to the broker.
4. The broker looks up the row of Table 3.1 corresponding to the chosen key and establishes which column the ciphertext bit lies in. He then deduces the decision corresponding to that column. In our above example, the broker checks the row corresponding to $K_1$ and sees that 1 lies in the column corresponding to SELL. So the broker deduces the plaintext is SELL.

# 密码学代写

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

## 数学代写|密码学作业代写Cryptography代考|Frequency analysis

statistics-lab™ 为您的留学生涯保驾护航 在代写密码学Cryptography方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写密码学Cryptography代写方面经验极为丰富，各种代写密码学Cryptography相关的作业也就用不着说。

## 数学代写|密码学作业代写Cryptography代考|Frequency analysis

A good cryptanalyst needs many skills, including the ability to think laterally. In order to ‘break’ a cryptosystem, every available piece of information should be used. We are about to see that cryptosystems such as the Caesar Cipher and the Simple Substitution Cipher have a significant problem that can be exploited. Intriguingly, this exploit arises because of the typical nature of plaintexts.
THE NATURE OF PLAINTEXTS
The job of a cryptographer would arguably be much simpler if cryptosystems were only used to protect plaintexts consisting of randomly generated data. But, typically, they are not! In many situations, a plaintext is a meaningful string of letters that represents words, sentences, perhaps even an entire book, expressed in a language such as English. In any language, there are certain letters, or combinations of letters, that occur far more often than others, and hence languages are highly structured. Table 2.1 shows approximate letter frequencies for the English language.

The letter frequencies in Table 2.1 are expressed to three decimal places, indicating that, for example, in every 100000 letters of typical English text we would expect about 8167 A’s, 12702 E’s, but only 74 Z’s. Of course, this is just an approximation, but the inference is clear: given any plaintext string in English, there are likely to be far more occurrences of the letter E than the letter $\mathrm{Z}$.

## 数学代写|密码学作业代写Cryptography代考|A study of theory versus practice

Before leaving the topic of monoalphabetic ciphers, it is worth using letter frequency analysis of the Simple Substitution Cipher to illustrate a point that we will keep returning to throughout our investigation of cryptography: the differences between theory and practice.
THEORY: UNIQUENESS OF THE PLAINTEXT
We have just observed that the Simple Substitution Cipher can provide reasonable protection for very short plaintexts. As an illustration, consider plaintexts consisting of just three letters. With only three ciphertext characters to work with, an attacker is faced with so many possible three-letter plaintexts which could encrypt into a given three-letter ciphertext, that it is probably fair to describe the Simple Substitution Cipher as being unbreakable.

To illustrate this, if we are given a three-letter ciphertext MFM, then letter frequency analysis is useless, but we do know the first and the third plaintext letter must be the same. The plaintext could be $\mathrm{BOB}$, or POP, or MUM, or NUN, or..

However, given a ‘reasonable’ length of ciphertext, we know letter frequency analysis becomes very effective. So how much ciphertext does it take for the apparently hard problem of decrypting a short ciphertext to transform into the easy problem of decrypting a longer ciphertext?

Although there is no simple answer to this question, an important observation is that as the number of ciphertext letters increases, the number of possible plaintexts which could have resulted in that ciphertext must decrease. At some point this number will decrease to the point where only one plaintext is possible. The obvious question is: how many letters do we need before only one For the Simple Substitution Cipher applied to English plaintexts, this number is usually regarded as being around 28 ciphertext letters. This means:

1. If we have significantly less than 28 ciphertext letters, then there are probably many meaningful plaintexts which could have resulted in the ciphertext.
2. As we approach 28 ciphertext letters, then the number of possible meaningful plaintexts which could have resulted in the ciphertext steadily decreases.
3. Once we have 28 ciphertext letters, we can be fairly sure there is only one meaningful plaintext which could have resulted in the ciphertext.
4. If we have hundreds of ciphertext letters, then it is virtually a certainty that there is only one meaningful plaintext which results in the ciphertext.

# 密码学代写

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

## 数学代写|密码学作业代写Cryptography代考|Knowledge of the encryption algorithm

statistics-lab™ 为您的留学生涯保驾护航 在代写密码学Cryptography方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写密码学Cryptography代写方面经验极为丰富，各种代写密码学Cryptography相关的作业也就用不着说。

## 数学代写|密码学作业代写Cryptography代考|Knowledge of the encryption algorithm

As promised, we now consider the validity of the standard assumption that an attacker knows the encryption algorithm. There tend to be two different approaches to designing encryption algorithms, which result in most encryption algorithms being classified as either:

Publicly known algorithms: The full details of the algorithm are in the public domain and can be studied by anyone

Proprietary algorithms: The details of the algorithm are only known by the designers and perhaps a few selected parties.

In the case of publicly known encryption algorithms, an attacker knows the encryption algorithm. In the case of proprietary encryption algorithms, an attacker may well know the name of the encryption algorithm and certain basic properties, but it is not intended that they know any of the details of how it performs the encryption and decryption processes.

Note that the term proprietary is often used in other contexts to describe something that has an owner (an individual or organisation) and may have been patented; hence, our use of this term is slightly unusual. It is possible for a publicly known algorithm to be patented by an owner, and indeed there are several high-profile examples. Further, it is not necessarily the case that a proprietary algorithm has any patent issues, although its use will necessarily be restricted.

## 数学代写|密码学作业代写Cryptography代考|Use of publicly known algorithms

We have just observed that one possible advantage of publicly known algorithms is that a wide range of experts will have had the chance to evaluate such algorithms. However, designing cryptographic algorithms requires a great deal of knowledge, experience, and skill. Many well-qualified (and lessqualified!) people have designed cryptographic algorithms, but very few ever gain sufficient public confidence to become recommended for use in real applications. It is thus very important to appreciate that:

• just because an algorithm is publicly known does not imply it has been studied by a wide range of experts;
• even if a publicly known algorithm has been fairly well scrutinised, it may not be wise to deploy it in an application from a security perspective (for example, the level of scrutiny may not be sufficient);
• relatively few publicly known algorithms are actually deployed in applications; and
• very few publicly known algorithms are widely supported across different applications.
To emphasise these points, Figure 1.4 presents a conceptual taxonomy of publicly known encryption algorithms. While this taxonomy is artificial, it is designed to emphasise the prudent ‘conservatism’ of adoption of publicly known encryption algorithms. The zones in the figure can be interpreted as follows:

Unstudied algorithms (Zone A). This consists of a substantial number of encryption algorithms that have been proposed by designers, but never subjected to any serious analysis. There may well be some very good algorithms in this zone, but they have not been scrutinised enough to be relied upon. Algorithms in this zone include those used by a number of commercial products that claim to have designed their own encryption algorithm. Great caution should be applied before relying on such products.
‘Broken’ algorithms (Zone B). This consists of the many publicly known encryption algorithms that have been analysed and subsequently found to be flawed.

# 密码学代写

## 数学代写|密码学作业代写Cryptography代考|Use of publicly known algorithms

“破损”算法(B区)。这包括许多已被分析并随后发现有缺陷的公开已知的加密算法。

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

## 数学代写|密码学作业代写Cryptography代考|Steganography

statistics-lab™ 为您的留学生涯保驾护航 在代写密码学Cryptography方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写密码学Cryptography代写方面经验极为丰富，各种代写密码学Cryptography相关的作业也就用不着说。

## 数学代写|密码学作业代写Cryptography代考|Steganography

Another concept often confused with cryptography is steganography, which is also concerned with preventing unauthorised users from accessing plaintext data. However, the basic assumptions behind the use of steganography are rather different from those of cryptography. Steganography is essentially the study of information hiding. The main aim of steganography is for a sender to transfer a plaintext to a receiver in such a way that only the receiver can extract the plaintext because only the receiver knows that a hidden plaintext exists in the first place, and how to look for it (for example, by extracting information from a digital image). In steganography, an ‘interceptor’ may well be unaware that observed data contains hidden information. This is quite unlike cryptography, where an interceptor is normally fully aware that data is being communicated because they can see the ciphertext. Their problem in this case is that they cannot determine what data the ciphertext represents.

Cryptography and steganography are used in quite different applications. They can also be used together. In this case, steganography can be used to hide a ciphertext. This creates two layers of security:

1. The first layer, steganography, tries to hide the fact that a ciphertext exists in the first place.
2. In the event that this use of steganography is detected and the ciphertext is found, the second layer, cryptography, prevents the plaintext from being known.

We will not discuss steganography any further in this book. While it does potentially have niche applications, and might in some cases be regarded as a potential threat to an information system, steganography is rarely employed to secure information systems.

## 数学代写|密码学作业代写Cryptography代考|Access control

There are, in fact, three different approaches that can be taken to providing data confidentiality. The one we are most interested in is encryption, since this provides protection independently of the location where the data resides. As we have just seen, steganography relies on ‘hiding’ the data. A third approach is to control access to the (unencrypted) data. Access control is a major topic in its own right. Indeed, much of our data is not protected through the use of encryption, but rather through access control mechanisms on computers that use a combination of software and hardware techniques to prevent unauthorised users from accessing data.

Encryption can be regarded as a means of implementing a type of access control where only those with access to the appropriate decryption key can access protected data. However, they are normally separate mechanisms. Indeed, just as we saw for steganography, they can be used together to provide two separate layers of security. Access control can be used to restrict access to data, which is itself encrypted. Thus, an attacker who manages to get around the access control mechanism only manages to retrieve encrypted data.

# 密码学代写

## 学代写|密码学作业代写Cryptography代考|Steganography

Another concept often confused with cryptography is steganography, which is also concerned with preventing unauthorised users from accessing plaintext data. However, the basic assumptions behind the use of steganography are rather different from those of cryptography. Steganography is essentially the study of information hiding. The main aim of steganography is for a sender to transfer a plaintext to a receiver in such a way that only the receiver can extract the plaintext because only the receiver knows that a hidden plaintext exists in the first place, and how to look for it (for example, by extracting information from a digital image). In steganography, an ‘interceptor’ may well be unaware that observed data contains hidden information. This is quite unlike cryptography, where an interceptor is normally fully aware that data is being communicated because they can see the ciphertext. Their problem in this case is that they cannot determine what data the ciphertext represents.

Cryptography and steganography are used in quite different applications. They can also be used together. In this case, steganography can be used to hide a ciphertext. This creates two layers of security:

1. The first layer, steganography, tries to hide the fact that a ciphertext exists in the first place.
2. In the event that this use of steganography is detected and the ciphertext is found, the second layer, cryptography, prevents the plaintext from being known.

We will not discuss steganography any further in this book. While it does potentially have niche applications, and might in some cases be regarded as a potential threat to an information system, steganography is rarely employed to secure information systems.

## 数学代写|密码学作业代写Cryptography代考|Access control

There are, in fact, three different approaches that can be taken to providing data confidentiality. The one we are most interested in is encryption, since this provides protection independently of the location where the data resides. As we have just seen, steganography relies on ‘hiding’ the data. A third approach is to control access to the (unencrypted) data. Access control is a major topic in its own right. Indeed, much of our data is not protected through the use of encryption, but rather through access control mechanisms on computers that use a combination of software and hardware techniques to prevent unauthorised users from accessing data.

Encryption can be regarded as a means of implementing a type of access control where only those with access to the appropriate decryption key can access protected data. However, they are normally separate mechanisms. Indeed, just as we saw for steganography, they can be used together to provide two separate layers of security. Access control can be used to restrict access to data, which is itself encrypted. Thus, an attacker who manages to get around the access control mechanism only manages to retrieve encrypted data.

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

## 数学代写|密码学作业代写Cryptography代考|Types of attack

statistics-lab™ 为您的留学生涯保驾护航 在代写密码学Cryptography方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写密码学Cryptography代写方面经验极为丰富，各种代写密码学Cryptography相关的作业也就用不着说。

## 数学代写|密码学作业代写Cryptography代考|Types of attack

Risks to information can be assessed by identifying different types of possible attack that can be attempted. These attacks are often classified by the type of action that an attacker is able to perform.
PASSIVE ATTACKS
The main type of passive attack is unauthorised access to data. This is a passive process in the sense that the data and the processes being conducted on that data remain unaffected by the attack. Note that a passive attack is often likened to ‘stealing’ information. However, unlike stealing physical goods, in most cases theft of data still leaves the owner in possession of that data. As a result, information theft may go unnoticed by the owner. Indeed, it may even be undetectable.
ACTIVE ATTACKS
An active attack involves either data being changed in some way, or a process being conducted on the data. Examples of active attacks include:

• unauthorised alteration of data;
• unauthorised deletion of data;
• unauthorised transmission of data;
• unauthorised tampering with the origin of data;
We will see that cryptography can be used as a tool to help prevent most passive and active attacks. A notable exception is denial of service. There is very little protection that cryptography can provide against this type of attack. Defence against denial of service normally requires security controls in other parts of the security infrastructure.

## 数学代写|密码学作业代写Cryptography代考|Security risks for a simple scenario

We now examine a very simple communication scenario and consider what security risks might exist. The simple scenario depicted in Figure 1.1 features a sender (who in the cryptographic world is often called Alice) and a receiver (who is usually called $B o b$ ). Alice wishes to transmit some information in an email to Bob. If Alice and Bob are to have any assurances about the security of the email they have just exchanged, then they should ask themselves some serious questions.

For example, Alice might ask herself:

• Am I happy that anyone could read this email, or do I only want Bob to see it?
• How can I make sure that my email reaches Bob without being changed?
• Am I prepared (or allowed) to take any measures to protect my email before I send it?
• How can I have confidence that this email actually came from Alice?
• Can I be sure that this is the email Alice intended to send me?
• Is it possible that Alice could deny in the future that she sent me this email?
This simple communication scenario (or variations thereof) is one we will regularly return to when we consider different types of cryptographic mechanisms. However, it is important to realise that not all applications of cryptography conform to this simple communication scenario. For example, we may need to secure:
• a broadcast environment, where one sender is streaming data to a large number of receivers;
• a data storage environment, which may not have an obvious recipient.
At this stage, it suffices to appreciate that there are other basic scenarios that each come with their own players and security risks.

# 密码学代写

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

## 数学代写|密码学作业代写Cryptography代考|History of Cryptography from the 1800s

statistics-lab™ 为您的留学生涯保驾护航 在代写密码学Cryptography方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写密码学Cryptography代写方面经验极为丰富，各种代写密码学Cryptography相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

## 数学代写|密码学作业代写Cryptography代考|The Vernam Cipher

The Vernam cipher is a type of one-time pad (Mollin 2000). The concept behind a one-time pad is that the plain text is somehow altered by a random string of data so that the resulting cipher text is truly random. Gilbert Vernam (April 3, 1890 to February 7,1960 ) proposed a stream cipher that would be used with teleprinters. It would combine character by character a prepared key that was stored on a paper tape, with the characters of the plain text to produce the cipher text. The recipient would again apply the key to get back the plain text.

In 1919 Vernam patented his idea (US Patent 1,310,719). In Vernam’s method he used the binary XOR (exclusive OR) operation applied to the bits of the message. We will be examining binary operations including XOR, in more detail in Chap. 4 . To truly be a one-time pad, by modern standards, a cipher needs two properties. The first is suggested by the name: the key is only used once. After a message is enciphered with a particular key, that key is never used again. This makes the one-time pad quite secure but also very impractical for ongoing communications such as one encounters in e-commerce. The second property is that the key be as long as the message. That prevents any patterns from emerging in the cipher text. It should be noted that Vernam also patented three other cryptographic inventions: US Patent $1,416,765$; US Patent 1,584,749; and US Patent 1,613,686.

One-time pads are still used for communications today, but only for the most sensitive communications. The keys must be stored in a secure location, such as a safe, and used only once for very critical messages. The keys for modern one-time pads are simply strings of random numbers sufficiently large enough to account for whatever message might be sent.

Contrary to popular misconceptions, the Enigma is not a single machine, but rather a family of machines. The first version was invented by German engineer Arthur Scherbius toward the end of World War I. It was also used by several different militaries, not just the Nazi Germans. Some military texts encrypted using a version of Enigma were broken by Polish cryptanalysts: Marian Rejewski, Jerzy Rozycki, and Henryk Zygalski. The three basically reverse engineered a working Enigma machine. The team then developed tools for breaking Enigma ciphers, including one tool named the cryptologic bomb.

The core of the Enigma machine was the rotors. These were disks that were arranged in a circle with 26 letters on them. The rotors where lined up. Essentially each rotor represented a different single-substitution cipher. You can think of the Enigma as a sort of mechanical poly-alphabet cipher. The operator of the Enigma machine would be given a message in plain text, and then type that message into Enigma. For each letter that was typed in, Enigma would provide a different cipher text based on a different substitution alphabet. The recipient would type in the cipher text, getting out the plain text, provided both Enigma machines had the same rotor settings. Figure 2.2 is a picture of an enigma machine.

## 数学代写|密码学作业代写Cryptography代考|The NSA: The Early Years

It is impossible to discuss the history of cryptography without some discussion of the history of the US National Security Agency. Today they are a large organization and are often reported to be the single largest employer of mathematicians, anywhere in the world. The history of cryptography in the latter half of the twentieth century, and beyond, is closely intertwined with the history of the NSA.

While the NSA formally was founded in 1952, there were many precursors to it. As early as 1919, the US Department of State created the Cipher Bureau, often simply called the “Black Chamber.” The Black Chamber operated in an office in Manhattan, and its main purpose was to crack the communications of foreign governments. They persuaded Western Union to allow them to monitor telegraphs transmitted by Western Union customers. The group had significant initial successes but was shut down in 1929 by the Secretary of State. He felt that spying was not a gentlemanly or honorable activity.

In 1924 the US Navy formed its Radio Intelligence office with the purpose of developing intelligence from monitoring radio communications. By 1942 the US Army renamed its Signal Intelligence Service, as Signal Security Service. At this time, the various military branches had their own initiatives on communications, radio intelligence, and cryptography, and cooperation was at a minimum.

In 1949 the various military agencies coordinated cryptology activities with a new, centralized organization named the Armed Forces Security Agency. This agency was part of the Department of Defense, rather than a specific branch of the military. In 1951, President Harry Truman set up a panel to investigate the shortcomings of the AFSA. Among those shortcomings was the failure to predict the outbreak of the Korean War. From this investigation came the National Security Agency. President Truman issued a classified directive entitled “Communications Intelligence Activities” that, among other things, established the NSA.

For much of its early history, the existence of the NSA was not acknowledged. This led to those who did know, jokingly referring to the NSA as “No Such Agency.” Obviously, the history of any intelligence agency is not completely public. But let’s examine some highlights that are.

After World War II, Soviet encryption was unbreakable and thus posed a significant issue for US Intelligence agencies. This fact, coupled with the discovery of Soviet Spies in various western governments, lead to a renewed emphasis on signals intelligence (SIGINT) and cryptanalysis.

The NSA had two primary roles. The first being to be able to monitor and decipher the communications of other nations. This would enable the gathering of important intelligence. The second being the protection of US communications from other nations eavesdropping. This led the NSA to develop a standard now known as TEMPEST, an acronym for Transient Electromagnetic Pulse Emanation Standard. This standard applies to both equipment used and to deployment and configuration of communications equipment.

During the cold war, the NSA grew and had some significant successes. As one prominent example, in 1964 the NSA intercepted and decrypted communications regarding China’s first nuclear weapon test. There were many others; some are still classified today. In recent years The Washington Times reported that NSA programs have foiled terrorist plots in over 20 different countries. We will see the NSA again in later chapters, particularly when we study modern cryptographic ciphers such as DES and AES in Chaps. 6 and 7 and then when we discuss cryptographic backdoors in Chap. 18.

# 密码学代写

## 数学代写|密码学作业代写Cryptography代考|The Vernam Cipher

Vernam 密码是一种一次性密码本 (Mollin 2000)。一次性一密背后的概念是纯文本以某种方式被随机数据串改变，因此生成的密文是真正随机的。Gilbert Vernam（1890 年 4 月 3 日至 1960 年 2 月 7 日）提出了一种用于电传打字机的流密码。它将一个字符一个字符地组合，一个存储在纸带上的准备好的密钥，与纯文本的字符产生密文。收件人将再次应用密钥以取回纯文本。

1919 年，Vernam 为他的想法申请了专利（美国专利 1,310,719）。在 Vernam 的方法中，他使用了应用于消息位的二进制 XOR（异或）运算。我们将在第 1 章中更详细地研究包括 XOR 在内的二进制操作。4. 要真正成为一次性一密本，按照现代标准，密码需要两个属性。第一个由名称建议：密钥仅使用一次。在使用特定密钥对消息进行加密后，该密钥将不再使用。这使得一次性一卡通非常安全，但对于正在进行的通信（例如在电子商务中遇到的人）来说也非常不切实际。第二个属性是密钥与消息一样长。这可以防止任何模式出现在密文中。值得注意的是，Vernam 还为其他三项密码学发明申请了专利：美国专利1,416,765; 美国专利 1,584,749；和美国专利 1,613,686。

Enigma 机器的核心是转子。这些圆盘排列成一个圆圈，上面有 26 个字母。转子排成一行。本质上，每个转子代表一个不同的单替换密码。您可以将 Enigma 视为一种机械多字母密码。Enigma 机器的操作员将收到一条纯文本消息，然后将该消息输入 Enigma。对于输入的每个字母，Enigma 都会根据不同的替代字母表提供不同的密文。如果两台 Enigma 机器的转子设置相同，接收者将输入密文，得到明文。图 2.2 是谜机的图片。

## 数学代写|密码学作业代写Cryptography代考|The NSA: The Early Years

1924 年，美国海军成立了无线电情报办公室，目的是通过监视无线电通信来开发情报。到 1942 年，美国陆军将其信号情报处更名为信号安全处。此时，各军种在通信、无线电情报、密码学等方面各有各的倡议，合作也处于最低限度。

1949 年，各种军事机构与一个名为武装部队安全局的新的中央组织协调密码学活动。该机构是国防部的一部分，而不是军队的一个特定部门。1951 年，哈里杜鲁门总统成立了一个小组来调查 AFSA 的缺点。这些缺点之一是未能预测朝鲜战争的爆发。来自这项调查的是国家安全局。杜鲁门总统发布了一项名为“通信情报活动”的机密指令，除其他外，该指令还建立了美国国家安全局。

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

## 数学代写|密码学作业代写Cryptography代考|History of Cryptography to the 1800s

statistics-lab™ 为您的留学生涯保驾护航 在代写密码学Cryptography方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写密码学Cryptography代写方面经验极为丰富，各种代写密码学Cryptography相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

## 数学代写|密码学作业代写Cryptography代考|Affne Ciphers

Affine ciphers are any single-substitution alphabet ciphers (also called monoalphabet substitution) in which each letter in the alphabet is mapped to some numeric value, permuted with some relatively simple mathematical function, and then converted back to a letter. For example, using the Caesar cipher, each letter is converted to a number, shifted by some amount, and then converted back to a letter. The basic formula for any affine cipher is
$$a x+b(\bmod m)$$
$M$ is the size of the alphabet-so in English that would be 26 . The $x$ represents the plain text letter’s numeric equivalent, and the $b$ is the amount to shift. The letter $a$ is some multiple-in the case of the Caesar cipher, $a$ is 1 . So, the Caesar cipher would be
$$1 x+3(\bmod 26)$$
What has been presented thus far is rather simplified. To use an affine cipher, you need to pick the value a so that it is coprime with $\mathrm{m}$. We will explore coprime in more detail later in this book. However, for now simply understand that two numbers are coprime if they have no common factors. For example, the number 8 has the factors 2 and 4 . The number 9 has the factor 3 . Thus, 8 and 9 have no common factors and are coprime. If you don’t select a and $\mathrm{m}$ that are coprime, it may not be possible to decrypt the message.

Continuing with a simplified example (ignoring the need for coprime a and $\mathrm{m}$ ), you could obviously use any shift amount you want, as well as any multiplier. The $a x$ value could be $1 x$, as with Caesar, or it could be $2 x, 3 x$, or any other value. For example, let’s create a simple Affine cipher:
$$2 x+4(\bmod 26)$$
To encrypt the phrase Attack at dawn, we first convert each letter to a number and then multiply that number by 2 and calculate that result $\equiv 6$. So, $A$ is 1,2 multiplied by 1 is still 2 , add 54 , gives us $6 \bmod 26$ yielding 6 , or $F$.

## 数学代写|密码学作业代写Cryptography代考|Vigenère

Perhaps the most widely known multi-alphabet cipher is the Vigenère cipher. This cipher was first described in 1553 by Giovan Battista Bellaso, though it is misattributed to nineteenth-century cryptographer Blaise de Vigenère (Singh 2000). It is a method of encrypting alphabetic text by using a series of different mono-alphabet ciphers selected based on the letters of a keyword. Bellaso also added the concept of using any keyword, thereby making the choice of substitution alphabets difficult to calculate. Essentially, the Vigenère cipher uses the tabula recta with a keyword. So, let us assume you have the word book, and you wish to encrypt it. You have a keyword for encryption, that keyword is $\operatorname{dog}$. You would like up the first letter of your plaintext, $b$ on the left-hand side of the tabula recta, with the first letter or your keyword $d$ on the top. The first letter of your cipher text is then $e$. Then you take the second letter of your plaintext, $o$, and line it up with the second letter of the keyword, also $o$, producing the second letter of your cipher text, $c$. The next o in book will line up with the $\mathrm{g}$ in dog, producing $\mathrm{u}$. Now that you have reached the end of your keyword, you start over at d. So, the $k$ in book is lined up with the $d$ in dog, producing the last letter of your cipher text, which is $n$. Thus, using Vigenère, with the keyword dog, the plaintext book becomes the cipher text ecun.

For many years, Vigenère was considered very strong-even unbreakable. However, in the nineteenth century, Friedrich Kasiski published a technique for breaking the Vigenère cipher. We will revisit that when we discuss cryptanalysis later in this book. It is important that you get accustomed to mathematical notation. Here, using $P$ for plain text, $C$ for cipher text, and $K$ for key, we can view Vigenère very similarly to Caesar, with one important difference: the value $K$ changes.
$$\mathrm{Ci}=\mathrm{Pi}+\mathrm{Ki}(\bmod 26)$$
The $i$ denotes the current key with the current letter of plain text and the current letter of cipher text. Note that many sources use $M$ (for message) rather than $P$ (for plain text) in this notation. Let us assume the word you wish to:

A variation of the Vigenère, the running key cipher, simply uses a long string of random characters as the key, which makes it even more difficult to decipher.

# 密码学代写

## 数学代写|密码学作业代写Cryptography代考|Affne Ciphers

$$a x+b(\bmod m)$$
$M$ 是字母表的大小一一所以在英语中是 26 。这 $x$ 代表纯文本字母的数字等价物，而 $b$ 是要移动的量。这 封信 $a$ 是一些倍数一一在凯撒密码的情况下， $a$ 是 1 。所以，凯撒密码将是
$$1 x+3(\bmod 26)$$

$$2 x+4(\bmod 26)$$

## 数学代写|密码学作业代写Cryptography代考|Vigenère

$$\mathrm{Ci}=\mathrm{Pi}+\mathrm{Ki}(\bmod 26)$$

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。

## CS7530 Cryptography课程简介

Cryptographic schemes are used to protect sensitive information and to ensure the integrity and authenticity of communications. Here are some of the most commonly used cryptographic schemes and their applications:

1. AES (Advanced Encryption Standard) – AES is a symmetric encryption algorithm used to protect data in transit or at rest. It is widely used in applications such as file encryption, email encryption, and VPNs. AES works by transforming plaintext into ciphertext using a secret key, which is used to encrypt and decrypt the data.
2. CBC (Cipher Block Chaining) – CBC is a mode of operation for block ciphers, such as AES. CBC works by breaking the plaintext into blocks and encrypting each block using the previous block’s ciphertext as an input. This ensures that the same plaintext block does not always result in the same ciphertext block, making the encryption more secure.

## PREREQUISITES

No previous knowledge of cryptography is necessary. This course is about applying theory to practical problems, but it is still a theory course. The main requirement is basic “mathematical maturity”. You have to be able to read and write mathematical definitions, statements and proofs.

It is expected that you were successful in your undergraduate discrete math class and took basic algorithms and computability/complexity theory classes. In particular, you have to know how to measure the running time of an algorithm and how to do proofs by contradiction and contraposition. You also have to know the basics of probability theory and modular arithmetic. You should also have familiarity with Python for the coding portions of the course.

If you cannot recall what terms like permutation, sample space, random variable, conditional probability, big-O notation mean, you should consider taking the course in a later semester and refresh your knowledge of the above topics in the meanwhile. I recommend you review an undergraduate textbook on discrete math.
All necessary elements of number theory will be presented during the course.

## CS7530 Cryptography HELP（EXAM HELP， ONLINE TUTOR）

(1) Construct a binary expansion and a NAF binary expansion for $n=917$.
(2) Construct a $\tau$-adic expansion for 917 for the elliptic curve given by
$$E: y^2+x y=x^3+x^2+1 \text { over } \mathbb{F}_{2^k}$$
where $\tau$ represents the endomorphism generated by the frobenius map $\phi_2$ for $\mathbb{F}_2$.
(3) Consider an elliptic curve over $\mathbb{F}_q$ where $q \approx 2^{160}$. Instead of choosing my scalar multiple at random (in ECDH, ECDSA or the like), I choose an integer which has a sparse binary representation, say on average only 1 out of every 10 bits is a 1 . I claim this is more efficient than using NAF.
(a) Is this claim true?
(b) Is there any loss of true security in using this approach?

(1) To construct a binary expansion for $n=917$, we divide it by 2 and write down the remainder until we get to 0. We have:

917 = 2 \times 458 + 1917=2×458+1 458 = 2 \times 229 + 0458=2×229+0 229 = 2 \times 114 + 1229=2×114+1 114 = 2 \times 57 + 0114=2×57+0 57 = 2 \times 28 + 157=2×28+1 28 = 2 \times 14 + 028=2×14+0 14 = 2 \times 7 + 014=2×7+0 7 = 2 \times 3 + 17=2×3+1 3 = 2 \times 1 + 13=2×1+1 1 = 2 \times 0 + 11=2×0+1

So $917$ in binary is $1110010101$.

To construct a non-adjacent form (NAF) binary expansion for $n=917$, we start by writing down the binary expansion of $n$ and then applying the following algorithm:

• If the last two digits are $11$, subtract 1.
• If the last two digits are $10$, add 1.
• If the last two digits are $01$, subtract 1.
• If the last two digits are $00$, write down a 0.

We continue this process until we get to 0. We have:

917 = 2^9 + 2^6 + 2^5 + 2^3 + 2^0917=29+26+25+23+20

So the NAF binary expansion of $917$ is $100101011$.

(2) To construct a $\tau$-adic expansion for $917$ on the elliptic curve $E: y^2+xy=x^3+x^2+1$ over $\mathbb{F}{2^k}$, we first compute the Frobenius endomorphism $\phi_2$ of $\mathbb{F}{2^k}$, which is given by $\phi_2(x) = x^2$. Then we apply the following algorithm:

• Write down $917$ in binary.
• Start with the least significant bit and work your way up to the most significant bit.
• If the bit is 0, multiply by 2.
• If the bit is 1, multiply by $\tau = \phi_2 – [1]$, where $[1]$ is the point at infinity.

We have:

917 = 2^9 + 2^6 + 2^5 + 2^3 + 2^0917=29+26+25+23+20

So the $\tau$-adic expansion of $917$ on $E$ is:

917 = [(\phi_2 – [1])^9](0) + [(\phi_2 – [1])^6](0) + [(\phi_2 – [1])^5](0) + [(\phi_2 – [1])^3](0) + [(\phi_2 – [1])^0](0)917=[(ϕ2​−[1])9](0)+[(ϕ2​−[1])6](0)+[(ϕ2​−[1])5](0)+[(ϕ2​−[1])3](0)+[(ϕ2​−[1])0](0)

= [(\phi_2^9 – 9\phi_2^8 + 36\phi_2^7 – 84\phi_2^6 + 126\phi_2^5 – 126\phi_2^4 + 84\phi_2^3 – 36\phi_2^2 + 9\phi_2 – 1)](0)=[(ϕ29​−9ϕ28​+36ϕ27​−84ϕ26​+126ϕ25​−126ϕ24​+84ϕ23​−36ϕ22​+9ϕ2​−1)](0)

Recall that the number of operations on average required to solve a discrete log instance on an elliptic curve of size $N$ using Pollard-rho is $\sqrt{\pi N / 2}$. We will say that the discrete logarithm problems on two elliptic curves have the same complexity if the number of elliptic curve operations required to solve the ECDLP on both using Pollard-rho is essentially the same.
(1) If a curve has a trivially computable automorphism of order $m$, how much larger must the resulting group be than one without any such automorphisms for the two problems to have the same complexity?
(2) In particular, if we consider binary anomalous curves (i.e. Koblitz curves) over $\mathbb{F}_{2^n}$, what size binary field (using a non-Koblitz curve) gives the same complexity?
(3) Why are the above arguments/definition not entirely “perfect”? How close are they?

(1) If a curve has a trivially computable automorphism of order $m$, then we can reduce the ECDLP on that curve to the ECDLP on a smaller curve of size $\frac{1}{m}$ times the size of the original curve. Therefore, the group size of the original curve needs to be $\frac{m^2}{2\pi}$ times larger than the group size of the smaller curve for the two problems to have the same complexity. This can be seen from the fact that the number of elliptic curve operations required to solve the ECDLP on a curve of size $N$ using Pollard-rho is approximately $\sqrt{\pi N / 2}$, so the number of operations required for a curve of size $\frac{N}{m}$ is approximately $\sqrt{\pi N / 2}/m$.

(2) For binary anomalous curves over $\mathbb{F}_{2^n}$, the group size is approximately $2^n$, and the order of the Frobenius endomorphism is $2^n+1-t$, where $t$ is a small integer. Therefore, if we choose a non-Koblitz curve over a binary field of size $q$, then the group size is approximately $q$, and the order of the Frobenius endomorphism is $q+1-t$. The two problems have the same complexity when $\frac{(2^n)^2}{2\pi} \approx \frac{q^2}{2\pi}\frac{(q+1-t)^2}{2\pi}$. Solving for $q$, we get:

q \approx 2^{\frac{n}{2}}(2^n+1-t)^{\frac{1}{2}}q≈22n​(2n+1−t)21​

(3) The above arguments/definition are not entirely “perfect” because they assume that the complexity of the ECDLP on a curve is determined solely by the size of the group, which is not always the case. For example, some curves may have a large group size but a small embedding degree, which can make them vulnerable to attacks using the number field sieve. Additionally, the complexity of the ECDLP can depend on the specific algorithm used to solve it, and not just on the size of the group. However, these arguments/definition provide a reasonable approximation of the complexity of the ECDLP on different curves, and are often used in practice to compare the security of different elliptic curves.

## Textbooks

• An Introduction to Stochastic Modeling, Fourth Edition by Pinsky and Karlin (freely
available through the university library here)
• Essentials of Stochastic Processes, Third Edition by Durrett (freely available through
the university library here)
To reiterate, the textbooks are freely available through the university library. Note that
you must be connected to the university Wi-Fi or VPN to access the ebooks from the library
links. Furthermore, the library links take some time to populate, so do not be alarmed if
the webpage looks bare for a few seconds.

Statistics-lab™可以为您提供kennesaw.edu CS7530 Cryptography密码学的代写代考和辅导服务！ 请认准Statistics-lab™. Statistics-lab™为您的留学生涯保驾护航。

## 数学代写|密码学作业代写Cryptography代考|CISS3341

statistics-lab™ 为您的留学生涯保驾护航 在代写密码学Cryptography方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写密码学Cryptography代写方面经验极为丰富，各种代写密码学Cryptography相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

## 数学代写|密码学作业代写Cryptography代考|MESSAGING PROTOCOLS

A messaging protocol must be able to deal with three processes: Establishing a state for a conversation, encrypting messages and decrypting messages. We shall use stateful encryption, something that we wanted to avoid in Chapters 7 and 8 , but which now will be needed. Also, we must generate keys.

For convenience, the definition of messaging protocols comes in two parts: the algorithms and the correctness requirement, with some notation in between. Correctness essentially implies that if two parties running the protocol agree on the context for the conversation and what they have sent and received through the network, they will also agree on the messages sent and received.
Definition 13.1. A basic messaging protocol $\mathrm{SM}=\left(\mathfrak{P}, \mathfrak{F}, \mathcal{K}, \mathcal{H}, \mathcal{E}_m, \mathcal{D}_m\right)$ consists of a set of plaintexts $\mathfrak{F}$, a set of associated data $\mathfrak{F}$, and four algorithms:

• The key generation algorithm $\mathcal{K}$ takes no input and outputs a public key $p k$ and a secret key $s k$.
• The interactive handshake algorithm $\mathcal{H}$ takes as input a role $\rho \in{0,1}$, associated data $a d$, a key pair $\left(p k_\rho, s k_\rho\right)$ and a public key $p k_{1-\rho}$. It alternates between sending and receiving signals, initially sending if $\rho=$ 0 , otherwise initially receiving. Eventually, it either outputs a state st or the special symbol $\perp$ signifying failure.
• The encryption algorithm $\mathcal{E}_m$ takes as input a secret key sk, a state st, per-message associated data $a d^m$ and a message $m \in \mathfrak{P}$, and outputs either the special symbol $\perp$, or a state $s t^{\prime}$ and a ciphertext $c$.
• The decryption algorithm $\mathcal{D}_m$ takes as input a secret key sk, a state $s t$, per-message associated data $a d^m$ and $c$. It outputs either the special symbol $\perp$, or a state $s t^{\prime}$ and a message $m \in \mathfrak{F}$.

The algorithms may also output $\perp$, and they will if given an input state $\perp$.
An instance of SM with role $\rho$, associated data ad, key pair $\left(p k_\rho, s k_\rho\right)$ and $p k_{1-\rho}$ is described by signals $\hat{c}1, \hat{c}_2, \ldots, \hat{c}{\hat{l}}$, events $\left(\rho_i, a d_i^m, m_i, c_i\right), i=$ $1,2, \ldots, l$, and states $s t_0, s t_1, \ldots, s t_l$, where

• $\mathcal{H}$ with input $\left(\rho, a d, p k_\rho, s k_\rho, p k_{1-\rho}\right)$ sends/receives (receives/sends) the signals $\hat{c}1, \hat{c}_2, \ldots, \hat{c}{\hat{l}}$ and outputs the state $s t_0$;
and for $i=1,2, \ldots, l$ we have either
• $\rho_i=\rho$ and $\mathcal{E}m\left(s k, s t{i-1}, a d_i^m, m_i\right)$ output $\left(s t_i, c_i\right)$ (encryption); or
• $\rho_i=1-\rho$ and $\mathcal{D}m\left(s k, s t{i-1}, a d_i^m, c_i\right)$ output $\left(s t_i, m_i\right)$ (decryption).

## 数学代写|密码学作业代写Cryptography代考|Practical Mathematical Cryptography

We shall consider four examples. The first two examples are channel protocols. We studied a variant of the first example in Section 7.4. The second example uses session key evolution to achieve stronger security in some contexts.
The third example is a natural combination of public key encryption and digital signatures, which we looked at in Section 9.4. It is our first messaging protocol. In some sense, this example is very similar to the first example.
The fourth example is another natural combination of a key exchange scheme and a channel protocol. Depending on which channel protocol we use, the composition is either suitable for short-lived or longer-lived instances.
The third and fourth examples use compositional constructions, where simpler constructions are composed to form new constructions. As previously mentioned, composition seems very natural, but can be quite subtle. Security properties do not compose nicely in general, but sometimes they do.

Channel As we saw in Section 7.4 there are a number of ways to realise a channel protocol. The following example is probably the simplest possible method. The channel protocol simply encrypts any message with the symmetric cryptosystem, encoding the sender and its order in the associated data. The recipient encodes its belief about the sender and the sender’s order in the associated data it uses. It does not achieve any kind of security if more than one instance uses the same role, the same key and the same associated data.
Example 13.2. Let $\Sigma=\left(\mathfrak{K}_s, \mathfrak{P}, \mathfrak{F}_0, \mathfrak{C}, \mathcal{E}_s, \mathcal{D}_s\right)$ be a symmetric cryptosystem, with ${0,1} \times \mathbb{Z} \times \mathfrak{F} \times \mathfrak{F} \subseteq \mathfrak{F}_0$. The channel is SC-SYM $=\left(\mathfrak{P}, \mathfrak{F}, \mathfrak{K}_s, \mathcal{H}, \mathcal{E}_m, \mathcal{D}_m\right)$, where the algorithms all take the key $k$ and state $\left(\rho, a d, j, j^{\prime}\right) \in{0,1} \times \mathfrak{F} \times$ $\mathbb{Z} \times \mathbb{Z}$ as input, and work as follows:

• The encryption algorithm $\mathcal{E}_m$ also takes $a d^m$ and $m$ as input, computes $c \leftarrow \mathcal{E}_s\left(k,\left(\rho, j, a d, a d^m\right), m\right)$ and outputs $\left(\rho, a d, j+1, j^{\prime}\right)$ and $c$.
• The decryption algorithm $\mathcal{D}_m$ also takes $a d^m$ and $c$ as input and computes $m \leftarrow \mathcal{D}_s\left(k,\left(\rho, j^{\prime}, a d, a d^m\right), c\right)$. If $m=\perp$, the algorithm outputs $\perp$. Otherwise, it outputs $\left(\rho, a d, j, j^{\prime}+1\right)$ and $m$.
This is a simple channel and $\mathcal{H}(\rho, a d, k)$ outputs the state $(\rho, a d, 0,0)$.
This causal order of this channel is the minimal causal order, since the two directions are treated independently.

# 密码学代写

## 数学代写|密码学作业代写Cryptography代考|MESSAGING PROTOCOLS

• 密钥生成算法 $\mathcal{K}$ 不接受输入并输出公钥 $p k$ 和一把秘钥 $s k$.
• 交互式握手算法 $\mathcal{H}$ 将角色作为输入 $\rho \in 0,1$, 关联数据 $a d_r$ 一对密钥 $\left(p k_\rho, s k_\rho\right)$ 和一个公钥 $p k_{1-\rho}$. 它在发送和接收信号之间交替，如果 $\rho=0$ ，否则最初接收。最终，它要么输出状态 st，要么输出 特殊符号上表示失败。
• 加密算法 $\mathcal{E}_m$ 将密钥 sk、状态 st、每条消息关联的数据作为输入 $a d^m$ 和一条消息 $m \in \mathfrak{P}$, 并输出特 殊符号上，或者一个状态 $s t^{\prime}$ 和密文 $c$.
• 解密算法 $\mathcal{D}m$ 将密钥 sk 作为输入，一个状态 $s t$, 每条消息关联数据 $a d^m$ 和 $c$. 它输出特殊符号, 或 者一个状态 $s t^{\prime}$ 和一条消息 $m \in \mathfrak{F}$. 算法也可能输出 ，如果给定一个输入状态，他们就会. 具有角色的 SM 实例 $\rho$ ，关联数据广告，密钥对 $\left(p k\rho, s k_\rho\right)$ 和 $p k_{1-\rho}$ 由信号描述 $\hat{c} 1, \hat{c}_2, \ldots, \hat{c} \hat{l}$ ，事件 $\left(\rho_i, a d_i^m, m_i, c_i\right), i=1,2, \ldots, l$, 和状态 $s t_0, s t_1, \ldots, s t_l$ ， 在哪里
• $\mathcal{H}$ 有输入 $\left(\rho, a d, p k_\rho, s k_\rho, p k_{1-\rho}\right.$ )发送/接收 (接收/发送) 信号 $\hat{c} 1, \hat{c}_2, \ldots, \hat{c} \hat{l}$ 并输出状态 $s t_0$ ； 并为 $i=1,2, \ldots, l$ 我们要么
• $\rho_i=\rho$ 和 $\mathcal{E} m\left(s k, s t i-1, a d_i^m, m_i\right)$ 输出 $\left(s t_i, c_i\right)$ (加密) ; 或者
• $\rho_i=1-\rho$ 和 $\mathcal{D} m\left(s k, s t i-1, a d_i^m, c_i\right)$ 输出 $\left(s t_i, m_i\right)$ (解密)。

## 数学代写|密码学作业代写Cryptography代考|Practical Mathematical Cryptography

• 加密算法 $\mathcal{E}_m$ 也需要 $a d^m$ 和 $m$ 作为输入，计算 $c \leftarrow \mathcal{E}_s\left(k,\left(\rho, j, a d, a d^m\right), m\right)$ 和输出 $\left(\rho, a d, j+1, j^{\prime}\right)$ 和 $c$. 法输出 $\perp$. 否则，它输出 $\left(\rho, a d, j, j^{\prime}+1\right)$ 和 $m$.
这是一个简单的频道 $\mathcal{H}(\rho, a d, k)$ 输出状态 $(\rho, a d, 0,0)$.
此通道的因果顺序是最小因果顺序，因为两个方向是独立处理的。

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。