下面通过一个小例子说明一下 II 类户的现实运用情况。微众银行是中国第一批的互联网银行,是由腾讯牵头成立的,于 2014 年 12 月 16 日成立。
在微众银行的手机 App 中,每个人可以申请一张虚拟银行卡。其实这张卡,就是上文提到的 II 类户,这个账户的开户过程,不需要用户亲自到银行柜面核验,但是开设过程中,需要绑定一个 I 类户才能进行身份验证。
微众银行的储蓄卡,上面有II类户标记
根据上面 II 类户的说明,这个账户可以用于理财投资,所以,微众银行 App 里面是可以使用微众银行卡,购买理财产品的。不过将资金转入到微众银行,是比较麻烦的,如果你尝试往里面转账,你会注意到,有两个不同的转账功能。一个是从绑定卡直接扣转,这个显然要符合 II 类户的转账限额,也就是 1 万元一次的限制。这边可能会有另一个限制,就是代扣的单次限额限制。
另一个转账进入的途径是大额转账,是从你的其他银行的 I 类户的手机银行,直接给微众的卡号转账汇款。但是,你发现,如果没有事先将出账卡登记绑定到微众银行 App 的话,转账也会失败的。这也是来源于 II 类户的限制。如果未进行事先与 I 类户绑定的操作,也会受到单次 1 万,累计 20 万的限制。
# Uncomment the next line if Apache should not accept SSLv3 connections, to learn more google for "POODLE SSLv3". # SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:-SSLv3:+EXP:+eNULL
# Comment the next line (and uncomment the line above) if Apache should not accept SSLv3 connections, to learn more google for "POODLE SSLv3". SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLProtocol -all +TLSv1.2 +TLSv1.1 +TLSv1 SSLCipherSuite ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 SSLHonorCipherOrder on SSLCompression off
SSLCertificateFile "/path/to/cert.crt" SSLCertificateKeyFile "/path/to/cert.key" SSLSessionTickets on
上面这一段,配在 server 区段里。咱们的例子里,生成的证书对是 HelloDemo.crt 和 DEMO.key 一个是公钥,一个是私钥,我重命名为 cert.crt 和 cert.key,主要是为了好看,这里说明一下。
根证书导入
使用了私自签发的证书后,用浏览器访问本地的站点,会发现浏览器报不安全,要点好几次,才可以真的进入,还会有一个红色的警告。如果嫌麻烦的话,可以把跟证书,导入到系统的信任证书中。就是咱们在创建 CA 的时候,生成的 CA.crt ,在各种操作系统里,基本双击就可以激活导入程序了,询问的时候,都点“信任”就可以了。你自己生成的证书,也没什么可怕的了。
总结
以上这些,其实都可以使用 OpenSSL 里面自带的命令完成,不过,那个命令的参数非常多,也非常不友好,比较起来就好像是用 C 语言编程和用 Python 语言编程的区别。后者对用户更加友好,隐藏了更多的底层细节,生产力更加高。
本文介绍了 EasyRSA 的基本使用方法,以及穿插介绍了 PKI 的基本流程和几个关键角色。如果想要深入的了解,还是敬请阅读《HTTPS权威指南》by Ivan Ristic。