iT邦幫忙

0

Day6 了解無狀態簽名(如SPHINCS+)如何利用雜湊函數的單向性

  • 分享至 

  • xImage
  •  

以下是SPHINCS+如何利用雜湊函數的單向性來實現安全的無狀態簽名的核心機制:
一、使用單向性保護私密金鑰(WOTS+一次性簽名)
1.金鑰生成:
在SPHINCS+的底層(如WOTS+),私密金鑰SK是一組隨機字串,而對應的公開金鑰PK則是透過對私密金鑰進行多次雜湊運算(例如SK經過多次H運算得到PK)來產生的
2.防止反推:
由於雜湊函數的單向性,攻擊者即使取得了公開金鑰PK,也無法在計算上反推出原始的私密金鑰SK,從而保護簽名者的身分與私鑰安全
二、雜湊樹結構與完整性綁定(Hypertree):
1.樹狀結構:
SPHINCS+透過多層的Merkle樹將大量的一次性公鑰組織起來,且將樹的葉子節點是底層簽名的公鑰,而父節點則是透過對子節點進行雜湊計算組合而成
2.防篡改:
藉由雜湊函數的單向性,任何對訊息或簽名路徑的微小竄改,都會導致根節點發生巨大改變,因此確保了驗證者只要核對根節點,就能絕對信任簽名的完整性
三、利用雜湊實作無狀態的隨機化:
1.傳統狀態的痛點:
傳統的雜湊式簽名(如XMSS)需要嚴格記錄「私密金鑰被使用過幾次」,否則重複使用會導致私鑰外洩
2.無狀態解法:
SPHINCS+利用雜湊函數衍生出的虛擬亂數函數(PRF),在簽名過程中引入隨機遮罩,並且透過雜湊的單向與攪拌特性,讓每一次簽名所使用的金鑰路徑都具備密碼學上的獨立性與隨機性,因此完全不需要保存任何狀態計數器也能確保其正常運作


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言