前阵InfoQ社区看到腾讯云腾讯云区块链服务平台(TBaaS)长安链体验活动,一顿操作猛如虎报了个名,体验完用一个字概括:强。 非要再加几个字的话,总体感受下来装配模式灵活高效,配套工具完整辩解。话不多说开始主题本文目录结构分为区块链分类和TBaaS平台介绍、TBaaS平台上链教程三个部分
一、区块链分类:
大体上来说,区块链可分为公链,联盟链,私有链三种:
公有链(Public Blockchain)公有链是指任何人都能参与的区块链。公有链是去中心化程度最高的区块链,不受机构控制,整个账本对所有人公开透明。任何人都能在公有链上查询交易、发送交易、参与记账。加入公有链不需要任何人授权,可以自由加入或者离开,所以公有链又称为非许可链。人人都能参与记账的公有链,是在陌生的、缺乏信任的竞争环境下记账的,所以公有链需要有一套共识机制来选出记账节点,也就是我们平常说的通过“挖矿”竞争记账权。因为需要挖矿,所以公有链记账有延时高,成本高、效率低的特点。我们接触到大多数区块链项目都是公有链,知名的公有链项目有:比特币、以太坊、EOS等。
私有链(Private Blockchain)和公有链的账本对所有人公开透明和人人皆可记账的情况相反,私有链是指区块链记账权限仅在一个人或者一个机构手里,并且参与记账的权限由机构内部制定,读取权限可以对方开放也可以任意程度地限制。比如一家公司的财务预算,参与记账的人可能只有财务部门的领导和公司的老板,而读取权限可以根据公司需要,选择只让公司决策层或者全员知道。私有链由于参与记账节点少,而且没有“挖矿”竞争这一过程,所以私有链有记账速度快,没有记账成本,隐私性高等优点。由于私有链都是内部的节点,记账环境是可信的;区块链技术能够防止机构内单节点篡改数据,即便发生错误,也能快速发现。私有链适用于公司或者组织内部,很多大型的金融机构倾向于使用私有链。
联盟链(ConsorTIum Blockchain)联盟链的账本的公开程度,介于公有链和私有链之间。联盟链是指多个机构共同管理维护的区块链,参与区块链的节点是事先选定的。联盟链也只对联盟内部成员开放全部或部分功能,链上信息的读取、写入以及记账规则都按照联盟共识来设定。比如有100所大学建立了某个区块链,共识规定,必须有67所以上的大学同意才算达成共识。和私有链一样,节点加入需要得到授权许可,所以联盟链和私有链都称为许可链。联盟链由于节点之间有很好的连接和可信的网络环境,所以联盟链有记账效率高、共识时间短、记账成本低还能兼顾隐私的特点。联盟链主要适用于行业协会,大型连锁企业对下属单位和分管机构的交易和监管。比如2015年成立的R3区块链联盟,是一个银行业的联盟链,至今已吸引了40多家巨头银行的参与,其中包括富国银行、美国银行、纽约梅隆银行、花旗银行等。
本次腾讯云区块链服务平台(TBaaS)公测体验活动中的主角长安链属于区块链架构,供区块链技术架构,用来搭建区块链网络。

同类产品还有蚂蚁链,至信链等,三者简单介绍:
蚂蚁链:阿里体系产品,蚂蚁区块链是由蚂蚁金服自主研发的金融级区块链服务项目平台,致力于打造一站式服务,用区块链技术解决金融、零售、生活等多场景区下应用问题。
至信链:腾讯体系产品,由腾讯公司、中国网安以及北明软件发起建立的基于数字文化内容场景的司法应用生态服务平台。对标的就是阿里蚂蚁链。
长安链:国家队,由北京微芯研究院、清华大学、北京航空航天大学、腾讯、百度和京东等知名高校、企业共同研发的一个开源底链平台。取名“长安链”,喻意“长治久安、再创辉煌、链接世界”。 具体项目背景和介绍、合约文档编写等参考,传送门:长安链底层技术平台介绍
二,腾讯云区块链服务平台(TBaaS)简介:
腾讯云区块链服务平台(TBaaS,Tencent Blockchain as a Service)依托腾讯云基础设施,为企业及开发者提供一站式、高安全性、简单易用的区块链服务。TBaaS 区块链服务平台集成开发、管理和运维等功能,支持客户在云上快速部署联盟区块链网络环境。基于 TBaaS 区块链服务平台,客户可以降低对区块链底层技术的获取成本,专注在区块链业务模式创新及业务应用的开发和运营之中。
TBaaS 区块链服务平台不仅符合金融级别的安全合规性要求,同时还具备了腾讯云完备的能力,用户在弹性、开放的云平台上能够快速构建自己的 IT 基础设施和区块链服务。TBaaS 区块链服务平台集合众多区块链底层技术,目前已支持长安链·ChainMaker、Hyperledger Fabric 与 FISCO-BCOS 区块链底层引擎,为用户构建自己的区块链解决方案提供灵活选择。

老惯例,传送门:TBaaS 产品简介
三,TBaaS平台上链体验
腾讯云区块链服务平台(TBaaS)提供了一个体验入口,只需要编写智能合约上传就可以快速上链,传送门:https://cloud.tencent.com/product/tbaas

点击免费体验长安链后进入区块链网络管理模块,如下图所示:

这里已经有体验网络,不需要新建网络,直接点击红色区域进入明细管理页面

这时就要准备上传合约了,合约可以选择Docker Go、Solidity、C++、Rust,因为开发环境问题这里我选择了Go,但在使用Docker费力编写合约的过程中我发现了长安链提供了个IDE,在线编写,编译合约下载好后直接上传就可以使用了,IDE传送门:https://ide.chainmaker.org.cn/
首先我们在WorkSpace下右键--创建合约工程,输入合约工程名,如chinamakerDemo
接下来在合约工程上右键--创建合约文件,命名为main.go


在右侧编辑区域输入合约代码后ctrl + s保存,如:
package main
import (
"strconv"
"chainmaker/pb/protogo"
"chainmaker/shim"
)
// AgeContract save and get age
type AgeContract struct {
}
// InitContract 合约初始化方法,会在合约部署到链上时执行
func (ac *AgeContract) InitContract(stub shim.CMStubInterface) protogo.Response {
return shim.Success([]byte("Init Success"))
}
// InvokeContract 调用合约,在链上执行合约时,实际调用的是这个方法
func (ac *AgeContract) InvokeContract(stub shim.CMStubInterface) protogo.Response {
//获取要调用的合约方法
method := string(stub.GetArgs()["method"])
//case "saveAge" 关联方法名 "saveAge" 到 ac.saveAge()
//case "getAge" 关联方法名 "getAge" 到 ac.getAge()
switch method {
case "saveAge":
return ac.saveAge(stub)
case "getAge":
return ac.getAge(stub)
default:
return shim.Error("no contarct method")
}
}
// saveAge 保存用户年龄信息
func (ac *AgeContract) saveAge(stub shim.CMStubInterface) protogo.Response {
//获取所有的合约参数
args := stub.GetArgs()
name := string(args["name"])
ageStr := string(args["age"])
if name == "" || ageStr == "" {
message := "name or age is empty"
//打印日志,调试合约时,日志会在控制台输出中展示
stub.Log(message)
//返回合约执行错误信息
return shim.Error(message)
}
_, err := strconv.Atoi(ageStr)
if err != nil {
message := "convert age to int fail. err: " + err.Error()
//打印日志,调试合约时,日志会在控制台输出中展示
stub.Log(message)
//返回合约执行错误信息
return shim.Error(message)
}
//保存用户年龄信息到链上
err = stub.PutStateFromKey(name, ageStr)
if err != nil {
message := "put state from key fail. err: " + err.Error()
//打印日志,调试合约时,日志会在控制台输出中展示
stub.Log(message)
//返回合约执行错误信息
return shim.Error(message)
}
//返回合约执行成功信息
return shim.Success([]byte("success"))
}
// getAge 获取用户年龄信息
func (ac *AgeContract) getAge(stub shim.CMStubInterface) protogo.Response {
//获取所有的合约参数
args := stub.GetArgs()
name := string(args["name"])
if name == "" {
message := "name is empty"
//打印日志,调试合约时,日志会在控制台输出中展示
stub.Log(message)
//返回合约执行错误信息
return shim.Error("-1")
}
ageStr, err := stub.GetStateFromKey(name)
if err != nil {
message := "get state from key fail. err: " + err.Error()
//打印日志,调试合约时,日志会在控制台输出中展示
stub.Log(message)
//返回合约执行错误信息
return shim.Error("-1")
}
if ageStr == "" {
message := "age not found"
//打印日志,调试合约时,日志会在控制台输出中展示
stub.Log(message)
//返回合约执行错误信息
return shim.Error("-1")
}
//返回用户年龄
return shim.Success([]byte(ageStr))
}
func main() {
//运行合约
err := shim.Start(new(AgeContract))
if err != nil {
panic(err)
}
}
合约编写完后一定要ctrl + s保存,接下来可以在线构建调试合约

调试无误后可以在线编译合约并下载,如

有了合约文件后就可以在TBaaS平台上传合约文件了

注意踩坑,合约名称和合约文件不一致会遇到奇奇怪怪的问题 ,这里非常感谢TBaaS团队的小伙伴,协助解决问题很及时,手动点赞~
上传好合约后就可以快速上链了

点击快速上链按钮,选择好合约,调用方式,输入参数等点击确定就完成了,是不是很方便快捷~


接下来我们在区块链浏览器中可以查看这条区块链的信息,如高度,交易数等

好了,体验教程到此结束,感兴趣的小伙伴也快去体验下吧!
目录一.加解密算法数字签名对称加密DES(DataEncryptionStandard)3DES(TripleDES)AES(AdvancedEncryptionStandard)RSA加密法DSA(DigitalSignatureAlgorithm)ECC(EllipticCurvesCryptography)非对称加密签名与加密过程非对称加密的应用对称加密与非对称加密的结合二.数字证书图解一.加解密算法加密简单而言就是通过一种算法将明文信息转换成密文信息,信息的的接收方能够通过密钥对密文信息进行解密获得明文信息的过程。根据加解密的密钥是否相同,算法可以分为对称加密、非对称加密、对称加密和非
文章目录1.任务背景2.任务目标3.相关知识点4.任务实操4.1安装配置JDK4.2启动FISCOBCOS4.3下载解压WeBASE-Front4.4拷贝sdk证书文件4.5启动节点4.6访问节点4.7检查运行状态5.任务总结1.任务背景FISCOBCOS其实是有控制台管理工具,用来对区块链系统进行各种管理操作。但是对于初学者来说,还是可视化界面更友好,本节就来介绍WeBASE管理平台,这是一款微众银行开源的自研区块链中间件平台,可以降低区块链使用的门槛,大幅提高区块链应用的开发效率。微众银行是腾讯牵头设立的民营银行,在国内民营银行里还是比较出名的。微众银行参与FISCOBCOS生态建设,一定
当音乐碰上区块链技术,会擦出怎样的火花?或许周杰伦已经给了我们答案。8月29日下午,B站独家首发周杰伦限定珍藏Demo独家访谈VCR,周杰伦在VCR里分享了《晴天》《青花瓷》《搁浅》《爱在西元前》四首经典歌曲Demo背后的创作故事,并首次公布18年前未发布的神秘作品《纽约地铁》的Demo。在VCR中,方文山和杰威尔音乐提及到“多亏了区块链技术,现在我们可以将这些Demos,变成独一无二具有收藏价值的艺术品,这些Demos可以在薄盒(国内数藏平台)上听到。”如何将音乐与区块链技术相结合,薄盒方面称:“薄盒作为区块链技术服务方,打破传统对于区块链技术只能作为数字收藏的理解。聚焦于区块链技术赋能,在
西安华为OD面试体验开始投简历技术面试进展工作进展开始投简历去年一整年一直在考研和工作之间纠结,感觉自己的状态好像当时的疫情一样差劲。之前刚毕业的时候投了个大厂的简历,结果一面写算法的时候太拉跨了,虽然知道时dfs但是代码熟练度不够,放在平时给足时间自己可以调试通过,但是熟练度不够那面试当时就写不出来被刷了。说真的算法学到后期我感觉最重要的是熟练度和背板子(对于我这种普通玩家来说),面试题如果一上来短时间内想不出思路就完蛋了。然后由于当时找的工作不是很理想就又想考研了。但是考研是有风险的,我自我感觉自己可能冲不上那个学校,而找工作一个没成可以继续找嘛。本着抱着试试看的态度在boss上投了简历,
♥️作者:白日参商🤵♂️个人主页:白日参商主页♥️坚持分析平时学习到的项目以及学习到的软件开发知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油🎈欢迎评论💬点赞👍🏻收藏📂加关注+!「想体验ChatGPT中文聊天?」那快进来,你用不上算我输项目场景:项目条件一、那就开始吧1、安装ChatGPT-Desktop2、OpenAPI设置二、使用实例恭喜你!!!配置成功了!!!API和URL都是博主免费提供给大家的!!!恭喜你!!!配置成功了!!!API和URL都是博主免费提供给大家的!!!🎈🎈加油!加油!加油!加油🎈欢迎评论💬点赞👍🏻收藏📂加关注+!项目场景:近几个月可以说ChatGPT是火得一
三大公有云厂商,香港地区主机测评一、ping时延比对(厦门电信本地测试):Ping时延测试腾讯云阿里云华为云延迟率最低时延44ms,最高72ms,平均46ms47.242段:最低时延59ms,最高204ms,平均107ms最低时延45ms,最高93ms,平均47ms丢包率丢包率小有的ip段丢包率较大每个段都会有概率丢包阿里云:47.242段:最低时延59ms,最高204ms,平均107ms,有的ip段丢包率较大8.210段:最低时延64ms,最高232ms,平均119ms,丢包率较好腾讯云:最低时延44ms,最高72ms,平均46ms,丢包率小华为云:最低时延45ms,最高93ms,平均47m
RTS在阿里云视频直播的基础上进行底层技术优化,通过集成阿里云播放器SDK,支持在千万级并发场景下节点间毫秒级延时直播的能力,弥补了传统直播存在3~6秒延时的问题,确保了超低延时、低卡顿、秒开流畅的直播观看体验。本文介绍了基于RTS超低延迟直播优化强互动场景体验的最佳实践方案,并以阿里云播放器Aliplayer为例,详细介绍RTS超低延迟拉流接入、自动降级、排障信息获取等逻辑的实现,助力企业打造互动直播行业的产品竞争力。适用场景该方案适用于对超低延迟直播有诉求的客户,尤其是业务中存在强互动场景直播的场景。强互动场景直播主要是指对主播和观众存在互动,或观众存在更高实时性观看、画面互动需求的情况,
1.腾讯轻服务器K3S系统安装前端时间买了三年腾讯轻服务器,现在准备学习下K8S,但是服务器资源少,退而求其次的使用腾讯轻服务器默认的K3S系统。1.获取按照提示,获取token,2.防火墙开启9090端口,输入url:http://公网IP:9090登录;3.开启SSH远程连接:创建密钥,默认下载文件,windows本地重命名增加后缀.pub,CRT通过公钥进行SSH登录。2.Kubernetes-dashboard 输入url:http://公网IP:9090,可以看到相关菜单点击右上角“+”,可以创建yaml文件进行服务部署 3.后台查看K3S相关信息[root@VM-16-5-cent
GPT-4是OpenAI发布的最新一代语言模型,于2023年3月14日正式发布,并通过API和ChatGPTPlus平台向用户开放。微软也证实,在GPT-4正式发布之前,就已经在部分版本的Bing中使用GPT-4技术。本文旨在对使用GPT-4技术的NewBing进行中立、专业的使用评测,探讨其使用体验的变化。界面与限额早于2月26日小编获得Newbing试用资格,届时Newbing初体验并不理想,限制多,例如对话只能持续5条自动终止,对话字符受限,生成效果不尽如人意。然而今日对接GPT-4全新bing额度扩充至15条,且对话字数扩容至2000字。Newbing提供了三种模式选项,即创造力、平衡
前阵InfoQ社区看到腾讯云腾讯云区块链服务平台(TBaaS)长安链体验活动,一顿操作猛如虎报了个名,体验完用一个字概括:强。非要再加几个字的话,总体感受下来装配模式灵活高效,配套工具完整辩解。话不多说开始主题本文目录结构分为区块链分类和TBaaS平台介绍、TBaaS平台上链教程三个部分一、区块链分类:大体上来说,区块链可分为公链,联盟链,私有链三种:公有链(PublicBlockchain)公有链是指任何人都能参与的区块链。公有链是去中心化程度最高的区块链,不受机构控制,整个账本对所有人公开透明。任何人都能在公有链上查询交易、发送交易、参与记账。加入公有链不需要任何人授权,可以自由加入或者离