Как зашифровать строку с помощью InstallScript - PullRequest
0 голосов
/ 16 декабря 2009

Я создаю установщик, используя MSI-проект InstallScript. Во время установки я сохраняю некоторую информацию в локальный файл. Этот файл создается на основе предпочтений пользователя и может содержать конфиденциальную информацию.

Я хотел бы зашифровать эту информацию, но не смог найти ни одной функции InstallScript, чтобы справиться с этим. Я знаю, что файлы компонентов могут быть зашифрованы, но этот файл создается во время установки и не является частью определенной функции.

Кто-нибудь знает способ шифрования строк с помощью InstallScript?

Спасибо!

1 Ответ

1 голос
/ 03 марта 2010

Как KMoraz писал - я не знаю встроенной функции для этого.

Для чего это стоит - то, как я это делаю, - использую внешнюю COM DLL для шифрования / дешифрования.
Разумеется, вам потребуется получить / создать такую ​​DLL-библиотеку для использования и развернуть ее вместе с установкой.
(Я использую чистую установку installscript - не MSI)

function STRING Encryption(bEncrypt,sInput)
    STRING  sEncryptionKey, sResult;
    OBJECT  oEncryption;
begin 
    try 
        // create encryption key
        sEncryptionKey = "key";

        // create COM object
        set oEncryption = CoCreateObject("Encryption");
        if (IsObject(oEncryption)) then
            // set encryption key
            oEncryption.Initialize(sEncryptionKey);
            if (bEncrypt = TRUE) then
                sResult = oEncryption.Encode(sInput);
            else    
                sResult = oEncryption.Decode(sInput);
            endif;
        endif;
        // free object
        set oEncryption = NOTHING;
    catch
        sResult = "";
    endcatch;

    return sResult;
end;

Надеюсь, это поможет.

...