Encryption Problem
Hi,
if i try to encrypt a String like "ABCDEFGHIJKLMN"
with the key like "mykey" then
i get a different signature to the php encryption with the same
Strings.
PHP Syntax:
------------------------
$myHash = 'ABCDEFGHIJKLMN';
$myKey = 'mykey';
echo base64_encode(hash_hmac('sha1', $myHash, $myKey, true));
CF Syntax:
------------------------
cfset baseString = 'ABCDEFGHIJKLMN'
cfset key = 'mykey'
cfset secret = createObject("java", "javax.crypto.spec.SecretKeySpec" )
cfset secret.init(baseString.GetBytes(), "HmacSHA1")
cfset mac = createObject( "java", "javax.crypto.Mac" )
cfset mac = mac.getInstance("HmacSHA1")
cfset mac.init(secret)
cfset encoder = createObject( "java", "sun.misc.BASE64Encoder" )
cfset digest = encoder.encode(mac.doFinal(key.GetBytes()))
cfset digest = toString(digest)
cfoutput#digest#/cfoutput
Funny part is, if i set the basestring and the key to "TEST"
i get same results in PHP and CF
Hope you guys can help me 😕😕
Greetings
Simon
