签名算法
签名算法是指数字签名的算法。数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。数字签名是通过一个单向函数,对要传送的信息进行处理得到的用以认证信息来源,并核实信息在传送过程中是否发生变化的一个字母数字串。应用最为广泛的三种签名算法是:Rabin签名、DSS签名、RSA签名。
签名算法是指数字签名的算法。数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。
数字签名是通过一个单向函数,对要传送的信息进行处理得到的用以认证信息来源,并核实信息在传送过程中是否发生变化的一个字母数字串。数字签名提供了对信息来源的确定并能检测信息是否被篡改。数字签名要实现的功能是我们平常的手写签名要实现功能的扩展。平常在书面文件上签名的主要作用有两点,一是因为对自己的签名本人难以否认,从而确定了文件已被自己签署这一事实;二是因为自己的签名不易被别人模仿,从而确定了文件是真的这一事实。采用数字签名,也能完成这些功能 :
(1)确认信息是由签名者发送的;
(2)确认信息自签名后到收到为止,未被修改过。
数字签名算法有映象式和印记式两类。由于印记式的签名速度和验证速度比映象式快得多,因此印记式数字签名算法更为实用。
实现数字签名有很多方法 [2] ,数字签名采用较多的是公钥加密技术,同时应用最为广泛的三种是:Hash签名、DSA签名、RSA签名。
对称密钥密码算法进行数字签名
对称密钥密码算法所用的加密密钥和解密密钥通常是相同的,即使不同也可以很容易地由其中的任意一个推导出另一个。在此算法中,加、解密双方所用的密钥都要保守秘密。
Lamport发明了称为Lamport.Difle的对称算法:利用一组长度是报文的比特数(n)两倍的密钥A,来产生对签名的验证信息,即随机选择2n个数B,由签名密钥对这2n个数B进行一次加密交换,得到另一组2n个数C。
发送和接收的方式如下:
(1)发送
发送方从报文分组M的第一位开始,检查M的第i位:
M的第i位为0时,取密钥A的第i位;M的第i位为1时,取密钥A的第i+1位。
直至报文全部检查完毕,所选取的n个密钥位形成了最后的签名。
(2)接收
接受方对签名进行验证,从第一位开始依次检查报文M:
M的第i位为0时,签名中的第i组信息是密钥A的第i位;M的第i位为1时,签名中的第i组信息为密钥A的第i+1位。
直至报文全部验证完毕后,就得到了n个密钥,由于接受方发送验证信息c,所以可以利用得到的n个密钥检验验证信息,从而确认报文是否是由发送方所发送。
Hash签名
单向函数的概念是计算起来相对容易,但求逆却非常困难。也就是说,已知X,我们很容易计算f(X)。但已知f(X),却难于计算出X。
单向Hash函数有很多名字:压缩函数、缩短函数、消息摘要、指纹等。单向Hash函数H(M)对一则任意长度的消息进行处理,返回一个具有固定长度m的散列值h:
h=H(M),其中h的长度为m=H(M)具有以下属性:
(1)给定M,很容易计算出h,这表现了函数的快速性;
(2)给定h,很难计算出满足H(M)=h的M,这表现了函数的单向性;
(3)给定M1,很难找到一则消息M2,使得H(M1)=H(M2);
(4)h=H(M),h的每一比特都与M 的每一比特有关,并有高度敏感性。即每改变M的一比特,都将对h产生明显影响;
(5)Hash函数除了信息M 自身之外,应该基于发信方的秘密信息对信息M进行确认;
(6)输入数据M没有长度限制;
(7)对输入任何长度的M数据能够生成该输入报文固定长度的输出。
-
什么是数字签名?数字签名(又称公钥数字签名)是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。它是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术来实现的,用于鉴别...
-
什么是非对称加密算法?非对称算法属于密码学范畴,是一种可以对信息进行加密和解密的算法。它的运行需要一个公钥和一个私钥,公钥用于公开给其他人,私钥需要自己保存,两个密钥可以互相加密解密。由于加密的密钥与解密的密钥不是同一把而产生了非对称性,因此被称为非对...
-
什么是极值优化?EO算法源于复杂系统自组织临界的思想.算法从优化问题内部变量之间的联系出发,将问题本身作为一个演化的复杂系统,变量之间的相似性构成了变量之问比较、竞争、交流的条件.变量在局部寻优的过程中,驱动整个系统向最优解运动.EO算具有独特的...
-
什么是RSA加密算法?RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的 。 RSA公开密钥密码体制是一种使用不同...
-
什么是拜占庭将军问题?含义拜占庭将军问题(Byzantine failures),又称两军问题,1982年在莱斯利·兰波特研究分布式对等网络通信容错问题的论文中提出。在分布式系统的通讯过程中,可能会出现一些局部问题导致计算机发送错误信息,破坏系统一致性。因此,拜占庭将军问...
-
什么是分布式账本?分布式账本(Distributed ledger)是一种在网络成员之间共享、复制和同步的数据库。分布式账本记录网络参与者之间的交易,比如资产或数据的交换。这种共享账本降低了因调解不同账本所产生的时间和开支成本。 基本介绍 分布式账本(Distributed le...
-
什么是公钥?公钥与私钥是通过加密算法得出的一组密钥对。公钥是公开的,通常用于加密数据、验证数字签名。...
-
什么是钱包?加密货币交易中使用的钱包与日常所用的钱包有很大区别,所存储的并不是我们持有的加密货币,而是地址信息以及与地址匹配的私钥。地址用于储存加密货币,私钥用于确认交易。可以简单的将虚拟币钱包理解为,存储银行卡和银行卡密码的资料包。 钱包...
-
什么是布林线指标?布林线指标,即BOLL指标,其英文全称是"Bollinger Bands",布林线(BOLL)由约翰·布林先生创造,其利用统计原理,求出股价的标准差及其信赖区间,从而确定股价的波动范围及未来走势,利用波带显示股价的安全高低价位,因而也被称为布林带。其上下限...
-
什么是空气币?一般指没有区块链技术支撑和落地应用的“数字货币”。由于ERC-20的代码开源,发行加密货币的门槛较低,因此一些投机者为了赚取利益,发行没有真正应用有关区块链的技术,而仅是做到数据上的重组相似的空气币。空气币上线后几乎看不到项目方的维...
- 热门词条
-
- 什么是Staking? Staking本质上来说也是一种挖矿,但与比特币...
- 什么是护盘? 护盘是指对盘口的保护,指的是在市场情绪低迷...
- 什么是鳄鱼法则? 这是经济学交易技术法则之一,也叫"鳄鱼效应"...
- 什么是点对点? 通过允许单个节点与其他节点直接交互,无需通...
- 什么是避险效应? 指投资者为了规避风险,选择按兵不动或者投资...
- 什么是以太? 以太是古希腊哲学家亚里士多德所设想的一...
- 什么是软件开发初版? 常用于指软件开发的第一阶段内部测试的版本...
- 什么是竞争币? 竞争币的英文名为AltCoin,Altcoin 是Bitcoin...
- 什么是授权拜占庭容错算法? 授权拜占庭容错算法,是基于持有权益比例来...
- 什么是盘口? 股票交易中,具体到个股买进\卖出5个挡位的...
- 猜你喜欢
-
Solana生态项目全解:JTO、JUP、RAY、PYTH与MEME币分析
A16Z重注3000万美金:深度解读Balance,2024年最佳投资机会?
HAWK币全解析:长期投资价值与未来展望
从一夜暴富到被全美通缉:孙晨宇的传奇与崩溃
川沐:币圈大神,千元赚到千万!继欧阳/半神之后,又一实盘高手!高胜率策略大公开,牛市最佳买点策略,绝对可靠的买入卖出规则!
什么是FLOKI代币?揭秘FLOKI从Meme到加密市场黑马的崛起之路
PUBG G币详解:储值与免费获取攻略
川沐交易笔记:从500U到100万U的交易 完整版下载
XAI平台:区块链版Steam与XAI小钥匙的财富机遇
加密货币混币器全解析:工作原理、类型及洗钱监管风险与代表专案