我正在尝试在 Matlab 中实现基于素数场上的椭圆曲线的身份验证协议。我已经成功完成了点加法和点乘法,但是在计算以下步骤时遇到了问题:(大写字母是曲线上的点,小写字母是整数标量)
((y^-1)T4-T2)(rs^-1) = x1P
((y^-1)T5-x1T3)(rs^-1) = X2
我应该计算
y^-1
作为
ModInverse(y , prime)? % the multiplicative inverse of y mod prime
另外,这就是我应该做的减法吗?
nT2 = T2;
nT2{2} = mod(-nT2{2}, prime);
(否定一个点的y坐标)mod prime,然后在nT2
另一个点上做加法