Posted on Categories:Cryptography, 密码学, 数学代写

数学代写|密码学代写Cryptography Theory代考|Setting up RSA

如果你也在 怎样密码学Cryptography Theory 这个学科遇到相关的难题,请随时右上角联系我们的24/7代写客服。密码学Cryptography Theory 是对存在对抗行为的安全通信技术的实践和研究。 更广泛地说,密码学是关于构建和分析防止第三方或公众阅读私人信息的协议;信息安全的各个方面,如数据保密性、数据完整性、认证和不可抵赖性是现代密码学的核心。现代密码学存在于数学、计算机科学、电子工程、通信科学和物理学等学科的交叉点。密码学的应用包括电子商务、基于芯片的支付卡、数字货币、计算机密码和军事通信。

密码学Cryptography Theory 在现代很大程度上是基于数学理论和计算机科学实践的;密码学算法是围绕计算硬度假设设计的,这使得这种算法在实际操作中很难被任何对手破解。虽然在理论上有可能破解一个设计良好的系统,但在实际操作中这样做是不可行的。因此,这种方案,如果设计得好,被称为 “计算安全”;理论上的进步(例如,整数分解算法的改进)和更快的计算技术要求这些设计被不断地重新评估,如果有必要的话,要进行调整。信息理论上的安全方案,即使有无限的计算能力也无法被破解,如一次性密码键盘,在实践中比理论上可被破解但计算上安全的最佳方案更难使用。

密码学Cryptography Theory 代写,免费提交作业要求, 满意后付款,成绩80\%以下全额退款,安全省心无顾虑。专业硕 博写手团队,所有订单可靠准时,保证 100% 原创。 最高质量的密码学Cryptography Theory 作业代写,服务覆盖北美、欧洲、澳洲等 国家。 在代写价格方面,考虑到同学们的经济条件,在保障代写质量的前提下,我们为客户提供最合理的价格。 由于作业种类很多,同时其中的大部分作业在字数上都没有具体要求,因此密码学Cryptography Theory 作业代写的价格不固定。通常在专家查看完作业要求之后会给出报价。作业难度和截止日期对价格也有很大的影响。

avatest™帮您通过考试

avatest™的各个学科专家已帮了学生顺利通过达上千场考试。我们保证您快速准时完成各时长和类型的考试,包括in class、take home、online、proctor。写手整理各样的资源来或按照您学校的资料教您,创造模拟试题,提供所有的问题例子,以保证您在真实考试中取得的通过率是85%以上。如果您有即将到来的每周、季考、期中或期末考试,我们都能帮助您!

在不断发展的过程中,avatest™如今已经成长为论文代写,留学生作业代写服务行业的翘楚和国际领先的教育集团。全体成员以诚信为圆心,以专业为半径,以贴心的服务时刻陪伴着您, 用专业的力量帮助国外学子取得学业上的成功。

•最快12小时交付 

•200+ 英语母语导师 

•70分以下全额退款

想知道您作业确定的价格吗? 免费下单以相关学科的专家能了解具体的要求之后在1-3个小时就提出价格。专家的 报价比上列的价格能便宜好几倍。

我们在数学Mathematics代写方面已经树立了自己的口碑, 保证靠谱, 高质且原创的数学Mathematics代写服务。我们的专家在密码学Cryptography Theory 代写方面经验极为丰富,各种密码学Cryptography Theory 相关的作业也就用不着 说。

数学代写|密码学代写Cryptography Theory代考|Setting up RSA

数学代写|密码学Cryptography Theory代考|Setting up RSA

All the real work in RSA occurs during key generation. This should not be surprising since the ‘clever’ part of any public-key cryptosystem is in designing a relationship between two keys which allows one to reverse the effect of the other, while allowing one of them to be publicly known. Note we do not have to be quite so mathematically clever when generating symmetric keys, which ‘just’ requires an ability to randomly generate numbers (see Section 8.1). The wider issues associated with key generation are discussed in more detail in Section 10.3.
GENERATING AN RSAKEYPAIR
We are now ready to generate an RSA key pair. The ‘we’ in this case is anyone who is setting up an RSA key pair. This could be someone generating a key pair for themselves, or a trusted key centre generating a key pair for a client. If we wish to set up a network of users who may want to communicate with one another using RSA, then every user in the network will need to run this key pair generation process, or have the trusted key centre run it for them. We proceed as follows:

Generating the modulus. Let $n$ be the product of two large primes $p$ and $q$. In other words, let $n=p q$. By large, we typically mean a minimum of 512 bits long, preferably even longer. Thus, $p$ and $q$ are very large primes, and $n$ is an even larger number. Finding primes of this size is not straightforward, but there are known processes for generating them. The number $n$ produced in this step is usually referred to as an RSA modulus.

Generating $e$. We select a ‘special’ number $e$. The number $e$ cannot be just any number. For example, it must be greater than 1 and less than $(p-1)(q-1)$. The precise mathematical property that $e$ must have is there must be no numbers dividing neatly into $e$ and into $(p-1)(q-1)$ except for 1 . The mathematical term for this property is that $e$ and $(p-1)(q-1)$ are coprime. Consider the following simple example:

  • Let $p=3$ and $q=7$. In this case, $(p-1)(q-1)=2 \times 6=12$. Any suitable choice of $e$ must have the property there are no numbers neatly dividing into $e$ and 12 , except for 1.
  • $e=2$ is no good, since 2 is a factor of both 2 and 12. For a similar reason, we canalso rule out all multiples of 2 , namely, $e=4, e=6 \cdot e=8$, and $e=10$.
  • $e=3$ is no good, since 3 is a factor of both 3 and 12. For a similar reason, we can also rule out all multiples of 3 , namely, $e=6$ and $e=9$
  • The remaining choices are $e=5, e=7$, and $e=11$. Since in each case there is no number dividing into these choices of $e$ and 12 , other than 1 , all these choices of $e$ are valid.
    Unlike in this ‘toy’ example, for the sizes of $p$ and $q$ we tend to use in real RSA implementations, we will find many numbers less than $(p-1)(q-1)$ which have the right property to be used as $e$.

数学代写|密码学Cryptography Theory代考|Generating the private key

Generating the private key. We compute the private key $d$ from $p, q$, and $e$. The private key $d$ is uniquely determined by the public key $(n, e)$, meaning that given an $n$ and an $e$, there can only ever be one possible value $d$. This is essentially the clever part of RSA, since it is the mathematical relationship between $e$ and $d$ which makes RSA work. We thus have to be precise about how to find this value $d$.

In mathematical terminology, the private key $d$ is the inverse of e modulo $(p-1)(q-1)$ (see the Mathematics Appendix for more details). What this means is that $d$ is the unique number less than $(p-1)(q-1)$ which, when multiplied by $e$, is equal to 1 modulo $(p-1)(q-1)$. Written mathematically (which is much simpler), this relationship is expressed by:
$$
e d=1 \bmod (p-1)(q-1) .
$$
It is sufficient just to accept that, if we choose $e$ correctly, such a $d$ exists and is unique. Conveniently, there is a simple algorithm to compute $d$. This algorithm is known as the Extended Euclidean Algorithm, which takes as input $p, q$, and $e$, and outputs $d$. The Extended Euclidean Algorithm can be computed in polynomial time by anyone who knows $p$ and $q$. However, anyone who does not know $p$ and $q$ cannot run it to find $d$. This is why it is important that $n=p q$ is difficult to factor. If $n$ was easy to factor, then an attacker could compute $p$ and $q$ and then run the Extended Euclidean Algorithm to obtain $d$.

It is worth providing an example of RSA key generation, just to make sure the process is clear. This example will, of course, use numbers which are far too small to be used in practice. Just keep in mind that the primes we use are just six bits long, rather than the thousands of bits long often recommended for RSA implementations.

数学代写|密码学代写Cryptography Theory代考|Setting up RSA

密码学代写

数学代写|密码学Cryptography Theory代考|Setting up RSA

RSA中所有的实际工作都发生在密钥生成过程中。这并不奇怪,因为任何公钥密码系统的“聪明”之处在于设计两个密钥之间的关系,允许一个密钥反转另一个密钥的效果,同时允许其中一个密钥被公开。注意,在生成对称密钥时,我们不需要在数学上如此聪明,这只需要随机生成数字的能力(参见8.1节)。与密钥生成相关的更广泛的问题将在第10.3节中更详细地讨论。
生成rsakepair
现在我们准备好生成RSA密钥对了。在这种情况下,“我们”是建立RSA密钥对的任何人。这可以是某人为自己生成密钥对,也可以是可信的密钥中心为客户端生成密钥对。如果我们希望建立一个使用RSA相互通信的用户网络,那么网络中的每个用户都需要运行这个密钥对生成过程,或者让受信任的密钥中心为他们运行这个过程。我们的程序如下:

生成模数。设$n$是两个大质数$p$和$q$的乘积。换句话说,让$n=p q$。总的来说,我们通常指的是至少512位长,最好更长。因此,$p$和$q$是非常大的质数,$n$是一个更大的数。找到这么大的质数并不简单,但已知的生成质数的过程是存在的。在这个步骤中产生的数字$n$通常被称为RSA模数。

生成$e$。我们选择一个“特殊”号码$e$。数字$e$不能是任意的数字。例如,它必须大于1且小于$(p-1)(q-1)$。$e$必须具有的精确的数学性质是,除了1之外,不能有数字整齐地分成$e$和$(p-1)(q-1)$。这个性质的数学术语是$e$和$(p-1)(q-1)$是互素数。考虑下面这个简单的例子:

让$p=3$和$q=7$。在本例中为$(p-1)(q-1)=2 \times 6=12$。任何合适的$e$选择都必须具有以下属性:除了1之外,没有数字可以整齐地分成$e$和12。

$e=2$ 不行,因为2是2和12的因数。出于类似的原因,我们也可以排除2的所有倍数,即$e=4, e=6 \cdot e=8$和$e=10$。

$e=3$ 不行,因为3是3和12的因数。出于类似的原因,我们也可以排除3的所有倍数,即$e=6$和 $e=9$

剩下的选项是$e=5, e=7$和$e=11$。因为在每种情况下,除了1之外,没有数字可以分成$e$和12这两个选项,所以所有这些$e$选项都是有效的。
与这个“玩具”示例不同,对于我们倾向于在实际RSA实现中使用的$p$和$q$的大小,我们会发现许多小于$(p-1)(q-1)$的数字具有用作$e$的正确属性。

数学代写|密码学Cryptography Theory代考|Generating the private key

生成私钥。我们从$p, q$和$e$计算私钥$d$。私钥$d$由公钥$(n, e)$唯一地确定,这意味着给定$n$和$e$,只能有一个可能的值$d$。这本质上是RSA的聪明之处,因为它是$e$和$d$之间的数学关系,使RSA工作。因此,我们必须精确地找到这个值$d$。

在数学术语中,私钥$d$是e模$(p-1)(q-1)$的倒数(有关详细信息,请参阅数学附录)。这意味着$d$是唯一小于$(p-1)(q-1)$的数,当乘以$e$时,等于1模$(p-1)(q-1)$。用数学方法(更简单)来表示这种关系:
$$
e d=1 \bmod (p-1)(q-1) .
$$
只要承认,如果我们正确地选择$e$,这样的$d$是存在的并且是唯一的,就足够了。方便地,有一个简单的算法来计算$d$。该算法被称为扩展欧几里得算法,它将$p, q$和$e$作为输入,并输出$d$。任何知道$p$和$q$的人都可以在多项式时间内计算扩展欧几里得算法。但是,任何不知道$p$和$q$的人都无法运行它来查找$d$。这就是为什么$n=p q$很难被考虑的原因。如果$n$很容易分解,那么攻击者可以计算$p$和$q$,然后运行扩展欧几里得算法来获得$d$。

有必要提供一个RSA密钥生成的示例,以确保这个过程是清晰的。当然,这个例子使用的数字太小,无法在实践中使用。请记住,我们使用的素数只有6位长,而不是RSA实现中通常推荐的数千位长。

数学代写|密码学代写Cryptography代考

数学代写|密码学代写Cryptography代考 请认准UprivateTA™. UprivateTA™为您的留学生涯保驾护航。

微观经济学代写

微观经济学是主流经济学的一个分支,研究个人和企业在做出有关稀缺资源分配的决策时的行为以及这些个人和企业之间的相互作用。my-assignmentexpert™ 为您的留学生涯保驾护航 在数学Mathematics作业代写方面已经树立了自己的口碑, 保证靠谱, 高质且原创的数学Mathematics代写服务。我们的专家在图论代写Graph Theory代写方面经验极为丰富,各种图论代写Graph Theory相关的作业也就用不着 说。

线性代数代写

线性代数是数学的一个分支,涉及线性方程,如:线性图,如:以及它们在向量空间和通过矩阵的表示。线性代数是几乎所有数学领域的核心。

博弈论代写

现代博弈论始于约翰-冯-诺伊曼(John von Neumann)提出的两人零和博弈中的混合策略均衡的观点及其证明。冯-诺依曼的原始证明使用了关于连续映射到紧凑凸集的布劳威尔定点定理,这成为博弈论和数学经济学的标准方法。在他的论文之后,1944年,他与奥斯卡-莫根斯特恩(Oskar Morgenstern)共同撰写了《游戏和经济行为理论》一书,该书考虑了几个参与者的合作游戏。这本书的第二版提供了预期效用的公理理论,使数理统计学家和经济学家能够处理不确定性下的决策。

微积分代写

微积分,最初被称为无穷小微积分或 “无穷小的微积分”,是对连续变化的数学研究,就像几何学是对形状的研究,而代数是对算术运算的概括研究一样。

它有两个主要分支,微分和积分;微分涉及瞬时变化率和曲线的斜率,而积分涉及数量的累积,以及曲线下或曲线之间的面积。这两个分支通过微积分的基本定理相互联系,它们利用了无限序列和无限级数收敛到一个明确定义的极限的基本概念 。

计量经济学代写

什么是计量经济学?
计量经济学是统计学和数学模型的定量应用,使用数据来发展理论或测试经济学中的现有假设,并根据历史数据预测未来趋势。它对现实世界的数据进行统计试验,然后将结果与被测试的理论进行比较和对比。

根据你是对测试现有理论感兴趣,还是对利用现有数据在这些观察的基础上提出新的假设感兴趣,计量经济学可以细分为两大类:理论和应用。那些经常从事这种实践的人通常被称为计量经济学家。

MATLAB代写

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

Write a Reply or Comment

您的电子邮箱地址不会被公开。 必填项已用 * 标注