首页 > 代码库 > Go学习——密码学
Go学习——密码学
package main import ( "crypto/aes" "fmt" "strings" ) func main() { //////////////------AES加密------////////////// //秘钥 16/24/32bytes对应AES-128/AES-192/AES-256. key := []byte{ 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, } fmt.Println("每次加密的字节数:", aes.BlockSize) //明文 cleartext := make([]byte, aes.BlockSize) strings.NewReader("I‘m a cleartext!").Read(cleartext) //密文 ciphertext := make([]byte, aes.BlockSize) cip, _ := aes.NewCipher(key) //加密 cip.Encrypt(ciphertext, cleartext) fmt.Println("明文:", cleartext) fmt.Println("密文:", ciphertext) //解密 cip.Decrypt(cleartext, ciphertext) fmt.Println("密文:", ciphertext) fmt.Println("明文:", cleartext) fmt.Printf("明文: %s", cleartext) //////////////------AES加密------////////////// }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。