摘要: 上一次读比特币论文还是几年前,在区块链大火的今天,决定仔细重读一下,并写下读后感。 本文试图以一种从宏观到微观,先静态后动态的叙述方式,描述比特币系统,文中绝大多数内容来自于中本聪的比特币论文,加上了一些自己的理解。 世界地图上看比特币 时至今日,比特币在物理上已是包含一万两千多个节点的,遍布全球的 阅读全文
posted @ 2018-03-16 19:43 程序员赵鑫 阅读(3761) 评论(0) 推荐(5) 编辑
摘要: 如果redis已在线上业务使用中,但没有添加密码认证,那么如何在不影响业务服务的前提下给redis添加密码认证,就是一个需要仔细考虑的问题。 本文描述一种可行的方案,适用于客户端使用了jedis连接池,服务端使用了redis master slave集群的情况。 1.定制jedis 对redis返回 阅读全文
posted @ 2017-06-08 19:04 程序员赵鑫 阅读(2050) 评论(0) 推荐(0) 编辑
摘要: 时至今日,各大互联网公司都已提供并鼓励使用扫码登录功能。扫码登录通过二维码在设备之间传递信息,使得用户可以使用安全可信任的设备(比如自己的手机)来控制不可信任的设备上的登录行为。其省去了在不便手动输入的设备(比如电视)上输入的环节,所以更方便;避免了在安全等级低的设备和环境(比如公共电脑、Web页面 阅读全文
posted @ 2017-04-28 18:59 程序员赵鑫 阅读(1716) 评论(1) 推荐(1) 编辑
摘要: 对于web系统而言,由于HTTP协议无状态的特性,用户登录时需要服务端生成通行证返回给浏览器。浏览器保存该通行证并在接下来的请求中携带该通行证。通常来讲,web系统使用http cookie来保存和传输通行证。本文介绍http cookie的原理、特性、并分析用其保存通行证可能遇到的安全问题。 本文 阅读全文
posted @ 2017-02-13 19:54 程序员赵鑫 阅读(2148) 评论(1) 推荐(2) 编辑
摘要: 用过了很多压测工具,却一直没找到中意的那款。最近试了wrk感觉不错,写下这份使用指南给自己备忘用,如果能帮到你,那也很好。 安装 wrk支持大多数类UNIX系统,不支持windows。需要操作系统支持LuaJIT和OpenSSL,不过不用担心,大多数类Unix系统都支持。安装wrk非常简单,只要从g 阅读全文
posted @ 2016-12-29 14:55 程序员赵鑫 阅读(28163) 评论(2) 推荐(7) 编辑
摘要: 我们数据库的权限管理十分严格,敏感信息开发工程师都看不到,密码明文存储不行吗? 不行。存储在数据库的数据面临很多威胁,有应用程序层面、数据库层面的、操作系统层面的、机房层面的、员工层面的,想做到百分百不被黑客窃取,非常困难。 如果密码是加密之后再存储,那么即便被拖库,黑客也难以获取用户的明文密码。可 阅读全文
posted @ 2016-11-06 18:10 程序员赵鑫 阅读(12797) 评论(9) 推荐(6) 编辑
摘要: HashMap和HashTable有什么不同?在面试和被面试的过程中,我问过也被问过这个问题,也见过了不少回答,今天决定写一写自己心目中的理想答案。 代码版本 JDK每一版本都在改进。本文讨论的HashMap和HashTable基于JDK 1.7.0_67。源码见 "这里" 1. 时间 HashTa 阅读全文
posted @ 2016-07-05 16:35 程序员赵鑫 阅读(20992) 评论(16) 推荐(18) 编辑
摘要: 支持多种存储引擎是众所周知的MySQL特性,也是MySQL架构的关键优势之一。如果能够理解MySQL Server与存储引擎之间是怎样通过API交互的,将大大有利于理解MySQL的核心基础架构。本文将首先介绍MySQL的整体逻辑架构,然后分析MySQL的存储引擎API并介绍如何编写自己的MySQL存 阅读全文
posted @ 2016-06-24 17:50 程序员赵鑫 阅读(1750) 评论(0) 推荐(2) 编辑
摘要: 环境 本文基于Spring Boot版本1.3.3, 使用了spring boot starter web。 配置完成后,编写了代码如下: 虽然只有几行代码,但是这已经是一个完整的Web程序,当访问url的path部分为"/"时,返回字符串"Welcome!"。 首先是一个非常普通的java程序入口 阅读全文
posted @ 2016-06-02 09:03 程序员赵鑫 阅读(108654) 评论(11) 推荐(31) 编辑
摘要: 系统高可用,或者说系统的可用性,在计算机领域是一个相当久远并且重要的概念。小到CPU芯片、内存、硬盘等硬件组件,大到支付宝、微信等日常互联网服务,在设计、开发、维护的时候,都离不开对它的考量。本文首先介绍跟系统可用性相关的关键概念,然后讨论高可用系统的评价指标。 系统和模块 一个系统的可用性,由组成 阅读全文
posted @ 2016-06-01 17:16 程序员赵鑫 阅读(1292) 评论(1) 推荐(2) 编辑