软件原理
不赘述,参考: 软件License认证方案的设计思路
License文件离线鉴权
- 机械指纹,不可逆的加密算法,如MD5
- 功能鉴权,可逆的不对称加密算法,服务端公钥加密,app端私钥解密,如RSA
参数 | 作用 | 说明 |
包名 | 身份认证 | app package name |
秘钥Key(可选) | 身份认证 | sdk方颁发给app唯一id,由注册者信息和app包名通过一定规则生成,需开发者妥善保管 |
秘钥Secret(可选) | 身份认证 | sdk方颁发给app的秘钥,由注册者信息和app包名通过一定规则生成,需开发者妥善保管 |
设备唯一Id或序列号 (机器指纹) | 身份认证 | 硬件设备的唯一Id,由软硬件唯一标识等通过一定规则生成: 硬件信息(Cpu,Flash Serial,Mac地址...) 系统信息(Android Id, Build number...) |
有效期 | 功能鉴权 | sdk使用有效截止日期或使用周期 |
功能使能 | 功能鉴权 | license可以使用sdk哪些功能 |
License version | 其它 | 鉴权版本信息 |
扩展 | 其它 | 扩展功能 |
在线网络鉴权
- 用户名、密码直接在线鉴权
- 后台根据用户名,密码等信息生成key和secret秘钥信息,配置到app中进行鉴权
参数 | 说明 |
包名 | app package name |
秘钥key | sdk方颁发给app唯一id,由注册者信息和app包名通过一定规则生成,需开发者妥善保管 |
秘钥secret | sdk方颁发给app的秘钥,由注册者信息和app包名通过一定规则生成,需开发者妥善保管 |
Version | 鉴权版本信息 |