FISCO-BCOS

致社区伙伴的一封信|FISCO BCOS开源三周年

若如初见. 提交于 2020-12-08 06:25:44
FISCO BCOS的代码完全开源且免费 下载地址 ↓↓↓ https://github.com/FISCO-BCOS/FISCO-BCOS 本文分享自微信公众号 - FISCO BCOS开源社区(FISCOBCOS)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“ OSC源创计划 ”,欢迎正在阅读的你也加入,一起分享。 来源: oschina 链接: https://my.oschina.net/fiscobcos/blog/4780268

线上Meetup预告 | BSN大赛培训之写出高水准智能合约

自古美人都是妖i 提交于 2020-11-27 09:08:58
3月25日,区块链服务网络BSN第二次开发者大赛正式启动,大赛主题聚焦智能合约开发,参赛者可基于FISCO BCOS等多底层平台编写智能合约。 为了对BSN第二次开发者大赛参赛选手提供针对性的智能合约开发指导,助力参赛者更好实现高质量的智能合约,FISCO BCOS开源社区巡回Meetup联合大赛相关单位,推出智能合约专场培训,以三场视频直播,帮助大家解决在智能合约开发过程中遇到的问题。 本场是系列培训第二场 , 将于5月21日19:30分在腾讯课堂等多平台同步直播 。 为方便获取直播链接,请提前扫描海报二维码添加小助手微信,届时我们将在FISCO BCOS交流群中提醒观看。 直播前大家可以先对智能合约有初步了解,配合社区推出的智能合约系列文章培训效果更佳。 公众号对话框回复 【 学习资料 】 还可获得FISCO BCOS全套学习材料。 FISCO BCOS代码仓库: https://github.com/FISCO-BCOS/FISCO-BCOS Gitee镜像仓库: https://gitee.com/FISCO-BCOS/FISCO-BCOS 了 解 智 能 合 约 概 念 智 能 合 约 初 探 : 概 念 与 演 变 快 速 上 手 智 能 合 约 开 发 F I S C O B C O S 智 能 合 约 开 发 快 速 入 门 如 何 优 雅 地 编 写 智 能 合

大赛报名 | 2020金砖大赛之基于区块链技术的存证防伪应用大赛(中国赛区)

北城余情 提交于 2020-11-25 18:30:35
公众号对话框回复【 金砖大赛 】获取参赛报名资料 社区小伙伴一展身手的机会又来啦!2020一带一路暨金砖国家技能发展与技术创新大赛之基于区块链技术的存证防伪应用大赛(以下简称“大赛”)围绕FISCO BCOS区块链平台制定赛题,重点考察参赛选手 基于FISCO BCOS和WeBASE中间件等平台的搭建 、Solidity智能合约开发部署与调用等方面的技能点。 作为高规格的国际赛事,大赛由金砖国家工商理事会中方理事会、一带一路暨金砖国家技能发展国际联盟主办,旨在培养国际化、高技术技能水平人才。 大赛包括国内赛和国际赛,基于区块链技术的存证防伪应用大赛国内赛获得前2名的队伍享有优先出国参赛资格(须在报名时勾选意向出国参赛),获得前20名的队伍享有优先参加本赛项国际赛的资格。 大赛报名通道已于日前开启,全日制在籍学生可以院校为单位组队参赛。FISCO BCOS开源社区将一如既往地为大家提供 赛事培训、技术指导 等多方位支持,助力大家登上金砖大赛国际舞台一展身手,扫码即可加入大赛技术交流群。 FISCO BCOS开源社区小助手 ID:FISCOBCOS010 大赛主题 开发以工业4.0为核心的智能制造技术技能、数字技术技能、未来技术技能,培养国际化、高技术技能水平的未来技术技能人才和人文交流人才。 组织结构 政策指导单位(申报审批中): 中华人民共和国外交部 中华人民共和国教育部

FISCO BCOS上使用第三方CA证书底层节点部署实操

谁说胖子不能爱 提交于 2020-11-23 11:35:32
CA证书怎么生成?节点相互验证证书时会交叉验证吗?对于社区常遇到的此类问题,分享一些个人使用第三方CA证书部署底层节点的经验,希望可以给大家一些借鉴与参考。 为什么要对第三方CA证书进行改造? 首先,说明一下我进行第三方CA证书改造的背景和原因: 社区内经常有人会问到第三方CA证书的改造问题,个人感觉这是大家都关注的要点。 在我们的一些项目中,业务方指定要使用第三方CA证书,实际的生产需求也要求我们进行CA改造。 在司法领域区块链存证场景中,需要由具有电子认证许可证书机构出具的认证证书才能作为电子认证。 鉴于以上三点,我觉得大家对如何进行第三方CA证书改造都很关注。 FISCO BCOS技术文档中提供了CFCA证书改造的案例,但在一些细节上还待完善,因此 我想写一 篇教程,结合生产环境改造、第三方CA配合、合规性、技术实现等内容具体说明,看看能否对其他社区用户有所帮助。 除了司法领域存证,还有哪些场景需要由第三方CA机构参与? 基本上用到CA证书的区块链场景都有可能用到第三方CA证书,是否采用第三方CA证书主要考虑: 联盟链是否需要第三方CA机构背后的相关资质。 联盟链中,参与方对节点准入管理、以及后续控管是否需要第三方CA机构作为公正机构来签发证书,防止自建CA体系中存在任意签发证书导致节点作恶等问题。 两级证书模式下,为什么需要配置白名单列表?如果不配置会有什么问题?

联盟链要对区块链做减法

帅比萌擦擦* 提交于 2020-10-31 09:09:40
当前联盟链平台在公有链的基础上,对共识机制做调整,去掉公有属性,使得准入可控、效率提升,这实际上是对区块链在做减法。 但这是否足够呢? 我们在应用中很快发现,联盟链的使用比较受限制,一条链基本上只能做一项业务,而且成员的扩展会面临很多问题,这个扩展并不是在技术上增加一个节点,而是在业务上增加一个参与方。 问题是新增加的成员能看哪些数据,不能看哪些数据,有时候他可能只需要了解其中很少数据就可以了,大部分数据不需让他看到。试问当前的联盟链平台怎么解决?可能会说,再建一条链,然后做跨链。 跨链也是现在大家重点在做的事情,就是因为看到了这样的问题。但是我们为什么不能从另一个角度思考,区块链本身是否就可以做到,毕竟使用跨链就意味着承认区块链在创建新的信息孤岛。只是以前“孤”在一个地方,现在“孤”在一个圈子, 这其实并没有解决让信息顺畅流通和共享的问题。 中本聪创建比特币的时候想到了区块链这种天才的解决方案,但这并不意味着它是唯一的解决方案 。 既然是解决方案,那它要解决的是什么问题? 明确了问题,然后再思考下去也许能找到新的解决方法呢。 或者对区块链做一些改良让他更适合当下的商业需求。 为什么说要对区块链做减法?因为现在区块链设计得实在是太极致了,对不可篡改、可追溯有极致要求,在其他方面就会有所牺牲,比如隐私保护、性能。所以需要做减法,降低对这两个特性的支持,来提升对其他需求的满足度,

FISCO BCOS与银河麒麟操作系统完成兼容互认证

大憨熊 提交于 2020-10-28 13:46:15
近日,由金链盟开源工作组研发并开源的 FISCO BCOS与银河麒麟操作系统完成兼容性互认证测试,达到通用兼容性要求及性能、可靠性要求,满足用户实现应用的关键性需求。 “银河麒麟”是麒麟软件旗下产品品牌。 麒麟软件以安全可信操作系统技术为核心,既面向通用领域打造安全创新操作系统和相应解决方案,又面向专用领域打造高安全高可靠操作系统和解决方案,现已形成了服务器操作系统、桌面操作系统、嵌入式操作系统、麒麟云等产品,能够同时支持飞腾、鲲鹏等国产CPU。 在全面无缝适配支持麒麟操作系统的同时,FISCO BCOS全部模块支持Arm架构,并在计算、网络、存储等各环节采用国密算法,实现区块链访问全流程国密防护。从国密算法、操作系统、芯片架构到服务器平台,FISCO BCOS已实现全链路国产化支持,达成 全方位安全可控。 FISCO BCOS完整国产化支持的实现,有赖于社区开发者的积极反馈与通力协作,更有社区开发者基于在鲲鹏平台运行FISCO BCOS v2.6.0的开发实践,整理编译手册贡献到社区技术文档库,为更多开发者提供快速实践指引。 作为安全可控的区块链平台,FISCO BCOS的可用性与稳定性久经多应用广泛验证,在智慧政务、金融行业、司法存证、文化版权、社会公益等场景都有丰富落地应用。 如今,FISCO BCOS开源社区已汇聚上万名个人开发者

BSN商用至今,开发者热点问题20问

我是研究僧i 提交于 2020-10-24 00:51:28
2020年4月25日区块链服务网络BSN正式进入商用阶段。6月12日区块链服务网络第二次开发者大赛进入评审阶段。随着BSN业务的深入开展,已被更多的开发者所关注。用户在使用BSN的过程中,遇到了各式各样的使用问题,我们借此优化迭代BSN服务功能的同时,也将相关的共性问题陆续整理出来与广大开发者分享,让开发者们能够更使用BSN进行区块链应用开发。 1. 问:如果上链的数据错误,怎么处理? 答:数据一旦上链,所有的数据都不能被篡改和被物理删除的;但是可以设计一种合约的逻辑删除的机制,例如在特定的数据合约中添加一个状态字段来标记数据是否被删除。 2. 问:在智能合约内可不可以调用其他外部接口? 答:目前BSN同一个应用中的多个智能合约可以相互调用,但是不能访问外部接口。 3. 问:如何确保数据放到BSN上是安全的? 答:首先区块链中有共识机制和加密算法等关键技术来保证数据安全,其次BSN设计了应用接入密钥和用户交易密钥两套密钥,来保证接入的安全。最后业务方也可以在链下业务系统对原始数据进行加密处理后再上传到BSN中。 4. 问:通过BSN网关API的用户注册接口注册的子用户和父用户权限是否是一致的?子用户在调用链码时,请求头中的userCode是使用子用户的userName吗? 答:调用网关API用户注册接口注册的子用户权限和父用户是一样的,子用户继承了父用户的权限

记一次CachedStorage中死锁的调试经历

别来无恙 提交于 2020-10-07 09:25:01
在整合FISCO BCOS非国密单测与国密单测的工作中,我们发现CachedStorage的单测偶然会陷入卡死的状态,且可在本地持续复现。 复现方式为循环执行CachedStorage单测200次左右,便会发生一次所有线程均陷入等待状态、单测无法继续执行的情况,我们怀疑在CachedStroage中发生了死锁,故对此进行调试。 Debug思路 中医治病讲究望闻问切,调试bug同样需要遵循寻找线索、合理推断、验证解决的思路。 观察线程栈 在死锁发生时,使用/usr/bin/sample工具(mac平台环境下)将所有的线程的栈打印出来,观察各线程的工作状态。 从所有线程的线程栈中观察到有一个线程(此处称为T1)卡在CachedStorage.cpp的第698行的touchCache函数中,具体的代码实现可以参考: https://github.com/FISCO-BCOS/FISCO-BCOS/blob/release-2.3.0-bsn/libstorage/CachedStorage.cpp 从代码片段中可以看到,T1在第691行已经获得了m_cachesMutex的读锁:代码RWMutexScoped(some_rw_mutex, false)的意思是获取某个读写锁的读锁;相应地,代码RWMutexScoped(some_rw_mutex, true)的意思是获取某个读写锁的写锁

BCOS区块链性能分析工具的安装和使用perf+火焰图

那年仲夏 提交于 2020-10-06 07:54:41
安装Perf perf的全称是Performance Event,在2.6.31版本后的Linux内核中均有集成,是Linux自带的强力性能分析工具,使用现代处理器中的特殊硬件PMU(Performance Monitor Unit,性能监视单元)和内核性能计数器统计性能数据。 perf的工作方式是对运行中的进程按一定频率进行中断采样,获取当前执行的函数名及调用栈。如果大部分的采样点都落在同一个函数上,则表明该函数执行的时间较长或该函数被频繁调用,可能存在性能问题。 1、终端输入perf,根据提示进行安装 2、输入perf得到 usage: perf [–version] [–help] [OPTIONS] COMMAND [ARGS]… 表示安装成功 安装完成后,开始正式使用perf工具。 1、使用perf需要首先对目标进程进行采样: $ sudo perf record -F 1000 -p pidof fisco-bcos -g – sleep 60 在上述命令中, 我们使用perf record指定记录性能的统计数据;使用-F指定采样的频率为1000Hz,即一秒钟采样1000次;使用-p指定要采样的进程ID(既fisco-bcos的进程ID),我们可以直接通过pidof命令得到;使用-g表示记录调用栈信息;使用sleep指定采样持续时间为60秒。 可能出现的错误