zoukankan      html  css  js  c++  java
  • win10 UWP Hmac

    HMAC是密钥相关的哈希运算消息认证码,输入密钥和信息。
    在uwp,Hmac在很多网络使用,我最近写qiniu SDK,把原来C#改为UWP,需要使用HMAC。

    上传文件

    <form method="post" action="http://upload.qiniu.com/"
     enctype="multipart/form-data">
      <input name="key" type="hidden" value="<resource_key>">
      <input name="x:<custom_name>" type="hidden" value="<custom_value>">
      <input name="token" type="hidden" value="<upload_token>">
      <input name="file" type="file" />
      <input name="crc32" type="hidden" />
      <input name="accept" type="hidden" />
    </form>

    需要凭据,凭据有上传策略

                string str_alg_name = MacAlgorithmNames.HmacSha1;
                MacAlgorithmProvider obj_mac_prov = MacAlgorithmProvider.OpenAlgorithm(str_alg_name);
                IBuffer buff_msg = CryptographicBuffer.CreateFromByteArray(path_and_query_bytes);
                IBuffer buff_key_material = CryptographicBuffer.CreateFromByteArray(mac.SecretKey);
                CryptographicKey hmac_key = obj_mac_prov.CreateKey(buff_key_material);
                IBuffer hmac = CryptographicEngine.Sign(hmac_key, buff_msg);
                byte[] digest = hmac.ToArray();

    string str_alg_name = MacAlgorithmNames.HmacSha1;微软有AesCmac、HmacMd5、HmacSha1、HmacSha256、HmacSha384、HmacSha512

    MacAlgorithmProvider.OpenAlgorithm传入使用算法

    Hmac输入buffer,byteCryptographicBuffer.CreateFromByteArray

    Hmac密钥obj_mac_prov.CreateKey(buff_key_material)

  • 相关阅读:
    soapUI学习笔记--用例字段参数化
    python 写数据到txt 文件
    Python生成8位随机字符串的一些方法
    python datetime获取几分钟、小时、天之前的时间
    MQTT 测试工具介绍
    运用MQTT-JMeter插件测试MQTT服务器性能
    mqtt-jmeter
    ActiveMQ测试工具
    MQTT压力测试工具之JMeter插件教程
    volatile非原子性的示例
  • 原文地址:https://www.cnblogs.com/lindexi/p/12087649.html
Copyright © 2011-2022 走看看