java - BigInteger 到十六进制冒号表示法

标签 java ssl ssl-certificate

我正在使用 java.security.cert.X509Certificate 通过 SSL 套接字获取 SSL 证书。但是 X509Certificate 将证书的序列号作为 BigInteger 对象返回。我想要的是冒号分隔值格式的序列号(类似于我们从浏览器查看证书详细信息时看到的内容)。我们如何做到这一点?

我尝试了 toString(16),但我的序列号中仍然没有冒号。

请帮忙。

最佳答案

您可以使用简单的正则表达式在每组两位数字后插入冒号,如下所示:

String res = orig.replaceAll("(?<=..)(..)", ":$1")

此表达式匹配两个字符组,并在除第一个字符外的每个字符组前插入一个冒号。

这是一个demo on ideone .

关于java - BigInteger 到十六进制冒号表示法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17629629/

相关文章:

java - Jsoup 只选择最里面的 div

java - Struts2登录拦截器不工作

node.js - Mongoose 安装 - 无法验证第一个证书

ssl - 使用 webhooks 配置错误的 SSL

java - 从 Java Set 中获取一个项目

ssl - Amazon S3 静态网站的 HTTPS

php - SSL Step Wise 初学者实现指南

c# - 请解释WCF中客户端证书的概念

java - Tomcat 连接器匹配属性警告

java - Jetty 和自定义 sessionIdManager