区块链数字签名采用对称
❶ 太希区块链是真的吗
01 区块链的四大核心技术
1. P2P网络技术
实际上,在区块链出现之前,分布式的P2P对等网络已经是很成熟的技术。今天,我们无论是在互联网上下载电影还是视频,都需要依赖这种名为P2P(即点对点)的网络传输协议。
P2P网络是整个区块链的基础计算架构。在区块链分布式网络中,中央服务器的概念被弱化,即不再需要任何中心枢纽。网络中的各个节点都可以作为一个独立的个体存在。这些节点既能作为提供服务的服务器,也能作为发送请求的客户端。它们不再需要服务器的桥接就可以直接交换资源:从一个节点上发出的信息经过验证会被发送到周边相邻的节点,而每一个相邻节点又会将交易发送到其他的相邻节点,最终扩散到区块链网络中所有的节点上,从而实现用户与用户之间资源的直接分享与利用。
所以,P2P网络技术就是一个非常对等、非常高效的传输协议。成千上万个彼此相连的节点都处于对等的地位,并且可以自由进入和退出网络系统。正是由于P2P网络技术的这个特性,保障了区块链技术是一个分布式的、去中心化的系统。
2. 加密技术
在加密技术方面,区块链使用的是非对称加密算法。非对称加密,即加密一条信息实际上不是用单个密钥,而是用公钥和私钥两个密钥,它们可以保证在分布式网络中点对点信息传递的安全。
公钥是全网公开可见的,所有人都可以用自己的公钥加密一段信息,生成一个哈希值,来保障信息的完整性、真实性,并保证信息传递双方在不用信任的网络上安全地传输密钥。
私钥是不公开的。信息拥有者要高度保护私钥的安全,因为被公钥加密过的信息只有拥有对应私钥的人才能解密。具体来说,这种非对称密钥的工作原理是,在区块链的信息传递过程中,信息发送方使用私钥对信息签名、使用信息接收方的公钥对信息加密;信息接收方使用对方公钥验证信息发送方的身份、使用私钥对加密信息解密。公私钥加密与解密的成对出现保障了信息的完整性、一致性、安全性和不可篡改性。
邹均介绍,除了非对称加密算法之外,在密码学技术里,还有非对称的数字签名技术、保证数据唯一性的哈希技术、保护信息传递双方敏感信息的隐私保护技术和包括防攻击、身份认证、授权等在内的安全技术。基于密码学产生的安全技术,是区块链的核心安全技术。
3. 智能合约
“智能合约”这一术语是由法律学者尼克·萨博(Nick Szabo)在1995年首次提出的。他给出的定义是:智能合约是一套以数字形式定制的。
❷ 谁知道在区块链上认证视频和图片的版权原理是什么
基本上原理都一样, 用抱品网举例子, 抱品网视频区块链认证其实就是DApp, 先把视频每分钟关键帧的图片截图, 然后转码成一串唯一的数字 , 然后上传记录到以太坊区块链之中。
❸ 区块链中的隔离见证是什么
隔离见证具体怎么操作的?其实没那么简单~
隔离见证是区块链扩容的一种方法,已经在莱特币和比特币上成功实施。
目前区块链上每个区块内不仅记录了每笔转账交易的具体信息,即在哪个时间点账户收到或转出多少比特币,还包含了每笔交易的数字签名,用来验证该交易的合法性。矿工在打包区块的时候需要用数字签名一一验证每笔交易,确认没有问题之后才会将该笔交易记录在区块里。
但是对于普通用户来说,他只关心每个账户有多少资产,并不需要一一验证每笔交易。隔离见证就是把区块内的数字签名信息拿出去,让每个区块可以承载更多笔交易,从而达到扩容的目的。
❹ 区块链使用安全如何来保证呢
区块链本身解决的就是陌生人之间大规模协作问题,即陌生人在不需要彼此信任的情况下就可以相互协作。那么如何保证陌生人之间的信任来实现彼此的共识机制呢?中心化的系统利用的是可信的第三方背书,比如银行,银行在老百姓看来是可靠的值得信任的机构,老百姓可以信赖银行,由银行解决现实中的纠纷问题。但是,去中心化的区块链是如何保证信任的呢?
实际上,区块链是利用现代密码学的基础原理来确保其安全机制的。密码学和安全领域所涉及的知识体系十分繁杂,我这里只介绍与区块链相关的密码学基础知识,包括Hash算法、加密算法、信息摘要和数字签名、零知识证明、量子密码学等。您可以通过这节课来了解运用密码学技术下的区块链如何保证其机密性、完整性、认证性和不可抵赖性。
基础课程第七课 区块链安全基础知识
一、哈希算法(Hash算法)
哈希函数(Hash),又称为散列函数。哈希函数:Hash(原始信息) = 摘要信息,哈希函数能将任意长度的二进制明文串映射为较短的(一般是固定长度的)二进制串(Hash值)。
一个好的哈希算法具备以下4个特点:
1、 一一对应:同样的明文输入和哈希算法,总能得到相同的摘要信息输出。
2、 输入敏感:明文输入哪怕发生任何最微小的变化,新产生的摘要信息都会发生较大变化,与原来的输出差异巨大。
3、 易于验证:明文输入和哈希算法都是公开的,任何人都可以自行计算,输出的哈希值是否正确。
4、 不可逆:如果只有输出的哈希值,由哈希算法是绝对无法反推出明文的。
5、 冲突避免:很难找到两段内容不同的明文,而它们的Hash值一致(发生碰撞)。
举例说明:
Hash(张三借给李四10万,借期6个月) = 123456789012
账本上记录了123456789012这样一条记录。
可以看出哈希函数有4个作用:
简化信息
很好理解,哈希后的信息变短了。
标识信息
可以使用123456789012来标识原始信息,摘要信息也称为原始信息的id。
隐匿信息
账本是123456789012这样一条记录,原始信息被隐匿。
验证信息
假如李四在还款时欺骗说,张三只借给李四5万,双方可以用哈希取值后与之前记录的哈希值123456789012来验证原始信息
Hash(张三借给李四5万,借期6个月)=987654321098
987654321098与123456789012完全不同,则证明李四说谎了,则成功的保证了信息的不可篡改性。
常见的Hash算法包括MD4、MD5、SHA系列算法,现在主流领域使用的基本都是SHA系列算法。SHA(Secure Hash Algorithm)并非一个算法,而是一组hash算法。最初是SHA-1系列,现在主流应用的是SHA-224、SHA-256、SHA-384、SHA-512算法(通称SHA-2),最近也提出了SHA-3相关算法,如以太坊所使用的KECCAK-256就是属于这种算法。
MD5是一个非常经典的Hash算法,不过可惜的是它和SHA-1算法都已经被破解,被业内认为其安全性不足以应用于商业场景,一般推荐至少是SHA2-256或者更安全的算法。
哈希算法在区块链中得到广泛使用,例如区块中,后一个区块均会包含前一个区块的哈希值,并且以后一个区块的内容+前一个区块的哈希值共同计算后一个区块的哈希值,保证了链的连续性和不可篡改性。
二、加解密算法
加解密算法是密码学的核心技术,从设计理念上可以分为两大基础类型:对称加密算法与非对称加密算法。根据加解密过程中所使用的密钥是否相同来加以区分,两种模式适用于不同的需求,恰好形成互补关系,有时也可以组合使用,形成混合加密机制。
对称加密算法(symmetric cryptography,又称公共密钥加密,common-key cryptography),加解密的密钥都是相同的,其优势是计算效率高,加密强度高;其缺点是需要提前共享密钥,容易泄露丢失密钥。常见的算法有DES、3DES、AES等。
非对称加密算法(asymmetric cryptography,又称公钥加密,public-key cryptography),与加解密的密钥是不同的,其优势是无需提前共享密钥;其缺点在于计算效率低,只能加密篇幅较短的内容。常见的算法有RSA、SM2、ElGamal和椭圆曲线系列算法等。 对称加密算法,适用于大量数据的加解密过程;不能用于签名场景:并且往往需要提前分发好密钥。非对称加密算法一般适用于签名场景或密钥协商,但是不适于大量数据的加解密。
三、信息摘要和数字签名
顾名思义,信息摘要是对信息内容进行Hash运算,获取唯一的摘要值来替代原始完整的信息内容。信息摘要是Hash算法最重要的一个用途。利用Hash函数的抗碰撞性特点,信息摘要可以解决内容未被篡改过的问题。
数字签名与在纸质合同上签名确认合同内容和证明身份类似,数字签名基于非对称加密,既可以用于证明某数字内容的完整性,同时又可以确认来源(或不可抵赖)。
我们对数字签名有两个特性要求,使其与我们对手写签名的预期一致。第一,只有你自己可以制作本人的签名,但是任何看到它的人都可以验证其有效性;第二,我们希望签名只与某一特定文件有关,而不支持其他文件。这些都可以通过我们上面的非对称加密算法来实现数字签名。
在实践中,我们一般都是对信息的哈希值进行签名,而不是对信息本身进行签名,这是由非对称加密算法的效率所决定的。相对应于区块链中,则是对哈希指针进行签名,如果用这种方式,前面的是整个结构,而非仅仅哈希指针本身。
四 、零知识证明(Zero Knowledge proof)
零知识证明是指证明者在不向验证者提供任何额外信息的前提下,使验证者相信某个论断是正确的。
零知识证明一般满足三个条件:
1、 完整性(Complteness):真实的证明可以让验证者成功验证;
2、 可靠性(Soundness):虚假的证明无法让验证者通过验证;
3、 零知识(Zero-Knowledge):如果得到证明,无法从证明过程中获知证明信息之外的任何信息。
五、量子密码学(Quantum cryptography)
随着量子计算和量子通信的研究受到越来越多的关注,未来量子密码学将对密码学信息安全产生巨大冲击。
量子计算的核心原理就是利用量子比特可以同时处于多个相干叠加态,理论上可以通过少量量子比特来表达大量信息,同时进行处理,大大提高计算速度。
这样的话,目前的大量加密算法,从理论上来说都是不可靠的,是可被破解的,那么使得加密算法不得不升级换代,否则就会被量子计算所攻破。
众所周知,量子计算现在还仅停留在理论阶段,距离大规模商用还有较远的距离。不过新一代的加密算法,都要考虑到这种情况存在的可能性。
❺ 区块链数字签名加密的私玥可以用原加密的私玥解吗
首先,你要了解一下什么是“私钥”和“公钥”以及它们是如何发挥作用的。
区块链系统为了保证用户的数据安全,通过一种密码算法来实现的,具体来说的话是通过一种公开的密码算法机制来实现的,我们都知道如何一种密码算法,有会有一个秘钥,而公开的秘钥算法是一对(也就是两个)秘钥,就跟虎符是一样的是彼此配合来使用的。一个叫作公钥,就是可以公开给别人,私钥自己要保管好的,在区块链系统中,公钥就是用来识别身份的,而私钥就是来相当于 钥匙来解密,但是不同的是,一个公钥仅对唯一的一个私钥,也是就说私钥如果忘记都是不会帮你找回的,在区块链系统中不会帮你找回私钥,所以要妥善保管好私钥。
在区块链系统结构中,用公钥加密的数据必需要用对应的私钥来解密,而用私钥加密的数据
就要用对应的公钥来解密,那么这里的私钥加密(通常称之为“签名”)的数据必需要对应的公钥来解密,这个特点可以发挥很大的一个作用。
举个简单的例子吧,如果张三要发送给李四一张支票,那么怎么传送呢?就这么发送过去,会被记账的人拿到,风险可就大了,于是张三想了一个办法,他在支票上用李四的公钥加了个密,然后再签上了自己的名字(用自己的私钥签名)这个时候其他的人就算那拿到支票也没有用,因为,只有李四才有自己的私钥,也就是只有李四才能解开这张支票来使用。这种功能设计在区块链系统称之为“脚本系统”
所以,区块链数字签名加密的私玥不可以用原加密的私玥解,必需要与之相对应的公钥来解密。
❻ 区块链技术的一些重要要素是什么
1、所谓区块链技术,简称BT(Blockchain technology),也被称之为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个人均可参与数据库记录。
2、区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术在互联网时代的创新应用模式,近年来,区块链的发展和应用,对技术革新和产业革命有非常重要的意义。本经验介绍区块链技术的相关知识。
3、区块链是一个分布式账本,可以包含金融和/或非金融交易,通过对等网络几乎实时地复制(分布)在多个系统上,每个参与者“拥有”相同的分类帐副本,并在添加任何交易时获得更新,每个参与者都有助于确定所有现有记录的内在“不变性”,使用密码学和数字签名来证明身份,真实性和强制读/写访问权限,有机制使其难以改变历史记录,可以很容易地检测到有人试图改变它。
❼ 区块链的特点是什么
区块链有以下几个特点:
去中心化。区块链技术不依赖额外的第三方管理机构或硬件设施,没有中心管制,除了自成一体的区块链本身,通过分布式核算和存储,各个节点实现了信息自我验证、传递和管理。去中心化是区块链最突出最本质的特征。
开放性。区块链技术基础是开源的,除了交易各方的私有信息被加密外,区块链的数据对所有人开放,任何人都可以通过公开的接口查询区块链数据和开发相关应用,因此整个系统信息高度透明。
独立性。基于协商一致的规范和协议(类似比特币采用的哈希算法等各种数学算法),整个区块链系统不依赖其他第三方,所有节点能够在系统内自动安全地验证、交换数据,不需要任何人为的干预
❽ 区块链技术中的哈希算法是什么
1.1. 简介
计算机行业从业者对哈希这个词应该非常熟悉,哈希能够实现数据从一个维度向另一个维度的映射,通常使用哈希函数实现这种映射。通常业界使用y = hash(x)的方式进行表示,该哈希函数实现对x进行运算计算出一个哈希值y。
区块链中哈希函数特性:
函数参数为string类型;
固定大小输出;
计算高效;
collision-free 即冲突概率小:x != y => hash(x) != hash(y)
隐藏原始信息:例如区块链中各个节点之间对交易的验证只需要验证交易的信息熵,而不需要对原始信息进行比对,节点间不需要传输交易的原始数据只传输交易的哈希即可,常见算法有SHA系列和MD5等算法
1.2. 哈希的用法
哈希在区块链中用处广泛,其一我们称之为哈希指针(Hash Pointer)
哈希指针是指该变量的值是通过实际数据计算出来的且指向实际的数据所在位置,即其既可以表示实际数据内容又可以表示实际数据的存储位置。下图为Hash Pointer的示意图

❾ 怎么解读区块链的数字签名
在区块链的分布式网络里,节点之间进行通讯并达成信任,需要依赖数字签名技术,它主要实现了身份确认以及信息真实性、完整性验证。
数字签名
数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。简单证明 “我就是我”。