标签: digital-signature

CAPICOM - 验证SignedCode来自没有UI的Trusted Publisher

我在.NET 3.0 C#应用程序中使用CAPICOM来检查exe文件上的Authenticode签名.我需要确保证书列为可信发布者.signedCode.Verify(true)如果证书尚未受信任,则使用将显示对话框,因此用户可以选择是否这样做.但是,signedCode.Verify(false)即使它不是来自受信任的发布者,也要验证签名 - 可能这只是检查证书是否有效.

如何在没有UI的情况下检查文件上的签名是否来自有效且受信任的证书?

c# capicom authenticode digital-signature

8
推荐指数
1
解决办法
1861
查看次数

在加载之前检查Linux共享对象的签名

目标:加载.so或已经过验证签名的可执行文件(或针对任意算法进行验证).

我希望能够验证.so /可执行文件,然后使用dlopen/...加载/执行该.so /可执行文件

这里的扳手是,似乎没有编程方式来检查然后加载.可以手动检查文件,然后加载它.但是有一个机会窗口,有人可以将该文件替换为另一个文件.

我能想到的一个可能的解决方案是加载二进制文件,检查签名然后dlopen/execvt /proc/$PID/fd....但是我不知道这是否是一个可行的解决方案.

由于文件系统锁在Linux中是建议性的,因此它们对于此目的并不是那么有用......(好吧,有mount -o mand......但这是针对用户级别而不是root用户).

linux dll digital-signature

8
推荐指数
2
解决办法
3247
查看次数

如何对Inno Setup生成的卸载文件进行数字签名?

Windows徽标计划要求unins000.exe由Inno生成的签名.我设计的唯一方法是解压缩安装程序,签名然后再重新打包.是不是有更简单的方法?

我找到了Inno Unpacker,但我不确定如何重新包装它.

windows inno-setup uninstallation digital-signature

8
推荐指数
1
解决办法
4393
查看次数

验证可执行文件是否已签名(用于签署该exe文件的signtool)

在我的应用程序中,我需要验证它是否已签名.如果签名继续执行并退出应用程序,如果没有.signtool将用于签署应用程序.有没有C#代码可以做到这一点?

c# verification digital-signature signtool

8
推荐指数
1
解决办法
5857
查看次数

将数字签名添加到pdf文件

可能重复:对
PDF文件进行数字签名

在应用程序中,用户将上载PDF文件,然后上传使用数字笔创建的个人签名.如何在pdf文件中嵌入此签名?

pdf asp.net digital-signature

8
推荐指数
1
解决办法
8927
查看次数

Delphi:如何使用文件时间戳进行数字签名?

我的许多客户使用软件进行数字签名.这个软件叫大堤,它是从商业的意大利室内设置和它连接到智能卡硬件像这样.

现在我希望从我的应用程序中做出数字签名,绕过执行它的软件.

是否可以在Delphi中执行此操作,是否有人已经这样做了?我也想添加时间戳.

BOUNTY注意事项:我不知道在意大利以外这是多么重要,无论如何在意大利有一项法律要求某些文件按特定规则存储.为了实现这一点,必须对数字签名并在文件上放置时间戳(pfd文件).基本上我问"是否有任何已经在Delphi中实现这一点并找到了成功的方法.你能分享你的结果吗?".基本上有一百万个USB智能卡读卡器,我不想在我的应用程序中开始支持数百万个驱动程序(我编写的应用程序部分是文档管理系统),如果有像TWAIN这样的东西用于图像扫描程序这会很棒.

我也可以接受链接到特定硬件的限制,所以我可以说如果你想要这个功能你必须购买这个硬件,我不想支持所有现有的硬件或时间戳/数字签名Web服务.所以我正在寻找的是Delphi 1-0-1的pdf文件的时间戳和数字签名.我希望我表达自己,如果没有,请问.

delphi digital-signature

8
推荐指数
1
解决办法
2888
查看次数

如何使用PHP将数字签名(RSA,证书等)添加到任何文件?

我需要知道是否可以使用RSA,证书和那些东西进行数字签名,或者是否只能签署某种文件.所有这些,使用PHP.

例如:纯文本文件可以用数字签名吗?图像怎么样(png,jpeg,bmp)?

我不需要"附加"带有图形签名的图像.

谢谢您的帮助.

php rsa file digital-signature

8
推荐指数
2
解决办法
3万
查看次数

我应该对第三方DLL(如JSON.NET)进行数字签名吗?

我有一个使用各种第三方库(如JSON.NET)构建的应用程序.

我想确保构成我的应用程序的所有DLL都经过数字签名,包括第三方.鉴于这些未经作者签名,我是否可以/我应该自己签署第三方签名?

release code-signing digital-certificate digital-signature

8
推荐指数
2
解决办法
2586
查看次数

在Web应用程序中对数据进行数字签名

我有一个Web应用程序,其中一些数据(不是文件)需要使用PKI私钥进行数字签名.PKI证书和私钥将位于USB Cryptotoken中,当插入USB插槽时,它会将证书注册到浏览器.这减轻了使用证书进行身份验证的痛苦,因为我通过在我的应用程序中进行ssl-renegotiation.

但是,使用证书进行数字签名似乎有点棘手.我可以想到几种方法来做到这一点

  1. CAPICOM - http://en.wikipedia.org/wiki/CAPICOM 这适用于支持CAPICOM的浏览器(例如IE).但是,似乎微软已经停止了这一点.

  2. Mozilla Crypto对象 - https://developer.mozilla.org/en-US/docs/JavaScript_crypto

  3. WebCrypto API - 大多数浏览器尚不支持此功能.

  4. 自定义Java Applet或一些可自由开源的JavaApplet控件.

  5. 还有其他选择吗?

我试图找出在Web应用程序中执行此操作的常见,方便和安全的方法.

注意:

  1. 我很乐意支持流行的浏览器.
  2. 我正在签署一小段数据 - 比如100-200字节而不是文件.
  3. 我更喜欢PKCS#7签名.

security web-applications pki digital-signature pkcs#7

8
推荐指数
1
解决办法
3795
查看次数

PKIX路径验证失败:java.security.cert.CertPathValidatorException:签名检查失败

来自Carlo Scarioni的Pro Spring Security书籍,我正在尝试将Spring Application与CAS Server集成.我按照书中指示的每一步,仍然坚持这个错误.请帮帮我.

SEVERE: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: signature check failed
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: signature check failed
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
    at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1904)
    at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:279)
    at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:273)
    at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1446)
    at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:209)
    at sun.security.ssl.Handshaker.processLoop(Handshaker.java:901)
    at sun.security.ssl.Handshaker.process_record(Handshaker.java:837)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1023)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1332)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1359)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1343)
    at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:563)
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1301)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254)
    at org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:311)
    at org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:291)
    at org.jasig.cas.client.validation.AbstractCasProtocolUrlBasedTicketValidator.retrieveResponseFromServer(AbstractCasProtocolUrlBasedTicketValidator.java:32)
    at org.jasig.cas.client.validation.AbstractUrlBasedTicketValidator.validate(AbstractUrlBasedTicketValidator.java:187)
    at org.springframework.security.cas.authentication.CasAuthenticationProvider.authenticateNow(CasAuthenticationProvider.java:140)
    at org.springframework.security.cas.authentication.CasAuthenticationProvider.authenticate(CasAuthenticationProvider.java:126)
    at org.springframework.security.authentication.ProviderManager.authenticate(ProviderManager.java:156)
    at org.springframework.security.cas.web.CasAuthenticationFilter.attemptAuthentication(CasAuthenticationFilter.java:242)
    at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:195)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) …
Run Code Online (Sandbox Code Playgroud)

cas spring-security digital-signature

8
推荐指数
4
解决办法
5万
查看次数