| Contents | |
|---|---|
API Setup
|
Instantiate FES Object |
Fractal Hashing
|
Generate a fractal hash |
Fractal Encryption & Extraction
|
Transform a String Payload |
Fractal Encryption & Extraction for Byte Arrays
|
Encrypt binary data (e.g., files, streams, images) |
Silo & Key Configuration
|
Specify the Silo and Key to be used |
Advanced Options
|
Advanced Fractal Transform options |
Miscellaneous API Functions
|
DLL Status Functions |
FES DLL API
FES DLL API allows developers to integrate Fractal Encryption Standard (FES) into any Windows 32-bit compatible application. It provides quantum-proof encryption, hashing, and transformation functions through a DCOM-based, standalone DLL with no external dependencies.
✅ Supports:
✔ Fractal Encryption & Extraction (String, Byte Array, Base64)
✔ Fractal Hashing
✔ Silo Management & Key Configuration
✔ Multiple Encryption Overwrite Modes (XOR, ADD, SPLIT)
✔ Multi-Pass Fractal Transformations & Custom Dimensionality
🔹 API Setup
When you have completed FES Framework installation the FES DLL will be a registered COM object ready to instantiate in your project.
Link to the Portalz FES reference, search for 'Portalz Fractal Encryption Standard (FES) V2', and Declare an FES object:
vbPublic FES As FES_V2.clsFES
Debug.Print FES.strDLLVersion
1️⃣ Fractal Hashing
Generate a fractal hash from an input image (text) using a selected Silo and hash size.
vbDim strSilo As String
Enum e_CipherFormat
cfRaw = -1
cfBase64 = 0
cfHex = 1
End Enum
Dim strImage As String
Dim lngHashSize As Long
Dim strHash As String
dim cfCipherFormat As e_CipherFormat
strHash = FES.FractalHash(strSilo, strImage, lngHashSize)
- strSilo: Name of the Silo used for hashing.
- strImage: The input text to be hashed.
- lngHashSize: Hash size in bits (e.g., 256, 512, 1024, etc.).
- Returns: A unique fractal hash as a Base64 string.
2️⃣ Fractal Encryption & Extraction
Fractal Encrypt/Decrypt with a key and optional Fractal OTP.
Fractal OTP navigates from the primary user-key (strKey) fractal portal to a secondary OTP fractal portal that guarantees Shannon OTP conditions are met when session IDs or file path meta-data are input.
All transformation options must be set on the FES object before a transform or extract function is called.
Transform a String Payload
Encrypt a text string using Fractal Transformation.
vb
Enum e_CipherFormat
cfRaw = -1
cfBase64 = 0 '' Use options blnURLSafe and blnPadding
cfHex = 1 '' Use option blnUppercase
End Enum
Dim FES as clsFES
Dim cfCipherFormat As e_CipherFormat
Dim strCipher As String
Dim strPassword As String
Dim strPayload As String
strPassword = "Secret99"
strPayload = "Secured Text"
cfCipherFormat = cfBase64
Set FES = New clsFES
With FES
'' Optional Settings. All combinations supported. All must match to decrypt.
'' Input Options
.strFOTP = strFOTP '' Fractal OTP (Session id, unique id, file name etc)
.strSiloName = "Management" '' The name of a default or custom Silo
'' Fractal Stream Options
.lngPasses = 2 '' Fractal Stream size = length of payload x lngPasses
.lngDimensions = 8 '' Each dimension adds 112 bits to the key-space
'' Transformation Options
.blnADD = True '' Add Fractal Stream on transform, subtract on extract
.blnBITWARP = True '' Apply bit warping using Fractal Stream values
.blnFBLIT = True '' Fractal Stream primes based bit region swaps
.blnScramble = True'' Re-order bytes using Fractal Stream Values
.blnSPLIT = True '' Split bytes with Fractal Stream selected bit positions
.blnSUB = True '' Substitute bytes with Fractal Stream selected byte array
.blnXOR = True '' Apply XOR function from the Fractal Stream
'' Perform FES Transform
strCipher = .strFractalTransform(strPassword, strPayload, cfCipherFormat, blnURLSafe, blnPadding, blnUppercase)
End With
- strPayload: The plaintext message to encrypt.
- Returns: Encrypted cipher text.
Extract a String Payload
Decrypt a previously encrypted text string.
vb
Enum e_CipherFormat
cfRaw = -1
cfBase64 = 0 '' Use options blnURLSafe and blnPadding
cfHex = 1 '' Use option blnUppercase
End Enum
Dim FES as clsFES
Dim cfCipherFormat As e_CipherFormat
Dim strCipher As String
Dim strPassword As String
Dim strPayload As String
strPassword = "Secret99"
strCipher = "..." '' FES Cipher
cfCipherFormat = cfBase64
Set FES = New clsFES
With FES
'' Optional Settings. All combinations supported. All must match to decrypt.
'' Input Options
.strFOTP = strFOTP '' Fractal OTP (Session id, unique id, file name etc)
.strSiloName = "Management" '' The name of a default or custom Silo
'' Fractal Stream Options
.lngPasses = 2 '' Fractal Stream size = length of payload x lngPasses
.lngDimensions = 8 '' Each dimension adds 112 bits to the key-space
'' Transformation Options
.blnADD = True '' Add Fractal Stream on transform, subtract on extract
.blnBITWARP = True '' Apply bit warping using Fractal Stream values
.blnFBLIT = True '' Fractal Stream primes based bit region swaps
.blnScramble = True'' Re-order bytes using Fractal Stream Values
.blnSPLIT = True '' Split bytes with Fractal Stream selected bit positions
.blnSUB = True '' Substitute bytes with Fractal Stream selected byte array
.blnXOR = True '' Apply XOR function from the Fractal Stream
'' Perform FES Extract
strPayload = .strFractalExtract(strPassword, strCipher, cfCipherFormat)
End With
- strCipher: The encrypted message.
- Returns: The original plaintext message.
3️⃣ Fractal Encryption & Extraction for Byte Arrays
Transform Byte Array
Encrypt binary data (e.g., files, streams, images).
vb
Dim FES as clsFES
Dim bCipher() As Byte
Dim bPayload() As Byte
strPassword = "Secret99"
bPayload = ReadBinaryData(strPath) '' Use a binary source
Set FES = New clsFES
With FES
'' Optional Settings. All combinations supported. All must match to decrypt.
'' Input Options
.strFOTP = strFOTP '' Fractal OTP (Session id, unique id, file name etc)
.strSiloName = "Management" '' The name of a default or custom Silo
'' Fractal Stream Options
.lngPasses = 2 '' Fractal Stream size = length of payload x lngPasses
.lngDimensions = 8 '' Each dimension adds 112 bits to the key-space
'' Transformation Options
.blnADD = True '' Add Fractal Stream on transform, subtract on extract
.blnBITWARP = True '' Apply bit warping using Fractal Stream values
.blnFBLIT = True '' Fractal Stream primes based bit region swaps
.blnScramble = True'' Re-order bytes using Fractal Stream Values
.blnSPLIT = True '' Split bytes with Fractal Stream selected bit positions
.blnSUB = True '' Substitute bytes with Fractal Stream selected byte array
.blnXOR = True '' Apply XOR function from the Fractal Stream
'' Perform FES Transform
bCipher = .byteFractalTransform(strPassword, bPayload)
End With
- bPayload: Input byte array to encrypt.
- Returns: Encrypted byte array.
Extract Byte Array
Decrypt binary data.
vb
Dim FES as clsFES
Dim bCipher() As Byte
Dim bPayload() As Byte
strPassword = "Secret99"
bCipher = ReadBinaryData(strPath) '' Read binary cipher
Set FES = New clsFES
With FES
'' Optional Settings. All combinations supported. All must match to decrypt.
'' Input Options
.strFOTP = strFOTP '' Fractal OTP (Session id, unique id, file name etc)
.strSiloName = "Management" '' The name of a default or custom Silo
'' Fractal Stream Options
.lngPasses = 2 '' Fractal Stream size = length of payload x lngPasses
.lngDimensions = 8 '' Each dimension adds 112 bits to the key-space
'' Transformation Options
.blnADD = True '' Add Fractal Stream on transform, subtract on extract
.blnBITWARP = True '' Apply bit warping using Fractal Stream values
.blnFBLIT = True '' Fractal Stream primes based bit region swaps
.blnScramble = True'' Re-order bytes using Fractal Stream Values
.blnSPLIT = True '' Split bytes with Fractal Stream selected bit positions
.blnSUB = True '' Substitute bytes with Fractal Stream selected byte array
.blnXOR = True '' Apply XOR function from the Fractal Stream
'' Perform FES Extract
bPayload = .byteFractalExtract(strPassword, bCipher)
End With
- bCipher: The encrypted byte array.
- Returns: The original byte array.
5️⃣ Silo & Key Configuration
Set Silo Name
Specify the Silo to be used for encryption/hashing.
vbFES.strSiloName = "Management"
- strSiloName: Name of the selected Silo.
An FES Silo is a unique cryptographic domain that fundamentally changes how the FES transformation behaves:
- Each silo contains 65,536 unique fractal regions that serve as the basis for selecting fractal portals and path navigation during encryption.
- These regions are completely distinct from one silo to another. That means a given password combined with one silo will NOT map to the same fractal portal as the same password with another silo.
- Silos deliver Encryption Level Compartmentalization, a new security level.
See the Silo Help Page.
6️⃣ Advanced Fractal Transform Options
Set Number of Fractal Dimensions
Each dimension adds 112 bits to the key-space.
vbFES.lngDimensions = 8
- The minimum number of fractal dimensions is 8.
- You must set an even number of fractal dimensions.
- Each dimension adds 112 bits to the fractal key-space.
- Each dimension increases encryption complexity dramatically as it introduces a new fractal plane. Each fractal plane has an infinite number of fractal portals.
Set the number of dimensions to match your desired key-space. Dimensions and key-space are maintained after fractal portal discovery and the user-key is discarded, fractal stream generation proceeds with all configured dimensions and key-space.
Set Number of Passes
Specify how many times the transformation should be applied.
vbFES.lngPasses = 2
- Each pass matches the payload size.
- Each pass increases fractal depth and encryption complexity.
- The fractal stream continues unique infinitely complex iteration for every pass.
- All other selected transformation options are re-applied for every pass.
Due to the quality of FES fractal streams a single pass is impenetrable as it is unknown, unpredictable and matches the whole payload size (meets OTP requirements).
The transformation speed is reduced and processing time increased (single pass x number of passes). This has a greater impact if bitwise overwrites are used.
The cumulative effect of multiple passes with multiple transform options has significant impact on fractal depth, complexity and security.
Enable Scrambling
Reorders cipher using raw complex values at each pass level.
vbFES.blnScramble = True
- Raw fractal values are accumulated during fractal stream generation that re-order (scramble) the byte order of the payload.
- A new order is generated each pass, further scrambling the cipher and the order in which the fractal stream is applied.
As Scrambling is applied per-pass, be mindful of processing and performance, especially with large payloads.
Activate Overwrite Modes
Select which Overwrite Functions to apply.
vbFES.blnFBLIT = True ' Bit-wise Scramble
FES.blnXOR = True ' Default XOR transformation
FES.blnSUB = True ' Fractal Value Substitution
FES.blnADD = True ' Byte-wise modulo addition/subtraction
FES.blnSPLIT = True ' Byte splitting at Fractal Value
FES.blnBITWARP = True ' Fractal bit structure warping
Byte-wise Functions
- SUB: Applies fractal stream shuffled substitution array
- XOR: Applies fractal stream value XOR function (default)
- ADD: Applies fractal stream value modulo addition/subtraction
- SPLIT: Applies fractal stream selected bit-split
Bit-wise Functions
- FBLIT: Applies fractal value driven bit chunk swaps
- BITWARP: Applies fractal value driven bit warping
Bit-wise transformations should always be used in conjunction with one or more Byte-wise functions.
Bit-wise transformations deliver extreme levels of security, but they are processor intensive compared to the Byte-wise functions. The SPLIT function is an excellent compromise.
The numbers indicate the order in which the overwrite functions are applied.
7️⃣ Miscellaneous API Functions
Get Last Error Report
Retrieve the latest error message.
vbDim strError As String
strError = FES.strErrorReport
Get DLL Path
Retrieve the installation path of the FES DLL.
vbDim strPath As String
strPath = FES.strDLLPath
Get DLL Version
Retrieve the current version of the FES DLL.
vbDim strVersion As String
strVersion = FES.strDLLVersion
Key Benefits of the FES API
✔ DCOM-Based Security – Windows-native security and networked object access.
✔ Standalone, No Dependencies – No external libraries required.
✔ Supports All Windows Versions – Fully compatible with all Windows, Windows Server etc versions.
✔ Supports 32-bit Applications – Fully compatible with .NET C#,F#, Visual Basic, C++, Delphi, Java, Rust, VB6, TwinBASIC, etc. (via COM).
✔ Cross-Platform Expansion – 64-bit and multi-platform versions available for commercial licensees.
✔ Quantum-Proof Fractal Encryption – No fixed structure for quantum attacks to exploit.
✔ Silo-Based Key Compartmentalization – Different Silos create entirely unique ciphers, preventing key reuse risks.
API Setup