为了账号安全,请及时绑定邮箱和手机立即绑定

函数改变字节切片参数

函数改变字节切片参数

Go
慕容708150 2021-09-10 09:54:00
我有以下代码,其中有一段带有字母表的字节,我将这个字母表数组复制到一个新变量(加密密钥)中,然后使用一个函数对其进行洗牌。结果是字母表和加密密钥字节片被打乱。我怎样才能防止这种情况发生?package mainimport (    "fmt"    "math/rand")func main() {    alphabet := []byte("ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz.")    cryptkey := alphabet    fmt.Println(string(alphabet))    cryptkey = shuffle(cryptkey)    fmt.Println(string(alphabet))}func shuffle(b []byte) []byte {    l := len(b)    out := b    for key := range out {        dest := rand.Intn(l)        out[key], out[dest] = out[dest], out[key]    }    return out}结果 :ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz。miclOfEInzJNvZe.YuVMCdTbXyqtaLwHGjUrABhog xQPWSpKRkDsF
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 163 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信