代码: @UtilityClass public final class X509Certs { private static final CertificateFactory CERTIFICATE_FACTORY; static { try { CERTIFICATE_FACTORY = CertificateFactory.getInstance(CertificateType.X509); } catch (CertificateException e) { throw Throwabl…
今天同事遇到一个问题,他获得的证书只有pem格式,而服务器要求提交p12格式,一时搞不定,来找我帮忙. 我之前也从未接触过证书类型的转换,所以上网大致搜索了一下,又亲自动手试了试,现将有关心得经验记录如下: 1.Windows环境下转换证书格式可以下载一个工具名字叫OpenSSL(见附件含64位和32位) 2.安装后,会在安装目录生成一个OpenSSL-Win64文件夹,该文件夹下有一个bin文件夹,打开openssl.exe,出现命令提示符 3.一般情况下pem证书是由cert.pem和key…
一.DER编码密钥对 先说下DER编码,是因为JCE本身是支持DER编码密钥对的解析的,可以参见PKCS8EncodedKeySpec和X509EncodedKeySpec. DER编码是ASN.1编码规则中的一个子集,具体格式如何编排没有去了解,但最终呈现肯定的是一堆有规律的二进制组合而成. PKCS#8定义了私钥信息语法和加密私钥语法,而X509定义证书规范,通常都会用DER和PEM进行编码存储,而在JAVA中则使用的 DER. 接下来看看如果通过DER编码的密钥对分别获取JAVA的公私钥对…
1.生成PEM格式RSA私钥 不对输出的文件内容进行加密 openssl genrsa -out private-rsa.key 对输出的文件内容进行加密(DES/AES128/AES256等) openssl genrsa -out rsa.pem -aes128 -passout pass: 私钥转换成PKCS8格式 openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt > rsa_pri…
将JSon格式的"数组"字符串转换为Java对象"数组". 应用此技术从一个json对象字符串格式中得到一个java对应的对象. JSONObject是一个“name.values”集合, 通过get(key)方法取得key对应的value部分(字符串). 通过getJSONObject(key)可以取得一个JSONObject对象. 通过getJSONArray(key)可以得到一个JSONArray对象. 导入需要的jar包: package com.west.…
/** * 将小数度数转换为度分秒格式 * @param numStr (主要用于图片中存储经纬度) * @return */ public static String convertToSexagesimal(String numStr){ double num = Double.parseDouble(numStr); int du=(int)Math.floor(Math.abs(num)); //获取整数部分 double temp=getdPoint(Math.abs(num))*60…
主流数字证书都有哪些格式? 一般来说,主流的Web服务软件,通常都基于两种基础密码库:OpenSSL和Java. Tomcat.Weblogic.JBoss等,使用Java提供的密码库.通过Java的Keytool工具,生成Java Keystore(JKS)格式的证书文件. Apache.Nginx等,使用OpenSSL提供的密码库,生成PEM.KEY.CRT等格式的证书文件. 此外,IBM的产品,如Websphere.IBM Http Server(IHS)等,使用IBM产品自带的iKeym…
主流数字证书都有哪些格式? 一般来说,主流的Web服务软件,通常都基于两种基础密码库:OpenSSL和Java. Tomcat.Weblogic.JBoss等,使用Java提供的密码库.通过Java的Keytool工具,生成Java Keystore(JKS)格式的证书文件. Apache.Nginx等,使用OpenSSL提供的密码库,生成PEM.KEY.CRT等格式的证书文件. 此外,IBM的产品,如Websphere.IBM Http Server(IHS)等,使用IBM产品自带的iKeym…
一般来说,主流的Web服务软件,通常都基于两种基础密码库:OpenSSL和Java. Tomcat.Weblogic.JBoss等,使用Java提供的密码库.通过Java的Keytool工具,生成Java Keystore(JKS)格式的证书文件. Apache.Nginx等,使用OpenSSL提供的密码库,生成PEM.KEY.CRT等格式的证书文件. 此外,IBM的产品,如Websphere.IBM Http Server(IHS)等,使用IBM产品自带的iKeyman工具,生成KDB格式的证…
做这个东西在坑里爬了3天才爬出来,记录下供园友参考.C#程序员一枚,项目需要和Java做数据交互,对方甩了段密文和一个CER证书给我,然后我要对其密文进行解密. RSA 非对称加密,对方用私钥加密,我用公钥解密.关于证书的一点说明:证书类型有两种 .pfx 和 .cer ,其中 .pfx 证书既包含公钥也包含私钥, 而 .cer 证书只包含公钥. C#默认RSA只支持公钥加密,私钥解密.而现在的需求正好相反,因此想要直接用C#内置加密类肯定是行不通的.而且C#和Java的RSA加密并不互通.经过…
说到https,我们就不得不说tls/ssl,那说到tls/ssl,我们就不得不说证书机构(CA).证书.数字签名.私钥.公钥.对称加密.非对称加密.这些到底有什么用呢,正所谓存在即合理,这篇文章我就带你们捋一捋这其中的关系. 对称加密 对称加密是指双方持有相同的密钥进行通信,加密速度快,但是有一个安全问题,双方怎样获得相同的密钥?你总不能总是拿着U盘把密钥拷贝给对方吧. 常见的对称加密算法有DES.3DES.AES等 非对称加密 非对称加密,又称为公开密钥加密,是为了解决对称加密中的安全问题而…
将JSon格式的"数组"字符串转换为List集合. 应用此技术从一个json对象字符串格式中得到一个java对应的对象. JSONObject是一个“name.values”集合, 通过get(key)方法取得key对应的value部分(字符串). 通过getJSONObject(key)可以取得一个JSONObject对象. 通过getJSONArray(key)可以得到一个JSONArray对象. 导入jar包: 编写:po(bean)类: package com.west.web…
1.在seleniumIDE录制框中点击Options->options... 在Enable experimental features前打对勾,点击确定.…
C#的秘钥跟JAVA的密钥区别   RSA对于程序本身是没有区别的,其格式都是相同的.对于不同的程序来说,存储使用的语法(包装的类)会有所不同. RSA语法和语法标准有很多,大的类型大概分为ASN.1.PKCS.X.509. RSA语法介绍 ASN.1.PKCS是最初的,也是最主要的RSA公钥和私钥的语法标准,被RSA Lab所维护. ASN.1.PKCS#1都定义了公钥和私钥的类型——序列化的数字.为了下一个层次的抽象(适当的包装),现在一般使用的组合是:PKCS#8的私钥,X.509的公钥…
当前使用的是Linux系统,已经安装OpenSSL软件包. 一.使用OpenSSL来生成私钥和公钥1.执行命令openssl version -a 验证机器上已经安装openssl $ openssl version -a 2.生成私钥这条命令让openssl随机生成一份私钥,加密长度是1024位.加密长度是指理论上最大允许”被加密的信息“长度的限制,也就是明文的长度限制.随着这个参数的增大(比方说2048),允许的明文长度也会增加,但同时也会造成计算复杂度的极速增长.一般推荐的长度就是2048…
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 博客园主页:http://www.cnblogs.com/mcxiaobing/ 今天给大家提供一个常用的工具类. Android开发之常用必备工具类图片bitmap转成字符串string与String字符串转换为bitmap图片格式 下面是代码.当然最下面会分享出来源文件. 下面是代码: import android.graphics.Bitmap; import andr…
在进行空间统计实验过程中,经常涉及到空间权重矩阵的处理,有时候需要将ArcGIS生成的swm格式的权重矩阵转换为形如“0 1”的方阵格式.这里将我的办法整理出来. 1.用如下工具箱生成swm格式的权重矩阵 2.将swm格式的权重矩阵转换为dbf属性表      3.用excel打开dbf将其转换为txt文本文件 4.写程序转换格式并保存 代码如下: static void Main(string[] args) { //读取文件并转换格式 StreamReader sr = File.OpenT…
任务描述:通过科大讯飞语音合成组件在线完成文本转语音的合成,然后再转换为电话系统IVR要求的音频格式: wave mu-law 16位 8kHZ 64kbps. 完成步骤: 首先,我们要先通过科大讯飞语音合成组件实现文本合成,由于科大讯飞提供的接口都是C语言的,如果用C#调用需要做二次封装,为了快速完成任务,我们直接在科大讯飞论坛中找到一个现成组件进行修改,感谢wangkang提供的分享. 1.下载C#代码:http://bbs.xfyun.cn/forum.php?mod=viewthread…
double ntime=dateTimeToUnixTimestamp(DateTime.Now); long g1 = GetUnixTimestamp(); long g2 = ConvertDateTime2Long(DateTime.Now); public double dateTimeToUnixTimestamp(DateTime datetime) { return (datetime - new DateTime(1970, 1, 1).ToLocalTime()).Tota…
写在前面 由于在数据库中存的时间有时间戳格式的数据,在解析以及保存的时候,就需要考虑到数据格式的兼容性问题.看到数据库中的时间字段基本上都是以时间戳格式存储的,没办法,只能将时间进行转换了,考虑到其他系统可能要对时间字段进行操作,就不得不考虑时间的兼容性了. 时间戳辅助类 什么是时间戳? Unix时间戳(Unix timestamp),或称Unix时间(Unix time).POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒(…
/// <summary> /// 将DateTime时间格式转换为Unix时间戳格式 /// </summary> /// <param name="dateTime">DateTime时间</param> /// <param name="format">精度:Seconds-秒,Milliseconds-毫秒</param> /// <returns></returns&…
大话https演化过程(包括概念:对称加密.非对称加密.公钥.私钥.数字签名.数字证书.https访问全过程)   在网络上发送数据是非常不安全的,非常容易被劫持或是被篡改,所以每次定向发送数据你都可以视为在广播,每次定向接收数据都可以视为在广收.而建立安全通道的难度和成本都很高,甚至安全性都不一定靠谱.   在这样的情境下,F需要向S发送一段只有S才能看的信息msg,它要如何做呢?   很容易想到一个最直接的方法:给这段信息加密,只有F和S有密钥(加密与解密采用相同的算法和密钥),这样F广播的…
可以为Date原型添加如下的方法: Date.prototype.format = function(fmt) { var o = { "M+" : this.getMonth()+1, //月份 "d+" : this.getDate(), //日 "h+" : this.getHours(), //小时 "m+" : this.getMinutes(), //分 "s+" : this.getSecon…
把IP字符串转换为IPv4标准格式,如一个IP为127.0.0.1转为127.000.000.001格式? 即是说“点”分隔的数据不够三位数字长度,转换为三位数字长度. Insus.NET有尝试写了一个函数式,此函数式也是一个扩展方法.需要引用名命空间: using System.Text.RegularExpressions; 下图高亮代码,即是函数核部分,参考: 应用此函数,演示应用一个:…
总结一些日期常用的代码,方便以后直接拿 <code> /** * java 获取 获取某年某月 所有日期(yyyy-mm-dd格式字符串) * @param year * @param month * @return */public List<String> getMonthFullDay(int year , int month){ SimpleDateFormat dateFormatYYYYMMDD = new SimpleDateFormat("yyyy-MM-…
Insus.NET刚写了一个函数,把一个IP地址转换为标准格式,即每段位均是由3个数字组成. SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: Insus.NET -- Blog: https://insus.cnblogs.com -- Create date: 2019-06-01 -- Update date: 2019-0…
本文摘录参考: 细说 CA 和证书(主要讲解 CA 的使用) 数字签名是什么?(简单理解原理) 深入浅出 HTTPS 工作原理(深入理解原理) HTTP 协议由于是明文传送,所以存在三大风险: 1.被窃听的风险:第三方可以截获并查看你的内容 2.被篡改的危险:第三方可以截获并修改你的内容 3.被冒充的风险:第三方可以伪装成通信方与你通信 HTTP 因为存在以上三大安全风险,所以才有了 HTTPS 的出现. HTTPS 涉及到了很多概念,比如 SSL/TSL,数字证书.数字签名.加密.认证.公钥和…
1 背景 谷歌从 2017 年起,Chrome 浏览器将也会把采用 HTTP 协议的网站标记为「不安全」网站:苹果从 2017 年 iOS App 将强制使用 HTTPS:在国内热火朝天的小程序也要求必须使用 HTTPS 请求. 2 SSL证书类型 通常来说,SSL 证书分为三大类,他们的安全性是递增的,当然价格和安全系数成正比. DV (Domain Validation Certificate)   DV 证书适合个人网站使用,申请证书时,CA 只验证域名信息.几分钟之内就能签发. OV (…
自签名的证书无法被吊销,CA签名的证书可以被吊销 能不能吊销证书的区别在于,如果你的私钥被黑客获取,如果证书不能被吊销,则黑客可以伪装成你与用户进行通信   如果你的规划需要创建多个证书,那么使用私有CA的方法比较合适,因为只要给所有的客户端都安装了CA的证书,那么以该证书签名过的证书,客户端都是信任的,也就是安装一次就够了 如果你直接用自签名证书,你需要给所有的客户端安装该证书才会被信任,如果你需要第二个证书,则还的挨个给所有的客户端安装证书2才会被信任.       证书类型: x509的证…
server { listen 80; listen 443 ssl; server_name ~^((cloud)|(demo-cloud)|(demo2-cloud)|(approval1))((\.it1alent\.link)|(\.ita1lent-inc\.cn))$; ssl on; ssl_certificate ./ssl/ssl.crt; ssl_certificate_key ./ssl/ssl.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.…