Security issues are almost ignored in the current version. Even if a PersistentPointer object is read-only-grabbed, the user can freely modify the pointed object. Furthermore, the contents of the pointers are not protected from illegal modification via cast operations. This problem may be of the C++ language itself, not of the persistent storage.
The current system is stable and safe on condition that the user does not violate the assumed conventions of object manipulations as in the usage of the new and delete operators. For example, the PersistentPointer objects must not be exchanged outside of the process. There must be another representation of the pointers and objects.