Get Thumbprints from Windows Catalog File on Linux

This article is related to the “Windows Catalog Files” post and describes how to parse catalog file using posix c++ on Linux platform. On Windows as it is mentioned in “Windows Catalog Files” it is possible to retrieve thumbprints with mscat.h API. The Linux parsing method is based on searching positions of some OIDs… Read More »

Simple WebSocket Test on the Server Side

WebSocket protocol is a suitable way to create a reliable two directional connection between a server and a client. WebSocket is using the same ports as HTTP/HTTPS protocols: 80 and 443. However very frequently WebSocket is not such transparent as HTTP and may be blocked by firewalls, proxy or antivirus applications. Anyway if multiple WebSocket… Read More »

Windows Catalog Files

Windows Catalog file is used to store hash checksums or thumbprints of any collection of files to validate its authenticity. Besides the Catalog file may be digitally signed and be used as group digital signature of the files which thumbprints are presented in this Catalog file. Catalog file may be generated from text catalog definition… Read More »

Alice, Bob and Asymmetric Cryptography

I suppose a lot of people know about Alice and Bob, the characters of many cryptographic tales. Previously I posted article “Encrypt and Decrypt Data on Linux Devices using OpenSSL” which explains how encrypt and decrypt files in symmetric way, currently I want to do the same using asymmetric cryptography, exactly how Alice and Bob… Read More »

Experimenting with ECB and CBC Ciphers of AES

The openssl help shows 2 groups ciphers with ECB (Electronic Code book) and CBC (Cipher Block Chaining) suffixes. For example aes-128-ecb and aes-128-cbc or aes-256-ecb and aes-256-cbc for AES (Advanced Encryption Standard) ciphers. In ECB mode input data is divided in blocks of the same length. Then every block will be encrypted with the same… Read More »

Changing Certificate Verification Flags in openssl

Recently I was needed to modify some flags for verification of X.509 public key certificates. These flags defined in x509_vfy.h include files. Particularly it was necessary to set X509_V_FLAG_X509_STRICT flag, which enables additional security checks and turns off workarounds for broken certificate chain. In other words this flag makes the certificate verification more strictly. This… Read More »

Big Sur and built-in dynamic linker cache

On Big Sur Apple made significant changes in OS X file system. System-provided libraries are moved from filesystem to dynamic linker cache. Probably it is done because Big Sur OS X supports 2 different CPUs: Inter and Apple Silicon processors and currently dynamic linker cache contains 2 versions for the both processors: Apple Silicon ARM… Read More »

About dladdr function.

dladdr function from Unix-like OS looks similar as GetProcAddress Win32 API function. However dladdr obtains more information related to requested function than function entry point address as GetProcAddress does. Besides GetProcAddress requires the handle of the DLL module that contains the requested function, dladdr needs only the function name. Definitely in both cases DLL or… Read More »

Rip Audio CD Programmatically

More than 10 years ago I started XEdit project which is binary editor for files and disks contents. XEdit is available there. I am still using it sometime, however I do not support the project since 2011 mainly because this MFC application was written on Visual C++ 6 and I have no time to do… Read More »

Hotlinking protection for Dummies and against Dummies

Hotlinking means using URLs from hosted website on another website, usually it is links to images or downloadable files but not only. There are a lot of methods how protect URL from hotlinking it. Websites hosted on Apache server may prevent hotlinking using appropriate configuration defined in .htaccess files. There are WordPress plugins to block… Read More »