Jump to content

Angus Robertson

Members
  • Content Count

    1788
  • Joined

  • Last visited

  • Days Won

    33

Posts posted by Angus Robertson


  1. OpenSSL has released new versions of the three active branches.

     

    These fix a low severity security issue which is a possible denial of service when checking long DH parameters which ICS does no longer uses, but could potentially be used in certificates for malicious web sites.

     

    Windows binaries are available in SVN and the overnight zip file (tomorrow) and separately from

     

    https://wiki.overbyte.eu/wiki/index.php/ICS_Download or https://www.magsys.co.uk/delphi/magics.asp

     

    Separately, YuOpenSSL has released 3.0.10 and 1.1.1v as commercial DCUs allowing applications to be used with OpenSSL without needing separate DLLs.

     

    Angus

    • Thanks 1

  2. Sorry, I updated various definitions from the 'latest' JWA file and that is also missing the semicolons. 

     

    I'll update it again, should be in SVN tomorrow. 

     

    In about a week, can you please check for other C++ errors in the overnight zip, the next release will be the last to support these old compilers, and maybe C++. 

     

    Angus


  3. Although we distribute OpenSsl.exe, it is not something we support, there are numerous online resources devoted to OpenSSL scripts, which many people use, but Delphi users normally write code with the APIs. 

     

    You can test signing text and streams with the OverbyteIcsJoseTst sample, and the OverbyteIcsPemtool sample has some very old encryptions functions on the Extras menu, but there has never been demand for encryption using OpenSSL since there are native Delphi packages around.

     

    Angus

     

     

     


  4. SVN and the overnight zip include changes that allow ICS SSL servers to use certificates from the Windows Certificate Store instead of using disk files. 

     

    Apart from rebuilding, no code changes are needed, simply add one line to the server configuration file. 

     

    The HTTP Rest sample will be updated shortly to use a client certificate from the Windows Store. 

     

    There is now a simple method LoadOneFromStore that creates a bundle in a TX509Base with certificate, private key and intermediates that can be used in any ICS projects, it can be tested in the PemTool sample. 

     

    Angus

     

    • Like 1

  5. I only work with Delphi and Windows platforms, any support for C++ or other platforms in ICS is dependent on other developers, and such contributions are very rare. C++ support will cease unless someone comes forward to take responsibility for it. 

     

    I have no commercial need for mobile platforms, and my own requirements are the driving force behind my contributions to ICS over the last 20 years. 

     

    Angus

     

    • Thanks 1

  6. The debug output I see daily with internet applications and Windows 11 is:

     

    onecore\net\netprofiles\service\src\nsp\dll\namespaceserviceprovider.cpp(550)\nlansp_c.dll!
    708884C8: (caller: 76C0E326) LogHr(10) tid(4f74) 8007277C No such service is known. The service cannot be found in the specified name space.

     

    Guess Microsoft does not run it's own applications under a debugger.

     

    Angus

     


  7. If the connection is closed prematurely, you have no idea how much data the remote client successfully read. 

     

    So your high level protocol needs some method of confirming how much data was received and what to send.  The FTP and HTTP protocols allow such thing, in different ways.

     

    A few months ago, I was debugging the ICS FTP client and server handling resumed transfers of 50GB files over the public internet, which was fun.  They always worked on a LAN, but the FTP control connection was being closed by some horrible router somewhere after an hour or two of inactivity.  But it alll works now.

     

    Angus

     


  8. Sorry, no more suggestions, there is no reason to get all those OpenSSL errors. 

     

    Can PemTool open existing P12/PFX files with a password?  My PemTool built last week with Delphi 2007 works fine. 

     

    I'll test PemTool on Delphi 7, but it won't be for a couple of weeks until I do the final new release.

     

    Angus

     


  9. Before I spend any time looking at this, can you reproduce it using PemTools. 

     

    I know this all works since all my Let's Encrypt p12 files use 3DES so they can be loaded by old versions of Windows, in the SslX509Certs unit:

     

         { V8.67 is 3DES available, prefer that so older versions of Windows will load our PFX file }
            if (ICS_OPENSSL_VERSION_MAJOR < 3) or ICS_OSSL3_LOADED_LEGACY then
                P12KeyCipher := PrivKeyEncTripleDES

     

    Angus

     


  10. Because ICS does not have a native SHA-256 implementation, it now uses OpenSSL for digest operation. 

     

    But there is no check in those digest functions to ensure OpenSSL is loaded, I'll add a new specific exception for that. 

     

    To fix the problem, you just need to call LoadSsl or IcsLoadSsl before using the component and make sure the DLLs are available.

     

    Angus

     

×