• BTC-密码学原理


       比特币中主要用到了密码学中两个功能:1.哈希 2.签名。密码学中的哈希函数(cryptographtic hash function)

    一、哈希函数

      哈希函数主要有三个特性:1、碰撞特性(collision resistance);2、隐秘性(Hiding);3、谜题友好(puzzle friendly)。

     1、collision resistance

      collision resistance 即为输入两个输入值X,Y,经过哈希函数之后得到H(X)=H(Y),即为哈希碰撞。利用哈希碰撞,可以检测对信息的篡改。假设输入x1,哈希值为H(x1),此时很难找到一个x2,使得H(x1)=H(x2)。

     2、Hiding

      hiding 意思是哈希函数的计算过程是单向的,不可逆的。但前提要满足输入控件足够大,且分布均匀。通常我们在实际操作中会使用添加随机数的方法。假设给定一个输入值X,可以算出哈希值H(x),但是不能从H(x)推出X。

     3、puzzle friendly

      通常我们限定输出的哈希值在一定范围内,即H(block header + nonce) < target (block header是区块链的链头),这个确定链头范围的过程即为挖矿。

    二、签名

      签名就相当于每个人的开户行账号。公钥签名,即开户账号,验证签名用私钥,即为账号密码。以此来确保比特币的安全传输。

  • 相关阅读:
    Apache+php显示错误信息
    Laravel 中的多组认证模式
    Laravel 如何在Blade模板中能够根据不同的子页面附加不同的js和CSS
    Laravel 数据库
    Laravel Middleware 中间件笔记
    Laravel Routing笔记
    Laravel 进阶任务笔记
    Laravel 基本任务笔记
    Laravel5 根目录router无效
    Fedora23 安装 psycopg2
  • 原文地址:https://www.cnblogs.com/Eiffel/p/12391484.html
Copyright © 2020-2023  润新知