文档章节

Go笔记-加密

漂泊尘埃
 漂泊尘埃
发布于 2017/02/27 16:38
字数 210
阅读 25
收藏 0
点赞 0
评论 0

md5

  • 方式1
md5.Sum([]byte)
  • 方式2
hash := md5.New()
hash.Write([]byte)
hash.Sum(nil)

不同:

  1. 方式1返回的是 [Size]byte 类型的数组而不是切片
  2. 方式2: Write函数会把MD5对象内部的字符串clear掉,然后把其参数作为新的内部字符串。而Sum函数则是先计算出内部字符串的MD5值,而后把输入参数附加到内部字符串后面。

坑:

md5.New().Sum([]byte)

这种方式是先加密空字符串,然后将结果附加到了Sum的参数中,和没有加密一样。

sha3

import (
	"encoding/base64"
	"golang.org/x/crypto/sha3"
)

// 对用户密码进行编码。若密码明文为空字符串,则也会返回空字符串。
func EncodePassword(cleartext string) string {
	if cleartext == "" {
		return ""
	}
	h := make([]byte, 64)
	sha3.ShakeSum256(h, []byte(cleartext))
	return base64.StdEncoding.EncodeToString(h)
}

© 著作权归作者所有

共有 人打赏支持
漂泊尘埃

漂泊尘埃

粉丝 5
博文 35
码字总数 70992
作品 0
朝阳
开源 Evernote 替代品--Turtl

Turtl 是一款安全的,开源 Evernote 替代品,支持 Linux、Windows、Mac 和 Android 平台,很快会推出 iOS 版本,同时也提供 Firefox 和 Chrome 书签扩展。 Turtl 当前处于 beta 阶段,可以把...

匿名
2016/08/19
438
0
7 款印象笔记开源替代

印象笔记自 08年正式发布至今,已经拥有数以千万计的普通用户,百万计付费用户。不得不承认,印象笔记确实很强大,给众多用户带来诸多便利。 对于广大热爱开源的程序员来说,遗憾的是,它是闭...

催呀催呀
2016/08/05
11.1K
33
NotePad.Live 更新发布,增加加密笔记功能

NotePad.Live 更新发布了。 http://Notepad.Live 是一个极简的云笔记本,可以用来快速分享和记录零散内容,用户可以自定义地址,书写内容后实时在云 端保存。将URL地址分享给别的用户,即可快...

研习君
2016/03/20
1K
1
印象笔记开源替代品--Laverna

Laverna采用JavaScript开发,基于Electron,支持在线和本地加密编辑,本地应用支持Linux、Mac、Windows三大平台。号称开源的印象笔记替代品。 特性: 基于Pagedown的Markdown编辑器 支持在线...

匿名
2016/07/13
11.7K
10
可扩展桌面笔记客户端 - AlephNote

AlephNote AlephNote 是一个用于多个后端的可扩展,轻量级桌面笔记客户端。 Standard Note 使用 StandardNotePlugin,用户的笔记将同步到 Standard File server,笔记将在本地加密,只有用户...

匿名
05/29
0
0
密码学笔记

1. 加密方法可以分为两大类。一类是单钥加密(private key cryptography),还有一类叫做双钥加密(public key cryptography)。前者的加密和解密过程都用同一套密码,后者的加密和解密过程用...

阮一峰
2006/12/10
0
0
云笔记本--NotePad.Live

Notepad.live是一个最简洁的云笔记本,您可以使用任意的域名后缀来自定义您的笔记地址,支持加密和只读地址分享。 比如直接访问 http://notepad.live/zidingyi 即可建立一个自定义地址的云笔...

JiaFeiX
2016/03/20
1K
0
JavaSE——装饰设计模式+简单加密解密工程

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 装饰设计模式: 写信的例题:在原来的基础上添加...

凯哥学堂
05/03
0
0
pyDes 实现 Python 版的 DES 对称加密/解密

手头有个 Java 版的 DES 加密/解密程序,最近想着将其 Python 重构下,方便后续脚本解析,捣鼓了两下 pyDes 貌似很方便,不过据网上其他同学测试说 PyCrypto 性能要比 pyDes 高一个数量级,这...

xrzs
2015/12/30
2.5K
0
简易个人笔记记录式系统--fwrite

fwrite 是款简易个人笔记记录式系统。可用于个人文章记录、简易wiki等 采用python+web.py+mongodb开发,采用异步加载方式加载栏目等,不需要刷新页面 在安全方面稍微做了一些处理,比如后台地...

Fooying
2014/02/18
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

eclipse SVN 项目重新定位

SVN 重新定位 1.方法一 首先:在Eclipse中选择Windows-> Show View->others 就会出现【SVN资源库/SVN Repositories】,选中后,点击确认; 然后:选中原有的地址,选择【重新定位/Relocate】...

qimh
11分钟前
0
0
Linux 第29课 ——Linux集群架构(下)

Linux集群架构(下) 八、DR模式搭建 8.1 准备工作 试验需求三台机器: 分发器,也叫调度器(简写为dir) 192.168.112.136 ying01 rs1 192.168.112.138 ying02 rs2 192.168.112.139 ying03 vip...

feng-01
16分钟前
0
0
轻松搭建svn版本管理工具+svnmanager管理客户端

前面的文章有写过svn版本管理工具的安装是基于svn的安装包进行安装,对于svn与apache的结合还得下svn和apache的模块进行结合过程比较繁琐,今天来介绍下通过centos的yum来安装svn能够快速安装...

javazyw
25分钟前
0
0
keepalived配置高可用集群

Linux集群概述 根据功能划分为两大类:高可用和负载均衡 高可用集群通常为两台服务器,一台工作,另外一台作为冗余,当提供服务的机器宕机,冗余将接替继续提供服务 实现高可用的开源软件有:...

TaoXu
31分钟前
0
0
mysql联表批处理操作

1 概述 mysql中的单表增删改查操作,可以说是基本中的基本. 实际工作中,常常会遇到一些基本用法难以处理的数据操作,譬如遇到主从表甚至多级关联表的情况(如一些历史问题数据的批量处理),考虑到...

社哥
34分钟前
0
0
IntelliJ IDEA 详细图解最常用的配置,适合刚刚用的新人。

刚刚使用IntelliJ IDEA 编辑器的时候,会有很多设置,会方便以后的开发,磨刀不误砍柴工。 比如:设置文件字体大小,代码自动完成提示,版本管理,本地代码历史,自动导入包,修改注释,修改...

kim_o
48分钟前
0
0
Google Java编程风格指南

目录 前言 源文件基础 源文件结构 格式 命名约定 编程实践 Javadoc 后记 前言 这份文档是Google Java编程风格规范的完整定义。当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合...

niithub
50分钟前
0
0
java.net.MalformedURLException异常说明

1.异常片段 Java代码中,在进行URL url = new URL(urllink)操作时,提示以下异常信息,该类异常主要问题出在参数urllink上面。 异常片段1 java.net.MalformedURLException at java.ne...

lqlm
51分钟前
1
0
CentOS7修改mysql5.6字符集

解决办法:CentOS7下修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家所需要的字符集,是国际编码。 具体操作如下: 1.进入MySQL [root@tianqi-01 ~]# mysql -uroot -p Enter passw...

河图再现
52分钟前
0
0
DevExpress v18.1新版亮点——WPF篇(一)

用户界面套包DevExpress v18.1日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容。本文将介绍了DevExpress WPF v18.1 的新功能,快来下载试用新版本!点击下载>> Accordion Co...

Miss_Hello_World
55分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部