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)

  • 相关阅读:
    MFC的DoModal(转)
    MFC程序执行过程剖析(转)
    中控面试记录
    从内核文件系统看文件读写过程(转)
    dbutils工具
    java中求利息的代码
    java中求输入一个数,并计算其平方根~~~
    java中length的用法
    java中关于length的真确理解~~~~有补充的请跟帖~~~
    java二维数组的长度
  • 原文地址:https://www.cnblogs.com/lindexi/p/12087649.html
Copyright © 2011-2022 走看看