共享程序集

1.共享程序集名
  共享程序集名的要求是它必须是全局唯一的,必须可以保护该名称。其他人不能使用这个名称创建程序集。
  Com使用区局唯一标识符(GUID)解决了第一个问题,.NET程序集的强名都可以解决。
  强名有下列项目组成:
  •   程序集本身的名称
  •   版本号
  •   公钥保证强名称是独一无二的
  •   文化
  每个程序集有新的公钥,但可以在一个公司 有这样的一个公钥,这样该公钥就唯一的表示了公司的程序集。但是这个密钥不能用作信任密钥,程序集可以利用Authenticode签名来建立信任关系。签名的密钥可以和强名中使用的密钥不同。
  对于加密,可以分为对称加密和公钥/私钥加密。
  在创建共享组件时,必须使用公钥/私钥对。编译器把公钥写入程序集清单,创建属于该程序集的所有文件的散列表,用私钥标记这个散列表。私钥不存储在程序集中,这样就可以确保没有人能修改该程序集。签名可以用公钥来验证。
  全局程序集的缓存工具gacutil及其选项/i安装到全局程序集缓存中。
原文地址:https://www.cnblogs.com/yue/p/1016663.html