Implementation
將 5 位 s-box 轉換為其位切片格式
我目前正在嘗試將 5 位 sbox(來自此密碼的一個:http: //primates.ae/wp-content/uploads/primatesv1.02.pdf)轉換為其位切片格式(即布爾值網路)。
大多數論文只涉及將最多 4 位 s-box 轉換為其位切片格式的技術。
我已經做了一些工作試圖以暴力方式獲得結果,因為 5 位 s-box 似乎並不多,但這仍然被證明是棘手的,因為它們最終是無限的可能性 og AND,NOT,您可以在 5 個輸入位上執行 OR 和 XOR …… (我希望不會,因為我不能保證它是最優的)。
我考慮過嘗試製作真值表並從中合成邏輯網路。我不確定這是要走的路。
最近在 FSE'2016 上發表的一篇論文
$$ 1 $$解決了這個確切的問題。事實上,它甚至為您在第 4 節中感興趣的 S-Box 提供了一個位切片的實現。 總之:您首先將位片實現的存在編碼為 SAT 問題,使用現成的 SAT 求解器來解決它,最後從 SAT 求解器的輸出中檢索位片編碼。
$$ 1 $$: http://eprint.iacr.org/2016/198.pdf “使用 SAT 求解器優化多個標準的 S-box 實現”,Ko Stoffelen,2016 年快速軟體加密會議記錄