完成后安全地擦除/擦除gRPC / Netty ByteBuf吗?

时间:2018-12-19 13:19:44

标签: netty grpc grpc-java

在接收和发送敏感数据(当然使用TLS)之后,我想尽快擦除信息,而不是等待Netty ByteBuf / ByteBuffers被重用或垃圾回收(和重用)。如何做到最好?

理想情况下,该解决方案应该在代码中的一点上完成,并且最好在Netty上运行时也可以与gRPC一起使用。

我注意到有ByteBuf.release(),Cleaner.freeDirectByteBuffer(),PoolArena.destroyChunk(),AbstractReferenceCountedByteBuf.deallocate()等,但是如果不修改Netty本身,它们似乎都很难被覆盖或替换。还是添加到Netty会是一个不错的功能?

1 个答案:

答案 0 :(得分:1)

看来,您在完成zero-out内存之后正在寻找一种方法。您可以为此编写自己的ByteBufAllocator,并将其用于所有Channel