Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从XML文件读取Java中的RSAPublicKey_Java_.net_Xml Signature - Fatal编程技术网

从XML文件读取Java中的RSAPublicKey

从XML文件读取Java中的RSAPublicKey,java,.net,xml-signature,Java,.net,Xml Signature,如何从xml文件中读取Java中的RSA公钥 这是文件格式 <?xml version="1.0" encoding="UTF-8" standalone="no"?> <RSAKeyValue> <Modulus>jWa96uXeSM6hUH0E/ueihtuowdte8</Modulus> <Exponent>BAAQ</Exponent> </RSAKeyValue> jWa96uXeS

如何从xml文件中读取Java中的RSA公钥

这是文件格式

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<RSAKeyValue>
    <Modulus>jWa96uXeSM6hUH0E/ueihtuowdte8</Modulus>
    <Exponent>BAAQ</Exponent>
</RSAKeyValue>

jWa96uXeSM6hUH0E/ueihtuowdte8
巴亚克

此元素是XMLSec的一部分,通常它被包装在内部。Java6提供了XMLSec支持,但我怀疑它是否有公共接口来解析这个元素

这只是Base64编码的公钥。假设您将XML内容解码为字节数组,分别为
modBytes
expBytes
。您可以像这样将其转换为JCE密钥

     KeyFactory rsaFactory = KeyFactory.getInstance("RSA");
     RSAPublicKeySpec rsaKeyspec =
        new RSAPublicKeySpec(new BigInteger(modBytes),
           new BigInteger(expBytes));
     PublicKey key = rsaFactory.generatePublic(rsaKeyspec);

该元素是XMLSec的一部分,通常被包装在内部。Java6提供了XMLSec支持,但我怀疑它是否有公共接口来解析这个元素

这只是Base64编码的公钥。假设您将XML内容解码为字节数组,分别为
modBytes
expBytes
。您可以像这样将其转换为JCE密钥

     KeyFactory rsaFactory = KeyFactory.getInstance("RSA");
     RSAPublicKeySpec rsaKeyspec =
        new RSAPublicKeySpec(new BigInteger(modBytes),
           new BigInteger(expBytes));
     PublicKey key = rsaFactory.generatePublic(rsaKeyspec);