网银为何获取证书失败

网银为何获取证书失败,第1张

使用网银转账时,出现“获取证书失败”的错误提示,说明:交易时,U盾的数字证书是无效的。

造成这种问题的原因有以下4个:

1、U盾有效期到期。

2、数字证书控件损坏。

3、数字证书控件或U盾程序被设置为开机不启动。

4、数字证书控件被杀毒软件(金山毒霸、腾讯电脑管家、360助手等)拦截。

解决方法如下:

1、需带上本人身份z原件、U盾、开通网银的储蓄卡到农商银行网点柜台办理U盾证书更新业务。

2、重新下载安装数字证书控件。

3、用腾讯电脑管家、360助手等工具将数字证书控件或U盾程序重新设为开机自启动。

4、从对应的杀毒软件中,取消对数字证书控件的拦截功能,并将数字证书控件加入到信任列表中。

创建X509证书方法较多,在Windows 环境下大致总结了几中办法,

1) 通过CA获取证书,

2) 通过微软提供的makecert 工具得到测试证书

3) 编程的方法创建,Net提供了 X509Certificate2 类,该类可以用于创建证书,但只能从RawData中创建,创建后无法修改除FriendlyName以外的任何属性。

我在互联网上找了很久,始终没有找到完全通过程序创建自定义的证书的方法。后来想了一个折中办法,就是用程序调用 makecertexe 先生成一个证书,证书的一些参数如Subject,有效期,序列号等可以通过参数传入,然后把生成的证书文件读到Rawdata中,得到X509Certificate2 类型的证书对象。当然这种方法确实比较笨,必须要依赖外部进程。等后面有时间的话,我还是想按照X509 V3 标准,自己创建RawData,然后生成证书,这样应该是比较灵活的做法。不知道网友们有没有什么更好的方法来创建一个自定义的证书。

通过 makecertexe 创建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)

{

DebugAssert(certInfo != null);

DebugAssert(certInfoSubject != null);

string MakeCert = makecrtPath + "makecertexe";

string fileName = crtPath + "cer";

string userName = GuidNewGuid()ToString();

StringBuilder arguments = new StringBuilder();

argumentsAppendFormat("-r -n \"{0}\" -ss my -sr currentuser -sky exchange ",

certInfoSubject);

if (certInfoSerialNumber > 0)

{

argumentsAppendFormat("-# {0} ", certInfoSerialNumber);

}

argumentsAppendFormat("-b {0} ", certInfoBeginDateToString(@"MM\/dd\/yyyy"));

argumentsAppendFormat("-e {0} ", certInfoEndDateToString(@"MM\/dd\/yyyy"));

argumentsAppendFormat("\"{0}\"", fileName);

以上就是关于网银为何获取证书失败全部的内容,包括:网银为何获取证书失败、如何获取数字证书(x509Certificate)中的指纹算法、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9748982.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存