我想使用HSM(硬件安全模块)创建一个 XML文件的签名.我做了一些研究,但现在有点困惑.

你能澄清一下这些问题吗?

> JCE中的一个关键句柄是什么意思?我已经阅读了,它只是一个句柄,并且密钥存储在别的地方.怎么可能?从我的理解我将密钥加载到内存中并使用它,或者签名完全由HSM完成,我只得到结果,对吧?
> PKCS#11标准是否定义了一种方式,以便在HSM中生成签名?我已经阅读过令牌,但我不确定签名.
>我的HSM的功能列表分别说明JCE和PKCS#11.这意味着什么?
>我认为PKCS#11是一个标准,JCE定义了使用该标准的类. JCE是否指定自己的协议?

解决方法

> JCE中的一个关键句柄是什么意思?
一个关键句柄(在JCE,PKCS#11或大多数其他加密API中)只是一个参考,使您能够使用密钥而不看到其实际值.这很好:您可以将密钥永久存储在安全的位置(例如HSM)中,以确保没有人能够将其复制并运行 – 如果密钥是应用程序空间可能会发生这种情况.与物理安全不同,您仍然可以执行加密操作,而不会发生密钥泄漏的任何安全风险.
> PKCS#11标准是否定义了一种方式,以便在HSM中生成签名?
PKCS#11是加密令牌的C API.令牌是提供由此API描述的服务的任何设备或程序的PKCS#11抽象. API定义您可以使用PKCS#11令牌内的对象执行哪些操作:某些对象是非敏感的,可以被提取(例如公钥);一些其他人是敏感的,只能通过手柄使用.
如果您拥有支持签名的对象的句柄,则可以使用C函数 C_Sign来询问令牌来验证应用程序提供的一些数据.关键不在于离开HSM.
>我的HSM的功能列表分别说明JCE和PKCS#11.这意味着什么?
您的HSM支持JCE,因为它具有符合 Cryptographic Service Provider的原生图书馆的意义.
它支持PKCS#11,这意味着它提供了一个提供C PKCS#11 API的本地库.
>我认为PKCS#11是一个标准,JCE定义了使用该标准的类. JCE是否指定自己的协议?
实际上PKCS#11是一个标准;但它不能直接用于C以外的语言.您需要一个映射层,将其转换为与您的语言兼容的东西. PKCS#11库(及其抽象的物理标记)可映射到 a JCE provider.

但是,JCE提供者可能与PKCS#11无关.

java – JCA / JCE和PKCS#11如何一起工作?的更多相关文章

  1. Android:SlidingDrawer在SurfaceView下消失

    解决方法机器人:背景=“#00000000”背景颜色是问题.

  2. android – 添加按钮到SlidingDrawer句柄?

    谢谢Aedon解决方法您可以将布局XML中的SlidingDrawer元素中的属性解释为句柄按钮的“打开”操作.喜欢这个:只是让android:allowSingleTap=“false”然后只要按照一般的方式实现按钮的点击处理程序.这将阻止它打开/关闭抽屉,但您可能需要截取按钮的事件,以使其执行您想要的操作.

  3. JavaScript中添加监听句柄的方式

    这篇文章主要介绍了JavaScript中添加监听句柄的方式,监听就是触发某事件之后做出的响应,监听句柄是触发某相应的条件,下面关于添加监听句柄的方式的详细内容,需要的朋友可以参考一下,希望对你有所帮助

  4. 在Windows上禁用或刷新页面缓存

    ),它允许您在没有适当的权限的情况下使卷的缓存无效,仅仅通过在没有共享写入的情况下注册打开它,至少在一个最新版本的Windows.当任何对写入有效的打开成功,因为你可以改变文件系统内部数据这样做时,这是完全合理的,但显然它在打开卷失败时也有效.

  5. 如何从Win32中的func ptr获取Module HANDLE?

    我正在为虚拟机进行本机调用绑定,其中一个功能是能够在运行时按名称查找标准libc函数.在Windows上,这会变得有点麻烦,因为我需要获取当前在进程中加载的msvcrt模块的句柄.通常这是msvcrt.dll,但它也可能是其他变种,如果使用具有不同名称的变体,则对GetModuleHandle的调用可能会失败.我希望能够做的是反向查找,从libc中获取函数指针并获得提供它的模块的句柄.基本上,这样的事情:在win32API中是否有这样的东西,而不是下载到进程句柄和符号表的手动遍历?

  6. windows – 这是什么意思:“子进程可以继承句柄”?

    根据SDK,有一些Win32对象可以“继承”到给定进程创建的子进程.(事件,互斥体,管道……)这究竟意味着什么?假设我有一个使用CreateEvent创建的命名事件对象,一次使用bInheritHandle==true,另一次使用==false.现在我开始一个子进程.这两个事件句柄如何影响子进程?它们在哪些情况下有所不同?

  7. windows – 删除Node.js中的文件

    我在Windows环境中使用节点.当我使用fs.unlinkSync时,它似乎工作.执行unlinkSync语句后,如果我执行fs.existsSync,则返回false表示文件不存在,但是当我转到物理驱动器时,我仍然可以看到该文件.此时如果我尝试手动删除文件,则会抛出拒绝访问权限.但是,仅当我停止执行节点脚本文件时,才会自动从文件系统中删除该文件.这是预期的行为吗?

  8. windows – 在不同进程之间共享HDC

    我正在编写某种IPC功能,需要将某些资源从一个进程传递到另一个进程.这适用于Pipehandle等,可以通过DuplicateHandle复制.现在我需要将HDC从一个进程传递到另一个进程.这甚至可能吗?

  9. windows – 如何在具有句柄时检查给定进程是否正在运行

    我正在使用ShellExecuteEx来启动一个应用程序.成功启动后,我正在读取TShellExecuteInfo.hProcess以获取已启动进程的句柄.我想定期检查我的应用程序启动的进程是否仍在运行.两个或多个具有相同名称的进程可以同时运行,我想确保我的应用程序正在检查正确的进程.我希望能够在从Windows2000到Windows上的Windows系统上执行此操作.我知道有WinAPI函数G

  10. winapi – Win32:写入文件不缓冲?

    我错过了什么吗?

随机推荐

  1. 基于EJB技术的商务预订系统的开发

    用EJB结构开发的应用程序是可伸缩的、事务型的、多用户安全的。总的来说,EJB是一个组件事务监控的标准服务器端的组件模型。基于EJB技术的系统结构模型EJB结构是一个服务端组件结构,是一个层次性结构,其结构模型如图1所示。图2:商务预订系统的构架EntityBean是为了现实世界的对象建造的模型,这些对象通常是数据库的一些持久记录。

  2. Java利用POI实现导入导出Excel表格

    这篇文章主要为大家详细介绍了Java利用POI实现导入导出Excel表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  3. Mybatis分页插件PageHelper手写实现示例

    这篇文章主要为大家介绍了Mybatis分页插件PageHelper手写实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  4. (jsp/html)网页上嵌入播放器(常用播放器代码整理)

    网页上嵌入播放器,只要在HTML上添加以上代码就OK了,下面整理了一些常用的播放器代码,总有一款适合你,感兴趣的朋友可以参考下哈,希望对你有所帮助

  5. Java 阻塞队列BlockingQueue详解

    本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景,通过实例代码介绍了Java 阻塞队列BlockingQueue的相关知识,需要的朋友可以参考下

  6. Java异常Exception详细讲解

    异常就是不正常,比如当我们身体出现了异常我们会根据身体情况选择喝开水、吃药、看病、等 异常处理方法。 java异常处理机制是我们java语言使用异常处理机制为程序提供了错误处理的能力,程序出现的错误,程序可以安全的退出,以保证程序正常的运行等

  7. Java Bean 作用域及它的几种类型介绍

    这篇文章主要介绍了Java Bean作用域及它的几种类型介绍,Spring框架作为一个管理Bean的IoC容器,那么Bean自然是Spring中的重要资源了,那Bean的作用域又是什么,接下来我们一起进入文章详细学习吧

  8. 面试突击之跨域问题的解决方案详解

    跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。那怎么解决这个问题呢?接下来我们一起来看

  9. Mybatis-Plus接口BaseMapper与Services使用详解

    这篇文章主要为大家介绍了Mybatis-Plus接口BaseMapper与Services使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. mybatis-plus雪花算法增强idworker的实现

    今天聊聊在mybatis-plus中引入分布式ID生成框架idworker,进一步增强实现生成分布式唯一ID,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

返回
顶部