Posts by Matt

Welcome to our brand new Clickteam Community Hub! We hope you will enjoy using the new features, which we will be further expanding in the coming months.

A few features including Passport are unavailable initially whilst we monitor stability of the new platform, we hope to bring these online very soon. Small issues will crop up following the import from our old system, including some message formatting, translation accuracy and other things.

Thank you for your patience whilst we've worked on this and we look forward to more exciting community developments soon!

Clickteam.

    _kbhit() appears to be used for console program input. I'm not sure if this is the best function to use, but you can try GetKeyboardState or GetKeyState.

    Please login to see this link.

    A better method than doing a state check in HandleRunObject is to just check for key state messages in the WindowProc function in Runtime.cpp. The messages of concern are:
    WM_KEYDOWN
    WM_SYSKEYDOWN
    WM_KEYUP
    WM_SYSKEYUP

    Please login to see this link.
    Please login to see this link.

    Hello, everyone,

    I have attached a new version (1.06b) of the Blowfish object for testing purposes. I have fixed some bugs and added some new functionality. If anyone has ever attempted to use data encrypted with the Blowfish object with other implementations of Blowfish on other platforms, I'd appreciate testing that out with this new version using the new "Reverse Bytes Mode."

    Changes from 1.05 to 1.06
    -Added a new option "Reverse Bytes Mode" which simply reverses the bytes of data before and after encryption/decryption. This should make the Blowfish Object compatible with other Blowfish implementations.
    -Removed checks on key length expect when adding a new key or when creating a random key.
    -Added advanced actions for adding keys, encrypting strings, and decrypting strings. These new actions allow for data to be specified in different formats: raw strings, filtered strings, or hex strings.
    -Added the ability to give keys aliases.
    -Added new cipher block modes for encrypting and decrypting: cipher-block chaining (CBC), cipher feedback (CFB), and output feedback (OFB).
    -Added a new error code for invalid initialization vectors.
    -Rewrote the file-handling routines. Before, the whole file was loaded into memory, encrypted or decrypted, and then written back to file. Now, the file is encrypted or decrypted in chunks.
    -Added support for large files. I'm not sure how larger file sizes will impact the old "Get File Size" expression which does not support larger file sizes.
    -Added new "Get File Size as Float" and "Get File Size as String" expressions to allow for larger file sizes to be accessed.
    -Added new actions for encrypting or decrypting a file to a new file (as opposed to overwriting the original file).
    -Made some spelling corrections.

    Thanks,
    -Matt

    Blowfish doesn't add any characters to your data. It only encrypts the data that's there. It will convert filtered characters to a special code (but it should unfilter those on decryption). It should decrypt the data back to its original form. If you send me an example, I can see if there's a bug.

    I was just wondering how people felt about MMF2's Debugger. Do most people find it useful? Would you like more extensions to make use of it? Or anything you'd like to say about it.

    I ask because I've begun toying around with my extensions again and was wondering if it's worth the effort to implement the debugger.

    Thanks,
    -Matt

    Here is the relevant info from the help file:
    EncryptString$(ObjectName, Key, String)
    This expression returns the encrypted string. It encryptes using Key (the key must be added before it can be used here). If Key does not exist an error is generated and the un-encrypted version is returned. The string is harmlessly padded with NULL characters to ensure that it is a multiple of 8 characters long. If any filter characters appear in the encrypted string, they are replaced by %xx, where xx is the ASCII code of the character in hexadecimal.

    There are two things to be wary of when encrypting strings:
    1) If the string is not a multiple of 8 in length, it will be padded with NULL characters. I'm not sure how doing this will affect the PHP, but it should be fine.
    2) Strings are not a good way to represent binary data, so the Blowfish object will convert some characters to %xx, where xx is the two-digit hexadecimal ASCII code for the character. You need to make sure that you convert these back to their correct values before trying to decrypt them in PHP.