AK/SK加密认证

AK/SK认证的实现

AK/SK概述

1.什么是AKSK

ak/sk是一种身份认证方式,常用于系统间接口调用时的身份验证,其中ak为Access Key ID,sk为Secret Access Key。客户端和服务端两者会协商保存一份相同的sk,其中sk必须保密。

2.AK/SK认证过程

客户端在调用的服务端接口时候,会带上ak以及signature(使用sk对内容进行加密后得出的签名)进行请求,在服务端接收到这个请求的时候,首先会根据ak去数据库里面去找到对应的sk,然后使用sk对请求内容进行加密得到一个签名,然后对比客户端传过来的签名和服务端计算的出来的签名是否一致,如果一致则代表身份认证通过,反之则不通过。

AK/SK认证例子

设计ak/sk的请求参数

  • platform_type:标明请求方是谁,即该例子中的ak

  • time:请求时间,时间戳,将会被对应的sk配合加密算法进行加密,得到一个signature签名

  • sign:签名,使用sk配合对应的加密算法后进行加密得到的签名。

当发送请求时,我们会带上这几个参数去请求接口,如请求https:///xxx.com/students?platform_type=school&time=1640494526&sign=54acba6857b284a8a481ed5913edd34d994721cc584305ff02c81bb3ced17212

总结:

客户端生成签名

  • 客户端发送请求时,携带ak然后通过sk方式加密

服务端校验签名

posted @ 2022-04-21 15:27  无敌大牛牛  阅读(12750)  评论(0编辑  收藏  举报