草庐IT

签名证书

全部标签

c# - 使用文档哈希比较签名的 PDF 和未签名的 PDF

经过广泛的谷歌搜索后,我开始怀疑我是否以某种方式遗漏了数字签名的要点。这基本上是我认为我原则上应该能够做的事情,我希望iTextSharp允许我:我正在用C#和.NET编写,并使用iTextSharp来解析PDF文件。我有一个未签名的PDF文件,还有一个相同文件的签名版本。我知道数字签名从根本上对PDF数据进行哈希处理,使用私钥对其进行加密,然后验证过程的一部分是使用公钥对其进行解密,并确保再次进行哈希处理时结果与PDF数据匹配。除此之外,我想获取这个解密的文档哈希,并将其与从我的未签名PDF生成的文档哈希进行比较。这是因为我不仅要验证签名的PDF是真实的,还要验证它是否与我记录在案的

mysql开启ssl以及如何创建证书

MYSQL版本8.0.32,默认是开启ssl的,同时也是自带证书的在/var/lib/mysql/下jdbc连接Mysql数据库需要使用SSL时,可以按一下步骤进行设置:前置条件(可跳过):1.新建SSL用户CREATEUSER'qq'@'%'IDENTIFIEDBY'你的密码';GRANTALLON*.*TO'qq'@'%';ALTERUSER'qq'@'%'IDENTIFIEDWITHmysql_native_passwordBY'password';caching_sha2_password2.对用户使用sslALTERUSER'qq'@'%'REQUIRESSL;FLUSHPRIVIL

c# - RSACryptoServiceProvider(.NET 的 RSA)可以使用 SHA256 代替 SHA1 进行加密(不签名)吗?

加密时,RSACryptoServiceProvider(或.NET提供的任何其他RSA加密器)能否使用SHA256而不是SHA1?SHA1似乎是硬编码的,无法更改。例如,RSACryptoServiceProvider.SignatureAlgorithm被硬编码为返回“http://www.w3.org/2000/09/xmldsig#rsa-sha1”。如果没有办法让RSACryptoServiceProvider使用SHA256,有什么替代方案?更新以下代码运行良好,但我想将OAEPWithSHA1AndMGF1Padding更改为OAEPWithSHA256AndMGF1Pa

c# - WCF 上的 X.509 证书?

问题:我正在一台机器上开发这个程序。该服务在开发服务器中运行良好,但当我尝试在IIS中托管该服务时,出现错误:CannotfindtheX.509certificateusingthefollowingsearchcriteria:StoreName'My',StoreLocation'CurrentUser',FindType'FindBySubjectName',FindValue'WCFServer'.那么我能解决这个问题吗?我正在尝试这段代码来自http://www.codeproject.com/KB/WCF/9StepsWCF.aspx证书创建makecert.exe-sr

c# - (如何)是否可以绑定(bind)/重新绑定(bind)一个方法来与不同签名的委托(delegate)一起工作?

我是一名C++开发人员,在C++中使用过信号和槽,这对我来说似乎类似于C#中的委托(delegate)。我发现自己在寻找“绑定(bind)”提供的功能时不知所措,觉得我一定遗漏了一些东西。我觉得像下面这样的东西,在c++中是可能的,在带有委托(delegate)的c#中应该是可能的。这是我在C++中所做的一些伪代码:SlotsomeCallback;intfoo(inti){std::coutsomeCallback=bind(fun_ptr(foo),i);++i;//addedtoshowthatlateevaluationwouldbeanon-trivialdifference

c# - 为什么静态和非静态方法不能共享相同的签名?

C#提供以下signaturecharacteristics在函数重载时使用。我们知道重载只考虑参数;它们的数量和类型,但多态性的目标是根据调用策略提供相同的名称但不同的用法。如果我有一个类包含两个具有相同名称和签名的方法,而一个是静态的而另一个不是,C#编译器会抛出一个错误;“Classalreadydefinedamembercalled'foo'withthesameparametertypes”.对这两种方法的调用将有所不同;一个带有对象名称,一个带有类名称的静态。因此调用策略没有歧义。那为什么会报错呢?classExample{publicvoidfoo(){}publics

c# - 即使签名匹配,也无法将一种类型的委托(delegate)分配给另一种

我病态的好奇心让我想知道为什么以下失败://declaredsomewherepublicdelegateintBinaryOperation(inta,intb);//...inamethodbodyFuncaddThem=(x,y)=>x+y;BinaryOperationb1=addThem;//doesn'tcompile,andcastingdoesn'tcompileBinaryOperationb2=(x,y)=>x+y;//compiles! 最佳答案 C#对“结构”类型的支持非常有限。特别是,您不能简单地从一种委托

c# - 导出没有私钥的 X.509 证书

我认为这很简单,但显然不是。我安装了一个证书,它有一个私钥,可导出,我想以编程方式仅使用公钥导出它。换句话说,我想要的结果相当于在通过certmgr导出并导出到.CER时选择“不导出私钥”。似乎所有X509Certificate2.Export方法都会导出私钥(如果存在),作为PKCS#12,这与我想要的相反。有什么方法可以使用C#来完成这个,还是我需要开始深入研究CAPICOM? 最佳答案 对于可能偶然发现这一点的其他人,我想通了。如果您将X509ContentType.Cert指定为X509Certificate.Export的

c# - ClientMessageInspector 添加 BinarySecurityToken 和签名

我正在尝试在桌面应用程序中使用C#使用JavaWeb服务。Myfirstattempt正在使用WebServicesClientProtocol,但我无法添加WSSEUsernameandTokenSecuritySpec1.1所需的必要属性我需要创建具有这种结构的请求:my_loginXqEwZ/CxaBfFvh487TjvN8qD63c=JzURe0CxvzRjmEcH/ndldw==2017-02-09T09:42:27.976ZMIIKnDCCB.........nmIngeg6d6TNI=mlABQuNUFOmLqsDswxXxQ6XnjpQ=lYhBHSQ/L...XL1H

c# - 检查给定的可执行文件是否经过数字签名且有效?

在我的C#/.NET应用程序中,我必须检查给定的可执行文件是否经过数字签名(最好没有异常测试。)然后我需要检查其证书是否有效(基于已安装的根证书)以及文件内容是否对签名有效.BCL中的类太多了,我不知道从哪里开始以及使用什么,到目前为止我发现的任何东西都不能消除我的困惑...我想做这样的事情,没有如果可能P/Invoke:boolIsSignedFile(stringpath);CertGetCertificateFromSignedFile(stringpath);boolIsValidCertificate(Certcert)SigGetSignatureFromSignedFil