小编Afi*_*ir 的帖子

使用Python代码进行离散对数计算的问题

我有一组对数,分别是L1,L2和L3,我已从此处的论文《超安全路由器到路由器自发密钥交换系统》(2015)中检索。本文的目的是在Alice和Bob之间安全地共享密钥。例如,爱丽丝发送K = 46给鲍勃。鲍勃从爱丽丝那里收到了钥匙。密钥可以表示为:

在此处输入图片说明

密钥需要使用三个阶段的过程来共享。L1:爱丽丝与鲍勃。L2:鲍勃到爱丽丝。L3:爱丽丝与鲍勃,方程为:

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

鲍勃可以使用以下方法评估密钥: 在此处输入图片说明

这是方程式的结果: 在此处输入图片说明

鉴于值alpha = 5x = 15p = 97。在Python中实现它之后,我得到了错误的结果,该结果与表中的结果不同:

a=5
x=15
p=97
i1=0.958478
i2=4.238835

L1=a**(x+i1)%p
L2=a**(x+i1+i2)%p
L3=a**(x+i2)%p
K=L3*(a**(-i2))

print ("L1",L1)
print ("L2",L2)
print ("L3",L3)
print ("K",K)
Run Code Online (Sandbox Code Playgroud)

哪个产生这个结果:

L1 55.596893310546875
L2 2.15625
L3 68.87890625
K 0.07503566293789979
Run Code Online (Sandbox Code Playgroud)

另一个问题是我尝试手动计算它,但是结果仍然与表中的结果不同。我希望任何人都可以帮助我。谢谢。

python logarithm

15
推荐指数
1
解决办法
232
查看次数

将等式转换为Python

我有几个方程式,需要将其转换为Python.问题是我试图根据等式绘制图形.但是,我得到的图表与原图不同.

在本文中,MIM攻击的错误概率方程式由下式给出:

第一张图片

屏幕截图

第二张图片

屏幕截图

计算PNS攻击错误概率的公式如下:

屏幕截图

区域条件满足的地方:

屏幕截图

PNS攻击的错误概率应该如下绘制:

屏幕截图

我的问题:如何将公式8.1插入公式8.5?

根据公式8.5,这是我的python代码:

import matplotlib.pyplot as plt
import math
import numpy as np
from scipy.special import iv,modstruve


x=[0, 5, 10, 15, 20]
t= 0.9
x = np.array(x)
y = (np.exp(x*t/2)*(iv(0, x*t/2) - modstruve(0,x*t/2))-1)/(np.exp(x*t/2-1))                                            

plt.plot(x, y, label='Normal')
plt.xlabel('Mean photon number N')
plt.ylabel('Error probabiity')
plt.scatter(x,y)
plt.title('N/2')
plt.ylim([0, 0.5])
plt.legend()
plt.show()
Run Code Online (Sandbox Code Playgroud)

请帮我解决这个问题.

谢谢.

python equation matplotlib scipy

11
推荐指数
1
解决办法
1034
查看次数

标签 统计

python ×2

equation ×1

logarithm ×1

matplotlib ×1

scipy ×1