AutoIt
AutoIt
IKOF Generation Code for Montenegro Fiscalization Service
See more _Miscellaneous_ Examples
Demonstrates computing the IKOF MD5 summary value as described in section 4.3 of this document: https://poreskauprava.gov.me/ResourceManager/FileDownload.aspx?rId=416042&rType=2Chilkat AutoIt Downloads
Local $bSuccess = False
; This example requires the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
Local $sConcatenatedParams = "12345678|2019-06-12T17:05:43+02:00|9952|bb123bb1231|cc123cc1231|ss123ss123|199.01"
; Get the private key from a pfx file.
$oPfx = ObjCreate("Chilkat.Pfx")
$bSuccess = $oPfx.LoadPfxFile("qa_data/pfx/cert_test123.pfx","test123")
If ($bSuccess = False) Then
ConsoleWrite($oPfx.LastErrorText & @CRLF)
Exit
EndIf
$oPrivKey = ObjCreate("Chilkat.PrivateKey")
$bSuccess = $oPfx.PrivateKeyAt(0,$oPrivKey)
If ($bSuccess = False) Then
ConsoleWrite($oPfx.LastErrorText & @CRLF)
Exit
EndIf
; Create IIC signature according to RSASSA-PKCS-v1_5 using SHA256
$oRsa = ObjCreate("Chilkat.Rsa")
$bSuccess = $oRsa.UsePrivateKey($oPrivKey)
If ($bSuccess = False) Then
ConsoleWrite($oRsa.LastErrorText & @CRLF)
Exit
EndIf
; PKCS-v1_5 is used by default.
$oRsa.EncodingMode = "hex"
$oRsa.Charset = "utf-8"
Local $sHexSig = $oRsa.SignStringENC($sConcatenatedParams,"sha256")
ConsoleWrite("Signature value result is: " & $sHexSig & @CRLF)
; Compute the MD5 hash of the bytes.
$oCrypt = ObjCreate("Chilkat.Crypt2")
$oCrypt.EncodingMode = "hex"
$oCrypt.HashAlgorithm = "md5"
$oBd = ObjCreate("Chilkat.BinData")
$oBd.AppendEncoded($sHexSig,"hex")
Local $sMd5_summary = $oCrypt.HashBdENC($oBd)
ConsoleWrite("MD5 summary value is: " & $sMd5_summary & @CRLF)