到“安全了”,但不准备写“物理安全”、“网络安全”、“主机安全”、“应用安全”和“数据安全和备份与恢复”这5个到处可见的《信息安全技术 信息系统安全等级保护基本要求》(现在已然变成了《网络安全等级保护基本要求》,请参阅第三节)。写点由自己思考总结并且有技术含量的“哈希和私钥”。
一、哈希和私钥
1.概念:明文、密文、密钥、算法
M=Z(C),Z为加密函数,那么M就是密文;
C=F(M),F为解密函数,为Z的反函数,那么C解密后就成明文;这里正反函数就是算法。
这个应该是高一数学的入门概念。
2.哈希算法
算法:中文名叫哈希,英文Hash,是单项散列函数,说在正反函数互存在时,M=Z(F(M))是成立的,但在单项散列函数这里,M=Z(F(M))就不成立了,因为是单向的,没有反函数。
同时存在的概念有信息摘要、数字指纹,信息摘要、数字指纹都是经过哈希的(也就是说经过哈希算法,有了“数据特征”)。
3.对称与非对称密钥加密
关心的非函数本身(也就是加密函数Z或者解谜函数F),而是密钥K。
即M= K1Z(C),C=K2F(M);
若K1=K2,则为对称密钥加密;
若K1*=K2,则为非对称密钥加密(分为公钥和私钥)。
非对称加密算法是指使用公私钥对数据存储和传输进行加密和解密。公钥可公开发布,用于发送方加密要发送的信息,私钥用于接收方解密接收到的加密内容。
4.数字签名与验证
数据签名与验证就是Hash算法+私钥,也就是说把签名先hash,然后再以私钥加密;
电子证书也是主体信息+hash+私钥。
也就是底层根本的加密就是hash+私钥,没有那么高深,基本的东西就是这“两板斧”。
5.《中国区块链技术和应用发展白皮书(2016)》是这样描述区块链加密技术的,也是把hash和私钥作为两个基本点,正好印证了我的思路。下面是是白皮书的引用内容。
二、《中国区块链技术和应用发展白皮书(2016)》加密算法引用
加密算法
加密算法下面就只有hash和私钥两节。白皮书第44/45页。这个文档网上可以下载到。这里想说明的是,售前看东西还是得看正规的,国家的发文、文件有框架、严谨,对自己知识体系的整理和准确的掌握知识是最好的选择。
散列(哈希)算法
散列(哈希)算法也叫数据摘要,其原理是将一段信息转换成一个固定长度并具备以下特点的字符串:
(1)如果某两段信息是相同的,那么字符也是相同的。
(2)即使两段信息十分相似,但只要是不同的,那么字符串将会十分杂乱随机并且两个字符串之间完全没有关联。
本质上,散列算法的目的不是为了“加密”而是为了抽取“数据特征”,也可以把给定数据的散列值理解为该数据的“指纹信息”。典型的散列算法有MD5、SHA1/SHA2和SM3,表1对比了这些算法的特点。
总体上看,SHA256和SM3这两种算法效率和安全性大致相当,目前区块链主要使用SHA256,国内某些特定业务场景使用国密SM3,亦是比较符合国家安全和监管的选择。但由于不同业务场景的安全性标准有别,未来不排除还需要探索更优算法的可能性。
非对称加密算法
非对称加密算法由对应的一对唯一性密钥(即公开密钥和私有密钥)组成的加密方法。任何获悉用户公钥的人都可用用户的公钥对信息进行加密与用户实现安全信息交互。由于公钥与私钥之间存在的依存关系,只有用户本身才能解密该信息,任何未受授权用户甚至信息的发送者都无法将此信息解密。
在近代公钥密码系统的研究中,其安全性都是基于难解的可计算问题的,常用的非对称加密算法特点及其比较如表2和表3所示。
三、扩展总结内容
1.MD2/MD4/MD5、国密SM3为哈希算法:MD表示信息摘要,message digest<消化、领悟、摘要>是由ron revest设计的专门用于加密处理的广泛使用的hash函数。
2.SDH为哈希算法,国家密码办公室批准的hash算法。
3.RSA、ECC为非对称密钥算法,现在用SM2代替,国家密码管理局2011年施行。
4.服务器密码机,签名验签密码机(支持SM2、SM3、SM4算法,具有密钥管理、密码运算、身份认证等功能)。
5.用非对称密钥为对称密钥加密
非对称密钥,加密程度高,速度慢,易分发;
对称密钥,加密程度低,速度快,不易分发,由于私钥加密而安全。
6.密码分类:从低到高,商用密码(用于企事业单位)、普通密码(用于普通政府行政机构)、绝密密码(用于中央机构和机要部门)、军用密码(用于军队)。
7.PKI(public key infrastructure)
数字证书:包含主体信息、发证机构信息、密钥信息(私钥)、密码算法(hash)信息等。
CA:certificate authority,证书授权
RA:register authority,注册授权
LRA:local register authority,本地注册授权
看出来了吧,是有层级关系的。PKI下面是CA,CA下面是RA,RA下面是LRA,比如从中央到省再到地市,或从省到地市到县。
四、关于《网络安全等级保护基本要求》(GB/T 22239-2019)
简单说下,因为《信息安全技术 信息系统安全等级保护基本要求》(GB/T 22239-2008)已有10年历史,在十年中出现了云计算平台、大数据应用、移动互联接入、物联网和工业控制系统等新技术、新应用的使用情况,所以做出了改变:要点我认为是两点。
(1)为适应网络安全法,配合落实网络安全等级保护制度,标准的名称由原来的《信息系统等级保护基本要求》改为《网络安全等级保护基本要求》;
(2)写文档是常用到的:原来基本要求中各级技术要求的“物理安全”、“网络安全”、“主机安全”、“应用安全”和“数据安全和备份与恢复”修改为“安全物理环境”、“安全通信网络”、“安全区域边界”、“安全计算环境”和“安全管理中心”;原各级管理要求的“安全管理制度”、“安全管理机构”、“人员安全管理”、“系统建设管理”和“系统运维管理”修改为“安全管理制度”、“安全管理机构”、“安全管理人员”、“安全建设管理”和“安全运维管理”。
想要具体了解可搜索《网络安全等级保护基本要求》(GB/T 22239-2019)。
如果觉得还有点意思,请分享。