Golang LicenseServer授权服务器的设计 与 RSA 密钥对的应用
目录:
1.为什么要写授权服务器 LicenseServer
2.授权服务器的设计思路
3.授权服务器所使用到的加密技术
1.为什么要写授权服务器
为了防止别人拿到二进制后,自己搭建服务器,制作私服而损害公司利益;授权服务器只是增加破解难度而已,逆向破解二进制那也就没办法的,这里不考虑逆向。
2.授权服务器的设计思路
LS=LicenseServer
CS=CenterServer
LS使用HTTP协议,LS与CS之间使用RSA加密数据通信(不用HTTPS,因为要加上自己的密码)
流程是:
1.启动LS,监听HTTP端口 (同时加载 RSA私钥配置 ) ,LS与CS是完全隔离的。
2.启动CS,加载RSA公钥配置,加载程序写死密码,构造本机信息,结合写死密码首次加密,通过RSA公钥进行二次加密,发送给LS
3.LS收到消息,通过RSA私钥进行首次解密,结合写死密码二次解密(算法与CS保持一致),获得CS的启动信息,本地进行数据库查询,验证是否存在配置,存在返回OK,否则返回失败,使用RSA公钥签名,签名数据包含CS信息。
4.CS收到消息,通过RSA私钥,记性签名验证,成功,检查返回结果,OK,则启动,否则 授权失败,禁止启动。
LS使用RSA私钥进行数据的签名,CS验证数据合法性;CS发送信息包括RSA公钥,以及本机信息,和内存中的固定密码,利用RSA公钥加密数据,传送给LS让LS进行验证
ssh-keygen生成的默认密钥对格式,pem 和one-line pem格式
pkcs#1是什么
PKCS 全称是 Public-Key Cryptography Standards
参考链接:
PKCS 15 个标准 https://www.cnblogs.com/jtlgb/p/6762050.html
pkcs1与pkcs8格式RSA私钥互相转换 https://blog.csdn.net/duan19056/article/details/52104966
Golang LicenseServer授权服务器的设计 与 RSA 密钥对的应用相关推荐
- 服务器开发设计之算法宝典
作者:lynhlzou,腾讯 IEG 后台开发工程师 孙子云:"上兵伐谋,其次伐交,其次伐兵,其下攻城",最上乘行军打仗的方式是运用谋略,下乘的方式才是与敌人进行惨烈的厮杀.同样的 ...
- 搭建授权服务器oauth2
一.授权服务器的定位 一言而概之:就是为客户端产生一个Token 如图所示: 二.授权服务器的实现 2.1 添加依赖 <!-- 服务发现--><dependency><g ...
- 使用Spring Security Oauth2 和 JWT保护微服务--Uaa授权服务器的编写
学习自深入理解微服务 采用Spring Security OAuth2 和 JWT的方式,Uaa服务只需要验证一次,返回JWT.返回的JWT包含了用户的所有信息,包括权限信息 从三个方面讲解: JWT ...
- 从壹开始 [ Id4 ] 之一║ 授权服务器 IdentityServer4 开篇讲计划书
哈喽大家周四好!时间过的很快,现在已经是三月份了,我的 IdentityServer4 教程也拖了一定的时间了,正好最近有精力学新东西了,主要中间被小伙伴要求写一个管理后台,目前1.0已经上线(< ...
- 升讯威微信营销系统开发实践:(3)中控服务器的设计 .Net 还是 Java?
在上一篇文章中,简要介绍了升讯威微信营销系统的功能设计和架构设计,限于篇幅只能抛砖引玉,从本章节开始将围绕功能的设计和架构的设计进行详细的论述. 中控服务器的设计 在上文中,我们谈到需要一个中控服务器 ...
- 使用Owin中间件搭建OAuth2.0认证授权服务器
前言 这里主要总结下本人最近半个月关于搭建OAuth2.0服务器工作的经验.至于为何需要OAuth2.0.为何是Owin.什么是Owin等问题,不再赘述.我假定读者是使用Asp.Net,并需要搭建OA ...
- 远程桌面服务器零售授权许可证,由于没有远程桌面授权服务器可以提供许可证...
此文用于解决Windows server2008服务器远程桌面多用户120限制: Windows server2008服务器远程桌面登录时出现错误提示:"由于没有远程桌面授权服务器可以提供许 ...
- springCloud 授权服务器
之前弄好了非常非常简单的限流,现在就是登陆进来的用户,我们需要对他进行认证.这个时候就要用到我们的授权服务器了. 什么是授权服务器,就是给客户端一个身份,一个token.让我们的服务器认识他. spr ...
- 正在向icntv服务器认证授权信息,Spring-Security-OAuth2服务器之搭建认证授权服务器[一]...
结构基础 基础框架:Spring Boot + Spring-Security-OAuth2 存储介质:Mysql + Redis 持久化方式:Spring-data-jpa 测试工具:Postman ...
最新文章
- 个人见解:*与(c语言)
- Python 3 利用 Dlib 和 sklearn 人脸笑脸检测机器学习建模
- 乱花渐欲迷人眼-杜绝设计的视噪
- [转载] 晓说——第8期:镖局——最后的江湖(下)
- 思杰VDI十终极结构图及总结
- javascript-常用内置对象-随堂
- 计算机图形学资源收集04
- ONVIF协议网络摄像机(IPC)客户端程序开发(3):理解什么是Web Services
- sharepoint2013列表实现项目级权限控制
- DNT 3.1 快速安装手记
- asp.net页面加载时间计算
- 企业级项目实战讲解!Java获取某个日期的前一天
- 视频教程-思科网络工程师CCNP高级路由技术-路由协议
- 压缩包密码,办公文档密码破解实例讲解!
- 《社会心理学》第一章读书笔记
- ALFA机器视觉深度学习外观检测自学习人工智能软件——ocr字符检测
- 创业时也要读下这十本经典书
- [分形学] Julia Set (茱莉亚集) VC 源代码
- es5 es6 互相转换
- HTML:1分钟实现简单网站导航栏