private void Initialize(byte[] crl) { m_bufferSize = crl.Length; m_pBuffer = Marshal.AllocHGlobal(m_bufferSize); Marshal.Copy(crl, 0, m_pBuffer, m_bufferSize); SaveUnmanagedPointer(m_pBuffer); m_signedCrl = Win32.Decode_CERT_SIGNED_CONTENT_INFO(m_pBuffer, crl.Length); Win32.CRL_INFO info = Win32.Decode_CERT_INFO(m_signedCrl.ToBeSigned.pbData, m_signedCrl.ToBeSigned.cbData); Issuer = Win32.Decode_CERT_NAME_BLOB(info.Issuer); UpdateTime = Win32.Decode_FILETIME(info.ThisUpdate); NextUpdateTime = Win32.Decode_FILETIME(info.NextUpdate); }