很多人没有搞清楚JAVA加密及密钥的核心API如何使用,总是一脸懵逼,拷贝来拷贝去,知其然不知其所以然,其实很简单,具体说明如下:
javax.crypto.KeyGenerator 对称性加密密钥生成器,用于生成对称性加密密钥
javax.crypto.SecretKeyFactory 对称性加密密钥工厂,用于将对称性加密密钥转换为特定密钥格式(密钥规范)
java.security.KeyPairGenerator 非对称性加密密钥生成器,用于生成非对称性加密密钥(密钥对,公钥和私钥)
java.security.KeyFactory 非对称性加密密钥工厂,用于将非对称性加密密钥转化为特定密钥格式(密钥规范)
转化密钥格式主要用于异构系统或不同系统间使用相同标准来使用密钥加密解密,自己系统内,根据具体情况确定是否要使用通用格式(密钥规范)来存储密钥
Factory类的作用,不仅用于转换秘钥为特定秘钥格式(秘钥规范),也用于加载已经生成的秘钥文件(秘钥编码)为秘钥对象,用于程序中使用
因为手机编辑太麻烦,今天先到这,后续使用电脑补充密钥存储、密钥读取、密钥规范、X509、pkcs、摘要算法、密码等相关内容及API的理解与使用说明
只要理解了原理,用起来就如鱼得水