Simple cryptography in AX
Views (4008)
There are methods in AX which allow to encrypt and decrypt data easily. Those methods are WinAPIServer::cryptProtectData() for encryption and WinAPIServer::cryptUnProtectData() for decryption. As input and output parameters these methods use CryptoBlob extended data type, which is a container. However, this is not an arbitrary container. It should contain only bytes (integers in the range 0-255). There are methods on the Global class which allow to convert from and to CryptoBlob type, for example, Global::binary2cryptoblob() and Global::cryptoblob2binary().
Sample usage:
public static void cryptoTest()
{
str text = "Here goes some text";
CryptoBlob encryptedCryptoBlob;
str decryptedText;
;
encryptedCryptoBlob = WinAPIServer::cryptProtectData(str2cryptoblob(text));
conview(encryptedCryptoBlob);
decryptedText = cryptoblob2str(WinAPIServer::cryptUnProtectData(encryptedCryptoBlob));
info(decryptedText);
}
Sample usage:
public static void cryptoTest()
{
str text = "Here goes some text";
CryptoBlob encryptedCryptoBlob;
str decryptedText;
;
encryptedCryptoBlob = WinAPIServer::cryptProtectData(str2cryptoblob(text));
conview(encryptedCryptoBlob);
decryptedText = cryptoblob2str(WinAPIServer::cryptUnProtectData(encryptedCryptoBlob));
info(decryptedText);
}
This was originally posted here.

Like
Report
*This post is locked for comments