签名

@lizhipingsss
1)并不是不验证签名,而是由本地的软件来验证。你的公司有一个密钥对,使用私钥发送交易;你公司发送交易时使用的客户端会使用你的公钥验证你的签名;一旦验证成功,则表示你公司使用了一个与你公司的公钥相匹配的私钥发送交易;
又因为你公司的私钥(在不被偷盗的情况下)只有你公司有,所以交易一定是你公司发送的;
2)交易中可以包含 16 进制的数据。这些 16 进制的数据可以被转码转成人类可读的信息。比如,原始数据是中文,使用 16进制编码后上链,则链上信息解码之后还是可以还原为中文。这只是一个例子,别的信息也可以同样处理。
3)信息上链意味着该信息在那个时刻必定存在,但该信息本身是不是“可信”或者“有效”的信息则另当别论。换句话说,根据 1)大家都知道那信息是你们公司放上去的,但假如那个信息是一张合同,那张合同本身是不是有效的合同则并非上链所能保证。你的公司也可以先做假账,然后把假账上传。跟交易合作方的合同也可以拍张照,然后 PS 再把 PS 之后的版本放上去。所以区块链解决的是信息存在性证明。而不是信息的质量性证明。

签名

@lizhipingsss 所以你到 Etherscan 上查看交易信息,你会发现,交易包含了发起地址、目标地址、数量、Gas 费用等等,但不会有什么东西叫做签名信息。。因为签名工作是在本地完成。所有交易都要在本地验证之后才能发到交易池中,自然也就不需要其他节点再行验证了

签名

@lizhipingsss 验证签名的工作不是让其他节点来完成的,是本地完成的。换句话来说,你签名之后,本地的软件会对你的交易进行验证,验证的意思是用公钥来验证相关的交易是不是经过相匹配的私钥发出的。验证完成,该交易才会被你的节点发送到交易池中等待打包。
看这篇文章 引介 | 以太坊交易的生命周期

签名

@lizhipingsss 应该这么理解。你要在以太坊上记录一些信息,首先要发送一笔交易,在发送交易时需要使用私钥签名。签名在本地进行验证。
相关的签名信息不会上链,因此在链上是不可见的。
至于你附加在交易里的信息,由于上链数据都是不可读的 16 进制字符,必须转码之后才能阅读查看。

签名

@lizhipingsss 区块链上发送交易都需要先签名,以此保证发起交易人的身份同一性,因为一个地址发起的交易只有匹配的私钥才能签名。。签名只需要私钥,不需要与其他人交互也不需要上链,所以一笔交易一旦成功发送就算是签名成功。

教程不易理解

您好。我们网站上教程的数量还不少,但网站的功能不够完善,导致您可能难以定位对您有帮助的教程。。不知您想了解哪些方面的教程呢?我是编辑,可以找点文章给您。

关于智能合约的存储问题

不是大神,但我感觉是这样的。
1. 交易数据存储在区块链上,账户的状态数据存储在本地;区块只保存该区块最终实现的账户状态的默克尔树根。
2. 用户发送特定类型的交易,将智能合约部署到区块链上(即是生成一个内部账户——智能合约账户)。该交易被存储在某一区块上。
3. 人们与该合约互动时,也是通过发送交易与该合约互动,所以您说会生成新交易是对的;
4. 然而,在上一步骤中,人们(外部账户)是交易发起方,智能合约(内部账户)是交易接收方;要验证交易有效不需要知道接收方的账户状态,只要保证发起方有足够余额即可;如果该智能合约有进一步的动作,则可将智能合约账户视为交易发起方;这些都是新交易,因此都记在新的区块上,而不是去更新那个记载着创建智能合约交易的区块;同样地,因为区块数据不可更改,该智能合约账户的代码也就不能更改。这是我们对智能合约的信任的来源。

以太坊交易的内容请参考:科普 | 以太坊到底是啥?
如何实现可更新的智能合约,请参考:教程 | 在区块链上建立可更新的智慧合约