学习
实践
活动
工具
TVP
写文章

区块密码基础之签名算法(一)

签名算法是区块的重要技术之一,签名算法同时也是区块安全的重要研究点之一,区块的地址,公钥,私钥,钱包管理等都和签名算法相关。 下面通过进一步分析签名算法,和大家一起探索适合各种应用场景的区块如何选择合适的签名算法。 二、区块地址的生成过程 区块的所有权是通过私钥、区块地址和数字签名来确定的。 而且由于SM2的签名参数s具有线性关系,可以结合区块实际应用进行一些特殊需求的签名算法设计,满足区块特殊的需求。 五、总结 区块签名算法是区块应用和安全的重要研究方向之一,通过对区块签名算法的研究,设计适合区块业务的签名算法,实现更加高效和安全的区块系统;另外通过对区块签名算法的分析,为您在区块签名算法的国密替代提供参考 如何实现既保护用户的身份隐私又对监管友好的区块交易系统是一个值得深入探讨的问题。下一篇将通过环签名和群签名介绍,进一步讨论其他签名算法在区块系统中的应用。 参考文献 1.

9110

区块密码基础之签名算法(二)

一、引言 区块的匿名性是指用户在区块网络中使用假名进行活动,其本质为非实名性。 五、 环签名区块中的应用 5.1 应用 在众多基于区块的数字货币中,门罗币(Monero)正是最具有代表性的使用环签名来增强其隐私保护能力的数字货币,其交易过程如图5所示。 尽管如今已有许多具有较高计算效率的对数级环签名方案被提出用于区块中,但其仍需要区块用户去权衡匿名性与交易成本。除了签名长度,计算效率也是制约环签名应用的重要因素。 六、 小结 本文简单介绍了环签名的基础概念、应用与不足。显然,环签名作为一种去中心化的匿名签名算法,与区块的特点高度契合,可用于区块上的隐私保护。 然而在实际应用中,环签名的缺点仍制约着其在区块上的应用,对其仍具有非常广泛的研究前景。未来,我们将继续探寻前沿技术,关注最新的高效环签名算法,研究更加完善的区块隐私保护方案。

8010
  • 广告
    关闭

    年末·限时回馈

    热卖云产品年终特惠,2核2G轻量应用服务器6.58元/月起,更多上云必备产品助力您轻松上云

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    用NBitcoin进行区块开发(6):交易签名

    比特币交易的签名过程是所有环节中最复杂的步骤之一,下面两篇文章对这个过程有详细的描述。 签名过程需要动用私钥,提前在Bitcoin Core中找到它,建立一个BitcoinSecret。 这里需要注意,签名之前把ScriptSig信息填好。 我们可以看一下交易在签名之后的二进制数据,来准确地理解签名的过程。 ScriptSig主要由签名和公钥两部分构成。 签名部分用DER编码(Distinguished Encoding Rules,可辨别编码规则),实际上就是记录了椭圆曲线签名的2个整数(R, S)。

    72330

    NEO 交易所钱包开发之离线签名区块】 顶

    前言:         在2019年的3月之前我对铺天盖地的“区块”网络风暴,都只是一个耳朵进另一个就帮忙给丢了...可3月中旬的时候一份工作让我决定去接触他,毕竟马大爷说过:在未来只有人工智能(AI )和区块......我接到的第一个命令是做NEO(小蚁币)的冷钱包,可是我看了官网连签名都没的,更不要说什么冷钱包了,网上的资料收到的都是些没的多大用处的东西...好方啊不过入职的第一个任务就要逃避了吗 第三步:根据邮件创建多重签名地址和转账         第一步中已经有链接说过多重签名了转账了,你直接往你第一步中转。 第四步:签名和广播         在第一步的钱包中进行签名(合约地址必须在哦,不然你的钱包和转账的地址没的关系,也是不能签名的)如图下: ? 你看交易就成功了。 与是我加入到我的离线签名项目中(只实现一次签名): 终结:完成离线签名 @RequestMapping("/neo/offline") public class NeoController {

    83020

    区块|区块简史

    比特币的历史2009年推出的比特币是区块技术的第一次真实应用。在接下来的五年里,区块的历史几乎与比特币的历史同义。以下是此期间的粗略时间表: 以太坊的历史2014年是区块历史上一个重要里程碑。 在此之前,区块技术的应用仅限于加密货币。尽管比特币协议已在该领域证明了自己,但它缺乏开发区块应用程序所需的脚本语言,以拓展到加密货币外的应用领域。 Vitalik将他的新区块命名为以太坊Ethereum。 在以太坊区块上使用智能合约需要小额支付以太币,即以太坊的加密货币。 自2014年推出以来,以太坊区块经历了一个显著的增长期,现在成为仅次于比特币的区块。以下时间表显示了2014年以后比特币相关事件的历史。 虽然我们并没有拥有预测的水晶球,而且区块的大规模使用肯定存在很多障碍,但这种技术的未来似乎比以往更加光明。 你喜欢这篇博文吗?我们是否错过了任何重要的区块里程碑?您对区块的未来有何看法?

    62140

    初识区块区块01】

    最近研究了一段时间的区块,准备写个系列文章,主要是从技术方面切入,本人也是边学习边总结,欢迎大家关注“伟大程序猿的诞生”,共同交流成长。 区块是什么? 1、区块概念? 定义:区块是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块系统中实现不同节点之间建立信任、获取权益的数学算法。 白话:我们可以把区块理解为一个公有账本,每个人都可以进行记账,同时系统会将写好的内容记录并发给所有人进行备份 2、区块优点 1、去中心化 2、开放性 3、自治性 4、信息不可篡改 区块1.0/2.0/3.0对比 区块的进化方式是从1.0到2.0再到3.0: 区块1.0:是以比特币为代表的数字货币应用,其场景包括支付、流通等货币职能。 区块3.0:则超出金融领域,为各种行业提供去中心化解决方案。

    72421

    区块入门总结区块

    image 解决拜占庭将军问题 如何让众多完全平等的节点,针对对某一个状态达成共识,这就是拜占庭问题 数字签名 最长机制 POW机制 在区块中,如何保证区块是正确的。 比特币与区块关系 比特币是区块的应用 区块是协议 区块由比特币的底层支撑系统 区块是从比特币抽离出来的概念,由比特币提出的概念 比特币的技术 hash算法 非对称加密 RSA 椭圆曲线算法 v2.0 智能合约,eth,主要与金融领域结合 v3.0 区块与社会,区块与各个行业融合,物联网、存储、优秀、区块 协议分层 应用层 合约层 激励机制 共识层 网络层 数据层 [图片上传失败 (image-7a014a-1537891044838)] 数据层 区块数据 链式结构 数字签名 哈希函数 Merkel树 非对称加密 网络层 p2p网络 传播机制 验证机制 分配机制 区块的特点 去中心化 不可伪造 不可篡改 不可复制 匿名 基于密码学 分布式 可溯源 账本公开 区块类型 公有 比特币 EOS eth NEO 联盟 都可以看,不一定可以记账

    1.3K21

    数字签名与加密算法-下【mix指南之区块

    所以,开始会更新一些区块技术的文章。 最近感受比较深的方法,分享给大家: mix方法:不让概念限制想象力,更多地关注原理本身。 接上一期数字签名与加密算法-上【mix指南之区块】: 6 ECDSA 比特币采用的加密方案 比特币中使用的数字签名算法是椭圆曲线数字签名算法(Elliptic Curve Digital Signature 区块中的密钥分为公钥和私钥两种,是通过非对称加密算法生成的。 通过这种算法得到的密钥对能保证在世界范围内是唯一的。 公钥的主要作用:加密;验证签名。 私钥的主要作用:签名;解密。 在比特币的ECDSA算法的实现中,被签名的“消息”是交易中特定数据的哈希值。而交易就是存储在比特币区块上的Block。 7.2 区块链式存储的理念传达 区块的交互流程也区别于我们所理解的“钱包”的概念,因为账户的余额不是单独记录在某条数据里的,而是化解在一笔笔交易之中,如果传达技术概念给普通用户,需要设计师好好考虑。

    44820

    数字签名与加密算法-上【mix指南之区块

    为什么要开一个区块的系列?引用mixlab社区里的熊叔(ML94)的话: “ 如果把人比作手机,价值观、态度和习惯是这个操作系统底层,领域技能更像是系统上的app。 所以,开始会更新一些区块技术的文章。 最近感受比较深的方法,分享给大家: mix方法:不让概念限制想象力,更多地关注原理本身。 当然,还有区块。 2 加密算法 密码学最核心的就是加密算法,我们了解下加密算法的分类:对称加密算法,非对称加密算法和哈希算法。 2)签名 对称加密算法不能实现签名,因此签名只能采用非对称加密算法。 区块相关文章推荐: 如何技术地识别双十一的“骗”局 参考资料: 百度百科 维基百科 Github https://github.com/bitcoin/bitcoin

    53320

    编出个区块:实现比特币的椭圆曲线签名和认证

    下面我们看看如何使用椭圆曲线实现数字签名。 数字签名目的就是为了验证给定信息属于特定人。首先我们每个人先获取一个秘钥e,这个秘钥就像我们的身份证那样不能丢失,一旦丢失本人的身份就会被他人冒充。 我们看看如何在代码上实现签名认证逻辑: def verify_signature(r, s, z, P): s_invert = pow(s, N - 2, N) # 使用费马小定理直接找到s 4,将(r, s)发布出来作为自己的签名 我们看看签名流程的实现: private_key_str = "this is my secret key" message_str = "message I return Signature(r, s) pk = PrivateKey(e) sign = pk.sign(z) print(sign) 我们需要非常注意的是,椭圆曲线在每次签名时 在区块应用中,有很大一部工程性问题就是如何将这些数据结构进行序列化然后放到网络上穿来穿去,因此序列化将是下一节要点。

    11010

    区块科普:区块都有哪些

    比特币是区块中的一个重要概念,它本质上是一个去中心化的数据库,是一串用密码学组成的数据块,每个数据块中含有比特币网络交易的信息,用于验证交易信息的真实性(或防伪)和生成下一个区块区块 区块的广义:区块技术是利用区块数据来验证和存储数据,使用分布式节点共识算法来生成和更新数据、使用密码学的方式来保证数据传输的安全性、使用智能合约来编程和操作数据的一种全新的分布式基础架构的计算方式 区块的狭义:区块技术是一种按照时间顺序将数据区块使用顺序相连的方式而组合成的一种链式数据结构的分布式账本。 区块中都有哪些区块中都有哪些? 根据对区块市场的深度调研,我们可以根据市场的应用范围我们可以将分为;“公(公有区块)”、“私(私有区块)”、“联盟(联盟区块)”三种,下面带领大家深度解析以上说的三种: 1、公是指任何人都可以读取 目前大多数都使用以太坊作为公基础,以太坊允许任何人在中建立和使用通过区块技术运行的去中心化应用,以太坊是可编辑的公,允许用户按照自己的意愿创建复杂的操作,可以作为多种类型去中心化区块应用的平台

    60410

    区块学堂——区块词汇手册

    区块】:Blockchain,分布式存储、加密算法、共识机制、P2P传输等计算机技术结合的新型应用模式。 【区块】:Block,用于记录区块系统中数据的存储。 【】:chain,区块头中通过引用哈希值链接。 【区块服务】:BAAS,blockchain as a service,区块即服务。 每个Ethereum节点都运行在EVM上,以保持整个块的一致性。 【Fork(分支)】:分支可以创建区块的交叉版本,在网络不同的地方兼容的运行两个区块。 【Multi-Signature(多重签名)】:多重签名地址需要一个以上的密钥来授权交易,从而增加了一层安全性。 【Node(节点)】:由区块网络的参与者操作的分类帐的副本。 【Testnet】:开发商使用的测试区块,它主要是用来防止改变在主上的资产。 【Transaction Block(交易区块)】:聚集到一个块中的交易的集合,然后可以将其散列并添加到区块中。

    62491

    认识区块,认知区块— —DeFi

    回头看,三年前大家在讨论什么,再看看当下大家在讨论什么,你才能体会到技术迭代的如此迅速,以及区块未来几年的发展方向。 千万别为了使用区块而应用区块,那跟拿着锤子找钉子是一个路数。 DeFi的出现,也是区块技术与经济模型演化的结果,在现实生活中都能找到对应的原型,只不过以去中心化的方式重新演绎了一遍,以适应区块技术的应用场景。 2020年火热的区块投机圈,DeFi的热度只增不减,市场表现远超其它品种。 三四年前,区块1.0,区块2.0,后面接着到处宣称自己是区块3.0甚至区块4.0,都要做以太坊杀手去颠覆以太坊,事后证明,那些只不过是过眼云烟,一个繁荣的生态,不会因为你喊几句口号就颠覆了,那些杀手至今还在 区块,你可以不躬身入局,但要弄懂它运行的逻辑,否则你将错过一个划时代的破坏性技术,DeFi亦是如此。

    29522

    区块技术】区块入门详解①

    文章目录 区块的起源 交易 比特币 :数字货币 比特币运行的底层技术:区块 区块发展 共识机制 性能扩展 跨交互 区块如何运行 1,交易 2,区块 3,区块 账户体系: 公匙和私匙 挖矿:竞争记账权 两个月后理论步入实践,2009年1月3日第一个序号为0的创世区块诞生。几天后2009年1月9日出现序号为1的区块,并与序号为0的创世区块相连接形成了,标志着区块的诞生。 2,区块 记录一段时间的交易和状态结果,更新账本的状态。 3,区块 区块按时间顺序串联,账本状态变化的精准日志的记录,最新区块代表着账本的最新状态,这个就是区块的大体含义。 记账验证 账单:有上一页账单的哈希值 验证上一个区块的哈希值 验证交易的余额:签名(判断是否合法) 验证哈希值是不是有效的 后续不断记录自己学习区块相关技术的笔记,收录到区块学习专栏。 点击关注区块专栏。

    13110

    区块

    区块 一.什么是区块区块17.png 尽管区块技术在过去的十年内才被有效利用,但它的起源可以追溯到更久之前。 随后,区块生态系统在全球不断进化,出现了首次代币发售ICO、智能合约区块以太坊、“轻所有权、重使用权”的资产代币化共享经济以及区块国家。 二.区块的特点和价值 区块336.png 从技术特点上,区块一般被认为具有: 分布式容错性:网络极其鲁棒,容错 1/3 左右节点的异常状态。 三.区块的发展趋势 1. 网络安全领域 区块582.png 区块和物联网技术将更多地用于提升数字货币交易网络的安全性。区块网络安全工具的出现可能是区块的下一个重要内容。 供应 区块1547.png 通过区块可以降低物流成本,追溯物品的生产和运送过程,并且提高供应管理的效率。该领域被认为是区块一个很有前景的应用方向。

    4.5K4611

    区块开发之区块钱包

    我认为区块钱包能够看作是一个银行账户体系,办理你在区块的财物,能够实现查余额、转账、收款、查询交易记载等功能,而钱包运用相当于银行的客户端,实现钱包的详细功能。 离线签名用于传输,然后通过服务器节点广播。其私钥也存储在客户端本地,用户能够自行办理,在手机等移动设备上运用。所以现在最盛行的便是这种“软钱包”。以下系列文章基本都是关于“轻钱包”的发展。 用USB连接电脑就能够在硬件设备上创建私钥和地址,离线签名也是硬件操作的,硬件办理你的私钥。这是目前最安全的钱包,可是价格比较贵。

    20420

    认识区块,认知区块——NFT

    NFT 出圈很久了,今天来聊聊,作为继 DeFi 之后,又一个区块的实际落地应用,对区块的普及可谓起到至关重要的作用,对未来区块的发展也提供更多的遐想。 怎么更好地理解 NFT? 有玩数藏的朋友甚至有各平台藏品的时间计划表,多部手机多个账户,有科技范的还会用科技手段去抢,跟抢票似的,为的就是抢到一件钟爱的有价值的藏品,3D 模型也好,出土文物也好,只要上了就跟上了时代的浪潮,购买者最纯粹的目的应该还是奔着利润去的 说到数藏,必须提一下区块,比较良心的平台会上联盟,国内的联盟掰着手指头是数的过来的,没良心的平台压根没上,忽悠小白,不管上不上,最后到普通用户手上的都是一张图片,平台不在了,图片就没了,普通用户对是没有概念的

    6410

    区块概况:什么是区块

    定义 区块技术自身仍然在飞速发展中,目前还缺乏统一的规范和标准。 公认的最早关于区块的描述性文献是中本聪所撰写的 比特币:一种点对点的电子现金系统,但该文献重点在于讨论比特币系统,实际上并没有明确提出区块的定义和概念。 从这个角度来看,区块是首个自带对账功能的数字记账技术实现。 更广泛意义地看,区块属于一种去中心化的记录技术。 如果把区块作为一个状态机,则每次交易就是试图改变一次状态,每次生成区块就是参与者对于其中包括的所有交易改变状态的结果确认。 图 1.2.3.2 - 区块示例 ? 联盟则介于两者之间,由若干组织一起合作维护一条区块,该区块的使用必须是有权限的管理,相关信息会得到保护,典型如银联组织。

    1.4K61

    区块区块基础知识

    区块三大主流开发语言: a) Golang b) C++ c) Node.js 区块概述 a) 产生背景 i. 区块1.0 ii.2014年,以太坊诞生。 区块2.0 iii.18年中期,EOS主网上线。区块3.0 iv.超级账本:Fabric,不支持发币。 d)什么是区块 i. 区块是一种集成了点对点传输协议、现代密码学、共识算法、分布式数据储存等成型数据的应用模型。 ii.现代密码学:公私钥签名、安全,不会在传输过程中被恶意篡改 iii.共识篡改:数据一致性 iv.分布式数据储存:实现去中心化的重要技术依据。 h)区块的核心概念 i.区块本质是一个分布式账本,通过共识算法来决定谁能获得记账权。以区块为单位以区块产生时间为顺序进行连接。每一个区块中保存上一个区块的Hash值、交易数据。

    46620

    扫码关注腾讯云开发者

    领取腾讯云代金券