小编Ste*_*atz的帖子

为什么 crypto/rsa 库中的 Go 函数 EncryptOAEP 需要随机 io.Reader?

我正在编写一个文件服务器,它在客户端加密数据,通过 TCP 发送数据,并使用非对称 RSA-OAEP 加密在服务器端解密。我一直在尝试使用两个主要函数,它们根据文档采用以下参数

EncryptOAEP(hash hash.Hash, random io.Reader, pub *PublicKey, msg []byte, label []byte) (out []byte, err error)
DecryptOAEP(hash hash.Hash, random io.Reader, priv *PrivateKey, ciphertext []byte, label []byte) (msg []byte, err error)
Run Code Online (Sandbox Code Playgroud)

每个都需要一个random io.Reader测试文件使用rand.Reader来自 crypto/rand 的。但是,每当我在客户端加密消息时rand.Reader,该消息永远不会在具有单独的rand.Reader.

  1. 的目的是什么random io.Reader
  2. 如何确保服务器正确传输和解密加密消息?我是否还需要将有关rand.Reader客户端使用的一些信息传输到服务器以便正确解密消息?

encryption cryptography tcp rsa go

2
推荐指数
1
解决办法
3205
查看次数

标签 统计

cryptography ×1

encryption ×1

go ×1

rsa ×1

tcp ×1