当前位置: 首页 > news >正文

wordpress 网站锁网站移动端优化工具

wordpress 网站锁,网站移动端优化工具,安徽今天的新消息,建设中学校园网站的来源最近在项目中遇到了读取证书中内容与读取keystore中对应公钥的需求#xff0c;在此做一下笔记读取证书最近项目中遇到后台返回个byte[]数组类型的证书#xff0c;需要从证书中获取相关内容#xff0c;先看一下相关代码BufferedInputStream mStream null;try {String s new…最近在项目中遇到了读取证书中内容与读取keystore中对应公钥的需求在此做一下笔记读取证书最近项目中遇到后台返回个byte[]数组类型的证书需要从证书中获取相关内容先看一下相关代码BufferedInputStream mStream null;try {String s new String(cert);//cert为后台返回的byte[]数组StringBuilder builder new StringBuilder();builder.append(-----BEGIN CERTIFICATE-----\n).append(s).append(\n-----END CERTIFICATE-----);mStream new BufferedInputStream(new ByteArrayInputStream(builder.toString().getBytes()));//参数 x.509为证书类型注意X.509 的 CertificateFactory 返回的证书必须是 java.security.cert.X509Certificate 的实例CertificateFactory instance CertificateFactory.getInstance(X.509);X509Certificate certificate (X509Certificate) instance.generateCertificate(mStream);Principal sigAlgName certificate.getSubjectDN();//主体名// certificate.getSigAlgName();//签名算法//certificate.getNotBefore();//有效期//certificate.getIssuerDN();//签发者} catch (CertificateException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}finally{if(mStream ! null ){mStream.close();}} 关于CertificateFactory类:此类定义了用于从相关的编码中生成证书、证书路径 (CertPath) 和证书撤消列表 (CRL) 对象的 CertificateFactory 功能。 关于X.509X.509是一种基本的证书格式x509证书由用户公共密钥和用户标识符组成。此外还包括版本号、证书序列号、CA标识符、签名算法标识、签发者名称、证书有效期等信息。开始时我是直接将数组转为String进行读取运行后报读取证书异常检查代码无果后打开本地证书与String进行格式比较后发现了关键就是代码中-----BEGIN CERTIFICATE----------END CERTIFICATE-----注这两个字符串分别就是证书的开始标签与结束标签只有开始与结束拼接上面两个字符串后才会是个完整的证书(拼接时注意要加换行符否则还不是个完整的证书)读取到证书后就可获取需要的信息了。读取Keystore中公钥参考资料传送门读取Keystore公钥其实与上面类似通过PackageInfo获取到本地证书后进行读取在读取证书时无需拼接以上两个标识符读取到的就是完整证书。在获取公钥时获取到的公钥格式包括一些字符串等信息需要自己进行截取处理一下。代码如下public void getPublicKey() {String signcode ;try {PackageInfo packageInfo mContext.getPackageManager().getPackageInfo(mContext.getPackageName(),PackageManager.GET_SIGNATURES);//Signature需注意 该类导包时有两个包 一个为java.signature 安卓中需要 android.content.pm.Signature包Signature[] signs packageInfo.signatures;Signature sign signs[0];signcode parseSignature(sign.toByteArray());signcode signcode.toLowerCase();//如有大写字符 都换为小写//signcode 便是需要的公钥} catch (Exception e) {LogUtill.debug(e.getMessage());}}private String parseSignature(byte[] signature) {String sign ;try {CertificateFactory certFactory CertificateFactory.getInstance(X.509);X509Certificate cert (X509Certificate) certFactory.generateCertificate(new ByteArrayInputStream(signature));String pubKey cert.getPublicKey().toString();String ss subString(pubKey);ss ss.replace(,, );ss ss.toLowerCase();int aa ss.indexOf(modulus);int bb ss.indexOf(publicexponent);sign ss.substring(aa 8, bb);} catch (CertificateException e) {LogUtill.debug(e.getMessage());}return sign;}private String subString(String sub) {Pattern pp Pattern.compile(\\s*|\t|\r|\n);Matcher mm pp.matcher(sub);return mm.replaceAll();}如有问题欢迎指正。
http://www.pierceye.com/news/890057/

相关文章:

  • 360网站seo怎么做北京商场关闭通知
  • 连云港建设公司网站工程承包信息
  • 互动网站制作建设医院网站服务
  • 用asp做网站span增城高端网站建设
  • 数据交易网站开发网站流量超
  • 做短视频网站用哪家cms湖州高端网站设计
  • 做肝病科网站张家港高端网站制作
  • 深圳外网站建设网站的策划分析
  • 电商网站建设机构移动通网站建设
  • 网站内容不被收录企业网站制作的市场
  • 个人网站 jsp 域名空间电商线上推广
  • 网站开发实战视频教程西安网站建设定
  • 有没有99块钱做网站邢台做网站的公司哪家好?
  • 物流网站设计与实现制作公司内部募捐网站
  • 新西兰注册公司做网站局域网网站
  • 做外贸要开通哪个网站网站建设模板
  • 广州专业做网站的科技公司维度网络做网站
  • l建设银行网站怎么注册网站
  • 网站设计多少钱wordpress调用菜单代码
  • 成都p2p网站建设手机网站和app有什么区别
  • 人像摄影作品网站怎么做多个网站单点登录
  • 企业网站设计推广方案外贸seo优化方法
  • 广州网站推广找哪家西安网站制作定制
  • 各大招聘网站上海网页制作方法
  • 舟山建设信息港门户网站网站用途及栏目说明
  • 在线留电话的广告专业搜索引擎seo服务商
  • 网站建设方案说明松山湖网站建设公司
  • 西安网站推广方案网站主机是服务器吗
  • seo站内优化培训北京社保网上服务平台官网
  • 滨海做网站价格呼和浩特市网站公司电话