首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏devops_k8s

    Go加密算法总结

    前言 加密解密在实际开发中应用比较广泛,常用加解密分为:“对称式”、“非对称式”和”数字签名“。 对称式:对称加密(也叫私钥加密)指加密和解密使用相同密钥的加密算法。 非对称加密(公钥加密):指加密和解密使用不同密钥的加密算法,也称为公私钥加密。具体算法主要有RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)。 例如,3与10、5与 26。 3、相邻的两个自然数是互质数。如 15与 16。 4、相邻的两个奇数是互质数。如 49与 51。 5、较大数是质数的两个数是互质数。 在Go中,可以查看encoding/pem包和crypto/x509包。 加密解密这块,涉及到很多标准 Go RSA加密 rsa加解密, 必须会去查crypto/ras这个包 Package rsa implements RSA encryption as specified

    1.9K40发布于 2020-12-22
  • 来自专栏golang开发笔记

    Go 加密解密算法总结

    前言 加密解密在实际开发中应用比较广泛,常用加解密分为:“对称式”、“非对称式”和”数字签名“。 对称式:对称加密(也叫私钥加密)指加密和解密使用相同密钥的加密算法。 非对称加密(公钥加密):指加密和解密使用不同密钥的加密算法,也称为公私钥加密。具体算法主要有RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)。 如果采用真正的128位加密技术甚至256位加密技术,蛮力攻击要取得成功需要耗费相当长的时间。 ---BEGIN RSA PRIVATE KEY----- MIICWwIBAAKBgQDcGsUIIAINHfRTdMmgGwLrjzfMNSrtgIf4EGsNaYwmC1GjF/bM h0Mcm10oLhNrKNYCTTQVGGIxuc5heKd1gOzb7bdTnCDPPZ7oV7p1B9Pud ----- MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDcGsUIIAINHfRTdMmgGwLrjzfM NSrtgIf4EGsNaYwmC1GjF/bMh0Mcm10oLhNrKNYCTTQVGGIxuc5heKd1gOzb7bdT

    3.3K31发布于 2020-09-27
  • 来自专栏GoLang全栈

    Go语言加密-MD5,BASE64加密

    加密环节在项目开发当中是必不可少的,如果缺少加密模块,犹如人穿着透明的衣服在奔跑。 于是我录制了2个Go语言中加密的视频,希望大家能喜欢,后续会完善其他加密算法的录制。 1、Md5加密 Md5加密他是不可逆的算法,由于他不管什么样的数据进行加密,最后输出的都只会是一串32位的字符串,于是常被用于密码加密或者文件指纹计算。 2、Base64加密 Base64加密算法它是一套可逆的加密算法,我们项目当中经常用它来对数据进行一些简单的加密。 这个时候我们就可能就会用到Base64加密,我们把要传的数据进行一个简单的加密,这样到后台拿到我们加密过的字符串,只需要进行解密就能拿到加密前的数据了。

    86730编辑于 2022-05-10
  • 来自专栏码客

    Go语言 字符串加密

    AES加密 CBC模式,最常见的使用方式: package main import ( "bytes" "crypto/aes" "crypto/cipher" "encoding blockSize := block.BlockSize() // 补全码 strData = PKCS7Padding(strData, blockSize) // 加密模式 cipher.NewCBCEncrypter(block, k[:blockSize]) // 创建数组 cryted := make([]byte, len(strData)) // 加密 // 分组秘钥 block, _ := aes.NewCipher(k) // 获取秘钥块的长度 blockSize := block.BlockSize() // 加密模式 1",utils.MD5_z1(str)) fmt.Println("加密结果2",utils.MD5_z2(str)) fmt.Println("加密2次",utils.MD5_more(str)

    1.2K30编辑于 2022-10-07
  • 来自专栏Golang语言开发栈

    Go 语言怎么使用对称加密

    通过对称加密进行通信的实体必须共享该密钥,以便可以在解密过程中使用它。这种加密方法与非对称加密不同,非对称加密使用一对密钥(一个公钥和一个私钥)来加密和解密数据。 Golang 实现 AES 对称加密算法主要分为以下几个步骤: 加密步骤: 创建一个新的加密块。 获取加密块的大小。 填充数据。 初始化向量。 指定加密块的分组模式。 进行加密多个块。 本文重点是介绍怎么使用 Go 语言实现对称密钥加密,代码占用篇幅比较多,关于 AES 算法的分组模式和填充模式的详细介绍,感兴趣的读者朋友们可以阅读参考资料给出的链接地址。 参考资料: https://en.wikipedia.org/wiki/Symmetric-key_algorithm https://pkg.go.dev/crypto/aes@go1.18.3#NewCipher https://pkg.go.dev/crypto/cipher#NewCBCEncrypter https://pkg.go.dev/crypto/cipher#NewCBCDecrypter https

    1.7K10编辑于 2022-07-01
  • 来自专栏陶士涵的菜地

    go下实现md5加密

    下面这个工具包下的函数 package utils import ( "crypto/md5" "encoding/hex" ) //md5加密 func Md5(src string

    1.2K10发布于 2020-12-09
  • 来自专栏面向加薪学习

    10.Go语言-包

    10 章 包 包(package) 用于组织 Go 源代码,提供了更好的可重用性与可读性。 Go 语言有超过 100 个的标准包,可以用 go list std | wc -l 命令查看标准包的具体数目,标准库为大多数的程序提供了必要的基础组件。 例如我们 Go 的第一个程序。 在 Go 中这具有特殊意义。在 Go 中,任何以大写字母开头的变量或者函数都是被导出的名字。其它包只能访问被导出的函数和变量。 如果在 book.go 中将函数名从 ShowBookInfo 变为 showBookInfo ,并且在 main.go 中调用 book.showBookInfo 函数,则该程序编译不通过。

    46020编辑于 2022-09-04
  • 来自专栏容器云实践

    通过Go实现AES加密和解密工具

    本文包含如下两个内容: AES加密介绍及实现原理 Go实现AES加密和解密工具 ---- AES加密介绍及实现原理 AES( advanced encryption standard)使用相同密钥进行加密和解密 操作系统组件:一些操作系统组件(如文件系统)使用高级加密标准来确保安全性。 编程语言库: Go、Python 和 C++ 等编码库实现了的AES加密(等会使用到)。 AES加密是如何实现的? AES每个标准规定了所要加密的轮数,对于128位密钥,轮数是 10,要生成的密钥个数为 10+1,总共 11 个密钥。 最后一轮不参与AddRoundKey 经过如上的10轮操作之后,得到了一个明文块的加密字符。解密则进行反向加密。 ---- Go实现AES加密工具scode ok,上面大致了解AES加密是如何工作起来的,接下来通过Go中的crypto/aes和crypto/cipher包实现的AES加密解密工具。

    3.8K10编辑于 2022-06-08
  • 来自专栏凯云实验室

    Messari加密报告的10点总结

    明显感觉到,Messari 2022年的加密报告要比2021年的加密报告更流行,越来越多的人开始阅读这份超长的报告。 1/ 2022年报告的总体思维导图: 2/ 高通胀(5%)和年底加息在短期内对加密货币有利,但在中长期有风险的。 3/ Web3的必然性=人才x时机x资本,我们现在似乎三者都有了。 ,大多数机构再也不能忽视加密货币了。 相反,它停留在BTC、ETH、SOL或一些加密“蓝筹股”。 8/ 预计加密货币将进入寒冬。加密货币的冬天总是可以比你想象的更冷,持续的时间也会比你想象的更长。 10/ 基础性的Web3公司打造不可或缺的产品,很可能熬过这个冬天。快速致富的人群将会蒸发,但下一个周期的独角兽将会在这个寒冷冬季的低迷期诞生。 编者:这10点总结是非常不错的,值得逐条仔细研读思考。

    33320编辑于 2022-04-02
  • 来自专栏深入浅出区块链技术

    非对称加密Rsa数字签名Go实战

    什么是非对称加密 非对称加密算法需要两个密钥:publickey和privatekey。如果用公钥对数据进行加密,只有用对应的私钥才能解密。 因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 签名的生成 •有原始数据对其进行哈希运算-> 散列值 •使用非对称加密的私钥对散列值加密 -> 签名 •将原始数据和签名一并发送给对方 签名的验证 •接受数据 1 原始数据 2 数字签名 •数字签名, 需要使用公钥解密,得到散列值 •对原始数据进行hash运算,得到新的散列值 •散列值进行比对 go实现Rsa数字签名 使用rsa生成密钥对 •生成密钥对 •序列化 •保存到磁盘文件 ? GitHub https://github.com/potaxie/go-crypto 本文作者:potaxie

    2.1K10发布于 2020-07-23
  • 来自专栏软件安装

    10加密软件,包括企业级加密,有的FBI都解不开

    以下10加密工具推荐,有个人密码管理、企业文件防护、跨平台加密等软件,并附真实用户踩坑指南与配置建议。 SafeNet Linux用户的内网加密通道 专注数据传输加密,能为企业内网建立“加密隧道”,微信传文件时自动裹上“加密壳”。 加密速度惊人——1GB视频文件“眨个眼就完事”,但仅支持基础密码保护,不适合存放商业机密。 ▌ 10. ▌ 避坑指南 ProtectMaster:“和360杀毒冲突,升级慢” CryptoDrive:加密移动硬盘需2小时/10GB,Win11兼容性差,“虚拟磁盘偶尔消失” DocShield:隐形水印易被 正如某些热评所言:“最好的加密是用户感觉不到加密——该加密时自动加密,该解密时无缝解密”。

    32810编辑于 2026-03-26
  • 来自专栏ai_houzi

    go语言基础10-Goroutine

    实例 func main() { for i := 0; i < 1000; i++ { go func(i int) { for { fmt.Printf("我打印的是:%d\n" 轻量级”线程“ 非抢占式多任务处理,由协程主动交出控制权 编译器/解释器/虚拟机层面的多任务 多个协程可能在一个或者多个线程上运行 子程序是协程的一个特例 goroutine的定义 任何函数只需加上go

    43330发布于 2019-04-04
  • 来自专栏Golang语言社区

    go语言base64加密解密的方法

    package main import ( "encoding/base64" "fmt" ) const ( base64Table = "123QRSTUabcdVWXYZHijKLAWDCABDstEFGuvwxyzGHIJklmnopqr234560178912" ) var coder = base64.NewEncoding(base64Table) func base64Encode(src []byte) []byte { return []byte(code

    1.3K50发布于 2018-03-23
  • 来自专栏Golang语言社区

    go语言base64加密解密的方法

    本文实例讲述了go语言base64加密解密的方法。分享给大家供大家参考。

    1.4K50发布于 2018-03-26
  • 来自专栏golang

    每日一库:Go 中的 bcrypt 加密

    golang.org/x/crypto/bcrypt 是 Go 中用于密码加密的工具,安全高效,适合用户认证。安装go get golang.org/x/crypto/bcrypt核心函数1. GenerateHashPassword作用:将明文密码生成加密哈希。 = nil { return "", err } return string(hashPassword), nil}说明:使用默认工作因子(10)生成带盐的哈希,若出错返回空字符串和错误 = nil { panic("生成加密密码失败") } fmt.Printf("生成的加密密码为:%s\n", hashPassword) if CompareHashAndPassword 总结bcrypt 简单安全,是 Go 中密码加密的优选。

    55210编辑于 2025-04-11
  • 来自专栏希里安

    Go语言中的5种常用加密方法

    《央视财经》报道称,如果一个用户向 ChatGPT 问了 10 到 50 个问题,可能会消耗掉 500 毫升的水。 --oschina Go语言中的5种常用加密技术 在数字时代,数据安全变得至关重要。Go语言以其简单、高效、易于部署的特点被广泛应用于服务器端编程。 今天,我们将探索Go语言在加密领域的5种常用函数,这些技术能帮助开发者保护用户数据,防止未经授权的访问。 1. Go语言中的实现简洁高效,无论是开发Web应用、微服务还是任何需要安全措施的系统,都可以依靠它们确保数据的安全性。 希望本文能够帮助你在Go项目中实现更安全的数据处理。 安全是一个不断发展的领域,选择正确的加密方法和实践对保护你的应用至关重要。尽管某些散列函数如MD5已不再安全,但它们在非安全环境中仍然有其用处。

    1K10编辑于 2023-12-26
  • 来自专栏Golang语言社区

    go语言base64加密解密的方法

    package main import ( "encoding/base64" "fmt" ) const ( base64Table = "123QRSTUabcdVWXYZHijKLAWDCABDstEFGuvwxyzGHIJklmnopqr234560178912" ) var coder = base64.NewEncoding(base64Table) func base64Encode(src []byte) []byte { return []byte(code

    1.3K60发布于 2018-03-26
  • 来自专栏Golang语言社区

    go语言base64加密解密的方法

    package main import ( "encoding/base64" "fmt" ) const ( base64Table = "123QRSTUabcdVWXYZHijKLAWDCABDstEFGuvwxyzGHIJklmnopqr234560178912" ) var coder = base64.NewEncoding(base64Table) func base64Encode(src []byte) []byte { return []byte(code

    1.8K70发布于 2018-03-23
  • 来自专栏Golang语言社区

    go语言base64加密解密的方法

    本文实例讲述了go语言base64加密解密的方法。分享给大家供大家参考。

    1.2K40发布于 2018-03-22
  • 来自专栏go程序例子

    Go程序例子(10):映射(Map)

    映射(Map)是 Go 语言内置的关联数据类型(在其他语言中有时称为哈希(hash)或字典(dict))。 [string]int{"foo": 1, "bar": 2} if maps.Equal(n, n2) { fmt.Println("n == n2") }}运行结果:$ go run maps.go map: map[k1:7 k2:13]v1: 7v3: 0len: 2map: map[k1:7]map: map[]prs: falsemap: map[bar:2 foo

    30610编辑于 2024-12-10
领券