小编Ari*_*ira的帖子

匹配Parsec中的字节串

我目前正在尝试使用Real World Haskell中提供的Full CSV Parser .为了我试图修改代码ByteString而不是使用String,但有一个string组合使用String.

是否有一个秒差距组合子相似,string与之配合ByteString,而无需做转换来回?

我已经看到有一个替代解析器可以处理ByteString:attoparsec但我更愿意坚持使用Parsec,因为我只是学习如何使用它.

haskell parsec bytestring

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

尝试输入密码成功后,PKCS#11 密钥库不验证密码

我使用以下代码从 Athena 智能卡读卡器访问 PKCS#11 智能卡的内容。

Provider pkcs11Provider = new SunPKCS11(new ByteArrayInputStream (config.getBytes()));
if (Security.getProvider(pkcs11Provider.getName()) != null) {
    Security.removeProvider(pkcs11Provider.getName());
}

Security.addProvider(pkcs11Provider);

KeyStore myKeyStore = KeyStore.getInstance ("PKCS11", pkcs11Provider);
myKeyStore.load(null, keystore_password.toCharArray());

return myKeyStore;
Run Code Online (Sandbox Code Playgroud)

问题如下:

  1. 我输入了错误的密码。
  2. 代码抛出异常(如预期)。
  3. 我输入正确的密码。
  4. 代码不会引发异常(如预期)。
  5. 我输入了错误的密码。
  6. 代码不会引发异常(意外)。

根据http://docs.oracle.com/javase/6/docs/technotes/guides/security/p11guide.htmlKeyStore.Builder使用该类时,使用同一智能卡首次成功加载后不会要求输入密码。当然,我在上面的代码中没有使用这个类。同样的事情也适用于 KeyStore.getInstance(...)方法吗?有没有办法让密钥库在输入错误密码时抛出异常,无论以前的加载尝试如何?

java keystore pkcs#11

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

标签 统计

bytestring ×1

haskell ×1

java ×1

keystore ×1

parsec ×1

pkcs#11 ×1