2012年4月1日
摘要: C#.Net 篇目录 Strong Name实用工具 (Sn.exe) 有助于使用强名称对程序集进行签名。Sn.exe 提供用于密钥管理、签名生成和签名验证的选项。所有 Sn.exe 选项都区分大小写,生成密钥对默认放在temp环境变量路径。(生成密钥时,会调用Windows提供的Crypto AP 阅读全文
posted @ 2012-04-01 09:49 滴答的雨 阅读(2769) 评论(0) 推荐(0) 编辑
摘要: 签名工具是一个命令行工具,用于用证书对文件进行数字签名,验证文件和时间戳文件中的签名。 用法:signtool [command] [options] [file_name | ...] command 指定要对文件执行的操作的四个命令之一(catdb、sign、Timestamp 或 Verify 阅读全文
posted @ 2012-04-01 09:35 滴答的雨 阅读(10442) 评论(0) 推荐(0) 编辑
摘要: 1. 两个代码优化选项 托管代码的两个优化选项将方法的首次编译开销保持在最低限度,并且JIT编译器能判别CPU的指令集,并生成相应本地代码利用能提升程序性能的特殊指令,相对非托管代码(eg:C++是针对一种具体CPU【平台】编译的,一旦调用,代码直接就能执行)其效率相差不大,甚至因为一些特殊指令性能 阅读全文
posted @ 2012-04-01 09:24 滴答的雨 阅读(3287) 评论(0) 推荐(0) 编辑
  2012年3月31日
摘要: 一、在 .NET 程序中使用证书 请参见 《(2)强名称程序集与数字证书》 二、在 web 程序中使用证书 1. SSL (Secure Sockets Layer) 协议 SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL R 阅读全文
posted @ 2012-03-31 23:25 滴答的雨 阅读(3691) 评论(2) 推荐(2) 编辑
摘要: 一、证书 1. 概要 证书是一个【经证书认证中心数字签名的】包含【公开密钥拥有者信息以及公开密钥的文件】。证书格式及证书内容遵循X.509标准。 从证书的用途来看,数字证书分为签名证书和加密证书。 a) 签名证书主要用于对用户信息进行签名,以保证信息的不可否认性(身份认证); b) 加密证书主要用于 阅读全文
posted @ 2012-03-31 23:09 滴答的雨 阅读(7779) 评论(1) 推荐(2) 编辑
摘要: 一、数字加密技术 1) 单钥密码体制/对称密码体制 指加密密钥和解密密钥为同一密钥的密码体制,因此通信双方必须共同持有该密钥。 DES、AES是一种对称密码体制 2) 双钥密码体制/非对称密码体制/公开密钥密码体制 指加密密钥和解密密钥为两个不同密钥的密码体制;这两个密钥之间存在着互相依存关系,即其 阅读全文
posted @ 2012-03-31 23:01 滴答的雨 阅读(2866) 评论(0) 推荐(3) 编辑
摘要: 一、程序集的加载 程序集是 .NET Framework 应用程序的构造块;程序集构成了部署、版本控制、重复使用、激活范围控制和安全权限的基本单元。 绑定是查找与唯一指定的类型相对应的声明(即实现)的过程。根据此过程是发生在编译时还是运行时分为: a) 静态绑定:在生成时,编译器在程序集清单的元数据 阅读全文
posted @ 2012-03-31 20:56 滴答的雨 阅读(4164) 评论(0) 推荐(4) 编辑
摘要: Type 类 表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。这个类是线程安全的。 Type 为 System.Reflection 功能的根,也是访问元数据的主要方式。使用 Type 的成员获取关于类型声明的信息,如构造函数、方法、 阅读全文
posted @ 2012-03-31 20:46 滴答的雨 阅读(4670) 评论(0) 推荐(2) 编辑
摘要: 上篇文章 《(6)程序集加载上下文》 已经告诉了我们各种程序集上下文,现在来看看.Net中是如何支持这些上下文的。 一、Assembly类提供的多个载入动态程序集方法 1. Load(),LoadFile(),LoadFrom(),LoadWithPartialName(),ReflectionOn 阅读全文
posted @ 2012-03-31 20:27 滴答的雨 阅读(5494) 评论(3) 推荐(1) 编辑
摘要: 1. 四种程序集加载到上下文及优缺点: 1) 默认加载上下文 加载上下文包含通过探测全局程序集缓存、主机程序集存储区(如果承载运行时)以及应用程序域的 ApplicationBase 和 PrivateBinPath 所找到的程序集。比如Load()使用程序集标识的重载。(探测规则请参见:《(5)C 阅读全文
posted @ 2012-03-31 20:16 滴答的雨 阅读(2120) 评论(0) 推荐(0) 编辑
摘要: l 开始绑定 当运行时尝试解析对另一个程序集的引用时,就开始进行定位并绑定到程序集的进程。该引用可以是静态的,也可以是动态的。无论引用是对静态程序集的引用还是对动态程序集的引用,运行时均使用相同的解析过程。 a) 静态引用:在生成时,编译器在程序集清单的元数据中记录静态引用。 b) 动态引用:由于调 阅读全文
posted @ 2012-03-31 19:56 滴答的雨 阅读(2489) 评论(0) 推荐(1) 编辑
摘要: <runtime> 的 <assemblyBinding> 元素 Xmlns特性,指定程序集绑定所需的 XML 命名空间。使用字符串“urn:schemas-microsoft-com:asm.v1”作为值。 <assemblyBinding>子元素如下: 1. <dependentAssembly 阅读全文
posted @ 2012-03-31 19:38 滴答的雨 阅读(1870) 评论(0) 推荐(0) 编辑
摘要: 程序集是 .NET Framework 应用程序的构造块;程序集构成了部署、版本控制、重复使用、激活范围控制和安全权限的基本单元。 属性: CodeBase,EntryPoint,EscapeCodeBase,Evidence,FullName,GlobalAssemblyCache,HostCon 阅读全文
posted @ 2012-03-31 19:29 滴答的雨 阅读(10024) 评论(0) 推荐(5) 编辑
摘要: 防止程序集被篡改,可以用两种不同但相互补充的方式对程序集进行签名:使用强名称或使用SignTool.exe(签名工具) 可以将强名称的数字签名和使用SignTool.exe(签名工具)的证书签名一起提供给程序集,或者您可以单独使用其中之一。这两个签名工具一次只能对一个文件进行签名,对于多文件程序集, 阅读全文
posted @ 2012-03-31 19:20 滴答的雨 阅读(3259) 评论(0) 推荐(1) 编辑
摘要: 程序集是 .NET Framework 应用程序的构造块;程序集构成了部署、版本控制、重复使用、激活范围控制和安全权限的基本单元。最终由CLR管理这些程序集中代码的执行。这意味着必须在目标机器上安装好 .NET Framework 。 公共语言运行时(Common Language Runtime, 阅读全文
posted @ 2012-03-31 18:41 滴答的雨 阅读(3599) 评论(4) 推荐(10) 编辑