I will give my understanding of the method in the link which you provide. .The aim of VerifyDetachedSignature is to determine whether the Signature property verifies using the public key in the signature.
- Use xmlDocument.Load() to convert the file to xml. If it is failed with the error CryptographicException, it means the value parameter does not contain a valid SignatureValue/SignedInfo property.If it success, it must include the element Signature.
- Then find the "Signature" node to create a new XmlNodeList object.
- Load XmlNodeList object into signedXml
- Finally to check the Signature whether use the the public key in the signature