簡體   English   中英

將字符串轉換為鍵,反之亦然

[英]Converting string to key and vice versa

我在將Key(安全性)轉換為字符串並將其轉換為該對象時遇到問題。 我有一些錯誤:

java.lang.IllegalArgumentException: Illegal base64 character 20

和我的代碼:

KeyPairGenerator kpairg = KeyPairGenerator.getInstance("RSA");
kpairg.initialize(1024);
KeyPair kpair = kpairg.genKeyPair();
Key publicKey = kpair.getPublic();

// to String
String textFromKey = Base64.getEncoder().encodeToString(publicKey.getEncoded());

// to Key
byte[] byteKey = Base64.getDecoder().decode(textFromKey.getBytes());
X509EncodedKeySpec X509publicKey = new X509EncodedKeySpec(byteKey);
KeyFactory kf = KeyFactory.getInstance("RSA");
Key pubb = kf.generatePublic(X509publicKey);

textFromKey is sending to UDP server textFromKey is a output from server if I want to use that key textFromKey is sending to UDP server textFromKey is a output from server if I want to use that key我會在該網站上看到一些答案,但是有什么可以幫助我的。 你能看看這個嗎?

IDE告訴我有一個問題: byte[] byteKey = Base64.getDecoder().decode(textFromKey.getBytes());

僅從代碼來看,問題還不清楚。 你能嘗試做只是

X509EncodedKeySpec X509publicKey = new X509EncodedKeySpec(publicKey.getEncoded());

再回來嗎

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM