目录

前言

比特币中的密码学原理

1.哈希

2.签名


前言

学习肖臻老师的《区块链技术与应用》公开课笔记,供学习参考。


比特币中的密码学原理

1.哈希

  • 密码学中使用的哈希函数(crypotographic hash function)

密码学中使用的哈希函数有两个重要的性质

  1. collision resistance(防碰撞)

    collision指哈希碰撞:x≠y H(x)=H(y) 两个不同的输入,输出却是相等的。因为输入空间总大于输出空间,因此不可避免。除非暴力求解,很难根据x找到y。

    根据人们的实践经验已证实,哈希碰撞是不可人为制造的。

  2. hiding(不可逆)

哈希函数的计算过程为单向的不可逆的。该性质的前提是输入空间足够大,分布较均匀。

以上两种性质结合在一起,可实现digital commitment (又称为digital equivalent of a sealed envelope):

将预测结果X输入计算哈希值Y,公布哈希值Y,最后公布X。在此过程中X不可被篡改。

  • 比特币中使用的哈希函数

比特币中使用的哈希函数在密码学的基础上增加了一个性质:

puzzle friendly (不可预测)

即哈希值的计算是不可预测的

2.签名

在比特币中开户是在本地创立一个公私钥匙对(public key ,private key),来自非对称的加密技术。

在信息交流中公钥用来加密以及验证签名,私钥用来解密和签名,公钥和私钥互不相同。当公钥和私钥相同时,为对称加密。在非对称的加密技术中公钥就像我们的银行卡的卡号,而私钥是我们的银行卡的密码,别人如果给我们转钱只需要知道我们的银行卡号就可以了。

但是产生公私钥以及签名的时候都需要有一个好的随机源,防止产生相同的公私钥或者泄露私钥。

01-BTC-密码学原理相关推荐

  1. 区块链学习笔记一 BTC密码学原理

  2. Request和Response-学习笔记01【Request_原理和继承体系、Request_获取请求数据】

    Java后端 学习路线 笔记汇总表[黑马程序员] Request和Response-学习笔记01[Request_原理和继承体系.Request_获取请求数据][day01] Request和Resp ...

  3. 一、区块链技术与应用-密码学原理

    密码学原理: 哈希: 加密货币(crypto-currency) 密码学中所用的哈希函数被称为cryptographic hash function 它有两个重要的性质: 1.      collis ...

  4. 北大肖臻老师《区块链技术与应用》系列课程学习笔记[1]Bitcoin中用到的密码学原理和数据结构

    目录 一.比特币系统中用到的密码学原理 1.什么是比特币 2.哈希函数 3.非对称密码体系 4.数字签名 二.比特币中的数据结构--哈希指针和Merkle Tree 1.哈希指针 2.区块链 3.Me ...

  5. ukey的密码学原理

    USBKey的密码学原理 首先,大致说下U盾的工作流程. 你的数字证书有一对,一份在U盾里的私钥,一份在银行的公钥(其实两份银行都有).U盾的原理很类似于双向认证的TLS(SSL)或者其它用到RSA的 ...

  6. 密码学原理-篇1:古典密码学

    密码学原理-篇1:古典密码学 关键词: 恺撒密码 单表替换密码 多表替换密码 重合指数 古典密码学之所以被称为古典,是因为区别于现代密码学,这些密码理论虽然很有价值,但是现在很少使用.因此,学习古典密 ...

  7. 数据安全 密码学原理与概论

    数据安全 密码学原理与概论 1.1. 密码学方向(公钥方向) 2 1.2. 古典密码主要靠算法,现代靠密钥 2 1.3. 香农三大定理 2 2. 古典密码 3 2.1. 古典密码学可以分为代替密码(也 ...

  8. 密码学原理与实践_到底什么是防火墙入侵检测密码学身份认证?如何高效建立网络安全知识体系?...

    今天杰哥给大家推荐一本新的书籍,名字叫做<网络安全原理与实践>,这本书有一定的阅读门槛,不是一本面向新手或新人的书籍,至少需要你具备网络基础的功底,例如已学习并掌握了我前面推荐的两本书了. ...

  9. day 01 python爬虫原理

    # 今日内容:爬虫原理# 爬虫课程:# 实训要求:# 一 课下写作业# 二 编写博客 # 一 爬虫基本原理# 1 什么是爬虫# 爬虫就是爬数据# 2 是什么互联网# 3 互联网建立的目的# 数据的传递 ...

  10. 密码学原理与实践第三版pdf_云计算原理与实践PDF电子书下载

    今天分享的电子书是<云计算原理与实践>PDF电子书下载 本书细节 书名:<云计算原理与实践> 作者:王伟主编:郭栋,张礼庆,邱娟,张静轩,张东启,谭一鸣编著 出版时间:2018 ...

最新文章

  1. java怎么表示log2_Java程序员修炼之道 之 Logging(2/3) - 怎么写Log
  2. 10 年 IT 老兵给新人程序员的几点建议
  3. @hdu - 3746@ Cyclic Nacklace
  4. OpenCV周期性除噪滤波器
  5. OSPF 多区域配置
  6. GIT — 使用回顾
  7. Linux系统编程---11(会话,守护进程,创建守护进程)
  8. mysql 重命名索引_mysql增删改字段,重命名替换字段
  9. Jupyter Notebook的安装和使用
  10. 【codevs1026】逃跑的拉尔夫,广搜的胜利
  11. Win7虚拟机上安装Xcode 4
  12. 知识图谱研讨实录09丨肖仰华教授带你读懂知识图谱语言认知
  13. Ubuntu18.04、Ubuntu20.04之ROS安装教程
  14. 深度优先搜索DFS详解2(非常详细,容易理解)
  15. == 和equals的比较
  16. 假期之不务正业—— Qt+FFmpeg+百度api进行视频的语音识别
  17. JVM学习 -- JVM 性能调优监控工具 jps、jstack、jmap、jhat、jstat、hprof 使用详解
  18. Linux之ARM(IMX6U)裸机汇编LED驱动实验--编译驱动
  19. 计算机无法读取内存,电脑内存条无法识别,真正的原因在这里
  20. JS:简单的页面广告制作(右下角广告可自动消失)

热门文章

  1. ffmpeg解封装出来的h264裸流设置SPS、PPS
  2. Storage: Xcopy Offload
  3. SpringSecurity OAuth2实现单点登录,微信扫码登录,Redis缓存验证码---入门到实战
  4. LXC与Docker介绍
  5. 对onreadystatechange的理解
  6. cimage和gdi绘图效率比较_vc++加载透明png图片方法——GDI+和CImage两种
  7. 信息时代与大数据相关的8个专业
  8. h5 3D框架和游戏引擎
  9. 各大OA工作流使用技术对比
  10. 将图片修改到指定像素大小和存储大小