//TODO 待写文章

目录:

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 密钥对的应用的更多相关文章

  1. 使用Owin中间件搭建OAuth2.0认证授权服务器

    前言 这里主要总结下本人最近半个月关于搭建OAuth2.0服务器工作的经验.至于为何需要OAuth2.0.为何是Owin.什么是Owin等问题,不再赘述.我假定读者是使用Asp.Net,并需要搭建OA ...

  2. [2014-11-11]使用Owin中间件搭建OAuth2.0认证授权服务器

    前言 这里主要总结下本人最近半个月关于搭建OAuth2.0服务器工作的经验.至于为何需要OAuth2.0.为何是Owin.什么是Owin等问题,不再赘述.我假定读者是使用Asp.Net,并需要搭建OA ...

  3. 从壹开始 [ Id4 ] 之一║ 授权服务器 IdentityServer4 开篇讲&计划书

    前言 哈喽大家周四好!时间过的很快,现在已经是三月份了,我的 IdentityServer4 教程也拖了一定的时间了,正好最近有精力学新东西了,主要中间被小伙伴要求写一个管理后台,目前1.0已经上线( ...

  4. Spring Boot Security OAuth2 实现支持JWT令牌的授权服务器

    概要 之前的两篇文章,讲述了Spring Security 结合 OAuth2 .JWT 的使用,这一节要求对 OAuth2.JWT 有了解,若不清楚,先移步到下面两篇提前了解下. Spring Bo ...

  5. Spring Authorization Server 全新授权服务器整合使用

    前言 Spring Authorization Server 是 Spring 团队最新开发适配 OAuth 协议的授权服务器项目,旨在替代原有的 Spring Security OAuth 经过半年 ...

  6. 如何添加并设置远程桌面(RD)授权服务器

    上一篇日志中介绍了如何将现成的远程桌面授权服务器添加到对应的远程桌面回话主机中. 本篇日志将引导您如何添加配置相应的远程桌面授权服务器,这样就可以根据所购买的授权类型和授权级别添加需要甚至" ...

  7. 如何在Windows Server 2008 上添加RD (远程桌面)会话主机配置的远程桌面授权服务器

    在Windows Server系列的现存活跃产品中都默认的会开放两个随机附送的远程控制的授权,而一些特殊条件下我们需要启用多个远程终端连接,在购买了相应的授权之后,我们如何将配置好的服务器添加到远程桌 ...

  8. Windows Server 2012 没有远程桌面授权服务器可以提供许可证,远程会话被中断

    今天在登录公司内部的服务器的时候,无法进行远程访问. 弹出错误信息:没有远程桌面授权服务器可以提供许可证,远程会话被中断 经过网上的寻找,原来是server 2012 远程登录只提供120天的使用期限 ...

  9. 解决mstsc无法连接问题:由于没有远程桌面授权服务器可以提供许可证

    一.故障案例① 今天上午在给测试组的IIS新增https的时候,发现远程弹出如下错误: 由于没有远程桌面授权服务器可以提供许可证,远程会话被中断.请跟服务器管理员联系. 度了度,原来也是很常见的一种错 ...

随机推荐

  1. kudu集成impala

    Kudu 与 Apache Impala (孵化)紧密集成,允许开发人员使用 Impala 使用 Impala 的 SQL 语法从 Kudu tablets 插入,查询,更新和删除数据: 安装impa ...

  2. axios中文文档

    Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中. Features 从浏览器中创建 XMLHttpRequests 从 node.js 创建 http  ...

  3. Codeforces 1017E The Supersonic Rocket 凸包,计算几何,字符串,KMP

    原文链接https://www.cnblogs.com/zhouzhendong/p/CF1017E.html 题目传送门 - CF1017E 题意 给定两个点集,并构成两个凸包. 问这两个凸包是否可 ...

  4. 010 异步处理Rest服务

    一:任务 1.任务 使用Runnable异步处理Rest服务 使用DefaultResult异步处理Rest服务 异步处理的配置 2.原理图说明 二:Callable进行异步处理 1.程序 新建一个a ...

  5. K线图

    1.程序 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <titl ...

  6. day8数据类型补充,集合,深浅拷贝

    思维导图: 集合的补充:下面的思维导图有一个点搞错了,在这里纠正一下,没有合集,是反交集,^这个是反差集的意思 . 交集&,反交集^,差集-,并集|,然后就是子集和超集 数据类型补充: ''' ...

  7. B. Divisiblity of Differences

    B. Divisiblity of Differencestime limit per test1 secondmemory limit per test512 megabytesinputstand ...

  8. springboot2 redis

    本项目使用jar包: <parent> <groupId>org.springframework.boot</groupId> <artifactId> ...

  9. bootstrap datepicker显示日历

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title> ...

  10. Spring 的 AOP 进行事务管理的一些问题

    AspectJ AOP事务属性的配置(隔离级别.传播行为等): <tx:advice id="myAdvice" transaction-manager="mtTx ...