8.3 簽名驗證進程
8.3.1 輸入和輸出
簽名驗證進程包括三個步驟:消息摘要的計算,有限域計算和簽名驗證。
簽名驗證進程的輸入包括:
a) 域參數;
b) A的公開驗證密鑰Y**A;
c) 已接收到的對消息M的簽名,表示為八位位組串r′和整數s′,和
d) 不可恢復消息M′clr(如果存在);
e) 簽名驗證進程的輸入或者是可恢復消息d′或者是“拒絕”。
8.3.2 簽名大小的驗證
驗證是否符合r′∈{0, 1}^8^^L^^(n)^ ,0 < OS2IP(r′) < n和0 < s′ < n;如果不符合,則拒絕簽名。
8.3.3 恢復預簽名(有限域計算)
從接收到的簽名(r′,s′)里恢復預簽名,按照如下或者等同如下的步驟進行:
a) 轉換= OS2IP(r′);
b) 計算R′ = P**^s^^′^Q
c) 將R′轉換為八位位組串Π′= FE2OSPF(R′);
8.3.4 恢復數據輸入或者消息
從接收到的簽名的第一部分r′和已恢復的預簽名Π′里恢復數據輸入,按照如下或者等同如下的步驟進行:
a) 計算π′ = OS2IP(Π′)mod n;
b) 計算δ′* = (–π′)mod n*;
c) 將δ′轉換為八位位組串d′= *I2OSP(δ′,Ldat)*。
8.3.5 校驗簽名
校驗冗余。如果正確,輸出d′,否則拒絕。
GB/T 15851.3—2018 信息技術 安全技術 帶消息恢復的數字簽名方案 第3部分:基于離散對數的機制
推薦文章: