7.5 簽名驗證進程
7.5.1 進程
圖2描述了簽名驗證進程,包括以下處理:
a) 開啟已簽消息;
b) 簽名大小的驗證;
c) 恢復預簽名或數據輸入;
d) 恢復數據輸入或消息;
e) 重新計算雜湊權標(可選);
f) 校驗簽名。

圖2 簽名驗證進程
簽名的校驗包括如下:
a) 比較已恢復的雜湊權標和重新計算(被截取)的雜湊權標,或者
b) 校驗冗余。
7.5.2 開啟已簽消息
在進行此步驟前,驗證方必須確保下列信息可用:
a) 包括在已簽消息里的不同的簽名/消息部分的長度;
b) 參數Lred的長度。
c) 驗證方提取下列已簽消息的不同部分:
d) 消息的不可恢復部分;
e) 簽名的第一部分r′;
f) 簽名的第一部分s′;
g) (可選的)可恢復消息部分的長度L′rec。
7.5.3 簽名大小的驗證
驗證方需要校驗簽名部分的大小。
7.5.4 預簽名的恢復
在進行此步驟前,驗證方必須確保下列信息可用:
a) 指明正在使用的此簽名方案的公開信息;
b) 簽名實體的公開驗證密鑰Y**A;
c) 這一步的計算是針對正在使用的簽名方案而言的。預簽名是由公開驗證密鑰Y**A決定的。給出簽名(r′,s′),預簽名Π′是可恢復的。
7.5.5 輸入數據或者消息的恢復
給出簽名的第一部分r′和已恢復的預簽名Π′,數據輸入d′是可恢復的。已恢復的數據輸入d′是一個八位位組串。
7.5.6 雜湊權標的重新計算(可選)
首先,第7.4節簽名實體使用的雜湊函數可能由域參數和/或者通過從已恢復的雜湊權標中獲取的雜湊函數標識符來標識。通過雜湊消息重新計算雜湊碼。
把重新計算的雜湊碼可選地鏈接雜湊函數標識符,就能夠獲得重新計算的雜湊權標。
7.5.7 校驗簽名
簽名的校驗包括如下:
a) 比較重新計算(被截取)的雜湊權標h″和已恢復(被截取)的雜湊權標h′,或者
b) 校驗已恢復消息的填充,和/或者自然冗余。
GB/T 15851.3—2018 信息技術 安全技術 帶消息恢復的數字簽名方案 第3部分:基于離散對數的機制
推薦文章: