|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
我不认为直接向第三方授予登录账号的权力是合适且尊重用户隐私的方案, 由此提出一种以玩家皮肤作为载体的验证方式
- +------------------------------------------------------------------------------+
- | |
- | mcbbs.co User Minecraft |
- | | | | |
- | | | | |
- | | User Name | | |
- | |<---------------------+ | |
- | | | | |
- | Encode | Skin with Load | | |
- | +--------------------->| | |
- | | | | |
- | | | Set Skin | |
- | | +------------------------->| |
- | | | | |
- | | OK | | |
- | |<---------------------+ | |
- | | | | |
- | | Fetch Skin | | |
- | +----------------------+------------------------->| |
- | | | | |
- | | Skin with load | | |
- | |<---------------------+--------------------------+ |
- | | | | |
- | | | | |
- | Decode | | | |
- | & | | | |
- | Verify | | | |
- | | | | |
- | | | | |
- | | | | |
- | v v v |
- | |
- +------------------------------------------------------------------------------+
复制代码
此处的负载可以是一个有时间限制的验证码, 也可以是基于硬编码在插件代码中的非对称加密密钥对, 通过签名玩家名称+时间戳+填充内容, 或者是JWT
一个4096位的密钥输出是4096位, 这对于无损的64*64 rgba来说是完全放得下的
我没有了解过论坛的实现, 但是似乎对于RSA加解密php提供了原生实现 Encrypt and Decrypt text with RSA in PHP
这个方案逻辑简单, 不需要数据储存, 而且提供了更高的隐私
|
|