从以下格式发送字符串:

-----BEGIN RSA PUBLIC KEY-----

MIGHAoGBANAahj75ZIz9nXqW2H83nGcUao4wNyYZ9Z1kiNTUYQl7ob/RBmDzs5rY

mUahXAg0qyS7+a55eU/csShf5ATGzAXv+DDPcz8HrSTcHMEFpuyYooX6PrIZ07Ma

XtsJ2J4mhlySI5uOZVRDoaFY53MPQx5gud2quDz759IN/0gnDEEVAgED

-----END RSA PUBLIC KEY-----

如何从此字符串构造PublicKey对象?

试过以下

删除页眉和页脚,base64解码缓冲区

public static PublicKey getFromString(String keystr) throws Exception

{

//String S1= asciiToHex(keystr);

byte[] keyBytes = new sun.misc.BASE64Decoder().decodeBuffer(keystr);

X509EncodedKeySpec spec =

new X509EncodedKeySpec(keyBytes);

KeyFactory kf = KeyFactory.getInstance("RSA");

return kf.generatePublic(spec);

}

这可能会作为无效的密钥格式失败,也会失败

java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: IOException: algid parse error, not a sequence

at sun.security.rsa.RSAKeyFactory.engineGeneratePublic(RSAKeyFactory.java:188)

at java.security.KeyFactory.generatePublic(KeyFactory.java:304)

at PublicKeyReader.getFromString(PublicKeyReader.java:30)

at Tst.main(Tst.java:36)

密钥是通过openSSL PEM_write_bio_RSAPublicKey(bio,rsa)的API生成的;

java 生成der_java – 我们如何将字符串从PEM转换为DER格式相关推荐

  1. 使用Java代码将word、execl、ppt文件转换为pdf格式

    office文件转换为pdf格式 使用OpenOffice转换 前言:通过第三方工具openoffice,将word.excel.ppt等文件转换为pdf文件支持在线 预 览:官网地址:http:// ...

  2. Java生成固定长度的随机字符串(以大小写字母和数字)

    package org.jimmy.autosearch2019.test;import java.util.ArrayList; import java.util.Random;/*** @auth ...

  3. Java 生成固定长度随机中文字符串

    /*** * 生成固定长度随机中文,kuojung * @param n 中文个数 * @return 中文串 */ public static String getRandomChineseStri ...

  4. java时间戳转calender_Java获取当前时间,时间戳转换为时间格式 | 学步园

    1. SimpleDateFormat tempDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String datetim ...

  5. java中json重复数据结构_JAVA把各种数据结构转换为JSON格式

    Java代码 import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import ja ...

  6. json生成shp_使用JS把shapefile地图数据转换为geojson格式

    JavaScript 语言: JaveScriptBabelCoffeeScript 确定 /* http://github.com/wavded/js-shapefile-to-geojson */ ...

  7. java生成16位随机数_java中如何产生一个16位数字组成的随机字符串?谢谢各位了...

    展开全部 方法如下: Random ran=new random(); boolean flag=true; while(flag){ int a=ran.nextInt(99999999); int ...

  8. java生成6随机数字和字母_Java生成含字母和数字的6位随机字符串

    本文实例为大家分享了Java生成6位随机字符串的实现代码,具体内容如下 package com.amos.tools; import java.util.ArrayList; import java. ...

  9. java生成字符串数组_Java 生成随机字符串数组的实例详解

    Java 生成随机字符串数组的实例详解 利用Collections.sort()方法对泛型为String的List 进行排序.具体要求: 1.创建完List之后,往其中添加十条随机字符串 2.每条字符 ...

  10. java生成随机6个数字和字母_java_Java生成含字母和数字的6位随机字符串,本文实例为大家分享了Java生成 - phpStudy...

    Java生成含字母和数字的6位随机字符串 本文实例为大家分享了Java生成6位随机字符串的实现代码,具体内容如下 package com.amos.tools; import java.util.Ar ...

最新文章

  1. 使用 OpenCV 和 Tesseract 对图像中的感兴趣区域 (ROI) 进行 OCR
  2. ner pytorch project code
  3. vs2015更改默认项目类型
  4. 一起学DHCP系列(五)指派、获取
  5. Python Django session存取值代码演示及jsonpickle序列化
  6. 用linq查询html中div个数,C#使用Linq to XML进行XPath查询
  7. 作者:赵永恒(1964-),男,博士,中国科学院国家天文台研究员、博士生导师...
  8. 【scrapy】学习Scrapy入门
  9. java学习笔记—实现一个类MyInputStream(28)
  10. 原创 | 基于开源的互联网和深度信息技术
  11. 初识Java 之软件下载与安装配置
  12. Ubuntu下无法启动wifi
  13. python实现微信机器人 + 淘宝客自动领券(二)
  14. 微信公众平台开发入门
  15. 企业如何制作自己的公司网站?
  16. Java设计模式之《装饰器模式》
  17. 03-做一个通读Vue源码的计划吧
  18. 如何查看域控计算机是哪个用户登陆,查看域控制器上登录用户
  19. JavaScript中的标签语句
  20. substance painter学习1——安装

热门文章

  1. Ubuntu里安装快捷键截图软件Flameshot
  2. C语言二级操作题满分班(2015年9月方法篇)-叶冬冬-专题视频课程
  3. opencv经过canny生成的视频无法播放问题的解决方法
  4. 行严格对角占优矩阵——一道矩阵代数作业题
  5. ahu university算法设计考试
  6. 【目标检测】YOLOv1代码实现之TensorFlow
  7. 支配树学习思路/模板
  8. Sparse sharing 在ANN实现多任务时的应用
  9. iOS 一个功能很全的视频播放器
  10. Web前端之HTML+CSS的知识总结