要知道的是在 Go 语言中,信道的地位非常高,面对并发问题,我们始终应该优先考虑使用信道。但是如果通过信道解决不了的,不得不使用共享内存来实现并发编程的,那 Golang 中的锁机制必须会使用而在 Golang 里有专门的方法来实现锁,在 sync 包里面。这个包有两个很重要的锁类型一个叫 Mutex, 利用它可以实现互斥锁。一个叫 RWMutex,利用它可以实现读写锁。互斥锁
转载 2024-02-11 14:56:59
41阅读
与DES不同,RSA算法中,每个通信主体都有两个钥匙,一个公钥一个私钥。 就是有2把钥匙 1。使用publicKey可以对数据进行加密 2。使用Key才能对数据进行解密 单方向传输 用公钥加密的数据,只有私钥能解开(可用于加密); 同时,使用私钥加密的数据,只有公钥能解开(签名)。但是速度很慢(比私钥加密慢100到1000倍), 公钥的主要算法有RSA,还包括Blowfish,Diffie-He
对比其他语言其他语言比如Python用的是try Except finally的方式来进行异常处理,执行逻辑是:尝试执行一段代码,如果发生异常则执行...无论是否发生异常都执行...;相比起来go语言的异常处理就简单许多,因为程序中的异常基本上都是可预期的,所以GO语言处理异常的方式是返回这个异常,如果没有发生异常则该值为nil,只要判断这个预期的返回值是否是nil便知道有没有异常发生.go语言
DES加密流程图:1-1、取得密钥取得64位的密钥,每个第8位作为奇偶校验位。1-2、变换密钥。1-2-1、舍弃64位密钥中的奇偶校验位,根据下表(PC-1)进行密钥变换得到56位的密钥,在变换中,奇偶校验位以被舍弃。Permuted Choice 1 (PC-1)57 49 41 33 25 17 91 58 50 42 34 26 1810 2 59 51 43 35 2719 11 3 60
转载 2024-06-04 05:01:49
164阅读
L脚本语言中能够对内存对象进行AES加解密。我们能够非常easy地实现文件加解密 #scp #定义一个秘钥字符串 定义:字符串,str1,abcdefg 打开:文件,file1,c:\1.txt 打开:文件,file2,c:\1-1.txt 定义:整数,size1,0 取大小:file1,size1显示:size1 申请:内存,mem1,size1 读取:file1,mem1显示:mem1
转载 2015-12-23 16:36:00
129阅读
2评论
纸上学来终觉浅,绝知此事要躬行。——  陆游「冬夜读书示子聿」 # 二叉树二叉树是最常用的树型数据结构,用来表示分支关系和层次关系。二叉树是由根元素、左子树和右子树组成。满二叉树:特殊的二叉树,树中所有分支结点都有左右子树,叶子结点都在最后一层。完全二叉树:不要求所有分支结点都有左右子树,但是要求所有已存在的结点位置与满二叉树对应,叶子结点只能出现
go语言Lotus项目开发实战〇、Lotus设计文档及节点使用1、文档1.1、官方文档1.2、文档导读、解读2、名词解释2.1、CID是什么意思?2.2、StateTree是什么意思?2.3、Actor是什么意思?2.4、StateTree和Actor的关系是什么?2.5、DAG是什么意思?2.6、什么是CAR文件(.car)?2.7、什么是HAMT?2.8、如何理解TipSet3、节点使用4、
转载 2024-04-25 21:45:42
24阅读
对称加密中,加密和解密使用相同的密钥,因此必须向解密者配送密钥,即密钥配送问题。而非对称加密中,由于加密和解密分别使用公钥和私钥,而公钥是公开的,因此可以规避密钥配送问题。非对称加密算法,也称公钥加密算法。
原创 精选 2018-01-04 12:34:40
10000+阅读
4点赞
我是罡罡同学,一位初入网安的小白。☜(ˆ▽ˆ) (疯狂暗示 点赞 !关注!转发 !!! 点赞 !关注!转发 !!!)* 您的支持是罡罡同学前进的最大动力!(欢迎报考山东政法学院网络空间安全学院!!!)仿射密码加解密原理(C语言实现)大家最好先学习一下欧几里得算法和欧几里得的扩展算法!!下面的链接是欧几里得算法和欧几里得扩展算法的代码解释!​​欧几里得算法和欧几里得扩展算法的代码解释​​仿射密码加解
仿射密码加解密原理(C语言实现) 大家最好先学习一下欧几里得算法和欧几里得的扩展算法!! 下面的链接是欧几里得算法和欧几里得扩展算法的代码解释! 欧几里得算法和欧几里得扩展算法的代码解释 仿射密码加解密原理: 效果图:(k1必须模26为1,否则重新输入) 详细代码:(加密和解密并没有分开,一起输出了,需要的同学,自己改下就可以啦!) #include<stdio.h> #in
原创 2021-07-06 09:52:03
2163阅读
今天遇到这样一个问题,将客户端中的一个密码存储到文件中以供下次使用,但是存储的密码不能直接存储明文,需要进行加密处理,再三考虑之后,这个加密的过程需要双向的可逆的过程,MD5等方式是不适用的,因为记住密码意味着下次我还需要还原这个密码进行使用,所以最后选择了openssl的aes算法,然而aes可行然而用遇到另外一个问题,aes编码字符串之后是乱码,只能用16进制数来显示,这样我使用的glib的k
bcrypt加密算法介绍 bcrypt算法对于同一个密码,每次生成的hash不一样 业务流程 对用户注册时传入的密码进行加密 //此方法生成hash值 HashAndSalt([]byte("password")) //password为string类型 将第一次生成的密码hash值存入数据库 密码 ...
转载 2021-06-03 23:49:00
1805阅读
2评论
# Go语言中的AES加解密示例 在现代信息安全中,加密技术至关重要,尤其是对敏感数据进行加密,确保信息在传输过程中的安全性。AES(高级加密标准)是一种广泛使用的对称加密算法,今天我们将用Go语言实现AES的加解密操作。 ## 1. AES基础知识 AES是一种对称密钥加密算法,使用相同的密钥进行加密和解密。AES支持不同的密钥长度:128位、192位和256位。由于对称加密的高效性,A
原创 9月前
131阅读
一、Golang简介1.1概述Golang语言是Google公司开发的新一代编程语言,简称Go语言Go 是有表达力、简洁、清晰和有效率的。它的并行机制使其很容易编写多核和网络应用,而新奇的类型系统允许构建有弹性的模块化程序。 Go 编译到机器码非常快速,同时具有便利的垃圾回收和强大的运行时反射。而他最广为人知的特性便是语言层面上对多核编程的支持,他有简单的关键字go实现并行,就像下面这样:
转载 2023-07-26 16:44:04
61阅读
0. 前言最近参与一个基于 BitTorrent 协议的 Docker 镜像分发加速插件的开发,主要参与补充 https 协议学习了 TLS 相关知识,下面对之前的学习做一下简单总结参考文献:TLS完全指南系列文章 1. 基本原理TLS 依赖两种加密技术: 对称加密(symmetric encryption)非对称加密(asymmetric encryption)1.1 对称加密加密方和解密方共享
随着微服务的兴起,行业里出现了非常多优秀的微服务网关框架,今天教大家搭建一套国人,用Golang写的微服务网关框架。这里啰嗦一句,可能到今天还有人不理解什么是微服务,为什么要用微服务。目前网上相对比较模糊,没有精确的定义,但大家的意思都差不多,这里个人通俗描述,就是小项目发展到大项目过程中,出于已维护,与稳定性等考虑,将一个整体项目分为多个微小服务。微服务网关的作用是在用户第一个网关服务器,你按照
转载 2024-01-29 20:51:00
106阅读
椭圆曲线加密算法,即:Elliptic Curve Cryptography,简称ECC,是基于椭圆曲线数学理论实现的一种非对称加密算法。相比RSA,ECC优势是可以使用更短的密钥,来实现与RSA相当或更高的安全。据研究,160位ECC加密安全性相当于1024位RSA加密,210位ECC加密安全性相当于2048位RSA加密。
原创 精选 2018-01-05 14:00:13
10000+阅读
5点赞
3评论
首先,需要了解的是,不管什么语言,只要是aes加密解密,所有的参数(包括密钥/向量/基数)都对了,加密和解密结果一定是一样的。在阅读的过程中,可能会有些词,看不懂是啥意思,比如 加密块大小BlockSize,加密向量IV,密钥Key,不着急,之后会有解释 ~C++使用的是三方库OpenSSL,文章最后,会提供openssl编译过的库,告诫下试图根据某些语言中的Aes-CBC代码过程,翻译成C++版
转载 2024-04-12 09:49:33
1024阅读
当开发登录验证系统的时候 现在基本都是使用的jwt来实现的权限校验 这时候就涉及到了jwt的加密和解密 可以参考下面的使用方法 tools/jwt.go package tools import ( "github.com/dgrijalva/jwt-go" "time" ) const SECRE
原创 2021-09-14 15:34:21
1771阅读
RC4加解密简介RC4不是对明文进行分组处理,而是字节流的方式依次加密明文中的每一个字节,解密的时候也是依次对
原创 2022-03-25 15:31:53
662阅读
  • 1
  • 2
  • 3
  • 4
  • 5