tls

gRPC官方文档(安全认证)

百般思念 提交于 2019-12-17 02:26:31
文章来自 gRPC 官方文档中文版 认证 gRPC 被设计成可以利用插件的形式支持多种授权机制。本文档对多种支持的授权机制提供了一个概览,并且用例子来论述对应API,最后就其扩展性作了讨论。 马上将会推出更多文档和例子。 支持的授权机制 SSL/TLS gRP 集成 SSL/TLS 并对服务端授权所使用的 SSL/TLS 进行了改良,对客户端和服务端交换的所有数据进行了加密。对客户端来讲提供了可选的机制提供凭证来获得共同的授权。 OAuth 2.0 gRPC 提供通用的机制(后续进行描述)来对请求和应答附加基于元数据的凭证。当通过 gRPC 访问 Google API 时,会为一定的授权流程提供额外的获取访问令牌的支持,这将通过以下代码例子进行展示。 警告 :Google OAuth2 凭证应该仅用于连接 Google 的服务。把 Google 对应的 OAuth2 令牌发往非 Google 的服务会导致令牌被窃取用作冒充客户端来访问 Google 的服务。 API 为了减少复杂性和将混乱最小化, gRPC 以一个统一的凭证对象来进行工作。 凭证可以是以下两类: 频道凭证 , 被附加在 频道 上, 比如 SSL 凭证。 调用凭证 , 被附加在调用上(或者 C++ 里的 客户端上下文 )。 凭证可以用 组合频道凭证 来进行组合。一个 组合频道凭证 可以将一个 频道凭证 和一个

[Android各版本特性]Android 10

六眼飞鱼酱① 提交于 2019-12-16 03:58:00
文章目录 1.创新技术和新体验 1.可折叠设备 2.5G 网络 3.通知中的智能回复 4.深色主题 5.手势导航 6.设置面板 7.共享快捷方式 2.用户隐私设置 1.赋予用户对位置数据的更多控制权 2.在扫描网络时保护位置数据 3.阻止设备跟踪 4.保护外部存储设备中的用户数据 5.屏蔽意外中断 6.在后台运行时访问设备位置信息需要权限 7.对 /proc/net 文件系统的访问权限实施了限制 8.对启用和停用 WLAN 实施了限制 9.限制对屏幕内容的访问 10.面向用户的权限检查(针对旧版应用) 3.安全性 1.存储加密 2.默认启用 TLS 1.3 3.TLS 不信任使用 SHA-1 签名的证书 4.连接性 1.改进了点对点连接和互联网连接 2.WLAN 性能模式 5.Android 基础知识 1.ART 优化 2.Thermal API *6.其他要注意的点 1.android.preference 库已弃用 2.Android Beam 已弃用 3.有关限制非 SDK 接口的更新 4.共享内存 5.支持可折叠设备 1.创新技术和新体验 1.可折叠设备 Android 10 基于强大的多窗口支持构建而成,扩展了跨应用窗口的多任务处理能力,还提供了屏幕连续性,可以在设备折叠或展开时维持应用状态。Android 10 在 onResume 和 onPause 中添加了多项改进

Openldap 整合windows AD认证

梦想与她 提交于 2019-12-16 00:20:56
Openldap 整合windows AD认证 I.解决的问题 Openldap是开源的目录服务实现,windows AD是微软的目录服务现实。现状是有的场景(应用、客户端)跟openldap结合比较容易,有的场景又是必须要用AD,所以几乎不可能弃用其中的任意一种。但同时维护两套系统意味着维护工作大量增加(不仅仅只是增加一倍,要考虑信息分别维护、同步etc等)、出错几率增加。 其中的一种较成熟、使用比较多的解决方案是:openldap使用windows AD的认证,这样只需要在AD上维护一套用户密码即可。 II.流程图 如图,相关组件分四大部分: 1.LDAP client ;这个是实际调用ldap服务的系统,也可以是类似ldapsearch之类的client 程序 2.Openldap; 开源服务端,实际进程为slapd 3.Saslauthd;简单认证服务层的守护进程,该进程要安装在openldap服务器上 4.Active directory;即windows AD,这个不用解释 III.具体配置 A.检查Openldap 检查openldap安装时是否有编译参数 ./configure --enable-spasswd;如没有需要重新编译,否则不支持之后形如 userPassword: {SASL}user@domain的语法配置 Openldap的安装本文不再详细介绍 B

SSL与TLS的区别以及介绍

旧街凉风 提交于 2019-12-11 23:15:13
作者: hengstart 发布时间: 2014-01-05 13:09 阅读: 131133 次 推荐: 30 原文链接 [收藏]   SSL:(Secure Socket Layer,安全套接字层),位于可靠的面向连接的网络层协议和应用层协议之间的一种协议层。SSL通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。该协议由两层组成:SSL记录协议和SSL握手协议。   TLS:(Transport Layer Security,传输层安全协议),用于两个应用程序之间提供保密性和数据完整性。该协议由两层组成:TLS记录协议和TLS握手协议。   SSL是Netscape开发的专门用户保护Web通讯的,目前版本为3.0。最新版本的TLS 1.0是IETF(工程任务组)制定的一种新的协议,它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本。两者差别极小,可以理解为SSL 3.1,它是写入了RFC的。   SSL (Secure Socket Layer)   为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上之传输过程中不会被截取。目前一般通用之规格为40 bit之安全标准,美国则已推出128 bit之更高安全标准,但限制出境。只要3.0版本以上之I

golang http server源码解析

删除回忆录丶 提交于 2019-12-10 15:23:36
golang 版本:1.12.9 简单的HTTP服务器代码: package main import ( "net/http" ) type TestHandler struct { str string } func (th *TestHandler)ServeHTTP(w http.ResponseWriter, r *http.Request){ w.Write([]byte(string(th.str+",welcome"))) } func main(){ http.Handle("/", &TestHandler{"Hi,Stranger"}) http.HandleFunc("/test",func(w http.ResponseWriter,r *http.Request){ w.Write([]byte("Hi,Tester")) }) http.ListenAndServe(":8000",nil)} 在浏览器输入“http://127.0.0.1:8000”得到输出“Hi,Stranger,welcome”;输入“http://127.0.0.1:8000/test”得到输出“Hi,Tester” handler的注册 handler的相关方法如下: func NewServeMux() *ServeMux func (mux *ServeMux)

SSL/TLS双向认证案例参考

北慕城南 提交于 2019-12-10 02:57:14
一.首先我们需要生成服务器端和客户端的数字证书 并添加信任 实际应用环境里,需要向CA机构申请服务器证书。这里我们为了测试方便通过Keytool工具生成自签名证书来模拟。 注:相关参数说明请使用 keytool -help 查阅 1. 生成服务器端证书 keytool -genkey -v -keyalg RSA -keysize 1024 -sigalg SHA1withRSA -validity 36000 -alias www.alan.org -keystore alan.keystore -keystore alan.keystore -dname “CN=www.alan.org,OU=alan,O=alan,L=HN,ST=HN,C=CN” 2. 生成客户端证书 keytool -genkey -v -keyalg RSA -keysize 1024 -sigalg SHA1withRSA -validity 36000 -alias alanClient -storetype PKCS12 -keystore alanClient.p12 -dname “CN=alan-client,OU=alan,O=alan,L=HN,ST=HN,C=CN” 3. 让服务器信任客户端证书 (1)从刚刚生成的客户端证书库中导出客户端证书 keytool -export

Hyperledger Fabric CouchDB as the State Database——使用CouchDB

只谈情不闲聊 提交于 2019-12-09 12:27:30
使用CouchDB作为状态数据库 状态数据库选项 状态数据库包括LevelDB和CouchDB。LevelDB是嵌入在peer进程中的默认键/值状态数据库, CouchDB是一个可选的外部状态数据库。 与LevelDB键/值存储一样,CouchDB可以存储任何以chaincode建模的二进制数据(CouchDB附件函数在内部用于非json二进制数据)。但是,当chaincode值(例如,资产)被建模为JSON数据时,作为JSON文档存储,CouchDB支持对chaincode数据进行丰富的查询。 LevelDB和CouchDB都支持核心chaincode操作,例如获取和设置一个键(资产),并根据键进行查询。 键可以通过范围查询,可以对组合键进行建模,以支持针对多个参数的等价查询。 例如,作为所有者的组合键,资产id可以用于查询某个实体拥有的所有资产。 这些基于key的查询可以用于针对账本的只读查询,以及更新总账的事务。 如果将资产建模为JSON并使用CouchDB,那么就可以使用chaincode中的CouchDB JSON查询语言对chaincode数据值执行复杂的富查询,这些类型的查询对于理解账本上的内容很有帮助。对于这些类型的查询,事务协议响应通常对客户端应用程序有用,但通常不会作为事务提交到排序服务。事实上

Kafka及周边深度了解

╄→гoц情女王★ 提交于 2019-12-08 21:47:33
  之前介绍了使用官方脚本自动化启动一个Fabric网络,并且所有的证书都是通过官方的命令行工具cryptogen直接生成网络中的所有节点的证书。在开发环境可以这么简单进行,但是生成环境下还是需要我们自定义对网络中的节点的证书进行配置。      所以在本文中,将会详细介绍一个从手动生成证书一直到启动网络的整体步骤。本文只交代整体的搭建步骤。对于Fabric-Ca的讲解不在本文的范围内,将在另一篇文章中说明。      正篇文章也是根据官方的文档进行的。但是由于官方的文档尚未完工,也是好多没有交代清楚的,并且有些地方是错误的,所以笔者也是一步一步摸索出来的,所以如果本文哪里没有交代清楚或者错误的地方,希望各位批评指正。      在这里贴出官方文档地址.      1.整体架构      架构图直接贴过来好了:      系统架构      官方文档采用的是多机环境,这里简洁化一点,所有的操作都在一台机器上进行,至于多机环境,以后再补充好了。      介绍一下本文所采用的整体架构:      三个组织      Org0 -> 组织0      Org1 -> 组织1      Org2 -> 组织2      组织中的成员      Org0 一个Orderer节点,一个Org0的Admin节点      Org1 两个Peer节点,一个Org1的Admin节点

Go之NSQ

痴心易碎 提交于 2019-12-08 17:34:28
NSQ   NSQ是目前比较流行的一个分布式的消息队列,本文主要介绍了NSQ及Go语言如何操作NSQ。 NSQ介绍 NSQ 是Go语言编写的一个开源的 实时分布式内存消息队列 ,其性能十分优异。 NSQ的优势有以下优势: NSQ提倡分布式和分散的拓扑,没有单点故障,支持容错和高可用性,并提供可靠的消息交付保证 NSQ支持横向扩展,没有任何集中式代理。 NSQ易于配置和部署,并且内置了管理界面。 NSQ的应用场景 通常来说,消息队列都 适用以下场景。 异步处理 参照下图利用消息队列把业务流程中的非关键流程异步化,从而显著降低业务请求的响应时间。 应用解耦 通过使用消息队列将不同的业务逻辑解耦,降低系统间的耦合,提高系统的健壮性。后续有其他业务要使用订单数据可直接订阅消息队列,提高系统的灵活性。 流量削峰 类似秒杀(大秒)等场景下,某一时间可能会产生大量的请求,使用消息队列能够为后端处理请求提供一定的缓冲区,保证后端服务的稳定性。 安装 官方下载页面 根据自己的平台下载并解压即可。 NSQ组件 nsqd nsqd是一个守护进程,它接收、排队并向客户端发送消息。 启动 nsqd , 指定 -broadcast-address=127.0.0.1 来配置广播地址 $./nsqd -broadcast-address=127.0.0.1 如果是在 搭配 nsqlookupd

详解Https出现的前因后果

我是研究僧i 提交于 2019-12-07 16:34:23
虽然自己不直接从事互联网行业,但是对互联网行业的技术一直没有放松学习,特别是安全方面一直是我薄弱的方面,所以最近踏下心来好好的研究了下互联网安全方面的内容。 网上关于SSL、Https的学习资料比较多,有些讲的太宽泛,有些讲的又不容易理解,我以自己的角度和自己的顺序来好好摸清这些内容。 首先澄清3个概念:SSL、TLS、Https。 SSL:Secure Sockets Layer,中文“安全套接层” TLS:Transport Layer Security,中文“传输层安全协议”,是SSL在1999年标准化后的新名称,基本可以跟SSL做约等号。 HTTPS:Http Over TLS,字面意思就是基于TLS的Http传输。 众所周知Https比Http更安全,从定义中可以看出安全来自于TLS,TLS就是我们要集中力量学习的重点。 SSL/TLS不仅可以被Http over,还可以被其它多种协议Over,比如:FTP、SMTP、POP、Telnet等 问题来了SSL/TLS凭什么更安全? 首先我们看看Http协议存在的安全问题: 1 钓鱼被骗,访问伪造的服务端 2 明文被捕获,敏感信息泄露 3 明文被捕获后篡改内容 4 不管什么报文,重复发起 由于单纯的Http协议具有上面这些风险,那我们理想中的协议应该具备以下特性: 安全性,防止被偷窥,就是对内容加密,被偷窥了别人也看不懂。