摘要:使用傳統的強式名稱所遇到的限制(Limitations of Conventional Strong Names)
在.Net Framework 4.5之前的強式名稱有下列二個缺陷[1]:
第一、公鑰與私鑰持續遭受攻擊,而且隨著軟硬體技術的改良,惡意人士可以更加容易的由公鑰的資訊研判與取得私鑰的資訊。為了對抗前述的攻擊,有必要增長公私鑰的資料長度。在.Net Framework 4.5之前的版本,代表公私鑰的資料長度的預設值是1024bits,而且可以修改代表公私鑰的資料長度。但是將一個已經簽章(已經包含公私鑰與加密資訊)的組件重新簽章(更換一組包含更長的資料的公私鑰與加密資訊),將會摧毀所有二進位檔對於此一組件的參考,導致相容性出現問題。
第二、強式名稱SHA-1加密演算法,但是SHA-1被發現不適合用以加密雜湊,於是出現對於SHA-256等更高等級的加密演算法的需求。此外,SHA-1可能失去FIPS相容標準的資格,於是對於僅採用FIPS相容標準的演算法與應用程式將會出現問題。
[1]Limitations of Conventional Strong Names
http://msdn.microsoft.com/en-us/library/hh415055.aspx