以太坊怎么找到私匙,以太坊钱包私钥密码忘记怎么样办

OKX欧易app

OKX欧易app

欧易交易所app是全球排名第一的虚拟货币交易所,注册领取6万元盲盒礼包!

APP下载   官网注册

以太坊怎么找到私匙,以太坊钱包私钥密码忘记怎么样办

一、区块链怎么追踪人员(区块链怎么查地址)

追踪和管理数字资产新姿势,教你学会查看区块链账单

账单记录价值流通和状态,是金融服务的基础功能。

我们常用的银行、支付宝、微信支付等都会为普通用户和商家记录一笔交易,提供不同维度的查询、统计和分析服务。

比如大家爱晒的支付宝年度账单,会统计用户全年的总收支、消费种类、余额宝和其他理财收益、点外卖的次数等。通过大数据技术,展示各个地域,不同年龄段的消费兴趣和趋势,让消费者更了解自己周边的消费环境,商家能够及时把握市场需求。

在去中心化的区块链网络里,交易被永久的记录在链上,公开透明,人人可查。

但是由于区块链的设计更倾向于保证不可篡改和数据压缩需求,导致业务层面的过滤查询功能缺失。加上不同链的规则不同,追踪和管理加密资产变的异常困难。这也是为什么数字资产投资者常常感叹“总觉得帐没算明白“的原因所在。

SixPencer推出全新区块链记账神器,目前已支持比特币(Bitcoin)和以太坊(Ethereum)底层的资产追踪和管理,免费使用,无需注册。

一经推出,受到了包括矿工、资管机构、OTC商户、加密创业公司、数字资产投资者的喜爱。

作为专业的资管工具,不仅能够查询所有链上交易记录,实时查看账户余额和持有资产,而且提供每日各币种收支情况、支持单或多地址聚合收支统计、地址画像分析和图表、大额交易记录排行、联系人管理等。

进入网站后,在首页搜索框,输入比特币或以太坊地址,点击搜索即可进入该地址的总览页面。

我们以目前ETH持有量全网排名第一的地址:0x742d35cc6634c0532925a3b844bc454e4438f44e(标签:bitfinex1)?账户作为demo账户进行演示,所有数据均为真实链上数据。

这里简单介绍下区块链上的地址和银行账户的区别。在区块链上,地址就类似于银行卡号,知道地址就等于知道银行卡号一样,可以向其转账。

但不同的是,区块链是不可篡改的分布式公开账本,通常具有匿名性,任何人可以对任何地址进行公开查询。银行账户只能查询本人的账户信息,无法通过银行卡号得知其他人的账户信息。

如果用户有多个地址,或者想追踪其他地址,均可以通过搜索,所有搜索过的地址信息会在资产组合页面进行汇总,点击下拉框即可切换或者删除账户。

SixPencer除包含区块链浏览器提供的基础信息外,添加展示了一些个性化的指标,帮助用户了解自己的链上画像,也可以追踪其他账户的链上轨迹。在下面总览页面可以查看地址的资产概览、历史指标、收支统计、持有资产信息。

地址概览

创建时间:第一次收到ETH的日期

净资产:所有资产,包含ERC20token资产的合计美元价值

ETH排行:持有ETH数量在所有以太坊地址中的排名

ETH余额和估值:持有的ETH数量和其对应的美元价值

历史指标

历史指标展示交易量、交易次数、代币分析和联系人分析四大维度。通过统计,算不清的糊涂账终于能算清了,比如最简单的会计计算,ETH总收入=ETH余额+ETH总支出+ETH总手续费。再比如总交易次数=转入交易次数+转出交易次数。

由于以太坊网络的特殊性,所有转账的手续费都是以ETH支付。因此我们将手续费单独罗列出来,在交易明细中也支持手续费单独筛选,帮助用户统计手续费支出。

一些有趣的数据,demo账户手续费支出为1.1556ETH,ETH单笔大额转账达90万个ETH,持有代币数量有350种,交易次数最多的代币是USDT,与其交易过的地址仅37个。

一般持有上百种不同资产的地址通常都是交易所地址,加上交易次数和联系人并不多,可以排除是对外地址,基本可以判断是bitfinex交易所内部使用地址。

收支情况

统计了本月全部资产合计收入和支出,支出包含手续费支出。

持有资产情况

展示持有的资产数量、价值、资产价格和24h涨跌幅。demo账户这类交易所的地址,持有资产通常10页都放不下。

SixPencer除了提供地址的交易流水外,还支持全历史交易记录查询和筛选、余额信息、日收支统计等。

交易明细

从下面页面可以清晰得知ETH资产的本月收支情况,用户还可以根据日期,资金流向、交易分类和标签系统进行筛选,根据自身需求进行更细致的统计,后面会介绍如何进行指定地址的交易筛选。

点击上图中的ETH下拉框,可以切换到其他币种的交易详情页面,比如切换到USDT的交易详情查看USDT的明细状况。

除月账单外,SixPencer展示每笔交易的交易明细,提供交易方向、交易对手方、交易金额、账户余额、交易时间、每日收支情况等信息。下图可以看到近6笔ETH交易均为从bitfinex3账户转入bitfinex1的交易。

交易详情

点击任意一笔交易明细,即可进入该笔交易的交易详情页。交易哈希是每笔链上转账都有的唯一不可篡改的交易ID,类似于订单号的概念。

通过交易哈希就可以查询到一笔交易的具体信息。

下面所展示的交易数量、交易状态、交易时间、发送和接受方、手续费等都是这笔交易的具体信息,在这里不再赘述。值得注意的是,SixPencer提供个人标签和备注系统,用户可以对单笔交易,进行个性化分类和备注,帮助记忆,不遗忘每一笔交易。

如何快速找到和指定地址的交易信息?

时间变久,交易变多后,查询链上指定交易信息就变得异常复杂和困难,SixPencer将交易信息按照业务需求进行细化,并提供标签系统辅助用户进行自定义交易查询和统计。

比如想要查询2020年6月地址0x876eabf441b2ee5b5b0554fd502a8e0600950cfa(标签:bitfinex3)一共向demo账户转入了多少ETH。通过我们的账单系统,仅需两步操作即可查询。

1、打标签:为了演示,我们将“bitfinex3“这个标签重命名为“测试test”。

2、筛选:将日期筛选为6月1日-6月30日,在筛选栏选中“转入”,并在最下面的标签栏选中“测试test”,点击保存。

保存后即可搜索出所有6月“测试test”转入到demo账户的交易信息,从下图可以看出6月份,demo账户共从标签为“测试test“的地址收到58,440.2489个ETH。

如果用户想查询和多个指定地址的交易,选中多个标签后,调整日期、资金流向等信息即可进行资产的自动统计。

在分析一栏,用户可以查询地址不同维度的图表分析信息,包含余额、交易、分类和排行四大维度。分别点击各维度还能够查看更多详细数据和图表。

余额:余额展示资产的余额数量和价值走势

交易:交易展示全部交易、转入和转出的交易数量、交易数量价值和交易次数走势

分类:分类根据平台地址标签系统对交易类型进行统计,反应地址的交易偏好

排行:排行按照交易次数展示活跃联系人,按照交易金额展示大额交易

比如排行分析,能够很快查看与某个地址的具体交易金额和大额转账情况。如下图,demo账户与标签为“测试test”的地址在本月一共交易了177次,其他与demo账户交易较多的都是ERC20Token合约调用交易。

从下图看,大额排行也都是与标签为“测试test”的地址交易信息,表格展示交易对象、交易时间、交易方向、交易数量和价值。对交易所大户感兴趣的,可以查询交易所地址的大额转账信息,看看哪些地址都是充提大户。

通讯录展示所有和demo账户有过交易记录的地址,除平台自带的标签体系外,用户可以对地址添加标签或者重命名标签。

标签:展示平台标签系统已知标签和用户自行添加的标签

最近联系人:展示最近30天有过交易记录的地址/标签

全部联系人:展示所有有过交易记录的联系人地址/标签,交易数量超过1万笔的地址,取最近1万笔交易的联系人展示

综上,SixPencer的全新资产追踪和管理工具能够提供比区块链浏览器或者钱包更综合的查询和分析功能,作为一款工具产品意在辅助用户进行数字资产管理,通过对链上用户画像的进一步解析,帮助大家更好的决策。

我们认为区块链的公开透明机制应该让数据查询更简单,但目前按照实际业务需求快速查询区块链数据仍然是难点痛点,并成为商业落地的一大阻碍。

数字资产交易仅仅是其中一小块,未来还将有大量有价值的数据存储在区块链上,SixPencer将继续推出更多实用工具,让数据更好为业务服务。

怎么查别人区块链信息

1.如果是查询账户余额、账户的历史交易数据等信息,建议直接输入钱包地址查询;如果是查询某笔转账的相关信息,比如是否到账、进展如何,输入交易ID是最方便的。当然了,区块链浏览器不仅可以查询自己的账户,也可以查询别人的账户全部联系人:展示所有有过交易记录的联系人地址/标签,交易数量超过1万笔的地址,取最近1万笔交易的联系人展示综上,SixPencer的全新资产追踪和管理工具能够提供比区块链浏览器或者钱包更综合的查询和分析功能,作为一款工具产品意在辅助用户。

2.可以通过区块链浏览器进行查询。在区块链浏览器中我们可以知道一个钱包地址都进行过哪些交易,账户上有多少资产等等的信息。用区块链浏览器就可以查看。在搜索输入框内输入想查询的钱包地址,如果你输入的地址不完整,但是这个地址之前有在区块链上进行过ETH交易或者被查询过,那么输入框会自动把你查询的

在区块链中如何查看某一岗位人员私钥

查不了。区块链本来就是虚拟产品,再加上现在区块链不停的更新安全措施已经达到很强的意识了,想要查到别人的私匙是不可能的。

数字货币转给了骗子,能根据地址找到对方吗?

有可能。保留您的聊天记录,交易记录和其他证据,可以及时收集您自己的维权材料,存款记录,交易记录,银行对帐单等都是重要的维权材料。买卖虚拟货币时唯一被欺骗的合理方法是选择向警方报警提起诉讼详细介绍人没有的实际意义。虚拟货币全部兑换成人民币,如果您被骗,则应立即将证据带给警察。欺诈案件是刑事案件,警方将对其进行调查和筛查。如果发生欺诈案,警方将积极解决。如果案件解决了,犯罪嫌疑人被捕,被骗资金将被追回。

拓展资料:

区块链是一个开放式账本,任意有着其副本的人都能看到每一笔交易和地址的余额。按理来说上,因为人们不能根据地址猜出地址的拥有者是谁,此人身在何处,所以该系统是匿名的;但是实际上,一旦分析公司知道了某些地址其背后的真实拥有者,并根据交易痕迹进行追踪,依然可以破获出其他地址主人的真实身份。所以,在现实中,像比特币和以太坊这样的区块链系统实际是伪匿名。

可供分析公司追踪的地方有很多。例如:钱包可以根据有效的区块链分析与IP地址相连接,也可能与另一个进行过KYC的账户进行交易。此外,用户在网站上留下的凭据,用加密货币购买商品的痕迹,都意味着所有者的身份不再是保密的。据报道,美国最大的区块链分析公司Chainalysis已经掌握了比特币上超80%以上用户的线下身份信息,许多以太坊巨鲸的身份信息,也在掌握之中。

例如,一旦某个地址其背后的主人被曝光,他的一举一动都可以被别人记录下来。他花这些币做了什么,他是如何操作发家致富的,他其背后究竟还有多少个地址、资产总额又是多少,这些信息都一览无余。这使得以太坊的「富豪们」在面向真实世界进行交易的时候,不得不多一份小心。

可追溯是什么意思?

追溯,意思是比喻探索事物的由来。

就是一件事发生的来龙去脉要清楚,方便核查。

比方说一瓶酒,从下料生产、包装、出厂、运输、销售等整个过程都应该有记录,万一消费者饮用时出了事,那就要进行调查,这时候所有记录就显得相当重要了。记录做好了就说明这瓶存在可追溯性。

出处清·姚衡《寒秀草堂笔记》卷三:俗以天主降生之岁纪年,距今为一千八百三十六年,追溯之,当在汉孝平元始二年。清·梁章钜《归田琐记·请铸大钱》:“由今追溯四五十年以前,铜之为用尚少。比年则铜器充斥,而东南数省为尤甚。”

二、以太坊钱包私钥密码忘记怎么样办

以太坊钱包私钥密码忘记怎么办

如果您忘记了以太坊钱包的私钥密码,下面是一些解决办法:

1.找回密码:您可以尝试使用您记得的信息来找回密码,例如通过电子邮件或者手机重置密码。如果您是使用第三方钱包,可以尝试联系他们的客服来获得更多帮助。

2.使用备份:如果您之前备份了您的钱包,您可以尝试使用备份中的私钥来重新获取您的钱包。请注意,如果您在备份中存储了密码,您需要确保能够正确地输入密码才能恢复您的钱包。

3.重置钱包:如果以上方法都无法帮助您找回密码,您需要考虑重置您的钱包。这意味着您需要创建一个新的钱包并转移您的资产到新的钱包。请注意,如果您在原来的钱包中有未使用的以太币或代币,您需要在重置之前将它们转移出去。

无论采取哪种方法,为了保护您的资产安全,建议您在尝试这些方法之前先备份好您的钱包和私钥,并谨慎考虑每一步操作的风险和影响。

三、如何找到区块链的密码,区块链的密钥是什么

【深度知识】区块链之加密原理图示(加密,签名)

先放一张以太坊的架构图:

在学习的过程中主要是采用单个模块了学习了解的,包括P2P,密码学,网络,协议等。直接开始总结:

秘钥分配问题也就是秘钥的传输问题,如果对称秘钥,那么只能在线下进行秘钥的交换。如果在线上传输秘钥,那就有可能被拦截。所以采用非对称加密,两把钥匙,一把私钥自留,一把公钥公开。公钥可以在网上传输。不用线下交易。保证数据的安全性。

如上图,A节点发送数据到B节点,此时采用公钥加密。A节点从自己的公钥中获取到B节点的公钥对明文数据加密,得到密文发送给B节点。而B节点采用自己的私钥解密。

2、无法解决消息篡改。

如上图,A节点采用B的公钥进行加密,然后将密文传输给B节点。B节点拿A节点的公钥将密文解密。

1、由于A的公钥是公开的,一旦网上黑客拦截消息,密文形同虚设。说白了,这种加密方式,只要拦截消息,就都能解开。

2、同样存在无法确定消息来源的问题,和消息篡改的问题。

如上图,A节点在发送数据前,先用B的公钥加密,得到密文1,再用A的私钥对密文1加密得到密文2。而B节点得到密文后,先用A的公钥解密,得到密文1,之后用B的私钥解密得到明文。

1、当网络上拦截到数据密文2时,由于A的公钥是公开的,故可以用A的公钥对密文2解密,就得到了密文1。所以这样看起来是双重加密,其实最后一层的私钥签名是无效的。一般来讲,我们都希望签名是签在最原始的数据上。如果签名放在后面,由于公钥是公开的,签名就缺乏安全性。

2、存在性能问题,非对称加密本身效率就很低下,还进行了两次加密过程。

如上图,A节点先用A的私钥加密,之后用B的公钥加密。B节点收到消息后,先采用B的私钥解密,然后再利用A的公钥解密。

1、当密文数据2被黑客拦截后,由于密文2只能采用B的私钥解密,而B的私钥只有B节点有,其他人无法机密。故安全性最高。

2、当B节点解密得到密文1后,只能采用A的公钥来解密。而只有经过A的私钥加密的数据才能用A的公钥解密成功,A的私钥只有A节点有,所以可以确定数据是由A节点传输过来的。

经两次非对称加密,性能问题比较严重。

基于以上篡改数据的问题,我们引入了消息认证。经过消息认证后的加密流程如下:

当A节点发送消息前,先对明文数据做一次散列计算。得到一个摘要,之后将照耀与原始数据同时发送给B节点。当B节点接收到消息后,对消息解密。解析出其中的散列摘要和原始数据,然后再对原始数据进行一次同样的散列计算得到摘要1,比较摘要与摘要1。如果相同则未被篡改,如果不同则表示已经被篡改。

在传输过程中,密文2只要被篡改,最后导致的hash与hash1就会产生不同。

无法解决签名问题,也就是双方相互攻击。A对于自己发送的消息始终不承认。比如A对B发送了一条错误消息,导致B有损失。但A抵赖不是自己发送的。

在(三)的过程中,没有办法解决交互双方相互攻击。什么意思呢?有可能是因为A发送的消息,对A节点不利,后来A就抵赖这消息不是它发送的。

为了解决这个问题,故引入了签名。这里我们将(二)-4中的加密方式,与消息签名合并设计在一起。

在上图中,我们利用A节点的私钥对其发送的摘要信息进行签名,然后将签名+原文,再利用B的公钥进行加密。而B得到密文后,先用B的私钥解密,然后对摘要再用A的公钥解密,只有比较两次摘要的内容是否相同。这既避免了防篡改问题,有规避了双方攻击问题。因为A对信息进行了签名,故是无法抵赖的。

为了解决非对称加密数据时的性能问题,故往往采用混合加密。这里就需要引入对称加密,如下图:

在对数据加密时,我们采用了双方共享的对称秘钥来加密。而对称秘钥尽量不要在网络上传输,以免丢失。这里的共享对称秘钥是根据自己的私钥和对方的公钥计算出的,然后适用对称秘钥对数据加密。而对方接收到数据时,也计算出对称秘钥然后对密文解密。

以上这种对称秘钥是不安全的,因为A的私钥和B的公钥一般短期内固定,所以共享对称秘钥也是固定不变的。为了增强安全性,最好的方式是每次交互都生成一个临时的共享对称秘钥。那么如何才能在每次交互过程中生成一个随机的对称秘钥,且不需要传输呢?

那么如何生成随机的共享秘钥进行加密呢?

对于发送方A节点,在每次发送时,都生成一个临时非对称秘钥对,然后根据B节点的公钥和临时的非对称私钥可以计算出一个对称秘钥(KA算法-KeyAgreement)。然后利用该对称秘钥对数据进行加密,针对共享秘钥这里的流程如下:

对于B节点,当接收到传输过来的数据时,解析出其中A节点的随机公钥,之后利用A节点的随机公钥与B节点自身的私钥计算出对称秘钥(KA算法)。之后利用对称秘钥机密数据。

对于以上加密方式,其实仍然存在很多问题,比如如何避免重放攻击(在消息中加入Nonce),再比如彩虹表(参考KDF机制解决)之类的问题。由于时间及能力有限,故暂时忽略。

那么究竟应该采用何种加密呢?

主要还是基于要传输的数据的安全等级来考量。不重要的数据其实做好认证和签名就可以,但是很重要的数据就需要采用安全等级比较高的加密方案了。

密码套件是一个网络协议的概念。其中主要包括身份认证、加密、消息认证(MAC)、秘钥交换的算法组成。

在整个网络的传输过程中,根据密码套件主要分如下几大类算法:

秘钥交换算法:比如ECDHE、RSA。主要用于客户端和服务端握手时如何进行身份验证。

消息认证算法:比如SHA1、SHA2、SHA3。主要用于消息摘要。

批量加密算法:比如AES,主要用于加密信息流。

伪随机数算法:例如TLS1.2的伪随机函数使用MAC算法的散列函数来创建一个主密钥——连接双方共享的一个48字节的私钥。主密钥在创建会话密钥(例如创建MAC)时作为一个熵来源。

在网络中,一次消息的传输一般需要在如下4个阶段分别进行加密,才能保证消息安全、可靠的传输。

握手/网络协商阶段:

在双方进行握手阶段,需要进行链接的协商。主要的加密算法包括RSA、DH、ECDH等

身份认证阶段:

身份认证阶段,需要确定发送的消息的来源来源。主要采用的加密方式包括RSA、DSA、ECDSA(ECC加密,DSA签名)等。

消息加密阶段:

消息加密指对发送的信息流进行加密。主要采用的加密方式包括DES、RC4、AES等。

消息身份认证阶段/防篡改阶段:

主要是保证消息在传输过程中确保没有被篡改过。主要的加密方式包括MD5、SHA1、SHA2、SHA3等。

ECC:EllipticCurvesCryptography,椭圆曲线密码编码学。是一种根据椭圆上点倍积生成公钥、私钥的算法。用于生成公私秘钥。

ECDSA:用于数字签名,是一种数字签名算法。一种有效的数字签名使接收者有理由相信消息是由已知的发送者创建的,从而发送者不能否认已经发送了消息(身份验证和不可否认),并且消息在运输过程中没有改变。ECDSA签名算法是ECC与DSA的结合,整个签名过程与DSA类似,所不一样的是签名中采取的算法为ECC,最后签名出来的值也是分为r,s。主要用于身份认证阶段。

ECDH:也是基于ECC算法的霍夫曼树秘钥,通过ECDH,双方可以在不共享任何秘密的前提下协商出一个共享秘密,并且是这种共享秘钥是为当前的通信暂时性的随机生成的,通信一旦中断秘钥就消失。主要用于握手磋商阶段。

ECIES:是一种集成加密方案,也可称为一种混合加密方案,它提供了对所选择的明文和选择的密码文本攻击的语义安全性。ECIES可以使用不同类型的函数:秘钥协商函数(KA),秘钥推导函数(KDF),对称加密方案(ENC),哈希函数(HASH),H-MAC函数(MAC)。

ECC是椭圆加密算法,主要讲述了按照公私钥怎么在椭圆上产生,并且不可逆。ECDSA则主要是采用ECC算法怎么来做签名,ECDH则是采用ECC算法怎么生成对称秘钥。以上三者都是对ECC加密算法的应用。而现实场景中,我们往往会采用混合加密(对称加密,非对称加密结合使用,签名技术等一起使用)。ECIES就是底层利用ECC算法提供的一套集成(混合)加密方案。其中包括了非对称加密,对称加密和签名的功能。

metacharset="utf-8"

这个先订条件是为了保证曲线不包含奇点。

所以,随着曲线参数a和b的不断变化,曲线也呈现出了不同的形状。比如:

所有的非对称加密的基本原理基本都是基于一个公式K=kG。其中K代表公钥,k代表私钥,G代表某一个选取的基点。非对称加密的算法就是要保证该公式不可进行逆运算(也就是说G/K是无法计算的)。*

ECC是如何计算出公私钥呢?这里我按照我自己的理解来描述。

我理解,ECC的核心思想就是:选择曲线上的一个基点G,之后随机在ECC曲线上取一个点k(作为私钥),然后根据kG计算出我们的公钥K。并且保证公钥K也要在曲线上。*

那么kG怎么计算呢?如何计算kG才能保证最后的结果不可逆呢?这就是ECC算法要解决的。

首先,我们先随便选择一条ECC曲线,a=-3,b=7得到如下曲线:

在这个曲线上,我随机选取两个点,这两个点的乘法怎么算呢?我们可以简化下问题,乘法是都可以用加法表示的,比如22=2+2,35=5+5+5。那么我们只要能在曲线上计算出加法,理论上就能算乘法。所以,只要能在这个曲线上进行加法计算,理论上就可以来计算乘法,理论上也就可以计算k*G这种表达式的值。

曲线上两点的加法又怎么算呢?这里ECC为了保证不可逆性,在曲线上自定义了加法体系。

现实中,1+1=2,2+2=4,但在ECC算法里,我们理解的这种加法体系是不可能。故需要自定义一套适用于该曲线的加法体系。

ECC定义,在图形中随机找一条直线,与ECC曲线相交于三个点(也有可能是两个点),这三点分别是P、Q、R。

那么P+Q+R=0。其中0不是坐标轴上的0点,而是ECC中的无穷远点。也就是说定义了无穷远点为0点。

同样,我们就能得出P+Q=-R。由于R与-R是关于X轴对称的,所以我们就能在曲线上找到其坐标。

P+R+Q=0,故P+R=-Q,如上图。

以上就描述了ECC曲线的世界里是如何进行加法运算的。

从上图可看出,直线与曲线只有两个交点,也就是说直线是曲线的切线。此时P,R重合了。

也就是P=R,根据上述ECC的加法体系,P+R+Q=0,就可以得出P+R+Q=2P+Q=2R+Q=0

于是乎得到2P=-Q(是不是与我们非对称算法的公式K=kG越来越近了)。

于是我们得出一个结论,可以算乘法,不过只有在切点的时候才能算乘法,而且只能算2的乘法。

假若2可以变成任意个数进行想乘,那么就能代表在ECC曲线里可以进行乘法运算,那么ECC算法就能满足非对称加密算法的要求了。

那么我们是不是可以随机任何一个数的乘法都可以算呢?答案是肯定的。也就是点倍积计算方式。

选一个随机数k,那么k*P等于多少呢?

我们知道在计算机的世界里,所有的都是二进制的,ECC既然能算2的乘法,那么我们可以将随机数k描述成二进制然后计算。假若k=151=10010111

由于2P=-Q所以这样就计算出了kP。这就是点倍积算法。所以在ECC的曲线体系下是可以来计算乘法,那么以为这非对称加密的方式是可行的。

至于为什么这样计算是不可逆的。这需要大量的推演,我也不了解。但是我觉得可以这样理解:

我们的手表上,一般都有时间刻度。现在如果把1990年01月01日0点0分0秒作为起始点,如果告诉你至起始点为止时间流逝了整1年,那么我们是可以计算出现在的时间的,也就是能在手表上将时分秒指针应该指向00:00:00。但是反过来,我说现在手表上的时分秒指针指向了00:00:00,你能告诉我至起始点算过了有几年了么?

ECDSA签名算法和其他DSA、RSA基本相似,都是采用私钥签名,公钥验证。只不过算法体系采用的是ECC的算法。交互的双方要采用同一套参数体系。签名原理如下:

在曲线上选取一个无穷远点为基点G=(x,y)。随机在曲线上取一点k作为私钥,K=k*G计算出公钥。

签名过程:

生成随机数R,计算出RG.

根据随机数R,消息M的HASH值H,以及私钥k,计算出签名S=(H+kx)/R.

将消息M,RG,S发送给接收方。

签名验证过程:

接收到消息M,RG,S

根据消息计算出HASH值H

根据发送方的公钥K,计算HG/S+xK/S,将计算的结果与RG比较。如果相等则验证成功。

公式推论:

HG/S+xK/S=HG/S+x(kG)/S=(H+xk)/GS=RG

在介绍原理前,说明一下ECC是满足结合律和交换律的,也就是说A+B+C=A+C+B=(A+C)+B。

这里举一个WIKI上的例子说明如何生成共享秘钥,也可以参考AliceAndBob的例子。

Alice与Bob要进行通信,双方前提都是基于同一参数体系的ECC生成的公钥和私钥。所以有ECC有共同的基点G。

生成秘钥阶段:

Alice采用公钥算法KA=ka*G,生成了公钥KA和私钥ka,并公开公钥KA。

Bob采用公钥算法KB=kb*G,生成了公钥KB和私钥kb,并公开公钥KB。

计算ECDH阶段:

Alice利用计算公式Q=ka*KB计算出一个秘钥Q。

Bob利用计算公式Q'=kb*KA计算出一个秘钥Q'。

共享秘钥验证:

Q=kaKB=ka*kb*G=ka*G*kb=KA*kb=kb*KA=Q'

故双方分别计算出的共享秘钥不需要进行公开就可采用Q进行加密。我们将Q称为共享秘钥。

在以太坊中,采用的ECIEC的加密套件中的其他内容:

1、其中HASH算法采用的是最安全的SHA3算法Keccak。

2、签名算法采用的是ECDSA

3、认证方式采用的是H-MAC

4、ECC的参数体系采用了secp256k1,其他参数体系参考这里

H-MAC全程叫做Hash-basedMessageAuthenticationCode.其模型如下:

在以太坊的UDP通信时(RPC通信加密方式不同),则采用了以上的实现方式,并扩展化了。

首先,以太坊的UDP通信的结构如下:

其中,sig是经过私钥加密的签名信息。mac是可以理解为整个消息的摘要,ptype是消息的事件类型,data则是经过RLP编码后的传输数据。

其UDP的整个的加密,认证,签名模型如下:

区块链密码算法是怎样的?

区块链作为新兴技术受到越来越广泛的关注,是一种传统技术在互联网时代下的新的应用,这其中包括分布式数据存储技术、共识机制和密码学等。随着各种区块链研究联盟的创建,相关研究得到了越来越多的资金和人员支持。区块链使用的Hash算法、零知识证明、环签名等密码算法:

Hash算法

哈希算法作为区块链基础技术,Hash函数的本质是将任意长度(有限)的一组数据映射到一组已定义长度的数据流中。若此函数同时满足:

(1)对任意输入的一组数据Hash值的计算都特别简单;

(2)想要找到2个不同的拥有相同Hash值的数据是计算困难的。

满足上述两条性质的Hash函数也被称为加密Hash函数,不引起矛盾的情况下,Hash函数通常指的是加密Hash函数。对于Hash函数,找到使得被称为一次碰撞。当前流行的Hash函数有MD5,SHA1,SHA2,SHA3。

比特币使用的是SHA256,大多区块链系统使用的都是SHA256算法。所以这里先介绍一下SHA256。

1、SHA256算法步骤

STEP1:附加填充比特。对报文进行填充使报文长度与448模512同余(长度=448mod512),填充的比特数范围是1到512,填充比特串的最高位为1,其余位为0。

STEP2:附加长度值。将用64-bit表示的初始报文(填充前)的位长度附加在步骤1的结果后(低位字节优先)。

STEP3:初始化缓存。使用一个256-bit的缓存来存放该散列函数的中间及最终结果。

STEP4:处理512-bit(16个字)报文分组序列。该算法使用了六种基本逻辑函数,由64步迭代运算组成。每步都以256-bit缓存值为输入,然后更新缓存内容。每步使用一个32-bit常数值Kt和一个32-bitWt。其中Wt是分组之后的报文,t=1,2,...,16。

STEP5:所有的512-bit分组处理完毕后,对于SHA256算法最后一个分组产生的输出便是256-bit的报文。

作为加密及签名体系的核心算法,哈希函数的安全性事关整个区块链体系的底层安全性。所以关注哈希函数的研究现状是很有必要的。

2、Hash函的研究现状

2004年我国密码学家王小云在国际密码讨论年会(CRYPTO)上展示了MD5算法的碰撞并给出了第一个实例(CollisionsforhashfunctionsMD4,MD5,HAVAL-128andRIPEMD,rumpsessionofCRYPTO2004,HowtoBreakMD5andOtherHashFunctions,EuroCrypt2005)。该攻击复杂度很低,在普通计算机上只需要几秒钟的时间。2005年王小云教授与其同事又提出了对SHA-1算法的碰撞算法,不过计算复杂度为2的63次方,在实际情况下难以实现。

2017年2月23日谷歌安全博客上发布了世界上第一例公开的SHA-1哈希碰撞实例,在经过两年的联合研究和花费了巨大的计算机时间之后,研究人员在他们的研究网站SHAttered上给出了两个内容不同,但是具有相同SHA-1消息摘要的PDF文件,这就意味着在理论研究长期以来警示SHA-1算法存在风险之后,SHA-1算法的实际攻击案例也浮出水面,同时也标志着SHA-1算法终于走向了生命的末期。

NIST于2007年正式宣布在全球范围内征集新的下一代密码Hash算法,举行SHA-3竞赛。新的Hash算法将被称为SHA-3,并且作为新的安全Hash标准,增强现有的FIPS180-2标准。算法提交已于2008年10月结束,NIST分别于2009年和2010年举行2轮会议,通过2轮的筛选选出进入最终轮的算法,最后将在2012年公布获胜算法。公开竞赛的整个进程仿照高级加密标准AES的征集过程。2012年10月2日,Keccak被选为NIST竞赛的胜利者,成为SHA-3。

Keccak算法是SHA-3的候选人在2008年10月提交。Keccak采用了创新的的“海绵引擎”散列消息文本。它设计简单,方便硬件实现。Keccak已可以抵御最小的复杂度为2n的攻击,其中N为散列的大小。它具有广泛的安全边际。目前为止,第三方密码分析已经显示出Keccak没有严重的弱点。

KangarooTwelve算法是最近提出的Keccak变种,其计算轮次已经减少到了12,但与原算法比起来,其功能没有调整。

零知识证明

在密码学中零知识证明(zero-knowledgeproof,ZKP)是一种一方用于向另一方证明自己知晓某个消息x,而不透露其他任何和x有关的内容的策略,其中前者称为证明者(Prover),后者称为验证者(Verifier)。设想一种场景,在一个系统中,所有用户都拥有各自全部文件的备份,并利用各自的私钥进行加密后在系统内公开。假设在某个时刻,用户Alice希望提供给用户Bob她的一部分文件,这时候出现的问题是Alice如何让Bob相信她确实发送了正确的文件。一个简单地处理办法是Alice将自己的私钥发给Bob,而这正是Alice不希望选择的策略,因为这样Bob可以轻易地获取到Alice的全部文件内容。零知识证明便是可以用于解决上述问题的一种方案。零知识证明主要基于复杂度理论,并且在密码学中有广泛的理论延伸。在复杂度理论中,我们主要讨论哪些语言可以进行零知识证明应用,而在密码学中,我们主要讨论如何构造各种类型的零知识证明方案,并使得其足够优秀和高效。

环签名群签名

1、群签名

在一个群签名方案中,一个群体中的任意一个成员可以以匿名的方式代表整个群体对消息进行签名。与其他数字签名一样,群签名是可以公开验证的,且可以只用单个群公钥来验证。群签名一般流程:

(1)初始化,群管理者建立群资源,生成对应的群公钥(GroupPublicKey)和群私钥(GroupPrivateKey)群公钥对整个系统中的所有用户公开,比如群成员、验证者等。

(2)成员加入,在用户加入群的时候,群管理者颁发群证书(GroupCertificate)给群成员。

(3)签名,群成员利用获得的群证书签署文件,生成群签名。

(4)验证,同时验证者利用群公钥仅可以验证所得群签名的正确性,但不能确定群中的正式签署者。

(5)公开,群管理者利用群私钥可以对群用户生成的群签名进行追踪,并暴露签署者身份。

2、环签名

2001年,Rivest,shamir和Tauman三位密码学家首次提出了环签名。是一种简化的群签名,只有环成员没有管理者,不需要环成员间的合作。环签名方案中签名者首先选定一个临时的签名者集合,集合中包括签名者。然后签名者利用自己的私钥和签名集合中其他人的公钥就可以独立的产生签名,而无需他人的帮助。签名者集合中的成员可能并不知道自己被包含在其中。

环签名方案由以下几部分构成:

(1)密钥生成。为环中每个成员产生一个密钥对(公钥PKi,私钥SKi)。

(2)签名。签名者用自己的私钥和任意n个环成员(包括自己)的公钥为消息m生成签名a。

(3)签名验证。验证者根据环签名和消息m,验证签名是否为环中成员所签,如果有效就接收,否则丢弃。

环签名满足的性质:

(1)无条件匿名性:攻击者无法确定签名是由环中哪个成员生成,即使在获得环成员私钥的情况下,概率也不超过1/n。

(2)正确性:签名必需能被所有其他人验证。

(3)不可伪造性:环中其他成员不能伪造真实签名者签名,外部攻击者即使在获得某个有效环签名的基础上,也不能为消息m伪造一个签名。

3、环签名和群签名的比较

(1)匿名性。都是一种个体代表群体签名的体制,验证者能验证签名为群体中某个成员所签,但并不能知道为哪个成员,以达到签名者匿名的作用。

(2)可追踪性。群签名中,群管理员的存在保证了签名的可追

本文来自用户投稿,不代表币大大立场,如若转载,请注明出处:https://czxurui.com/jys/192190.html

上一篇 2025年12月02日
下一篇 2025年12月02日

相关推荐

  • Swarm上线时间全解析,从历史到未来的以太坊互联网拼图

    Swarm上线时间全解析,从历史到未来的以太坊互联网拼图 在区块链世界的宏大叙事中,如果说以太坊是一条承载着智能合约和去中心化应用的“高速公路”,那么Swarm(蜂群)就是这条公路上不可或缺的“基础设施”——它旨在为整个以太坊生态系统提供一个去中心化的存储层,许多关

    2026-07-31 09:30:02
    0 0
  • 以太坊合并已成定局?最新消息与影响深度解析

    以太坊合并已成定局?最新消息与影响深度解析 在加密货币领域,以太坊的“合并”(The Merge)无疑是近年来最受瞩目的技术变革之一,它不仅标志着以太坊从工作量证明(PoW)向权益证明(PoS)共识机制的华丽转身,更被寄予了提升能效、可扩展性和安全性的厚望,随着时间推移和

    2026-07-31 09:30:02
    0 0
  • 以太坊3月1日硬分叉,升级路线图关键一步,生态再迎新变革

    以太坊3月1日硬分叉,升级路线图关键一步,生态再迎新变革 在全球区块链技术爱好者与开发者的共同瞩目下,以太坊(Ethereum)网络即将迎来一次重要的技术更新——一次定于3月1日进行的硬分叉,此次硬分叉并非旨在改变以太坊的基本共识机制或引发社区分裂,而是其持续演进路线

    2026-07-31 09:30:02
    0 0
  • 以太坊价格查询,币市动态与实用指南

    以太坊价格查询,币市动态与实用指南 在加密货币市场,以太坊(Ethereum)作为仅次于比特币的第二大主流币种,其价格波动一直是投资者、开发者和用户关注的焦点,通过“币市”等平台查询以太坊价格,不仅能够实时掌握市场动态,更是决策的重要依据,如何高效查询以太坊价格,又

    2026-07-31 09:30:02
    0 0
  • EVM的思维速度,深入浅出解析以太坊虚拟机内存存取

    EVM的思维速度,深入浅出解析以太坊虚拟机内存存取 在区块链的世界里,以太坊(Ethereum)无疑是最具影响力的智能合约平台,而支撑这一切的,是一个精巧而强大的虚拟机——以太坊虚拟机(EVM),我们可以将EVM理解为一个去中心化的、全球共享的计算机,它负责执行智能合约中的

    2026-07-31 09:30:02
    0 0
  • 以太坊的平方公里,一个关于虚拟土地的误解与探索

    以太坊的平方公里,一个关于虚拟土地的误解与探索 “以太坊有多少平方公里?”——这个问题乍一听似乎有些奇怪,甚至不合逻辑,以太坊,作为一个全球性的去中心化开源区块链平台,它由代码、节点和分布式账本构成,是一个完全的数字实体,存在于互联网的虚拟空间中,它没有物

    2026-07-31 09:30:02
    0 0

发表回复

8206

评论列表(0条)

    暂无评论

binance币安交易所
已有2000万用户加入币安交易所

立即下载