7.2 電子簽章生成流程
電子簽章生成流程如下:
a)為驗證電子印章的正確性和有效性,準備電子印章,具體步驟如下:
1)驗證電子印章。按照6.3驗證電子印章的正確性和有效性;
2)選擇擬進行電子簽章的簽章者證書,并驗證該證書的有效性。驗證項至少包括:證書信任鏈、證書有效期驗證、證書是否被撤銷、密鑰用法是否正確;
3)根據電子印章中的簽章者證書列表類型,提取電子印章中的簽章者證書信息列表,并用來判斷步驟2)選擇的簽章者證書是否在列表中。如果證書信息類型值為1,則直接比對證書;如果值為2,則計算步驟2)中的證書的雜湊再進行比對:
- 如果擬簽章者在電子印章的簽章者列表中,則進行后續流程;
- 如果比對失敗,返回錯誤代碼并退出簽章流程。根據錯誤代碼進一步判斷,如果比對失敗是因為簽章者證書執行更新、重簽發等操作而導致,程序應提示重新制作印章。
b)對原文進行電子簽章
1)按照propertyInfo中的簽名保護范圍來準備待簽名原文;
2)將待簽名原文數據進行雜湊運算,形成原文雜湊值;
3)按照7.1.2電子簽章數據格式組成簽章信息;
4)簽章者對簽章信息進行數字簽名,生成簽名值;
5)如果需要加蓋時間戳,則利用上述簽名值產生相應的時間戳;
6)將步驟3)4)5)以及簽章者信息、簽名算法標識組成7.1.1定義的電子簽章數據。
GB/T 385400-2020信息安全技術-安全電子簽章密碼技術規范
推薦文章: