protected override bool ReleaseHandle()
        {
            bool successfullyFreed = CapiHelper.CryptDestroyKey(handle);

            Debug.Assert(successfullyFreed);
            return(successfullyFreed);
        }
        protected override bool ReleaseHandle()
        {
            bool successfullyFreed = CapiHelper.CryptDestroyKey(handle);

            Debug.Assert(successfullyFreed);

            SafeProvHandle parent = _parent;

            _parent = null;
            parent?.DangerousRelease();

            return(successfullyFreed);
        }