教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 使用golang加密算法的示例

使用golang加密算法的示例

发布时间:2022-01-21   编辑:jiaochengji.com
教程集为您提供使用golang加密算法的示例等资源,欢迎您收藏本站,我们将为您提供最新的使用golang加密算法的示例资源
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"/></svg><h4>需求:</h4>

先使用自定义的盐key对data进行sha1加密,然后对加密后的结果进行base64转码,再将转码后的结果转大写,最后再将转大写后的结果进行url编码:

<h4>
代码示例:</h4> <pre><code class="lang-go hljs"><span class="token keyword">package</span> main <span class="token keyword">import</span> <span class="token punctuation">(</span> <span class="token string">"crypto/hmac"</span> <span class="token string">"crypto/sha1"</span> <span class="token string">"encoding/base64"</span> <span class="token string">"net/url"</span> <span class="token string">"strings"</span> <span class="token punctuation">)</span> <span class="token comment">// Sha1Encrypt sha1加密,base64转码,转大写,url编码</span> <span class="token keyword">func</span> <span class="token function">Sha1Encrypt</span><span class="token punctuation">(</span>key<span class="token punctuation">,</span> data <span class="token builtin">string</span><span class="token punctuation">)</span> <span class="token punctuation">(</span>sign <span class="token builtin">string</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> mac <span class="token operator">:=</span> hmac<span class="token punctuation">.</span><span class="token function">New</span><span class="token punctuation">(</span>sha1<span class="token punctuation">.</span>New<span class="token punctuation">,</span> <span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token function">byte</span><span class="token punctuation">(</span>key<span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token comment">// 使用自定义的盐key创建一个hmac</span> mac<span class="token punctuation">.</span><span class="token function">Write</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token function">byte</span><span class="token punctuation">(</span>data<span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token comment">// 将要加密的data写入</span> bs <span class="token operator">:=</span> base64<span class="token punctuation">.</span>StdEncoding<span class="token punctuation">.</span><span class="token function">EncodeToString</span><span class="token punctuation">(</span>mac<span class="token punctuation">.</span><span class="token function">Sum</span><span class="token punctuation">(</span><span class="token boolean">nil</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token comment">// 将计算的结果进行base64转码</span> sign <span class="token operator">=</span> url<span class="token punctuation">.</span><span class="token function">QueryEscape</span><span class="token punctuation">(</span>strings<span class="token punctuation">.</span><span class="token function">ToUpper</span><span class="token punctuation">(</span>bs<span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token comment">// 将转码后的结果转化成大写并进行url编码</span> <span class="token keyword">return</span> <span class="token punctuation">}</span> </code></pre> 到此这篇关于“使用golang加密算法的示例”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
密码学之对称加密
PHP加密扩展库Mcrypt的例子
php base64加密解密的实现代码
有关discuz程序中PHP加密函数的原理分析
golang使用bcrypt加密算法进行密码的加密与校验
Golang 中 RSA 算法的使用
golang基础学习-AES加密
Go从入门到精通系列视频之go编程语言密码学哈希算法
php mcrypt启用、加密以及解密的方法介绍
php加密函数md5,crypt,base64_encode的用法介绍

[关闭]
~ ~