zoukankan      html  css  js  c++  java
  • Python-SHA256加密算法接口测试

    前言

    小伙伴们在做接口测试的时候,是否遇到一些需要加密的接口,但是不知如何进行测试呢?今天我们来学习一下SHA256加密算法接口如何进行测试的。

    SHA256加密算法介绍:

    比特币挖矿的御用算法

    SHA256是SHA-2下细分出的一种算法

    SHA-2,名称来自于安全散列算法2(英语:Secure Hash Algorithm 2)的缩写,一种密码散列函数算法标准(哈希算法),由美国国家安全局研发,属于SHA算法之一,是SHA-1的后继者。

    SHA-2下又可再分为六个不同的算法标准,包括了:SHA-224、SHA-256、SHA-384、SHA-512、SHA-512/224、SHA-512/256。这些变体除了生成摘要的长度 、循环运行的次数等一些微小差异外,

    算法的基本结构是一致的。对于任意长度的消息,SHA256都会产生一个256bit长的哈希值,称作消息摘要。这个摘要相当于是个长度为32个字节的数组,通常用一个长度为64的十六进制字符串来表示。

    算法特点

    • 单向加密,不可解密
    • 同明文,同密文

    应用场景

    网站验证密码,为了保证安全,不会储存明文密码,而是直接储存 hash

    SHA256加密算法的接口测试

    接口地址: http://47.96.181.17:8098/login

    返回格式: json

    请求方式: POST

    请求参数:{"userName":"您的用户名","password":"sha256加密后的密码"}

    请求头:

    键:Content-Type 值:application/x-www-form-urlencoded

    键:X-Requested-With 值:XMLHttpRequest

    成功返回示例:

    {

    'jumpUrl': 'index',

    'success': 'true',

    'systemUser': {'avatarName': None,

    'avatarPath': 'file/avatar/2020-02-06/',

    'nickname': 'sqqdcl3',

    'rememberMe': False,

    'securityDigest': None,

    'userId': '1',

    'userName': 'sqqdcl'}

    }

    失败返回示例:

    {'error': {'password': '密码错误'}, 'success': 'false'}

    python实现sha加密传输:

    import requests
    import hashlib
    #1.实例化一个sha256对象
    sha256=hashlib.sha256()
    
    #2.加密原始值-比如密码,需要将字符串转成bytes(字节)
    sha256.update('111111'.encode('utf-8'))
    #print(sha256.hexdigest())
    header={"Content-Type":"application/x-www-form-urlencoded","X-Requested-With":"XMLHttpRequest"}
    
    #3.发送登录接口信息
    body={"userName":"sqqdcl","password":sha256.hexdigest()}
    resp=requests.post('http://47.96.181.17:8098/login',data=body,headers=header)
    print(resp.text)

    成功返回的结果截图:

    失败返回的结果截图:

  • 相关阅读:
    LeetCode 258 Add Digits
    LeetCode 231 Power of Two
    LeetCode 28 Implement strStr()
    LeetCode 26 Remove Duplicates from Sorted Array
    LeetCode 21 Merge Two Sorted Lists
    LeetCode 20 Valid Parentheses
    图形处理函数库 ImageTTFBBox
    php一些函数
    func_get_arg(),func_get_args()和func_num_args()的用法
    人生不是故事,人生是世故,摸爬滚打才不会辜负功名尘土
  • 原文地址:https://www.cnblogs.com/zhangwuxuan/p/12863273.html
Copyright © 2011-2022 走看看