Java 给定公钥字符串,如何创建RSAPublicKey的实例

Java 给定公钥字符串,如何创建RSAPublicKey的实例,java,jwt,Java,Jwt,我有一个实际的公钥字符串,如: -----BEGIN PUBLIC KEY----- flajeleofancncMFLDFJOEEFJC9209ueq33rlsjfa3B ... -----END PUBLIC KEY----- 为了创建一个-libraryAlgorithm来签署我的JWT,我需要一个java.security.interfaces.RSAPublicKey-实现实例。如果给定公钥字符串,我将如何创建该实例?如果有帮助,我还有私钥字符串。 我才刚开始。所以,我愿意以更简单的

我有一个实际的公钥字符串,如:

-----BEGIN PUBLIC KEY-----
flajeleofancncMFLDFJOEEFJC9209ueq33rlsjfa3B ...
-----END PUBLIC KEY-----
为了创建一个-library
Algorithm
来签署我的JWT,我需要一个
java.security.interfaces.RSAPublicKey
-实现实例。如果给定公钥字符串,我将如何创建该实例?如果有帮助,我还有私钥字符串。 我才刚开始。所以,我愿意以更简单的方式签署我的JWT

import java.security.KeyFactory;
import java.security.spec.X509EncodedKeySpec;
import java.security.KeyFactory;
import java.security.PublicKey;
import java.security.spec.EncodedKeySpec;
import java.security.interfaces.RSAPrivateKey;


这可能很清楚,但java.security.interfaces.RSAPublicKey是一个接口。意味着你将无法拥有它的实例。您需要它的实际实现,我建议您查看您链接的JavaAWT项目的自述文件。它提供了一些信息,希望能为您指明正确的方向。@AndiCover,是的,我正在寻找一个实现该接口的实例。@Code学徒,不幸的是,它没有。我看到的就是这些:
rsaplickey publicKey=//获取密钥实例
String algorithm = "RSA" // for example
KeyFactory kf = KeyFactory.getInstance(algorithm);
String publicKeyStr = "-----BEGIN PUBLIC KEY-----f24Defosfvak-----END PUBLIC KEY-----"
EncodedKeySpec keySpec = new X509EncodedKeySpec(publicKeyStr.getBytes());
RSAPublicKey publicKey = kf.generatePublic(keySpec);