Chilkat v11.0.0 Release Notes

Previous Version: Chilkat v10.1.3 Release Notes Backward Compatibility: This is a major version release that includes some backward incompatible changes. The web pages at Chilkat v11.0.0 Backward Incompatible Changes provide details. New Methods and Properties: There are a many new methods and properties that have been added. Almost all are in one of the following categories: 1) For methods that […]

Chilkat v10.1.3 Release Notes

Previous Version: Chilkat v10.1.2 Release Notes This minor release was made shortly after v10.1.2, mainly to fix the Email FROM header bug introduced in v10.1.2. Socket: Added the GetAdaptersAddresses method to get the local LAN IP address and MAC address for each network adapter. Email: Fixed a problem relating to quoted-printable FROM names in the email MIME header. This was […]

Chilkat v10.1.2 Release Notes

Next Version: Chilkat v10.1.3 Release Notes Previous Version: Chilkat v10.1.0 Release Notes XmlDSigGen: In v10.0.0 Chilkat started automatically using and fixing for SigningCertificateV2 for cases where the xmlns:xades=”http://uri.etsi.org/01903/v1.3.2#” (and also v1.4.1 and v1.4.2), which is technically correct. However many govt validators, specifically Poland, Saudia Arabia, and others, reject XML signatures using SigningCertificateV2. Chilkat backed out this “fix” and will revisit […]

Chilkat v10.1.0 / v10.1.1 Release Notes

Next Version: Chilkat v10.1.2 Release Notes Previous Version: Chilkat v10.0.0 Release Notes Prepare for Future Major Version Releases Global.DefaultUtf8: For programming languages where strings are null-terminated byte sequences (e.g., C, C++, Perl, Python 2.*, PHP, Ruby), set the Global.DefaultUtf8 property to true or false at the start of your application, ideally when calling UnlockBundle. The default value is currently false […]

Chilkat v10.0.0 ActiveX Registration and Object Creation

Chilkat adopted standard semantic versioning starting with Chilkat version 10.0.0.  See https://cknotes.com/semantic-versioning-starting-with-chilkat-10-0-0/ For this discussion, it’s important to understand the fundamentals of ActiveX registration.  To ensure a basic understanding, I recommend briefly reviewing the tutorial web pages at https://chilkatsoft.com/activex_dll_registration_tutorial.asp It should take only 10 minutes, and I promise it will save you much time and frustration. ActiveX Object Creation / […]

Semantic Versioning Starting with Chilkat 10.0.0

Starting with the v10.0.0 release (end of September 2024), Chilkat moves to standard semantic versioning.   Prior to this release, for various technical reasons, Chilkat was stuck with versions 9.5.0.xx, where only xx changed. For this first leap to semantic versioning, where the major version changes to 10 (from 9), there are no backward incompatible changes.  Going forward, when we move […]

Chilkat v11.0.0 ActiveX Object Creation

Starting in Chilkat v11.0.0, applications using CreateObject (or similar) should pass an identifier beginning with “Chilkat.”.   If your application uses “Chilkat_9_5_0.”, then strings must be updated to use “Chilkat.”.  For example: The reference documentation web page for each Chilkat ActiveX object shows the object creation statements for various programming languages.  For example: (ASP) set obj = Server.CreateObject(“Chilkat.Http”) (AutoIt) $obj = […]

Crypt2.SetEncodedKey – Help! I Passed a non-Hex String but Told Chilkat it was Hex

You made a mistake and set an AES encryption key in the wrong way like this: Chilkat.Crypt2 crypt = new Chilkat.Crypt2(); crypt.KeyLength = 256; crypt.CryptAlgorithm = “aes”; // This is the error. We passed base64 (or anything that is NOT a hexidecimal string) // And then asked Chilkat to decode it as hex. crypt.SetEncodedKey(“rZFNAfY7CirLtWxKiRU187k9mqcGCBZnV4QrmBvsboE”,”hex”); And then we proceeded to encrypt […]

Using a .nupkg for Temporary Development Use

To add a reference to a “.nupkg” file (a NuGet package) in a .NET 6.0 project, you can follow these steps: Option 1: Add the .nupkg File to a Local NuGet Source Create a Local NuGet Source: Place your “.nupkg” file in a folder, e.g., “C:\NuGetPackages”. Configure the Local Source in NuGet: Open a terminal or command prompt and run: […]

Be Careful when Using non-us-ascii String Literals in Source Code

When using non-US-ASCII literal strings (e.g., accented characters like “é”, “ü”, or symbols from other scripts like “你好”) in source code, it’s crucial to handle them carefully due to potential issues with encoding, interpretation, and compatibility. Here’s an explanation of key considerations: 1. Source Code File Encoding Encoding Matters: The source code file must be saved in an encoding that […]

RSA Encryption Maximum Number of Bytes

The maximum number of bytes you can encrypt using RSA depends on the key size and the padding scheme. 1. Key Size The RSA key size determines the maximum size of the plaintext that can be encrypted. The larger the key size (e.g., 1024, 2048, 4096 bits), the larger the block of plaintext that can be encrypted. However, the actual […]

More Information about RSA OAEP Padding for Encryption

Optimal Asymmetric Encryption Padding (OAEP) is a padding scheme used in RSA encryption to provide additional security by introducing randomness and structure to the plaintext before encryption. Key Features of OAEP Padding Randomness: Incorporates a randomly generated seed to ensure the same plaintext encrypts to different ciphertexts each time, enhancing security. Two-step Masking: Uses a Mask Generation Function (MGF) to […]