SSLEngine unwrap()javax.crypto.BadPaddingException:错误的记录MAC

SSLEngine unwrap()javax.crypto.BadPaddingException:错误的记录MAC,第1张

SSLEngine unwrap()javax.crypto.BadPaddingException:错误的记录MAC

您做错了。当您需要获取数据时,您应该:

  1. 从您的应用接收缓冲区中获取。
  2. 如果那是空的,请尝试
    unwrap().
  3. 如果那给您带来缓冲区下溢,请阅读该通道。

同样,当您需要放置数据时,您应该:

  1. 放入您的应用程序发送缓冲区。
  2. 如果能解决,
    wrap().
  3. 如果那给您缓冲区溢出,请写。

或者在需要冲洗时执行所有 *** 作。

您的主要接口应该与引擎一起使用,并且仅与通道有关,因为引擎告诉您有关缓冲区下溢和上溢的信息。

同样,您必须让引擎决定握手(NEED_WRAP / NEED_UNWRAP),而不是尝试决定握手。

SSLEngine
是一件非常困难的事情。许多人尝试过:很少成功。要获得成功的成功,那就是商业产品的基础,请在此处参阅
SSLEngineManager
我的书《
Java基础网络》 (Springer
2006)源代码中的类。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5427208.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存