重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
创建X509证书方法较多,在Windows 环境下大致总结了几中办法,
创新互联2013年开创至今,先为尚义等服务建站,尚义等地企业,进行企业商务咨询服务。为尚义企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
1) 通过CA获取证书,
2) 通过微软提供的makecert 工具得到测试证书
3) 编程的方法创建,.Net提供了 X509Certificate2 类,该类可以用于创建证书,但只能从RawData中创建,创建后无法修改除FriendlyName以外的任何属性。
我在互联网上找了很久,始终没有找到完全通过程序创建自定义的证书的方法。后来想了一个折中办法,就是用程序调用 makecert.exe 先生成一个证书,证书的一些参数如Subject,有效期,序列号等可以通过参数传入,然后把生成的证书文件读到Rawdata中,得到X509Certificate2 类型的证书对象。当然这种方法确实比较笨,必须要依赖外部进程。等后面有时间的话,我还是想按照X509 V3 标准,自己创建RawData,然后生成证书,这样应该是比较灵活的做法。不知道网友们有没有什么更好的方法来创建一个自定义的证书。
通过 makecert.exe 创建X509证书的代码如下,供大家参考
static object semObj = new object();
/// summary
/// 自定义的证书信息
/// /summary
public class T_CertInfo
{
public String FriendlyName;
public String Subject;
public DateTime BeginDate;
public DateTime EndDate;
public int SerialNumber;
}
/// summary
/// 生成X509证书
/// /summary
/// param name="makecrtPath"makecert进程的目录/param
/// param name="crtPath"证书文件临时目录/param
/// param name="certInfo"证书信息/param
/// returns/returns
public static X509Certificate2 CreateCertificate(String makecrtPath, String crtPath,
T_CertInfo certInfo)
{
Debug.Assert(certInfo != null);
Debug.Assert(certInfo.Subject != null);
string MakeCert = makecrtPath + "makecert.exe";
string fileName = crtPath + "cer";
string userName = Guid.NewGuid().ToString();
StringBuilder arguments = new StringBuilder();
arguments.AppendFormat("-r -n \"{0}\" -ss my -sr currentuser -sky exchange ",
certInfo.Subject);
if (certInfo.SerialNumber 0)
{
arguments.AppendFormat("-# {0} ", certInfo.SerialNumber);
}
arguments.AppendFormat("-b {0} ", certInfo.BeginDate.ToString(@"MM\/dd\/yyyy"));
arguments.AppendFormat("-e {0} ", certInfo.EndDate.ToString(@"MM\/dd\/yyyy"));
arguments.AppendFormat("\"{0}\"", fileName);
您说的是调用中控指纹识别的API吧?如果是的话可以使用中控提供的SDK开发包。
中控的SDK包也有不少,有些要收费的,有些免费的,在中控网站看到的信息,希望对你有帮助。
几种开发包的介绍,以及区别
脱机通讯开发包
收费情况:免费
机器型号:除K6和M100以外的所有机器。
开发平台:只支持windows平台
开发语言:VB、Delphi、VC、PB、VF等
功能简介:客户购买了脱机指纹/射频卡机器,但是不想使用我们标配的考勤/门禁软件时,可以推荐客户选用此SDK开发他们自己的考勤/门禁软件。只用于脱机机器与电脑之间的数据通讯,不可进行指纹识别。
获取方法:进入“中控网站-下载中心-脱机指纹考勤系统-脱机考勤通讯开发包”下载
SOAP 开发包
收费情况:免费
机器型号: 所有ZEM300、ZEM500机器均可支持,该功能为选配项,可向生产定制,也可提供升级程序。
开发平台:windows平台、Linux平台
开发语言:一般主流开发语言都可支持,VB、Delphi、VC、PHP、ASP、Java等
功能介绍:脱机通讯开发包的补充,真正的HTTP、TCP协议通讯,当客户想开发基于Linux平台,或JAVA语言的程序时,可以给客户推荐SOAP SDK。
获取方法:联系FAE
RIS 开发包
收费情况:免费
机器型号:具有后台验证功能的机器。
开发平台:只支持windows平台
开发语言:VB、Delphi、VC、PB、VF
功能介绍:客户购买了后台验证功能的机器,但是不想使用我们标配的后台验证程序时,可以推荐客户选用此SDK开发他们自己的后台验证程序。
获取方法:联系FAE
底层通讯协议
收费情况:免费,但是需要与我公司签定保密协议
机器型号:所有机器
开发平台:目前可提供Windows下VC或C#源代码,客户也可自己实现到Linux等平台。
开发语言:C、C++、Java、C#、VB.Net等
功能介绍:直接提供通信的底层协议,客户可以不使用我们的sdk而自己开发通讯程序,可以在任意平台上实现应用,不像我们的sdk限制在Windows。
获取方法:联系FAE
ZKFinger SDK
收费情况:收费
机器型号:URU指纹仪,ZK6000
开发平台:Windows 平台、Linux平台可定制
开发语言:VB、Delphi、VC、PB、VF
功能介绍:客户想自行开发指纹比对程序时,可以选择此SDK,它包含中控科技自主知识产权的指纹识别算法。另外需要购买我们的指纹仪或使用他们自己的指纹采集仪进行指纹图像的采集。
获取方法:开销售单到库房领光盘
备注:共有两个版本(普通版和标准版),其区别为:
1、对指纹仪的SDK许可收费不同。配合此SDK使用的指纹仪必须由我们写入SDK许可。购买普通版SDK的客户,他们每购买一个指纹仪就需要收取一次许可费,而购买标准版SDK的客户,购买指纹仪时免收许可费用。
2、基本的登记、比对功能都一样,唯一的区别是标准版SDK在1:1的控件中包含从图像中提取模板的功能,普通版则没有。也就是说标准版可以支持其他指纹仪采集的图像功能。
ZKOnline SDK
收费情况:收费
机器型号:URU指纹仪,ZK6000
开发平台:Windows 平台
开发语言:ASP,JSP,PHP,JAVA
功能介绍: ZKFinger SDK的补充,由于ZKFinger SDK不支持基于web开发,客户需要在浏览器中使用指纹的本地及远程比对,可推荐ZKOnline SDK。其实ZKFinger SDK和ZKOnline SDK是隶属于的关系。只有购买了ZKFinger SDK(标准版8000元)的客户,再购买ZKOnline SDK(2000元)才能开发基于WEB的程序。如果没有购买过ZKFinger SDK的客户则需要ZKFinger SDK加ZKOnline SDK(8000+2000元)。
获取方法:开销售单到库房领光盘
不会耶,应该需要什么硬件提供些接口什么的吧,然后把
指纹信息
放到数据库中,刷的时候,获取指纹,然后拿到数据库中比较下。
如果,获得了指纹信息,那么其他的就没问题了。