小编qat*_*eey的帖子

Perl中的XML数字签名

我正在尝试使用该Crypt::OpenSSL::RSA模块在Perl中对XML进行数字签名.我正在从文件中加载私钥.私钥是使用Java从密钥库生成的.

以下是我的Perl代码:

my $private = 'my_priv.key';
my $private_key = read_file( $private );
print "my private key text is\n", $private_key;
Run Code Online (Sandbox Code Playgroud)

输出,而不是把整个键放在这里,只是少数第一行:-)

> -----BEGIN PRIVATE KEY----- MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAKAuqJ1ZkxHZStfSt0CdEsaSYuLO
> 6zDiTpt60asVLWpLe2bf...
Run Code Online (Sandbox Code Playgroud)


my $rsa_priv = Crypt::OpenSSL::RSA->new_private_key($private_key);
print "my private key is\n",$rsa_priv->get_private_key_string();
Run Code Online (Sandbox Code Playgroud)

输出:

> -----BEGIN RSA PRIVATE KEY-----
> MIICXAIBAAKBgQCgLqidWZMR2UrX0rdAnRLGkmLizusw4k6betGrFS1qS3tm3+97
> wMvFXCx0Od8eb
Run Code Online (Sandbox Code Playgroud)

结果$private_key$rsa_priv->get_private_key_string()不同.它应该表现得那样吗?

有没有人能够使用XML签名Crypt::OpenSSL::RSA

编辑:

我正在使用java代码提取私钥,代码如下:KeyStore ks = KeyStore.getInstance("JKS");

keypass = sPass.toCharArray();

FileInputStream fis = new FileInputStream(store);
ks.load(fis, sPass.toCharArray());
fis.close();

String eol = System.getProperty("line.separator");

Key k = ks.getKey(alias, …
Run Code Online (Sandbox Code Playgroud)

xml perl digital-signature

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

标签 统计

digital-signature ×1

perl ×1

xml ×1