笔记 | 普林斯顿公开课《比特币和数字货币技术》1.3

公开课地址:https://www.coursera.org/learn/cryptocurrency/home/welcome

第一周:密码学和加密货币介绍

章节1.3笔记:数字签名

签名:
1、只有你能签名,但任何人都能验证
2、签名和文档唯一对应,不能把签名复制到另一个文档

电子签名的API定义:
1、generateKeys(keysize) => (sk, pk)
sk: secrete signing key
pk: public verification key
2、sign(sk, message) => sig
3、verify(pk, message, sig) => isValid

签名需要:
1、有效签名能够通过验证
verify(pk, message, sign(sk, message)) => true
2、无法伪造签名
攻击者知道:(1)pk,(2)其构造的消息的签名,无法伪造对另一消息的签名

实际问题:
1、算法的随机性
需要非常好的随机源
2、消息大小的限制
使用hash(message)
3、fun trick: sign a hash pointer
签名要“覆盖”整个文档

bitcoin uses ECDSA, Elliptic Curve Digital Signature Algorithm
relies on hairy math, 略。。。 哈哈哈

QY 2018-03-15

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我总是这样疯疯癫癫。 幸而找到两个出口慰藉自己干瘪的灵魂,一是将心事交给简书,而是将心情付与歌声。 壹、写作之于我...
    李晓欣阅读 627评论 5 6
  • 看了下时间,深夜一点过了九分钟。真要细说的话,这会是凌晨了,意思是第二天开始了吗?这个点很多人已经进入深度睡眠了。...
    张七造梦阅读 459评论 2 3
  • 快过年了,小雨的学习态度也渐渐好转,至少是不再排斥文化课的补习了。终于开启了数学题的解题模式了,前天下午开...
    少莉911阅读 218评论 0 2