1. A method comprising: forming, by a first device, a plurality of memory chunks including a plurality of memory blocks that correspond to a plurality of objects; receiving, by the first device and from a second device, a first request for a list of the plurality of objects; generating, by the first device and based on the request, a plurality of pointers pointing to the plurality of objects; buffering, by the first device, the plurality of pointers; providing, by the first device, the list of the plurality of objects corresponding to the buffered plurality of pointers to the second device; receiving, by the first device and from the second device, a second request to access contents of a first buffered pointer of the plurality of buffered pointers; performing, by the first device and based on the second request, a validation of the first buffered pointer; dereferencing, by the first device, the first buffered pointer when a result of the validation indicates that the first buffered pointer points to a particular object stored in a particular memory block of the plurality of memory blocks; providing, by the first device, the particular object to the second device; determining, by the first device, that a third device is attempting to access the particular memory block; and denying, by the first device, the third device access to the particular memory block based on the providing the particular object to the second device.