zoukankan      html  css  js  c++  java
  • 第三章 共享程序集和强命名程序集

    1. 概述

      本章的重点是如何创建可由多个应用程序访问的程序集。

    2. 名词解释

      ① 公钥标记:从公钥派生的一个小的哈希值。

    3. 主要内容

      3.1 两种程序集,两种部署

          CLR支持两种程序集:弱命名程序集 和 强命名程序集。

        一个程序集可以采取两种方式来部署:私有 或 全局。

        弱命名程序集只能私有部署,强命名程序集两种部署皆可。

      3.2 为程序集分配强名称

        强命名程序集具有四个重要组成部分:

        ① 一个文件名 ② 一个版本号 ③ 一个语言文化标识 ④ 一个公钥(一般用 公钥标记)。

        用SN.exe来获取密钥。

      3.3 全局程序集缓存(Global Assembly Cache, GAC)

        一般用 GACUtil.exe来将一个强命名程序集安装到GAC中。

      3.4 在生成的程序集中引用一个强命名程序集

        查找顺序:

          ① 工作目录。 ② 包含CSC本身的目录。 ③ 使用/lib指定的任何目录。 ④ 使用LIB环境变量指定的任何目录。

      3.5 强命名程序集如何防篡改

        用私钥签名,可保证程序集是由对应公钥的持有者生成的,安装到GAC时,系统对包含清单的那个文件的内容进行哈希处理,并将结果与PE文件中嵌入的RSA数字签名进行比较。如果两个值完全一致,表明文件的内容未被篡改。

      3.6 延迟签名

        延迟签名允许只有公钥来生成一个程序集,暂时不用私钥。用于在开发测试阶段使用。更好的保护私钥不外泄。

      3.7 私有部署强命名程序集

      3.8 “运行时”如何解析类型引用

      3.9 高级管理配置

    4. 总结

      强命名程序集是非常推荐的方式。可能也是以后必须使用的方式。

  • 相关阅读:
    异步Http请求封装工具类AsyncHttpClientUtil
    json、javaBean、xml互转的几种工具介绍 (转载)
    大数据小白系列 —— MapReduce流程的深入说明
    大数据小白系列——MR(1)
    大数据小白系列——HDFS(4)
    大数据小白系列——HDFS(3)
    大数据小白系列——HDFS(2)
    APP开发,微信第三方登录的介绍
    Java Lambda基础——Function, Consumer, Predicate, Supplier, 及FunctionalInterface接口
    程序员生存指南——镜像加速
  • 原文地址:https://www.cnblogs.com/stone_lv/p/4290691.html
Copyright © 2011-2022 走看看