摘要: Merkle 树 默克尔树(又叫哈希树)是一种二叉树,由一个根节点、一组中间节点和一组叶节点组成。 最下面的叶节点包含存储数据或其哈希值,每个中间节点是它的两个孩子节点内容的哈希值,根节点也是由它的两个子节点内容的哈希值组成。 进一步的,默克尔树可以推广到多叉树的情形。 默克尔树的特点是,底层数据的 阅读全文
posted @ 2018-03-09 18:38 ~旗木卡卡东~ 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 数字证书 数字证书用来证明某个公钥是谁的,并且内容是正确的。 对于非对称加密算法和数字签名来说,很重要的一点就是公钥的分发。一旦公钥被人替换(典型的如中间人攻击),则整个安全体系将被破坏掉。 怎么确保一个公钥确实是某个人的原始公钥? 这就需要数字证书机制。 顾名思义,数字证书就是像一个证书一样,证明 阅读全文
posted @ 2018-03-09 18:31 ~旗木卡卡东~ 阅读(1159) 评论(0) 推荐(0) 编辑
摘要: 数字签名 类似在纸质合同上签名确认合同内容,数字签名用于证实某数字内容的完整性(integrity)和来源(或不可抵赖,non repudiation)。 一个典型的场景是,A要发给B一个文件(一份信息),B如何获知所得到的文件即为A发出的原始版本?A先对文件进行摘要,然后用自己的私钥进行加密,将文 阅读全文
posted @ 2018-03-09 18:23 ~旗木卡卡东~ 阅读(750) 评论(0) 推荐(0) 编辑
摘要: 现代加密算法的典型组件包括:加解密算法、加密密钥、解密密钥。其中,加解密算法自身是固定不变的,一般是公开可见的;密钥则往往每次不同,并且需要保护起来,一般来说,对同一种算法,密钥长度越长,则加密强度越大。 + 加密过程中,通过加密算法和加密密钥,对明文进行加密,获得密文。 + 解密过程中,通过解密算 阅读全文
posted @ 2018-03-09 18:17 ~旗木卡卡东~ 阅读(1982) 评论(0) 推荐(0) 编辑
摘要: 区块链其实是一种点对点的分布式存储系统,它不依赖于某个节点,所有的节点上都有所有的账本信息(理论上)。下面是比较准确的描述: 区块链能够保证用户的数据安全,那么它的基础就是密码学技术。 密码学技术涉及太广了,包括 hash算法与摘要、加密算法、数字签名和证书、PKI体系、Merkle树、同态加密等, 阅读全文
posted @ 2018-03-09 16:45 ~旗木卡卡东~ 阅读(722) 评论(0) 推荐(0) 编辑
摘要: 增加网上的交易流程作为参考和对比: 阅读全文
posted @ 2018-03-09 16:17 ~旗木卡卡东~ 阅读(534) 评论(0) 推荐(0) 编辑
摘要: 大部分Web系统都希望在启动时可以加载一系列的资源,这样在应用中使用这些资源的时候就不再需要重新加载。 通常我们的做法就是在web.xml 中配置对应的listener,这个listener是继承自javax.servlet.ServletContextListener,然后在覆写的contextI 阅读全文
posted @ 2018-03-09 16:11 ~旗木卡卡东~ 阅读(563) 评论(0) 推荐(0) 编辑