HHyperledger Fabric 之 TLS (fabric-java-sdk)使用grpcs方式访问fabric
我在很多fabric的技术群中,很多使用javasdk连接fabric的同友,初始的时候很多都没有成功的使用TLS进行区块链交易;
是sdk不支持,还是我们没有找到解决方案?
其实不然,我这里使用的是fabric-sdk1.2的版本,是可以的;而且sdk的源码的测试用例也都是使用tls的;那么他肯定是可以完成TLS交易的;
我这里使用的环境是单机的fabric1.4.0版本;java-sdk使用是1.2版本的.
前提,fabric1.4.0使用tls模式建立的环境,这里为了快速和方便,我使用了first-network这个demo。
1,环境情况,具体搭建方式就不追溯,可以在网上的其他博客查到相关部署方式。
2,java-sdk版本
3,使用TLS链接的关键
在pom.xml文件中增加<os.detected.classifier>windows-x86_64</os.detected.classifier>
这里说明一下windows-x86_64,在netty-tcnative是没有32位的包,所以一定要保证你的jvm是64位的,否则,你在允许请求的是会一致报错,没有找到32位的它。
使用 java -d64检查你当前jvm是否是64位,如果不是则会是类似下述的错误
如果是64,则会是下述的信息
建议,pom依赖,参考fabric-sdk的pom依赖
4,创建channel连接
支持TLS连接,关键的几个配置:clientCertFile、clientKeyFile、pemFile
orderer设置属性 : peer设置属性:
对mycc合约进行查询:
查询结果:
综上:
1,pom依赖,要按照fabric-java-sdk的依赖方式进行依赖,一面因为依赖的包版本等一些问题导致无法完成TLS访问
2,netty_tcnative_windows_x86_64的依赖关系,jvm一定是64位的
3,创建channel链接的时候,orderer和peer的属性设置一定要指定其的相关tls证书。
HHyperledger Fabric 之 TLS (fabric-java-sdk)使用grpcs方式访问fabric的更多相关文章
- JAVA模拟各种请求方式访问RESTFUL
//打开restful链接 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 提交模式 conn.setReq ...
- 区块链:基于Hyperledger Fabric的 java 客户端开发(java sdk /java api server/java event server)
fabric针对java 开发的部分支持不是很友好.基于目前较为稳定的fabric 1.4版本,我们封装了一个java sdk,apiserver,eventServer 封装java sdk的主要目 ...
- Ceph RGW服务 使用s3 java sdk 分片文件上传API 报‘SignatureDoesNotMatch’ 异常的定位及规避方案
import java.io.File; import com.amazonaws.AmazonClientException; import com.amazonaws.auth.profile ...
- ceph rgw s3 java sdk 上传大文件分批的方法
Using the AWS Java SDK for Multipart Upload (High-Level API) Topics Upload a File Abort Multipart Up ...
- java sdk与jdk区别
SDK是Software Development Kit的缩写,中文意思是"软件开发工具包".这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档.范例和工具的集 ...
- 关于js SDK的程序,java SDK的程序
一:JS SDK 1.修改配置workspace 2.导入 3.Demo.html <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Trans ...
- [转]在 Eclipse 中嵌入 NASA World Wind Java SDK
使用此开源 SDK 开发 GIS 应用程序 NASA 开发的开源 World Wind Java (WWJ) SDK 为地理信息系统(Geographic Information Systems,GI ...
- 阿里云SDK手册之java SDK
进行阿里云sdk开发的前提是已经购买阿里云的相关服务才能调用阿里的相关接口进行开发.最近公司在做云管控的项目,于是进行下摘录总结. 一. 环境准备 阿里云针对不同的开发语言提供不同的sdk,由于项目用 ...
- 微博开发平台java SDK demo学习之friendships
本文解释了在java SDK的demo中与feiendships有关的功能 截图如下: 关注一个用户(需要知道该用户uid) 取消关注一个用户(用户uid) 获取用户粉丝列表(授权用户的screen_ ...
随机推荐
- windows Service 之调试过程(附加到进程里调试,而且启动时间不能超过30秒)
最近第一次用C#写了一个windows service ,其实实现的内容比较简单.就是启动remoting 连接,但是调试相对初次写windws service 的我来说,比较烦.没有经验,而且没办法 ...
- .net core 2.0 dbfirst 报 dotnet ef 未找到与命令“dotnet-ef”匹配的可执行文件的解决办法
问题描述: 最近研究了一段时间.netcore dbfirst,新建类库用来生成实体模型,执行命令总是提示 未找到与命令“dotnet-ef”匹配的可执行文件,根据网上的解决办法引用 Microsof ...
- Arcgis Server 10.4.1 搭建集群环境
1.准备工作 Arcgis Server 10.4.1 以及许可一枚 共享存储(通过UNC路径访问,如"\\server1\arcgisserver\") 服务器两台(虚拟机也可 ...
- 深入浅出Ajax
原文(我的GitHub):https://github.com/liangfengbo/frontend-ability/issues/1 学习大纲 理解Ajax的工作原理 Ajax核心-XMLHtt ...
- MySQL如何转SQL server
MySql的数据如何导入到Sql Server数据库中?(转载) 本文咱讨论的重点是如何将MySql数据导入到Sql Server数据库中,所以就需要机器上同时安装了MySql和Sql Serve ...
- Powerdesigner 从Oracle到mssql2008
database->update model for database> ->系统数据源->选择用户,选择表,确定... 1.database->change Curre ...
- MQ消息队列搭建命令及方法
MQ 是一款稳定.安全又可靠的消息传递中间件.它使用消息和队列来支持应用程序.系统.服务和文件之间的信息交换.它可以简化和加速多个平台中不同应用程序和业务数据的集成.支持各种 API 和语言,并可以在 ...
- VMware安装linux系统
- 算法与数据结构基础 - 队列(Queue)
队列基础 队列具有“先进先出”的特点,用这个特点我们可以用它来处理时间序列相关或先后次序相关的问题,例如 LeetCode题目 933. Number of Recent Calls,时间复杂度O(1 ...
- 12 | 从0到1:你的第一个GUI自动化测试