昶戈开放平台
  1. 附录
昶戈开放平台
  • 昶戈开放平台
    • 概述
    • 对接步骤
    • 开始开发
      • 获取企业授权
    • 通讯录管理
      • 岗位管理
        • 批量添加岗位
        • 删除岗位
        • 获取岗位列表
        • 增加/修改岗位信息
        • 批量删除岗位成员数据
        • 增加岗位成员数据
      • 成员管理
        • 批量增加修改用户信息
        • 批量删除用户
        • 批量启用用户
        • 批量停用用户
        • 获取用户列表
        • 增加修改用户信息
        • 获取显示企业用户自定义字段列表 *
      • 产品线管理
        • 删除产品线
        • 获取产品线列表
        • 增加修改产品线人员信息
        • 增加修改产品线信息
      • 标签管理
        • 删除标签
        • 获取标签列表
        • 增加修改标签信息
        • 批量删除标签成员数据
        • 获取标签成员数据
        • 增加标签成员数据
      • 部门管理
        • 批量添加/修改部门
        • 批量添加部门(树形结构添加)
        • 删除部门
        • 获取部门列表
        • 增加修改部门信息
    • 授权登录
      • 免登录URL
    • 合作商开放接口
      • 企业配置
        • 获取合作商授权 *
        • 删除企业信息 *
        • 获取企业列表 *
        • 增加/修改企业信息 *
    • 消息和事件通知
      • 消息和事件通知
        • 订阅 *
        • 取消订阅 *
      • 消息和事件通知接收消息
        • 接收消息推送
    • 培训数据
      • 课程
        • 获取PC端首页第一个推荐课程
        • 获取移动端首页第一个推荐课程 *
      • 学员培训数据
        • 获取学员培训项目数据
        • 获取学员培训项目数据 V2
      • 实验室课程
        • 获取课程人员基础信息接口
        • 实验数据上传接口
    • 附录
      • 加密及算法
  1. 附录

加密及算法

Golang示例:
    
    // AES加密
    func Encrypt(key string, iv string, data string) string {
        if len(data) == 0 {
            return ""
        }
        key2, _ := base64.StdEncoding.DecodeString(key)
        iv2, _ := base64.StdEncoding.DecodeString(iv)

        block, _ := aes.NewCipher(key2)
        bs := block.BlockSize()
        originData := _PKCS5Padding([]byte(data), bs)
        cipher.NewCBCEncrypter(block, iv2).CryptBlocks(originData, originData)

        data = base64.StdEncoding.EncodeToString(originData)
        return data
    }
    
    
    
    
    // AES解密
    func Decrypt(key string, iv string, data string) string {
        if len(data) == 0 {
            return ""
        }
        key2, _ := base64.StdEncoding.DecodeString(key)
        iv2, _ := base64.StdEncoding.DecodeString(iv)

        block, _ := aes.NewCipher(key2)
        originData, err := base64.StdEncoding.DecodeString(data)
        if err != nil {
            return ""
        }
        cipher.NewCBCDecrypter(block, iv2).CryptBlocks(originData, originData)

        data = string(_PKCS5UnPadding(originData))
        return data
    }
    
修改于 2024-04-08 00:56:03
上一页
实验数据上传接口
Built with