14、基2蒙哥马利乘法的硬件实现

基2蒙哥马利乘法的硬件实现

蒙哥马利乘法在公钥密码学(PKC)中具有重要地位,它是实现加密和解密过程中关键的运算。在基2的蒙哥马利乘法中,模数 m 的长度为 k 位,T⁻¹ 表示 T 模 m 的逆,其中 T = 2ᵏ (mod m)。VLSI 电路与该实现兼容,可最大程度减少加密和解密过程的运行时间。

1. 解决进位传播问题的两种方法

在基2蒙哥马利乘法的算法中,如算法 5 所示,加法步骤(步骤 4)由于 3 个操作数是长二进制字符串,需要较长的进位传播。为解决这一问题,基于进位保存加法器(CSA)提出了多种解决方案,这些方案可根据输入和输出操作数的表示方式分为半进位保存(SCS)方法和全进位保存(FCS)方法。

2. SCS 方法的蒙哥马利乘法
  • 原理 :在 SCS 方法中,参数以二进制格式表示,操作数 X、Y 和模数 m 作为输入参数,输出为 R = X × Y (mod m)。输入和输出操作数用二进制表示,但计算过程中的中间结果(移位模加法)以进位保存格式存储,这有助于避免进位传播。最终结果 R 需要以二进制表示,这需要额外的进位传播加法器(CPA)或重复使用可用的 CSA 进行格式转换。
  • 架构与算法
    • 算法 6 中,计算过程中的中间结果 R 以进位保存格式 (RS, RC) 存储,有助于避免进位传播。对应的架构如图 7.10 所示,循环运行 k + 2 次,有助于去除额外的比较和减法步骤,但仍需将最终结果从进位保存格式转换为二进制表示。
    • 图 7.10 有一个两级 CSA 和一个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值