OTP一次性动态密码工具实现

对于企业内部信息安全或行业安全合规性需求,3A认证、授权、审计是必要的基础安全审查项。认证安全机制要求双因素认证,从技术要可使用基于数字证书和OTP来实现满足。
OTP分为两种技术算法HOTP(基于次数 RFC 4226)和TOTP(基于时间 RFC 6238)标准。而目前开源的Google Authenticator工具很好的实现了OTP移动端APP的使用与密钥管理。
为了在企业运维安全加固需求可以开发自己的后端的OTP认证服务器和统一用户认证管理中心,结合Google Authenticator工具快速整合用户的移动端动态密钥的生成。
可适用的双因素场景:网络设备的认证(Radius协议)、企业内部开发的应用系统认证集成。

AuthOTP

golang实现google authencatior服务器RestAPI(密钥生成、OTP生成、OTP认证 )

API 接口说明

/register

  • 用途: 生成私有密钥(base64编码)
  • 方法: GET
  • 参数:无
  • 返回:seed密钥(string)

/otp

  • 用途: 通过私有密钥,生成OTP一次性密码
  • 方法: POST
  • 参数: 请求体JSON格式 ,skey 私有密钥
  • 返回: otp密码 (string)
Post Body:
{
"skey":"GI3TSYRWGMZWEZRTMNSGMYRXGFTDSODFGI4DEMRXHE3GKZDBGY2TKM3FMQYWMNDG"
}

/auth

  • 用途: 验证OTP一次性密码
  • 方法: POST
  • 参数: 请求体JSON格式 ,skey 私有密钥 otp 需认证的密码
  • 返回: true/false
Post Body:
{
"skey":"GI3TSYRWGMZWEZRTMNSGMYRXGFTDSODFGI4DEMRXHE3GKZDBGY2TKM3FMQYWMNDG",
"otp":"712257"
}

详细源码地址:
https://github.com/gotoolkits/AuthOTP

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值