1.1    数字证书 1.1.1   概念理解 一种文件的名称,例如一个机构或人的签名,能够证明这个机构或人的真实性.简而言之数字证书是一种网络上证明持有者身份的文件,同时还包括有公钥.证书是由国际上公认的证书机构颁发,这些机构是公认的信任机构.要想请这些机构颁发证书是要给钱的.客户端程序通过维护一个“根授信机构列表”,当收到一个证书时,查看这个证书是否在该列表中,如果是则这个证书是可信的,否则就不信任. 1.1.2   证书的信任 作为一个HTTPS的站点需要与一个证书绑定,无论如何,证书总…
1      SSL双向认证的实现 这里是基于SSL和Tomcat配置实现的,配置方法如下: 1.1    生成CA数字证书 首先需要配置OPENSSL环境变量. 我的OPENSSL配置文件路径是“D:\OpenSSL-Win32\bin\openssl.cfg”. 1.1.1  生成CA私钥 Ø  说明: CA作为一个权威机构,他本身也是使用证书来标识自己,CA本身也拥有私钥.在签发数字证书的过程中,CA的私钥主要用于加密用户证书请求中的用户信息及公钥. Ø  命令: openssl genr…
1  概要说明 在互联网通信方式中,目前用的最广泛的是HTTPS配合SSL和数字证书来保证传输和认证安全了. 2  详细介绍 2.1    HTTPS HTTPS全称:Hypertext Transfer Protocal over Secure Socket Layer,是以安全为目标的HTTP通信协议. 即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL.SSL用于安全的HTTP数据传输,HTTPS:URL表明它使用了HTTPS,但HTTPS存在不同于HT…
1. testing ! ... 1 1 原文参考链接: http://showerlee.blog.51cto.com/2047005/1266712 很久没有更新LAMP的相关文档了,刚好最近单位做项目需要用到apache的SSL虚拟主机双向认证,刚好之前在做LAMP的时候顺带做过SSL模块加载,SO参考了google大量文档,用了半天时间搞定,这里总结出来给大家分享一下. 该方案是为了实现apache下实现SSL虚拟主机双向认证,从而实现可信任用户才能访问具体虚拟站点,实现了数据加密以及双…
本篇主要介绍了基于OpenSSL的PKI的PKI数字证书系统实现,利用OpenSSL建立一个CA中心的详细解决方案和建立的具体步骤. 1.PKI数字证书系统设计 PKI数字证书系统主要包括证书颁发机构CA.注册机构RA和公共查询数据库三个部分,基本框架如下: 2.OpenSSL对传输文件公钥加密私钥解密 OpenSSL RSA私钥生成: $ openssl genrsa -out private.pem 2048 OpenSSL RSA公钥生成: $ openssl rsa -in ./priv…
上周帮一个童鞋做一个数字认证的实验,要求是编程实现一个基于X.509证书认证的过程,唉!可怜我那点薄弱的计算机网络安全的知识啊!只得恶补一下了. 首先来看看什么是X.509.所谓X.509其实是一种非常通用的证书,什么是证书?唉!这么说吧!当两个人需要进行远程通信而又不想让第三个人知道时就必须建立一种安全措施,因为看不到对方的脸,又不能通过电话直接询问对方,就得想点别的办法,比如我设计一个密码,让后发短信告诉你,这样当我们在网上交流之前就可以对一下密码,暗号之类的.确认后就可以证明你的身份了.这…
客户端认证服务器: 正规的做法是:到国际知名的证书颁发机构,如VeriSign申请一本服务器证书,比如支付宝的首页,点击小锁的图标,可以看到支付宝是通过VeriSign认证颁发的服务器证书: 我们用的操作系统(windows, linux, unix ,android, ios等)都预置了很多信任的根证书,比如我的windows中就包含VeriSign的根证书,那么浏览器访问服务器比如支付宝www.alipay.com时,SSL协议握手时服务器就会把它的服务器证书发给用户浏览器,而这本服务器证书…
SSL安全证书可以自己生成,也可以通过第三方的CA(Certification Authority)认证中心付费申请颁发. SSL安全证书包括: 1.       CA证书,也叫根证书或中间级证书.单向认证的https,CA证书是可选的.主要目的是使证书构成一个证书链,以达到浏览器信任证书的目的.如果使用了CA证书,服务器证书和客户证书都使用CA证书来签名.如果不安装CA证书,浏览器默认认为是不安全的. 2.       服务器证书.必选.通过服务器私钥,生成证书请求文件CSR,再通过CA证书签…
From: http://my.oschina.net/jjface/blog/339144 概述: 客户端,浏览器或者使用http协议和服务器通信的程序. 如: 客户端通过浏览器访问某一网站时,如果该网站为HTTPS网站,浏览器会自动检测系统中是否存在该网站的信任证书, 如果没有信任证书,浏览器一般会拒绝访问,IE会有一个继续访问的链接,但地址栏是红色,给予用户警示作用, 即客户端验证服务端并不是强制性的,可以没有服务端的信任证书,当然是否继续访问完全取决于用户自己. 如果要去除地址栏的红色警…
背景 由于ios将在2017年1月1日起强制实施ATS安全策略,所有通讯必须使用https传输,本文只针对自制证书,但目前尚不确定自制证书是否能通过appstore审核. 1.必须支持传输层安全(TLS)协议1.2以上版本 2.证书必须使用SHA256或更高的哈希算法签名 3.必须使用2048位以上RSA密钥或256位以上ECC算法等等 4.证书必须是V3版本 以上是几个注意点.主要针对ios的ATS策略 环境 linux: CentOS6.8 tomcat: Apache Tomcat/7.0…
什么是ssl? secure socket layer(ssl)协议最初由netscape企业发展,现已成为网络用来鉴别网站和网页浏览者身份,以及在浏览器使用者及网页服务器之间进行加密通讯的全球化标准.由于ssl技术已建立到所有主要的浏览器和web服务器程序中,因此,仅需安装数字证书,或服务器证书就可以激活服务器功能了. 什么是服务器证书? 服务器证书是安装在你的web服务器上,你可将服务器证书视为一种可以让访问者利用网页浏览器来验证网站真实身份的数字证明,且可以通过服务器证书进行具有ssl加密…
转载地址:http://www.cnblogs.com/lxblog/archive/2012/09/20/2695397.html 前一篇我们演示了基于SSL的WCF 对客户端进行用户名和密码方式的认证,本篇我们演示一下服务器端对客户端采用X.509证书的认证方式是如何实现的. 项目结构及服务代码和前两篇代码是基本一样的,为了大家看着方便,再从头到尾进行一下演示. 一.制作证书: 本次制作证书和第一篇略有不一样,主要为了演示证书的信任链关系,我们首先创建一个证书作为证书认证中心(CA)的根证书…
之前发表在另一个平台的文章http://www.jointforce.com/jfperiodical/article/1218,现在发表到自己的博客上. 对于SSL/TLS协议,如果要每个开发者都自己去实现显然会带来不必要的麻烦,正是为了解决这个问题Java为广大开发者提供了Java安全套接字扩展--JSSE,它包含了实现Internet安全通信的一系列包的集合,是SSL和TLS的纯Java实现,同时它是一个开放的标准,每个公司都可以自己实现JSSE,通过它可以透明地提供数据加密.服务器认证.…
目标 1对服务器的访问由http改为https, 2仅有证书的客户端可以访问服务器, 3.通过服务器端的配置,可以停用某个客户端的证书. 一 Apache服务器相关配置: 在../apache/conf/httpd.conf中, 1.关闭80端口,禁止通过http访问服务器,在Listen 80之前加上’#’,修改后如下:红色字体为修改之后的. #Listen 0.0.0.0:80 #Listen [::]:80 #Listen 80 2.加载ssl模块,去掉之前的’#’,修改后如下: Load…
本文涉及的相关问题,如果你的问题或需求有与下面所述相似之处,请阅读本文 ssl certificate 什么是ssl certificates? SSL Certificates 是一种使用数字加密技术对发布者信息细节进行加密后的文件.当这个文件安装在部署了web 服务的环境上,便会激活挂锁和https协议,并允许从Web服务器到浏览器之间的安全连接. 通常,SSL用于保护信用卡交易,数据传输和登录,并且正在成为保护社交媒体网站浏览的标准. SSL Certificates会将以下内容绑定到一起…
Git 的访问可以采用 HTTP 或 SSH 协议安全的访问,通常我们使用 gitlib 进行 Web 管理,但是在 Linux 命令行开发环境下,基本都是使用 SSH 协议,只需要在 gitlib 里面配置好相应的 SSH Key 就可以. 由于现在开发环境的特殊情况,我们需要在 Linux 命令行开发环境下,不能使用 SSH 方式,而只能使用 HTTP 协议进行安全访问,并且需要对开发者进行认证,并且开发者在本地开发环境中的用户名和密码需要加密存储. 接下来我就简单介绍我们的开发团队是如何在…
转自:https 单向双向认证说明_数字证书, 数字签名, SSL(TLS) , SASL 因为项目中要用到TLS + SASL 来做安全认证层. 所以看了一些网上的资料, 这里做一个总结. 1. 首先推荐几个文章: 数字证书: http://www.cnblogs.com/hyddd/archive/2009/01/07/1371292.html 数字证书和SSL: http://www.2cto.com/Article/201203/121534.html 数字签名: http://www.…
转自: http://www.cnblogs.com/mailingfeng/archive/2012/07/18/2597392.html 因为项目中要用到TLS + SASL 来做安全认证层. 所以看了一些网上的资料, 这里做一个总结. 1. 首先推荐几个文章: 数字证书: http://www.cnblogs.com/hyddd/archive/2009/01/07/1371292.html 数字证书和SSL: http://www.2cto.com/Article/201203/1215…
1.前言 最近工作涉及到https,需要修改nginx的openssl模块,引入keyless方案.关于keyless可以参考CloudFlare的官方博客: https://blog.cloudflare.com/keyless-ssl-the-nitty-gritty-technical-details/?utm_source=tuicool&utm_medium=referral. 在openssl的基础上修改私钥校验过程,因此需要对openssl的认证认证流程需要熟悉一下.SSL中涉及到…
因为项目中要用到TLS + SASL 来做安全认证层. 所以看了一些网上的资料, 这里做一个总结. 1. 首先推荐几个文章: 数字证书: http://www.cnblogs.com/hyddd/archive/2009/01/07/1371292.html 数字证书和SSL: http://www.2cto.com/Article/201203/121534.html 数字签名: http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_…
转:http://blog.csdn.net/xueshanfeihu0/article/details/9154219 因为项目中要用到TLS + SASL 来做安全认证层. 所以看了一些网上的资料, 这里做一个总结. 1. 首先推荐几个文章: 数字证书: http://www.cnblogs.com/hyddd/archive/2009/01/07/1371292.html 数字证书和SSL: http://www.2cto.com/Article/201203/121534.html 数字…
一,HTTPS原理   1,HTTP.HTTPS.SSL.TLS介绍与相互关系 (1)HTTP:平时浏览网页时候使用的一种协议.HTTP协议传输的数据都是未加密的(明文),因此使用HTTP协议传输隐私信息非常不安全. (2)HTTPS:为了保证隐私数据能加密传输,采用SSL/TLS协议用于对HTTP协议传输的数据进行加密,也就是HTTPS. (3)SSL:SSL(Secure Sockets Layer)协议是由网景公司设计,后被IETF定义在RFC 6101中.目前的版本是3.0. (4)TL…
移动互联网的大力发展,安全越来越重要. 什么是双向认证呢?双向认证就是client要验证server的合法性,同一时候server也要验证client的合法性. 这样两方都相互验证,提高安全性. 关于SSL的原理我也不表了.由于google一下,有一大堆原理介绍. 本团队做了一个iOS + NodeJS SSL/Https的双向认证功能. 须要的朋友能够到这儿获取. 本团队提供强有力的售后技术支持,如您须要iOS的技术顾问或App定制功能.可邮件xpisceo@163.com…
1.  HTTPS 1.1. 什么是HTTPS HTTPS(HypertextTransfer Protocol Secure)即安全的HTTP.HTTPS的安全基础是安全套接层(Secure Sockets Layer,SSL).HTTP工作在应用层(OSI模型的最高层),SSL协议工作在一个较低的子层,位于TCP/IP协议和HTTP协议之间.在HTTP报文传输前对其加密,并在到达时对其解密.严格地讲,HTTPS并不是一个单独的协议,而是工作在SSL协议上的HTTP协议. TLS对SSL进行了…
原文链接: http://www.cangfengzhe.com/wangluoanquan/37.html 这篇文章主要介绍PKI公钥体系中非常核心元素——数字证书的编程解析.在SSL,SET等安全协议通信时,数字证书用于通信双方进行身份认证,并且依靠数字证书和非对称加密算法加密传输数据,或者根据数字证书协商通信双方的共享密钥.所以,用户想要开发自己的应用,实现身份认证,必须对数字证书进行解析.根据解析结果,符合一定条件的终端用户,才可以接入. 1.证书格式介绍 现有的数字证书大都采用了X.5…
SSL协议 简介 SSL (Secure Sockets Layer 安全套接层)是一个安全协议,它提供使用 TCP/IP 的通信应用程序间的隐私与完整性.因特网的 超文本传输协议 (HTTP)使用 SSL 来实现安全的通信.SSL 协议既用到了公钥加密技术(握手)又用到了对称加密技术(传输数据).在客户端与服务器间传输的数据是通过使用对称算法(如 DES 或 RC4)进行加密的.公用密钥算法(通常为 RSA)是用来获得加密密钥交换和数字签名的,此算法使用服务器的SSL数字证书中的公用密钥.有了…
本文为转载,原文链接http://www.techug.com/https-ssl-tls,作者不详. 要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识. 1. 大致了解几个基本术语(HTTPS.SSL.TLS)的含义 2. 大致了解 HTTP 和 TCP 的关系(尤其是"短连接"VS"长连接") 3. 大致了解加密算法的概念(尤其是"对称加密与非对称加密"的区别) 4. 大致了解 CA 证书的用途 考虑到很多技术菜鸟可能不了解上述…
作者: yoyoso https://my.oschina.net/ioslighter/blog/359207 对公钥和私钥有点稀里糊涂的,搜索了一些资料,作一些整理吧,先看这个: 加密--公钥 看了这个也许会对私钥用于签名不解,其实它等同于用私钥加密,而公钥验证就是用公钥解密,但是不能用于保密信息.因为公钥是公开的. 再来一个: 1)公钥和私钥成对出现 公钥和私钥都可以用来加密或解密---只要能保证用A加密,就用B解密就行.至于A是公钥还是私钥,其实可以根据不同的用途而定. 一.公钥加密,私…
一.首先确定go语言安装环境配置好 1.进入官网下载源码包 https://golang.org/dl/ 2.解压缩,配置环境变量 在/etc/profile最后加上export PATH=$PATH:/usr/local/go/bin(此处解压至/usr/local/目录下) source /etc/profile生效 3.go version查看安装版本 二.安装mail-provider 1.二进制安装 下载编译好的二进制 wget http://cactifans.hi-www.com/…
[实践]WCF传输安全1:前期准备之证书制作   [实践]WCF传输安全2:基于SSL的WCF匿名客户端   [实践]WCF传输安全3:基于SSL的WCF对客户端验证   [实践]WCF传输安全4:基于SSL的WCF对客户端采用证书验证 出处:http://www.cnblogs.com/lxblog/category/413049.html…