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

数学代写|密码学代写Cryptography Theory代考|COMSW4261 Diffie-Hellman

avatest™

avatest™帮您通过考试

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

•最快12小时交付

•200+ 英语母语导师

•70分以下全额退款

数学代写|密码学Cryptography Theory代考|Diffie-Hellman

Diffie-Hellman key exchange
Public parameters: $p$ prime, and $\alpha$, a primitive element modulo $p$ which has order $p-1$.

Alice chooses $1 \leq a \leq p-1$ at random and computes
$$A=\alpha^a \quad(\bmod p) \quad \text { and sends A to Bob. }$$

Bob chooses $1 \leq b \leq p-1$ at random and computes
$$B=\alpha^b \quad(\bmod p) \quad \text { and sends B to Alice. }$$

Alice receives $B$ and computes
$$B^a=\alpha^{a b} \quad(\bmod p)$$

Bob received $A$ and computes
$$A^b=\alpha^{a b} \quad(\bmod p)$$

$k=A^b=B^a=\alpha^{a b}(\bmod p)$
Computational Diffie-Hellman problem (CDH)
Given $p$ prime, $\alpha$ a primitive element modulo $p$ and two elements $\beta, \gamma \in \mathbb{Z}p^$ find $\delta \in \mathbb{Z}_p^$ such that
$$\log \alpha \delta \equiv \log \alpha \beta \times \log \alpha \gamma \quad(\bmod p)$$
That is, given $\alpha^a$ and $\alpha^b$, find $\alpha^{a b}$.
Man in the middle attack
Basic idea
Unfortunately…

Oscar is an active attacker.

Oscar intercepts all messages between Alice and Bob and substitutes his own messages in their place.

At the end of the exchanges Alice has established a secret key with Oscar and Bob has established a secret key with Oscar.

Can this be avoided?

数学代写|密码学Cryptography Theory代考|The ElGamal cryptosystem

Select $p$ prime and $\alpha$, a primitive element modulo $p$.
Cryptosystem 10.

$\mathcal{P}=\mathbb{Z}_p^*$

$\mathcal{C}=\mathbb{Z}_p^* \times \mathbb{Z}_p^*$

$\mathcal{K}=\left{(p, \alpha, a, \beta) \mid \beta \equiv \alpha^a(\bmod p)\right}$

The public key is $p, \alpha$ and $\beta$. The private key is $a$.
Encryption and decryption
For $k=(p, \alpha, a, \beta) \in \mathcal{K}$ and for a (secret) random number $r \in \mathbb{Z}_{p-1}$ define
$$e_k(x, r)=\left(y_1, y_2\right),$$
where
and
$$y_2=x \beta^r \quad(\bmod p)$$
For $y_1, y_2 \in \mathbb{Z}_p^*$ define
$$d_k\left(y_1, y_2\right)=y_2\left(y_1^a\right)^{-1} \quad(\bmod p)$$
Example
Let $p=107, \alpha=2$ (a primitive element modulo 107). Let $a=63$ so
$$\beta=\alpha^a=2^{63} \quad(\bmod 107)=46$$
Alice wants to send $x=12$ to Bob and selects random number $r=80$; she computes
$$y_1=\alpha^r=2^{80} \quad(\bmod 107)=76$$
and
$$y_2=x \times \beta^r=12 \times 46^{80} \quad(\bmod 107)=44$$
Bob receives $(76,44)$ and computes
$$x=y_2 \times\left(y_1^a\right)^{-1}=44 \times\left(76^{63}\right)^{-1} \quad(\bmod 107)=12$$
as we would expect.
Notice that the encryption operation is randomised. A single plaintext may encrypt to many different ciphertexts depending on the value of $r$. How important is it that a different random number is used each time?

数学代写|密码学理论代考|Diffie-Hellman Diffie-Hellman密钥交换

$$A=alpha^a\quad(\bmod p)\quad\text { 并将A发送给Bob。}$$

Bob随机选择$1 \leq b \leq p-1$并计算出
$$B=alpha^b quad(\bmod p)quad `text { 然后把 B 发送给 Alice。}$$

$$B^a=alpha^{a b} \quad(\bmod p)$$

Bob收到$A$并计算出
$$A^b=alpha^{a b} \quad(\bmod p)$$

$k=A^b=B^a=alpha^{a b}(\bmod p)$

$$\equiv ylog yalpha ybeta ytimes ylog yalpha ygamma yquad(bmod p)$$

Oscar是一个主动攻击者。

数学代写|密码学理论代考|The ElGamal cryptosystem

$\mathcal{P}=\mathbb{Z}_p^*$

$mathcal{C}=\mathbb{Z}_p^* \times \mathbb{Z}_p^*$

$mathcal{K}=left{(p, \alpha, a, \beta) \mid \beta equiv \alpha^a(\bmod p)\right}$

$$e_k(x, r)=left(y_1, y_2\right)。$$

$$y_2=x\beta^r\quad(\bmod p)$$

$$d_k\left(y_1, y_2\right)=y_2\left(y_1^a\right)^{-1} \quad(\bmod p)$$

$$\beta=\alpha^a=2^{63} \quad(\bmod 107)=46$$

$$y_1=alpha^r=2^{80}。\quad(\bmod 107)=76$$

$$y_2=x β^r=12 ÷46^{80}的倍数。\夸父(bmod 107)=44$$
Bob收到$(76,44)$并计算出
$$x=y_2\times\left(y_1^a\right)^{-1}=44 \times\left(76^{63}\right)^{-1}\quad(\bmod 107)=12$$

MATLAB代写

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