首页 Soft PlugIn RAN乱 Dev开发 Info资料 English WAP 留言 登陆 注册
-
Posted by Yippee | 评论(0) | 引用(0) | 阅读98次
20080324 X509Certificate cer ICSharpCode

20080324 X509Certificate cer ICSharpCode
http://www.shengfang.org

http://support.microsoft.com/kb/318217/zh-cn
PRB: X509Certificate 支持仅 DER Encoded 证书

http://blog.joycode.com/mvm/archive/2006/03/25/73468.aspx
X509Certificate代码示例 (.NET 1.1)

http://blog.csdn.net/nutian/archive/2006/10/26/1352099.aspx
 [C#]使用HttpWebRequest请求远端服务器时如何加载SSL证书

http://www.cnblogs.com/zhifengwu1211/archive/2007/04/27/729360.aspx
在C#中使用 makecert 创建自签名的证书

http://www.microsoft.com/china/technet/security/guidance/secmod27.mspx
如何使用来自 ASP.NET 的客户端证书调用 Web 服务

http://www.bzsh.cn/software/p155/A15519010.shtml
获取已有证书的信息c#有提供方法,但如何根据客户参数与公私钥对生成证书呢??string   certificate   =     at "e:/xxx dot cer"; 
                  x509certificate   cert   =       x509certificate.createfromcertfile(certificate); 
                string   resultstrue   =   cert.tostring(true); 
                console.writeline(resultstrue);  

http://msdn2.microsoft.com/zh-cn/library/system.security.cryptography.pkcs.signerinfo.countersignerinfos(VS.80).aspx
SignerInfo.CounterSignerInfos 属性

C#中,byte为无符号8位整数,而Sbyte为有符号8位整数,对应java中的byte类型。
将 byte 转为 sbyte。原理很简单,就是当 byte 小于 128 时其值保持不变,大于等于 128 时就将其减去 256。代码如下:

sbyte[] mySByte = new sbyte[myByte.Length];

for (int i = 0; i < myByte.Length; i++)
{
    if (myByte[i] > 127)
        mySByte[i] = (sbyte)(myByte[i] - 256);
    else
        mySByte[i] = (sbyte)myByte[i];
}

 
 http://hi.baidu.com/kissrun/blog/item/ea97d218bfbff2b74bedbc33.html
 用ICSharpCode.SharpZipLib.Zip实现下载整个文件目录(小文件推荐)

 2)   你可以使用第三方的类库和工具包 
  http://www.icsharpcode.net/opensource/nziplib/default.asp  

  用SharpZipLib(#ZipLib)压缩MemoryStream

SharpZipLib是一个开源的用C#编写的Zip,GZip,Tar and BZip2库,用于C#的开发.可以在http://www.icsharpcode.net/OpenSource/SharpZipLib/得到.

压缩
为了方便起见,我们添加IO,Text和SharpZipLib名字空间
using System;
using System.IO;
using System.Text;
using ICSharpCode.SharpZipLib.BZip2;
首先,开始压缩.我们创建一个MemoryStream
MemoryStream msCompressed = new MemoryStream();
这次我使用Bzip2,你可用使用zip或tar,然而,他们需要实现一个虚假的文件.选择BZip2而不是Gzip是由于大的数据会压缩的小些.以花费较大的报头为代价.

接下来,我们创建一个BZip2 output stream对象,容纳MemoryStream.
BZip2OutputStream zosCompressed = new BZip2OutputStream(msCompressed);
现在我来解说上面报头的含义.在我的实际测试中使,用GZip时,压缩1字节数据需要28字节的额外报头,那些额外的字节是不能被压缩的.用BZip2时,需要36字节的额外报头.实际上,用BZip2可以压缩一个12892字节的源文件到2563字节,有大概75%的压缩率.另一个测试是从730字节压缩到429字节,最后一个测试是174字节到161字节.显然,任何压缩需要额外的可用空间.

下面我们将数据写入BZip2OutputStream
string sBuffer = "This represents some data being compressed."
byte[] bytesBuffer = Encoding.ASCII.GetBytes(sBuffer);
zosCompressed.Write(bytesBuffer, 0, bytesBuffer.Length);
zosCompressed.Finalize();
zosCompressed.Close();

由于要用到IO和stream方法,要使用字节数组替代字符串.所以我们用字节数组作为输出,然后将压缩的流写入内存流.
bytesBuffer = msCompressed.ToArray();
string sCompressed = Encoding.ASCII.GetString(bytesBuffer);

这样内存流中包含了压缩过的数据,我们将数据用字符数组输出,然后转换成字符串.要注意,这个字符串是乱码,不可读的.如果你想查看数据,我用的方法是把它转换为Base64编码的数据,但是这样会增加大小.运行程序使43字节的未压缩数据变成74字节的压缩数据,如果用base 64编码,会得到100字节的结果:
QlpoOTFBWSZTWZxkIpsAAAMTgEABBAA+49wAIAAxTTIxMTEImJhNNDIbvQ
aWyYEHiwN49LdoKNqKN2C9ZUG5+LuSKcKEhOMhFNg=

解压缩
MemoryStream msUncompressed =
new MemoryStream(Encoding.ASCII.GetBytes(sCompressed));
BZip2InputStream zisUncompressed = new BZip2InputStream(msUncompressed);
bytesBuffer = new byte[zisUncompressed.Length];
zisUncompressed.Read(bytesBuffer, 0, bytesBuffer.Length);
zisUncompressed.Close();
msUncompressed.Close();
string sUncompressed = Encoding.ASCII.GetString(bytesBuffer);

这样sUncompressed将被解压到原始的字符串.文件也是相同的原理.

一个在.net平台上易用的开源制图组件

ZedGraph是一个用来创建2D线,条,饼图的类库,windows窗口控件和asp,asp.net控件.类库提供了高的适用性,几乎图形的每个外表都能被用化修改,图形的默认属性值使其用起来很方便.

ZedGraph源码,示例可用在zedgraph.org上找到.


字体:

Permanant URI永久地址 http://www.shengfang.org/blog/p/20080324X509CertificatecerICSharpCode.php
Trackback URI引用地址 http://www.shengfang.org/blog/tb.php?tb_id=1229688377

2008年12月19日20:06星期五  [Info资料] 追踪此文的RSS
提示:
此文还没有评论。

称呼:    登陆   注册
   不注册,但记住我的信息
邮件:
(非必须)
评论: [UBB代码帮助]
粗体 斜体 下划线 链接 水平线 引用



验证码: 请输入你看见的数字
关闭UBB      提交时自动将内容复制到剪贴板

公告
Fire and Motion!

统计信息
[Yippee]||[统计]||日志:1790
在线: 13||用户: 2562 [列表]
今日:11||到访:2669510
Rss:837703||评论:1584

最新日志

最新评论

友情链接

日历

最新引用

搜索

归档

杂项
Get RSS Feed (Version 2.0)
Get Atom Feed (Version 0.3)
编码:  UTF-8