鉴于笔者以前各大博客教程都有很多人提问,早期建立一个技术交流群,里面技术体系可能比较杂,想了解相关区块链开发,技术提问,请加QQ群:538327407 参考资料 证书说明:https://mp.weixin.qq.com/s/nRwHxt2E1TJiopJqLSvMOQ 参考资料:https://blog.csdn.net/FISCO_BCOS/article/details/95496272 (国密版本部署,很不错) 准备工作 1.机构A ,作为创世区块的服务器 148.70.170.96 (…
这篇文章主要介绍了交叉编译的实现,包括环境部署,并简单测试交叉编译环境是否安装成功. 一.交叉编译 在一个平台上生成另一个平台上的可执行代码.为什么要大费周折的进行交叉编译呢?一句话:不得已而为之.有时是因为目的平台上不允许或不能够安装所需要的编译器,而又需要这个编译器的某些特征:有时是因为目的平台上的资源贫乏,无法运行所需要的编译器:有时又是因为目的平台还没有建立,连操作系统都没有,根本谈不上运行什么编译器. 要进行交叉编译,我们需要在主机平台上安装对应的交叉编译工具链(cross compi…
想了解相关区块链开发,技术提问,请加QQ群:538327407 FISCO BCOS 基础安装教程:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/installation.html 官方文档:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/tutorial/sdk_application.html 环境准备:腾讯云服务器 ubu…
简介 FISCO BCOS是由国内企业主导研发.对外开源.安全可控的企业级金融联盟链底层平台,由金链盟开源工作组协作打造,并于2017年正式对外开源. 目前,成熟的区块链的平台不少,之所以选择FISCO BCOS,主要是因为文档细致,容易入门. 官方地址入口 流程说明: 本篇文章介绍的 Spring Boot 整合 Fisco Bcos的案例,是在阿里云服务器上部署验证的: --> 1.Fisco Bcos环境搭建与验证 --> 2.创建SpringBoot工程并配置依赖 --> 3.编…
国密算法在主流操作系统.浏览器等客户端中,还没有实现广泛兼容.因此,在面向开放互联网的产品应用中,国密算法无法得到广泛应用.比如,在SSL证书应用领域,由于国际主流浏览器不信任国密算法,如果服务器部署国密SM2 SSL证书,可能直接导致网站系统在用户端无法访问. 实现基于国密算法的HTTPS加密认证,最大的应用难点在于,国密算法应用生态的建设以及对主流应用生态的兼容.沃通CA提供的“国密SM2 SSL证书全生态支持和全球信任解决方案”,很好地帮助用户解决了这个问题! 建立完整的国密全生态支持体系…
先参考这篇文章 Linux实现树莓派3B的国密SM9算法交叉编译——(一)环境部署.简单测试与eclipse工程项目测试 部署好环境,并简单测试交叉编译环境是否安装成功,最后实现在Eclipse上进行交叉编译. 这篇文章主要介绍在Eclipse上进行miracl的交叉编译测试与生成miracl静态库,方便后续实现国密SM9算法. 一.MIRACL库介绍 MIRACL(Multiprecision Integer and RationalArithmetic C/c++ Library)是一套由S…
比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchain/bytom 国密算法是指国家密码管理局制定的自主可控的国产算法,包括一系列密码学算法:SM1.SM2.SM3.SM4.SM7.SM9.以及祖冲之算法.最常用的三种商用密码算法是 SM2椭圆曲线公钥密码算法.SM3密码杂凑算法以及 SM4分组密码算法. 其中,SM2 算法属于椭圆曲线公钥密码系统,相较于 RSA 公钥密码…
20155206赵飞 基于<Arm试验箱的国密算法应用>课程设计个人报告 课程设计中承担的任务 完成试验箱测试功能1,2,3 . 1:LED闪烁实验 一.实验目的  学习GPIO原理  掌握Z32安全模块驱动LED的工作原理 二.实验内容 学习GPIO原理,阅读<ARM cortex-m0权威手册>(详见目录Z32开发指南\3.参考资料),参考Z32HUA_DEMO工程函数库(详见Z32开发指南\2.软件资料),通过设置GPIO0来控制核心板上L2灯的亮灭. 三.预备知识 …
Fabric国密改造是个什么概念?我们来思考以下4个问题: 为什么偏偏是密码算法?(WHY?) 什么是国密算法?(WHAT?) 改造切入点什么?(WHERE?) 如何实现国密支持?(HOW?) 1.为什么偏偏是密码算法? 问: 为什么改造Fabric要从密码算法改造入手? 答: 密码是解决网络与信息安全最有效.最可靠.最经济的方式,是维护网络与信息安全的核心技术和基础支撑.而密码算法在区块链系统中起着举足轻重的作用,说是没有密码没有BlockChain也不足为过.密码算法大体分为非对称,对称和哈…
国密商用算法是指国密SM系列算法,包括基于椭圆曲线的非对称公钥密码SM2算法.密码杂凑SM3算法.分组密码SM4算法,还有只以IP核形式提供的非公开算法流程的对称密码SM1算法等. 第1节 SM2非对称密码算法原理 国密SM2算法是商用的ECC椭圆曲线公钥密码算法,其具有公钥加密.密钥交换以及数字签名的功能.椭圆曲线参数并没有给出推荐的曲线,曲线参数的产生需要利用一定的算法产生.但在实际使用中,国密局推荐使用素数域256 位椭圆曲线,其曲线方程为y^2= x^3+ax+b.参数如下: 其中p是大…
密信浏览器( MeSince Browser )是基于Chromium开源项目开发的国密安全浏览器,支持国密算法和国密SSL证书,同时也支持国际算法及全球信任SSL证书:密信浏览器使用界面清新,干净.简洁.无广告,提供简洁.快速的浏览体验,满足国密安全合规需求.目前,密信浏览器支持Windows 32位和64位系统,未来将逐步推出Linux.Mac及移动端版本. 密信浏览器的主要特性 1.兼容国密标准和国际标准密信浏览器遵循国家标准<GM/T 0024-2014: SSL VPN技术规范>,支…
想了解相关区块链开发,技术提问,请加QQ群:538327407 前提 前面我们已经通过底层部署.sdk调测.自定义智能合约编写与部署.联合单元测试调测,已经初步对FISCO BCOS的区块链底层和实际开发有了简单了解. 接下来,在本文中,你可以看如何在底层部署区块链浏览器,并对区块链浏览器进行配置,从而实现图形化区块链浏览. 正常流程 1.官方文档 通过以下链接,可以先查看一下官方对于区块链浏览器的部署 https://github.com/FISCO-BCOS/fisco-bcos-brows…
FISCO BCOS是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟(深圳)(简称金链盟)成立开源工作组通力打造.开源工作组成员包括博彦科技.华为.深证通.神州数码.四方精创.腾讯.微众银行.亦笔科技和越秀金科等金链盟成员机构. 2019年6月18日,FISCO BCOS v2.0.0-rc3正式发布,该版本对底层平台的易用性.性能等方面进行了多项优化. 最新代码和技术文档已在github和readthedocs上同步更新,欢迎体验和star支持. 代码仓库: https://githu…
鉴于笔者以前各大博客教程都有很多人提问,早期建立一个技术交流群,里面技术体系可能比较杂,想了解相关区块链开发,技术提问,请加QQ群:538327407 目标 1.新增群组搭建完整联盟链 2.根据群组新增机构 3.新增群组,将原有机构加入 一.前提准备: java 环境 详细可以参考前面几章的操作. 二.正式操作 官方参考文档:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/tutorial/enterprise_…
一.目的 前面已经完成fisco bcos 相关底层搭建.sdk使用.控制台.webase中间件平台等系列实战开发, 本次进行最后一个部分,体系化管理区块链底层,建立有序的底层控管制度,实现权限化管理. 完成:链管理.系统管理.数据上链操作等. 其中数据上链分为:合约版本上链.crudService 版本上链等操作. 二.准备工作: 在进行之前,我们首先要了解一下,fisco bcos 的底层权限系统介绍. https://mp.weixin.qq.com/s/QJNk71w4o_cGX2O-1…
OpenSSL 1.1.1 国密算法支持 https://www.openssl.org/ https://github.com/openssl/openssl OpenSSL 1.1.1 新特性: 开始支持国密SM2/SM3/SM4加密算法(仅支持算法,未支持国密套件) 参考英文博客: https://www.openssl.org/blog/blog/2018/09/11/release111/ OpenSSL项目最近6个月添加了许多新特性, 包括对中国SM2/SM3/SM4算法的支持: S…
C# 基于.NET FRAMEWORK 4.5 JAVA 基于 JDK1.8 一.要点 1.签名算法:SM3withSM2. 2.签名值byte[] 转字符串时,双方要统一,这里是BASE64. 二.工具类和调用DEMO C# 引用了BouncyCastle.Crypto类库,在nuget上下载最新即可. 工具类: using Org.BouncyCastle.Asn1; using Org.BouncyCastle.Asn1.GM; using Org.BouncyCastle.Asn1.X9…
各位,好久不见~ 最近接手网联的国密改造项目,由于对国密算法比较陌生,前期碰到了一系列国密算法加解密的问题. 所以这次总结一下,分享这个过程遇到的问题,希望帮到大家. 国密 什么是国密算法? 国密就是一个口头上简称,官方名称是国家商用密码,使用拼音缩写 SM,它是用于商用的.不涉及国家秘密的密码技术. 那说起密码技术,大家一定很熟悉 MD5,AES,RSA 等算法,这些都是通用国际标准算法. 而国密其实就是这些国际算法国产化的代替方案,与国际算法对应关系如下: 这次国密改造项目使用的就是 SM2…
通常我们遇到过的X509证书都是基于RSA-SHA1算法的,目前国家在大力推行国密算法,未来银行发行的IC卡也都是基于PBOC3.0支持国密算法的,因此我们来学习一下如何验证SM2国密证书的合法性.至于SM2与SM3的算法实现不在本文讨论范围之内,可以用openssl.BouncyCastle.Crypto.dll等第三方库来实现. SM2国密证书与RSA证书一样,一般内容都是以BASE64格式编码的,以网上下载的一个自签名证书为例: MIIB5jCCAZECAQAwVDELMAkGA1UEBh…
国密SM4对称算法实现说明(原SMS4无线局域网算法标准) SM4分组密码算法,原名SMS4,国家密码管理局于2012年3月21日发布:http://www.oscca.gov.cn/News/201204/News_1228.htm ,但不能下载标准文档. SM4为对称算法,密钥长度和分组长度均为128位.按原SMS4的标准描述:加密算法与密钥扩展算法都采用32轮非线性迭代结构.解密算法与加密算法的结构相同,只是轮密钥的使用顺序相反,解密轮密钥是加密轮密钥的逆序. 该算法网上的C语言实现如下:…
摘要:本文不对SM2做过多的介绍,主要介绍java bouncycastle库关于SM2的相关API的使用及注意事项 1. SM2 签名: 注意: 1)签名格式ASN1(描述了一种对数据进行表示.编码.传输和解码的数据格式),包括两个大整数. 2)注意USER_ID的一致性(规范默认是"1234567812345678"),否则影响验签. 主要代码 SM2Signer localSM2Signer = new SM2Signer(); Security.addProvider(new…
转载请注明出处 http://blog.csdn.net/pony_maggie/article/details/39780825 作者:小马 一 知识准备 SM2是国密局推出的一种他们自己说具有自主知识产权的非对称商用password算法.本身是基于ECC椭圆曲线算法的.所以要讲sm2, 先要弄懂ECC. 全然理解ECC算法须要一定的数学功底.由于涉及到射影平面坐标系,齐次方程求解, 曲线的运算规则等概念. 这里不做过多的数学分析(主要是我自己也没有全然整明确). 想要深入了解ECC的我推荐网…
Talk is cheap, show me your code. 代码也看了,蛋也扯了,之后总该做点什么.响应国家政策,把我们的国密算法融合进去吧--  先附两张bccsp下国密算法的设计实现图. 一 国密算法软实现,将sm2内嵌到sw中 二 国密算法硬件实现,通过pkcs11的方式调用支持国密算法的加密机或者加密卡 这两种实现方式的具体设计可以去hyperledger的jira上查找,都是FAB-5496的子任务. 这两种方式各有优缺点,硬件实现上来说密钥可能更加安全可控,效率上也会高一点,…
国密即国家密码局认定的国产密码算法.主要有SM1,SM2,SM3,SM4.密钥长度和分组长度均为128位. SM1 为对称加密.其加密强度与AES相当.该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用. SM2为非对称加密,基于ECC.该算法已公开.由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA.ECC 256位(SM2采用的就是ECC 256位的一种)安全强度比RSA 2048位高,但运算速度快于RSA. SM3 消息摘要.可以用MD5作为对比理解.该算法已公开.校验结…
<基于Arm实验箱的国密算法应用>课程设计 结题报告 小组成员姓名:20155206赵飞 20155220吴思其 20155234昝昕明 指导教师:娄嘉鹏 设计方案 题目要求:基于Arm实验箱的国密算法应用 三种平台: Z32 ARM32+Linux STM32 内容: SM1, SM2,SM3算法测试 算法应用:混合密码系统 设计方案及可行性分析 运行老师给的范例代码,熟悉开发软件和开发板的使用:收集资料简单了解Z32,ARM的基本概念,然后实现ARM与Ubuntu映射文件.成功编译并运行代…
20155200吴思其 基于<Arm试验箱的国密算法应用>课程设计个人报告 课程设计中承担的任务 完成试验箱测试功能4,5,6以及SM3加密实验的实现 测试四 GPIO0按键中断实验 实验目的 学习GPIO中断原理 掌握Z32安全模块中断的工作原理 实验过程及结果: 1.打开"Z32开发指南\实验4-GPIO0按键中断"目录的工程文件.编译工程,产生后缀名为.bin的可执行代码. 2.下载程序 将实验箱接入电源,用USB公对公线将实验箱的USB接口连接到电脑的USB接口上,…
20155234 昝昕明<基于ARM实验箱的国密算法应用>课程设计个人报告 个人贡献 参与课设题目讨论及完成全过程: 资料收集: SM1算法及和ARM之间通信 负责串口代码调试: 协调完成小组结题报告: 负责实验箱的管理: 设计中遇到的问题及解决方法 开发板无法ping通主机 在虚拟机VMware里面:选择 edit(编辑) -> Vitual Network Editor(虚拟网络编辑器) ,选中VMnet0,在下面的VMnet Information中,点Bridge to(桥接到)…
  java sm4国密算法加密.解密 CreationTime--2018年7月5日09点20分 Author:Marydon 1.准备工作 所需jar包: bcprov-jdk15on-1.59.jar commons-lang3-3.1.jar import java.security.Key; import java.security.NoSuchAlgorithmException; import java.security.NoSuchProviderException; impor…
上一次讲了产生密钥,这次我们讲一下加密解密的实现. 先说一下加密解密的流程,一下这些内容都是从国密局发布的国密标准文档里面摘录出来的.大家可以去国密局的网站上自己下载. 下列符号适用于本部分. A,B:使用公钥密码系统的两个用户. a,b: Fq中的元素,它们定义Fq上的一条椭圆曲线E. dB:用户B的私钥. E(Fq): Fq上椭圆曲线E 的所有有理点(包括无穷远点O)组成的集合. Fq :包含q个元素的有限域. G:椭圆曲线的一个基点,其阶为素数. 2Hash( ):密码杂凑函数. Hv (…
国密非对称加密算法 又称sm2,它是采取了ECC(曲线加密算法)中的一条固定的曲线,实际上就是ECC算法. 因为openssl里面不包含sm2算法,所以就要重新进行封装-. - 对于ECC算法我就不介绍了,网上关于它的介绍一抓一大把,丢给你们一个链接ECC算法介绍. 现在对ECC加密算法做个大致的介绍: 所有非对称加密算法都有公钥和私钥,它们都可以用下面这个公式概括: A = k * G 公钥:A , G 私钥:k , G 在ECC加密中 G是基准点,k是小于n(基准点的阶)的一个素数, A是加…