OpenSource website - Ideas

Fix pval project

Fix pval project. Needed:

pval is small tool for pretty print big integer values like file size or bandwidth instead of bytes e.g. in GiBs.

Add bug tracker

Setup and share bug tracker for kit open sources project. Repository will not be available because of semi-commercial project nature. All public sources will be shared on sources suburi.

Add multiple taps support in kit-easy-tap

Add support for create more then one TAP device during startup.

More strong compression threads in kit-static-scgi

Now kit-static-scgi use 1 thread with poll for traffic and 2nd for independent strong compression independent of traffic support. Add support for more then 1 extra threads as static number or dynamic (min...max).

Write framework for easy driver develop

Write C framework for easy PCI/PCI-E driver develop under Linux and BSDs. Framework should use API 1:1 compatible with kernel internals and use IOMMU (VT-d/AMD-Vi) as access interface independent from rest of kernel and executed in non privileged CPU instructions level.

Replace popen from kit-static-scgi

kit-static-scgi use popen for get fast compression on the fly from compressor process. Replace it with raw exec pipe and without using malloc (alloca is faster).

Fix HW AES implementation on ARM CPUs

Missing stack save (misused ABI) in ARM assembler code with support AES CPU instructions.

There are two implementations for Linux: aarch64 and 32bit execution mode on aarch64 CPUs.

Share wiki pages

Add public wiki pages for share:

Add demonize option for kit-easy-tap

Add option for demonize kit-easy-tap without other tools. It will allow to easy start and move to background this tool with started application.

HTTP/2 support in kit-static-scgi

Add normal support for HTTP/2 in kit-static-scgi. Now all request are processed as HTTP/1.0 or HTTP/1.1 without verify right version. Adds normal support for HTTP/2 is needed.

Implement XML<->JSON<->YAMS stream converter

Implement 3 pair of tools for stream convert between:

Tools could based on kit-data-proc project and work with stream instead of load full documents.

implement UNG in kit-crypto-c

Implement simple Unpredictable Numbers Generator in kit-crypto-c library. UNG will be initialize by "some" seed. Seed will be hashed by SHA2 (e.g. 32bit SHA-256 on 32bit CPU target, and 64bit SHA-512 on 64bit CPU target). Generating next bytes will be in loop by coping 4/8 bytes at one iteration from part of current hash, but next well be calculated from full hash. Others parameters could be analyzed.

SIMD DFT PoC for ARM

Check possible performance of DFT implementation with ARM SIMD instruction set.

Current PoC was written in C and manually optimize in assembler for x86-64 SIMD (SSE2 only). For doubles speedup is around 2x.

Need to check similar compare on ARM CPUs.

Additional fix sign in IM part of result: sin is shift for 180deg and addition should be replaced for subtraction.

Add optional download couters for kit-static-scgi

Add support for download counters for kit-static-scgi. Counters could be used for statistic of compression method popularity.

bigints and RSA support in kit-crypto-c

Add implementation for bigints and RSA cipher info kit-crypto-c library.

bigints will be implemented in plain C and manually optimized in assembler at least for: i386; i586: MMX, SSE2, (AVX, AVX2); x86_64: SSE2, (AVX, AVX2); armv7; aarch64. C implementation needs to support architectures without integer div instruction, BE and LE, 32/64bits cases available for support in C and other. No only school algorithms will be implement.

RSA and kit-rsa variant (see kit-rsa) will be added to API.

Add multi pipe SSE/AVX processing for kit-crypto-c

Add support for multi pipe ciphers processing in kit-crypto-c. Modern X86/X86_64 CPUs with SSE/AVX instruction can process more then 1 cipher at the time with the same instructions - without more threads. E.g. encrypt/decrypt with twofish 128 can be executed for 4/8 block (and keys) independently because there aren't any condition instruction.

Krypto-IT OpenSource
Krypto-IT Jakub Juszczakiewicz