在线商店

NFC数字签名软件SDK

µFR系列NFC RFID非接触式阅读器的数字签名源代码软件bob全站版

数字签名是在线业务的未来,无论我们谈论的是简单的文档、代码和电子邮件签名,还是我们现在在加密货币和区块链中看到的更高级的加密实施。
BOB直播官网app数字逻辑有限公司是世界上首批使用非接触式射频识别卡实施数字签名解决方案的公司之一。
我们预计,仍然使用联系人卡片的旧系统将很快成为过去。

μfr签名器软件支持rsa和ecdsa加密算法,用于对文件进行数字签名。
软件旨在与我们的μfr系列nfc设备一起使用:纳米,经典,经典cs高级
μfr签名器适用于所有支持rsa和ecdsa的卡。在我们的演示视频中,我们使用了jcop卡j3d081。

文档和软件下载

数字签名和验证工具

Dl签名者卡使用rsa或ecdsa非对称加密算法提供卡本身中的数据和文档的数字签名。支持PKI基础结构,在DL签名者卡中,可以存储与卡本身生成的加密密钥对相关的x证书。支持存储构成从根证书到最终实体证书的信任链的所有x.509证书。

在创建证书签名要求(以下简称csr)时,dl签名者卡中生成的公钥将放置在请求正文中。请求使用适当的私钥在卡本身中签名,该私钥永远不会离开卡本身,并且在生成密钥对后无法读取。此外,csr将发送到认证机构,以基于它创建和签署x.509证书。此最终实体证书与信任链中的其他证书一起放置在DL签名者卡中,并准备好对数据和文档进行数字签名。用户可以将csr发送给他希望使用其服务的任何认证机构。数字逻辑提供了一种机制,用于颁发最终实体证书来测试系统。最终实体证书的基本特征之一是,不得使用与此类证书包含的公钥配对的私钥来签署其他证书。

启动加密密钥对生成,生成CSR,管理DL签名者卡的销和库尔德斯坦爱国联盟代码,操作x证书的内容以及对数据和文件进行签名的Windows软件工具作为“ufr-signer”分发。

"签名验证程序"是一个验证RSA和ECDSA数字签名的Windows应用程序。

签名的数字签名和验证也可以使用我们为此目的开发的ufr-pkcs11模块从Adobe Acrobat Reader直流应用程序完成。我们的PKCS # 11模块还可以与流行的Mozilla电子邮件客户端和网页浏览器以及与PKCS # 11规范兼容的其他软件工具一起使用。

我们还提供Web服务,用于在线检查X.509证书和签名的pdf文件。

uFR签名者

“在这里签名者”是一种软件工具,用于启动加密密钥对的生成,生成CSR请求,用于管理DL签名者卡的销和库尔德斯坦爱国联盟代码,操作x证书的内容并对数据和文件进行签名。

应用程序使用选项卡控件可视组件划分为多个逻辑单元。选项卡由以下单位的名称标记:

" rsa密钥"和" ec密钥"用于创建和操作rsa或ecc密钥对。

RSA和ECC(李维斯特,Shamir和Adleman)(椭圆曲线密码学)代表了当代的非对称加密算法。Dl签名卡支持分别存储3个rsa密钥和3个ecc密钥。每个加密密钥可以具有不同的长度和特征,它由加密算法和密钥索引指示。

“PIN码”选项卡是指管理用户销码并将其记录到这里读卡器字段中的DL签名卡中。pin是“个人识别号码”的缩写。除了pin码,在此选项卡上,您还可以使用puk码解锁最终被阻止的卡。Puk代表“pin解锁密钥”。

“卡对象”选项卡用于通过索引管理与其各自的加密密钥关联的ca证书和最终实体证书。证书必须采用x.509版本最终实体凭证必须包含最初在dl签名卡中生成的公钥,与关联的私钥成对生成。证书的主要用途是用于准备通过pkcs #11模块进行签名。对于将dl签名卡用于专有应用程序,x。509 证书的存在不是强制性的。

在“签名”选项卡上,有用于创建数字签名的选项。可以对字节数组、文本输入或文件进行签名。可以使用“签名验证器”应用程序验证这些签名。

为了有效地解决性能问题,dl签名卡旨在尽可能简洁地对数据块进行签名。因此,使用PKCS#1 v1.5方案定义的RSA算法对数据进行数字签名是一种做法。对于ecdsa算法,rfc 6979中定义了数字签名生成过程,填充和对齐机制。

uFRSigner应用程序的最新版本是1.5.3.0,需要使用uFCoder库版本5.0.1或更高版本和这里固件版本5.0.7或更高版本。

密码

pin码是“个人识别号码”的缩写。Dl签名卡包含2个不同的引脚码。这些是所以(安全官)pin码和用户pin码。所谓的"安全官"是指具有访问dl签名卡上安全对象的管理权限的用户。因此,pin码应与用户pin码不同。

在需要更改pin码和puk码以及更改密钥和证书的存储内容的情况下,需要登录“安全官”才能访问卡。必须使用用户pin码码登录才能获取散列数据字符串的数字签名。

Dl签名卡上的引脚码最少可以包含4个字符,最多可以包含8个字符。在这里,在字符下,有任何字母数字(区分大小写)或任何可打印字符。可打印字符主要是指标准键盘上的标点符号。更改销码时,不建议使用只能在单个本地化小键盘上找到的特定字符,而只能使用符合ASCII标准且存在于标准美国英语键盘上的字符。

在所有DL签名卡中,默认针码和用户销码最初都是由八个连续的数字字符“0”(零)或“00000000”组成的。

输入的连续错误引脚码的最大数量为如果超过输入pin码的错误连续尝试次数,则会阻止该pin码。虽然pin码未被阻止,但输入正确的pin码会重置错误输入的pin码计数器。

解锁pin的唯一方法是输入正确的puk代码。puk是“pin解锁密钥”的缩写。所以puk代码专门用于解锁所以pin码和用户puk以解锁用户pin码。如果连续10个错误输入的库尔迪斯爱国联盟代码,库尔迪斯爱国联盟代码将变得不可用,并且与被阻止的PIN码相关的卡的功能将永远被阻止。

uFR DL签名器引脚

Rsa密钥

在" rsa密钥"选项卡上,有用于创建和管理rsa密钥的选项。在使用RSA密钥之前,DL签名者卡必须位于连接到运行ufr-signer应用程序的计算机的在这里读取器字段中。此外,所以(安全官)需要登录。

uFR DL签名者RSA密钥

欧共体钥匙

在" ec密钥"选项卡上,有用于创建和管理ec密钥的选项。在使用EC密钥之前,DL签名者卡必须位于连接到运行这里签名者应用程序的计算机的在这里读取器字段中。此外,所以(安全官)需要登录。

uFR DL签名者ECC

Dl签名卡支持以下标准ecc曲线:

Dl签名者22:

Secp112r1, secp112r2, secp128r1, secp128r2, secp160k1, secp160r1, secp192k1, secp192r1, secp224r1, secp256k1, secp256r1, secp384r1, secp521r1, sect113r1, sect131r1, sect131r2, sect163k1, sect163r1, sect163r2, sect193r1, sect193r2, sect233k1, sect233r1, sect283k1, sect283r1, sect409k1, sect409r1。

Dl签名者30:

Secp192k1, secp192r1, secp256k1, secp256r1, secp384r1。

Dl签名者145:

Secp160k1, secp160r1, secp160r2, secp192k1, secp192r1, secp224k1, secp224r1, secp256k1, secp256r1, secp384r1, secp521r1。

生成证书签名请求(csr)

它由pkcs #10标准定义,表示标准化记录,其中包含有关可分辨名称中证书用户的基本信息。根据特征名称,在最终的x.509证书中形成所谓的主题(主题字段)。此外,企业社会责任记录还可能包含x标准指定的扩展名,证书颁发机构(CA)可能会考虑或丢弃这些扩展名,具体取决于其认证策略。csr的基本部分当然是公钥及其参数。所有这些数据,以PKCS # 10标准定义的形式打包,最终通过适当的加密摘要算法,结果使用适当的私钥在卡中签名。由此获得的数字签字成为企业社会责任的一个组成部分。

CSR将发送到所需的证书颁发者,该颁发者代表所谓的证书颁发机构(ca)。证书颁发者将生成您的x最终实体证书,该证书由其各自的私钥签名,现在与相应的中间或根CA证书中包含的公钥相关联。这样,您的最终实体证书将成为证书颁发机构(ca)保证的信任链的一部分。

“证书签名请求(CSR)”对话框是一个单独的组,用于输入“可分辨名称(DN)”、“扩展”,在组合框组的右上角,用于控制哈希算法和加密密钥的定义。右下方是一组按钮,用于选择与生成CSR相关的活动。

可分辨名称(称为dn)由表示属性组的相对可分辨名称(rdn)组组成。定义dn时,rdn字段的顺序非常重要。请务必注意,可以在dn中多次重复单个RDN字段。必须记住,证书颁发机构(CA)没有义务颁发具有CSR中定义的相同DN的证书,但DN可以根据自己的规则和在先前实施的用户身份验证期间获得的数据形成。

Dn的形成是通过从组合框中选择适当的RDN并在文本框中键入所需值来完成的。通过按“放置”按钮,声明的RDN将被放置在定义dn的列表(列表框)上。如果在列表中选择了其中一个RDN字段,则会在所选字段和上一个字段之间插入新的RDN。如果未在dn列表中选择任何内容,则会在列表末尾插入一个新的RDN字段。要取消列表中的选择,请按"取消选择"按钮。不正确的rdn可以通过按"删除"从列表中删除。可以使用“上移”和“下移”按钮更改RDN字段的顺序,这些按钮会影响列表中所选RDN的冗余。

扩展是CSR的可选部分,证书颁发机构(ca)可以根据其认证策略考虑或拒绝它们。可以分配更多属性,并且最好在主题的备用主题(主题备用名称,缩写为subjectAltName)中定义电子邮件地址,因为这是通常用于此目的的常用位置的证书颁发者。对于扩展,各个属性的顺序并不重要。可以设想,仍然可以定义密钥的所需用途、密钥的扩展用途以及与合格证书相关的语句。再次强调的是,证书的颁发者可以忽略扩展名,只有其中一些可以颁发所谓的合格电子证书。无论如何,在扩展名中,用户可以指示未来证书的所需元素,但是,x .证书的最终消除再次完全取决于其颁发者,并且在签订颁发合同之前,所有详细信息都需要完全熟悉其策略。

uFR DL签名者CSR

哈希算法的选择是从标有“签名者摘要算法”的组合框中完成的。默认选择是sha - 256,它与输出端有256位或32字节用户的SHA2算法有关,建议将其用于CSR。不再推荐使用SHA1,并用户且SHA2在输出处具有更高的字节数(384和512),并且计划在未来更频繁地使用SHA3算法。

密钥及其参数(“签名者密码算法”和“签名者密钥索引(卡)”)不能在此处更改,并且已经在打开此对话框的选项卡上定义(“RSA密钥”或“EC密钥”),它们在此处的目的仅供参考。如果您打开CSR对话框的“RSA密钥”或“EC密钥”在指示RSA密钥大小的标签上没有相应的公钥,以前从卡中读取,ECDSA曲线将指示为“未设置公钥”。如果未设置公钥,则无法执行“签名并保存CSR”,但可以从现有CSR或所谓的TBS CSR加载DN和扩展。

TBS CSR是我们的内部记录格式,即所谓的“待签名“请求,可以作为创建具有多个常见功能的CSR请求的模板。TBS CSR不包含加密密钥,而仅存储dn和扩展。

按"清除条目"按钮可删除dn和扩展中的所有项目,以便为新条目准备对话框。

通过按"签名并保存csr "键,即可在卡中签署csr并将其存储在所选文件中。如果卡不在连接的在这里读卡器的字段中或输入了错误的用户PIN码,您将收到一条带有相应描述的错误消息。

生成CSR后要做的最后一件事是将其发送到证书颁发者以接收x.509证书。您可以选择任何商业或非商业证书颁发者,或者通过按“在线获取证书”按钮,您可以将CSR发送到我们的网络服务,以获得由“BOB直播官网app数字逻辑有限公司”颁发的演示,测试证书。测试证书。演示,测试证书仅供测试使用,有效期为3个月。随附的根和中间ca证书,您可以从http://ca.d-logic.com下载。

如果单击”在线获取证书”按钮,系统将提示您输入以前保存的扩展名为“.pem”的CSR文件,该文件将发送到HTTP服务器。如果成功连接https://certificates.d-logic.com上的服务器并颁发x.509证书,系统将提示您输入文件名以保存证书。否则,您将收到相应的错误消息。

X.509对象

此选项卡用于管理与dl签名卡上的证书相关的x.509对象。要从卡中读取x.509对象,无需使用任何pin码登录。要更改卡上x.509对象的存储内容,您需要在“pin码”页面上使用所以pin码登录。

uFR DL签名者objs

在“X。509对象”选项卡上,应用程序立即尝试读取uFR读卡器字段中存在的卡。如果字段中没有dl签名卡,则会出现一条错误消息,如下图所示:

错误图像

如果从卡中成功读取x.509对象存储,则证书显示列表将填充该内容。您可以随时刷新这些列表,方法是将所需的卡放在读卡器字段中,然后按“刷新卡中的对象”按钮。

X.509证书文件选择是通过按"打开证书文件"键完成的。也可以从PEM格式(Base64编码)的文件(通常具有扩展名“.pem”)或以asn . 1标准(DER编码)编写的二进制文件中读取证书,这些文件可以具有扩展名“.crt”、“c”或“.der”。如果选择了有效文件,将显示一个系统对话框,显示所选x.509证书的内容。检查证书项目后,只需按"确定"按钮即可确认这一点。

要将所选证书存储在卡中,您需要输入所需的对象ID(任意字母数字字符串),对于存储在卡上的其他证书,该对象ID必须是唯一的。对象id在标有"对象id: "的文本框中输入。建议是包含rsa公钥的证书应标有id例如。" 0001 "到" 0003 "以及包含ecdsa公钥的公钥将被标记为例如。1001到1003。CA证书还必须在卡上具有唯一的ID标签,因此建议使用例如“5001”到“5012”对其进行标记。仍然需要选择密钥类型。对于rsa和ecdsa类型,卡中的私钥索引绑定到该证书,并且这些索引必须一致。对于CA证书颁发机构,索引的顺序无关紧要,但由于建议的透明度,它们应按顺序输入,一个接一个地成对输入,例如,从根到中间。支持PKCS # 11模块并使用x证书的应用程序通过从卡读取所有公共对象,然后根据证书本身的内容检查信任链来工作。最后,您需要按下带有描述性名称的按钮"将文件中的证书放入具有指定id,对象类型和索引的卡中"。

我们提到了ca证书的根证书对和中间对,可能有必要进一步澄清这一点。在这里,我们假设信任链中的最终实体证书是通过中间到根ca证书建立的。这是证书官方颁发者形成信任链的常用方式。但是,这不是一个严格的规则,其他配置可以更改形成信任链的ca证书。需要强调的是,始终有两个最终证书,在链的开的头,即所谓的根CA(根)证书,在链的末尾,在链的末端——实体证书(叶证书)

签名

在“签名”选项卡上,有用于从卡获取数字签名的命令。可以对输入行中标有“M:”(消息)的一组数据进行签的名,也可以对可通过单击“设置要签名的文件“单选按钮来设置其路径的文件进行签名。数据可以以十六进制(十六进制)格式,Base64编码或ASCII代码布局输入。

十六进制(十六进制)格式包括可以用空格分隔的十六进制数字对。Base64格式通常用于X.509证书的加密和PEM记录。在这里,我们不会详细处理Base64格式。ASCII码代码布局是记录文本数据集的常用标准,其中包括所有字母数字字符以及所有标准标点符号。原则上,可以通过标准美国英语键盘输入的所有内容都包含在ASCII代码布局中。如果输入了不属于ASCII代码布局的字符,并且选择了此选项,则这些字符将在内部替换为字符" ? "。不属于ASCII代码布局的字符可以通过某些本地化键盘或通过从M:“文本框的上下文菜单中选择“粘贴“选项来输入。

在输入行中输入某些数据时,只需选择所需的记录格式(十六进制/ Base64 / ASCII选项),即可转换为另一种类型的记录,除非存在输入错误。

单击"设置要签名的文件"单选按钮将打开Windows操作系统的标准文件选择对话框。选择文件后,其路径将设置为“m:”文本框。

通过按“将消息保存到二进制文件”按钮,可以将在“m:”文本框中输入的字节数组存储到二进制文件中。

通过选择“获取签名”,待签名数据通过选定的哈希算法(消息摘要算法),其结果被发送到卡。然后,卡根据“密码算法”组合框(RSA或ECDSA)和卡中的密钥索引(“卡中的密钥索引”组合框)中的所选加密算法生成签名。要签署卡,必须事先使用用户pin码登录。

uFR DL签名者签名

成功签名后,数字签名的值将以十六进制或Base64格式显示在“签名“文本框中,具体取决于所选选项。通过更改HEX / Base64选择,可以转换签名显示。签名可以通过按“将签名保存到二进制文件”按钮保存在二进制文件中。

还实现了可选的计算数字签名的哈希值。出于历史原因,为此目的选择哈希算法还包括过时的MD5算法,因为一些旧的加密系统仍然依赖于这种机制。数字签名的哈希值可以通过按“将哈希保存到文件”按钮存储在二进制文件中。

软件下载

软件开发工具包(sdk)可从我们的软件存储库下载。

先决条件

μfr系列NFC读卡器, μfr固件版本3.9.53或更高版本,μfr库版本4.3.3或更高版本。

视频演示:

软件截图:

使用Nbob全站版FC RFID阅读器uFR经典CS 2进行数字签名

其他链接:

要浏览或下载其他软件示例,请访问我们的Gitlab软件存储库

要购买我们的设备,请访问我们的官方在线商店

如果您对我们的软件示例有任何疑问,请随时联系我们的技术支持

Baidu
map