小编mis*_*anc的帖子

Java 安全性 - 使用公钥进行 X509 证书验证

我正在做的一个项目有这么多安全操作。我以前从未遇到过安全问题。因此,我的问题可以是初学者级别。

在我的问题中,我得到一个字节数组数据,它有一个证书和一些其他参数。我需要验证此证书及其签名。但我无法处理签名验证。事实上,我不知道我应该使用哪个公钥来验证。

代码如下。感谢帮助..!

public boolean startValidation(PublicKey publicKey) {
    CertificateFactory cf;
    try {
         cf = CertificateFactory.getInstance("X.509");
    } catch (CertificateException e) {
        e.printStackTrace();
        return false;
    }
    try {
        certificate = (X509Certificate) cf.generateCertificate(new ByteArrayInputStream(certBytes));
    } catch (CertificateException e) {
        e.printStackTrace();
        setCertError(0);
        return false;
    }
    if (!checkProvider()){
        setCertError(1);
        return false;
    }

    boolean[] usages = certificate.getKeyUsage();
    boolean usage = usages[0] && usages[2];
    if (!usage){
        setCertError(2);
    }

    try {
        certificate.checkValidity();
    } catch (CertificateNotYetValidException e) {
        e.printStackTrace();
        setCertError(3);
        return false;
    } catch (CertificateExpiredException e) {
        e.printStackTrace();
        setCertError(4); …
Run Code Online (Sandbox Code Playgroud)

java rsa sha256 digital-signature x509certificate

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

RESTEASY003200:找不到以下类型的消息正文阅读器:类org.glassfish.jersey.media.multipart.FormDataMultiPart

我想上传图像并将一些参数发送到我的java rest服务。jersey-media-multipart我已经添加到我的应用程序中,pom.xml并且将必要的配置设置为ApplicationConfigclass。我正在将Wildfly 11用于应用程序服务器。但是我一直在收到此异常。

11:29:36,199 ERROR [org.jboss.resteasy.resteasy_jaxrs.i18n] (default task-35) RESTEASY002010: Failed to execute: javax.ws.rs.NotSupportedException: RESTEASY003200: Could not find message body reader for type: class org.glassfish.jersey.media.multipart.FormDataMultiPart of content type: multipart/form-data;boundary=--------------------------291101341234694996301314
    at org.jboss.resteasy.core.interception.ServerReaderInterceptorContext.throwReaderNotFound(ServerReaderInterceptorContext.java:53)
    at org.jboss.resteasy.core.interception.AbstractReaderInterceptorContext.getReader(AbstractReaderInterceptorContext.java:80)
    at org.jboss.resteasy.core.interception.AbstractReaderInterceptorContext.proceed(AbstractReaderInterceptorContext.java:53)
    at org.jboss.resteasy.security.doseta.DigitalVerificationInterceptor.aroundReadFrom(DigitalVerificationInterceptor.java:36)
    at org.jboss.resteasy.core.interception.AbstractReaderInterceptorContext.proceed(AbstractReaderInterceptorContext.java:59)
    at org.jboss.resteasy.core.MessageBodyParameterInjector.inject(MessageBodyParameterInjector.java:151)
    at org.jboss.resteasy.core.MethodInjectorImpl.injectArguments(MethodInjectorImpl.java:92)
    at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:115)
    at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:295)
    at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:249)
    at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:236)
    at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:406)
    at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:213)
    at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:228)
    at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
    at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
    at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
    at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
    at com.ocpsoft.pretty.PrettyFilter.doFilter(PrettyFilter.java:145)
    at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
    at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
    at com.mepsan.outra.global.LoginFilter.doFilter(LoginFilter.java:41) …
Run Code Online (Sandbox Code Playgroud)

multipartform-data jax-rs resteasy

4
推荐指数
1
解决办法
3382
查看次数

CGAL 绘图函数在 Visual Studio 中给出“CGAL_USE_BASIC_VIEWER 未定义”错误

我正在尝试从点云生成网格和 3D 对象。我搜索了很多库,最后决定使用 CGAL。我遵循了这个YouTube 教程。由于我想查看对象,我需要使用 Qt5 库(如此处所述并下载了它。它的工作原理与教程中一样。

我使用过的库和应用程序

  • CMake 3.15.3
  • CGAL-4.13.1
  • Qt 5.13.0
  • 提升 1_71_0

问题是当我调用该CGAL::draw()函数时它给了我这个错误

无法绘制,因为未定义 CGAL_USE_BASIC_VIEWER。

当我搜索它时,我通常会发现

QMAKE_CXXFLAGS +=-DCGAL_USE_BASIC_VIEWER
LIBS+=-DCGAL_USE_BASIC_VIEWER

.pro文件解决方案(我没有 .pro 文件)和这个

我无法应付他们。有 Windows Visual Studio 解决方案吗?
我们如何定义CGAL_USE_BASIC_VIEWER
我需要导入一些 Qt5 库吗?

提前致谢!

更新
我的问题是我正在关注视频。在视频中,这家伙没有使用 cmake 构建源代码,而是手动添加了库等。

当我使用 cmake 构建源代码时,它可以工作。这里有一个非常简单的教程。

c++ qt cgal point-clouds

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