XML HMAC-SHA1 kullanarak SignatureValue oluşturuluyor

0 Cevap php

Imza yöntemi HMAC-SHA1, ve ben zaten <SignedInfo> oluşturulan var. Sorun HMAC hesaplamada anahtar olarak kullanmak ne emin değilim olmasıdır.

Ben iki <Entropy> ilk isteği (RST) ve tepki (rstr) dan <BinarySecret> kuşatan orada olduğunu fark ettim. Ben bu gelen <ComputeKey> etiketinde belirtilen I <BinarySecret> bu iki ikili değerler kullanılarak ve PSHA1 bir kanıtı anahtar oluşturabilir olduğunu gösterir WS-Trust okunan yanıtı. Ancak, servis sağlayıcıdan numunede biri olarak aynı imza değerini asla olabilir.

Herhangi bir bilgi yardımcı olacaktır!

Örnek olarak:

  • The binary secret from RST is grrlUUfhuNwlvQzQ4bV6TT3wA8ieZPltIf4+H7nIvCE=
  • The binary secret from RSTR is YLABh3ZmZyiO5gvVLZe9J4JPd9w59KGeTFwE85XlzxE=
  • The correct signature value is nXJEN8p1nupMA/00TK03VZlADkU=
  • The signature value I generate is bEGpeRFsznafFRf86g281zKV3Ro=
  • SignInfo içeriği aşağıdaki gibidir
<SignedInfo>
   <CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
   <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#hmac-sha1"/>
   <Reference URI="#_0">
    <Transforms>
     <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
    </Transforms>
    <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
    <DigestValue>CwMGnFZklO7XsDfFguzl0tw7iHM=</DigestValue>
   </Reference>
  </SignedInfo>

0 Cevap