protected UserHeaderType BuildUser(BasicHeaderType header)
 {
     if (header == null)
     {
         throw new ArgumentNullException("header");
     }
     using (var sha = SHA512.Create())
     {
         BinaryString signatureSource = header.RequestId + header.Timestamp.ToUniversalTime().ToString("yyyyMMddHHmmss") + secretKey;
         HexString    sig             = sha.ComputeHash(signatureSource);
         return(new UserHeaderType
         {
             PasswordHash = passwordHash,
             User = username,
             VATNumber = vatNumber,
             RequestSignature = sig
         });
     }
 }
 /// <summary>
 /// set the header.
 /// </summary>
 /// <param name="regInterface">
 /// the registry interface.
 /// </param>
 /// <param name="beans">
 /// The beans.
 /// </param>
 /// <param name="receivers">
 /// The receivers.
 /// </param>
 public static void SetHeader(RegistryInterfaceType regInterface, ISdmxObjects beans, params string[] receivers)
 {
     var header = new BasicHeaderType();
     regInterface.Header = header;
     SetHeader(header, beans, receivers);
 }