August 2014
S M T W T F S
« Jul    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Recent Posts

XDiceLock 8.0.0.1 for Apple Mac OS X, ISO_IEC_9797_1 class (ISO/IEC 9797-1 crypto pad algorithm) verified with data Special text and DefaultCryptoRandomStream class (default virtual memory management)

DiceLock cipher architecture presents two main configurations:
Dicelock Digested, and
Dicelock Indexed.

DiceLock encryption architecture improves symmetric ciphers like block cipher as Advanced Encryption Standard (AES 128, AES 192 and AES 256) with different block cipher operation modes and stream ciphers as HC 128 and HC 256 and others.

DiceLock (both configurations) makes use of the following random number tests: Frequency Test, Block Frequency Test, Cumulative Sum Forward Test, Cumulative Sum Reverse Test, Runs Test, Longest Run Of Ones Test, Rank Test, Universal Test, Approximate Entropy Test, Serial Test and Discrete Fourier Transform Test.

Additionally DiceLock Digested configuration makes use currently of following hash digest algorithms: Sha 1, Sha 224, Sha 256, Sha 384, Sha 512, Ripemd 128, Ripemd 160, Ripemd 256 and Ripemd 320.

As the new version XDiceLock 8.0.0.1 for Apple Mac OS X is developed, all individual components must be tested and verified, and in this article we verify ISO/IEC 9797-1 class (computing ISO/IEC 9797-1 cryptographic padding algorithm).

At the bottom of the post you can find C++ source code being used to perform this test.


Verified XDiceLock 8.0.0.1 for Apple Mac OS X

Verification components:

– Cryptographic pad algorithm test: ISO_IEC_9797_1 class
– Bit stream memory management: DefaultCryptoRandomStream class (default virtual memory management)

Memory characteristic used in this test:

DefaultCryptoRandomStream class makes use of default virtual memory where the system can move pages of physical memory to and from a paging file on disk (manipulation of physical memory by the system is completely transparent to applications).

 

Once computed we’ve got the following result:

Text to be padded (hex): 808080
Block length in bytes to pad: 4
Expected padded block (hex): 80 80 80 80
Padded block (hex): 80 80 80 80 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 5
Expected padded block (hex): 80 80 80 80 00
Padded block (hex): 80 80 80 80 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 6
Expected padded block (hex): 80 80 80 80 00 00
Padded block (hex): 80 80 80 80 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 7
Expected padded block (hex): 80 80 80 80 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 8
Expected padded block (hex): 80 80 80 80 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 9
Expected padded block (hex): 80 80 80 80 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 10
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 11
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 12
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 13
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 14
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 15
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 16
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 17
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 18
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 19
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 20
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 21
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 22
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 23
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 24
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 25
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 26
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 27
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 28
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 29
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 30
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 31
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 32
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 33
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 34
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 35
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 36
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 37
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 38
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 39
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 40
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 41
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 42
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 43
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 44
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 45
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 46
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 47
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 48
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 49
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 50
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 51
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 52
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 53
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 54
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 55
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 56
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 57
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 58
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 59
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 60
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 61
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 62
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 63
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 64
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 65
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 66
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK
Text to be padded (hex): 808080
Block length in bytes to pad: 67
Expected padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Padded block (hex): 80 80 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 OK
Extracted text (hex): 808080 OK

XDiceLock 8.0.0.1 for Apple Mac OS X C++ source code used in this test:

XDiceLock 8.0.0.1 for Apple Mac OS X

XDiceLockCipher.h
baseCryptoRandomStream.h
baseCryptoRandomStream.cpp
defaultCryptoRandomStream.h
defaultCryptoRandomStream.cpp
baseCryptoPad.h
baseCryptoPad.cpp
ISO_IEC_9797_1.h
ISO_IEC_9797_1.cpp



So, DiceLock cipher test and analysis can go on …

DiceLock is a trademark or registered trademark of his owner where applies. DiceLock research is the research to implement Self-corrector randomisation-encryption and method, european patent EP1182777 granted 08/21/2003 and US patent US7508945 granted 03/24/2009.

Leave a Reply