SlideShare a Scribd company logo
1 of 7
Download to read offline
BDG48 - Design and Concept of Genetic Cryptography
                                          Satria Ady Pradana (13510030)
                                            Informatics Engineering
                            School of Electrical Engineering and Informatics (SEEI)
                                     Bandung Institute of Technology, ITB
                                              Bandung, Indonesia
                                              satria@arc.itb.ac.id


   Abstract—This paper presents design and concept of        for this paper. The algorithm is categorized as Block
Genetic Cryptography and an example algorithm to satisfy     Cipher algorithm and will follows some fundamental of
this purpose. This papers will propose a new and unique      cipher block algorithm design. Although there are some
way for encrypting and decrypting message compared to
                                                             aspect that might not be completely fit as is.
conventional concept. The concept will purely based on
genetic concept and the will be focused into block cipher.
The fundamental concept used will be cross over and                   II. CIPHER BLOCK DESIGN PRINCIPLES
mutation, without any restriction for further developed
concept later.                                                  Designing a block cipher algorithm should follow some
                                                             “de facto” rules. There are five fundamental principles
  Index Terms—cryptography, block cipher, genetic, cross     that acknowledge as basis for creating a new
over, mutation, bdg48.                                       cryptography algorithm. These principles are:

                                                                 1.     Shannon’s Confusion and Diffusion Principle
                 I.    INTRODUCTION                              2.     Iterated Cipher
                                                                 3.     Feistel Network
   Nowadays in digital era where time and space is not
                                                                 4.     Weak key
limitation, information is highly available. Any kind of
                                                                 5.     S-box
information can be obtained using various method. The
information might vary from general knowledge to
                                                                Confusion and diffusion are two properties proposed by
sensitive information including private information and
                                                             C.E. Shannon for secure cryptography algorithm [1].
confidential     information.   Internet as      one    of
                                                                In Shannon’s original definitions, confusion refers to
communication media has proved how information can be
                                                             making the relationship between the ciphertext and
obtained easily.
                                                             symmetric key as complex and involved as possible. This
   Protecting confidential and private information is a
                                                             principle also includes obscuration of statistic pattern of
human’s natural behavior. There are many ways to do it,
                                                             ciphertext.
but the common method is using cryptography.
                                                                The diffusion refers to making the relationship between
   Cryptography has evolved from ancient time, where
                                                             the ciphertext and the plaintext complex as complex and
Julius Caesar use . Cryptography is also widely used
                                                             involved as possible. A single and slight modification
nowadays, where originally it is used only for military
                                                             might result in unpredicted outcome.
works. With aid of computer, more cryptography
                                                                The iterated cipher is a iteration or repeated operation
algorithms have been proposed.
                                                             of an invertible transformation on fixed-size block. The
   Although dozens and hundreds cryptography
                                                             transformation function is known as round function. For
algorithms available, most of them used similar concept
                                                             each iteration or each round the round function will be
and methods. The difference is only at design and
                                                             operated on fixed block data and transform it to another
implementation of the concepts. The methods mention
                                                             form with same size. For each iteration, an internal / self
before are mostly: XOR operations, substitution,
                                                             generated key is used on function.
permutation, and feistel network.
                                                                The key for each round on iterated cipher might be self
   Although we do not said it is good or bad, a new
                                                             generated key using user-supplied key as feed, or using
concept can be used for create cryptography algorithm.
                                                             external key directly. The most common method used are
   A new concept will be proposed, a cryptography
                                                             generating key rather than used key directly.
algorithm using genetic concept.
                                                                Feistel network is defined as a symmetric structure in
   Genetic concept is a concept that mimics the process of
                                                             the construction of block ciphers. It has advantage of
natural evolution. The concept can be described as
                                                             similarity between enciphering and deciphering process,
combination of cross over concept and mutation concept -
                                                             even identical. The smallest structure is called feistel
which is also described on Genetic Algorithm.
                                                             block and consists of some operation. The operation
   This paper will utilize BDG48 - algorithm developed
                                                             might vary from one algorithm to other algorithm.


Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
Weak key is a key, which used with a specific cipher        The design of key generation must following confusing
makes the cipher behave in some undesirable way. It is a       and diffusion principle. The generated key must ensure
key in which makes a series of operation of enciphering        the encrypted key is diffused. The level of diffusion might
will result back to plaintext. The good cryptographic          be hard to be measured, but this principle can be measure
algorithms doesn’t have this properties.                       by the pattern and mapping from plaintext character to
   S-box or substitution box is a simple substitution          ciphertext character.
matrices which maps one or more bits to other one or              While the key generation can used various ideas, three
more bit. The matrice can be viewed as a lookup table.         subjects are proposed. These three are: logical shifting,
The table might consists of some rows and some columns.        permutation, and substitution.
When a block of bit comes, it can be broken down with             Logical shifts are bitwise operation, operation which
some way. The substitution value is obtain by looking up       works on bit-level. Logical shift operation shifts all the
to intersection of row and column. This methods is used        bits of its operand to a specific direction. There are two
widely in DES (Data Encryption Standard) but will not          direction which are left and right. The left shift is
applicable in this paper.                                      operation which shifting is done to left direction while the
                                                               right shift is to right direction. The number of shifting is
             II.   PROPOSED ALGORITHM                          given as an unsigned integer n.
                                                                  The logical shifting should use wrapping method to fill
   BDG48 or Bit Diffusion Genetically 48, is an algorithm
                                                               the vacant bit-position. The wrapping method suggest that
using Genetic Cryptography concept. The algorithm
                                                               the out-of-bound bit are positioned back to vacant slot
utilize 4 (four) systems and 8 (eight) internal keys with
                                                               instead of filling them with predetermined value. The
external keys supplied by user.
                                                               sequence must be kept therefore the first thrown bit will
   The four systems refers to: internal key generation and
                                                               be the first bit padded to.
scheduling; modified feistel network; cross over; and
                                                                  Permutation is a process of rearranging objects / bit
mutation. These keys are then used for encryption, rather
                                                               values. The permutation process can be divided into three
than user-supplied key.
                                                               category: pure permutation, compression permutation,
   BDG48 is a symmetric key algorithm. To encrypt a
                                                               and expansion permutation.
message, a 64-bit key must be supplied by user. The key
                                                                  A pure permutation or simply a permutation is a
generation process will then create 8 subkeys for used
                                                               permutation which only do rearrangement of bits. This is
internally.
                                                               the basic permutation known.
   BDG48 also works on bit level. This block cipher will
                                                                  A compression permutation is a special permutation.
encrypt 64-bit data for each block. If data block doesn’t
                                                               While also permutate the bits, this method also select
have sufficient size, the zeroes will be padded to block
                                                               which bit should be produced as result. In this type of
until the block is filled.
                                                               permutation, the operand size will always be greater than
   For each 64-bit block 32 iterations process will be used.
                                                               the product size. Therefore, some bits might not be
In each iteration, a special “permutation” system applied.
                                                               included a production. The remaining bits are either
The system in this context refer to cross over and
                                                               discarded or used as parity to check bits.
mutation process.
                                                                  An expansion permutation is the reciprocal to
   BDG48 does not used substitution method. It will only
                                                               compression permutation. Expansion permutation is a
relies on “permutation”, especially described as crossover
                                                               process of permutation which duplicate some or all bits of
and mutation.
                                                               operand. In this type of permutation the size of product
                                                               will always be greater than the operand size. A bit on som
      III. KEY GENERATION AND SCHEDULING                       position might be duplicate two or more times, depends
   Key generation is a process of generating key for           on the design.
internal usage from external key. The external key is a           The substitution is a process for substitute or exchange
key given by user. The key used for encryption and             a value to other value. The substitution rules might
decryption is same or identic. This process is not             defines what values should be substitute and what values
obligatory thing. But mostly the key generation will make      as replacement.
the encryption stronger.                                          In BDG48, key generation will use left shift operation,
   The external key are only used once in the key              pure permutation and compression permutation.
generation process and won’t be used on encryption. But           To encrypt a message, BDG48 use 64-bit key which is
the user should always remember the key as the                 equivalent to 8 ASCII characters, no less and no more.
symmetric key cryptography only permits data encrypted            In generation process, BDG48 will generates 8 (eight)
and decrypted by same and identic key.                         internal keys. The keys will be labeled as K1, K2, ..., K8.
   The resulting key might be vary from one key to not-        The internal keys also generated based on external keys
limited amount of keys. These keys then called as              with the help of three matrices for permutating.
subkeys.                                                          The matrices used in key generation are one pure
   The key generation might involving some function and        permutation matrix and two compression permutation
the key generation itself can be considered as a function.     matrices.


Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
The permutation matrix is a 1x64 row matrix. This          and CP-2. CP-1 is used for generating key K1, K3, K5,
matrix will be used at initial permutation process. The       and K6 while CP-2 is used for generating key K2, K4, K7,
permutation matrix is an ordinary integer matrix where        and K8.
each column represent a bit position in which the bit on        Formally, the generation process can be formulated as:
original message will be permutated to. Thus a bit on nth
position of source will be rearrange to position pointed by
                                                                K1 = CP1 ( C1 . D1 )
value of M1xn.
                                                                K2 = CP2 ( C2 . D2 )
   Compression matrices is similar to permutation matrix
                                                                K3 = CP1 ( C3 . D3 )
but differs in size. Each Compression Matrix is a 1x32
                                                                K4 = CP2 ( C4 . D4 )
row matrix. The Compression Permutation then will               K5 = CP1 ( C5 . D5 )
reduce output into only 32-bit block. The remaining 32
                                                                K6 = CP1 ( C6 . D6 )
bits are then discarded.
                                                                K7 = CP2 ( C7 . D7 )
                                                                K8 = CP2 ( C8 . D8 )

                                                                Ci = Ci-1 << 1
                                                                Di = Di-1 << 1


                                                                 The “.” refer to concatenation of bits string and <<
                                                              refers to left shift operation.
                                                                 BDG48 has 32 iterations. For each iteration, a key is
                                                              required. As there are only 8 subkeys available, a
                                                              scheduling is required to make sure every iteration will
                                                              use one key.
                                                                 Scheduling is an act of ordering the key usage for each
                                                              iteration.
                                                                 Following is the scheduling used in BDG48 for
                                                              selecting subkey.

                                                               Iteration      1     2    3     4     5     6    7     8
                                                                  key         1     5    3     4     7     6    2     8

                                                               Iteration      9     10   11   12    13    14    15    16
                                                                  key         6      1   2     8     7     3     5     4


                                                               Iteration     17     18   19   20    21    22    23    24
                                                                  key         2      5   4     6     8     3     7     1

                                                               Iteration     25     26   27   28    29    30    31    32
                                                                  key         8      7   2     1     3     5     4     6
          Picture 1: Key Generation for BDG48
                                                                 Using the table, the 9th iteration / round will use K6 as
   External key is processed with Permutation matrix          its key.
(initial permutation). The result is a 64-bits key. The
result then divided into two halves: C0 and D0. C0 is the                     IV.   FEISTEL NETWORK
first 32-bits of the result key (upper bits) and the
                                                                 Feistel Network is symmetric structure and a basic for
remaining 32-bits is D0 (lower bits).                         construction of block ciphers. The main advantage of
   The C0 then left-shifted by 1 and similar thing done on    feistal network is the feistal network offers similar
D0. The shifts are circular so the the most significant bit   process to do encryption and decryption.
will be the least significant bit after the process. The         In feistel network, data block is divided into two equal-
process will generate a pair C1 and D1 respectively.          length block, L and R. For each round, a round function is
   The ith internal key is obtained by concatenation of Ci    defined.
and Di and later used as operand of Compression
Permutation matrices.
   There are two Compression Matrices, denoted by CP-1


Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
Figure 3: One round of Feistel Network

                                                                 Let F be the round function and K0, K1, ... , Kn be the
                                                              subkeys for rounds 0, 1, ..., n respectively. We can
                                                              formulate the operation as follow:



                                                                Li = Ri-1
                                                                Ri = Li-1 XOR F( Ri-1, Ki )
           Picture 2: Common Feistel Network

   The round function is a global function works on each         However genetic cryptography does not fully fit this
round. The design of round function might vary, but it        definition. Genetic cryptography relies upon cross over
should implement confusion and diffusion principles.          and mutation. Those methods works on both part of data
   The round function should need at least a key as its       chunks. Therefore we can not follow the original
argument. The function should behave differently when         definition of round function and structure proposed by
different key is applied and produce different product        feistel network.
when a combination of operand and key is given.                  The design of feistel round proposed here is a modified
   Mostly, a round function operates on one side / one part   version of original feistel round.
only. The resulting part then will be XORed with other           The data block is divided into two equal-length block L
part. Later, both part will be swapped. In other word L’ is   and R. The L is the first halve of data block and R is the
the product of R and R’ is the product of L.                  remaining halve.
                                                                 A crossover operation will be applied to both part. The
                                                              L and R can be viewed as arguments for cross over
                                                              system. This function does not need any key to operated.
                                                              More explanation of cross over will be explained briefly
                                                              on next section.
                                                                 The resulting data part, L’ and R’ will then mutated
                                                              independently. The mutation need at least one subkey.
                                                              The mutation operation can be viewed as round function
                                                              with supplied key. The mutation will be explained more
                                                              on next section.




Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
chromosome into two different size part. The first half is
                                                             shorter than the second half.
                                                               In generation of children, both parent exchange their
                                                             part. The result of this operation is two children
                                                             chromosome. The children parent now has both their
                                                             parent part.
                                                               The crossover point might occur in more than one
                                                             position. But this paper will limit into only one crossover
                                                             point.




                                                                         Picture 6: Crossover on Bit Array

               Picture 4: Modified Feistel                     Using crossover concept on Genetic Cryptographic is
                                                             simply implementing the above concept.
  BDG48 use standard modified feistel network proposed         The two equal-length block L and R can denoted as
above. The key used for mutation is obtained from key        parent chromosomes. The product of crossover is two
scheduling mention on previous section.                      children or two equal-length block L’ and R’. The
  In formal notation, we can formulate the process as:       childrend L’ and R’ has both parent parts.
                                                               Crossover point is defined as an index of bit position,

                                                                  C = Cross Over
                   V.   CROSS OVER                                M = Mutation
   In Genetic, crossover or crossing over is the exchange
of genetic material between homologous chromosomes                Li = M( C( Li-1, Ri-1, i ), Ki )
that results in recombinant chromosomes. Cross over is            Ri = M( C( Li-1, Ri-1, i ), Ki )
one of the final phases of genetic recombination.

                                                             denote by i. The division is not more than substringing the
                                                             bits array. The data must be divided into n+1 part where n
                                                             is the amount of crossover point.
                                                                Following is the formalized steps for crossing over
                                                             with one crossover point:


                                                             1.   For data block with length m bits, choose i
                                                                  where 0 < i < m
                                                             2.   Get substring of L from 1 to i, named it as L1
                                                             3.   Get substring of R form 1 to i, named it as R1
             Picture 5: Crossover in Genetic                 4.   Get substring of L from i+1 to m, named it as L2
                                                             5.   Get substring of R from i+1 to m, named it as R2
   The origin or source chromosomes denoted as parent.       6.   L’ is obtained from concatenation of L1 and R2
The parent chromosome might be and should be distinct.            L’ = L1 . R2
   A crossover occur on a point. This point is referred as   7.   R1 is obtained from concatenation of R1 and L2
crossover point. At each parent, chromosomes are divided          R’ = R1 . L2
into some parts, relative to the crossover point. The
crossover might not divide chromosome to equal length
part, and there is no guarantee that it will always do so.
                                                               The selection of value of i must not be truly random.
   In picture 5, there are two parents denoted by their
                                                             The value i should be able to be replicated or the value
color (red and blue). A crossover point occur which          must be obtained using identical series of operation.
divide parent into two. The crossover point is not             A rule should be defined to schedule the values of i.
precisely on middle of chromosome thus cut the                 BDG48 use basic crossover concept. The alternating
                                                             value of i is defined using the following rules / schedule:


Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
Iteration      1    2     3     4     5     6    7      8
     i          1    2     3     4     7    16    18    20

 Iteration      9    10    11   12    13    14    15    16
     i          1     2     3    4     7    16    18    20


 Iteration     17    18    19   20    21    22    23    24
     i         1      2     3    4     7    16    18    20

 Iteration     25    26    27   28    29    30    31    32
     i         1      2     3    4     7    16    18    20


                    VI.    MUTATION
   In genetic term, mutation is change of the nucleotide
sequence of the genome of an organism, virus, or
extrachromosomal genetic element. The change might
resulted form unrepaired damage to DNA or RNA
genomes, from errors in the process of replication, or
from insertion or deletion of segments of DNA by mobile                            Figure 7: Mutation
genetic elements.
   Mostly the change is permanent unless a reverse                Suppose integer i and j is denotes starting point and end
operation is used. The changes might also result on            point respectively. Index i must always less than index j.
change of the system behavior.                                 Both index are pointing to valid bit position on data and
   In Genetic Cryptography, a mutation is defined as           key. If we denote M as message / data block with length
change of data block part as a result of invertible function   m and key having the same length, mutation can be
applied to it. The mutate part might be all part (whole        formulated as:
data block) or subset of it.
   The invertible function might be vary in design but it
should has diffusion and confusion principle. The                L = substring( M, 0, i )
function should need a key with equal length to the data         R = substring( M, j, m-j )
part. At least one key should be available, however two or       X = substring( M, i, j ) XOR substring( Ki, i, j )
more keys are not encouraged.                                    M’ = L . X . R
   For a mutation, there should be a pointer used as
starting point and another index as end point. The area
covered by the start point to end point is called as             Choosing i and j pair should not have any pattern for
mutation area. The mutation might covered a whole data         each round. The pair should be random enough but should
part or just the subset of it.                                 be deterministic. This means a replication means should
   When a mutation occurred, a mutation area from data         be able to obtain the similar pair of i and j for other block.
block should be operated with a function together with           In BDG48, a mutation is done by applying XOR
mutation area. The mutation area should always match the       function into a mutation area.
corresponding index (start and end index).                       The index i and j are summarize on following table:

                                                                Iteration      1     2     3     4     5     6     7     8
                                                                    i          1     1     4    30     5     4     7     1
                                                                    j          2     3     7    31    28    31     9     8

                                                                Iteration      9    10    11    12    13    14    15    16
                                                                    i          2     5    13     6     4    21    22    13
                                                                    j          5     6    17    13    23    28    26    23


                                                                Iteration     17    18    19    20    21    22    23    24
                                                                    i         14    19    1      7    13    27     4     4
                                                                    j         27    31    31    25    29    28    17    24



Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
Iteration       25     26      27   28   29    30     31    32
      i           6       9       9    1    4     3     5      6
      j           7      13      31    2   17     6     27    28



                       VII.     CONCLUSION
  In the end, genetic cryptography is an interesting field.
This paper has presents a new way for encrypting and
decrypting a message using genetic concept.
  In the future, if the concept is developed deeper, there
would be other variations that might occurs.


                VIII.         ACKNOWLEDGMENT
  I wish to thank everyone who helped me complete this
paper. Without their continued efforts and supports I
would have not be able to bring my work to a successful
completion.
  Dr. Ir. Rinaldi Munir, MT: for guidance and lecture
  Ezra Hizkia Nathanael: for support and ideas
  Mufi Yanuar Triputranto: for support and ideas


                              REFERENCES
[1]   Shannon, C.E. “Communication Theory of Secrecy Systems,”.
      1949.
[2]   Knudsen, Lars R. The Block Cipher Companion. Springer. 2011.
[3]   John Holland, Adaptation in Natural Search Algorithm Systems,
      University of Michigan Press. Ann Arbor, Michigan. 1975




                          PERNYATAAN
 Dengan ini saya menyatakan bahwa makalah yang saya
 tulis ini adalah tulisan saya sendiri, bukan saduran, atau
 terjemahan dari makalah orang lain, dan bukan plagiasi.

                                       Bandung, 26 Maret 2013

                                                               ttd




                                           Satria Ady Pradana
                                                    13510030




Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013

More Related Content

What's hot

LSB Based Image Steganography for Information Security System
LSB Based Image Steganography for Information Security SystemLSB Based Image Steganography for Information Security System
LSB Based Image Steganography for Information Security Systemijtsrd
 
Cryptography & Steganography
Cryptography & SteganographyCryptography & Steganography
Cryptography & SteganographyAnimesh Shaw
 
Steganography using Interpolation and LSB with Cryptography on Video Images -...
Steganography using Interpolation and LSB with Cryptography on Video Images -...Steganography using Interpolation and LSB with Cryptography on Video Images -...
Steganography using Interpolation and LSB with Cryptography on Video Images -...Editor IJCATR
 
steganography using visual cryptography_report
steganography using visual cryptography_reportsteganography using visual cryptography_report
steganography using visual cryptography_reportSaurabh Nambiar
 
NeuroCrypto: C++ Implementation of Neural Cryptography with Rijndael Cipher
NeuroCrypto: C++ Implementation of Neural Cryptography with Rijndael CipherNeuroCrypto: C++ Implementation of Neural Cryptography with Rijndael Cipher
NeuroCrypto: C++ Implementation of Neural Cryptography with Rijndael CipherSagun Man Singh Shrestha
 
DUAL SECURITY USING IMAGE STEGANOGRAPHY BASED MATRIX PARTITION
DUAL SECURITY USING IMAGE STEGANOGRAPHY BASED MATRIX PARTITIONDUAL SECURITY USING IMAGE STEGANOGRAPHY BASED MATRIX PARTITION
DUAL SECURITY USING IMAGE STEGANOGRAPHY BASED MATRIX PARTITIONIJNSA Journal
 
A SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPHY ALGORITHM
A SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPHY ALGORITHMA SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPHY ALGORITHM
A SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPHY ALGORITHMijcisjournal
 
EVALUATING THE PERFORMANCE OF THE SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPH...
EVALUATING THE PERFORMANCE OF THE SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPH...EVALUATING THE PERFORMANCE OF THE SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPH...
EVALUATING THE PERFORMANCE OF THE SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPH...IJNSA Journal
 
Enhanced Secret Communication Using Multilevel Audio Steganography
Enhanced Secret Communication Using Multilevel Audio SteganographyEnhanced Secret Communication Using Multilevel Audio Steganography
Enhanced Secret Communication Using Multilevel Audio Steganographyijceronline
 
A NOVEL APPROACH OF IMAGE STEGANOGRAPHY FOR SECRET COMMUNICATION USING SPACIN...
A NOVEL APPROACH OF IMAGE STEGANOGRAPHY FOR SECRET COMMUNICATION USING SPACIN...A NOVEL APPROACH OF IMAGE STEGANOGRAPHY FOR SECRET COMMUNICATION USING SPACIN...
A NOVEL APPROACH OF IMAGE STEGANOGRAPHY FOR SECRET COMMUNICATION USING SPACIN...IJNSA Journal
 
Image Steganography V2 i11 0143
Image Steganography V2 i11 0143Image Steganography V2 i11 0143
Image Steganography V2 i11 0143Praneeta Dehare
 
ANALYSIS OF THE SECURITY OF BB84 BY MODEL CHECKING
ANALYSIS OF THE SECURITY OF BB84 BY MODEL CHECKINGANALYSIS OF THE SECURITY OF BB84 BY MODEL CHECKING
ANALYSIS OF THE SECURITY OF BB84 BY MODEL CHECKINGIJNSA Journal
 
Design and implementation of hierarchical visual
Design and implementation of hierarchical visualDesign and implementation of hierarchical visual
Design and implementation of hierarchical visualIJNSA Journal
 

What's hot (17)

W4301117121
W4301117121W4301117121
W4301117121
 
LSB Based Image Steganography for Information Security System
LSB Based Image Steganography for Information Security SystemLSB Based Image Steganography for Information Security System
LSB Based Image Steganography for Information Security System
 
Cryptography & Steganography
Cryptography & SteganographyCryptography & Steganography
Cryptography & Steganography
 
Steganography using Interpolation and LSB with Cryptography on Video Images -...
Steganography using Interpolation and LSB with Cryptography on Video Images -...Steganography using Interpolation and LSB with Cryptography on Video Images -...
Steganography using Interpolation and LSB with Cryptography on Video Images -...
 
steganography using visual cryptography_report
steganography using visual cryptography_reportsteganography using visual cryptography_report
steganography using visual cryptography_report
 
NeuroCrypto: C++ Implementation of Neural Cryptography with Rijndael Cipher
NeuroCrypto: C++ Implementation of Neural Cryptography with Rijndael CipherNeuroCrypto: C++ Implementation of Neural Cryptography with Rijndael Cipher
NeuroCrypto: C++ Implementation of Neural Cryptography with Rijndael Cipher
 
DUAL SECURITY USING IMAGE STEGANOGRAPHY BASED MATRIX PARTITION
DUAL SECURITY USING IMAGE STEGANOGRAPHY BASED MATRIX PARTITIONDUAL SECURITY USING IMAGE STEGANOGRAPHY BASED MATRIX PARTITION
DUAL SECURITY USING IMAGE STEGANOGRAPHY BASED MATRIX PARTITION
 
A SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPHY ALGORITHM
A SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPHY ALGORITHMA SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPHY ALGORITHM
A SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPHY ALGORITHM
 
EVALUATING THE PERFORMANCE OF THE SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPH...
EVALUATING THE PERFORMANCE OF THE SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPH...EVALUATING THE PERFORMANCE OF THE SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPH...
EVALUATING THE PERFORMANCE OF THE SECURE BLOCK PERMUTATION IMAGE STEGANOGRAPH...
 
Enhanced Secret Communication Using Multilevel Audio Steganography
Enhanced Secret Communication Using Multilevel Audio SteganographyEnhanced Secret Communication Using Multilevel Audio Steganography
Enhanced Secret Communication Using Multilevel Audio Steganography
 
G018143943
G018143943G018143943
G018143943
 
A NOVEL APPROACH OF IMAGE STEGANOGRAPHY FOR SECRET COMMUNICATION USING SPACIN...
A NOVEL APPROACH OF IMAGE STEGANOGRAPHY FOR SECRET COMMUNICATION USING SPACIN...A NOVEL APPROACH OF IMAGE STEGANOGRAPHY FOR SECRET COMMUNICATION USING SPACIN...
A NOVEL APPROACH OF IMAGE STEGANOGRAPHY FOR SECRET COMMUNICATION USING SPACIN...
 
Image Steganography V2 i11 0143
Image Steganography V2 i11 0143Image Steganography V2 i11 0143
Image Steganography V2 i11 0143
 
Cns 1
Cns 1Cns 1
Cns 1
 
ANALYSIS OF THE SECURITY OF BB84 BY MODEL CHECKING
ANALYSIS OF THE SECURITY OF BB84 BY MODEL CHECKINGANALYSIS OF THE SECURITY OF BB84 BY MODEL CHECKING
ANALYSIS OF THE SECURITY OF BB84 BY MODEL CHECKING
 
Design and implementation of hierarchical visual
Design and implementation of hierarchical visualDesign and implementation of hierarchical visual
Design and implementation of hierarchical visual
 
Steganography
SteganographySteganography
Steganography
 

Similar to If3058 concept and design of genetic cryptography using bdg48

Networksecurity1 1
Networksecurity1 1 Networksecurity1 1
Networksecurity1 1 lakshmansoft7
 
Survey of universal authentication protocol for mobile communication
Survey of universal authentication protocol for mobile communicationSurvey of universal authentication protocol for mobile communication
Survey of universal authentication protocol for mobile communicationAhmad Sharifi
 
Network security Encryption
Network security EncryptionNetwork security Encryption
Network security EncryptionJoel Briza
 
Paper id 27201444
Paper id 27201444Paper id 27201444
Paper id 27201444IJRAT
 
Php text processing by softroniics
Php text processing by softroniicsPhp text processing by softroniics
Php text processing by softroniicsaswin tbbc
 
A NOVEL STRUCTURE WITH DYNAMIC OPERATION MODE FOR SYMMETRIC-KEY BLOCK CIPHERS
A NOVEL STRUCTURE WITH DYNAMIC OPERATION MODE FOR SYMMETRIC-KEY BLOCK CIPHERSA NOVEL STRUCTURE WITH DYNAMIC OPERATION MODE FOR SYMMETRIC-KEY BLOCK CIPHERS
A NOVEL STRUCTURE WITH DYNAMIC OPERATION MODE FOR SYMMETRIC-KEY BLOCK CIPHERSIJNSA Journal
 
Analytical Study On Artificial Neural Network
Analytical Study On Artificial Neural NetworkAnalytical Study On Artificial Neural Network
Analytical Study On Artificial Neural NetworkKristen Carter
 
cryptography
cryptographycryptography
cryptographyBalaji Ravi
 
Cryptography and security
Cryptography and securityCryptography and security
Cryptography and securityresearch30
 
Different date block size using to evaluate the performance between different...
Different date block size using to evaluate the performance between different...Different date block size using to evaluate the performance between different...
Different date block size using to evaluate the performance between different...IJCNCJournal
 
Neural Cryptography for Secret Key Exchange
Neural Cryptography for Secret Key ExchangeNeural Cryptography for Secret Key Exchange
Neural Cryptography for Secret Key ExchangeIJMTST Journal
 
Cryptography Methodologies
Cryptography MethodologiesCryptography Methodologies
Cryptography Methodologiesijtsrd
 
iaetsd Secured multiple keyword ranked search over encrypted databases
iaetsd Secured multiple keyword ranked search over encrypted databasesiaetsd Secured multiple keyword ranked search over encrypted databases
iaetsd Secured multiple keyword ranked search over encrypted databasesIaetsd Iaetsd
 
Confusion and Diffusion.pptx
Confusion and Diffusion.pptxConfusion and Diffusion.pptx
Confusion and Diffusion.pptxbcanawakadalcollege
 
A Novel Structure with Dynamic Operation Mode for Symmetric-Key Block Ciphers
A Novel Structure with Dynamic Operation Mode for Symmetric-Key Block CiphersA Novel Structure with Dynamic Operation Mode for Symmetric-Key Block Ciphers
A Novel Structure with Dynamic Operation Mode for Symmetric-Key Block CiphersIJNSA Journal
 
Design and Implementation of New Encryption algorithm to Enhance Performance...
Design and Implementation of New Encryption algorithm to  Enhance Performance...Design and Implementation of New Encryption algorithm to  Enhance Performance...
Design and Implementation of New Encryption algorithm to Enhance Performance...IOSR Journals
 

Similar to If3058 concept and design of genetic cryptography using bdg48 (20)

Networksecurity1 1
Networksecurity1 1 Networksecurity1 1
Networksecurity1 1
 
Survey of universal authentication protocol for mobile communication
Survey of universal authentication protocol for mobile communicationSurvey of universal authentication protocol for mobile communication
Survey of universal authentication protocol for mobile communication
 
H42063743
H42063743H42063743
H42063743
 
Network security Encryption
Network security EncryptionNetwork security Encryption
Network security Encryption
 
Paper id 27201444
Paper id 27201444Paper id 27201444
Paper id 27201444
 
Data encryption
Data encryptionData encryption
Data encryption
 
Php text processing by softroniics
Php text processing by softroniicsPhp text processing by softroniics
Php text processing by softroniics
 
A NOVEL STRUCTURE WITH DYNAMIC OPERATION MODE FOR SYMMETRIC-KEY BLOCK CIPHERS
A NOVEL STRUCTURE WITH DYNAMIC OPERATION MODE FOR SYMMETRIC-KEY BLOCK CIPHERSA NOVEL STRUCTURE WITH DYNAMIC OPERATION MODE FOR SYMMETRIC-KEY BLOCK CIPHERS
A NOVEL STRUCTURE WITH DYNAMIC OPERATION MODE FOR SYMMETRIC-KEY BLOCK CIPHERS
 
Analytical Study On Artificial Neural Network
Analytical Study On Artificial Neural NetworkAnalytical Study On Artificial Neural Network
Analytical Study On Artificial Neural Network
 
cryptography
cryptographycryptography
cryptography
 
N45028390
N45028390N45028390
N45028390
 
Cryptography and security
Cryptography and securityCryptography and security
Cryptography and security
 
Different date block size using to evaluate the performance between different...
Different date block size using to evaluate the performance between different...Different date block size using to evaluate the performance between different...
Different date block size using to evaluate the performance between different...
 
Neural Cryptography for Secret Key Exchange
Neural Cryptography for Secret Key ExchangeNeural Cryptography for Secret Key Exchange
Neural Cryptography for Secret Key Exchange
 
Unit 2
Unit 2Unit 2
Unit 2
 
Cryptography Methodologies
Cryptography MethodologiesCryptography Methodologies
Cryptography Methodologies
 
iaetsd Secured multiple keyword ranked search over encrypted databases
iaetsd Secured multiple keyword ranked search over encrypted databasesiaetsd Secured multiple keyword ranked search over encrypted databases
iaetsd Secured multiple keyword ranked search over encrypted databases
 
Confusion and Diffusion.pptx
Confusion and Diffusion.pptxConfusion and Diffusion.pptx
Confusion and Diffusion.pptx
 
A Novel Structure with Dynamic Operation Mode for Symmetric-Key Block Ciphers
A Novel Structure with Dynamic Operation Mode for Symmetric-Key Block CiphersA Novel Structure with Dynamic Operation Mode for Symmetric-Key Block Ciphers
A Novel Structure with Dynamic Operation Mode for Symmetric-Key Block Ciphers
 
Design and Implementation of New Encryption algorithm to Enhance Performance...
Design and Implementation of New Encryption algorithm to  Enhance Performance...Design and Implementation of New Encryption algorithm to  Enhance Performance...
Design and Implementation of New Encryption algorithm to Enhance Performance...
 

More from Satria Ady Pradana

Down The Rabbit Hole, From Networker to Security Professional
Down The Rabbit Hole, From Networker to Security ProfessionalDown The Rabbit Hole, From Networker to Security Professional
Down The Rabbit Hole, From Networker to Security ProfessionalSatria Ady Pradana
 
MITM: Tales of Trust and Betrayal
MITM: Tales of Trust and BetrayalMITM: Tales of Trust and Betrayal
MITM: Tales of Trust and BetrayalSatria Ady Pradana
 
Berkarir di Cyber Security
Berkarir di Cyber SecurityBerkarir di Cyber Security
Berkarir di Cyber SecuritySatria Ady Pradana
 
IOT Security FUN-damental
IOT Security FUN-damentalIOT Security FUN-damental
IOT Security FUN-damentalSatria Ady Pradana
 
Python-Assisted Red-Teaming Operation
Python-Assisted Red-Teaming OperationPython-Assisted Red-Teaming Operation
Python-Assisted Red-Teaming OperationSatria Ady Pradana
 
IoT Security - Preparing for the Worst
IoT Security - Preparing for the WorstIoT Security - Preparing for the Worst
IoT Security - Preparing for the WorstSatria Ady Pradana
 
Silabus Training Reverse Engineering
Silabus Training Reverse EngineeringSilabus Training Reverse Engineering
Silabus Training Reverse EngineeringSatria Ady Pradana
 
Practical Security - Modern Day Software
Practical Security - Modern Day SoftwarePractical Security - Modern Day Software
Practical Security - Modern Day SoftwareSatria Ady Pradana
 
Firmware Reverse Engineering
Firmware Reverse EngineeringFirmware Reverse Engineering
Firmware Reverse EngineeringSatria Ady Pradana
 
Reverse Engineering: The Crash Course
Reverse Engineering: The Crash CourseReverse Engineering: The Crash Course
Reverse Engineering: The Crash CourseSatria Ady Pradana
 
The Offensive Python: Practical Python for Penetration Testing
The Offensive Python: Practical Python for Penetration TestingThe Offensive Python: Practical Python for Penetration Testing
The Offensive Python: Practical Python for Penetration TestingSatria Ady Pradana
 
From Reversing to Exploitation: Android Application Security in Essence
From Reversing to Exploitation: Android Application Security in EssenceFrom Reversing to Exploitation: Android Application Security in Essence
From Reversing to Exploitation: Android Application Security in EssenceSatria Ady Pradana
 
Android Security: Art of Exploitation
Android Security: Art of ExploitationAndroid Security: Art of Exploitation
Android Security: Art of ExploitationSatria Ady Pradana
 
Bypass Security Checking with Frida
Bypass Security Checking with FridaBypass Security Checking with Frida
Bypass Security Checking with FridaSatria Ady Pradana
 
Malware: To The Realm of Malicious Code (Training)
Malware: To The Realm of Malicious Code (Training)Malware: To The Realm of Malicious Code (Training)
Malware: To The Realm of Malicious Code (Training)Satria Ady Pradana
 
Reverse Engineering: Protecting and Breaking the Software (Workshop)
Reverse Engineering: Protecting and Breaking the Software (Workshop)Reverse Engineering: Protecting and Breaking the Software (Workshop)
Reverse Engineering: Protecting and Breaking the Software (Workshop)Satria Ady Pradana
 
Reverse Engineering: Protecting and Breaking the Software
Reverse Engineering: Protecting and Breaking the SoftwareReverse Engineering: Protecting and Breaking the Software
Reverse Engineering: Protecting and Breaking the SoftwareSatria Ady Pradana
 
Memory Forensic: Investigating Memory Artefact (Workshop)
Memory Forensic: Investigating Memory Artefact (Workshop)Memory Forensic: Investigating Memory Artefact (Workshop)
Memory Forensic: Investigating Memory Artefact (Workshop)Satria Ady Pradana
 
Memory Forensic: Investigating Memory Artefact
Memory Forensic: Investigating Memory ArtefactMemory Forensic: Investigating Memory Artefact
Memory Forensic: Investigating Memory ArtefactSatria Ady Pradana
 

More from Satria Ady Pradana (20)

Malware for Red Team
Malware for Red TeamMalware for Red Team
Malware for Red Team
 
Down The Rabbit Hole, From Networker to Security Professional
Down The Rabbit Hole, From Networker to Security ProfessionalDown The Rabbit Hole, From Networker to Security Professional
Down The Rabbit Hole, From Networker to Security Professional
 
MITM: Tales of Trust and Betrayal
MITM: Tales of Trust and BetrayalMITM: Tales of Trust and Betrayal
MITM: Tales of Trust and Betrayal
 
Berkarir di Cyber Security
Berkarir di Cyber SecurityBerkarir di Cyber Security
Berkarir di Cyber Security
 
IOT Security FUN-damental
IOT Security FUN-damentalIOT Security FUN-damental
IOT Security FUN-damental
 
Python-Assisted Red-Teaming Operation
Python-Assisted Red-Teaming OperationPython-Assisted Red-Teaming Operation
Python-Assisted Red-Teaming Operation
 
IoT Security - Preparing for the Worst
IoT Security - Preparing for the WorstIoT Security - Preparing for the Worst
IoT Security - Preparing for the Worst
 
Silabus Training Reverse Engineering
Silabus Training Reverse EngineeringSilabus Training Reverse Engineering
Silabus Training Reverse Engineering
 
Practical Security - Modern Day Software
Practical Security - Modern Day SoftwarePractical Security - Modern Day Software
Practical Security - Modern Day Software
 
Firmware Reverse Engineering
Firmware Reverse EngineeringFirmware Reverse Engineering
Firmware Reverse Engineering
 
Reverse Engineering: The Crash Course
Reverse Engineering: The Crash CourseReverse Engineering: The Crash Course
Reverse Engineering: The Crash Course
 
The Offensive Python: Practical Python for Penetration Testing
The Offensive Python: Practical Python for Penetration TestingThe Offensive Python: Practical Python for Penetration Testing
The Offensive Python: Practical Python for Penetration Testing
 
From Reversing to Exploitation: Android Application Security in Essence
From Reversing to Exploitation: Android Application Security in EssenceFrom Reversing to Exploitation: Android Application Security in Essence
From Reversing to Exploitation: Android Application Security in Essence
 
Android Security: Art of Exploitation
Android Security: Art of ExploitationAndroid Security: Art of Exploitation
Android Security: Art of Exploitation
 
Bypass Security Checking with Frida
Bypass Security Checking with FridaBypass Security Checking with Frida
Bypass Security Checking with Frida
 
Malware: To The Realm of Malicious Code (Training)
Malware: To The Realm of Malicious Code (Training)Malware: To The Realm of Malicious Code (Training)
Malware: To The Realm of Malicious Code (Training)
 
Reverse Engineering: Protecting and Breaking the Software (Workshop)
Reverse Engineering: Protecting and Breaking the Software (Workshop)Reverse Engineering: Protecting and Breaking the Software (Workshop)
Reverse Engineering: Protecting and Breaking the Software (Workshop)
 
Reverse Engineering: Protecting and Breaking the Software
Reverse Engineering: Protecting and Breaking the SoftwareReverse Engineering: Protecting and Breaking the Software
Reverse Engineering: Protecting and Breaking the Software
 
Memory Forensic: Investigating Memory Artefact (Workshop)
Memory Forensic: Investigating Memory Artefact (Workshop)Memory Forensic: Investigating Memory Artefact (Workshop)
Memory Forensic: Investigating Memory Artefact (Workshop)
 
Memory Forensic: Investigating Memory Artefact
Memory Forensic: Investigating Memory ArtefactMemory Forensic: Investigating Memory Artefact
Memory Forensic: Investigating Memory Artefact
 

Recently uploaded

ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptxENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptxAnaBeatriceAblay2
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxUnboundStockton
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 

Recently uploaded (20)

ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptxENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docx
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 

If3058 concept and design of genetic cryptography using bdg48

  • 1. BDG48 - Design and Concept of Genetic Cryptography Satria Ady Pradana (13510030) Informatics Engineering School of Electrical Engineering and Informatics (SEEI) Bandung Institute of Technology, ITB Bandung, Indonesia satria@arc.itb.ac.id Abstract—This paper presents design and concept of for this paper. The algorithm is categorized as Block Genetic Cryptography and an example algorithm to satisfy Cipher algorithm and will follows some fundamental of this purpose. This papers will propose a new and unique cipher block algorithm design. Although there are some way for encrypting and decrypting message compared to aspect that might not be completely fit as is. conventional concept. The concept will purely based on genetic concept and the will be focused into block cipher. The fundamental concept used will be cross over and II. CIPHER BLOCK DESIGN PRINCIPLES mutation, without any restriction for further developed concept later. Designing a block cipher algorithm should follow some “de facto” rules. There are five fundamental principles Index Terms—cryptography, block cipher, genetic, cross that acknowledge as basis for creating a new over, mutation, bdg48. cryptography algorithm. These principles are: 1. Shannon’s Confusion and Diffusion Principle I. INTRODUCTION 2. Iterated Cipher 3. Feistel Network Nowadays in digital era where time and space is not 4. Weak key limitation, information is highly available. Any kind of 5. S-box information can be obtained using various method. The information might vary from general knowledge to Confusion and diffusion are two properties proposed by sensitive information including private information and C.E. Shannon for secure cryptography algorithm [1]. confidential information. Internet as one of In Shannon’s original definitions, confusion refers to communication media has proved how information can be making the relationship between the ciphertext and obtained easily. symmetric key as complex and involved as possible. This Protecting confidential and private information is a principle also includes obscuration of statistic pattern of human’s natural behavior. There are many ways to do it, ciphertext. but the common method is using cryptography. The diffusion refers to making the relationship between Cryptography has evolved from ancient time, where the ciphertext and the plaintext complex as complex and Julius Caesar use . Cryptography is also widely used involved as possible. A single and slight modification nowadays, where originally it is used only for military might result in unpredicted outcome. works. With aid of computer, more cryptography The iterated cipher is a iteration or repeated operation algorithms have been proposed. of an invertible transformation on fixed-size block. The Although dozens and hundreds cryptography transformation function is known as round function. For algorithms available, most of them used similar concept each iteration or each round the round function will be and methods. The difference is only at design and operated on fixed block data and transform it to another implementation of the concepts. The methods mention form with same size. For each iteration, an internal / self before are mostly: XOR operations, substitution, generated key is used on function. permutation, and feistel network. The key for each round on iterated cipher might be self Although we do not said it is good or bad, a new generated key using user-supplied key as feed, or using concept can be used for create cryptography algorithm. external key directly. The most common method used are A new concept will be proposed, a cryptography generating key rather than used key directly. algorithm using genetic concept. Feistel network is defined as a symmetric structure in Genetic concept is a concept that mimics the process of the construction of block ciphers. It has advantage of natural evolution. The concept can be described as similarity between enciphering and deciphering process, combination of cross over concept and mutation concept - even identical. The smallest structure is called feistel which is also described on Genetic Algorithm. block and consists of some operation. The operation This paper will utilize BDG48 - algorithm developed might vary from one algorithm to other algorithm. Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
  • 2. Weak key is a key, which used with a specific cipher The design of key generation must following confusing makes the cipher behave in some undesirable way. It is a and diffusion principle. The generated key must ensure key in which makes a series of operation of enciphering the encrypted key is diffused. The level of diffusion might will result back to plaintext. The good cryptographic be hard to be measured, but this principle can be measure algorithms doesn’t have this properties. by the pattern and mapping from plaintext character to S-box or substitution box is a simple substitution ciphertext character. matrices which maps one or more bits to other one or While the key generation can used various ideas, three more bit. The matrice can be viewed as a lookup table. subjects are proposed. These three are: logical shifting, The table might consists of some rows and some columns. permutation, and substitution. When a block of bit comes, it can be broken down with Logical shifts are bitwise operation, operation which some way. The substitution value is obtain by looking up works on bit-level. Logical shift operation shifts all the to intersection of row and column. This methods is used bits of its operand to a specific direction. There are two widely in DES (Data Encryption Standard) but will not direction which are left and right. The left shift is applicable in this paper. operation which shifting is done to left direction while the right shift is to right direction. The number of shifting is II. PROPOSED ALGORITHM given as an unsigned integer n. The logical shifting should use wrapping method to fill BDG48 or Bit Diffusion Genetically 48, is an algorithm the vacant bit-position. The wrapping method suggest that using Genetic Cryptography concept. The algorithm the out-of-bound bit are positioned back to vacant slot utilize 4 (four) systems and 8 (eight) internal keys with instead of filling them with predetermined value. The external keys supplied by user. sequence must be kept therefore the first thrown bit will The four systems refers to: internal key generation and be the first bit padded to. scheduling; modified feistel network; cross over; and Permutation is a process of rearranging objects / bit mutation. These keys are then used for encryption, rather values. The permutation process can be divided into three than user-supplied key. category: pure permutation, compression permutation, BDG48 is a symmetric key algorithm. To encrypt a and expansion permutation. message, a 64-bit key must be supplied by user. The key A pure permutation or simply a permutation is a generation process will then create 8 subkeys for used permutation which only do rearrangement of bits. This is internally. the basic permutation known. BDG48 also works on bit level. This block cipher will A compression permutation is a special permutation. encrypt 64-bit data for each block. If data block doesn’t While also permutate the bits, this method also select have sufficient size, the zeroes will be padded to block which bit should be produced as result. In this type of until the block is filled. permutation, the operand size will always be greater than For each 64-bit block 32 iterations process will be used. the product size. Therefore, some bits might not be In each iteration, a special “permutation” system applied. included a production. The remaining bits are either The system in this context refer to cross over and discarded or used as parity to check bits. mutation process. An expansion permutation is the reciprocal to BDG48 does not used substitution method. It will only compression permutation. Expansion permutation is a relies on “permutation”, especially described as crossover process of permutation which duplicate some or all bits of and mutation. operand. In this type of permutation the size of product will always be greater than the operand size. A bit on som III. KEY GENERATION AND SCHEDULING position might be duplicate two or more times, depends Key generation is a process of generating key for on the design. internal usage from external key. The external key is a The substitution is a process for substitute or exchange key given by user. The key used for encryption and a value to other value. The substitution rules might decryption is same or identic. This process is not defines what values should be substitute and what values obligatory thing. But mostly the key generation will make as replacement. the encryption stronger. In BDG48, key generation will use left shift operation, The external key are only used once in the key pure permutation and compression permutation. generation process and won’t be used on encryption. But To encrypt a message, BDG48 use 64-bit key which is the user should always remember the key as the equivalent to 8 ASCII characters, no less and no more. symmetric key cryptography only permits data encrypted In generation process, BDG48 will generates 8 (eight) and decrypted by same and identic key. internal keys. The keys will be labeled as K1, K2, ..., K8. The resulting key might be vary from one key to not- The internal keys also generated based on external keys limited amount of keys. These keys then called as with the help of three matrices for permutating. subkeys. The matrices used in key generation are one pure The key generation might involving some function and permutation matrix and two compression permutation the key generation itself can be considered as a function. matrices. Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
  • 3. The permutation matrix is a 1x64 row matrix. This and CP-2. CP-1 is used for generating key K1, K3, K5, matrix will be used at initial permutation process. The and K6 while CP-2 is used for generating key K2, K4, K7, permutation matrix is an ordinary integer matrix where and K8. each column represent a bit position in which the bit on Formally, the generation process can be formulated as: original message will be permutated to. Thus a bit on nth position of source will be rearrange to position pointed by K1 = CP1 ( C1 . D1 ) value of M1xn. K2 = CP2 ( C2 . D2 ) Compression matrices is similar to permutation matrix K3 = CP1 ( C3 . D3 ) but differs in size. Each Compression Matrix is a 1x32 K4 = CP2 ( C4 . D4 ) row matrix. The Compression Permutation then will K5 = CP1 ( C5 . D5 ) reduce output into only 32-bit block. The remaining 32 K6 = CP1 ( C6 . D6 ) bits are then discarded. K7 = CP2 ( C7 . D7 ) K8 = CP2 ( C8 . D8 ) Ci = Ci-1 << 1 Di = Di-1 << 1 The “.” refer to concatenation of bits string and << refers to left shift operation. BDG48 has 32 iterations. For each iteration, a key is required. As there are only 8 subkeys available, a scheduling is required to make sure every iteration will use one key. Scheduling is an act of ordering the key usage for each iteration. Following is the scheduling used in BDG48 for selecting subkey. Iteration 1 2 3 4 5 6 7 8 key 1 5 3 4 7 6 2 8 Iteration 9 10 11 12 13 14 15 16 key 6 1 2 8 7 3 5 4 Iteration 17 18 19 20 21 22 23 24 key 2 5 4 6 8 3 7 1 Iteration 25 26 27 28 29 30 31 32 key 8 7 2 1 3 5 4 6 Picture 1: Key Generation for BDG48 Using the table, the 9th iteration / round will use K6 as External key is processed with Permutation matrix its key. (initial permutation). The result is a 64-bits key. The result then divided into two halves: C0 and D0. C0 is the IV. FEISTEL NETWORK first 32-bits of the result key (upper bits) and the Feistel Network is symmetric structure and a basic for remaining 32-bits is D0 (lower bits). construction of block ciphers. The main advantage of The C0 then left-shifted by 1 and similar thing done on feistal network is the feistal network offers similar D0. The shifts are circular so the the most significant bit process to do encryption and decryption. will be the least significant bit after the process. The In feistel network, data block is divided into two equal- process will generate a pair C1 and D1 respectively. length block, L and R. For each round, a round function is The ith internal key is obtained by concatenation of Ci defined. and Di and later used as operand of Compression Permutation matrices. There are two Compression Matrices, denoted by CP-1 Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
  • 4. Figure 3: One round of Feistel Network Let F be the round function and K0, K1, ... , Kn be the subkeys for rounds 0, 1, ..., n respectively. We can formulate the operation as follow: Li = Ri-1 Ri = Li-1 XOR F( Ri-1, Ki ) Picture 2: Common Feistel Network The round function is a global function works on each However genetic cryptography does not fully fit this round. The design of round function might vary, but it definition. Genetic cryptography relies upon cross over should implement confusion and diffusion principles. and mutation. Those methods works on both part of data The round function should need at least a key as its chunks. Therefore we can not follow the original argument. The function should behave differently when definition of round function and structure proposed by different key is applied and produce different product feistel network. when a combination of operand and key is given. The design of feistel round proposed here is a modified Mostly, a round function operates on one side / one part version of original feistel round. only. The resulting part then will be XORed with other The data block is divided into two equal-length block L part. Later, both part will be swapped. In other word L’ is and R. The L is the first halve of data block and R is the the product of R and R’ is the product of L. remaining halve. A crossover operation will be applied to both part. The L and R can be viewed as arguments for cross over system. This function does not need any key to operated. More explanation of cross over will be explained briefly on next section. The resulting data part, L’ and R’ will then mutated independently. The mutation need at least one subkey. The mutation operation can be viewed as round function with supplied key. The mutation will be explained more on next section. Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
  • 5. chromosome into two different size part. The first half is shorter than the second half. In generation of children, both parent exchange their part. The result of this operation is two children chromosome. The children parent now has both their parent part. The crossover point might occur in more than one position. But this paper will limit into only one crossover point. Picture 6: Crossover on Bit Array Picture 4: Modified Feistel Using crossover concept on Genetic Cryptographic is simply implementing the above concept. BDG48 use standard modified feistel network proposed The two equal-length block L and R can denoted as above. The key used for mutation is obtained from key parent chromosomes. The product of crossover is two scheduling mention on previous section. children or two equal-length block L’ and R’. The In formal notation, we can formulate the process as: childrend L’ and R’ has both parent parts. Crossover point is defined as an index of bit position, C = Cross Over V. CROSS OVER M = Mutation In Genetic, crossover or crossing over is the exchange of genetic material between homologous chromosomes Li = M( C( Li-1, Ri-1, i ), Ki ) that results in recombinant chromosomes. Cross over is Ri = M( C( Li-1, Ri-1, i ), Ki ) one of the final phases of genetic recombination. denote by i. The division is not more than substringing the bits array. The data must be divided into n+1 part where n is the amount of crossover point. Following is the formalized steps for crossing over with one crossover point: 1. For data block with length m bits, choose i where 0 < i < m 2. Get substring of L from 1 to i, named it as L1 3. Get substring of R form 1 to i, named it as R1 Picture 5: Crossover in Genetic 4. Get substring of L from i+1 to m, named it as L2 5. Get substring of R from i+1 to m, named it as R2 The origin or source chromosomes denoted as parent. 6. L’ is obtained from concatenation of L1 and R2 The parent chromosome might be and should be distinct. L’ = L1 . R2 A crossover occur on a point. This point is referred as 7. R1 is obtained from concatenation of R1 and L2 crossover point. At each parent, chromosomes are divided R’ = R1 . L2 into some parts, relative to the crossover point. The crossover might not divide chromosome to equal length part, and there is no guarantee that it will always do so. The selection of value of i must not be truly random. In picture 5, there are two parents denoted by their The value i should be able to be replicated or the value color (red and blue). A crossover point occur which must be obtained using identical series of operation. divide parent into two. The crossover point is not A rule should be defined to schedule the values of i. precisely on middle of chromosome thus cut the BDG48 use basic crossover concept. The alternating value of i is defined using the following rules / schedule: Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
  • 6. Iteration 1 2 3 4 5 6 7 8 i 1 2 3 4 7 16 18 20 Iteration 9 10 11 12 13 14 15 16 i 1 2 3 4 7 16 18 20 Iteration 17 18 19 20 21 22 23 24 i 1 2 3 4 7 16 18 20 Iteration 25 26 27 28 29 30 31 32 i 1 2 3 4 7 16 18 20 VI. MUTATION In genetic term, mutation is change of the nucleotide sequence of the genome of an organism, virus, or extrachromosomal genetic element. The change might resulted form unrepaired damage to DNA or RNA genomes, from errors in the process of replication, or from insertion or deletion of segments of DNA by mobile Figure 7: Mutation genetic elements. Mostly the change is permanent unless a reverse Suppose integer i and j is denotes starting point and end operation is used. The changes might also result on point respectively. Index i must always less than index j. change of the system behavior. Both index are pointing to valid bit position on data and In Genetic Cryptography, a mutation is defined as key. If we denote M as message / data block with length change of data block part as a result of invertible function m and key having the same length, mutation can be applied to it. The mutate part might be all part (whole formulated as: data block) or subset of it. The invertible function might be vary in design but it should has diffusion and confusion principle. The L = substring( M, 0, i ) function should need a key with equal length to the data R = substring( M, j, m-j ) part. At least one key should be available, however two or X = substring( M, i, j ) XOR substring( Ki, i, j ) more keys are not encouraged. M’ = L . X . R For a mutation, there should be a pointer used as starting point and another index as end point. The area covered by the start point to end point is called as Choosing i and j pair should not have any pattern for mutation area. The mutation might covered a whole data each round. The pair should be random enough but should part or just the subset of it. be deterministic. This means a replication means should When a mutation occurred, a mutation area from data be able to obtain the similar pair of i and j for other block. block should be operated with a function together with In BDG48, a mutation is done by applying XOR mutation area. The mutation area should always match the function into a mutation area. corresponding index (start and end index). The index i and j are summarize on following table: Iteration 1 2 3 4 5 6 7 8 i 1 1 4 30 5 4 7 1 j 2 3 7 31 28 31 9 8 Iteration 9 10 11 12 13 14 15 16 i 2 5 13 6 4 21 22 13 j 5 6 17 13 23 28 26 23 Iteration 17 18 19 20 21 22 23 24 i 14 19 1 7 13 27 4 4 j 27 31 31 25 29 28 17 24 Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013
  • 7. Iteration 25 26 27 28 29 30 31 32 i 6 9 9 1 4 3 5 6 j 7 13 31 2 17 6 27 28 VII. CONCLUSION In the end, genetic cryptography is an interesting field. This paper has presents a new way for encrypting and decrypting a message using genetic concept. In the future, if the concept is developed deeper, there would be other variations that might occurs. VIII. ACKNOWLEDGMENT I wish to thank everyone who helped me complete this paper. Without their continued efforts and supports I would have not be able to bring my work to a successful completion. Dr. Ir. Rinaldi Munir, MT: for guidance and lecture Ezra Hizkia Nathanael: for support and ideas Mufi Yanuar Triputranto: for support and ideas REFERENCES [1] Shannon, C.E. “Communication Theory of Secrecy Systems,”. 1949. [2] Knudsen, Lars R. The Block Cipher Companion. Springer. 2011. [3] John Holland, Adaptation in Natural Search Algorithm Systems, University of Michigan Press. Ann Arbor, Michigan. 1975 PERNYATAAN Dengan ini saya menyatakan bahwa makalah yang saya tulis ini adalah tulisan saya sendiri, bukan saduran, atau terjemahan dari makalah orang lain, dan bukan plagiasi. Bandung, 26 Maret 2013 ttd Satria Ady Pradana 13510030 Makalah IF3058 Kriptografi – Sem. II Tahun 2012/2013